diff --git a/NAMESPACE b/NAMESPACE
index 4391252..bf49ea6 100644
--- a/NAMESPACE
+++ b/NAMESPACE
@@ -3,5 +3,3 @@
 export(posterdown_betterland)
 export(posterdown_betterport)
 export(posterdown_html)
-export(posterdown_latex)
-export(posterdown_pdf)
diff --git a/R/posterdown.R b/R/posterdown.R
index 62316a1..b50d351 100644
--- a/R/posterdown.R
+++ b/R/posterdown.R
@@ -10,9 +10,6 @@
 #' Creates an R Markdown template for a PDF poster document via HTML
 #' @section poster_betterport:
 #' Creates an R Markdown template for a PDF poster document via HTML
-#' @section posterdown_latex:
-#' Creates an R Markdown template for a PDF poster document via LaTeX
-#'
 #' @docType package
 #' @name posterdown
 NULL
diff --git a/R/posterdown_latex.R b/R/posterdown_latex.R
deleted file mode 100644
index d56e6a1..0000000
--- a/R/posterdown_latex.R
+++ /dev/null
@@ -1,33 +0,0 @@
-#' Posterdown LaTeX format (using Memoir LaTeX document class)
-#'
-#' @inheritParams rmarkdown::pdf_document
-#' @param ... Additional arguments to `rmarkdown::pdf_document`
-#'
-#' @return R Markdown output format to pass to
-#'   [rmarkdown::render()]
-#'
-#' @examples
-#'
-#' \dontrun{
-#' library(rmarkdown)
-#' draft("MyArticle.Rmd", template = "posterdown_pdf", package = "posterdown")
-#' }
-#' @export
-# This is borrowed from the thesisdown package github.com/ismayc/thesisdown
-posterdown_latex <- function(..., keep_tex = TRUE) {
-  inherit_pdf_document(...,
-                       keep_tex = keep_tex,
-                       template = find_resource("posterdown_latex", "template.tex"),
-                       citation_package = "biblatex")
-}
-
-#' @description Legacy function for the OG's of posterdown.
-#' This will remain untouched from here on out (Feb 6 2019).
-#' @rdname posterdown_latex
-#' @export
-posterdown_pdf <- function(..., keep_tex = TRUE) {
-  inherit_pdf_document(...,
-                       keep_tex = keep_tex,
-                       template = find_resource("posterdown_pdf", "template.tex"),
-                       citation_package = "biblatex")
-}
diff --git a/R/utils.R b/R/utils.R
index 78b2761..dba1921 100644
--- a/R/utils.R
+++ b/R/utils.R
@@ -52,28 +52,3 @@
 
   invisible(output)
 }
-
-
-# Call rmarkdown::pdf_document and mark the return value as inheriting pdf_document
-inherit_pdf_document <- function(...) {
-  fmt <- rmarkdown::pdf_document(...)
-  fmt$inherits <- "pdf_document"
-  fmt
-}
-
-# Helper function to create a custom format derived from pdf_document
-# that includes a custom LaTeX template and custom CSL definition
-pdf_document_format <- function(..., format, template, csl) {
-
-  # base format
-  fmt <- inherit_pdf_document(..., template = find_resource(format, template))
-
-  # add csl to pandoc_args
-  fmt$pandoc$args <- c(fmt$pandoc$args,
-                       "--csl",
-                       rmarkdown::pandoc_path_arg(find_resource(format, csl)))
-
-
-  # return format
-  fmt
-}
diff --git a/inst/rmarkdown/templates/posterdown_html/resources/template.html b/inst/rmarkdown/templates/posterdown_html/resources/template.html
index 2aaee2a..7728795 100644
--- a/inst/rmarkdown/templates/posterdown_html/resources/template.html
+++ b/inst/rmarkdown/templates/posterdown_html/resources/template.html
@@ -318,7 +318,7 @@
 <!-- Right Logo  -->
 <div class="logo_right">
 $if(logoright_name)$
-<img src="$logoright_name$" style="width: 80%">
+<img src=$logoright_name$ style="width: 80%">
 $endif$
 </div>
 </div>
diff --git a/inst/rmarkdown/templates/posterdown_html/skeleton/skeleton.Rmd b/inst/rmarkdown/templates/posterdown_html/skeleton/skeleton.Rmd
index 0a59793..c2b9b7e 100644
--- a/inst/rmarkdown/templates/posterdown_html/skeleton/skeleton.Rmd
+++ b/inst/rmarkdown/templates/posterdown_html/skeleton/skeleton.Rmd
@@ -1,7 +1,17 @@
 ---
-primary_colour: "#170878"
-secondary_colour: "#f9ee02"
-column_numbers: 4
+title: Generate Reproducible & Live HTML and PDF Conference Posters Using RMarkdown
+author:
+  - name: Brent Thorne
+    affil: 1
+affiliation:
+  - num: 1
+    address: Department of Earth Science, Brock University
+primary_colour: "#0b4545"
+secondary_colour: "#008080"
+accent_colour: "#0043ff"
+column_numbers: 3
+logoright_name: https&#58;//raw.githubusercontent.com/brentthorne/posterdown/master/images/betterhexlogo.png
+logoleft_name: https&#58;//raw.githubusercontent.com/brentthorne/posterdown/master/images/betterhexlogo.png
 output: 
   posterdown::posterdown_html:
     self_contained: false
@@ -32,10 +42,6 @@
 
 This package uses the same workflow approach as the R Markdown you know and love. Basically it goes from RMarkdown > Knitr > Markdown > Pandoc > HTML/CSS > PDF. You can even use the bibliography the same way [@R-posterdown].
 
-## Random text
-
-Lorem ipsum dolor sit amet, consectetur adipiscing elit. Aliquam placerat augue at velit tincidunt semper. Donec elementum porta posuere. Nullam interdum, odio at tincidunt feugiat, turpis nisi blandit eros, eu posuere risus felis non quam. Nam eget lorem odio. Duis et aliquet orci. Phasellus nec viverra est. Praesent odio orci, mattis vel mauris nec, consectetur fermentum mauris. Etiam eu hendrerit tortor. Donec mi tellus, efficitur et porttitor eu, auctor eu tellus. Quisque faucibus vestibulum sapien vel lacinia. Ut auctor lorem non interdum blandit.
-
 # Results
 
 Usually you want to have a nice table displaying some important results that you have calculated. In `posterdown` this is as easy as using the `kable` table formatting you are probably use to as per typical R Markdown formatting.
diff --git a/inst/rmarkdown/templates/posterdown_latex/resources/template.tex b/inst/rmarkdown/templates/posterdown_latex/resources/template.tex
deleted file mode 100644
index 147653b..0000000
--- a/inst/rmarkdown/templates/posterdown_latex/resources/template.tex
+++ /dev/null
@@ -1,245 +0,0 @@
-%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-%% %%	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
-%% %% Contributors: Shea Connell (SC)
-%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-
-\documentclass[article,$font_size$,extrafontsizes]{memoir}
-
-%utf-8 seems to be important
-\RequirePackage[utf8]{inputenc}
-\RequirePackage[T1]{fontenc}
-\RequirePackage{lmodern}
-\RequirePackage{multicol}
-\RequirePackage{graphicx}
-\RequirePackage{lipsum}
-\RequirePackage{blindtext}
-\RequirePackage[svgnames,table]{xcolor}
-\RequirePackage{tikz}
-\RequirePackage[framemethod=tikz]{mdframed}
-\RequirePackage{color}
-\RequirePackage{geometry}
-\RequirePackage{adjmulticol}
-\RequirePackage[skins,most,listings,skins]{tcolorbox}
-
-%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{wrapfig}
-
-%rof hyperrefs
-\RequirePackage{hyperref}
-\hypersetup{
-    colorlinks=true,
-    linkcolor=linkcol,
-    citecolor=citecol,
-    filecolor=linkcol,
-    urlcolor=urlcol,
-}
-%For figure and table placement
-\RequirePackage{float}
-\floatplacement{figure}{H}
-\floatplacement{table}{H}
-
-%%%%%%%%% COLOURS %%%%%%%%
-%Fill/ Line Colours
-\definecolor{titleboxbgcol}{HTML}{$titlebox_bgcol$}
-\definecolor{titleboxbordercol}{HTML}{$titlebox_bordercol$}
-\definecolor{columnlinecol}{HTML}{$columnline_col$}
-\definecolor{bodybgcol}{HTML}{$body_bgcol$}
-\definecolor{sectitlebgcol}{HTML}{$sectitle_bgcol$}
-\definecolor{sectitlebordercol}{HTML}{$sectitle_bordercol$}
-% Text Colours
-\definecolor{titletextcol}{HTML}{$title_textcol$}
-\definecolor{authortextcol}{HTML}{$author_textcol$}
-\definecolor{affiliationtextcol}{HTML}{$affiliation_textcol$}
-\definecolor{sectitletextcol}{HTML}{$sectitle_textcol$}
-\definecolor{bodytextcol}{HTML}{$body_textcol$}
-\definecolor{footnotetextcol}{HTML}{$footnote_textcol$}
-\definecolor{citecol}{HTML}{$cite_col$}
-\definecolor{urlcol}{HTML}{$url_col$}
-\definecolor{linkcol}{HTML}{$link_col$}
-
-
-%Memoir spacing options
-%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}{$columnline_width$}
-\def\columnseprulecolor{\color{columnlinecol}}
-
-%define section title features
-\setsubsubsecheadstyle{\small\color{sectitletextcol}\textbf}% Set \section style
-\setsecnumformat{}
-\def\sectionmark#1{\markboth{#1}{#1}}
-
-%%%%%%%%%%%% TCOLORBOXES TO THE RESCUE %%%%%%%%%%%%%%%%%%%%
-%Title Box
-\newtcolorbox{topbox}{
-enhanced,
-colback=titleboxbgcol,
-colframe=titleboxbordercol,
-halign=center,
-boxrule=$titlebox_borderwidth$,
-sharp corners=$titlebox_shape$,
- overlay={
-    \node[anchor=south west]
-      at ([xshift=$logoleft_xshift$,yshift=$logoleft_yshift$]frame.south west)
-       {\includegraphics[width=$logoleft_width$]{$logoleft_name$}};
-    \node[anchor=south east]
-      at ([xshift=$logoright_xshift$,yshift=$logoright_yshift$]frame.south east)
-       {\includegraphics[width=$logoright_width$]{$logoright_name$}};}
-
-}
-%Body Section Title Box
-\newtcolorbox{myboxstuff}[1][]{
-code={\parindent=0em},
-colframe=sectitlebordercol,
-nobeforeafter,
-left skip=0pt,
-valign=center,
-halign=center,
-fontupper=\Large\bfseries,
-colupper=sectitletextcol,
-boxrule=$sectitle_borderwidth$,
-colback=sectitlebgcol,
-sharp corners=$sectitle_boxshape$, #1}
-\newcommand{\mybox}[1]{%
-\begin{myboxstuff}
-\strut #1
-\end{myboxstuff}%
-}
-\makeheadstyles{MyBox}{
-    \setsecheadstyle{\mybox}
-}
-\headstyles{MyBox}\makepagestyle{MyBox}
-%-----------------------------------------------------
-%Make sure that the page is empty of any preset items from memoir
-\thispagestyle{empty}
-
-%biblatex options
-\RequirePackage[sorting=none,backend=biber]{biblatex}
-\renewcommand*{\bibfont}{\$bibliography_textsize$} %% SC
-\bibliography{$bibliography$}
-\defbibheading{bibliography}[\bibname]{%
-\setlength\bibitemsep{$bibliography_spacing$\itemsep} %% SC
-\section*{#1}%
-\markboth{#1}{#1}}
-\AtBeginDocument{%
-  \renewcommand{\bibname}{References}
-}
-
-%Remove section numbering & set 2nd level header as first level
-%to avoid the automatic new page generated from memoir chapter
-%formatting
-\counterwithout{section}{chapter}
-\makechapterstyle{mydefault}{
-\addtocounter{secnumdepth}{2}
-\setsecheadstyle{\mybox}
-\setsubsecheadstyle{\itshape}
-\setsubsubsecheadstyle{\itshape}
-}
-
-%set the chapterstyle
-\chapterstyle{mydefault}
-
-%define column spacing
-\setlength\columnsep{$column_margins$}
-
-%spacing params
-\setlength\parindent{0em}
-\setlength\parskip{0em}
-\setlength\hangparas{0}
-
-%spacing after section head title
-\setaftersecskip{0em}
-\setbeforesecskip{1.5em}
-\setlength\textfloatsep{0in}
-\setlength\floatsep{0in}
-\setlength\intextsep{0in}
-
-\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
-
-%Footnote to white
-\RequirePackage{footmisc}
-\def\footnotelayout{\centering\color{footnotetextcol}}
-
-% see https://stackoverflow.com/a/47122900
-$if(highlighting-macros)$
-$highlighting-macros$
-$endif$
-
-% choose font family
-\RequirePackage{$font_family$}
-
-% define the BODYBGCOL
-\newpagecolor{bodybgcol}
-
-%sets footnote to be white hopefully
-\renewcommand\footnoterule{}
-\renewcommand{\thempfootnote}{\footnotesize\color{footnotetextcol}{\arabic{mpfootnote}}}
-
-%include arbitrary input from header-includes field
-$for(header-includes)$
-$header-includes$
-$endfor$
-
-%-------------- Begin Document -------------------%
-\begin{document}
-
-%-------------- Title Box Start ------------------%
-%tcolorbox allows for pictures hopefully
-\begin{topbox}
-  \color{titletextcol}
-  \vspace{0.5in}
-  \$title_textsize${$title$}  \\[0.3in]  %% SC
-  \color{authortextcol} \$author_textsize${$author$} \\[0.2in] %% SC
-  \color{affiliationtextcol} \$affiliation_textsize${$affiliation$} %% SC
-  \vspace{1cm}
-\end{topbox}
-%--------------- Title Box End -------------------%
-%----------------- Body Start --------------------%
-% Begin body of poster
-\begin{adjmulticols*}{$column_numbers$}{$column_margins$}{$column_margins$}
-\$body_textsize${  %% SC
-\color{bodytextcol}
-$body$
-}
-\end{adjmulticols*}
-%------------------ Body End ---------------------%
-%end the poster
-\end{document}
-
diff --git a/inst/rmarkdown/templates/posterdown_latex/skeleton/Figures/posterdownlogo.png b/inst/rmarkdown/templates/posterdown_latex/skeleton/Figures/posterdownlogo.png
deleted file mode 100644
index 258776d..0000000
--- a/inst/rmarkdown/templates/posterdown_latex/skeleton/Figures/posterdownlogo.png
+++ /dev/null
Binary files differ
diff --git a/inst/rmarkdown/templates/posterdown_latex/skeleton/MyLibrary.bib b/inst/rmarkdown/templates/posterdown_latex/skeleton/MyLibrary.bib
deleted file mode 100644
index cfbb472..0000000
--- a/inst/rmarkdown/templates/posterdown_latex/skeleton/MyLibrary.bib
+++ /dev/null
@@ -1,3308 +0,0 @@
-
-@article{noauthor_permafrost_2018,
-	title = {Permafrost Terrain Dynamics and Infrastructure Impacts Revealed by {UAV} Photogrammetry and Thermal Imaging},
-	abstract = {Unmanned Aerial Vehicle ({UAV}) systems, sensors, and photogrammetric processing techniques have enabled timely and highly detailed three-dimensional surface reconstructions at a scale that bridges the gap between conventional remote-sensing and ﬁeld-scale observations. In this work 29 rotary and ﬁxed-wing {UAV} surveys were conducted during multiple ﬁeld campaigns, totaling 47 ﬂights and over 14.3 km2, to document permafrost thaw subsidence impacts on or close to road infrastructure in the Northwest Territories, Canada. This paper provides four case studies: (1) terrain models and orthomosaic time series revealed the morphology and daily to annual dynamics of thaw-driven mass wasting phenomenon (retrogressive thaw slumps; {RTS}). Scar zone cut volume estimates ranged between 3.2 × 103 and 5.9 × 106 m3. The annual net erosion of {RTS} surveyed ranged between 0.35 × 103 and 0.39 × 106 m3. The largest {RTS} produced a long debris tongue with an estimated volume of 1.9 × 106 m3. Downslope transport of scar zone and embankment ﬁll materials was visualized using ﬂow vectors, while thermal imaging revealed areas of exposed ground ice and mobile lobes of saturated, thawed materials. (2) Stratigraphic models were developed for {RTS} headwalls, delineating ground-ice bodies and stratigraphic unconformities. (3) In poorly drained areas along road embankments, {UAV} surveys detected seasonal terrain uplift and settlement of up to 0.5 m ({\textgreater}1700 m2 in extent) as a result of injection ice development. (4) Time series of terrain models highlighted the thaw-driven evolution of a borrow pit (6.4 × 105 m3 cut volume) constructed in permafrost terrain, whereby ﬂuvial and thaw-driven sediment transfer (1.1 and 3.9 × 103 m3 a−1 respectively) was observed and whereby annual slope proﬁle reconﬁguration was monitored to gain management insights concerning site stabilization. Elevation model vertical accuracies were also assessed as part of the case studies and ranged between 0.02 and 0.13 m Root Mean Square Error, whereby photogrammetric models processed with Post-processed Kinematic image solutions achieved similar accuracies without ground control points over much larger and complex areas than previously reported. The high resolution of {UAV} surveys, and the capacity to derive quantitative time series provides novel insights into permafrost processes that are otherwise challenging to study. The timely emergence of these tools bridges ﬁeld-based research and applied studies with broad-scale remote-sensing approaches during a period when climate change is transforming permafrost environments.},
-	pages = {30},
-	date = {2018},
-	langid = {english},
-	file = {2018 - Permafrost Terrain Dynamics and Infrastructure Imp.pdf:C\:\\Users\\Brent Thorne\\Zotero\\storage\\FUDSGAUE\\2018 - Permafrost Terrain Dynamics and Infrastructure Imp.pdf:application/pdf}
-}
-
-@thesis{tank_sources_2009,
-	location = {Canada},
-	title = {Sources and cycling of dissolved organic carbon across a landscape of arctic delta lakes},
-	abstract = {Dissolved organic carbon ({DOC}) is a key regulator of aquatic ecosystems, and the primary substrate for aquatic bacteria. However, variations in function between different {DOC} sources are rarely studied. Arctic Mackenzie Delta lakes exhibit striking differences in {DOC} composition, with {DOC} sources ranging from C produced as a byproduct of aquatic plant (macrophyte) photosynthesis, to C derived from permafrost melting (thermokarst), and C delivered to lakes via river-water. This study assessed how variations in {DOC} source regulate the composition of the within-lake pool, drive bacterial metabolism and the contribution of bacterial biomass to higher trophic levels, and affect {CO}2 flux from Delta lakes. {DOC}-specific tracers showed macrophyte-derived {DOC} to comprise less than 15\% of the {DOC} pool in macrophyte-rich lakes, despite macrophyte C levels 7-12-fold greater than total {DOC}. However, bacterial δ13C indicated that bacteria preferentially incorporate {DOC} generated by macrophytes, while surveys and incubation experiments showed that bacterial metabolism is rapid on macrophytic {DOC}, with high rates of bacterial biomass production relative to respiratory loss as {CO}2. Accordingly, δ13C, δ15N, and fatty acid biomarkers demonstrated that zooplankton from macrophyte-rich lakes receive a greater proportion of their biomass from bacterial organic matter than zooplankton from other lake types. At the same time, however, experiments indicated that the high {pH} resulting from rapid photosynthesis in macrophyte-rich lakes can decrease the rate of bacterial metabolism over the short-term, and increase {CO}2 respiration at the expense of bacterial biomass production. In contrast, {DOC}-specific tracers indicated that thermokarst-derived {DOC} accumulates in lakes. Incubation experiments and in situ surveys revealed thermokarst {DOC} to be a relatively poor bacterial substrate, which resulted in proportionately more {CO}2 respiration, relative to bacterial biomass production, than observed for other Delta {DOC} sources. Moreover, multi-year surveys demonstrated that thermokarst lakes exhibit high levels of {CO}2 emission, despite clear undersaturation in other lakes, presumably because permafrost-derived {DOC} was largely respired by bacteria. Understanding the divergent roles played by the contrasting sources of {DOC} to Delta lakes both adds insight to the functioning of other lake regions, globally, and helps clarify the effect of climate-induced changes in {DOC} on northern lakes.},
-	pagetotal = {238},
-	institution = {Simon Fraser University},
-	type = {phdthesis},
-	author = {Tank, S. E.},
-	date = {2009},
-	file = {Tank - 2009 - Sources and cycling of dissolved organic carbon ac.pdf:C\:\\Users\\Brent Thorne\\Zotero\\storage\\UI6YIRWV\\Tank - 2009 - Sources and cycling of dissolved organic carbon ac.pdf:application/pdf}
-}
-
-@article{sobek_patterns_2007,
-	title = {Patterns and regulation of dissolved organic carbon: An analysis of 7,500 widely distributed lakes},
-	volume = {52},
-	issn = {1939-5590},
-	url = {https://aslopubs.onlinelibrary.wiley.com/doi/abs/10.4319/lo.2007.52.3.1208},
-	doi = {10.4319/lo.2007.52.3.1208},
-	shorttitle = {Patterns and regulation of dissolved organic carbon},
-	abstract = {Dissolved organic carbon ({DOC}) is a key parameter in lakes that can affect numerous features, including microbial metabolism, light climate, acidity, and primary production. In an attempt to understand the factors that regulate {DOC} in lakes, we assembled a large database (7,514 lakes from 6 continents) of {DOC} concentrations and other parameters that characterize the conditions in the lakes, the catchment, the soil, and the climate. {DOC} concentrations were in the range 0.1–332 mg L−1, and the median was 5.71 mg L−1. A partial least squares regression explained 48\% of the variability in lake {DOC} and showed that altitude, mean annual runoff, and precipitation were negatively correlated with lake {DOC}, while conductivity, soil carbon density, and soil C:N ratio were positively related with lake {DOC}. A multiple linear regression using altitude, mean annual runoff, and soil carbon density as predictors explained 40\% of the variability in lake {DOC}. While lake area and drainage ratio (catchment : lake area) were not correlated to lake {DOC} in the global data set, these two factors explained significant variation of the residuals of the multiple linear regression model in several regional subsets of data. These results suggest a hierarchical regulation of {DOC} in lakes, where climatic and topographic characteristics set the possible range of {DOC} concentrations of a certain region, and catchment and lake properties then regulate the {DOC} concentration in each individual lake.},
-	pages = {1208--1219},
-	number = {3},
-	journaltitle = {Limnology and Oceanography},
-	author = {Sobek, Sebastian and Tranvik, Lars J. and Prairie, Yves T. and Kortelainen, Pirkko and Cole, Jonathan J.},
-	urldate = {2018-10-24},
-	date = {2007-05-01},
-	langid = {english},
-	file = {Sobek et al. - 2007 - Patterns and regulation of dissolved organic carbo.pdf:C\:\\Users\\Brent Thorne\\Zotero\\storage\\5WVT5HTP\\Sobek et al. - 2007 - Patterns and regulation of dissolved organic carbo.pdf:application/pdf}
-}
-
-@article{macander_regional_2017,
-	title = {Regional Quantitative Cover Mapping of Tundra Plant Functional Types in Arctic Alaska},
-	volume = {9},
-	issn = {2072-4292},
-	url = {http://www.mdpi.com/2072-4292/9/10/1024},
-	doi = {10.3390/rs9101024},
-	abstract = {Ecosystem maps are foundational tools that support multi-disciplinary study design and applications including wildlife habitat assessment, monitoring and Earth-system modeling. Here, we present continuous-ﬁeld cover maps for tundra plant functional types ({PFTs}) across {\textasciitilde}125,000 km2 of Alaska’s North Slope at 30-m resolution. To develop maps, we collected a ﬁeld-based training dataset using a point-intercept sampling method at 225 plots spanning bioclimatic and geomorphic gradients. We stratiﬁed vegetation by nine {PFTs} (e.g., low deciduous shrub, dwarf evergreen shrub, sedge, lichen) and summarized measurements of the {PFTs}, open water, bare ground and litter using the cover metrics total cover (areal cover including the understory) and top cover (uppermost canopy or ground cover). We then developed 73 spectral predictors derived from Landsat satellite observations (surface reﬂectance composites for {\textasciitilde}15-day periods from May–August) and ﬁve gridded environmental predictors (e.g., summer temperature, climatological snow-free date) to model cover of {PFTs} using the random forest data-mining algorithm. Model performance tended to be best for canopy-forming {PFTs}, particularly deciduous shrubs. Our assessment of predictor importance indicated that models for low-statured {PFTs} were improved through the use of seasonal composites from early and late in the growing season, particularly when similar {PFTs} were aggregated together (e.g., total deciduous shrub, herbaceous). Continuous-ﬁeld maps have many advantages over traditional thematic maps, and the methods described here are well-suited to support periodic map updates in tandem with future ﬁeld and Landsat observations.},
-	pages = {1024},
-	number = {10},
-	journaltitle = {Remote Sensing},
-	author = {Macander, Matthew and Frost, Gerald and Nelson, Peter and Swingley, Christopher},
-	urldate = {2018-10-11},
-	date = {2017-10-04},
-	langid = {english},
-	file = {Macander et al. - 2017 - Regional Quantitative Cover Mapping of Tundra Plan.pdf:C\:\\Users\\Brent Thorne\\Zotero\\storage\\NLKZSHKX\\Macander et al. - 2017 - Regional Quantitative Cover Mapping of Tundra Plan.pdf:application/pdf}
-}
-
-@book{zazula_ice_2013,
-	location = {Whitehorse},
-	title = {Ice age Old Crow: Yukon's ancient history from north of the Arctic Circle},
-	isbn = {978-1-55362-634-3},
-	shorttitle = {Ice age Old Crow},
-	abstract = {"Introduction: The remote village of Old Crow is Yukon's only community north of the Arctic Circle. The fascinating ice age history in this region has captured the imaginations of scientists, the Vuntut Gwitchin and the world for generations. Bluffs and banks along the Old Crow River are the richest source of ice age fossils in Canada. The Old Crow region also provides important clues about when the first people arrived in North America. In addition, layers of sediment and soil laid down over millions of years provide a crucial framework for the study of climate change in the Arctic. Scientific evidence from the Old Crow region provides many answers - and even more questions - about the long-vanished ice age world. ... An integral part of the story of ice age research in the Old Crow region is the continued involvement of the Vuntut Gwitchin. Since ancient times they have encountered the fossils of strange ancient beasts as they traversed the land and travelled the river. The importance of these ancient fossils is reflected in stories told by elders about how life as they know it came to be. Since the first arrival of scientists more than a century ago, the local people of Old Crow have provided valuable assistance and taken the time to share their stories and culture. With the signing of land claims and self-government agreements in 1993 the Vuntut Gwitchin gained greater responsibility for the management of ancient artifacts and fossils on their land. As a result, the Vuntut Gwitchin Government ({VGG}) owns and manages all fossils and artifacts found since 1995 on Vuntut Gwitchin Settlement Land. The creation of Vuntut National Park in 1995 further highlighted the importance of ice age research in the Old Crow region to the people of Canada."--{ASTIS} [online] database.},
-	publisher = {Yukon Tourism and Culture},
-	author = {Zazula, Grant and Froese, Duane Gerald and Halladay, Patricia and {Yukon} and {Department of Tourism and Culture}},
-	date = {2013},
-	langid = {english},
-	note = {{OCLC}: 864275210},
-	file = {Zazula et al. - 2013 - Ice age Old Crow Yukon's ancient history from nor.pdf:C\:\\Users\\Brent Thorne\\Zotero\\storage\\8PR3KYD4\\Zazula et al. - 2013 - Ice age Old Crow Yukon's ancient history from nor.pdf:application/pdf}
-}
-
-@article{holden_identifying_2012,
-	title = {Identifying structural complexity in aeromagnetic data: An image analysis approach to greenfields gold exploration},
-	volume = {46},
-	issn = {01691368},
-	url = {http://linkinghub.elsevier.com/retrieve/pii/S0169136811001454},
-	doi = {10.1016/j.oregeorev.2011.11.002},
-	shorttitle = {Identifying structural complexity in aeromagnetic data},
-	abstract = {Aeromagnetic data is important for the exploration of gold and other hydrothermal deposits because geologically favourable environments are associated with changes in rock magnetism. For example, Archean orogenic gold mineralisation is known to be present in areas of structural complexity near major shear-zones that form conduits for mineralising ﬂuids. Potential ﬂuid pathways such as shear zones and faults are often associated with magnetite destructive alteration resulting in linear negative anomalies in magnetic data. Here, we present a new image analysis method that identiﬁes geological structural complexity using lineaments automatically mapped within magnetic data. This quantitative analysis is efﬁcient and self consistent in dealing with large volumes of data, and is suitable as a ﬁrst-pass ground selection tool for orogenic gold exploration in greenﬁeld terrains.},
-	pages = {47--59},
-	journaltitle = {Ore Geology Reviews},
-	author = {Holden, Eun-Jung and Wong, Jason C. and Kovesi, Peter and Wedge, Daniel and Dentith, Mike and Bagas, Leon},
-	urldate = {2018-10-03},
-	date = {2012-08},
-	langid = {english},
-	file = {Holden et al. - 2012 - Identifying structural complexity in aeromagnetic .pdf:C\:\\Users\\Brent Thorne\\Zotero\\storage\\VUVAL6C8\\Holden et al. - 2012 - Identifying structural complexity in aeromagnetic .pdf:application/pdf}
-}
-
-@thesis{noauthor_aspler_nodate,
-	title = {Aspler - Geology of Nonacho Basin - {PhD} Thesis - 1985.pdf},
-	type = {phdthesis},
-	file = {Aspler - Geology of Nonacho Basin - PhD Thesis - 1985.pdf:C\:\\Users\\Brent Thorne\\Zotero\\storage\\H3EF6FNV\\Aspler - Geology of Nonacho Basin - PhD Thesis - 1985.pdf:application/pdf}
-}
-
-@article{tyren_lineament_nodate,
-	title = {Lineament interpretation Short review and methodology},
-	pages = {42},
-	author = {Tyrén, Sven},
-	langid = {english},
-	file = {Tyrén - Lineament interpretation Short review and methodol.pdf:C\:\\Users\\Brent Thorne\\Zotero\\storage\\IX2X2DS9\\Tyrén - Lineament interpretation Short review and methodol.pdf:application/pdf}
-}
-
-@article{middleton_geological_nodate,
-	title = {{GEOLOGICAL} {LINEAMENT} {INTERPRETATION} {USING} {THE} {OBJECT}-{BASED} {IMAGE} {ANALYSIS} {APPROACH}: {RESULTS} {OF} {SEMI}-{AUTOMATED} {ANALYSES} {VERSUS} {VISUAL} {INTERPRETATION}},
-	pages = {20},
-	author = {Middleton, Maarit and Schnur, Tilo and Sorjonen-Ward, Peter},
-	langid = {english},
-	file = {Middleton et al. - GEOLOGICAL LINEAMENT INTERPRETATION USING THE OBJE.pdf:C\:\\Users\\Brent Thorne\\Zotero\\storage\\CDZR88LQ\\Middleton et al. - GEOLOGICAL LINEAMENT INTERPRETATION USING THE OBJE.pdf:application/pdf}
-}
-
-@article{loranty_reviews_2018,
-	title = {Reviews and syntheses: Changing ecosystem influences on soil thermal regimes in northern high-latitude permafrost regions},
-	issn = {1810-6285},
-	url = {https://www.biogeosciences-discuss.net/bg-2018-201/},
-	doi = {10.5194/bg-2018-201},
-	shorttitle = {Reviews and syntheses},
-	pages = {1--56},
-	journaltitle = {Biogeosciences Discussions},
-	author = {Loranty, Michael M. and Abbott, Benjamin W. and Blok, Daan and Douglas, Thomas A. and Epstein, Howard E. and Forbes, Bruce C. and Jones, Benjamin M. and Kholodov, Alexander L. and Kropp, Heather and Malhotra, Avni and Mamet, Steven D. and Myers-Smith, Isla H. and Natali, Susan M. and O{\textbackslash}\&amp;apos;Donnell, Jonathan A. and Phoenix, Gareth K. and Rocha, Adrian V. and Sonnentag, Oliver and Tape, Ken D. and Walker, Donald A.},
-	urldate = {2018-09-17},
-	date = {2018-05-07},
-	langid = {english},
-	file = {Loranty et al. - 2018 - Reviews and syntheses Changing ecosystem influenc.pdf:C\:\\Users\\Brent Thorne\\Zotero\\storage\\QM3WZTNY\\Loranty et al. - 2018 - Reviews and syntheses Changing ecosystem influenc.pdf:application/pdf}
-}
-
-@article{weymer_statistical_2018,
-	title = {Statistical modeling of the long-range-dependent structure of barrier island framework geology and surface geomorphology},
-	volume = {6},
-	issn = {2196-632X},
-	url = {https://www.earth-surf-dynam.net/6/431/2018/},
-	doi = {10.5194/esurf-6-431-2018},
-	abstract = {Shorelines exhibit long-range dependence ({LRD}) and have been shown in some environments to be described in the wave number domain by a power-law characteristic of scale independence. Recent evidence suggests that the geomorphology of barrier islands can, however, exhibit scale dependence as a result of systematic variations in the underlying framework geology. The {LRD} of framework geology, which inﬂuences island geomorphology and its response to storms and sea level rise, has not been previously examined. Electromagnetic induction ({EMI}) surveys conducted along Padre Island National Seashore ({PAIS}), Texas, United States, reveal that the {EMI} apparent conductivity (σa) signal and, by inference, the framework geology exhibits {LRD} at scales of up to 101 to 102 km. Our study demonstrates the utility of describing {EMI} σa and lidar spatial series by a fractional autoregressive integrated moving average ({ARIMA}) process that speciﬁcally models {LRD}. This method offers a robust and compact way of quantifying the geological variations along a barrier island shoreline using three statistical parameters (p, d, q). We discuss how {ARIMA} models that use a single parameter d provide a quantitative measure for determining free and forced barrier island evolutionary behavior across different scales. Statistical analyses at regional, intermediate, and local scales suggest that the geologic framework within an area of paleo-channels exhibits a ﬁrst-order control on dune height. The exchange of sediment amongst nearshore, beach, and dune in areas outside this region are scale independent, implying that barrier islands like {PAIS} exhibit a combination of free and forced behaviors that affect the response of the island to sea level rise.},
-	pages = {431--450},
-	number = {2},
-	journaltitle = {Earth Surface Dynamics},
-	author = {Weymer, Bradley A. and Wernette, Phillipe and Everett, Mark E. and Houser, Chris},
-	urldate = {2018-09-12},
-	date = {2018-06-01},
-	langid = {english},
-	file = {Weymer et al. - 2018 - Statistical modeling of the long-range-dependent s.PDF:C\:\\Users\\Brent Thorne\\Zotero\\storage\\BXBDDUKW\\Weymer et al. - 2018 - Statistical modeling of the long-range-dependent s.PDF:application/pdf}
-}
-
-@article{park_influence_2012,
-	title = {The influence of climate and hydrological variables on opposite anomaly in active layer thickness between Eurasian and North American watersheds},
-	volume = {6},
-	issn = {1994-0440},
-	url = {http://www.the-cryosphere-discuss.net/6/2537/2012/},
-	doi = {10.5194/tcd-6-2537-2012},
-	pages = {2537--2574},
-	number = {4},
-	journaltitle = {The Cryosphere Discussions},
-	author = {Park, H. and Walsh, J. and Fedorov, A. N. and Sherstiukov, A. B. and Iijima, Y. and Ohata, T.},
-	urldate = {2018-09-10},
-	date = {2012-07-17},
-	langid = {english},
-	file = {Park et al. - 2012 - The influence of climate and hydrological variable.pdf:C\:\\Users\\Brent Thorne\\Zotero\\storage\\RVMGM4HC\\Park et al. - 2012 - The influence of climate and hydrological variable.pdf:application/pdf}
-}
-
-@article{morison_hydrology_nodate,
-	title = {Hydrology and Nutrient Biogeochemistry of Shallow Pond-Peatland Complexes, Hudson Bay Lowlands},
-	pages = {186},
-	author = {Morison, Matthew},
-	langid = {english},
-	file = {Morison - Hydrology and Nutrient Biogeochemistry of Shallow .pdf:C\:\\Users\\Brent Thorne\\Zotero\\storage\\9F8RG8VX\\Morison - Hydrology and Nutrient Biogeochemistry of Shallow .pdf:application/pdf}
-}
-
-@article{bolduc_multiyear_2018,
-	title = {Multiyear variations in High Arctic river temperatures in response to climate variability},
-	issn = {2368-7460},
-	url = {http://www.nrcresearchpress.com/doi/10.1139/as-2017-0053},
-	doi = {10.1139/as-2017-0053},
-	abstract = {Water temperature measurements (2004–2016) from two small rivers in the High Arctic were analyzed to determine the effects of climate variability on thermal regime and the sensitivity to climate change. The East and West rivers (unofficial names) drain similar watersheds (11.6 and 8.0 km2, respectively) and are located at the Cape Bounty Arctic Watershed Observatory ({CBAWO}), Melville Island, Canada (74°55′N, 109°35′W). Differences in seasonal timing of river temperatures were evident when comparing the coldest and warmest years of the study period, and across different discharge conditions. Snowmelt runoff is characterized by uniformly cold water (∼0–1 °C) over a wide range of discharge conditions, followed by warming water temperatures during flow recession. The rivers showed varying sensitivity to mid-summer air temperature conditions in a given year, with warmer years indicating high correlation (r2 = 0.794–0.929), whereas colder years showed reduced correlation (r2 = 0.368–0.778). River temperatures reached levels which are reported to negatively affect fish and other cold-water aquatic species ({\textgreater}18 °C) with greater frequency and duration during the warmest years. These results provide a basis to further enhance prediction of river thermal conditions to assess ecosystem health in a river system and to refine insights into the effects of climate change on High Arctic aquatic ecosystems.},
-	pages = {1--19},
-	journaltitle = {Arctic Science},
-	author = {Bolduc, Christopher and Lamoureux, Scott F.},
-	urldate = {2018-09-02},
-	date = {2018-04-17},
-	langid = {english},
-	file = {Bolduc and Lamoureux - 2018 - Multiyear variations in High Arctic river temperat.pdf:C\:\\Users\\Brent Thorne\\Zotero\\storage\\BR5SN5GZ\\Bolduc and Lamoureux - 2018 - Multiyear variations in High Arctic river temperat.pdf:application/pdf}
-}
-
-@article{matveev_methane_2018,
-	title = {Methane and carbon dioxide emissions from thermokarst lakes on mineral soils},
-	issn = {2368-7460},
-	url = {http://www.nrcresearchpress.com/doi/10.1139/as-2017-0047},
-	doi = {10.1139/as-2017-0047},
-	abstract = {Thermokarst lakes are known to emit methane ({CH}4) and carbon dioxide ({CO}2), but little attention has been given to those formed from the thawing and collapse of lithalsas, ice-rich mineral soil mounds that occur in permafrost landscapes. The present study was undertaken to assess greenhouse gas stocks and fluxes in eight lithalsa lakes across a 200 km gradient of permafrost degradation in subarctic Québec. The northernmost lakes varied in their surface-water {CO}2 content from below to above saturation, but the southern lakes in this gradient had much higher surface concentrations that were well above airequilibrium. Surface-water {CH}4 concentrations were at least an order of magnitude above air-equilibrium values at all sites, and the diffusive fluxes of both gases increased from north to south. Methane oxidation in the surface waters from a northern lake was only 10\% of the emission rate, but at the southern end it was around 60\% of the efflux to the atmosphere, indicating that methanotrophy can play a substantive role in reducing net emissions. Overall, our observations show that lithalsa lakes can begin emitting {CH}4 and {CO}2 soon after they form, with effluxes of both gases that persist and increase as the permafrost continues to warm and erode.},
-	pages = {1--21},
-	journaltitle = {Arctic Science},
-	author = {Matveev, Alex and Laurion, Isabelle and Vincent, Warwick F.},
-	urldate = {2018-08-26},
-	date = {2018-05-17},
-	langid = {english},
-	file = {Matveev et al. - 2018 - Methane and carbon dioxide emissions from thermoka.pdf:C\:\\Users\\Brent Thorne\\Zotero\\storage\\5KIDBYHG\\Matveev et al. - 2018 - Methane and carbon dioxide emissions from thermoka.pdf:application/pdf}
-}
-
-@book{davis_permafrost:_2001,
-	location = {Fairbanks, Alaska},
-	title = {Permafrost: a guide to frozen ground in transition},
-	isbn = {978-1-889963-19-8},
-	shorttitle = {Permafrost},
-	pagetotal = {351},
-	publisher = {University of Alaska Press},
-	author = {Davis, T. Neil},
-	date = {2001},
-	keywords = {Permafrost}
-}
-
-@article{hindshaw_origin_2016,
-	title = {Origin and temporal variability of unusually low \textit{δ} $^{\textrm{13}}$ C-{DOC} values in two High Arctic catchments: {UNUSUALLY} {LOW} {\textless}i{\textgreater}δ{\textless}/i{\textgreater} $^{\textrm{13}}$ C-{DOC} {VALUES}},
-	volume = {121},
-	issn = {21698953},
-	url = {http://doi.wiley.com/10.1002/2015JG003303},
-	doi = {10.1002/2015JG003303},
-	shorttitle = {Origin and temporal variability of unusually low \textit{δ} $^{\textrm{13}}$ C-{DOC} values in two High Arctic catchments},
-	abstract = {The stable carbon isotopic composition of dissolved organic matter (������13C-{DOC}) reveals information about its source and extent of biological processing. Here we report the lowest ������13C-{DOC} values (−43.8‰) measured to date in surface waters. The streams were located in the High Arctic, a region currently experiencing rapid changes in climate and carbon cycling. Based on the widespread occurrence of methane cycling in permafrost regions and the detection of the {pmoA} gene, a proxy for aerobic methanotrophs, we conclude that the low ������13C-{DOC} values are due to organic matter partially derived from methanotrophs consuming biologically produced, 13C-depleted methane. These ﬁndings demonstrate the signiﬁcant impact that biological activity has on the stream water chemistry exported from permafrost and glaciated environments in the Arctic. Given that the catchments studied here are representative of larger areas of the Arctic, occurrences of low ������13C-{DOC} values may be more widespread than previously recognized, with implications for understanding C cycling in these environments.},
-	pages = {1073--1085},
-	number = {4},
-	journaltitle = {Journal of Geophysical Research: Biogeosciences},
-	author = {Hindshaw, R. S. and Lang, S. Q. and Bernasconi, S. M. and Heaton, T. H. E. and Lindsay, M. R. and Boyd, E. S.},
-	urldate = {2018-07-19},
-	date = {2016-04},
-	langid = {english},
-	file = {Hindshaw et al. - 2016 - Origin and temporal variability of unusually low .pdf:C\:\\Users\\Brent Thorne\\Zotero\\storage\\LWN5SYIG\\Hindshaw et al. - 2016 - Origin and temporal variability of unusually low .pdf:application/pdf}
-}
-
-@article{frey_impacts_2009,
-	title = {Impacts of permafrost degradation on arctic river biogeochemistry},
-	volume = {23},
-	issn = {08856087, 10991085},
-	url = {http://doi.wiley.com/10.1002/hyp.7196},
-	doi = {10.1002/hyp.7196},
-	abstract = {Over the next century, near-surface permafrost across the circumpolar Arctic is expected to degrade signiﬁcantly, particularly for land areas south of 70°N. This is likely to cause widespread impacts on arctic hydrology, ecology, and trace gas emissions. Here, we present a review of recent studies investigating linkages between permafrost dynamics and river biogeochemistry in the Arctic, including consideration of likely impacts that warming-induced changes in permafrost may be having (or will have in the future) on the delivery of organic matter, inorganic nutrients, and major ions to the Arctic Ocean. These interacting processes can be highly complex and undoubtedly exhibit spatial and temporal variabilities associated with current permafrost conditions, sensitivity to permafrost thaw, mode of permafrost degradation (overall permafrost thaw, active layer deepening, and/or thermokarst processes), and environmental characteristics of watersheds (e.g. land cover, soil type, and topography). One of the most profound consequences of permafrost thaw projected for the future is that the arctic terrestrial freshwater system is likely to experience a transition from a surface water-dominated system to a groundwater-dominated system. Along with many other cascading impacts from this transition, mineral-rich groundwater may become an important contributor to streamﬂow, in addition to the currently dominant contribution from mineral-poor surface water. Most studies observe or predict an increase in major ion, phosphate, and silicate export with this shift towards greater groundwater contributions. However, we see conﬂicting accounts of whether the delivery of inorganic nitrogen and organic matter will increase or decrease with warming and permafrost thaw. It is important to note that uncertainties in the predictions of the total ﬂux of biogeochemical constituents are tightly linked to future uncertainties in discharge of rivers. Nonetheless, it is clear that over the next century there will be important shifts in the river transport of organic matter, inorganic nutrients, and major ions, which may in turn have critical implications for primary production and carbon cycling on arctic shelves and in the Arctic Ocean basin interior. Copyright  2008 John Wiley \& Sons, Ltd.},
-	pages = {169--182},
-	number = {1},
-	journaltitle = {Hydrological Processes},
-	author = {Frey, Karen E. and {McClelland}, James W.},
-	urldate = {2018-07-17},
-	date = {2009-01-01},
-	langid = {english},
-	file = {Frey and McClelland - 2009 - Impacts of permafrost degradation on arctic river .pdf:C\:\\Users\\Brent Thorne\\Zotero\\storage\\VGHCAHGV\\Frey and McClelland - 2009 - Impacts of permafrost degradation on arctic river .pdf:application/pdf}
-}
-
-@article{vonk_reviews_2015,
-	title = {Reviews and syntheses: Effects of permafrost thaw on Arctic aquatic ecosystems},
-	volume = {12},
-	issn = {1726-4189},
-	url = {https://www.biogeosciences.net/12/7129/2015/},
-	doi = {10.5194/bg-12-7129-2015},
-	shorttitle = {Reviews and syntheses},
-	pages = {7129--7167},
-	number = {23},
-	journaltitle = {Biogeosciences},
-	author = {Vonk, J. E. and Tank, S. E. and Bowden, W. B. and Laurion, I. and Vincent, W. F. and Alekseychik, P. and Amyot, M. and Billet, M. F. and Canário, J. and Cory, R. M. and Deshpande, B. N. and Helbig, M. and Jammet, M. and Karlsson, J. and Larouche, J. and {MacMillan}, G. and Rautio, M. and Walter Anthony, K. M. and Wickland, K. P.},
-	urldate = {2018-07-17},
-	date = {2015-12-08},
-	langid = {english},
-	file = {Vonk et al. - 2015 - Reviews and syntheses Effects of permafrost thaw .pdf:C\:\\Users\\Brent Thorne\\Zotero\\storage\\FP89SUHS\\Vonk et al. - 2015 - Reviews and syntheses Effects of permafrost thaw .pdf:application/pdf}
-}
-
-@article{waldrop_molecular_2010,
-	title = {Molecular investigations into a globally important carbon pool: permafrost-protected carbon in Alaskan soils},
-	volume = {16},
-	issn = {1365-2486},
-	url = {https://onlinelibrary.wiley.com/doi/abs/10.1111/j.1365-2486.2009.02141.x},
-	doi = {10.1111/j.1365-2486.2009.02141.x},
-	shorttitle = {Molecular investigations into a globally important carbon pool},
-	abstract = {The fate of carbon (C) contained within permafrost in boreal forest environments is an important consideration for the current and future carbon cycle as soils warm in northern latitudes. Currently, little is known about the microbiology or chemistry of permafrost soils that may affect its decomposition once soils thaw. We tested the hypothesis that low microbial abundances and activities in permafrost soils limit decomposition rates compared with active layer soils. We examined active layer and permafrost soils near Fairbanks, {AK}, the Yukon River, and the Arctic Circle. Soils were incubated in the lab under aerobic and anaerobic conditions. Gas fluxes at −5 and 5 °C were measured to calculate temperature response quotients (Q10). The Q10 was lower in permafrost soils (average 2.7) compared with active layer soils (average 7.5). Soil nutrients, leachable dissolved organic C ({DOC}) quality and quantity, and nuclear magnetic resonance spectroscopy of the soils revealed that the organic matter within permafrost soils is as labile, or even more so, than surface soils. Microbial abundances (fungi, bacteria, and subgroups: methanogens and Basidiomycetes) and exoenzyme activities involved in decomposition were lower in permafrost soils compared with active layer soils, which, together with the chemical data, supports the reduced Q10 values. {CH}4 fluxes were correlated with methanogen abundance and the highest {CH}4 production came from active layer soils. These results suggest that permafrost soils have high inherent decomposability, but low microbial abundances and activities reduce the temperature sensitivity of C fluxes. Despite these inherent limitations, however, respiration per unit soil C was higher in permafrost soils compared with active layer soils, suggesting that decomposition and heterotrophic respiration may contribute to a positive feedback to warming of this eco region.},
-	pages = {2543--2554},
-	number = {9},
-	journaltitle = {Global Change Biology},
-	author = {Waldrop, M. P. and Wickland, K. P. and Iii, R. White and Berhe, A. A. and Harden, J. W. and Romanovsky, V. E.},
-	urldate = {2018-07-17},
-	date = {2010},
-	langid = {english},
-	keywords = {carbon cycling, enzymes, methanogenesis, microbial communities, permafrost, respiration},
-	file = {Waldrop et al. - Molecular investigations into a globally important.pdf:C\:\\Users\\Brent Thorne\\Zotero\\storage\\FMFNECBB\\Waldrop et al. - Molecular investigations into a globally important.pdf:application/pdf}
-}
-
-@article{drake_ancient_2015,
-	title = {Ancient low–molecular-weight organic acids in permafrost fuel rapid carbon dioxide production upon thaw},
-	volume = {112},
-	issn = {0027-8424, 1091-6490},
-	url = {http://www.pnas.org/lookup/doi/10.1073/pnas.1511705112},
-	doi = {10.1073/pnas.1511705112},
-	pages = {13946--13951},
-	number = {45},
-	journaltitle = {Proceedings of the National Academy of Sciences},
-	author = {Drake, Travis W. and Wickland, Kimberly P. and Spencer, Robert G. M. and {McKnight}, Diane M. and Striegl, Robert G.},
-	urldate = {2018-07-17},
-	date = {2015-11-10},
-	langid = {english},
-	file = {Drake et al. - 2015 - Ancient low–molecular-weight organic acids in perm.pdf:C\:\\Users\\Brent Thorne\\Zotero\\storage\\QH32PI44\\Drake et al. - 2015 - Ancient low–molecular-weight organic acids in perm.pdf:application/pdf}
-}
-
-@article{wickland_dissolved_2007,
-	title = {Dissolved Organic Carbon in Alaskan Boreal Forest: Sources, Chemical Characteristics, and Biodegradability},
-	volume = {10},
-	issn = {1432-9840, 1435-0629},
-	url = {http://link.springer.com/10.1007/s10021-007-9101-4},
-	doi = {10.1007/s10021-007-9101-4},
-	shorttitle = {Dissolved Organic Carbon in Alaskan Boreal Forest},
-	pages = {1323--1340},
-	number = {8},
-	journaltitle = {Ecosystems},
-	author = {Wickland, Kimberly P. and Neff, Jason C. and Aiken, George R.},
-	urldate = {2018-07-17},
-	date = {2007-12},
-	langid = {english},
-	file = {Wickland et al. - 2007 - Dissolved Organic Carbon in Alaskan Boreal Forest.pdf:C\:\\Users\\Brent Thorne\\Zotero\\storage\\EEKLIR9K\\Wickland et al. - 2007 - Dissolved Organic Carbon in Alaskan Boreal Forest.pdf:application/pdf}
-}
-
-@article{schuur_expert_2013,
-	title = {Expert assessment of vulnerability of permafrost carbon to climate change},
-	volume = {119},
-	issn = {0165-0009, 1573-1480},
-	url = {http://link.springer.com/10.1007/s10584-013-0730-7},
-	doi = {10.1007/s10584-013-0730-7},
-	pages = {359--374},
-	number = {2},
-	journaltitle = {Climatic Change},
-	author = {Schuur, E. A. G. and Abbott, B. W. and Bowden, W. B. and Brovkin, V. and Camill, P. and Canadell, J. G. and Chanton, J. P. and Chapin, F. S. and Christensen, T. R. and Ciais, P. and Crosby, B. T. and Czimczik, C. I. and Grosse, G. and Harden, J. and Hayes, D. J. and Hugelius, G. and Jastrow, J. D. and Jones, J. B. and Kleinen, T. and Koven, C. D. and Krinner, G. and Kuhry, P. and Lawrence, D. M. and {McGuire}, A. D. and Natali, S. M. and O’Donnell, J. A. and Ping, C. L. and Riley, W. J. and Rinke, A. and Romanovsky, V. E. and Sannel, A. B. K. and Schädel, C. and Schaefer, K. and Sky, J. and Subin, Z. M. and Tarnocai, C. and Turetsky, M. R. and Waldrop, M. P. and Walter Anthony, K. M. and Wickland, K. P. and Wilson, C. J. and Zimov, S. A.},
-	urldate = {2018-07-17},
-	date = {2013-07},
-	langid = {english},
-	file = {Schuur et al. - 2013 - Expert assessment of vulnerability of permafrost c.pdf:C\:\\Users\\Brent Thorne\\Zotero\\storage\\T3XQGA86\\Schuur et al. - 2013 - Expert assessment of vulnerability of permafrost c.pdf:application/pdf}
-}
-
-@article{grosse_vulnerability_nodate,
-	title = {Vulnerability of high-latitude soil organic carbon in North America to disturbance},
-	volume = {116},
-	issn = {2156-2202},
-	url = {https://agupubs.onlinelibrary.wiley.com/doi/abs/10.1029/2010JG001507},
-	doi = {10.1029/2010JG001507},
-	abstract = {This synthesis addresses the vulnerability of the North American high-latitude soil organic carbon ({SOC}) pool to climate change. Disturbances caused by climate warming in arctic, subarctic, and boreal environments can result in significant redistribution of C among major reservoirs with potential global impacts. We divide the current northern high-latitude {SOC} pools into (1) near-surface soils where {SOC} is affected by seasonal freeze-thaw processes and changes in moisture status, and (2) deeper permafrost and peatland strata down to several tens of meters depth where {SOC} is usually not affected by short-term changes. We address key factors (permafrost, vegetation, hydrology, paleoenvironmental history) and processes (C input, storage, decomposition, and output) responsible for the formation of the large high-latitude {SOC} pool in North America and highlight how climate-related disturbances could alter this pool's character and size. Press disturbances of relatively slow but persistent nature such as top-down thawing of permafrost, and changes in hydrology, microbiological communities, pedological processes, and vegetation types, as well as pulse disturbances of relatively rapid and local nature such as wildfires and thermokarst, could substantially impact {SOC} stocks. Ongoing climate warming in the North American high-latitude region could result in crossing environmental thresholds, thereby accelerating press disturbances and increasingly triggering pulse disturbances and eventually affecting the C source/sink net character of northern high-latitude soils. Finally, we assess postdisturbance feedbacks, models, and predictions for the northern high-latitude {SOC} pool, and discuss data and research gaps to be addressed by future research.},
-	issue = {G4},
-	journaltitle = {Journal of Geophysical Research: Biogeosciences},
-	author = {Grosse, Guido and Harden, Jennifer and Turetsky, Merritt and {McGuire}, A. David and Camill, Philip and Tarnocai, Charles and Frolking, Steve and Schuur, Edward A. G. and Jorgenson, Torre and Marchenko, Sergei and Romanovsky, Vladimir and Wickland, Kimberly P. and French, Nancy and Waldrop, Mark and Bourgeau‐Chavez, Laura and Striegl, Robert G.},
-	urldate = {2018-07-17},
-	langid = {english},
-	keywords = {permafrost, disturbance, high latitudes, North America, peatlands, soil carbon},
-	file = {Grosse et al. - Vulnerability of high-latitude soil organic carbon.pdf:C\:\\Users\\Brent Thorne\\Zotero\\storage\\PSCLLGST\\Grosse et al. - Vulnerability of high-latitude soil organic carbon.pdf:application/pdf}
-}
-
-@article{striegl_carbon_2007,
-	title = {Carbon export and cycling by the Yukon, Tanana, and Porcupine rivers, Alaska, 2001-2005: {YUKON} {BASIN} {CARBON} {EXPORT}},
-	volume = {43},
-	issn = {00431397},
-	url = {http://doi.wiley.com/10.1029/2006WR005201},
-	doi = {10.1029/2006WR005201},
-	shorttitle = {Carbon export and cycling by the Yukon, Tanana, and Porcupine rivers, Alaska, 2001-2005},
-	number = {2},
-	journaltitle = {Water Resources Research},
-	author = {Striegl, Robert G. and Dornblaser, Mark M. and Aiken, George R. and Wickland, Kimberly P. and Raymond, Peter A.},
-	urldate = {2018-07-17},
-	date = {2007-02},
-	langid = {english},
-	file = {Striegl et al. - 2007 - Carbon export and cycling by the Yukon, Tanana, an.pdf:C\:\\Users\\Brent Thorne\\Zotero\\storage\\4WV5PGZB\\Striegl et al. - 2007 - Carbon export and cycling by the Yukon, Tanana, an.pdf:application/pdf}
-}
-
-@article{striegl_carbon_2001,
-	title = {Carbon dioxide partial pressure and 13C content of north temperate and boreal lakes at spring ice melt},
-	volume = {46},
-	issn = {00243590},
-	url = {http://doi.wiley.com/10.4319/lo.2001.46.4.0941},
-	doi = {10.4319/lo.2001.46.4.0941},
-	pages = {941--945},
-	number = {4},
-	journaltitle = {Limnology and Oceanography},
-	author = {Striegl, Robert G. and Kortelainen, Pirkko and Chanton, Jeffrey P. and Wickland, Kimberly P. and Bugna, Glynnis C. and Rantakari, Miitta},
-	urldate = {2018-07-17},
-	date = {2001-06},
-	langid = {english},
-	file = {Striegl et al. - 2001 - Carbon dioxide partial pressure and 13C content of.pdf:C\:\\Users\\Brent Thorne\\Zotero\\storage\\ZACPZD3B\\Striegl et al. - 2001 - Carbon dioxide partial pressure and 13C content of.pdf:application/pdf}
-}
-
-@article{matveev_methane_2018-1,
-	title = {Methane and carbon dioxide emissions from thermokarst lakes on mineral soils},
-	issn = {2368-7460},
-	url = {http://www.nrcresearchpress.com/doi/10.1139/as-2017-0047},
-	doi = {10.1139/as-2017-0047},
-	abstract = {Thermokarst lakes are known to emit methane ({CH}4) and carbon dioxide ({CO}2), but little attention has been given to those formed from the thawing and collapse of lithalsas, ice-rich mineral soil mounds that occur in permafrost landscapes. The present study was undertaken to assess greenhouse gas stocks and fluxes in eight lithalsa lakes across a 200 km gradient of permafrost degradation in subarctic Québec. The northernmost lakes varied in their surface-water {CO}2 content from below to above saturation, but the southern lakes in this gradient had much higher surface concentrations that were well above airequilibrium. Surface-water {CH}4 concentrations were at least an order of magnitude above air-equilibrium values at all sites, and the diffusive fluxes of both gases increased from north to south. Methane oxidation in the surface waters from a northern lake was only 10\% of the emission rate, but at the southern end it was around 60\% of the efflux to the atmosphere, indicating that methanotrophy can play a substantive role in reducing net emissions. Overall, our observations show that lithalsa lakes can begin emitting {CH}4 and {CO}2 soon after they form, with effluxes of both gases that persist and increase as the permafrost continues to warm and erode.},
-	pages = {1--21},
-	journaltitle = {Arctic Science},
-	author = {Matveev, Alex and Laurion, Isabelle and Vincent, Warwick F.},
-	urldate = {2018-07-13},
-	date = {2018-05-17},
-	langid = {english},
-	file = {Matveev et al. - 2018 - Methane and carbon dioxide emissions from thermoka.pdf:C\:\\Users\\Brent Thorne\\Zotero\\storage\\R7AE2NU6\\Matveev et al. - 2018 - Methane and carbon dioxide emissions from thermoka.pdf:application/pdf}
-}
-
-@article{brown_thermal_2010,
-	title = {The Thermal State of Permafrost: the {IPY}- {IPA} snapshot (2007-2009)},
-	abstract = {During the International Polar Year ({IPY}) the International Permafrost Association ({IPA}) coordinated the acquisition of standardized permafrost temperatures data (snapshot) under the Thermal State of Permafrost ({TSP}) Project. The current network consists of more than 860 boreholes in both hemispheres with more than 25 participating countries. The vast majority of sites are equipped for long-term permafrost temperature observations. A borehole inventory including mean annual ground temperatures for 600 boreholes (snapshot) is available online.},
-	pages = {7},
-	author = {Brown, Jerry and Kholodov, Alexander and Romanovsky, Vladimir and Yoshikawa, Kenji and Smith, Sharon L and Christiansen, Hanne H and Vieira, Goncalo and Noetzli, Jeannette},
-	date = {2010},
-	langid = {english},
-	file = {Brown et al. - The Thermal State of Permafrost the IPY- IPA snap.pdf:C\:\\Users\\Brent Thorne\\Zotero\\storage\\87EWNZZY\\Brown et al. - The Thermal State of Permafrost the IPY- IPA snap.pdf:application/pdf}
-}
-
-@article{romanovsky_permafrost_2010,
-	title = {Permafrost thermal state in the polar Northern Hemisphere during the international polar year 2007-2009: a synthesis},
-	volume = {21},
-	issn = {10456740, 10991530},
-	url = {http://doi.wiley.com/10.1002/ppp.689},
-	doi = {10.1002/ppp.689},
-	shorttitle = {Permafrost thermal state in the polar Northern Hemisphere during the international polar year 2007-2009},
-	abstract = {The permafrost monitoring network in the polar regions of the Northern Hemisphere was enhanced during the International Polar Year ({IPY}), and new information on permafrost thermal state was collected for regions where there was little available. This augmented monitoring network is an important legacy of the {IPY}, as is the updated baseline of current permafrost conditions against which future changes may be measured. Within the Northern Hemisphere polar region, ground temperatures are currently being measured in about 575 boreholes in North America, the Nordic region and Russia. These show that in the discontinuous permafrost zone, permafrost temperatures fall within a narrow range, with the mean annual ground temperature ({MAGT}) at most sites being higher than À28C. A greater range in {MAGT} is present within the continuous permafrost zone, from above À18C at some locations to as low as À158C. The latest results indicate that the permafrost warming which started two to three decades ago has generally continued into the {IPY} period. Warming rates are much smaller for permafrost already at temperatures close to 08C compared with colder permafrost, especially for ice-rich permafrost where latent heat effects dominate the ground thermal regime. Colder permafrost sites are warming more rapidly. This improved knowledge about the permafrost thermal state and its dynamics is important for multidisciplinary polar research, but also for many of the 4 million people living in the Arctic. In particular, this knowledge is required for designing effective adaptation strategies for the local communities under warmer climatic conditions. Copyright \# 2010 John Wiley \& Sons, Ltd.},
-	pages = {106--116},
-	number = {2},
-	journaltitle = {Permafrost and Periglacial Processes},
-	author = {Romanovsky, Vladimir E. and Smith, Sharon L. and Christiansen, Hanne H.},
-	urldate = {2018-07-12},
-	date = {2010-06-08},
-	langid = {english},
-	file = {Romanovsky et al. - 2010 - Permafrost thermal state in the polar Northern Hem.pdf:C\:\\Users\\Brent Thorne\\Zotero\\storage\\VIRP59D7\\Romanovsky et al. - 2010 - Permafrost thermal state in the polar Northern Hem.pdf:application/pdf}
-}
-
-@article{zimov_permafrost_2006,
-	title = {Permafrost and the Global Carbon Budget},
-	volume = {312},
-	issn = {0036-8075, 1095-9203},
-	url = {http://www.sciencemag.org/cgi/doi/10.1126/science.1128908},
-	doi = {10.1126/science.1128908},
-	shorttitle = {{CLIMATE} {CHANGE}},
-	pages = {1612--1613},
-	number = {5780},
-	journaltitle = {Science},
-	author = {Zimov, S. A.},
-	urldate = {2018-07-12},
-	date = {2006-06-16},
-	langid = {english},
-	file = {Zimov - 2006 - CLIMATE CHANGE Permafrost and the Global Carbon B.pdf:C\:\\Users\\Brent Thorne\\Zotero\\storage\\F7N376ZX\\Zimov - 2006 - CLIMATE CHANGE Permafrost and the Global Carbon B.pdf:application/pdf}
-}
-
-@article{zimov_permafrost_2006-1,
-	title = {Permafrost carbon: Stock and decomposability of a globally significant carbon pool},
-	volume = {33},
-	issn = {0094-8276},
-	url = {http://doi.wiley.com/10.1029/2006GL027484},
-	doi = {10.1029/2006GL027484},
-	shorttitle = {Permafrost carbon},
-	number = {20},
-	journaltitle = {Geophysical Research Letters},
-	author = {Zimov, S. A. and Davydov, S. P. and Zimova, G. M. and Davydova, A. I. and Schuur, E. A. G. and Dutta, K. and Chapin, F. S.},
-	urldate = {2018-07-12},
-	date = {2006-10-27},
-	langid = {english},
-	file = {Zimov et al. - 2006 - Permafrost carbon Stock and decomposability of a .pdf:C\:\\Users\\Brent Thorne\\Zotero\\storage\\V28TVFWE\\Zimov et al. - 2006 - Permafrost carbon Stock and decomposability of a .pdf:application/pdf}
-}
-
-@article{schuur_effect_2009,
-	title = {The effect of permafrost thaw on old carbon release and net carbon exchange from tundra},
-	volume = {459},
-	issn = {0028-0836, 1476-4687},
-	url = {http://www.nature.com/articles/nature08031},
-	doi = {10.1038/nature08031},
-	pages = {556--559},
-	number = {7246},
-	journaltitle = {Nature},
-	author = {Schuur, Edward A. G. and Vogel, Jason G. and Crummer, Kathryn G. and Lee, Hanna and Sickman, James O. and Osterkamp, T. E.},
-	urldate = {2018-07-12},
-	date = {2009-05},
-	langid = {english},
-	file = {Schuur et al. - 2009 - The effect of permafrost thaw on old carbon releas.pdf:C\:\\Users\\Brent Thorne\\Zotero\\storage\\YRBJYIWH\\Schuur et al. - 2009 - The effect of permafrost thaw on old carbon releas.pdf:application/pdf}
-}
-
-@article{tarnocai_soil_2009,
-	title = {Soil organic carbon pools in the northern circumpolar permafrost region: {SOIL} {ORGANIC} {CARBON} {POOLS}},
-	volume = {23},
-	issn = {08866236},
-	url = {http://doi.wiley.com/10.1029/2008GB003327},
-	doi = {10.1029/2008GB003327},
-	shorttitle = {Soil organic carbon pools in the northern circumpolar permafrost region},
-	pages = {n/a--n/a},
-	number = {2},
-	journaltitle = {Global Biogeochemical Cycles},
-	author = {Tarnocai, C. and Canadell, J. G. and Schuur, E. A. G. and Kuhry, P. and Mazhitova, G. and Zimov, S.},
-	urldate = {2018-07-12},
-	date = {2009-06},
-	langid = {english},
-	file = {Tarnocai et al. - 2009 - Soil organic carbon pools in the northern circumpo.pdf:C\:\\Users\\Brent Thorne\\Zotero\\storage\\2FYYA39I\\Tarnocai et al. - 2009 - Soil organic carbon pools in the northern circumpo.pdf:application/pdf}
-}
-
-@article{schaefer_impact_2014,
-	title = {The impact of the permafrost carbon feedback on global climate},
-	volume = {9},
-	issn = {1748-9326},
-	url = {http://stacks.iop.org/1748-9326/9/i=8/a=085003?key=crossref.30cf8c5adeaa54d6e76392833f9bc72e},
-	doi = {10.1088/1748-9326/9/8/085003},
-	abstract = {Degrading permafrost can alter ecosystems, damage infrastructure, and release enough carbon dioxide ({CO}2) and methane ({CH}4) to inﬂuence global climate. The permafrost carbon feedback ({PCF}) is the ampliﬁcation of surface warming due to {CO}2 and {CH}4 emissions from thawing permafrost. An analysis of available estimates {PCF} strength and timing indicate 120 ± 85 Gt of carbon emissions from thawing permafrost by 2100. This is equivalent to 5.7 ± 4.0\% of total anthropogenic emissions for the Intergovernmental Panel on Climate Change ({IPCC}) representative concentration pathway ({RCP}) 8.5 scenario and would increase global temperatures by 0.29 ± 0.21 °C or 7.8 ± 5.7\%. For {RCP}4.5, the scenario closest to the 2 °C warming target for the climate change treaty, the range of cumulative emissions in 2100 from thawing permafrost decreases to between 27 and 100 Gt C with temperature increases between 0.05 and 0.15 °C, but the relative fraction of permafrost to total emissions increases to between 3\% and 11\%. Any substantial warming results in a committed, long-term carbon release from thawing permafrost with 60\% of emissions occurring after 2100, indicating that not accounting for permafrost emissions risks overshooting the 2 °C warming target. Climate projections in the {IPCC} Fifth Assessment Report ({AR}5), and any emissions targets based on those projections, do not adequately account for emissions from thawing permafrost and the effects of the {PCF} on global climate. We recommend the {IPCC} commission a special assessment focusing on the {PCF} and its impact on global climate to supplement the {AR}5 in support of treaty negotiation.},
-	pages = {085003},
-	number = {8},
-	journaltitle = {Environmental Research Letters},
-	author = {Schaefer, Kevin and Lantuit, Hugues and Romanovsky, Vladimir E and Schuur, Edward A G and Witt, Ronald},
-	urldate = {2018-07-12},
-	date = {2014-08-01},
-	langid = {english},
-	file = {Schaefer et al. - 2014 - The impact of the permafrost carbon feedback on gl.pdf:C\:\\Users\\Brent Thorne\\Zotero\\storage\\QZWSMAJF\\Schaefer et al. - 2014 - The impact of the permafrost carbon feedback on gl.pdf:application/pdf}
-}
-
-@article{raymond_global_2013,
-	title = {Global carbon dioxide emissions from inland waters},
-	volume = {503},
-	issn = {0028-0836, 1476-4687},
-	url = {http://www.nature.com/articles/nature12760},
-	doi = {10.1038/nature12760},
-	pages = {355--359},
-	number = {7476},
-	journaltitle = {Nature},
-	author = {Raymond, Peter A. and Hartmann, Jens and Lauerwald, Ronny and Sobek, Sebastian and {McDonald}, Cory and Hoover, Mark and Butman, David and Striegl, Robert and Mayorga, Emilio and Humborg, Christoph and Kortelainen, Pirkko and Dürr, Hans and Meybeck, Michel and Ciais, Philippe and Guth, Peter},
-	urldate = {2018-07-11},
-	date = {2013-11},
-	langid = {english},
-	file = {Raymond et al. - 2013 - Global carbon dioxide emissions from inland waters.pdf:C\:\\Users\\Brent Thorne\\Zotero\\storage\\XA6S3BWZ\\Raymond et al. - 2013 - Global carbon dioxide emissions from inland waters.pdf:application/pdf}
-}
-
-@article{tank_landscape-level_2012,
-	title = {Landscape-level controls on dissolved carbon flux from diverse catchments of the circumboreal: {DISSOLVED} {CARBON} {FLUX} {FROM} {BOREAL} {RIVERS}},
-	volume = {26},
-	issn = {08866236},
-	url = {http://doi.wiley.com/10.1029/2012GB004299},
-	doi = {10.1029/2012GB004299},
-	shorttitle = {Landscape-level controls on dissolved carbon flux from diverse catchments of the circumboreal},
-	pages = {n/a--n/a},
-	number = {4},
-	journaltitle = {Global Biogeochemical Cycles},
-	author = {Tank, Suzanne E. and Frey, Karen E. and Striegl, Robert G. and Raymond, Peter A. and Holmes, Robert M. and {McClelland}, James W. and Peterson, Bruce J.},
-	urldate = {2018-07-10},
-	date = {2012-12},
-	langid = {english},
-	file = {Tank et al. - 2012 - Landscape-level controls on dissolved carbon flux .pdf:C\:\\Users\\Brent Thorne\\Zotero\\storage\\22AQP5MM\\Tank et al. - 2012 - Landscape-level controls on dissolved carbon flux .pdf:application/pdf}
-}
-
-@article{tank_land--ocean_2012,
-	title = {A land-to-ocean perspective on the magnitude, source and implication of {DIC} flux from major Arctic rivers to the Arctic Ocean: {ARCTIC} {RIVER} {DIC}},
-	volume = {26},
-	issn = {08866236},
-	url = {http://doi.wiley.com/10.1029/2011GB004192},
-	doi = {10.1029/2011GB004192},
-	shorttitle = {A land-to-ocean perspective on the magnitude, source and implication of {DIC} flux from major Arctic rivers to the Arctic Ocean},
-	pages = {n/a--n/a},
-	number = {4},
-	journaltitle = {Global Biogeochemical Cycles},
-	author = {Tank, Suzanne E. and Raymond, Peter A. and Striegl, Robert G. and {McClelland}, James W. and Holmes, Robert M. and Fiske, Greg J. and Peterson, Bruce J.},
-	urldate = {2018-07-10},
-	date = {2012-12},
-	langid = {english},
-	file = {Tank et al. - 2012 - A land-to-ocean perspective on the magnitude, sour.pdf:C\:\\Users\\Brent Thorne\\Zotero\\storage\\JZ6UWCEK\\Tank et al. - 2012 - A land-to-ocean perspective on the magnitude, sour.pdf:application/pdf}
-}
-
-@article{olefeldt_permafrost_2014,
-	title = {Permafrost conditions in peatlands regulate magnitude, timing, and chemical composition of catchment dissolved organic carbon export},
-	volume = {20},
-	issn = {13541013},
-	url = {http://doi.wiley.com/10.1111/gcb.12607},
-	doi = {10.1111/gcb.12607},
-	abstract = {Permafrost thaw in peatlands has the potential to alter catchment export of dissolved organic carbon ({DOC}) and thus inﬂuence downstream aquatic C cycling. Subarctic peatlands are often mosaics of different peatland types, where permafrost conditions regulate the hydrological setting of each type. We show that hydrological setting is key to observed differences in magnitude, timing, and chemical composition of {DOC} export between permafrost and nonpermafrost peatland types, and that these differences inﬂuence the export of {DOC} of larger catchments even when peatlands are minor catchment components. In many aspects, {DOC} export from a studied peatland permafrost plateau was similar to that of a forested upland catchment. Similarities included low annual export (2–3 g C {mÀ}2) dominated by the snow melt period ({\textasciitilde}70\%), and how substantial {DOC} export following storms required wet antecedent conditions. Conversely, nonpermafrost fens had higher {DOC} export (7 g C {mÀ}2), resulting from sustained hydrological connectivity during summer. Chemical composition of catchment {DOC} export arose from the mixing of highly aromatic {DOC} from organic soils from permafrost plateau soil water and upland forest surface horizons with nonaromatic {DOC} from mineral soil groundwater, but was further modulated by fens. Increasing aromaticity from fen inﬂow to outlet was substantial and depended on both water residence time and water temperature. The role of fens as catchment biogeochemical hotspots was further emphasized by their capacity for sulfate retention. As a result of fen characteristics, a 4\% fen cover in a mixed catchment was responsible for 34\% higher {DOC} export, 50\% higher {DOC} concentrations and {\textasciitilde}10\% higher {DOC} aromaticity at the catchment outlet during summer compared to a nonpeatland upland catchment. Expansion of fens due to thaw thus has potential to inﬂuence landscape C cycling by increasing fen capacity to act as biogeochemical hotspots, amplifying aquatic C cycling, and increasing catchment {DOC} export.},
-	pages = {3122--3136},
-	number = {10},
-	journaltitle = {Global Change Biology},
-	author = {Olefeldt, David and Roulet, Nigel T.},
-	urldate = {2018-07-10},
-	date = {2014-10},
-	langid = {english},
-	file = {Olefeldt and Roulet - 2014 - Permafrost conditions in peatlands regulate magnit.pdf:C\:\\Users\\Brent Thorne\\Zotero\\storage\\AG4JVWK5\\Olefeldt and Roulet - 2014 - Permafrost conditions in peatlands regulate magnit.pdf:application/pdf}
-}
-
-@article{helbig_direct_2017,
-	title = {Direct and indirect climate change effects on carbon dioxide fluxes in a thawing boreal forest-wetland landscape},
-	volume = {23},
-	issn = {13541013},
-	url = {http://doi.wiley.com/10.1111/gcb.13638},
-	doi = {10.1111/gcb.13638},
-	abstract = {In the sporadic permafrost zone of northwestern Canada, boreal forest carbon dioxide ({CO}2) ﬂuxes will be altered directly by climate change through changing meteorological forcing and indirectly through changes in landscape functioning associated with thaw-induced collapse-scar bog (‘wetland’) expansion. However, their combined effect on landscape-scale net ecosystem {CO}2 exchange ({NEELAND}), resulting from changing gross primary productivity ({GPP}) and ecosystem respiration ({ER}), remains unknown. Here, we quantify indirect land cover change impacts on {NEELAND} and direct climate change impacts on modeled temperature- and light-limited {NEELAND} of a boreal forest–wetland landscape. Using nested eddy covariance ﬂux towers, we ﬁnd both {GPP} and {ER} to be larger at the landscape compared to the wetland level. However, annual {NEELAND} (À20 g C {mÀ}2) and wetland {NEE} (À24 g C {mÀ}2) were similar, suggesting negligible wetland expansion effects on {NEELAND}. In contrast, we ﬁnd non-negligible direct climate change impacts when modeling {NEELAND} using projected air temperature and incoming shortwave radiation. At the end of the 21st century, modeled {GPP} mainly increases in spring and fall due to reduced temperature limitation, but becomes more frequently light-limited in fall. In a warmer climate, {ER} increases year-round in the absence of moisture stress resulting in net {CO}2 uptake increases in the shoulder seasons and decreases during the summer. Annually, landscape net {CO}2 uptake is projected to decline by 25 Æ 14 g C {mÀ}2 for a moderate and 103 Æ 38 g C {mÀ}2 for a high warming scenario, potentially reversing recently observed positive net {CO}2 uptake trends across the boreal biome. Thus, even without moisture stress, net {CO}2 uptake of boreal forest–wetland landscapes may decline, and ultimately, these landscapes may turn into net {CO}2 sources under continued anthropogenic {CO}2 emissions. We conclude that {NEELAND} changes are more likely to be driven by direct climate change rather than by indirect land cover change impacts.},
-	pages = {3231--3248},
-	number = {8},
-	journaltitle = {Global Change Biology},
-	author = {Helbig, Manuel and Chasmer, Laura E. and Desai, Ankur R. and Kljun, Natascha and Quinton, William L. and Sonnentag, Oliver},
-	urldate = {2018-07-10},
-	date = {2017-08},
-	langid = {english},
-	file = {Helbig et al. - 2017 - Direct and indirect climate change effects on carb.pdf:C\:\\Users\\Brent Thorne\\Zotero\\storage\\8E5C5R6X\\Helbig et al. - 2017 - Direct and indirect climate change effects on carb.pdf:application/pdf}
-}
-
-@article{jantze_subsurface_2013,
-	title = {Subsurface release and transport of dissolved carbon in a discontinuous permafrost region},
-	volume = {17},
-	issn = {1607-7938},
-	url = {https://www.hydrol-earth-syst-sci.net/17/3827/2013/},
-	doi = {10.5194/hess-17-3827-2013},
-	abstract = {Subsurface hydrological ﬂow pathways and advection rates through the landscape affect the quantity and timing of hydrological transport of dissolved carbon. This study investigates hydrological carbon transport through the subsurface to streams and how it is affected by the distribution of subsurface hydrological pathways and travel times through the landscape. We develop a consistent mechanistic, pathway- and travel time-based modeling approach for release and transport of dissolved organic carbon ({DOC}) and dissolved inorganic carbon ({DIC}). The model implications are tested against observations in the subarctic Abiskojokken catchment in northernmost Sweden (68◦21 N, 18◦49 E) as a ﬁeld case example of a discontinuous permafrost region. The results show: (a) For {DOC}, both concentration and load are essentially ﬂow-independent because their dynamics are instead dominated by the annual renewal and depletion. Specifically, the ﬂow independence is the result of the small characteristic {DOC} respiration-dissolution time scale, in the range of 1 yr, relative to the average travel time of water through the subsurface to the stream. (b) For {DIC}, the load is highly ﬂow-dependent due to the large characteristic weatheringdissolution time, much larger than 1 yr, relative to the average subsurface water travel time to the stream. This rate relation keeps the {DIC} concentration essentially ﬂow-independent, and thereby less ﬂuctuating in time than the {DIC} load.},
-	pages = {3827--3839},
-	number = {10},
-	journaltitle = {Hydrology and Earth System Sciences},
-	author = {Jantze, E. J. and Lyon, S. W. and Destouni, G.},
-	urldate = {2018-07-10},
-	date = {2013-10-08},
-	langid = {english},
-	file = {Jantze et al. - 2013 - Subsurface release and transport of dissolved carb.pdf:C\:\\Users\\Brent Thorne\\Zotero\\storage\\M7BJ9KTX\\Jantze et al. - 2013 - Subsurface release and transport of dissolved carb.pdf:application/pdf}
-}
-
-@article{jones_rapid_2017,
-	title = {Rapid carbon loss and slow recovery following permafrost thaw in boreal peatlands},
-	volume = {23},
-	issn = {13541013},
-	url = {http://doi.wiley.com/10.1111/gcb.13403},
-	doi = {10.1111/gcb.13403},
-	abstract = {Permafrost peatlands store one-third of the total carbon (C) in the atmosphere and are increasingly vulnerable to thaw as high-latitude temperatures warm. Large uncertainties remain about C dynamics following permafrost thaw in boreal peatlands. We used a chronosequence approach to measure C stocks in forested permafrost plateaus (forest) and thawed permafrost bogs, ranging in thaw age from young ({\textless}10 years) to old ({\textgreater}100 years) from two interior Alaska chronosequences. Permafrost originally aggraded simultaneously with peat accumulation (syngenetic permafrost) at both sites. We found that upon thaw, C loss of the forest peat C is equivalent to {\textasciitilde}30\% of the initial forest C stock and is directly proportional to the prethaw C stocks. Our model results indicate that permafrost thaw turned these peatlands into net C sources to the atmosphere for a decade following thaw, after which post-thaw bog peat accumulation returned sites to net C sinks. It can take multiple centuries to millennia for a site to recover its prethaw C stocks; the amount of time needed for them to regain their prethaw C stocks is governed by the amount of C that accumulated prior to thaw. Consequently, these ﬁndings show that older peatlands will take longer to recover prethaw C stocks, whereas younger peatlands will exceed prethaw stocks in a matter of centuries. We conclude that the loss of sporadic and discontinuous permafrost by 2100 could result in a loss of up to 24 Pg of deep C from permafrost peatlands.},
-	pages = {1109--1127},
-	number = {3},
-	journaltitle = {Global Change Biology},
-	author = {Jones, Miriam C. and Harden, Jennifer and O'Donnell, Jonathan and Manies, Kristen and Jorgenson, Torre and Treat, Claire and Ewing, Stephanie},
-	urldate = {2018-07-10},
-	date = {2017-03},
-	langid = {english},
-	file = {Jones et al. - 2017 - Rapid carbon loss and slow recovery following perm.pdf:C\:\\Users\\Brent Thorne\\Zotero\\storage\\G5LIA6V4\\Jones et al. - 2017 - Rapid carbon loss and slow recovery following perm.pdf:application/pdf}
-}
-
-@article{lessels_coupled_2015,
-	title = {A coupled hydrology-biogeochemistry model to simulate dissolved organic carbon exports from a permafrost-influenced catchment: A {COUPLED} {HYDROLOGY}-{BIOGEOCHEMISTRY} {MODEL}},
-	volume = {29},
-	issn = {08856087},
-	url = {http://doi.wiley.com/10.1002/hyp.10566},
-	doi = {10.1002/hyp.10566},
-	shorttitle = {A coupled hydrology-biogeochemistry model to simulate dissolved organic carbon exports from a permafrost-influenced catchment},
-	abstract = {We outline the development of a simple, coupled hydrology–biogeochemistry model for simulating stream discharge and dissolved organic carbon ({DOC}) dynamics in data sparse, permafrost-inﬂuenced catchments with large stores of soil organic carbon. The model incorporates the inﬂuence of active layer dynamics and slope aspect on hydrological ﬂowpaths and resulting {DOC} mobilization. Calibration and evaluation of the model was undertaken using observations from Granger Basin within the Wolf Creek research basin, Yukon, northern Canada. Results show that the model was able to capture the dominant hydrological response and {DOC} dynamics of the catchment reasonably well. Simulated {DOC} was highly correlated with observed {DOC} (r2 = 0.65) for the study period. During the snowmelt period, the model adequately captured the observed dynamics, with simulations generally reﬂecting the timing and magnitude of the observed {DOC} and stream discharge. The model was less successful over the later summer period although this partly reﬂected a lack of {DOC} observations for calibration. The developed model offers a valuable framework for investigating the interactions between hydrological and {DOC} processes in these highly dynamic systems, where data acquisition is often very difﬁcult. © 2015 The Authors Hydrological Processes Published by John Wiley \& Sons, Ltd.},
-	pages = {5383--5396},
-	number = {26},
-	journaltitle = {Hydrological Processes},
-	author = {Lessels, Jason S. and Tetzlaff, Doerthe and Carey, Sean K and Smith, Pete and Soulsby, Chris},
-	urldate = {2018-07-10},
-	date = {2015-12-30},
-	langid = {english},
-	file = {Lessels et al. - 2015 - A coupled hydrology-biogeochemistry model to simul.pdf:C\:\\Users\\Brent Thorne\\Zotero\\storage\\SFAG89YM\\Lessels et al. - 2015 - A coupled hydrology-biogeochemistry model to simul.pdf:application/pdf}
-}
-
-@article{tank_multiple_2011,
-	title = {Multiple tracers demonstrate distinct sources of dissolved organic matter to lakes of the Mackenzie Delta, western Canadian Arctic},
-	volume = {56},
-	issn = {00243590},
-	url = {http://doi.wiley.com/10.4319/lo.2011.56.4.1297},
-	doi = {10.4319/lo.2011.56.4.1297},
-	abstract = {Lakes of the Mackenzie Delta occur across a gradient that contains three clear end members: those that remain connected to river-water channels throughout the summer; those that receive only brief inputs of river water during an annual spring flood but contain dense macrophyte stands; and those that experience significant permafrost thaw along their margins. We measured dissolved organic carbon ({DOC}) concentration, dissolved organic matter ({DOM}) absorption and fluorescence, and stable isotopes of {DOM}, {DOM} precursor materials, and bacteria to elucidate the importance of river water, macrophytes, and thermokarst as {DOM} sources to Mackenzie Delta lakes. Despite standing stocks of macrophyte C that are sevenfold to 12-fold greater than those of total {DOC}, stable isotopes indicated that autochthonous sources contributed less than 15\% to overall {DOM} in macrophyte-rich lakes. Instead, fluorescence and absorption indicated that the moderate summertime increase in {DOC} concentration in macrophyte-rich lakes was the result of infrequent flushing, while bacterial d13C indicated rapid bacterial removal of autochthonous {DOC} from the water column. In thermokarst lakes, summertime increases in {DOC} concentration were substantial, and stable isotopes indicated that much of this increase came from C released as a result of thermokarst-related processes. Our results indicate that these distinct sources of {DOM} to neighboring arctic Delta lakes may drive between-lake differences in C cycling and energy flow. Rapidly assimilated macrophyte {DOM} should be an important contributor to microbial food webs in our study lakes. In contrast, the accumulation of thermokarst-origin {DOM} allows for a significant role in physico-chemistry but indicates a lesser contribution of this {DOM} to higher trophic levels.},
-	pages = {1297--1309},
-	number = {4},
-	journaltitle = {Limnology and Oceanography},
-	author = {Tank, Suzanne E. and Lesack, Lance F. W. and Gareis, Jolie A. L. and Osburn, Christopher L. and Hesslein, Ray H.},
-	urldate = {2018-07-10},
-	date = {2011-07},
-	langid = {english},
-	file = {Tank et al. - 2011 - Multiple tracers demonstrate distinct sources of d.pdf:C\:\\Users\\Brent Thorne\\Zotero\\storage\\JBYRCSYS\\Tank et al. - 2011 - Multiple tracers demonstrate distinct sources of d.pdf:application/pdf}
-}
-
-@article{voigt_warming_2017,
-	title = {Warming of subarctic tundra increases emissions of all three important greenhouse gases - carbon dioxide, methane, and nitrous oxide},
-	volume = {23},
-	issn = {13541013},
-	url = {http://doi.wiley.com/10.1111/gcb.13563},
-	doi = {10.1111/gcb.13563},
-	abstract = {Rapidly rising temperatures in the Arctic might cause a greater release of greenhouse gases ({GHGs}) to the atmosphere. To study the effect of warming on {GHG} dynamics, we deployed open-top chambers in a subarctic tundra site in Northeast European Russia. We determined carbon dioxide ({CO}2), methane ({CH}4), and nitrous oxide (N2O) ﬂuxes as well as the concentration of those gases, inorganic nitrogen (N) and dissolved organic carbon ({DOC}) along the soil proﬁle. Studied tundra surfaces ranged from mineral to organic soils and from vegetated to unvegetated areas. As a result of air warming, the seasonal {GHG} budget of the vegetated tundra surfaces shifted from a {GHG} sink of À300 to À198 g {CO}2–eq {mÀ}2 to a source of 105 to 144 g {CO}2–eq {mÀ}2. At bare peat surfaces, we observed increased release of all three {GHGs}. While the positive warming response was dominated by {CO}2, we provide here the ﬁrst in situ evidence of increasing N2O emissions from tundra soils with warming. Warming promoted N2O release not only from bare peat, previously identiﬁed as a strong N2O source, but also from the abundant, vegetated peat surfaces that do not emit N2O under present climate. At these surfaces, elevated temperatures had an adverse effect on plant growth, resulting in lower plant N uptake and, consequently, better N availability for soil microbes. Although the warming was limited to the soil surface and did not alter thaw depth, it increased concentrations of {DOC}, {CO}2, and {CH}4 in the soil down to the permafrost table. This can be attributed to downward {DOC} leaching, fueling microbial activity at depth. Taken together, our results emphasize the tight linkages between plant and soil processes, and different soil layers, which need to be taken into account when predicting the climate change feedback of the Arctic.},
-	pages = {3121--3138},
-	number = {8},
-	journaltitle = {Global Change Biology},
-	author = {Voigt, Carolina and Lamprecht, Richard E. and Marushchak, Maija E. and Lind, Saara E. and Novakovskiy, Alexander and Aurela, Mika and Martikainen, Pertti J. and Biasi, Christina},
-	urldate = {2018-07-10},
-	date = {2017-08},
-	langid = {english},
-	file = {Voigt et al. - 2017 - Warming of subarctic tundra increases emissions of.pdf:C\:\\Users\\Brent Thorne\\Zotero\\storage\\HP5JPI38\\Voigt et al. - 2017 - Warming of subarctic tundra increases emissions of.pdf:application/pdf}
-}
-
-@article{yuan_microbial_2018,
-	title = {Microbial functional diversity covaries with permafrost thaw-induced environmental heterogeneity in tundra soil},
-	volume = {24},
-	issn = {13541013},
-	url = {http://doi.wiley.com/10.1111/gcb.13820},
-	doi = {10.1111/gcb.13820},
-	pages = {297--307},
-	number = {1},
-	journaltitle = {Global Change Biology},
-	author = {Yuan, Mengting M. and Zhang, Jin and Xue, Kai and Wu, Liyou and Deng, Ye and Deng, Jie and Hale, Lauren and Zhou, Xishu and He, Zhili and Yang, Yunfeng and Van Nostrand, Joy D. and Schuur, Edward A. G. and Konstantinidis, Konstantinos T. and Penton, Christopher R. and Cole, James R. and Tiedje, James M. and Luo, Yiqi and Zhou, Jizhong},
-	urldate = {2018-07-10},
-	date = {2018-01},
-	langid = {english},
-	file = {Yuan et al. - 2018 - Microbial functional diversity covaries with perma.pdf:C\:\\Users\\Brent Thorne\\Zotero\\storage\\SNW3HGEE\\Yuan et al. - 2018 - Microbial functional diversity covaries with perma.pdf:application/pdf}
-}
-
-@article{grewer_redistribution_2016,
-	title = {Redistribution of soil organic matter by permafrost disturbance in the Canadian High Arctic},
-	volume = {128},
-	issn = {0168-2563, 1573-515X},
-	url = {http://link.springer.com/10.1007/s10533-016-0215-7},
-	doi = {10.1007/s10533-016-0215-7},
-	pages = {397--415},
-	number = {3},
-	journaltitle = {Biogeochemistry},
-	author = {Grewer, David M. and Lafrenière, Melissa J. and Lamoureux, Scott F. and Simpson, Myrna J.},
-	urldate = {2018-07-10},
-	date = {2016-07},
-	langid = {english},
-	file = {Grewer et al. - 2016 - Redistribution of soil organic matter by permafros.pdf:C\:\\Users\\Brent Thorne\\Zotero\\storage\\9AVWLWEN\\Grewer et al. - 2016 - Redistribution of soil organic matter by permafros.pdf:application/pdf}
-}
-
-@article{birkel_integrating_2014,
-	title = {Integrating parsimonious models of hydrological connectivity and soil biogeochemistry to simulate stream {DOC} dynamics: {PARSIMONIOUS} {COUPLED} {DOC} {MODEL}},
-	volume = {119},
-	issn = {21698953},
-	url = {http://doi.wiley.com/10.1002/2013JG002551},
-	doi = {10.1002/2013JG002551},
-	shorttitle = {Integrating parsimonious models of hydrological connectivity and soil biogeochemistry to simulate stream {DOC} dynamics},
-	abstract = {To improve understanding and prediction of dissolved organic carbon ({DOC}) sources and ﬂuxes in northern peat-dominated catchments, we present the development and application of a parsimonious tracer-aided rainfall-runoff model coupled with a biogeochemistry subroutine able to concurrently simulate streamﬂow and {DOC} dynamics. The modeling approach which included quantitative assessment of associated uncertainties was conditioned by geochemical tracers which discriminate dominant water sources. Integration of {DOC} was predicated on statistical time series models which identiﬁed air temperature and streamﬂow as the key proxies that capture {DOC} supply and transport processes in two upland catchments in Scotland, {UK}. Conceptualizing the nonlinear partitioning of quick near-surface and slower groundwater runoff sources in combination with a {DOC} mass balance resulted in a coupled, low-parameter mechanistic model. Model tests showed mostly sensitive parameters and reasonable simulation results with seasonally controlled {DOC} supply and event-based {DOC} transport. Transport is facilitated even for smaller events by overland ﬂow from saturated histosols connected to the stream network. However, during prolonged dry periods, near-surface runoff “switches off” and stream {DOC} is dominated by low concentration groundwaters. Furthermore, the model was able to explain subtle differences in {DOC} dynamics between the two catchments mainly reﬂecting the distribution of saturated soils and available storage. We conclude that tracers and statistical time series models can successfully guide the development of parsimonious yet structurally consistent water quality models. Parsimonious models provide tools for estimating {DOC} dynamics and loads with reduced uncertainty and potentially greater transferability.},
-	pages = {1030--1047},
-	number = {5},
-	journaltitle = {Journal of Geophysical Research: Biogeosciences},
-	author = {Birkel, Christian and Soulsby, Chris and Tetzlaff, Doerthe},
-	urldate = {2018-07-10},
-	date = {2014-05},
-	langid = {english},
-	file = {Birkel et al. - 2014 - Integrating parsimonious models of hydrological co.pdf:C\:\\Users\\Brent Thorne\\Zotero\\storage\\IHILJUWI\\Birkel et al. - 2014 - Integrating parsimonious models of hydrological co.pdf:application/pdf}
-}
-
-@article{grosse_changing_2016,
-	title = {Changing permafrost in a warming world and feedbacks to the Earth system},
-	volume = {11},
-	issn = {1748-9326},
-	url = {http://stacks.iop.org/1748-9326/11/i=4/a=040201?key=crossref.721a63a7398b84c27da7f27834004831},
-	doi = {10.1088/1748-9326/11/4/040201},
-	pages = {040201},
-	number = {4},
-	journaltitle = {Environmental Research Letters},
-	author = {Grosse, Guido and Goetz, Scott and {McGuire}, A Dave and Romanovsky, Vladimir E and Schuur, Edward A G},
-	urldate = {2018-07-10},
-	date = {2016-04-01},
-	langid = {english},
-	file = {Grosse et al. - 2016 - Changing permafrost in a warming world and feedbac.pdf:C\:\\Users\\Brent Thorne\\Zotero\\storage\\DR29MC8H\\Grosse et al. - 2016 - Changing permafrost in a warming world and feedbac.pdf:application/pdf}
-}
-
-@article{meng_focus_2016,
-	title = {Focus on the impact of climate change on wetland ecosystems and carbon dynamics},
-	volume = {11},
-	issn = {1748-9326},
-	url = {http://stacks.iop.org/1748-9326/11/i=10/a=100201?key=crossref.ada7f1df1dfcbdace4ca4278816eceb2},
-	doi = {10.1088/1748-9326/11/10/100201},
-	abstract = {The renewed growth in atmospheric methane ({CH}4) since 2007 after a decade of stabilization has drawn much attention to its causes and future trends. Wetlands are the single largest source of atmospheric {CH}4. Understanding wetland ecosystems and carbon dynamics is critical to the estimation of global {CH}4 and carbon budgets. After approximately 7 years of {CH}4 related research following the renewed growth in atmospheric {CH}4, Environmental Research Letters launched a special issue of research letters on wetland ecosystems and carbon dynamics in 2014. This special issue highlights recent developments in terrestrial ecosystem models and ﬁeld measurements of carbon ﬂuxes across different types of wetland ecosystems. The 14 research letters emphasize the importance of wetland ecosystems in the global {CO}2 and {CH}4 budget.},
-	pages = {100201},
-	number = {10},
-	journaltitle = {Environmental Research Letters},
-	author = {Meng, Lei and Roulet, Nigel and Zhuang, Qianlai and Christensen, Torben R and Frolking, Steve},
-	urldate = {2018-07-10},
-	date = {2016-10-01},
-	langid = {english},
-	file = {Meng et al. - 2016 - Focus on the impact of climate change on wetland e.pdf:C\:\\Users\\Brent Thorne\\Zotero\\storage\\MZ9EJSBG\\Meng et al. - 2016 - Focus on the impact of climate change on wetland e.pdf:application/pdf}
-}
-
-@article{mann_pan-arctic_2016,
-	title = {Pan-Arctic Trends in Terrestrial Dissolved Organic Matter from Optical Measurements},
-	volume = {4},
-	issn = {2296-6463},
-	url = {http://journal.frontiersin.org/Article/10.3389/feart.2016.00025/abstract},
-	doi = {10.3389/feart.2016.00025},
-	abstract = {Climate change is causing extensive warming across Arctic regions resulting in permafrost degradation, alterations to regional hydrology and shifting amounts and composition of dissolved organic matter ({DOM}) transported by streams and rivers. Here, we characterize the {DOM} composition and optical properties of the six largest Arctic rivers draining into the Arctic Ocean to examine the ability of optical measurements to provide meaningful insights into terrigenous carbon export patterns and biogeochemical cycling. The chemical composition of aquatic {DOM} varied with season, spring months were typiﬁed by highest lignin phenol and dissolved organic carbon ({DOC}) concentrations with greater hydrophobic acid content, and lower proportions of hydrophilic compounds, relative to summer and winter months. Chromophoric {DOM} ({CDOM}) spectral slope (S275–295) tracked seasonal shifts in {DOM} composition across river basins. Fluorescence and parallel factor analysis identiﬁed seven components across the six Arctic rivers. The ratios of “terrestrial humic-like” vs. “marine humic-like” ﬂuorescent components co-varied with lignin monomer ratios over summer and winter months, suggesting ﬂuorescence may provide information on the age and degradation state of riverine {DOM}. {CDOM} absorbance (a350) proved a sensitive proxy for lignin phenol concentrations across all six river basins and over the hydrograph, enabling for the ﬁrst time the development of a single pan-arctic relationship between a350 and terrigenous {DOC} (R2 = 0.93). Combining this lignin proxy with high-resolution monitoring of a350, pan-arctic estimates of annual lignin ﬂux were calculated to range from 156 to 185 Gg, resulting in shorter and more constrained estimates of terrigenous {DOM} residence times in the Arctic Ocean (spanning 7 months to 2½ years). Furthermore, multiple linear regression models incorporating both absorbance and ﬂuorescence variables proved capable of explaining much of the variability in lignin composition across rivers and seasons. Our ﬁndings suggest that synoptic, high-resolution optical measurements can provide improved understanding of northern high-latitude organic matter cycling and ﬂux, and prove an important technique for capturing future climate-driven changes.},
-	journaltitle = {Frontiers in Earth Science},
-	author = {Mann, Paul J. and Spencer, Robert G. M. and Hernes, Peter J. and Six, Johan and Aiken, George R. and Tank, Suzanne E. and {McClelland}, James W. and Butler, Kenna D. and Dyda, Rachael Y. and Holmes, Robert M.},
-	urldate = {2018-07-10},
-	date = {2016-03-17},
-	langid = {english},
-	file = {Mann et al. - 2016 - Pan-Arctic Trends in Terrestrial Dissolved Organic.pdf:C\:\\Users\\Brent Thorne\\Zotero\\storage\\EDA6WJEQ\\Mann et al. - 2016 - Pan-Arctic Trends in Terrestrial Dissolved Organic.pdf:application/pdf}
-}
-
-@article{striegl_carbon_2012,
-	title = {Carbon dioxide and methane emissions from the Yukon River system: {YUKON} {RIVER} C {GAS} {EMISSIONS}},
-	volume = {26},
-	issn = {08866236},
-	url = {http://doi.wiley.com/10.1029/2012GB004306},
-	doi = {10.1029/2012GB004306},
-	shorttitle = {Carbon dioxide and methane emissions from the Yukon River system},
-	pages = {n/a--n/a},
-	number = {4},
-	journaltitle = {Global Biogeochemical Cycles},
-	author = {Striegl, Robert G. and Dornblaser, M. M. and {McDonald}, C. P. and Rover, J. R. and Stets, E. G.},
-	urldate = {2018-07-10},
-	date = {2012-12},
-	langid = {english},
-	file = {Striegl et al. - 2012 - Carbon dioxide and methane emissions from the Yuko.pdf:C\:\\Users\\Brent Thorne\\Zotero\\storage\\4VJK44C5\\Striegl et al. - 2012 - Carbon dioxide and methane emissions from the Yuko.pdf:application/pdf}
-}
-
-@article{abbott_biomass_2016,
-	title = {Biomass offsets little or none of permafrost carbon release from soils, streams, and wildfire: an expert assessment},
-	volume = {11},
-	issn = {1748-9326},
-	url = {http://stacks.iop.org/1748-9326/11/i=3/a=034014?key=crossref.66df61179f78005f9999c2637a68bf9e},
-	doi = {10.1088/1748-9326/11/3/034014},
-	shorttitle = {Biomass offsets little or none of permafrost carbon release from soils, streams, and wildfire},
-	abstract = {As the permafrost region warms, its large organic carbon pool will be increasingly vulnerable to decomposition, combustion, and hydrologic export. Models predict that some portion of this release will be offset by increased production of Arctic and boreal biomass; however, the lack of robust estimates of net carbon balance increases the risk of further overshooting international emissions targets. Precise empirical or model-based assessments of the critical factors driving carbon balance are unlikely in the near future, so to address this gap, we present estimates from 98 permafrost-region experts of the response of biomass, wildﬁre, and hydrologic carbon ﬂux to climate change. Results suggest that contrary to model projections, total permafrost-region biomass could decrease due to water stress and disturbance, factors that are not adequately incorporated in current models. Assessments indicate that end-of-the-century organic carbon release from Arctic rivers and collapsing coastlines could increase by 75\% while carbon loss via burning could increase four-fold. Experts identiﬁed water balance, shifts in vegetation community, and permafrost degradation as the key sources of uncertainty in predicting future system response. In combination with previous ﬁndings, results suggest the permafrost region will become a carbon source to the atmosphere by 2100 regardless of warming scenario but that 65\%–85\% of permafrost carbon release can still be avoided if human emissions are actively reduced.},
-	pages = {034014},
-	number = {3},
-	journaltitle = {Environmental Research Letters},
-	author = {Abbott, Benjamin W and Jones, Jeremy B and Schuur, Edward A G and Chapin III, F Stuart and Bowden, William B and Bret-Harte, M Syndonia and Epstein, Howard E and Flannigan, Michael D and Harms, Tamara K and Hollingsworth, Teresa N and Mack, Michelle C and McGuire, A David and Natali, Susan M and Rocha, Adrian V and Tank, Suzanne E and Turetsky, Merritt R and Vonk, Jorien E and Wickland, Kimberly P and Aiken, George R and Alexander, Heather D and Amon, Rainer M W and Benscoter, Brian W and Bergeron, Yves and Bishop, Kevin and Blarquez, Olivier and {Ben Bond-Lamberty} and Breen, Amy L and Buffam, Ishi and Cai, Yihua and Carcaillet, Christopher and Carey, Sean K and Chen, Jing M and Chen, Han Y H and Christensen, Torben R and Cooper, Lee W and Cornelissen, J Hans C and de Groot, William J and DeLuca, Thomas H and Dorrepaal, Ellen and Fetcher, Ned and Finlay, Jacques C and Forbes, Bruce C and French, Nancy H F and Gauthier, Sylvie and Girardin, Martin P and Goetz, Scott J and Goldammer, Johann G and Gough, Laura and Grogan, Paul and Guo, Laodong and Higuera, Philip E and Hinzman, Larry and Hu, Feng Sheng and Hugelius, Gustaf and Jafarov, Elchin E and Jandt, Randi and Johnstone, Jill F and {Jan Karlsson} and Kasischke, Eric S and Kattner, Gerhard and Kelly, Ryan and Keuper, Frida and Kling, George W and Kortelainen, Pirkko and Kouki, Jari and Kuhry, Peter and Laudon, Hjalmar and Laurion, Isabelle and Macdonald, Robie W and Mann, Paul J and Martikainen, Pertti J and McClelland, James W and Molau, Ulf and Oberbauer, Steven F and Olefeldt, David and Paré, David and Parisien, Marc-André and Payette, Serge and Peng, Changhui and Pokrovsky, Oleg S and Rastetter, Edward B and Raymond, Peter A and Raynolds, Martha K and Rein, Guillermo and Reynolds, James F and Robards, Martin and Rogers, Brendan M and Schädel, Christina and Schaefer, Kevin and Schmidt, Inger K and Shvidenko, Anatoly and Sky, Jasper and Spencer, Robert G M and Starr, Gregory and Striegl, Robert G and Teisserenc, Roman and Tranvik, Lars J and Virtanen, Tarmo and Welker, Jeffrey M and Zimov, Sergei},
-	urldate = {2018-07-10},
-	date = {2016-03-01},
-	langid = {english},
-	file = {Abbott et al. - 2016 - Biomass offsets little or none of permafrost carbo.pdf:C\:\\Users\\Brent Thorne\\Zotero\\storage\\ZIVXAECM\\Abbott et al. - 2016 - Biomass offsets little or none of permafrost carbo.pdf:application/pdf;Abbott_SI.pdf:C\:\\Users\\Brent Thorne\\Zotero\\storage\\BXSPRXVM\\Abbott_SI.pdf:application/pdf}
-}
-
-@article{tank_multi-decadal_2016,
-	title = {Multi-decadal increases in dissolved organic carbon and alkalinity flux from the Mackenzie drainage basin to the Arctic Ocean},
-	volume = {11},
-	issn = {1748-9326},
-	url = {http://stacks.iop.org/1748-9326/11/i=5/a=054015?key=crossref.7d1c7cfed6e5144abdb52d2f625a9970},
-	doi = {10.1088/1748-9326/11/5/054015},
-	pages = {054015},
-	number = {5},
-	journaltitle = {Environmental Research Letters},
-	author = {Tank, Suzanne E and Striegl, Robert G and {McClelland}, James W and Kokelj, Steven V},
-	urldate = {2018-07-10},
-	date = {2016-05-01},
-	langid = {english},
-	file = {Tank et al. - 2016 - Multi-decadal increases in dissolved organic carbo.pdf:C\:\\Users\\Brent Thorne\\Zotero\\storage\\J5V6VHLI\\Tank et al. - 2016 - Multi-decadal increases in dissolved organic carbo.pdf:application/pdf}
-}
-
-@article{baofeng_digital_2016,
-	title = {Digital surface model applied to unmanned aerial vehicle based photogrammetry to assess potential biotic or abiotic effects on grapevine canopies},
-	volume = {9},
-	abstract = {Accurate data acquisition and analysis to obtain crop canopy information are critical steps to understand plant growth dynamics and to assess the potential impacts of biotic or abiotic stresses on plant development. A versatile and easy to use monitoring system will allow researchers and growers to improve the follow-up management strategies within farms once potential problems have been detected. This study reviewed existing remote sensing platforms and relevant information applied to crops and specifically grapevines to equip a simple Unmanned Aerial Vehicle ({UAV}) using a visible high definition {RGB} camera. The objective of the proposed Unmanned Aerial System ({UAS}) was to implement a Digital Surface Model ({DSM}) in order to obtain accurate information about the affected or missing grapevines that can be attributed to potential biotic or abiotic stress effects. The analysis process started with a three-dimensional (3D) reconstruction from the {RGB} images collected from grapevines using the {UAS} and the Structure from Motion ({SfM}) technique to obtain the {DSM} applied on a per-plant basis. Then, the {DSM} was expressed as greyscale images according to the halftone technique to finally extract the information of affected and missing grapevines using computer vision algorithms based on canopy cover measurement and classification. To validate the automated method proposed, each grapevine row was visually inspected within the study area. The inspection was then compared to the digital assessment using the proposed {UAS} in order to validate calculations of affected and missing grapevines for the whole studied vineyard. Results showed that the percentage of affected and missing grapevines was 9.5\% and 7.3\%, respectively from the area studied. Therefore, for this specific study, the abiotic stress that affected the experimental vineyard (frost) impacted a total of 16.8 \% of plants. This study provided a new method for automatically surveying affected or missing grapevines in the field and an evaluation tool for plant growth conditions, which can be implemented for other uses such as canopy management, irrigation scheduling and other precision agricultural applications.},
-	pages = {13},
-	journaltitle = {Biol Eng},
-	author = {Baofeng, Su and Jinru, Xue and Chunyu, Xie and Yulin, Fang and Yuyang, Song and Fuentes, Sigfredo},
-	date = {2016-11-16},
-	langid = {english},
-	file = {Baofeng et al. - Digital surface model applied to unmanned aerial v.pdf:C\:\\Users\\Brent Thorne\\Zotero\\storage\\25SC6CWE\\Baofeng et al. - Digital surface model applied to unmanned aerial v.pdf:application/pdf}
-}
-
-@article{gennaro_unmanned_2016,
-	title = {Unmanned Aerial Vehicle ({UAV})-based remote sensing to monitor grapevine leaf stripe disease within a vineyard affected by esca complex},
-	issn = {00319465},
-	url = {http://www.fupress.net/index.php/pm/article/view/18312},
-	doi = {10.14601/Phytopathol_Mediterr-18312},
-	abstract = {Foliar symptoms of grapevine leaf stripe disease ({GLSD}, a disease within the esca complex) are linked to drastic alteration of photosynthetic function and activation of defense responses in affected grapevines several days before the appearance of the first visible symptoms on leaves. The present study suggests a methodology to investigate the relationships between high-resolution multispectral images (0.05 m/pixel) acquired using an Unmanned Aerial Vehicle ({UAV}), and {GLSD} foliar symptoms monitored by ground surveys. This approach showed high correlation between Normalized Differential Vegetation Index ({NDVI}) acquired by the {UAV} and {GLSD} symptoms, and discrimination between symptomatic from asymptomatic plants. High-resolution multispectral images were acquired during June and July of 2012 and 2013, in an experimental vineyard heavily affected by {GLSD}, located in Tuscany (Italy), where vines had been surveyed and mapped since 2003. Each vine was located with a global positioning system, and classified for appearance of foliar symptoms and disease severity at weekly intervals from the beginning of each season. Remote sensing and ground observation data were analyzed to promptly identify the early stages of disease, even before visual detection. This work suggests an innovative methodology for quantitative and qualitative analysis of spatial distribution of symptomatic plants. The system may also be used for exploring the physiological bases of {GLSD}, and predicting the onset of this disease.},
-	number = {2},
-	journaltitle = {Phytopathologia Mediterranea},
-	author = {{GENNARO}, Salvatore F. {DI} and {BATTISTON}, Enrico and {MARCO}, Stefano {DI} and {FACINI}, Osvaldo and {MATESE}, Alessandro and {NOCENTINI}, Marco and {PALLIOTTI}, Alberto and {MUGNAI}, Laura},
-	urldate = {2018-07-04},
-	date = {2016-07-29},
-	langid = {english},
-	file = {GENNARO et al. - 2016 - Unmanned Aerial Vehicle (UAV)-based remote sensing.pdf:C\:\\Users\\Brent Thorne\\Zotero\\storage\\Q38A2UPX\\GENNARO et al. - 2016 - Unmanned Aerial Vehicle (UAV)-based remote sensing.pdf:application/pdf}
-}
-
-@article{arno_review._2009,
-	title = {Review. Precision viticulture. Research topics, challenges and opportunities in site-specific vineyard management},
-	volume = {7},
-	issn = {2171-9292, 1695-971X},
-	url = {http://revistas.inia.es/index.php/sjar/article/view/1092},
-	doi = {10.5424/sjar/2009074-1092},
-	abstract = {Precision Viticulture ({PV}) is a concept that is beginning to have an impact on the wine-growing sector. Its practical implementation is dependant on various technological developments: crop sensors and yield monitors, local and remote sensors, Global Positioning Systems ({GPS}), {VRA} (Variable-Rate Application) equipment and machinery, Geographic Information Systems ({GIS}) and systems for data analysis and interpretation. This paper reviews a number of research lines related to {PV}. These areas of research have focused on four very specific fields: 1) quantification and evaluation of within-field variability, 2) delineation of zones of differential treatment at parcel level, based on the analysis and interpretation of this variability, 3) development of Variable-Rate Technologies ({VRT}) and, finally, 4) evaluation of the opportunities for site-specific vineyard management. Research in these fields should allow winegrowers and enologists to know and understand why yield variability exists within the same parcel, what the causes of this variability are, how the yield and its quality are interrelated and, if spatial variability exists, whether site-specific vineyard management is justifiable on a technical and economic basis.},
-	pages = {779},
-	number = {4},
-	journaltitle = {Spanish Journal of Agricultural Research},
-	author = {Arnó, J. and Martínez Casasnovas, J.A. and Ribes Dasi, M. and Rosell, J.R.},
-	urldate = {2018-07-04},
-	date = {2009-12-01},
-	langid = {english},
-	file = {Arnó et al. - 2009 - Review. Precision viticulture. Research topics, ch.pdf:C\:\\Users\\Brent Thorne\\Zotero\\storage\\MYKWTYKV\\Arnó et al. - 2009 - Review. Precision viticulture. Research topics, ch.pdf:application/pdf}
-}
-
-@article{bramley_understanding_2005,
-	title = {Understanding variability in winegrape production systems 2. Within vineyard variation in quality over several vintages},
-	volume = {11},
-	issn = {1322-7130, 1755-0238},
-	url = {http://doi.wiley.com/10.1111/j.1755-0238.2005.tb00277.x},
-	doi = {10.1111/j.1755-0238.2005.tb00277.x},
-	abstract = {Spatial variability in various indices of winegrape quality was studied over several vintages in blocks planted to Cabernet Sauvignon and Ruby Cabernet in the Coonawarra (1999–2002) and Sunraysia (2000–2002) regions of Australia. At both sites, inter-annual variation was marked whilst intra-annual variation was much greater for some indices (e.g. concentration of total phenolics) than others (e.g. Baumé). The magnitude of intra-annual variation was readily identiﬁed in terms of the ‘spread’, deﬁned as the difference between the maximum and minimum values, expressed as a \% of the median value. Typical values of the spread were 20\% for Baumé, but could be as high as 117\% for phenolics, and better indicated the extent of variation facing the winemaker than the coefﬁcient of variation ({CV}; typically 3\% for Baumé and 14\% for phenolics). For all attributes, variation in any given year showed marked spatial structure, with the patterns of variation being broadly consistent for each attribute in each year of the study, and with many attributes following similar patterns. The results therefore strongly support the idea of zonal vineyard management. However, fruit quality zone identification is dependent on a large sampling effort. Therefore, given the current availability of yield monitors, the ﬁnding that between-zone differences in quality indices were generally signiﬁcant (P {\textless} 0.05) for zones identiﬁed on the basis of yield alone, and, in the absence of an on-the-go sensing capability, it is suggested that zonal management should proceed on the basis of zones of characteristic yield productivity. Based on the present work, it is suggested that development of an on-the-go fruit quality sensing technology would enable the wine industry to maximise its opportunity to gain benefit from differential vineyard management such as selective harvesting. Indeed, the results of this work suggest that in the absence of zonal management, preferably supported by on-the-go quality sensing, winemaker demands for delivery of uniform parcels of fruit are unlikely to be satisﬁed.},
-	pages = {33--42},
-	number = {1},
-	journaltitle = {Australian Journal of Grape and Wine Research},
-	author = {Bramley, R.G.V.},
-	urldate = {2018-07-04},
-	date = {2005-04},
-	langid = {english},
-	file = {Bramley - 2005 - Understanding variability in winegrape production .pdf:C\:\\Users\\Brent Thorne\\Zotero\\storage\\SMNS5YAL\\Bramley - 2005 - Understanding variability in winegrape production .pdf:application/pdf}
-}
-
-@article{de_castro_3-d_2018,
-	title = {3-D Characterization of Vineyards Using a Novel {UAV} Imagery-Based {OBIA} Procedure for Precision Viticulture Applications},
-	volume = {10},
-	issn = {2072-4292},
-	url = {http://www.mdpi.com/2072-4292/10/4/584},
-	doi = {10.3390/rs10040584},
-	abstract = {Precision viticulture has arisen in recent years as a new approach in grape production. It is based on assessing ﬁeld spatial variability and implementing site-speciﬁc management strategies, which can require georeferenced information of the three dimensional (3D) grapevine canopy structure as one of the input data. The 3D structure of vineyard ﬁelds can be generated applying photogrammetric techniques to aerial images collected with Unmanned Aerial Vehicles ({UAVs}), although processing the large amount of crop data embedded in 3D models is currently a bottleneck of this technology. To solve this limitation, a novel and robust object-based image analysis ({OBIA}) procedure based on Digital Surface Model ({DSM}) was developed for 3D grapevine characterization. The signiﬁcance of this work relies on the developed {OBIA} algorithm which is fully automatic and self-adaptive to different crop-ﬁeld conditions, classifying grapevines, and row gap (missing vine plants), and computing vine dimensions without any user intervention. The results obtained in three testing ﬁelds on two different dates showed high accuracy in the classiﬁcation of grapevine area and row gaps, as well as minor errors in the estimates of grapevine height. In addition, this algorithm computed the position, projected area, and volume of every grapevine in the ﬁeld, which increases the potential of this {UAV}- and {OBIA}-based technology as a tool for site-speciﬁc crop management applications.},
-	pages = {584},
-	number = {4},
-	journaltitle = {Remote Sensing},
-	author = {de Castro, Ana and Jiménez-Brenes, Francisco and Torres-Sánchez, Jorge and Peña, José and Borra-Serrano, Irene and López-Granados, Francisca},
-	urldate = {2018-07-04},
-	date = {2018-04-10},
-	langid = {english},
-	file = {de Castro et al. - 2018 - 3-D Characterization of Vineyards Using a Novel UA.pdf:C\:\\Users\\Brent Thorne\\Zotero\\storage\\V7C4QQ8G\\de Castro et al. - 2018 - 3-D Characterization of Vineyards Using a Novel UA.pdf:application/pdf}
-}
-
-@article{feng_uav_2015,
-	title = {{UAV} Remote Sensing for Urban Vegetation Mapping Using Random Forest and Texture Analysis},
-	volume = {7},
-	issn = {2072-4292},
-	url = {http://www.mdpi.com/2072-4292/7/1/1074},
-	doi = {10.3390/rs70101074},
-	pages = {1074--1094},
-	number = {1},
-	journaltitle = {Remote Sensing},
-	author = {Feng, Quanlong and Liu, Jiantao and Gong, Jianhua},
-	urldate = {2018-07-04},
-	date = {2015-01-19},
-	langid = {english},
-	file = {Feng et al. - 2015 - UAV Remote Sensing for Urban Vegetation Mapping Us.pdf:C\:\\Users\\Brent Thorne\\Zotero\\storage\\AEGI5689\\Feng et al. - 2015 - UAV Remote Sensing for Urban Vegetation Mapping Us.pdf:application/pdf}
-}
-
-@article{mcguire_dependence_2018,
-	title = {Dependence of the evolution of carbon dynamics in the northern permafrost region on the trajectory of climate change},
-	volume = {115},
-	issn = {0027-8424, 1091-6490},
-	url = {http://www.pnas.org/lookup/doi/10.1073/pnas.1719903115},
-	doi = {10.1073/pnas.1719903115},
-	pages = {3882--3887},
-	number = {15},
-	journaltitle = {Proceedings of the National Academy of Sciences},
-	author = {{McGuire}, A. David and Lawrence, David M. and Koven, Charles and Clein, Joy S. and Burke, Eleanor and Chen, Guangsheng and Jafarov, Elchin and {MacDougall}, Andrew H. and Marchenko, Sergey and Nicolsky, Dmitry and Peng, Shushi and Rinke, Annette and Ciais, Philippe and Gouttevin, Isabelle and Hayes, Daniel J. and Ji, Duoying and Krinner, Gerhard and Moore, John C. and Romanovsky, Vladimir and Schädel, Christina and Schaefer, Kevin and Schuur, Edward A. G. and Zhuang, Qianlai},
-	urldate = {2018-07-02},
-	date = {2018-04-10},
-	langid = {english},
-	file = {McGuire et al. - 2018 - Dependence of the evolution of carbon dynamics in .pdf:C\:\\Users\\Brent Thorne\\Zotero\\storage\\V4CP9RI9\\McGuire et al. - 2018 - Dependence of the evolution of carbon dynamics in .pdf:application/pdf}
-}
-
-@article{noauthor_3882.full.pdf_nodate,
-	title = {3882.full.pdf},
-	doi = {https://doi.org/10.1073/pnas.1719903115}
-}
-
-@article{turner_controls_2014,
-	title = {Controls on water balance of shallow thermokarst lakes and their relations with catchment characteristics: a multi-year, landscape-scale assessment based on water isotope tracers and remote sensing in Old Crow Flats, Yukon (Canada)},
-	volume = {20},
-	issn = {13541013},
-	url = {http://doi.wiley.com/10.1111/gcb.12465},
-	doi = {10.1111/gcb.12465},
-	shorttitle = {Controls on water balance of shallow thermokarst lakes and their relations with catchment characteristics},
-	abstract = {Many northern lake-rich regions are undergoing pronounced hydrological change, yet inadequate knowledge of the drivers of these landscape-scale responses hampers our ability to predict future conditions. We address this challenge in the thermokarst landscape of Old Crow Flats ({OCF}) using a combination of remote sensing imagery and monitoring of stable isotope compositions of lake waters over three thaw seasons (2007–2009). Quantitative analysis conﬁrmed that the hydrological behavior of lakes is strongly inﬂuenced by catchment vegetation and physiography. Catchments of snowmelt-dominated lakes, typically located in southern peripheral areas of {OCF}, encompass high proportions of woodland/forest and tall shrub vegetation (mean percent land cover = ca. 60\%). These land cover types effectively capture snow and generate abundant snowmelt runoff that offsets lake water evaporation. Rainfalldominated lakes that are not strongly inﬂuenced by evaporation are typically located in eastern and northern {OCF} where their catchments have higher proportions of dwarf shrub/herbaceous and sparse vegetation (ca. 45\%), as well as surface water (ca. 20\%). Evaporation-dominated lakes, are located in the {OCF} interior where their catchments are distinguished by substantially higher lake area to catchment area ratios ({LA}/{CA} = ca. 29\%) compared to low evaporation-inﬂuenced rainfall-dominated (ca. 10\%) and snowmelt-dominated (ca. 4\%) lakes. Lakes whose catchments contain {\textgreater}75\% combined dwarf shrub/herbaceous vegetation and surface water are most susceptible to evaporative lake-level drawdown, especially following periods of low precipitation. Findings indicate that multiple hydrological trajectories are probable in response to climate-driven changes in precipitation amount and seasonality, vegetation composition, and thermokarst processes. These will likely include a shift to greater snowmelt inﬂuence in catchments experiencing expansion of tall shrubs, greater inﬂuence from evaporation in catchments having higher proportions of surface water, and an increase in the rate of thermokarst lake expansion and probability of drainage. Local observations suggest that some of these changes are already underway.},
-	pages = {1585--1603},
-	number = {5},
-	journaltitle = {Global Change Biology},
-	author = {Turner, Kevin W. and Wolfe, Brent B. and Edwards, Thomas W. D. and Lantz, Trevor C. and Hall, Roland I. and Larocque, Guillaume},
-	urldate = {2018-06-29},
-	date = {2014-05},
-	langid = {english},
-	file = {Turner et al. - 2014 - Controls on water balance of shallow thermokarst l.pdf:C\:\\Users\\Brent Thorne\\Zotero\\storage\\ENFATHMR\\Turner et al. - 2014 - Controls on water balance of shallow thermokarst l.pdf:application/pdf}
-}
-
-@article{carrillo_use_2016,
-	title = {Use of multi-spectral airborne imagery to improve yield sampling in viticulture},
-	volume = {17},
-	issn = {1385-2256, 1573-1618},
-	url = {http://link.springer.com/10.1007/s11119-015-9407-8},
-	doi = {10.1007/s11119-015-9407-8},
-	pages = {74--92},
-	number = {1},
-	journaltitle = {Precision Agriculture},
-	author = {Carrillo, E. and Matese, A. and Rousseau, J. and Tisseyre, B.},
-	urldate = {2018-06-27},
-	date = {2016-02},
-	langid = {english},
-	file = {Carrillo et al. - 2016 - Use of multi-spectral airborne imagery to improve .pdf:C\:\\Users\\Brent Thorne\\Zotero\\storage\\NP4AZI7X\\Carrillo et al. - 2016 - Use of multi-spectral airborne imagery to improve .pdf:application/pdf}
-}
-
-@misc{gordon_arctic_2005,
-	title = {Arctic Borderlands Ecological Knowledge Co-op},
-	author = {Gordon, Annie B and Andre, May and Kaglik, Butch and Cockney, Steve and Allen, Mildred and Snowshoe, Audrey and Tetlichi, Randall},
-	date = {2005},
-	langid = {english},
-	file = {Gordon et al. - 2005 - Arctic Borderlands Ecological Knowledge Co-op.pdf:C\:\\Users\\Brent Thorne\\Zotero\\storage\\DXMNW9PT\\Gordon et al. - 2005 - Arctic Borderlands Ecological Knowledge Co-op.pdf:application/pdf}
-}
-
-@article{hogrefe_normalized_2017,
-	title = {Normalized Difference Vegetation Index as an Estimator for Abundance and Quality of Avian Herbivore Forage in Arctic Alaska},
-	volume = {9},
-	issn = {2072-4292},
-	url = {http://www.mdpi.com/2072-4292/9/12/1234},
-	doi = {10.3390/rs9121234},
-	abstract = {Tools that can monitor biomass and nutritional quality of forage plants are needed to understand how arctic herbivores may respond to the rapidly changing environment at high latitudes. The Normalized Difference Vegetation Index ({NDVI}) has been widely used to assess changes in abundance and distribution of terrestrial vegetative communities. However, the efﬁcacy of {NDVI} to measure seasonal changes in biomass and nutritional quality of forage plants in the Arctic remains largely un-evaluated at landscape and ﬁne-scale levels. We modeled the relationships between {NDVI} and seasonal changes in aboveground biomass and nitrogen concentration in halophytic graminoids, a key food source for arctic-nesting geese. The model was calibrated based on data collected at one site and validated using data from another site. Effects of spatial scale on model accuracy were determined by comparing model predictions between {NDVI} derived from moderate resolution (250 × 250 m pixels) satellite data and high resolution (20 cm diameter area) handheld spectrometer data. {NDVI} derived from the handheld spectrometer was a superior estimator (R2 ≥ 0.67) of seasonal changes in aboveground biomass compared to satellite-derived {NDVI} (R2 ≤ 0.40). The addition of temperature and precipitation variables to the model for biomass improved ﬁt, but provided minor gains in predictive power beyond that of the {NDVI}-only model. This model, however, was only a moderately accurate estimator of biomass in an ecologically-similar halophytic graminoid wetland located 100 km away, indicating the necessity for site-speciﬁc validation. In contrast to assessments of biomass, satellite-derived {NDVI} was a better estimator for the timing of peak percent of nitrogen than {NDVI} derived from the handheld spectrometer. We conﬁrmed that the date when {NDVI} reached 50\% of its seasonal maximum was a reasonable approximation of the period of peak spring vegetative green-up and peak percent nitrogen. This study demonstrates the importance of matching the scale of {NDVI} measurements to the vegetation properties of biomass and nitrogen phenology.},
-	pages = {1234},
-	number = {12},
-	journaltitle = {Remote Sensing},
-	author = {Hogrefe, Kyle and Patil, Vijay and Ruthrauff, Daniel and Meixell, Brandt and Budde, Michael and Hupp, Jerry and Ward, David},
-	urldate = {2018-06-19},
-	date = {2017-11-29},
-	langid = {english},
-	file = {Hogrefe et al. - 2017 - Normalized Difference Vegetation Index as an Estim.pdf:C\:\\Users\\Brent Thorne\\Zotero\\storage\\QJLPS23F\\Hogrefe et al. - 2017 - Normalized Difference Vegetation Index as an Estim.pdf:application/pdf}
-}
-
-@article{ahmed_assessment_2018,
-	title = {Assessment of land cover change using remote sensing, aerial photographs and dendrochronological approaches in Old Crow Flats, Yukon},
-	abstract = {Changing climate conditions have been amplified across Arctic and subarctic regions, which have influenced landscape characteristics. Notably, shrub vegetation size and spatial distributions have increased in many locations, which have been found to influence other landscape components including hydrological and ecological conditions. The 14,500 km2 Old Crow Flats ({OCF}) basin in northern Yukon is one such landscape where past research has identified relations among land cover and hydroecological conditions, however, more refined insight of land cover changes is required to identify how this important and vast wetland will respond to future changing climate. Here, we evaluated spatial and temporal patterns of vegetation change in {OCF} since 1985 using Landsat imagery and ground control observations from plot sampling, oblique aerial images, and an unmanned aerial vehicle ({UAV}). Trends in greening vegetation spatial distribution were identified using remote-sensing indicators, the normalized difference vegetation index ({NDVI}) and tasseled cap transformation ({TCg}). Findings showed a significant increase in vegetation greening during the last 30 years, which was compared with a Landsat-derived land cover classification layer. Quantitative analysis showed that greening occurred mostly in 8,335 km2 shrub-vegetation classified areas (outside of drained lake basins) from 1985 to 2014. Shrub vegetation coverage was estimated to increase approximately 13.25 km2 per year in {OCF}. The greatest increases in vegetation was found across the northern and eastern ecotone areas of the {OCF} basin. The highest percentage of greening ({\textasciitilde}7.58\%) was observed in the northern {OCF} basin and northern parts of the Black Fox Creek subcatchment, and the highest coverage of greening ({\textasciitilde}2,108 km2) was found in the Johnson Creek subcatchment. Additional validation of remote sensing analysis was generated from 550 oblique photographs, as well as integration of shrub age analysis and acquisition of multispectral images in two 90-m plots. Oblique photographs showed the majority (72\%) of sampled pixels with significant greening were shrub vegetation. {UAV} and analysis of tree rings in the two plots within greening pixels showed that shrub was the dominant vegetation (70-73\% coverage) and that 70\% of shrubs sampled were dated at ≤ 30 years old. The Landsat-derived vegetation greening products will be essential for refining our knowledge of how changing land cover is impacting lake and river hydroecological conditions. Insight generated here about key wildlife habitat will be useful for stakeholders including the Vuntut Gwitchin First Nation and Vuntut National Park as they form monitoring and land management plans as climate continues to change.},
-	journaltitle = {Remote Sensing},
-	shortjournal = {Remote Sensing},
-	author = {Ahmed, M. Razu and Turner, Kevin W. and Thorne, W. Brent and Wang, Jon A. and Lantz, Trevor C.},
-	date = {2018-06},
-	file = {Ahmed et al. - 2018 - Assessment of land cover change using remote sensi.pdf:C\:\\Users\\Brent Thorne\\Zotero\\storage\\UKJEP9PC\\Ahmed et al. - 2018 - Assessment of land cover change using remote sensi.pdf:application/pdf}
-}
-
-@article{olthof_recent_2009,
-	title = {Recent (1986-2006) Vegetation-Specific {NDVI} Trends in Northern Canada from Satellite Data},
-	volume = {61},
-	issn = {1923-1245, 0004-0843},
-	url = {http://arctic.journalhosting.ucalgary.ca/arctic/index.php/arctic/article/view/46},
-	doi = {10.14430/arctic46},
-	abstract = {Recent northern vegetation changes caused by climate warming have been well documented, using experimental plot warming to examine vegetation-specific changes and satellite image data to examine overall trends. Previous remote sensing efforts have employed the Normalized Difference Vegetation Index ({NDVI}) from {AVHRR}, whose 1 km to 8 km pixel size is too large for examination of broad scale vegetation-specific responses because of mixing within the pixel footprint. In this paper, we reconcile differences between field- and remote sensing-based approaches by using both medium-resolution (30 m) and coarseresolution (1 km) data to study 20 years of vegetation-specific responses to northern climate warming (1986 to 2006). Trends are compared among vegetation communities from two separate Landsat classifications in Canada’s eastern and western forest-tundra transition zone, as well as a 1 km {AVHRR} database recently developed over Canada. A comparison of absolute trends among mapped vegetation communities revealed lichen-dominated communities consistently exhibiting lower trends than those dominated by vascular plants, with both exhibiting increasing {NDVI}. Our results and those obtained from experimental warming suggest that the magnitude difference in {NDVI} increase between lichen and vascular vegetation is related to increasing vigor and biomass of vascular vegetation, in contrast to physiological impairment of lichen due to the short-term secondary effect of temperature on moisture. In the longer term, succession from lichen to vascular is likely responsible for the small observed {NDVI} increase over lichen-dominated regions. The fact that both Landsat and {AVHRR} exhibited similar relative vegetation-specific trends in {NDVI} suggests that this phenomenon may be widespread in the North.},
-	number = {4},
-	journaltitle = {{ARCTIC}},
-	author = {Olthof, Ian and Pouliot, Darren},
-	urldate = {2018-05-09},
-	date = {2009-08-28},
-	langid = {english},
-	file = {Olthof and Pouliot - 2009 - Recent (1986-2006) Vegetation-Specific NDVI Trends.pdf:C\:\\Users\\Brent Thorne\\Zotero\\storage\\B2P2MZGI\\Olthof and Pouliot - 2009 - Recent (1986-2006) Vegetation-Specific NDVI Trends.pdf:application/pdf}
-}
-
-@article{van_der_maaten_dendrometer:_2016,
-	title = {{dendrometeR}: Analyzing the pulse of trees in R},
-	volume = {40},
-	issn = {11257865},
-	url = {http://linkinghub.elsevier.com/retrieve/pii/S1125786516300662},
-	doi = {10.1016/j.dendro.2016.06.001},
-	shorttitle = {{dendrometeR}},
-	abstract = {Dendrometers are measurement devices proven to be useful to analyze tree water relations and growth responses in relation to environmental variability. To analyze dendrometer data, two analytical methods prevail: (1) daily approaches that calculate or extract single values per day, and (2) stem-cycle approaches that separate high-resolution dendrometer records into distinct phases of contraction, expansion and stem-radius increment. Especially the stem-cycle approach requires complex algorithms to disentangle cyclic phases. Here, we present an R package, named {dendrometeR}, that facilitates the analysis of dendrometer data using both analytical methods. By making the package freely available, we make a ﬁrst step towards comparable and reproducible methods to analyze dendrometer data. The package contains customizable functions to prepare, verify, process and plot dendrometer series, as well as functions that facilitate the analysis of dendrometer data (i.e. daily statistics or extracted phases) in relation to environmental data. The functionality of {dendrometeR} is illustrated in this note.},
-	pages = {12--16},
-	journaltitle = {Dendrochronologia},
-	author = {van der Maaten, Ernst and van der Maaten-Theunissen, Marieke and Smiljanić, Marko and Rossi, Sergio and Simard, Sonia and Wilmking, Martin and Deslauriers, Annie and Fonti, Patrick and von Arx, Georg and Bouriaud, Olivier},
-	urldate = {2018-04-13},
-	date = {2016-12},
-	langid = {english},
-	file = {van der Maaten et al. - 2016 - dendrometeR Analyzing the pulse of trees in R.pdf:C\:\\Users\\Brent Thorne\\Zotero\\storage\\LUEFGPTC\\van der Maaten et al. - 2016 - dendrometeR Analyzing the pulse of trees in R.pdf:application/pdf}
-}
-
-@article{suzuki_hydrological_2018,
-	title = {Hydrological Variability and Changes in the Arctic Circumpolar Tundra and the Three Largest Pan-Arctic River Basins from 2002 to 2016},
-	volume = {10},
-	issn = {2072-4292},
-	url = {http://www.mdpi.com/2072-4292/10/3/402},
-	doi = {10.3390/rs10030402},
-	abstract = {The Arctic freshwater budget is critical for understanding the climate in the northern regions. However, the hydrology of the Arctic circumpolar tundra region ({ACTR}) and the largest pan-Arctic rivers are still not well understood. In this paper, we analyze the spatiotemporal variations in the terrestrial water storage ({TWS}) of the {ACTR} and three of the largest pan-Arctic river basins (Lena, Mackenzie, Yukon). To do this, we utilize monthly Gravity Recovery and Climate Experiment ({GRACE}) data from 2002 to 2016. Together with global land reanalysis, and river runoff data, we identify declining {TWS} trends throughout the {ACTR} that we attribute largely to increasing evapotranspiration driven by increasing summer air temperatures. In terms of regional changes, large and signiﬁcant negative trends in {TWS} are observed mainly over the North American continent. At basin scale, we show that, in the Lena River basin, the autumnal {TWS} signal persists until the spring of the following year, while in the Mackenzie River basin, the {TWS} level in the autumn and winter has no signiﬁcant impact on the following year. As expected global warming is expected to be particularly signiﬁcant in the northern regions, our results are important for understanding future {TWS} trends, with possible further decline.},
-	pages = {402},
-	number = {3},
-	journaltitle = {Remote Sensing},
-	author = {Suzuki, Kazuyoshi and Matsuo, Koji and Yamazaki, Dai and Ichii, Kazuhito and Iijima, Yoshihiro and Papa, Fabrice and Yanagi, Yuji and Hiyama, Tetsuya},
-	urldate = {2018-04-06},
-	date = {2018-03-06},
-	langid = {english},
-	file = {Suzuki et al. - 2018 - Hydrological Variability and Changes in the Arctic.pdf:C\:\\Users\\Brent Thorne\\Zotero\\storage\\HNQ334P9\\Suzuki et al. - 2018 - Hydrological Variability and Changes in the Arctic.pdf:application/pdf}
-}
-
-@inproceedings{liu_combining_2010,
-	title = {Combining Tasseled Cap Transformation with Support Vector Machine to classify Landsat {TM} imagery data},
-	isbn = {978-1-4244-5958-2},
-	url = {http://ieeexplore.ieee.org/document/5582727/},
-	doi = {10.1109/ICNC.2010.5582727},
-	abstract = {Landsat represents the world's longest continuously acquired collection of space-based moderate-resolution land remote sensing data. Compared with the other earlier Landsat satellites, Landsat 8 has several new characteristics in spectral bands, spectral range and radiometric resolution. Therefore, there is a strong requirement to analyze the characteristics of the Landsat 8 for land cover classification, global change research. In this paper, Landsat 8 {OLI} image was used with Support Vector Machine ({SVM}) and Tasseled Cap Transformation ({TCT}) for land cover classification. Firstly, the Top of Atmospheric ({TOA}) reflectance based {TCT} was developed based on Landsat 8 {OLI} images. Then comparison of {ISODATA}, K-Means and {SVM} of all original 8 Landsat 8 {OLI} bands and both of {TCT} Greenness and Wetness in land cover classification was done. The present results showed that compared with using the original 8 Landsat 8 {OLI} bands, the classification results from {ISODATA} and K-Means based on both of {TCT} Greenness and Wetness had better robustness and accuracy, and the classification using {SVM} with {TCT} had better efficiency and accuracy.},
-	pages = {3570--3572},
-	publisher = {{IEEE}},
-	author = {Liu, Qingsheng and Liu, Gaohuan},
-	urldate = {2018-03-28},
-	date = {2010-08},
-	langid = {english},
-	file = {Liu and Liu - 2010 - Combining Tasseled Cap Transformation with Support.pdf:C\:\\Users\\Brent Thorne\\Zotero\\storage\\E8JGU7PD\\Liu and Liu - 2010 - Combining Tasseled Cap Transformation with Support.pdf:application/pdf}
-}
-
-@article{davidson_mapping_2016,
-	title = {Mapping Arctic Tundra Vegetation Communities Using Field Spectroscopy and Multispectral Satellite Data in North Alaska, {USA}},
-	volume = {8},
-	issn = {2072-4292},
-	url = {http://www.mdpi.com/2072-4292/8/12/978},
-	doi = {10.3390/rs8120978},
-	pages = {978},
-	number = {12},
-	journaltitle = {Remote Sensing},
-	author = {Davidson, Scott and Santos, Maria and Sloan, Victoria and Watts, Jennifer and Phoenix, Gareth and Oechel, Walter and Zona, Donatella},
-	urldate = {2018-03-28},
-	date = {2016-11-26},
-	langid = {english},
-	file = {Davidson et al. - 2016 - Mapping Arctic Tundra Vegetation Communities Using.pdf:C\:\\Users\\Brent Thorne\\Zotero\\storage\\U6E5F6HB\\Davidson et al. - 2016 - Mapping Arctic Tundra Vegetation Communities Using.pdf:application/pdf}
-}
-
-@article{thompson_atmospheric_2015,
-	title = {Atmospheric correction for global mapping spectroscopy: {ATREM} advances for the {HyspIRI} preparatory campaign},
-	volume = {167},
-	issn = {00344257},
-	url = {http://linkinghub.elsevier.com/retrieve/pii/S0034425715000607},
-	doi = {10.1016/j.rse.2015.02.010},
-	shorttitle = {Atmospheric correction for global mapping spectroscopy},
-	abstract = {Orbital imaging spectrometers, such as the proposed Hyperspectral Infrared Imager ({HyspIRI}) mission, will provide global, multi-year Visible Shortwave Infrared ({VSWIR}) reﬂectance maps. Monitoring the Earth's surface at high spectral resolution will advance our understanding of changing ecosystems and land use. These applications depend on reliable correction of atmospheric scattering and absorption. The {HyspIRI} Preparatory Campaign is an airborne precursor mission comprised of multiple ﬂights by the “classic” Airborne Visible Infrared Imaging Spectrometer ({AVIRIS}-C) over a wide geographic area. This article describes the atmospheric correction that we have implemented for the campaign. We ﬁrst present the theoretical basis of our approach, which is grounded in the {ATmospheric} {REMoval} ({ATREM}) algorithm. We then describe new enhancements including retrieval of pressure altitude, which improves accuracy over widely varying topography, and joint retrieval of optical absorption for three phases of water (vapor, liquid, and ice), which improves accuracy over vegetated areas. Reﬂectance is validated using ground spectra acquired across a wide range of targets and elevations. Finally, we use the algorithm to map vapor, liquid, and ice phases of water over 6 months across a 14,000 km2 region of California. © 2015 Elsevier Inc. All rights reserved.},
-	pages = {64--77},
-	journaltitle = {Remote Sensing of Environment},
-	author = {Thompson, David R. and Gao, Bo-Cai and Green, Robert O. and Roberts, Dar A. and Dennison, Philip E. and Lundeen, Sarah R.},
-	urldate = {2018-03-28},
-	date = {2015-09},
-	langid = {english},
-	file = {Thompson et al. - 2015 - Atmospheric correction for global mapping spectros.pdf:C\:\\Users\\Brent Thorne\\Zotero\\storage\\SZUB9598\\Thompson et al. - 2015 - Atmospheric correction for global mapping spectros.pdf:application/pdf}
-}
-
-@article{robert_airborne_nodate,
-	title = {Airborne Visible/Infrared Imaging Spectrometer Next Generation ({AVIRIS}-{NG}) Data User’s Guide - India Campaign 2015},
-	pages = {13},
-	author = {Robert, Robert O Green and Lundeen, Sarah and {McCubbin}, Ian and Thompson, David R and Bue, Brian D},
-	langid = {english},
-	file = {Robert et al. - Airborne VisibleInfrared Imaging Spectrometer Nex.pdf:C\:\\Users\\Brent Thorne\\Zotero\\storage\\U3LZ3QMN\\Robert et al. - Airborne VisibleInfrared Imaging Spectrometer Nex.pdf:application/pdf}
-}
-
-@article{lantuit_temporal_2005,
-	title = {Temporal stereophotogrammetric analysis of retrogressive thaw slumps on Herschel Island, Yukon Territory},
-	volume = {5},
-	issn = {1684-9981},
-	url = {http://www.nat-hazards-earth-syst-sci.net/5/413/2005/},
-	doi = {10.5194/nhess-5-413-2005},
-	pages = {413--423},
-	number = {3},
-	journaltitle = {Natural Hazards and Earth System Science},
-	author = {Lantuit, H. and Pollard, W. H.},
-	urldate = {2018-03-23},
-	date = {2005-05-30},
-	langid = {english},
-	file = {Lantuit and Pollard - 2005 - Temporal stereophotogrammetric analysis of retrogr.pdf:C\:\\Users\\Brent Thorne\\Zotero\\storage\\U6QNUN9M\\Lantuit and Pollard - 2005 - Temporal stereophotogrammetric analysis of retrogr.pdf:application/pdf}
-}
-
-@article{weismuller_modeling_2011,
-	title = {Modeling the thermal dynamics of the active layer at two contrasting permafrost sites on Svalbard and on the Tibetan Plateau},
-	volume = {5},
-	issn = {1994-0424},
-	url = {http://www.the-cryosphere.net/5/741/2011/},
-	doi = {10.5194/tc-5-741-2011},
-	abstract = {Employing a one-dimensional, coupled thermal and hydraulic numerical model, we quantitatively analyze high-resolution, multi-year data from the active layers at two contrasting permafrost sites. The model implements heat conduction with the de Vries parameterization, heat convection with water and vapor ﬂow, freeze-thaw transition parameterized with a heuristic soil-freezing characteristic, and liquid water ﬂow with the Mualem-van Genuchten parameterization. The model is driven by measured temperatures and water contents at the upper and lower boundary with all required material properties deduced from the measured data. The aims are (i) to ascertain the applicability of such a rather simple model, (ii) to quantify the dominating processes, and (iii) to discuss possible causes of remaining deviations.},
-	pages = {741--757},
-	number = {3},
-	journaltitle = {The Cryosphere},
-	author = {Weismüller, J. and Wollschläger, U. and Boike, J. and Pan, X. and Yu, Q. and Roth, K.},
-	urldate = {2018-03-23},
-	date = {2011-09-19},
-	langid = {english},
-	file = {Weismüller et al. - 2011 - Modeling the thermal dynamics of the active layer .pdf:C\:\\Users\\Brent Thorne\\Zotero\\storage\\RERPBMUI\\Weismüller et al. - 2011 - Modeling the thermal dynamics of the active layer .pdf:application/pdf}
-}
-
-@collection{giosan_river_2005,
-	location = {Tulsa, Okla},
-	title = {River deltas: concepts, models, and examples},
-	isbn = {978-1-56576-113-1 978-1-56576-219-0},
-	series = {{SEPM} special publication},
-	shorttitle = {River deltas},
-	abstract = {Coastal-prism sediments record rising local water levels, forced by sea-level rise. Sea-level rise is the primary driving factor, but the anatomy of the coastal prism is a result of a complex interplay of sea level, subsidence, and upstream controls (essentially sediment load). The sedimentary architecture of a coastal prism is linked to paleo–groundwater rise. Groundwater rise is quantified for the entire Rhine–Meuse delta (extending 120 km inland, 60 km wide) between an 11.0 kyr {BP} groundwater lowstand and the present highstand, dating series of organic markers (peats) of paleo–groundwater levels at compaction-free locations. The accumulated dataset of paleo–groundwater-level markers ({\textgreater} 300 index points) has a dense spatial and temporal coverage and a predictive quality that enables geostatistical analysis. The combination of this dataset and a carefully designed interpolation method (a form of 3D kriging) reveals the interplay between upstream (climate, discharge) and downstream (sea level, tides) controls on gradients of groundwater level and patterns of groundwater rise. Regional effects due to local controls (differential subsidence, groundwater flow) are also identified.},
-	pagetotal = {502},
-	number = {83},
-	publisher = {Society for Sedimentary Geology},
-	editor = {Giosan, Liviu},
-	date = {2005},
-	langid = {english},
-	note = {{OCLC}: 255162802},
-	file = {Giosan - 2005 - River deltas concepts, models, and examples.pdf:C\:\\Users\\Brent Thorne\\Zotero\\storage\\SQL7BJL4\\Giosan - 2005 - River deltas concepts, models, and examples.pdf:application/pdf}
-}
-
-@article{chen_three-dimensional_2015,
-	title = {Three-Dimensional Mapping of Soil Organic Carbon by Combining Kriging Method with Profile Depth Function},
-	volume = {10},
-	issn = {1932-6203},
-	url = {https://www.ncbi.nlm.nih.gov/pmc/articles/PMC4457849/},
-	doi = {10.1371/journal.pone.0129038},
-	abstract = {Understanding spatial variation of soil organic carbon ({SOC}) in three-dimensional direction is helpful for land use management. Due to the effect of profile depths and soil texture on vertical distribution of {SOC}, the stationary assumption for {SOC} cannot be met in the vertical direction. Therefore the three-dimensional (3D) ordinary kriging technique cannot be directly used to map the distribution of {SOC} at a regional scale. The objectives of this study were to map the 3D distribution of {SOC} at a regional scale by combining kriging method with the profile depth function of {SOC} ({KPDF}), and to explore the effects of soil texture and land use type on vertical distribution of {SOC} in a fluvial plain. A total of 605 samples were collected from 121 soil profiles (0.0 to 1.0 m, 0.20 m increment) in Quzhou County, China and {SOC} contents were determined for each soil sample. The {KPDF} method was used to obtain the 3D map of {SOC} at the county scale. The results showed that the exponential equation well described the vertical distribution of mean values of the {SOC} contents. The coefficients of determination, root mean squared error and mean prediction error between the measured and the predicted {SOC} contents were 0.52, 1.82 and -0.24 g kg-1 respectively, suggesting that the {KPDF} method could be used to produce a 3D map of {SOC} content. The surface {SOC} contents were high in the mid-west and south regions, and low values lay in the southeast corner. The {SOC} contents showed significant positive correlations between the five different depths and the correlations of {SOC} contents were larger in adjacent layers than in non-adjacent layers. Soil texture and land use type had significant effects on the spatial distribution of {SOC}. The influence of land use type was more important than that of soil texture in the surface soil, and soil texture played a more important role in influencing the {SOC} levels for 0.2-0.4 m layer.},
-	number = {6},
-	journaltitle = {{PLoS} {ONE}},
-	shortjournal = {{PLoS} One},
-	author = {Chen, Chong and Hu, Kelin and Li, Hong and Yun, Anping and Li, Baoguo},
-	urldate = {2018-03-23},
-	date = {2015-06-05},
-	pmid = {26047012},
-	pmcid = {PMC4457849},
-	file = {Chen et al. - 2015 - Three-Dimensional Mapping of Soil Organic Carbon b.pdf:C\:\\Users\\Brent Thorne\\Zotero\\storage\\52K9DNCY\\Chen et al. - 2015 - Three-Dimensional Mapping of Soil Organic Carbon b.pdf:application/pdf}
-}
-
-@article{gibson_estimating_1993,
-	title = {Estimating Evaporation Using Stable Isotopes: Quantitative Results and Sensitivity Analysis for Two Catchments in Northern Canada},
-	volume = {24},
-	url = {http://hr.iwaponline.com/content/24/2-3/79.abstract},
-	abstract = {The stable isotope-mass balance method can provide useful water balance information in ungauged catchments. The method has been used to evaluate evaporation and water balance at two contrasting sites in northern Canada. Areally weighted evaporative discharge from an 850 km2 tundra catchment in south-central District of Keewatin is estimated to be about 7 \% of total water discharge (≈ 16 mm/yr), compared to about 19 \% (≈ 65 mm/yr) from a 300 km2 forested watershed in the Upper Mackenzie Valley. Lakes in both watersheds exhibit broad ranges of evaporation/inflow ratios related to local water balance. The potential errors in the estimates are evaluated through consideration of possible variations in basin storage, humidity, and the isotopic composition of atmospheric vapour.},
-	pages = {79},
-	number = {2},
-	journaltitle = {Hydrology Research},
-	shortjournal = {Hydrol Res},
-	author = {Gibson, J.J. and Edwards, T.W.D. and Bursey, G.G. and Prowse, T.D.},
-	date = {1993-04-01},
-	file = {Gibson et al. - 1993 - Estimating Evaporation Using Stable Isotopes Quan.pdf:C\:\\Users\\Brent Thorne\\Zotero\\storage\\KALY3NJ8\\Gibson et al. - 1993 - Estimating Evaporation Using Stable Isotopes Quan.pdf:application/pdf}
-}
-
-@article{welker_arctic_2005,
-	title = {Arctic and North Atlantic Oscillation phase changes are recorded in the isotopes (delta18O and delta13C) of Cassiope tetragona plants},
-	volume = {11},
-	issn = {1354-1013, 1365-2486},
-	url = {http://doi.wiley.com/10.1111/j.1365-2486.2005.00961.x},
-	doi = {10.1111/j.1365-2486.2005.00961.x},
-	abstract = {The Arctic and North Atlantic Oscillations ({AO}/{NAO}) are large-scale annual modes of atmospheric circulation that have shifted in the last 30 years. Recent changes in arctic climate, including increasing surface air temperature, declining sea ice extent, and shifts in the amounts seasonality of precipitation are linked to the strong positive phase of the {AO}/{NAO}. Here, we show that phase changes in the {AO}/{NAO} are recorded in the isotopic (d18O and D-carbon isotope discrimination) characteristics of the long-lived circum-arctic plant, Cassiope tetragona, as summer rain has become a more important water source than snowmelt water which in turn has lead to decreases in D and reductions in plant stem growth. These isotopic records in C. tetragona may facilitate reconstructions of climate, plant–soil water relations, plant gas exchange attributes and a mechanistic understanding of growth responses to shifts in atmospheric circulation. If plant specimens were available for populations across the arctic as part of the International Polar Year, these archives could provide a circum-arctic record of historical climate change and associated shifts in physiological plant performance and growth.},
-	pages = {997--1002},
-	number = {7},
-	journaltitle = {Global Change Biology},
-	author = {Welker, Jeffrey M. and Rayback, Shelly and Henry, Greg H. R.},
-	urldate = {2018-03-23},
-	date = {2005-07},
-	langid = {english},
-	file = {Welker et al. - 2005 - Arctic and North Atlantic Oscillation phase change.pdf:C\:\\Users\\Brent Thorne\\Zotero\\storage\\LKCW7B34\\Welker et al. - 2005 - Arctic and North Atlantic Oscillation phase change.pdf:application/pdf}
-}
-
-@article{andreu-hayles_long_2011,
-	title = {Long tree-ring chronologies reveal 20th century increases in water-use efficiency but no enhancement of tree growth at five Iberian pine forests: {IBERIAN} {PINE} {PHYSIOLOGICAL} {AND} {GROWTH} {CHANGES}},
-	volume = {17},
-	issn = {13541013},
-	url = {http://doi.wiley.com/10.1111/j.1365-2486.2010.02373.x},
-	doi = {10.1111/j.1365-2486.2010.02373.x},
-	shorttitle = {Long tree-ring chronologies reveal 20th century increases in water-use efficiency but no enhancement of tree growth at five Iberian pine forests},
-	abstract = {We investigated the tree growth and physiological response of ﬁve pine forest stands in relation to changes in atmospheric {CO}2 concentration (ca) and climate in the Iberian Peninsula using annually resolved width and d13C treering chronologies since {AD} 1600. 13C discrimination (D \% ci/ca), leaf intercellular {CO}2 concentration (ci) and intrinsic water-use efﬁciency ({iWUE}) were inferred from d13C values. The most pronounced changes were observed during the second half of the 20th century, and differed between stands. Three sites kept a constant ci/ca ratio, leading to signiﬁcant ci and {iWUE} increases (active response to ca); whereas a signiﬁcant increase in ci/ca resulted in the lowest {iWUE} increase of all stands at a relict Pinus uncinata forest site (passive response to ca). A signiﬁcant decrease in ci/ca led to the greatest {iWUE} improvement at the northwestern site. We tested the climatic signal strength registered in the d13C series after removing the low-frequency trends due to the physiological responses to increasing ca. We found stronger correlations with temperature during the growing season, demonstrating that the physiological response to ca changes modulated d13C and masked the climate signal. Since 1970 higher d13C values revealed {iWUE} improvements at all the sites exceeding values expected by an active response to the ca increase alone. These patterns were related to upward trends in temperatures, indicating that other factors are reinforcing stomatal closure in these forests. Narrower rings during the second half of the 20th century than in previous centuries were observed at four sites and after 1970 at all sites, providing no evidence for a possible {CO}2 ‘fertilization’ effect on growth. The {iWUE} improvements found for all the forests, reﬂecting both a ca rise and warmer conditions, seem to be insufﬁcient to compensate for the negative effects of the increasing water limitation on growth.},
-	pages = {2095--2112},
-	number = {6},
-	journaltitle = {Global Change Biology},
-	author = {Andreu-Hayles, Laia and Planells, Octavi and {GutiéRrez}, Emilia and Muntan, Elena and Helle, Gerhard and Anchukaitis, Kevin J. and Schleser, Gerhard H.},
-	urldate = {2018-03-23},
-	date = {2011-06},
-	langid = {english},
-	file = {Andreu-Hayles et al. - 2011 - Long tree-ring chronologies reveal 20th century in.pdf:C\:\\Users\\Brent Thorne\\Zotero\\storage\\H4GW7466\\Andreu-Hayles et al. - 2011 - Long tree-ring chronologies reveal 20th century in.pdf:application/pdf}
-}
-
-@article{santruckova_carbon_2007,
-	title = {Carbon Isotopes in Tree Rings of Norway Spruce Exposed to Atmospheric Pollution},
-	volume = {41},
-	issn = {0013-936X, 1520-5851},
-	url = {http://pubs.acs.org/doi/abs/10.1021/es070011t},
-	doi = {10.1021/es070011t},
-	pages = {5778--5782},
-	number = {16},
-	journaltitle = {Environmental Science \& Technology},
-	author = {Šantr˚učková, Hana and Šantr˚uček, Jiří and Šetlík, Jiří and Svoboda, Miroslav and Kopáček, Jiří},
-	urldate = {2018-03-23},
-	date = {2007-08},
-	langid = {english},
-	file = {Šantr˚učková et al. - 2007 - Carbon Isotopes in Tree Rings of Norway Spruce Exp.pdf:C\:\\Users\\Brent Thorne\\Zotero\\storage\\XV22547M\\Šantr˚učková et al. - 2007 - Carbon Isotopes in Tree Rings of Norway Spruce Exp.pdf:application/pdf}
-}
-
-@article{roy-leveillee_permafrost_nodate,
-	title = {Permafrost conditions near shorelines of oriented lakes in Old Crow Flats, Yukon Territory},
-	abstract = {Old Crow Flats is a 4300 km2 plain in the continuous permafrost of Northern Yukon. It contains over 2500 thermokarst lakes, many of which have rectilinear shorelines and tend to be oriented either {NE}-{SW} or {NW}-{SE}. Previous explanations of the shape and orientation of the lakes focussed on the underlying geological structure and the propagation of faults through the sediments to cause the alignment of the lakeshores. Permafrost conditions and shore erosion mechanisms observed at forested and tundra sites suggest that wind and patterns of ice-wedge development may be contributing to the occurrence of rectilinear shorelines in the open tundra of Old Crow Flats.},
-	pages = {8},
-	author = {Roy-Léveillée, P and Burn, C R},
-	file = {Roy-Léveillée and Burn - Permafrost conditions near shorelines of oriented .pdf:C\:\\Users\\Brent Thorne\\Zotero\\storage\\F47TUKRZ\\Roy-Léveillée and Burn - Permafrost conditions near shorelines of oriented .pdf:application/pdf}
-}
-
-@book{roots_ecoregions_2006,
-	location = {Summerland, B.C.},
-	title = {Ecoregions of the Yukon Territory: biophysical properties of Yukon landscapes},
-	isbn = {978-0-660-18828-7},
-	shorttitle = {Ecoregions of the Yukon Territory},
-	publisher = {Agriculture and Agri-Food Canada, Research Branch},
-	author = {Roots, Charles Frederick and Smith, C. A. Scott and Meikle, J. C and {Canada} and {Agriculture and Agri-Food Canada}},
-	date = {2006},
-	note = {{OCLC}: 1015906693},
-	file = {Roots et al. - 2006 - Ecoregions of the Yukon Territory biophysical pro.pdf:C\:\\Users\\Brent Thorne\\Zotero\\storage\\NL2CMXQC\\Roots et al. - 2006 - Ecoregions of the Yukon Territory biophysical pro.pdf:application/pdf}
-}
-
-@article{brock_spatial_2008,
-	title = {Spatial and temporal perspectives on spring break-up flooding in the Slave River Delta, {NWT}},
-	volume = {22},
-	issn = {08856087, 10991085},
-	url = {http://doi.wiley.com/10.1002/hyp.7008},
-	doi = {10.1002/hyp.7008},
-	abstract = {Spatial and temporal patterns of spring break-up ﬂooding in the Slave River Delta ({SRD}), Northwest Territories, are characterized during three years (2003–2005) using water isotope tracers and total inorganic suspended sediment ({TSS}) concentrations measured from lakewater samples collected shortly after the spring melt. Strongly contrasting spring melt periods led to a moderate ﬂood in 2003, no ﬂooding in 2004 and widespread ﬂooding in 2005. Flooded lakes have isotopically-depleted υ18O (υ2H) signatures, ranging between 19Ð2‰ ( 145‰) and 17Ð1‰ ( 146‰) and most have high {TSS} concentrations ({\textgreater}10 mg L 1), while non-ﬂooded lakes have more isotopically-enriched υ18O (υ2H) signatures, ranging between 18Ð2‰ ( 149‰) and 10Ð6‰ ( 118‰) and low {TSS} concentrations ({\textless}10 mg L 1). These results, in conjunction with the isotopic signatures of Slave River water and snowmelt, are used to estimate the proportion of river- or snowmelt-induced dilution in delta lakes during the spring of each study year. Calculations indicate river ﬂooding caused dilution of ¾70–100\% in delta lakes, while snowmelt dilution in the absence of river ﬂooding ranged from ¾0–56\%. A positive relationship exists between the spatial extent of spring ﬂooding in the {SRD} and level and discharge on the Slave River and upstream tributaries, suggesting that upstream ﬂow generation plays a key role in determining the magnitude of spring ﬂooding in the {SRD}. Parallel variations in the 46-year instrumental Slave River discharge record and ﬂood stratigraphy in the active delta indicate that there is potential for extending the ﬂood history of the {SRD}, a development that will contribute to a more robust understanding of the drivers of historic, contemporary and future ﬂood frequency in the delta. Copyright  2008 John Wiley \& Sons, Ltd.},
-	pages = {4058--4072},
-	number = {20},
-	journaltitle = {Hydrological Processes},
-	author = {Brock, B. E. and Wolfe, B. B. and Edwards, T. W. D.},
-	urldate = {2018-03-16},
-	date = {2008-09-30},
-	langid = {english},
-	file = {Brock et al. - 2008 - Spatial and temporal perspectives on spring break-.pdf:C\:\\Users\\Brent Thorne\\Zotero\\storage\\TXAM7JBF\\Brock et al. - 2008 - Spatial and temporal perspectives on spring break-.pdf:application/pdf}
-}
-
-@article{tondu_using_2013,
-	title = {Using Water Isotope Tracers to Develop the Hydrological Component of a Long-Term Aquatic Ecosystem Monitoring Program for a Northern Lake-Rich Landscape},
-	volume = {45},
-	issn = {1523-0430, 1938-4246},
-	url = {http://www.bioone.org/doi/abs/10.1657/1938-4246-45.4.594},
-	doi = {10.1657/1938-4246-45.4.594},
-	abstract = {Arctic lake-rich landscapes are vulnerable to climate change, but their remote locations present a challenge to develop effective approaches for monitoring hydroecological status and trends. Here, we structure the hydrological component of an aquatic ecosystem monitoring program that addresses concerns of Parks Canada (Vuntut National Park) and the Vuntut Gwitchin First Nation about changing water levels of Old Crow Flats ({OCF}), Yukon, Canada, a 5600-km2 thermokarst landscape recognized nationally and internationally for its ecological, historical, and cultural significance. The foundation of the monitoring program is 5 years (2007–2011) of water isotope data from 14 lakes situated in catchments that are representative of the land-cover and hydrological diversity of {OCF}. Isotopic compositions of input water (␦I) and evaporation-to-inflow (E/I) ratios, calculated using the coupled-isotope tracer method, provide key hydrological metrics for each lake over the 5-year sampling interval. From these time series, we identify monitoring lakes that are sensitive to changes in snowmelt, rainfall, and evaporation, and demonstrate the use of the Mann-Kendall test for determining statistically significant trends in the roles of these hydrological processes on lake-water balances. These approaches will serve to identify lake hydrological responses to climate change and variability from ongoing water isotope monitoring by Parks Canada, in partnership with the Vuntut Gwitchin Government, Wilfrid Laurier University, and the University of Waterloo.},
-	pages = {594--614},
-	number = {4},
-	journaltitle = {Arctic, Antarctic, and Alpine Research},
-	author = {Tondu, J. M. E. and Turner, K. W. and Wolfe, B. B. and Hall, R. I. and Edwards, T. W. D. and {McDonald}, I.},
-	urldate = {2018-03-14},
-	date = {2013-11},
-	langid = {english},
-	file = {Tondu et al. - 2013 - Using Water Isotope Tracers to Develop the Hydrolo.pdf:C\:\\Users\\Brent Thorne\\Zotero\\storage\\C3JYWJGC\\Tondu et al. - 2013 - Using Water Isotope Tracers to Develop the Hydrolo.pdf:application/pdf}
-}
-
-@thesis{hughes_detecting_2018,
-	location = {St. Catharines},
-	title = {Detecting spatial variation in hydrology and carbon export across a lake-rich permafrost landscape, Old Crow Flats, Yukon, Canada},
-	rights = {2018 Daniel Hughes},
-	abstract = {Lake-rich permafrost landscapes are widespread across northern regions and provide refuge for abundant wildlife and resources for local communities. Evidence suggests that these landscapes are highly sensitive to changes in climate. The traditional territory of the Vuntut Gwitchin First Nation, Old Crow Flats ({OCF}), {YK}, is a vast 5600-km2 lake-rich landscape that is internationally recognized for its ecological and cultural integrity. Pronounced changes in lake and river water levels and land cover compositions have been observed during recent decades by local community members and in scientific studies. Research presented here focuses on enhancing our understanding of spatial patterns in hydrology and carbon export across {OCF}, using a suite of water chemistry parameters, carbon concentrations and water and carbon isotope tracers. The spatial patterns detected are providing an important reference for ongoing investigations of how
-changing climate and lake-rich landscapes are influencing water and carbon balances.},
-	pagetotal = {116},
-	institution = {Brock University},
-	type = {phdthesis},
-	author = {Hughes, Daniel D.},
-	editora = {Turner, Kevin W.},
-	editoratype = {collaborator},
-	date = {2018-03},
-	file = {Hughes - 2018 - Detecting spatial variation in hydrology and carbo.pdf:C\:\\Users\\Brent Thorne\\Zotero\\storage\\C6IGSVPE\\Hughes - 2018 - Detecting spatial variation in hydrology and carbo.pdf:application/pdf}
-}
-
-@article{turner_characterising_2014,
-	title = {Characterising Runoff Generation Processes in a Lake-Rich Thermokarst Landscape (Old Crow Flats, Yukon, Canada) using δ $^{\textrm{18}}$ O, δ $^{\textrm{2}}$ H and d-excess Measurements: Characterising Runoff with Water Isotope Tracers in Old Crow Flats, Yukon},
-	volume = {25},
-	issn = {10456740},
-	url = {http://doi.wiley.com/10.1002/ppp.1802},
-	doi = {10.1002/ppp.1802},
-	shorttitle = {Characterising Runoff Generation Processes in a Lake-Rich Thermokarst Landscape (Old Crow Flats, Yukon, Canada) using δ $^{\textrm{18}}$ O, δ $^{\textrm{2}}$ H and d-excess Measurements},
-	pages = {53--59},
-	number = {1},
-	journaltitle = {Permafrost and Periglacial Processes},
-	author = {Turner, Kevin W. and Edwards, Thomas W. D. and Wolfe, Brent B.},
-	urldate = {2018-03-07},
-	date = {2014-01},
-	langid = {english},
-	file = {Turner et al. - 2014 - Characterising Runoff Generation Processes in a La.pdf:C\:\\Users\\Brent Thorne\\Zotero\\storage\\277B3VGI\\Turner et al. - 2014 - Characterising Runoff Generation Processes in a La.pdf:application/pdf}
-}
-
-@article{bouchard_paleolimnology_2017,
-	title = {Paleolimnology of thermokarst lakes: a window into permafrost landscape evolution},
-	volume = {3},
-	issn = {2368-7460},
-	url = {http://www.nrcresearchpress.com/doi/10.1139/as-2016-0022},
-	doi = {10.1139/as-2016-0022},
-	shorttitle = {Paleolimnology of thermokarst lakes},
-	pages = {91--117},
-	number = {2},
-	journaltitle = {Arctic Science},
-	author = {Bouchard, Frédéric and {MacDonald}, Lauren A. and Turner, Kevin W. and Thienpont, Joshua R. and Medeiros, Andrew S. and Biskaborn, Boris K. and Korosi, Jennifer and Hall, Roland I. and Pienitz, Reinhard and Wolfe, Brent B.},
-	urldate = {2018-03-07},
-	date = {2017-06},
-	langid = {english},
-	file = {Bouchard et al. - 2017 - Paleolimnology of thermokarst lakes a window into.pdf:C\:\\Users\\Brent Thorne\\Zotero\\storage\\RNIVRCN4\\Bouchard et al. - 2017 - Paleolimnology of thermokarst lakes a window into.pdf:application/pdf}
-}
-
-@article{tondu_limnological_2017,
-	title = {Limnological evolution of Zelma Lake, a recently drained thermokarst lake in Old Crow Flats (Yukon, Canada)},
-	volume = {3},
-	issn = {2368-7460},
-	url = {http://www.nrcresearchpress.com/doi/10.1139/as-2016-0012},
-	doi = {10.1139/as-2016-0012},
-	pages = {220--236},
-	number = {2},
-	journaltitle = {Arctic Science},
-	author = {Tondu, Jana M.E. and Turner, Kevin W. and Wiklund, Johan A. and Wolfe, Brent B. and Hall, Roland I. and {McDonald}, Ian},
-	urldate = {2018-03-07},
-	date = {2017-06},
-	langid = {english},
-	file = {Tondu et al. - 2017 - Limnological evolution of Zelma Lake, a recently d.pdf:C\:\\Users\\Brent Thorne\\Zotero\\storage\\9WQHG3HI\\Tondu et al. - 2017 - Limnological evolution of Zelma Lake, a recently d.pdf:application/pdf}
-}
-
-@article{fabre_using_2017,
-	title = {Using Modeling Tools to Better Understand Permafrost Hydrology},
-	volume = {9},
-	issn = {2073-4441},
-	url = {http://www.mdpi.com/2073-4441/9/6/418},
-	doi = {10.3390/w9060418},
-	pages = {418},
-	number = {12},
-	journaltitle = {Water},
-	author = {Fabre, Clément and Sauvage, Sabine and Tananaev, Nikita and Srinivasan, Raghavan and Teisserenc, Roman and Sánchez Pérez, José},
-	urldate = {2018-02-22},
-	date = {2017-06-10},
-	langid = {english},
-	file = {Fabre et al. - 2017 - Using Modeling Tools to Better Understand Permafro.pdf:C\:\\Users\\Brent Thorne\\Zotero\\storage\\HMRLJQCM\\Fabre et al. - 2017 - Using Modeling Tools to Better Understand Permafro.pdf:application/pdf}
-}
-
-@article{watts_unmanned_2012,
-	title = {Unmanned Aircraft Systems in Remote Sensing and Scientific Research: Classification and Considerations of Use},
-	volume = {4},
-	issn = {2072-4292},
-	url = {http://www.mdpi.com/2072-4292/4/6/1671},
-	doi = {10.3390/rs4061671},
-	shorttitle = {Unmanned Aircraft Systems in Remote Sensing and Scientific Research},
-	pages = {1671--1692},
-	number = {12},
-	journaltitle = {Remote Sensing},
-	author = {Watts, Adam C. and Ambrosia, Vincent G. and Hinkley, Everett A.},
-	urldate = {2018-02-01},
-	date = {2012-06-08},
-	langid = {english},
-	file = {Watts et al. - 2012 - Unmanned Aircraft Systems in Remote Sensing and Sc.pdf:C\:\\Users\\Brent Thorne\\Zotero\\storage\\XPPNT6PV\\Watts et al. - 2012 - Unmanned Aircraft Systems in Remote Sensing and Sc.pdf:application/pdf}
-}
-
-@article{schuur_vulnerability_2008,
-	title = {Vulnerability of permafrost carbon to climate change: Implications for the global carbon cycle},
-	volume = {58},
-	doi = {https://doi.org/10.1641/B580807},
-	shorttitle = {Vulnerability of permafrost carbon to climate change},
-	pages = {701--714},
-	number = {8},
-	journaltitle = {{AIBS} Bulletin},
-	author = {Schuur, Edward {AG} and Bockheim, James and Canadell, Josep G. and Euskirchen, Eugenie and Field, Christopher B. and Goryachkin, Sergey V. and Hagemann, Stefan and Kuhry, Peter and Lafleur, Peter M. and Lee, Hanna},
-	date = {2008},
-	file = {Schuur et al. - 2008 - Vulnerability of permafrost carbon to climate chan.pdf:C\:\\Users\\Brent Thorne\\Zotero\\storage\\RE2HU2NG\\Schuur et al. - 2008 - Vulnerability of permafrost carbon to climate chan.pdf:application/pdf}
-}
-
-@article{chenot_substrate_2017,
-	title = {Substrate Composition and Depth Affect Soil Moisture Behavior and Plant-Soil Relationship on Mediterranean Extensive Green Roofs},
-	volume = {9},
-	issn = {2073-4441},
-	url = {http://www.mdpi.com/2073-4441/9/11/817},
-	doi = {10.3390/w9110817},
-	pages = {817},
-	number = {11},
-	journaltitle = {Water},
-	author = {Chenot, Julie and Gaget, Elie and Moinardeau, Cannelle and Jaunatre, Renaud and Buisson, Elise and Dutoit, Thierry},
-	urldate = {2018-01-29},
-	date = {2017-10-25},
-	langid = {english},
-	file = {Chenot et al. - 2017 - Substrate Composition and Depth Affect Soil Moistu.pdf:C\:\\Users\\Brent Thorne\\Zotero\\storage\\82CYQTEA\\Chenot et al. - 2017 - Substrate Composition and Depth Affect Soil Moistu.pdf:application/pdf}
-}
-
-@article{gevaert_classification_2016,
-	title = {Classification of informal settlements through the integration of 2D and 3D features extracted from {UAV} data},
-	volume = {{III}-3},
-	issn = {2194-9050},
-	url = {http://www.isprs-ann-photogramm-remote-sens-spatial-inf-sci.net/III-3/317/2016/},
-	doi = {10.5194/isprs-annals-III-3-317-2016},
-	pages = {317--324},
-	journaltitle = {{ISPRS} Annals of Photogrammetry, Remote Sensing and Spatial Information Sciences},
-	author = {Gevaert, C. M. and Persello, C. and Sliuzas, R. and Vosselman, G.},
-	urldate = {2018-01-25},
-	date = {2016-06-06},
-	langid = {english},
-	file = {Gevaert et al. - 2016 - Classification of informal settlements through the.pdf:C\:\\Users\\Brent Thorne\\Zotero\\storage\\EUBADFJI\\Gevaert et al. - 2016 - Classification of informal settlements through the.pdf:application/pdf}
-}
-
-@article{strecha_developing_2012,
-	title = {Developing species specific vegetation maps using multi-spectral hyperspatial imagery from unmanned aerial vehicles},
-	volume = {3},
-	pages = {311--316},
-	journaltitle = {{ISPRS} Annals of the Photogrammetry, Remote Sensing and Spatial Information Sciences},
-	author = {Strecha, Christoph and Fletcher, Andrew and Lechner, Alex and Erskine, Peter and Fua, Pascal},
-	date = {2012},
-	file = {Strecha et al. - 2012 - Developing species specific vegetation maps using .pdf:C\:\\Users\\Brent Thorne\\Zotero\\storage\\73HGX3PY\\Strecha et al. - 2012 - Developing species specific vegetation maps using .pdf:application/pdf}
-}
-
-@article{schuh_soil_2017,
-	title = {Soil moisture redistribution and its effect on inter-annual active layer temperature and thickness variations in a dry loess terrace in Adventdalen, Svalbard},
-	volume = {11},
-	issn = {1994-0424},
-	url = {https://www.the-cryosphere.net/11/635/2017/},
-	doi = {10.5194/tc-11-635-2017},
-	pages = {635--651},
-	number = {1},
-	journaltitle = {The Cryosphere},
-	author = {Schuh, Carina and Frampton, Andrew and Christiansen, Hanne Hvidtfeldt},
-	urldate = {2018-01-25},
-	date = {2017-02-28},
-	langid = {english},
-	file = {Schuh et al. - 2017 - Soil moisture redistribution and its effect on int.pdf:C\:\\Users\\Brent Thorne\\Zotero\\storage\\DVIHARFQ\\Schuh et al. - 2017 - Soil moisture redistribution and its effect on int.pdf:application/pdf}
-}
-
-@article{minsley_sensitivity_2015,
-	title = {Sensitivity of airborne geophysical data to sublacustrine and near-surface permafrost thaw},
-	volume = {9},
-	issn = {1994-0424},
-	url = {http://www.the-cryosphere.net/9/781/2015/},
-	doi = {10.5194/tc-9-781-2015},
-	pages = {781--794},
-	number = {2},
-	journaltitle = {The Cryosphere},
-	author = {Minsley, B. J. and Wellman, T. P. and Walvoord, M. A. and Revil, A.},
-	urldate = {2018-01-24},
-	date = {2015-04-27},
-	langid = {english},
-	file = {Minsley et al. - 2015 - Sensitivity of airborne geophysical data to sublac.pdf:C\:\\Users\\Brent Thorne\\Zotero\\storage\\NRKLDFHM\\Minsley et al. - 2015 - Sensitivity of airborne geophysical data to sublac.pdf:application/pdf}
-}
-
-@article{kass_situ_2017,
-	title = {In situ nuclear magnetic resonance response of permafrost and active layer soil in boreal and tundra ecosystems},
-	volume = {11},
-	issn = {1994-0424},
-	url = {https://www.the-cryosphere.net/11/2943/2017/},
-	doi = {10.5194/tc-11-2943-2017},
-	pages = {2943--2955},
-	number = {6},
-	journaltitle = {The Cryosphere},
-	author = {Kass, M. Andy and Irons, Trevor P. and Minsley, Burke J. and Pastick, Neal J. and Brown, Dana R. N. and Wylie, Bruce K.},
-	urldate = {2018-01-24},
-	date = {2017-12-14},
-	langid = {english},
-	file = {Kass et al. - 2017 - In situ nuclear magnetic resonance response of per.pdf:C\:\\Users\\Brent Thorne\\Zotero\\storage\\73SJ7YKA\\Kass et al. - 2017 - In situ nuclear magnetic resonance response of per.pdf:application/pdf}
-}
-
-@article{walvoord_influence_2012,
-	title = {Influence of permafrost distribution on groundwater flow in the context of climate-driven permafrost thaw: Example from Yukon Flats Basin, Alaska, United States: {PERMAFROST} {DISTRIBUTION} {AND} {GROUNDWATER} {FLOW}},
-	volume = {48},
-	issn = {00431397},
-	url = {http://doi.wiley.com/10.1029/2011WR011595},
-	doi = {10.1029/2011WR011595},
-	shorttitle = {Influence of permafrost distribution on groundwater flow in the context of climate-driven permafrost thaw},
-	number = {7},
-	journaltitle = {Water Resources Research},
-	author = {Walvoord, Michelle A. and Voss, Clifford I. and Wellman, Tristan P.},
-	urldate = {2018-01-24},
-	date = {2012-07},
-	langid = {english},
-	file = {Walvoord et al. - 2012 - Influence of permafrost distribution on groundwate.pdf:C\:\\Users\\Brent Thorne\\Zotero\\storage\\528PXEWI\\Walvoord et al. - 2012 - Influence of permafrost distribution on groundwate.pdf:application/pdf}
-}
-
-@article{vonk_high_2013,
-	title = {High biolability of ancient permafrost carbon upon thaw: {BIOLABILITY} {OF} {ANCIENT} {PERMAFROST} {CARBON}},
-	volume = {40},
-	issn = {00948276},
-	url = {http://doi.wiley.com/10.1002/grl.50348},
-	doi = {10.1002/grl.50348},
-	shorttitle = {High biolability of ancient permafrost carbon upon thaw},
-	pages = {2689--2693},
-	number = {11},
-	journaltitle = {Geophysical Research Letters},
-	author = {Vonk, Jorien E. and Mann, Paul J. and Davydov, Sergey and Davydova, Anna and Spencer, Robert G. M. and Schade, John and Sobczak, William V. and Zimov, Nikita and Zimov, Sergei and Bulygina, Ekaterina and Eglinton, Timothy I. and Holmes, Robert M.},
-	urldate = {2018-01-24},
-	date = {2013-06-16},
-	langid = {english},
-	file = {Vonk et al. - 2013 - High biolability of ancient permafrost carbon upon.pdf:C\:\\Users\\Brent Thorne\\Zotero\\storage\\WVV4DVTG\\Vonk et al. - 2013 - High biolability of ancient permafrost carbon upon.pdf:application/pdf}
-}
-
-@article{striegl_decrease_2005,
-	title = {A decrease in discharge-normalized {DOC} export by the Yukon River during summer through autumn},
-	volume = {32},
-	issn = {0094-8276},
-	url = {http://doi.wiley.com/10.1029/2005GL024413},
-	doi = {10.1029/2005GL024413},
-	number = {21},
-	journaltitle = {Geophysical Research Letters},
-	author = {Striegl, Robert G. and Aiken, George R. and Dornblaser, Mark M. and Raymond, Peter A. and Wickland, Kimberly P.},
-	urldate = {2018-01-24},
-	date = {2005},
-	langid = {english},
-	file = {Striegl et al. - 2005 - A decrease in discharge-normalized DOC export by t.pdf:C\:\\Users\\Brent Thorne\\Zotero\\storage\\Y9FY79WV\\Striegl et al. - 2005 - A decrease in discharge-normalized DOC export by t.pdf:application/pdf}
-}
-
-@article{khedri_estimating_2017,
-	title = {Estimating soil moisture using {POLSAR} data: a machine learning approach},
-	volume = {{XLII}-4/W4},
-	issn = {2194-9034},
-	url = {https://www.int-arch-photogramm-remote-sens-spatial-inf-sci.net/XLII-4-W4/133/2017/},
-	doi = {10.5194/isprs-archives-XLII-4-W4-133-2017},
-	shorttitle = {{ESTIMATING} {SOIL} {MOISTURE} {USING} {POLSAR} {DATA}},
-	pages = {133--137},
-	journaltitle = {{ISPRS} - International Archives of the Photogrammetry, Remote Sensing and Spatial Information Sciences},
-	author = {Khedri, E. and Hasanlou, M. and Tabatabaeenejad, A.},
-	urldate = {2018-01-23},
-	date = {2017-09-26},
-	langid = {english},
-	file = {Khedri et al. - 2017 - Estimating soil moisture using POLSAR data a mach.pdf:C\:\\Users\\Brent Thorne\\Zotero\\storage\\LGWFBNJS\\Khedri et al. - 2017 - Estimating soil moisture using POLSAR data a mach.pdf:application/pdf}
-}
-
-@article{olefeldt_circumpolar_2016,
-	title = {Circumpolar distribution and carbon storage of thermokarst landscapes},
-	volume = {7},
-	issn = {2041-1723},
-	url = {http://www.nature.com/doifinder/10.1038/ncomms13043},
-	doi = {10.1038/ncomms13043},
-	pages = {13043},
-	journaltitle = {Nature Communications},
-	author = {Olefeldt, D. and Goswami, S. and Grosse, G. and Hayes, D. and Hugelius, G. and Kuhry, P. and {McGuire}, A. D. and Romanovsky, V. E. and Sannel, A.B.K. and Schuur, E.A.G. and Turetsky, M. R.},
-	urldate = {2018-01-23},
-	date = {2016-10-11},
-	file = {Olefeldt et al. - 2016 - Circumpolar distribution and carbon storage of the.pdf:C\:\\Users\\Brent Thorne\\Zotero\\storage\\SWZ2MFY7\\Olefeldt et al. - 2016 - Circumpolar distribution and carbon storage of the.pdf:application/pdf}
-}
-
-@article{bourgeau-chavez_development_2010,
-	title = {Development of calibration algorithms for selected water content reflectometry probes for burned and non-burned organic soils of Alaska},
-	volume = {19},
-	issn = {1049-8001},
-	url = {http://www.publish.csiro.au/?paper=WF07175},
-	doi = {10.1071/WF07175},
-	pages = {961},
-	number = {7},
-	journaltitle = {International Journal of Wildland Fire},
-	author = {Bourgeau-Chavez, Laura L. and Garwood, Gordon C. and Riordan, Kevin and Koziol, Benjamin W. and Slawski, James},
-	urldate = {2018-01-10},
-	date = {2010},
-	langid = {english},
-	file = {Bourgeau-Chavez et al. - 2010 - Development of calibration algorithms for selected.pdf:C\:\\Users\\Brent Thorne\\Zotero\\storage\\QTKBP7QQ\\Bourgeau-Chavez et al. - 2010 - Development of calibration algorithms for selected.pdf:application/pdf}
-}
-
-@inproceedings{whitcomb_method_2016,
-	title = {Method for upscaling in-situ soil moisture measurements for calibration and validation of smap soil moisture products},
-	isbn = {978-1-5090-3332-4},
-	url = {http://ieeexplore.ieee.org/document/7729419/},
-	doi = {10.1109/IGARSS.2016.7729419},
-	pages = {1641--1644},
-	publisher = {{IEEE}},
-	author = {Whitcomb, J. and Clewley, D. and Akbar, R. and Silva, A. and Berg, A. and Adams, J. and Moghaddam, M.},
-	editor = {{Uknown}},
-	urldate = {2018-01-05},
-	date = {2016-07}
-}
-
-@article{clewley_method_2017,
-	title = {A Method for Upscaling In Situ Soil Moisture Measurements to Satellite Footprint Scale Using Random Forests},
-	volume = {10},
-	issn = {1939-1404, 2151-1535},
-	url = {http://ieeexplore.ieee.org/document/7907192/},
-	doi = {10.1109/JSTARS.2017.2690220},
-	pages = {2663--2673},
-	number = {6},
-	journaltitle = {{IEEE} Journal of Selected Topics in Applied Earth Observations and Remote Sensing},
-	author = {Clewley, Daniel and Whitcomb, Jane B. and Akbar, Ruzbeh and Silva, Agnelo R. and Berg, Aaron and Adams, Justin R. and Caldwell, Todd and Entekhabi, Dara and Moghaddam, Mahta},
-	urldate = {2018-01-05},
-	date = {2017-06}
-}
-
-@article{street_what_2007,
-	title = {What is the relationship between changes in canopy leaf area and changes in photosynthetic {CO}2 flux in arctic ecosystems?},
-	volume = {95},
-	issn = {1365-2745},
-	url = {http://onlinelibrary.wiley.com/doi/10.1111/j.1365-2745.2006.01187.x/abstract},
-	doi = {10.1111/j.1365-2745.2006.01187.x},
-	abstract = {* 1The arctic environment is highly heterogeneous in terms of plant distribution and productivity. If we are to make regional scale predictions of carbon exchange it is necessary to find robust relationships that can simplify this variability. One such potential relationship is that of leaf area to photosynthetic {CO}2 flux at the canopy scale.
-* 2In this paper we assess the effectiveness of canopy leaf area in explaining variation in gross primary productivity ({GPP}): (i) across different vegetation types; (ii) at various stages of leaf development; and (iii) under enhanced nutrient availability. To do this we measure net {CO}2 flux light response curves with a 1 × 1 m chamber, and calculate {GPP} at a photosynthetic photon flux density ({PPFD}) of 600 µmol m−2 s−1.
-* 3At a subarctic site in Sweden, we report 10-fold variation in {GPP} among natural vegetation types with leaf area index ({LAI}) values of 0.05–2.31 m2 m−2. At a site of similar latitude in Alaska we document substantially elevated rates of {GPP} in fertilized vegetation.
-* 4We can explain 80\% of the observed variation in {GPP} in natural vegetation (including vegetation measured before deciduous leaf bud burst) by leaf area alone, when leaf area is predicted from measurements of normalized difference vegetation index ({NDVI}).
-* 5In fertilized vegetation the relative increase in leaf area between control and fertilized treatments exceeds the relative increase in {GPP}. This suggests that higher leaf area causes increased self-shading, or that lower leaf nitrogen per unit leaf area causes a reduction in the rate of photosynthesis.
-* 6The results of this study indicate that canopy leaf area is an excellent predictor of {GPP} in diverse low arctic tundra, across a wide range of plant functional types.},
-	pages = {139--150},
-	number = {1},
-	journaltitle = {Journal of Ecology},
-	author = {Street, L. E. and Shaver, G. R. and Williams, M. and Van Wijk, M. T.},
-	urldate = {2018-01-04},
-	date = {2007-01-01},
-	langid = {english},
-	keywords = {Alaska, Arctic tundra, carbon balance, {CO}2 flux, gross primary productivity, landscape heterogeneity, leaf area index, light response, normalized difference vegetation index, Sweden},
-	file = {Street et al. - 2007 - What is the relationship between changes in canopy.pdf:C\:\\Users\\Brent Thorne\\Zotero\\storage\\4TA5BNA3\\Street et al. - 2007 - What is the relationship between changes in canopy.pdf:application/pdf}
-}
-
-@article{von_fischer_vegetation_2010,
-	title = {Vegetation height and other controls of spatial variability in methane emissions from the Arctic coastal tundra at Barrow, Alaska},
-	volume = {115},
-	issn = {2156-2202},
-	url = {http://onlinelibrary.wiley.com/doi/10.1029/2009JG001283/abstract},
-	doi = {10.1029/2009JG001283},
-	abstract = {We conducted measurements of methane ({CH}4) emission and ecosystem respiration on {\textgreater}200 points across the Arctic coastal tundra near Barrow, Alaska, United States, in July 2007 and August 2008. This site contains broad diversity in tundra microtopography, including polygonal tundra, thaw lakes, and drained lake basins. In 2007, we surveyed {CH}4 emissions across this landscape, and found that soil water content was the strongest control of methane emission rate, such that emission rates rose exponentially with water content. However, there was considerable residual variation in {CH}4 emission in the wettest soils ({\textgreater}80\% volumetric water content) where {CH}4 emissions were highest. A statistical analysis of possible soil and plant controls on {CH}4 emission rates from these wet soils revealed that vegetation height (especially of Carex aquatilis) was the best predictor, with ecosystem respiration and permafrost depth as significant copredictors. To evaluate whether plant height served as a proxy for aboveground plant biomass, or gross primary production, we conducted a survey of {CH}4 emission rates from wet, Carex-dominated sites in 2008, coincidently measuring these candidate predictors. Surprisingly, vegetation height remained the best predictor of {CH}4 emission rates, with {CH}4 emissions rising exponentially with vegetation height. We hypothesize that taller plants have more extensive root systems that both stimulate more methanogenesis and conduct more pore water {CH}4 to the atmosphere. We anticipate that the magnitude of the climate change–{CH}4 feedback in the Arctic Coastal Plain will strongly depend on how permafrost thaw alters the ecology of Carex aquatilis.},
-	pages = {G00I03},
-	issue = {G4},
-	journaltitle = {Journal of Geophysical Research: Biogeosciences},
-	shortjournal = {J. Geophys. Res.},
-	author = {von Fischer, Joseph C. and Rhew, Robert C. and Ames, Gregory M. and Fosdick, Bailey K. and von Fischer, Paul E.},
-	urldate = {2018-01-04},
-	date = {2010-12-01},
-	langid = {english},
-	keywords = {0404 Anoxic and hypoxic environments, 0428 Carbon cycling, 0476 Plant ecology, 0490 Trace gases, 0497 Wetlands, Carex aquatilis, methane, tundra},
-	file = {Snapshot:C\:\\Users\\Brent Thorne\\Zotero\\storage\\L22276TK\\abstract.html:text/html;von Fischer et al. - 2010 - Vegetation height and other controls of spatial va.pdf:C\:\\Users\\Brent Thorne\\Zotero\\storage\\2J374FDT\\von Fischer et al. - 2010 - Vegetation height and other controls of spatial va.pdf:application/pdf}
-}
-
-@article{delworth_influence_1988,
-	title = {The Influence of Potential Evaporation on the Variabilities of Simulated Soil Wetness and Climate},
-	volume = {1},
-	url = {http://journals.ametsoc.org/doi/abs/10.1175/1520-0442%281988%29001%3C0523%3ATIOPEO%3E2.0.CO%3B2},
-	doi = {10.1175/1520-0442(1988)001<0523:TIOPEO>2.0.CO;2},
-	abstract = {Abstract An atmospheric general circulation model with prescribed sea surface temperature and cloudiness was integrated for 50 years in order to study atmosphere-land surface interactions. The temporal variability of model soil moisture and precipitation have been studied in an effort to understand the interactions of these variables with other components of the climate system. Temporal variability analysis has shown that the spectra of monthly mean precipitation over land are close to white at all latitudes, with total variance decreasing poleward. In contrasts, the spectra of soil moisture are red, and become more red with increasing latitude. As a measure of this redness, half of the total variance of a composite tropical soil moisture spectrum occurs at periods longer than nine months, while at high latitudes, half of the total variance of a composite soil moisture spectrum occurs at periods longer than 22 months. The spectra of soil moisture also exhibit marked longitudinal variations. These spectral results may be viewed in the light of stochastic theory. The formulation of the {GFDL} soil moisture parameterization is mathematically similar to a stochastic process. According to this model, forcing of a system by an input white noise variable (precipitation) will yield an output variable (soil moisture) with a red spectrum, the redness of which is controlled by a damping term (potential evaporation). Thus, the increasingly red nature of the soil moisture spectra at higher latitudes is a result of declining potential evaporation values at higher latitudes. Physically, soil moisture excesses are dissipated more slowly at high latitudes where the energy available for evaporation is small. Some of the longitudinal variations in soil moisture spectra result from longitudinal variations in potential evaporation, while others are explicable in terms of the value of the ratio of potential evaporation to precipitation. Regions where this value is less than one are characterized by frequent runoff and short time scales of soil moisture variability. By preventing excessive positive anomalies of soil moisture, the runoff process hastens the return of soil moisture values to their mean state, thereby shortening soil moisture time scales. Through the use of a second {GCM} integration with prescribed soil moisture, it was shown that interactive sod moisture may substantially increase summer surface air temperature variability. Soil moisture interacts with the atmosphere primarily through the surface energy balance. The degree of soil saturation strongly influences the atmosphere of outgoing energy from the surface between the latent and sensible heat fluxes. Interactive soil moisture allows larger variations of these fluxes, thereby increasing the variance of surface air temperature. Because the flux of latent heat is directly proportional to potential evaporation under conditions of sufficient moisture, the influence of soil moisture on the atmosphere is greatest when the potential evaporation value is large. This occurs most frequently in the tropics and summer hemisphere extratropics.},
-	pages = {523--547},
-	number = {5},
-	journaltitle = {Journal of Climate},
-	author = {Delworth, Thomas L. and Manabe, Syukuro},
-	date = {1988},
-	note = {bibtex[eprint=http://journals.ametsoc.org/doi/pdf/10.1175/1520-0442\%281988\%29001\%3C0523\%3ATIOPEO\%3E2.0.{CO}\%3B2]},
-	file = {Delworth and Manabe - 1988 - The Influence of Potential Evaporation on the Vari.pdf:C\:\\Users\\Brent Thorne\\Zotero\\storage\\4IRHH9AM\\Delworth and Manabe - 1988 - The Influence of Potential Evaporation on the Vari.pdf:application/pdf}
-}
-
-@article{chen_temporal_2014,
-	title = {Temporal and spatial pattern of thermokarst lake area changes at Yukon Flats, Alaska},
-	volume = {28},
-	issn = {08856087},
-	url = {http://doi.wiley.com/10.1002/hyp.9642},
-	doi = {10.1002/hyp.9642},
-	shorttitle = {Temporal and spatial pattern of thermokarst lake area changes at Yukon Flats, Alaska},
-	pages = {837--852},
-	number = {3},
-	journaltitle = {Hydrological Processes},
-	author = {Chen, Min and Rowland, Joel C. and Wilson, Cathy J. and Altmann, Garrett L. and Brumby, Steven P.},
-	urldate = {2018-01-03},
-	date = {2014-01-30},
-	langid = {english},
-	file = {Chen et al. - 2014 - Temporal and spatial pattern of thermokarst lake a.pdf:C\:\\Users\\Brent Thorne\\Zotero\\storage\\L3765CJI\\Chen et al. - 2014 - Temporal and spatial pattern of thermokarst lake a.pdf:application/pdf}
-}
-
-@article{arp_depth_2015,
-	title = {Depth, ice thickness, and ice-out timing cause divergent hydrologic responses among Arctic lakes: {ICE} {CAUSES} {DIVERGENT} {HYDROLOGIC} {RESPONSES} {AMONG} {ARCTIC} {LAKES}},
-	volume = {51},
-	issn = {00431397},
-	url = {http://doi.wiley.com/10.1002/2015WR017362},
-	doi = {10.1002/2015WR017362},
-	shorttitle = {Depth, ice thickness, and ice-out timing cause divergent hydrologic responses among Arctic lakes},
-	pages = {9379--9401},
-	number = {12},
-	journaltitle = {Water Resources Research},
-	author = {Arp, Christopher D. and Jones, Benjamin M. and Liljedahl, Anna K. and Hinkel, Kenneth M. and Welker, Jeffery A.},
-	urldate = {2018-01-03},
-	date = {2015-12},
-	langid = {english},
-	file = {Arp et al. - 2015 - Depth, ice thickness, and ice-out timing cause div.pdf:C\:\\Users\\Brent Thorne\\Zotero\\storage\\VB4TAZA6\\Arp et al. - 2015 - Depth, ice thickness, and ice-out timing cause div.pdf:application/pdf}
-}
-
-@article{minsley_airborne_2012,
-	title = {Airborne electromagnetic imaging of discontinuous permafrost: {AEM} {IMAGING} {OF} {PERMAFROST}},
-	volume = {39},
-	issn = {00948276},
-	url = {http://doi.wiley.com/10.1029/2011GL050079},
-	doi = {10.1029/2011GL050079},
-	shorttitle = {Airborne electromagnetic imaging of discontinuous permafrost},
-	pages = {n/a--n/a},
-	number = {2},
-	journaltitle = {Geophysical Research Letters},
-	author = {Minsley, Burke J. and Abraham, Jared D. and Smith, Bruce D. and Cannia, James C. and Voss, Clifford I. and Jorgenson, M. Torre and Walvoord, Michelle A. and Wylie, Bruce K. and Anderson, Lesleigh and Ball, Lyndsay B. and Deszcz-Pan, Maryla and Wellman, Tristan P. and Ager, Thomas A.},
-	urldate = {2018-01-03},
-	date = {2012-01},
-	langid = {english},
-	file = {Minsley et al. - 2012 - Airborne electromagnetic imaging of discontinuous .pdf:C\:\\Users\\Brent Thorne\\Zotero\\storage\\8J2PUMRQ\\Minsley et al. - 2012 - Airborne electromagnetic imaging of discontinuous .pdf:application/pdf}
-}
-
-@article{liu_estimating_2012,
-	title = {Estimating 1992-2000 average active layer thickness on the Alaskan North Slope from remotely sensed surface subsidence: {REMOTELY} {SENSING} {ACTIVE} {LAYER} {THICKNESS}},
-	volume = {117},
-	issn = {01480227},
-	url = {http://doi.wiley.com/10.1029/2011JF002041},
-	doi = {10.1029/2011JF002041},
-	shorttitle = {Estimating 1992-2000 average active layer thickness on the Alaskan North Slope from remotely sensed surface subsidence},
-	pages = {n/a--n/a},
-	issue = {F1},
-	journaltitle = {Journal of Geophysical Research: Earth Surface},
-	author = {Liu, Lin and Schaefer, Kevin and Zhang, Tingjun and Wahr, John},
-	urldate = {2018-01-03},
-	date = {2012-03},
-	langid = {english},
-	file = {Liu et al. - 2012 - Estimating 1992-2000 average active layer thicknes.pdf:C\:\\Users\\Brent Thorne\\Zotero\\storage\\YZH67QQQ\\Liu et al. - 2012 - Estimating 1992-2000 average active layer thicknes.pdf:application/pdf}
-}
-
-@thesis{thorne_using_2017,
-	location = {St. Catharines},
-	title = {Using unmanned aviation vehicle ({UAV}) multi-spectral remote sensing to detect shrub vegetation characteristics in Old Crow Flats, Yukon},
-	rights = {Copyright (c) William Brent Thorne 2017},
-	abstract = {Climate change is having major impacts on northern regions. Shrub vegetation proliferation is an example of how land cover is being modified, which can influence ground biophysical conditions and the hydrology of lake-rich landscapes. These impacts are being investigated in Old Crow Flats, Yukon, traditional territory of the Vuntut Gwitchin First Nation who rely on the resources of this landscape to support their traditional lifestyle. Vegetation conditions of two 90-m x 90-m plots were investigated using dendrochronology and high-resolution multi-spectral images captured using an unmanned aviation vehicle ({UAV}). Dendrochronology results showed that the average age for shrub vegetation was 28 years old (standard deviation = 13.65). The dominant species in the two plots included green alder (Alnus viridis,), dwarf birch (Betula nan), and willow (Salix sp.). Red and near-infrared bands of the multi-spectral images were used to calculate normalized difference vegetation index values ({NDVI}) for the two plots, which is an indicator of plant chlorophyll and phytomass. Vegetation characteristics measured on the ground were compared to {NDVI} values to identify whether {NDVI} may be used to differentiate species and plant age. Results of this research show that coupling {UAV} technology with ground measurements may be highly useful for identifying shrub species and age in lake-rich Arctic landscapes such as Old Crow Flats, Yukon. Integrated approaches being developed here are enhancing hydroecological monitoring protocols, which are providing the basis to identify how
-this landscape is responding to a changing climate.},
-	pagetotal = {49},
-	institution = {Brock University},
-	type = {Undergraduate Thesis},
-	author = {Thorne, W. Brent},
-	editora = {Turner, Kevin W.},
-	editoratype = {collaborator},
-	date = {2017},
-	keywords = {hydrology, {NDVI}, remote sensing, shrub, Thorne, {UAV}, unmanned aviation vehicle, vegetation},
-	file = {Thorne - 2017 - Using unmanned aviation vehicle (UAV) multi-spectr.pdf:C\:\\Users\\Brent Thorne\\Zotero\\storage\\U7ZUJ56M\\Thorne - 2017 - Using unmanned aviation vehicle (UAV) multi-spectr.pdf:application/pdf}
-}
-
-@incollection{roy-leveillee_old_2017,
-	title = {Old Crow Flats: Thermokarst Lakes in the Forest–Tundra Transition},
-	url = {http://link.springer.com/chapter/10.1007/978-3-319-44595-3_19},
-	shorttitle = {Old Crow Flats},
-	pages = {267--276},
-	booktitle = {Landscapes and Landforms of Western Canada},
-	publisher = {Springer},
-	author = {Roy-Leveillee, Pascale and Burn, Christopher R.},
-	editor = {Slaymaker, Olav},
-	urldate = {2017-07-31},
-	date = {2017},
-	file = {Roy-Léveillée and Burn - 2017 - Old Crow Flats Thermokarst Lakes in the Forest–Tu.pdf:C\:\\Users\\Brent Thorne\\Zotero\\storage\\TZQISKEQ\\Roy-Léveillée and Burn - 2017 - Old Crow Flats Thermokarst Lakes in the Forest–Tu.pdf:application/pdf}
-}
-
-@article{engram_characterization_2013,
-	title = {Characterization of L-band synthetic aperture radar ({SAR}) backscatter from floating and grounded thermokarst lake ice in Arctic Alaska},
-	volume = {7},
-	issn = {1994-0424},
-	url = {http://www.the-cryosphere.net/7/1741/2013/},
-	doi = {10.5194/tc-7-1741-2013},
-	pages = {1741--1752},
-	number = {6},
-	journaltitle = {The Cryosphere},
-	author = {Engram, M. and Anthony, K. W. and Meyer, F. J. and Grosse, G.},
-	urldate = {2018-01-02},
-	date = {2013-11-14},
-	langid = {english},
-	file = {Engram et al. - 2013 - Characterization of L-band synthetic aperture rada.pdf:C\:\\Users\\Brent Thorne\\Zotero\\storage\\4WZ9FCKA\\Engram et al. - 2013 - Characterization of L-band synthetic aperture rada.pdf:application/pdf}
-}
-
-@article{minsley_evidence_2016,
-	title = {Evidence for nonuniform permafrost degradation after fire in boreal landscapes: {MAPPING} {POSTFIRE} {PERMAFROST} {DEGRADATION}},
-	volume = {121},
-	issn = {21699003},
-	url = {http://doi.wiley.com/10.1002/2015JF003781},
-	doi = {10.1002/2015JF003781},
-	shorttitle = {Evidence for nonuniform permafrost degradation after fire in boreal landscapes},
-	pages = {320--335},
-	number = {2},
-	journaltitle = {Journal of Geophysical Research: Earth Surface},
-	author = {Minsley, Burke J. and Pastick, Neal J. and Wylie, Bruce K. and Brown, Dana R. N. and Andy Kass, M.},
-	urldate = {2018-01-02},
-	date = {2016-02},
-	langid = {english},
-	file = {Minsley et al. - 2016 - Evidence for nonuniform permafrost degradation aft.pdf:C\:\\Users\\Brent Thorne\\Zotero\\storage\\BPUM7RZI\\Minsley et al. - 2016 - Evidence for nonuniform permafrost degradation aft.pdf:application/pdf}
-}
-
-@article{tabatabaeenejad_p-band_2015,
-	title = {P-Band Radar Retrieval of Subsurface Soil Moisture Profile as a Second-Order Polynomial: First {AirMOSS} Results},
-	volume = {53},
-	issn = {0196-2892, 1558-0644},
-	url = {http://ieeexplore.ieee.org/document/6839044/},
-	doi = {10.1109/TGRS.2014.2326839},
-	shorttitle = {P-Band Radar Retrieval of Subsurface Soil Moisture Profile as a Second-Order Polynomial},
-	pages = {645--658},
-	number = {2},
-	journaltitle = {{IEEE} Transactions on Geoscience and Remote Sensing},
-	author = {Tabatabaeenejad, Alireza and Burgin, Mariko and {Xueyang Duan} and Moghaddam, Mahta},
-	urldate = {2018-01-02},
-	date = {2015-02},
-	file = {Tabatabaeenejad et al. - 2015 - P-Band Radar Retrieval of Subsurface Soil Moisture.pdf:C\:\\Users\\Brent Thorne\\Zotero\\storage\\CGW3899H\\Tabatabaeenejad et al. - 2015 - P-Band Radar Retrieval of Subsurface Soil Moisture.pdf:application/pdf}
-}
-
-@article{sadeghi_advancing_2016,
-	title = {Advancing {NASA}’s {AirMOSS} P-Band Radar Root Zone Soil Moisture Retrieval Algorithm via Incorporation of Richards’ Equation},
-	volume = {9},
-	issn = {2072-4292},
-	url = {http://www.mdpi.com/2072-4292/9/1/17},
-	doi = {10.3390/rs9010017},
-	pages = {17},
-	number = {1},
-	journaltitle = {Remote Sensing},
-	author = {Sadeghi, Morteza and Tabatabaeenejad, Alireza and Tuller, Markus and Moghaddam, Mahta and Jones, Scott},
-	urldate = {2018-01-02},
-	date = {2016-12-28},
-	langid = {english},
-	file = {Sadeghi et al. - 2016 - Advancing NASA’s AirMOSS P-Band Radar Root Zone So.pdf:C\:\\Users\\Brent Thorne\\Zotero\\storage\\QBJQWC47\\Sadeghi et al. - 2016 - Advancing NASA’s AirMOSS P-Band Radar Root Zone So.pdf:application/pdf}
-}
-
-@article{riley_characterizing_2014,
-	title = {Characterizing coarse-resolution watershed soil moisture heterogeneity using fine-scale simulations},
-	volume = {18},
-	issn = {1607-7938},
-	url = {http://www.hydrol-earth-syst-sci.net/18/2463/2014/},
-	doi = {10.5194/hess-18-2463-2014},
-	pages = {2463--2483},
-	number = {7},
-	journaltitle = {Hydrology and Earth System Sciences},
-	author = {Riley, W. J. and Shen, C.},
-	urldate = {2018-01-02},
-	date = {2014-07-03},
-	langid = {english},
-	file = {Riley and Shen - 2014 - Characterizing coarse-resolution watershed soil mo.pdf:C\:\\Users\\Brent Thorne\\Zotero\\storage\\RBQPC368\\Riley and Shen - 2014 - Characterizing coarse-resolution watershed soil mo.pdf:application/pdf}
-}
-
-@article{lawrence_permafrost_2015,
-	title = {Permafrost thaw and resulting soil moisture changes regulate projected high-latitude {CO} $_{\textrm{2}}$ and {CH} $_{\textrm{4}}$ emissions},
-	volume = {10},
-	issn = {1748-9326},
-	url = {http://stacks.iop.org/1748-9326/10/i=9/a=094011?key=crossref.0ec3ff97879a814d0c3dfaacde810d23},
-	doi = {10.1088/1748-9326/10/9/094011},
-	pages = {094011},
-	number = {9},
-	journaltitle = {Environmental Research Letters},
-	author = {Lawrence, D M and Koven, C D and Swenson, S C and Riley, W J and Slater, A G},
-	urldate = {2018-01-02},
-	date = {2015-09-01},
-	file = {Lawrence et al. - 2015 - Permafrost thaw and resulting soil moisture change.pdf:C\:\\Users\\Brent Thorne\\Zotero\\storage\\BIWWD7UN\\Lawrence et al. - 2015 - Permafrost thaw and resulting soil moisture change.pdf:application/pdf}
-}
-
-@article{myers-smith_shrub_2013,
-	title = {Shrub canopies influence soil temperatures but not nutrient dynamics: An experimental test of tundra snow-shrub interactions},
-	volume = {3},
-	issn = {20457758},
-	url = {http://doi.wiley.com/10.1002/ece3.710},
-	doi = {10.1002/ece3.710},
-	shorttitle = {Shrub canopies influence soil temperatures but not nutrient dynamics},
-	pages = {3683--3700},
-	number = {11},
-	journaltitle = {Ecology and Evolution},
-	author = {Myers-Smith, Isla H. and Hik, David S.},
-	urldate = {2018-01-01},
-	date = {2013-10},
-	langid = {english},
-	file = {Myers-Smith_et_al-2013-Ecology_and_Evolution.pdf:C\:\\Users\\Brent Thorne\\Zotero\\storage\\BXJH6H4S\\Myers-Smith_et_al-2013-Ecology_and_Evolution.pdf:application/pdf}
-}
-
-@article{jorgenson_remote_2016,
-	title = {Remote Sensing of Landscape Change in Permafrost Regions: Remote Sensing of Landscape Change in Permafrost Regions},
-	volume = {27},
-	issn = {10456740},
-	url = {http://doi.wiley.com/10.1002/ppp.1914},
-	doi = {10.1002/ppp.1914},
-	shorttitle = {Remote Sensing of Landscape Change in Permafrost Regions},
-	pages = {324--338},
-	number = {4},
-	journaltitle = {Permafrost and Periglacial Processes},
-	author = {Jorgenson, Mark Torre and Grosse, Guido},
-	urldate = {2017-12-23},
-	date = {2016-10},
-	langid = {english},
-	file = {Jorgenson_et_al-2016-Permafrost_and_Periglacial_Processes.pdf:C\:\\Users\\Brent Thorne\\Zotero\\storage\\A2EE3KVX\\Jorgenson_et_al-2016-Permafrost_and_Periglacial_Processes.pdf:application/pdf}
-}
-
-@article{gilabert_generalized_2002,
-	title = {A generalized soil-adjusted vegetation index},
-	volume = {82},
-	pages = {303--310},
-	number = {2},
-	journaltitle = {Remote Sensing of environment},
-	author = {Gilabert, M. A. and González-Piqueras, J. and Garcıa-Haro, F. J. and Meliá, J.},
-	date = {2002},
-	file = {Gilabert et al. - 2002 - A generalized soil-adjusted vegetation index.pdf:C\:\\Users\\Brent Thorne\\Zotero\\storage\\ET3DR4XH\\Gilabert et al. - 2002 - A generalized soil-adjusted vegetation index.pdf:application/pdf}
-}
-
-@article{huete_soil-adjusted_1988,
-	title = {A soil-adjusted vegetation index ({SAVI})},
-	volume = {25},
-	pages = {295--309},
-	number = {3},
-	journaltitle = {Remote sensing of environment},
-	author = {Huete, Alfredo R.},
-	date = {1988},
-	file = {Huete - 1988 - A soil-adjusted vegetation index (SAVI).pdf:C\:\\Users\\Brent Thorne\\Zotero\\storage\\V6TUS789\\Huete - 1988 - A soil-adjusted vegetation index (SAVI).pdf:application/pdf}
-}
-
-@article{candiago_evaluating_2015,
-	title = {Evaluating Multispectral Images and Vegetation Indices for Precision Farming Applications from {UAV} Images},
-	volume = {7},
-	issn = {2072-4292},
-	url = {http://www.mdpi.com/2072-4292/7/4/4026/},
-	doi = {10.3390/rs70404026},
-	pages = {4026--4047},
-	number = {4},
-	journaltitle = {Remote Sensing},
-	author = {Candiago, Sebastian and Remondino, Fabio and De Giglio, Michaela and Dubbini, Marco and Gattelli, Mario},
-	urldate = {2017-12-20},
-	date = {2015-04-02},
-	langid = {english},
-	file = {Candiago et al. - 2015 - Evaluating Multispectral Images and Vegetation Ind.pdf:C\:\\Users\\Brent Thorne\\Zotero\\storage\\KQXU52BU\\Candiago et al. - 2015 - Evaluating Multispectral Images and Vegetation Ind.pdf:application/pdf}
-}
-
-@article{albetis_detection_2017,
-	title = {Detection of Flavescence dorée Grapevine Disease Using Unmanned Aerial Vehicle ({UAV}) Multispectral Imagery},
-	volume = {9},
-	issn = {2072-4292},
-	url = {http://www.mdpi.com/2072-4292/9/4/308},
-	doi = {10.3390/rs9040308},
-	pages = {308},
-	number = {4},
-	journaltitle = {Remote Sensing},
-	author = {Albetis, Johanna and Duthoit, Sylvie and Guttler, Fabio and Jacquin, Anne and Goulard, Michel and Poilvé, Hervé and Féret, Jean-Baptiste and Dedieu, Gérard},
-	urldate = {2017-12-20},
-	date = {2017-03-24},
-	langid = {english},
-	file = {Albetis et al. - 2017 - Detection of Flavescence dorée Grapevine Disease U.pdf:C\:\\Users\\Brent Thorne\\Zotero\\storage\\TG2QSUD4\\Albetis et al. - 2017 - Detection of Flavescence dorée Grapevine Disease U.pdf:application/pdf}
-}
-
-@article{lopez-lopez_early_2016,
-	title = {Early Detection and Quantification of Almond Red Leaf Blotch Using High-Resolution Hyperspectral and Thermal Imagery},
-	volume = {8},
-	issn = {2072-4292},
-	url = {http://www.mdpi.com/2072-4292/8/4/276},
-	doi = {10.3390/rs8040276},
-	pages = {276},
-	number = {4},
-	journaltitle = {Remote Sensing},
-	author = {López-López, Manuel and Calderón, Rocío and González-Dugo, Victoria and Zarco-Tejada, Pablo and Fereres, Elías},
-	urldate = {2017-12-20},
-	date = {2016-03-25},
-	langid = {english},
-	file = {López-López et al. - 2016 - Early Detection and Quantification of Almond Red L.pdf:C\:\\Users\\Brent Thorne\\Zotero\\storage\\6KFIEIW3\\López-López et al. - 2016 - Early Detection and Quantification of Almond Red L.pdf:application/pdf}
-}
-
-@article{balasubramaniam_biotic_2017,
-	title = {Biotic responses to multiple aquatic and terrestrial gradients in shallow subarctic lakes (Old Crow Flats, Yukon, Canada)},
-	volume = {3},
-	issn = {2368-7460},
-	url = {http://www.nrcresearchpress.com/doi/10.1139/as-2016-0021},
-	doi = {10.1139/as-2016-0021},
-	pages = {277--300},
-	number = {2},
-	journaltitle = {Arctic Science},
-	author = {Balasubramaniam, A.M. and Medeiros, A.S. and Turner, K.W. and Hall, R.I. and Wolfe, B.B.},
-	urldate = {2017-12-18},
-	date = {2017-06},
-	langid = {english},
-	file = {Balasubramaniam et al. - 2017 - Biotic responses to multiple aquatic and terrestri.pdf:C\:\\Users\\Brent Thorne\\Zotero\\storage\\Q5WUQE2F\\Balasubramaniam et al. - 2017 - Biotic responses to multiple aquatic and terrestri.pdf:application/pdf}
-}
-
-@article{walvoord_hydrologic_2016,
-	title = {Hydrologic Impacts of Thawing Permafrost—A Review},
-	volume = {15},
-	issn = {1539-1663},
-	url = {https://dl.sciencesocieties.org/publications/vzj/abstracts/15/6/vzj2016.01.0010},
-	doi = {10.2136/vzj2016.01.0010},
-	pages = {0},
-	number = {6},
-	journaltitle = {Vadose Zone Journal},
-	author = {Walvoord, Michelle A. and Kurylyk, Barret L.},
-	urldate = {2017-12-18},
-	date = {2016},
-	langid = {english}
-}
-
-@article{wang_analysis_2017,
-	title = {Analysis of Differences in Phenology Extracted from the Enhanced Vegetation Index and the Leaf Area Index},
-	volume = {17},
-	issn = {1424-8220},
-	url = {http://www.mdpi.com/1424-8220/17/9/1982},
-	doi = {10.3390/s17091982},
-	pages = {1982},
-	number = {9},
-	journaltitle = {Sensors},
-	author = {Wang, Cong and Li, Jing and Liu, Qinhuo and Zhong, Bo and Wu, Shanlong and Xia, Chuanfu},
-	urldate = {2017-12-07},
-	date = {2017-08-30},
-	langid = {english},
-	file = {Wang et al. - 2017 - Analysis of Differences in Phenology Extracted fro.pdf:C\:\\Users\\Brent Thorne\\Zotero\\storage\\6QVN5DJJ\\Wang et al. - 2017 - Analysis of Differences in Phenology Extracted fro.pdf:application/pdf}
-}
-
-@article{filippini_alba_geotechnologies_2017,
-	title = {Geotechnologies and Soil Mapping for Delimitation of Management Zones as an Approach to Precision Viticulture},
-	volume = {2017},
-	issn = {1687-7667, 1687-7675},
-	url = {https://www.hindawi.com/journals/aess/2017/4180965/},
-	doi = {10.1155/2017/4180965},
-	pages = {1--10},
-	journaltitle = {Applied and Environmental Soil Science},
-	author = {Filippini Alba, José Maria and Flores, Carlos Alberto and Miele, Alberto},
-	urldate = {2017-12-07},
-	date = {2017},
-	langid = {english},
-	file = {Filippini Alba et al. - 2017 - Geotechnologies and Soil Mapping for Delimitation .pdf:C\:\\Users\\Brent Thorne\\Zotero\\storage\\C7AA8MZH\\Filippini Alba et al. - 2017 - Geotechnologies and Soil Mapping for Delimitation .pdf:application/pdf}
-}
-
-@article{puletti_unsupervised_2014,
-	title = {Unsupervised classification of very high remotely sensed images for grapevine rows detection},
-	volume = {47},
-	issn = {2279-7254},
-	url = {https://www.tandfonline.com/doi/full/10.5721/EuJRS20144704},
-	doi = {10.5721/EuJRS20144704},
-	pages = {45--54},
-	number = {1},
-	journaltitle = {European Journal of Remote Sensing},
-	author = {Puletti, Nicola and Perria, Rita and Storchi, Paolo},
-	urldate = {2017-12-07},
-	date = {2014-01},
-	langid = {english},
-	file = {Puletti et al. - 2014 - Unsupervised classification of very high remotely .pdf:C\:\\Users\\Brent Thorne\\Zotero\\storage\\8NI2EUMR\\Puletti et al. - 2014 - Unsupervised classification of very high remotely .pdf:application/pdf}
-}
-
-@book{harris_s.a._glossary_1988,
-	location = {Ottawa,Ontario,Canada},
-	title = {Glossary of permafrost and related ground-ice terms},
-	isbn = {978-0-660-12540-4},
-	series = {Technical Memorandum / National Research Council, Canada},
-	pagetotal = {156},
-	number = {142},
-	author = {{Harris S.A.} and {French H.M.} and {Heginbottom J.A.}},
-	date = {1988},
-	note = {{OCLC}: 20504505},
-	file = {Harris S.A. et al. - 1988 - Glossary of permafrost and related ground-ice term.pdf:C\:\\Users\\Brent Thorne\\Zotero\\storage\\4GF3MEPG\\Harris S.A. et al. - 1988 - Glossary of permafrost and related ground-ice term.pdf:application/pdf}
-}
-
-@article{poblete-echeverria_detection_2017,
-	title = {Detection and Segmentation of Vine Canopy in Ultra-High Spatial Resolution {RGB} Imagery Obtained from Unmanned Aerial Vehicle ({UAV}): A Case Study in a Commercial Vineyard},
-	volume = {9},
-	issn = {20724292},
-	url = {https://proxy.library.brocku.ca/login?url=http://search.ebscohost.com/login.aspx?direct=true&db=a9h&AN=122027077&site=eds-live&scope=site},
-	doi = {10.3390/rs9030268},
-	shorttitle = {Detection and Segmentation of Vine Canopy in Ultra-High Spatial Resolution {RGB} Imagery Obtained from Unmanned Aerial Vehicle ({UAV})},
-	abstract = {The use of Unmanned Aerial Vehicles ({UAVs}) in viticulture permits the capture of aerial Red-Green-Blue ({RGB}) images with an ultra-high spatial resolution. Recent studies have demonstrated that {RGB} images can be used to monitor spatial variability of vine biophysical parameters. However, for estimating these parameters, accurate and automated segmentation methods are required to extract relevant information from {RGB} images. Manual segmentation of aerial images is a laborious and time-consuming process. Traditional classification methods have shown satisfactory results in the segmentation of {RGB} images for diverse applications and surfaces, however, in the case of commercial vineyards, it is necessary to consider some particularities inherent to canopy size in the vertical trellis systems ({VSP}) such as shadow effect and different soil conditions in inter-rows (mixed information of soil and weeds). Therefore, the objective of this study was to compare the performance of four classification methods (K-means, Artificial Neural Networks ({ANN}), Random Forest ({RForest}) and Spectral Indices ({SI})) to detect canopy in a vineyard trained on {VSP}. Six flights were carried out from post-flowering to harvest in a commercial vineyard cv. Carménère using a low-cost {UAV} equipped with a conventional {RGB} camera. The results show that the {ANN} and the simple {SI} method complemented with the Otsu method for thresholding presented the best performance for the detection of the vine canopy with high overall accuracy values for all study days. Spectral indices presented the best performance in the detection of Plant class (Vine canopy) with an overall accuracy of around 0.99. However, considering the performance pixel by pixel, the Spectral indices are not able to discriminate between Soil and Shadow class. The best performance in the classification of three classes (Plant, Soil, and Shadow) of vineyard {RGB} images, was obtained when the {SI} values were used as input data in trained methods ({ANN} and {RForest}), reaching overall accuracy values around 0.98 with high sensitivity values for the three classes.},
-	pages = {1--14},
-	number = {3},
-	journaltitle = {Remote Sensing},
-	shortjournal = {Remote Sensing},
-	author = {Poblete-Echeverría, Carlos and Federico Olmedo, Guillermo and Ingram, Ben and Bardeen, Matthew},
-	date = {2017-03},
-	keywords = {remote sensing, {DRONE} aircraft, image analysis, {PARAMETER} estimation, {PLANT} canopies, precision viticulture, random forest, {SEGMENTATION} (Image processing), spatial variability, {VINEYARDS}},
-	file = {EBSCO Full Text:C\:\\Users\\Brent Thorne\\Zotero\\storage\\AQ3Q7WQ5\\Poblete-Echeverría et al. - 2017 - Detection and Segmentation of Vine Canopy in Ultra.pdf:application/pdf}
-}
-
-@article{sladojevic_deep_2016,
-	title = {Deep Neural Networks Based Recognition of Plant Diseases by Leaf Image Classification},
-	volume = {2016},
-	issn = {1687-5265},
-	url = {https://www.ncbi.nlm.nih.gov/pmc/articles/PMC4934169/},
-	doi = {10.1155/2016/3289801},
-	abstract = {The latest generation of convolutional neural networks ({CNNs}) has achieved impressive results in the field of image classification. This paper is concerned with a new approach to the development of plant disease recognition model, based on leaf image classification, by the use of deep convolutional networks. Novel way of training and the methodology used facilitate a quick and easy system implementation in practice. The developed model is able to recognize 13 different types of plant diseases out of healthy leaves, with the ability to distinguish plant leaves from their surroundings. According to our knowledge, this method for plant disease recognition has been proposed for the first time. All essential steps required for implementing this disease recognition model are fully described throughout the paper, starting from gathering images in order to create a database, assessed by agricultural experts. Caffe, a deep learning framework developed by Berkley Vision and Learning Centre, was used to perform the deep {CNN} training. The experimental results on the developed model achieved precision between 91\% and 98\%, for separate class tests, on average 96.3\%.},
-	journaltitle = {Computational Intelligence and Neuroscience},
-	shortjournal = {Comput Intell Neurosci},
-	author = {Sladojevic, Srdjan and Arsenovic, Marko and Anderla, Andras and Culibrk, Dubravko and Stefanovic, Darko},
-	date = {2016},
-	pmid = {27418923},
-	pmcid = {PMC4934169},
-	file = {Sladojevic et al. - 2016 - Deep Neural Networks Based Recognition of Plant Di.pdf:C\:\\Users\\Brent Thorne\\Zotero\\storage\\ZWU7NT3Z\\Sladojevic et al. - 2016 - Deep Neural Networks Based Recognition of Plant Di.pdf:application/pdf}
-}
-
-@article{terron_evaluation_2015,
-	title = {Evaluation of vineyard growth under four irrigation regimes using vegetation and soil on-the-go sensors},
-	volume = {1},
-	issn = {2199-398X},
-	url = {http://www.soil-journal.net/1/459/2015/},
-	doi = {10.5194/soil-1-459-2015},
-	pages = {459--473},
-	number = {1},
-	journaltitle = {{SOIL}},
-	author = {Terrón, J. M. and Blanco, J. and Moral, F. J. and Mancha, L. A. and Uriarte, D. and Marques da Silva, J. R.},
-	urldate = {2017-11-28},
-	date = {2015-06-17},
-	langid = {english},
-	file = {Terrón et al. - 2015 - Evaluation of vineyard growth under four irrigatio.pdf:C\:\\Users\\Brent Thorne\\Zotero\\storage\\AIKE8PI9\\Terrón et al. - 2015 - Evaluation of vineyard growth under four irrigatio.pdf:application/pdf}
-}
-
-@collection{dion_microbiology_2008,
-	location = {Berlin},
-	title = {Microbiology of extreme soils},
-	isbn = {978-3-540-74230-2},
-	series = {Soil biology},
-	pagetotal = {369},
-	number = {v. 13},
-	publisher = {Springer},
-	editor = {Dion, Patrice and Nautiyal, Chandra Shekhar},
-	date = {2008},
-	note = {{OCLC}: ocn181328027},
-	keywords = {Effect of human beings on, Microbiology, Research, Soil microbiology, Soils},
-	file = {Dion and Nautiyal - 2008 - Microbiology of extreme soils.pdf:C\:\\Users\\Brent Thorne\\Zotero\\storage\\P42SF3BP\\Dion and Nautiyal - 2008 - Microbiology of extreme soils.pdf:application/pdf}
-}
-
-@article{lamoureux_more_2017,
-	title = {More than just snowmelt: integrated watershed science for changing climate and permafrost at the Cape Bounty Arctic Watershed Observatory: Integrated watershed science for changing climate and permafrost at {CBAWO}},
-	issn = {20491948},
-	url = {http://doi.wiley.com/10.1002/wat2.1255},
-	doi = {10.1002/wat2.1255},
-	shorttitle = {More than just snowmelt},
-	pages = {e1255},
-	journaltitle = {Wiley Interdisciplinary Reviews: Water},
-	author = {Lamoureux, Scott F. and Lafrenière, Melissa J.},
-	urldate = {2017-11-01},
-	date = {2017-10-24},
-	langid = {english},
-	file = {Lamoureux_et_al-2017-Wiley_Interdisciplinary_Reviews-_Water.pdf:C\:\\Users\\Brent Thorne\\Zotero\\storage\\H2489T2P\\Lamoureux_et_al-2017-Wiley_Interdisciplinary_Reviews-_Water.pdf:application/pdf}
-}
-
-@thesis{macdougall_evaluating_2017,
-	title = {Evaluating the affect of seasonal soil moisture and vegetation change on C-Band {SAR} backscatter over corn fields in {SW} Ontario},
-	type = {phdthesis},
-	author = {{MacDougall}, Joshua},
-	date = {2017},
-	file = {MacDougall - 2017 - Evaluating the affect of seasonal soil moisture an.pdf:C\:\\Users\\Brent Thorne\\Zotero\\storage\\QWSBV5I8\\MacDougall - 2017 - Evaluating the affect of seasonal soil moisture an.pdf:application/pdf}
-}
-
-@article{ouellette_time-series_2017,
-	title = {A Time-Series Approach to Estimating Soil Moisture From Vegetated Surfaces Using L-Band Radar Backscatter},
-	volume = {55},
-	issn = {0196-2892, 1558-0644},
-	url = {http://ieeexplore.ieee.org/document/7864350/},
-	doi = {10.1109/TGRS.2017.2663768},
-	pages = {3186--3193},
-	number = {6},
-	journaltitle = {{IEEE} Transactions on Geoscience and Remote Sensing},
-	author = {Ouellette, Jeffrey D. and Johnson, Joel T. and Balenzano, Anna and Mattia, Francesco and Satalino, Giuseppe and Kim, Seung-Bum and Dunbar, R. Scott and Colliander, Andreas and Cosh, Michael H. and Caldwell, Todd G. and Walker, Jeffrey P. and Berg, Aaron A.},
-	urldate = {2017-10-20},
-	date = {2017-06},
-	file = {Ouellette et al. - 2017 - A Time-Series Approach to Estimating Soil Moisture.pdf:C\:\\Users\\Brent Thorne\\Zotero\\storage\\CRSW45MW\\Ouellette et al. - 2017 - A Time-Series Approach to Estimating Soil Moisture.pdf:application/pdf}
-}
-
-@article{hosseini_using_2017,
-	title = {Using multi-polarization C- and L-band synthetic aperture radar to estimate biomass and soil moisture of wheat fields},
-	volume = {58},
-	issn = {03032434},
-	url = {http://linkinghub.elsevier.com/retrieve/pii/S0303243417300065},
-	doi = {10.1016/j.jag.2017.01.006},
-	pages = {50--64},
-	journaltitle = {International Journal of Applied Earth Observation and Geoinformation},
-	author = {Hosseini, Mehdi and {McNairn}, Heather},
-	urldate = {2017-10-20},
-	date = {2017-06},
-	langid = {english},
-	file = {Hosseini and McNairn - 2017 - Using multi-polarization C- and L-band synthetic a.pdf:C\:\\Users\\Brent Thorne\\Zotero\\storage\\XMSAT6Q4\\Hosseini and McNairn - 2017 - Using multi-polarization C- and L-band synthetic a.pdf:application/pdf}
-}
-
-@article{ackerman_arctic_2017,
-	title = {Arctic shrub growth trajectories differ across soil moisture levels},
-	volume = {23},
-	issn = {13541013},
-	url = {http://doi.wiley.com/10.1111/gcb.13677},
-	doi = {10.1111/gcb.13677},
-	pages = {4294--4302},
-	number = {10},
-	journaltitle = {Global Change Biology},
-	author = {Ackerman, Daniel and Griffin, Daniel and Hobbie, Sarah E. and Finlay, Jacques C.},
-	urldate = {2017-09-14},
-	date = {2017-10},
-	langid = {english},
-	file = {Ackerman et al. - 2017 - Arctic shrub growth trajectories differ across soi.pdf:C\:\\Users\\Brent Thorne\\Zotero\\storage\\7ZRCVS73\\Ackerman et al. - 2017 - Arctic shrub growth trajectories differ across soi.pdf:application/pdf}
-}
-
-@thesis{turner_investigating_2014,
-	location = {Waterloo, Ontario},
-	title = {Investigating the Hydrology of a Thermokarst Landscape (Old Crow Flats, Yukon, Canada) Using Water Isotope Tracers.},
-	rights = {Kevin W. Turner},
-	pagetotal = {219},
-	institution = {Wilfrid Laurier University},
-	type = {phdthesis},
-	author = {Turner, Kevin William},
-	date = {2014},
-	note = {{OCLC}: 921571251},
-	file = {Turner - 2014 - Investigating the Hydrology of a Thermokarst Lands.pdf:C\:\\Users\\Brent Thorne\\Zotero\\storage\\DNST7PF3\\Turner - 2014 - Investigating the Hydrology of a Thermokarst Lands.pdf:application/pdf}
-}
-
-@article{vincent_arctic_2017,
-	title = {Arctic permafrost landscapes in transition: towards an integrated Earth system approach},
-	volume = {3},
-	issn = {2368-7460},
-	url = {http://www.nrcresearchpress.com/doi/10.1139/as-2016-0027},
-	doi = {10.1139/as-2016-0027},
-	shorttitle = {Arctic permafrost landscapes in transition},
-	pages = {39--64},
-	number = {2},
-	journaltitle = {Arctic Science},
-	author = {Vincent, Warwick F. and Lemay, Mickaël and Allard, Michel},
-	urldate = {2017-08-30},
-	date = {2017-06},
-	langid = {english},
-	file = {Vincent et al. - 2017 - Arctic permafrost landscapes in transition toward.pdf:C\:\\Users\\Brent Thorne\\Zotero\\storage\\UXR8GEI2\\Vincent et al. - 2017 - Arctic permafrost landscapes in transition toward.pdf:application/pdf}
-}
-
-@article{schadel_circumpolar_2014,
-	title = {Circumpolar assessment of permafrost C quality and its vulnerability over time using long-term incubation data},
-	volume = {20},
-	issn = {1365-2486},
-	url = {http://onlinelibrary.wiley.com.proxy.library.brocku.ca/doi/10.1111/gcb.12417/abstract},
-	doi = {10.1111/gcb.12417},
-	abstract = {High-latitude ecosystems store approximately 1700 Pg of soil carbon (C), which is twice as much C as is currently contained in the atmosphere. Permafrost thaw and subsequent microbial decomposition of permafrost organic matter could add large amounts of C to the atmosphere, thereby influencing the global C cycle. The rates at which C is being released from the permafrost zone at different soil depths and across different physiographic regions are poorly understood but crucial in understanding future changes in permafrost C storage with climate change. We assessed the inherent decomposability of C from the permafrost zone by assembling a database of long-term ({\textgreater}1 year) aerobic soil incubations from 121 individual samples from 23 high-latitude ecosystems located across the northern circumpolar permafrost zone. Using a three-pool (i.e., fast, slow and passive) decomposition model, we estimated pool sizes for C fractions with different turnover times and their inherent decomposition rates using a reference temperature of 5 °C. Fast cycling C accounted for less than 5\% of all C in both organic and mineral soils whereas the pool size of slow cycling C increased with C : N. Turnover time at 5 °C of fast cycling C typically was below 1 year, between 5 and 15 years for slow turning over C, and more than 500 years for passive C. We project that between 20 and 90\% of the organic C could potentially be mineralized to {CO}2 within 50 incubation years at a constant temperature of 5 °C, with vulnerability to loss increasing in soils with higher C : N. These results demonstrate the variation in the vulnerability of C stored in permafrost soils based on inherent differences in organic matter decomposability, and point toward C : N as an index of decomposability that has the potential to be used to scale permafrost C loss across landscapes.},
-	pages = {641--652},
-	number = {2},
-	journaltitle = {Global Change Biology},
-	shortjournal = {Glob Change Biol},
-	author = {Schädel, Christina and Schuur, Edward A. G. and Bracho, Rosvel and Elberling, Bo and Knoblauch, Christian and Lee, Hanna and Luo, Yiqi and Shaver, Gaius R. and Turetsky, Merritt R.},
-	date = {2014-02-01},
-	langid = {english},
-	keywords = {Alaska, tundra, boreal forest, C decomposition, climate change, Siberia, soil organic carbon},
-	file = {Schädel et al. - 2014 - Circumpolar assessment of permafrost C quality and.pdf:C\:\\Users\\Brent Thorne\\Zotero\\storage\\N6A9G9M5\\Schädel et al. - 2014 - Circumpolar assessment of permafrost C quality and.pdf:application/pdf;Snapshot:C\:\\Users\\Brent Thorne\\Zotero\\storage\\8RCSUATK\\abstract.html:text/html}
-}
-
-@article{smith_thermal_2010,
-	title = {Thermal state of permafrost in North America: a contribution to the international polar year},
-	volume = {21},
-	url = {http://onlinelibrary.wiley.com/doi/10.1002/ppp.690/full},
-	shorttitle = {Thermal state of permafrost in North America},
-	pages = {117--135},
-	number = {2},
-	journaltitle = {Permafrost and Periglacial Processes},
-	author = {Smith, S. L. and Romanovsky, V. E. and Lewkowicz, A. G. and Burn, C. R. and Allard, M. and Clow, G. D. and Yoshikawa, K. and Throop, J.},
-	urldate = {2017-08-30},
-	date = {2010},
-	file = {Smith et al. - 2010 - Thermal state of permafrost in North America a co.pdf:C\:\\Users\\Brent Thorne\\Zotero\\storage\\B2EASXDZ\\Smith et al. - 2010 - Thermal state of permafrost in North America a co.pdf:application/pdf}
-}
-
-@article{park_widespread_2016,
-	title = {Widespread permafrost vulnerability and soil active layer increases over the high northern latitudes inferred from satellite remote sensing and process model assessments},
-	volume = {175},
-	issn = {00344257},
-	url = {http://linkinghub.elsevier.com/retrieve/pii/S0034425715302686},
-	doi = {10.1016/j.rse.2015.12.046},
-	pages = {349--358},
-	journaltitle = {Remote Sensing of Environment},
-	author = {Park, Hotaek and Kim, Youngwook and Kimball, John S.},
-	urldate = {2017-08-30},
-	date = {2016-03},
-	langid = {english},
-	file = {Park et al. - 2016 - Widespread permafrost vulnerability and soil activ.pdf:C\:\\Users\\Brent Thorne\\Zotero\\storage\\XUCW9HPK\\Park et al. - 2016 - Widespread permafrost vulnerability and soil activ.pdf:application/pdf}
-}
-
-@article{newman_microtopographic_2015,
-	title = {Microtopographic and depth controls on active layer chemistry in Arctic polygonal ground: Polygonal Ground Chemistry},
-	volume = {42},
-	issn = {00948276},
-	url = {http://doi.wiley.com/10.1002/2014GL062804},
-	doi = {10.1002/2014GL062804},
-	shorttitle = {Microtopographic and depth controls on active layer chemistry in Arctic polygonal ground},
-	pages = {1808--1817},
-	number = {6},
-	journaltitle = {Geophysical Research Letters},
-	author = {Newman, B. D. and Throckmorton, H. M. and Graham, D. E. and Gu, B. and Hubbard, S. S. and Liang, L. and Wu, Y. and Heikoop, J. M. and Herndon, E. M. and Phelps, T. J. and Wilson, C. J. and Wullschleger, S. D.},
-	urldate = {2017-08-30},
-	date = {2015-03-28},
-	langid = {english},
-	file = {Newman et al. - 2015 - Microtopographic and depth controls on active laye.pdf:C\:\\Users\\Brent Thorne\\Zotero\\storage\\R6KTPTXE\\Newman et al. - 2015 - Microtopographic and depth controls on active laye.pdf:application/pdf}
-}
-
-@article{muskett_active-layer_2015,
-	title = {Active-Layer Soil Moisture Content Regional Variations in Alaska and Russia by Ground-Based and Satellite-Based Methods, 2002 through 2014},
-	volume = {06},
-	issn = {2156-8359, 2156-8367},
-	url = {http://www.scirp.org/journal/doi.aspx?DOI=10.4236/ijg.2015.61002},
-	doi = {10.4236/ijg.2015.61002},
-	pages = {12--41},
-	number = {1},
-	journaltitle = {International Journal of Geosciences},
-	author = {Muskett, Reginald R. and Romanovsky, Vladimir E. and Cable, William L. and Kholodov, Alexander L.},
-	urldate = {2017-08-30},
-	date = {2015},
-	file = {Muskett et al. - 2015 - Active-Layer Soil Moisture Content Regional Variat.pdf:C\:\\Users\\Brent Thorne\\Zotero\\storage\\IAIE7EPM\\Muskett et al. - 2015 - Active-Layer Soil Moisture Content Regional Variat.pdf:application/pdf}
-}
-
-@article{gusmeroli_active_2015,
-	title = {Active Layer Stratigraphy and Organic Layer Thickness at a Thermokarst Site in Arctic Alaska Identified Using Ground Penetrating Radar},
-	volume = {47},
-	issn = {1523-0430, 1938-4246},
-	url = {http://www.bioone.org/doi/10.1657/AAAR00C-13-301},
-	doi = {10.1657/AAAR00C-13-301},
-	pages = {195--202},
-	number = {2},
-	journaltitle = {Arctic, Antarctic, and Alpine Research},
-	author = {Gusmeroli, Alessio and Liu, Lin and Schaefer, Kevin and Zhang, Tingjun and Schaefer, Timothy and Grosse, Guido},
-	urldate = {2017-08-30},
-	date = {2015-05},
-	langid = {english},
-	file = {Gusmeroli et al. - 2015 - Active Layer Stratigraphy and Organic Layer Thickn.pdf:C\:\\Users\\Brent Thorne\\Zotero\\storage\\BXQWQX86\\Gusmeroli et al. - 2015 - Active Layer Stratigraphy and Organic Layer Thickn.pdf:application/pdf}
-}
-
-@article{brown_circumpolar_2000,
-	title = {The circumpolar active layer monitoring (calm) program: Research designs and initial results $^{\textrm{1}}$},
-	volume = {24},
-	issn = {1088-937X, 1939-0513},
-	url = {http://www.tandfonline.com/doi/abs/10.1080/10889370009377698},
-	doi = {10.1080/10889370009377698},
-	shorttitle = {The circumpolar active layer monitoring (calm) program},
-	pages = {166--258},
-	number = {3},
-	journaltitle = {Polar Geography},
-	author = {Brown, J. and Hinkel, K. M. and Nelson, F. E.},
-	urldate = {2017-08-30},
-	date = {2000-07},
-	langid = {english},
-	file = {Brown et al. - 2000 - The circumpolar active layer monitoring (calm) pro.pdf:C\:\\Users\\Brent Thorne\\Zotero\\storage\\NRFEFXQE\\Brown et al. - 2000 - The circumpolar active layer monitoring (calm) pro.pdf:application/pdf}
-}
-
-@article{gangodagamage_extrapolating_2014,
-	title = {Extrapolating active layer thickness measurements across Arctic polygonal terrain using {LiDAR} and {NDVI} data sets},
-	volume = {50},
-	issn = {1944-7973},
-	url = {http://onlinelibrary.wiley.com/doi/10.1002/2013WR014283/abstract},
-	doi = {10.1002/2013WR014283},
-	abstract = {Landscape attributes that vary with microtopography, such as active layer thickness ({ALT}), are labor intensive and difficult to document effectively through in situ methods at kilometer spatial extents, thus rendering remotely sensed methods desirable. Spatially explicit estimates of {ALT} can provide critically needed data for parameterization, initialization, and evaluation of Arctic terrestrial models. In this work, we demonstrate a new approach using high-resolution remotely sensed data for estimating centimeter-scale {ALT} in a 5 km2 area of ice-wedge polygon terrain in Barrow, Alaska. We use a simple regression-based, machine learning data-fusion algorithm that uses topographic and spectral metrics derived from multisensor data ({LiDAR} and {WorldView}-2) to estimate {ALT} (2 m spatial resolution) across the study area. Comparison of the {ALT} estimates with ground-based measurements, indicates the accuracy (r2 = 0.76, {RMSE} ±4.4 cm) of the approach. While it is generally accepted that broad climatic variability associated with increasing air temperature will govern the regional averages of {ALT}, consistent with prior studies, our findings using high-resolution {LiDAR} and {WorldView}-2 data, show that smaller-scale variability in {ALT} is controlled by local eco-hydro-geomorphic factors. This work demonstrates a path forward for mapping {ALT} at high spatial resolution and across sufficiently large regions for improved understanding and predictions of coupled dynamics among permafrost, hydrology, and land-surface processes from readily available remote sensing data.},
-	pages = {6339--6357},
-	number = {8},
-	journaltitle = {Water Resources Research},
-	shortjournal = {Water Resour. Res.},
-	author = {Gangodagamage, Chandana and Rowland, Joel C. and Hubbard, Susan S. and Brumby, Steven P. and Liljedahl, Anna K. and Wainwright, Haruko and Wilson, Cathy J. and Altmann, Garrett L. and Dafflon, Baptiste and Peterson, John and Ulrich, Craig and Tweedie, Craig E. and Wullschleger, Stan D.},
-	date = {2014-08-01},
-	langid = {english},
-	keywords = {Alaska, 0704 Seasonally frozen ground, 0706 Active layer, 0748 Ponds, 1823 Frozen ground, active layer thickness, barrow, eco-hydro-geo-thermal regimes, frozen ground, ice wedge polygons, thaw depth},
-	file = {Gangodagamage et al. - 2014 - Extrapolating active layer thickness measurements .pdf:C\:\\Users\\Brent Thorne\\Zotero\\storage\\AKTMBIC6\\Gangodagamage et al. - 2014 - Extrapolating active layer thickness measurements .pdf:application/pdf;Snapshot:C\:\\Users\\Brent Thorne\\Zotero\\storage\\J4BANJIG\\abstract.html:text/html}
-}
-
-@article{kokelj_impacts_2009,
-	title = {The impacts of thawing permafrost on the chemistry of lakes across the subarctic boreal-tundra transition, Mackenzie Delta region, Canada},
-	volume = {20},
-	issn = {10456740, 10991530},
-	url = {http://doi.wiley.com/10.1002/ppp.641},
-	doi = {10.1002/ppp.641},
-	pages = {185--199},
-	number = {2},
-	journaltitle = {Permafrost and Periglacial Processes},
-	author = {Kokelj, S. V. and Zajdlik, B. and Thompson, M. S.},
-	urldate = {2017-08-28},
-	date = {2009-04},
-	langid = {english},
-	file = {Kokelj et al. - 2009 - The impacts of thawing permafrost on the chemistry.pdf:C\:\\Users\\Brent Thorne\\Zotero\\storage\\WZ9RZ2GV\\Kokelj et al. - 2009 - The impacts of thawing permafrost on the chemistry.pdf:application/pdf}
-}
-
-@article{lapp_hydrology_2017,
-	title = {Hydrology of the North Klondike River: carbon export, water balance and inter-annual climate influences within a sub-alpine permafrost catchment},
-	volume = {53},
-	issn = {1025-6016},
-	url = {http://journals.scholarsportal.info/detailsundefined},
-	doi = {10.1080/10256016.2017.1355795},
-	shorttitle = {Hydrology of the North Klondike River},
-	abstract = {{ABSTRACT} Arctic and sub-arctic watersheds are undergoing significant changes due to recent climate warming and degrading permafrost, engendering enhanced monitoring of arctic rivers. Smaller catchments provide understanding of discharge, solute flux and groundwater recharge at the process level that contributes to an understanding of how larger arctic watersheds are responding to climate change. The North Klondike River, located in west central Yukon, is a sub-alpine permafrost catchment, which maintains an active hydrological monitoring station with a record of {\textgreater}40 years. In addition to being able to monitor intra-annual variability, this data set allows for more complex analysis of streamflow records. Streamflow data, geochemistry and stable isotope data for 2014 show a groundwater-dominated system, predominantly recharged during periods of snowmelt. Radiocarbon is shown to be a valuable tracer of soil zone recharge processes and carbon sources. Winter groundwater baseflow contributes 20 \% of total annual discharge, and accounts for up to 50 \% of total river discharge during the spring and summer months. Although total stream discharge remains unchanged, mean annual groundwater baseflow has increased over the 40-year monitoring period. Wavelet analysis reveals a catchment that responds to El Niño and longer solar cycles, as well as climatic shifts such as the Pacific Decadal Oscillation. Dedicated to Professor Peter Fritz on the occasion of his 80th birthday},
-	pages = {500--517},
-	number = {5},
-	journaltitle = {Isotopes in Environmental and Health Studies},
-	shortjournal = {Isotopes in Environmental and Health Studies},
-	author = {Lapp, Anthony and Clark, Ian and Macumber, Andrew and Patterson, Tim},
-	date = {2017},
-	keywords = {Carbon-13, carbon-14, catchment, groundwater, hydrogen-2, hydrogen-3, isotope hydrology, North Klondike River, oxygen-18, sub-alpine permafrost, water balance}
-}
-
-@article{serreze_observational_2000,
-	title = {Observational Evidence of Recent Change in the Northern High-Latitude Environment},
-	volume = {46},
-	issn = {0165-0009},
-	url = {http://journals.scholarsportal.info/detailsundefined},
-	abstract = {Studies from a variety of disciplines document recent change in the northern high-latitude environment. Prompted by predictions of an amplified response of the Arctic to enhanced greenhouse forcing, we present a synthesis of these observations. Pronounced winter and spring warming over northern continents since about 1970 is partly compensated by cooling over the northern North Atlantic. Warming is also evident over the central Arctic Ocean. There is a downward tendency in sea ice extent, attended by warming and increased areal extent of the Arctic Ocean's Atlantic layer. Negative snow cover anomalies have dominated over both continents since the late 1980s and terrestrial precipitation has increased since 1900. Small Arctic glaciers have exhibited generally negative mass balances. While permafrost has warmed in Alaska and Russia, it has cooled in eastern Canada. There is evidence of increased plant growth, attended by greater shrub abundance and northward migration of the tree line. Evidence also suggests that the tundra has changed from a net sink to a net source of atmospheric carbon dioxide. Taken together, these results paint a reasonably coherent picture of change, but their interpretation as signals of enhanced greenhouse warming is open to debate. Many of the environmental records are either short, are of uncertain quality, or provide limited spatial coverage. The recent high-latitude warming is also no larger than the interdecadal temperature range during this century. Nevertheless, the general patterns of change broadly agree with model predictions. Roughly half of the pronounced recent rise in Northern Hemisphere winter temperatures reflects shifts in atmospheric circulation. However, such changes are not inconsistent with anthropogenic forcing and include generally positive phases of the North Atlantic and Arctic Oscillations and extratropical responses to the El-Niño Southern Oscillation. An anthropogenic effect is also suggested from interpretation of the paleoclimate record, which indicates that the 20th century Arctic is the warmest of the past 400 years.},
-	pages = {159--207},
-	number = {1},
-	journaltitle = {Climatic Change},
-	shortjournal = {Climatic Change},
-	author = {Serreze, M. C. and Walsh, J. E. and Chapin {III}, F. S. and Osterkamp, T. and Dyurgerov, M. and Romanovsky, V. and Oechel, W. C. and Morison, J. and Zhang, T. and Barry, R. G.},
-	date = {2000},
-	file = {Serreze et al. - 2000 - Observational Evidence of Recent Change in the Nor.pdf:C\:\\Users\\Brent Thorne\\Zotero\\storage\\A8SBW8KF\\Serreze et al. - 2000 - Observational Evidence of Recent Change in the Nor.pdf:application/pdf}
-}
-
-@article{zhang_spatial_2005,
-	title = {Spatial and temporal variability in active layer thickness over the Russian Arctic drainage basin},
-	volume = {110},
-	issn = {2156-2202},
-	url = {http://onlinelibrary.wiley.com/doi/10.1029/2004JD005642/abstract},
-	doi = {10.1029/2004JD005642},
-	abstract = {Changes in active layer thickness ({ALT}) over northern high-latitude permafrost regions have important impacts on the surface energy balance, hydrologic cycle, carbon exchange between the atmosphere and the land surface, plant growth, and ecosystems as a whole. This study examines the 20th century variations of {ALT} for the Ob, Yenisey, and Lena River basins. {ALT} is estimated from historical soil temperature measurements from 17 stations (1956–1990, Lena basin only), an annual thawing index based on both surface air temperature data (1901–2002) and numerical modeling (1980–2002). The latter two provide spatial fields. Based on the thawing index, the long-term average (1961–1990) {ALT} is about 1.87 m in the Ob, 1.67 in the Yenisey, and 1.69 m in the Lena basin. Over the past several decades, {ALT} over the three basins shows positive trends, but with different magnitudes. Based on the 17 stations, {ALT} increased about 0.32 m between 1956 and 1990 in the Lena. To the extent that results based on the soil temperatures represent ground “truth,” {ALT} obtained from both the thawing index and numerical modeling is underestimated. It is widely believed that {ALT} will increase with global warming. However, this hypothesis needs further refinement since {ALT} responds primarily to summer air temperature while observed warming has occurred mainly in winter and spring. It is also shown that {ALT} exhibits complex and inconsistent responses to variations in snow cover.},
-	pages = {D16101},
-	issue = {D16},
-	journaltitle = {Journal of Geophysical Research: Atmospheres},
-	shortjournal = {J. Geophys. Res.},
-	author = {Zhang, Tingjun and Frauenfeld, Oliver W. and Serreze, Mark C. and Etringer, Andrew and Oelke, Christoph and {McCreight}, James and Barry, Roger G. and Gilichinsky, David and Yang, Daqing and Ye, Hengchun and Ling, Feng and Chudinova, Svetlana},
-	date = {2005-08-27},
-	langid = {english},
-	keywords = {permafrost, 1823 Frozen ground, 1824 Geomorphology: general, 1834 Human impacts, 1863 Snow and ice, active layer, Russian Arctic},
-	file = {Snapshot:C\:\\Users\\Brent Thorne\\Zotero\\storage\\JFQAGW5E\\abstract.html:text/html;Zhang et al. - 2005 - Spatial and temporal variability in active layer t.pdf:C\:\\Users\\Brent Thorne\\Zotero\\storage\\5FU38XED\\Zhang et al. - 2005 - Spatial and temporal variability in active layer t.pdf:application/pdf}
-}
-
-@article{christiansen_thermal_2010,
-	title = {The thermal state of permafrost in the nordic area during the international polar year 2007-2009: Thermal state of permafrost in the Nordic area},
-	volume = {21},
-	issn = {10456740},
-	url = {http://doi.wiley.com/10.1002/ppp.687},
-	doi = {10.1002/ppp.687},
-	shorttitle = {The thermal state of permafrost in the nordic area during the international polar year 2007-2009},
-	pages = {156--181},
-	number = {2},
-	journaltitle = {Permafrost and Periglacial Processes},
-	author = {Christiansen, H. H. and Etzelmüller, B. and Isaksen, K. and Juliussen, H. and Farbrot, H. and Humlum, O. and Johansson, M. and Ingeman-Nielsen, T. and Kristensen, L. and Hjort, J. and Holmlund, P. and Sannel, A. B. K. and Sigsgaard, C. and Åkerman, H. J. and Foged, N. and Blikra, L. H. and Pernosky, M. A. and Ødegård, R. S.},
-	urldate = {2017-08-20},
-	date = {2010-04},
-	langid = {english},
-	file = {Christiansen et al. - 2010 - The thermal state of permafrost in the nordic area.pdf:C\:\\Users\\Brent Thorne\\Zotero\\storage\\LVTFFSK2\\Christiansen et al. - 2010 - The thermal state of permafrost in the nordic area.pdf:application/pdf}
-}
-
-@article{schaefer_remotely_2015,
-	title = {Remotely Sensed Active Layer Thickness ({ReSALT}) at Barrow, Alaska Using Interferometric Synthetic Aperture Radar},
-	volume = {7},
-	issn = {2072-4292},
-	url = {http://www.mdpi.com/2072-4292/7/4/3735/},
-	doi = {10.3390/rs70403735},
-	pages = {3735--3759},
-	number = {4},
-	journaltitle = {Remote Sensing},
-	author = {Schaefer, Kevin and Liu, Lin and Parsekian, Andrew and Jafarov, Elchin and Chen, Albert and Zhang, Tingjun and Gusmeroli, Alessio and Panda, Santosh and Zebker, Howard and Schaefer, Tim},
-	urldate = {2017-08-20},
-	date = {2015-03-27},
-	langid = {english},
-	file = {Schaefer et al. - 2015 - Remotely Sensed Active Layer Thickness (ReSALT) at.pdf:C\:\\Users\\Brent Thorne\\Zotero\\storage\\UJDM5XAJ\\Schaefer et al. - 2015 - Remotely Sensed Active Layer Thickness (ReSALT) at.pdf:application/pdf}
-}
-
-@thesis{riglin_perpetual_1977,
-	title = {The Perpetual Landslide, Summerland, British Columbia},
-	institution = {University of British Columbia},
-	type = {Master's Thesis},
-	author = {Riglin, Linda},
-	date = {1977-04},
-	file = {Riglin - 1977 - The Perpetual Landslide, Summerland, British Colum.pdf:C\:\\Users\\Brent Thorne\\Zotero\\storage\\M8EGSI9A\\Riglin - 1977 - The Perpetual Landslide, Summerland, British Colum.pdf:application/pdf}
-}
-
-@article{stone_even_2014,
-	title = {Even for Slide-Prone Region, Landslide Was Off the Chart},
-	volume = {344},
-	url = {http://science.sciencemag.org/content/344/6179/16.short},
-	pages = {16--17},
-	number = {6179},
-	journaltitle = {Science},
-	author = {Stone, Richard and {others}},
-	urldate = {2017-08-09},
-	date = {2014},
-	file = {Stone and others - 2014 - Even for Slide-Prone Region, Landslide Was Off the.pdf:C\:\\Users\\Brent Thorne\\Zotero\\storage\\75HGFCE7\\Stone and others - 2014 - Even for Slide-Prone Region, Landslide Was Off the.pdf:application/pdf}
-}
-
-@article{murphy_use_2016,
-	title = {Use of a Small Unmanned Aerial System for the {SR}-530 Mudslide Incident near Oso, Washington: Use of Small Unmanned Aerial System for {SR}-530 Mudslide Incident near Oso, Washington},
-	volume = {33},
-	issn = {15564959},
-	url = {http://doi.wiley.com/10.1002/rob.21586},
-	doi = {10.1002/rob.21586},
-	shorttitle = {Use of a Small Unmanned Aerial System for the {SR}-530 Mudslide Incident near Oso, Washington},
-	pages = {476--488},
-	number = {4},
-	journaltitle = {Journal of Field Robotics},
-	author = {Murphy, Robin R. and Duncan, Brittany A. and Collins, Tyler and Kendrick, Justin and Lohman, Patrick and Palmer, Tamara and Sanborn, Frank},
-	urldate = {2017-08-09},
-	date = {2016-06},
-	langid = {english},
-	file = {Murphy et al. - 2016 - Use of a Small Unmanned Aerial System for the SR-5.pdf:C\:\\Users\\Brent Thorne\\Zotero\\storage\\U2XXHRV9\\Murphy et al. - 2016 - Use of a Small Unmanned Aerial System for the SR-5.pdf:application/pdf}
-}
-
-@misc{dragovich_geologic_2003,
-	title = {Geologic Map of the Mount Higgins 7.5-minute Quadrangle, Skagit and Snohomish Counties, Washington},
-	url = {http://file.dnr.wa.gov/publications/ger_ofr2003-12_geol_map_mounthiggins_24k.pdf},
-	publisher = {Washington Department of Natural Resources},
-	type = {Topographic},
-	editora = {Dragovich,, Joe and Stanton,, Benjamin and Lingley,, William and Griesel,, Gerry},
-	editoratype = {collaborator},
-	urldate = {2017-08-09},
-	date = {2003},
-	file = {Dragovich, et al. - 2003 - Geologic Map of the Mount Higgins 7.5-minute Quadr.pdf:C\:\\Users\\Brent Thorne\\Zotero\\storage\\F4FK2QTW\\Dragovich, et al. - 2003 - Geologic Map of the Mount Higgins 7.5-minute Quadr.pdf:application/pdf}
-}
-
-@report{haugerud_preliminary_2014,
-	title = {Preliminary Interpretation of Pre-2014 Landslide Deposits in the Vicinity of Oso, Washington},
-	institution = {U.S. Geological Survey},
-	type = {U.S. Geological Survey Open-File Report},
-	author = {Haugerud, Ralph A.},
-	date = {2014},
-	langid = {english},
-	file = {Haugerud - 2014 - Preliminary Interpretation of Pre-2014 Landslide D.pdf:C\:\\Users\\Brent Thorne\\Zotero\\storage\\3R4N67B8\\Haugerud - 2014 - Preliminary Interpretation of Pre-2014 Landslide D.pdf:application/pdf}
-}
-
-@article{wartman_22_2016,
-	title = {The 22 March 2014 Oso landslide, Washington, {USA}},
-	volume = {253},
-	issn = {0169555X},
-	url = {http://linkinghub.elsevier.com/retrieve/pii/S0169555X15301860},
-	doi = {10.1016/j.geomorph.2015.10.022},
-	pages = {275--288},
-	journaltitle = {Geomorphology},
-	author = {Wartman, Joseph and Montgomery, David R. and Anderson, Scott A. and Keaton, Jeffrey R. and Benoît, Jean and dela Chapelle, John and Gilbert, Robert},
-	urldate = {2017-08-09},
-	date = {2016-01},
-	langid = {english},
-	file = {Wartman et al. - 2016 - The 22 March 2014 Oso landslide, Washington, USA.pdf:C\:\\Users\\Brent Thorne\\Zotero\\storage\\ZB3AI2DV\\Wartman et al. - 2016 - The 22 March 2014 Oso landslide, Washington, USA.pdf:application/pdf}
-}
-
-@article{goncalves_concentration_2001,
-	title = {Concentration of photosynthetic pigments and chlorophyll fluorescence of mahogany and tonka bean under two light environments},
-	volume = {13},
-	url = {http://www.scielo.br/scielo.php?pid=S0103-31312001000200004&script=sci_arttext&tlng=es},
-	pages = {149--157},
-	number = {2},
-	journaltitle = {Revista Brasileira de Fisiologia Vegetal},
-	author = {{GONÇALVES}, {JOSÉ} {FRANCISCO} {DE} {CARVALHO} and {MARENCO}, {RICARDO} {ANTONIO} and Vieira, Gil},
-	urldate = {2017-07-31},
-	date = {2001},
-	file = {GONÇALVES et al. - 2001 - Concentration of photosynthetic pigments and chlor.pdf:C\:\\Users\\Brent Thorne\\Zotero\\storage\\3AAZTFZP\\GONÇALVES et al. - 2001 - Concentration of photosynthetic pigments and chlor.pdf:application/pdf}
-}
-
-@article{lamhonwah_multi-year_2016,
-	title = {Multi-year impacts of permafrost disturbance and thermal perturbation on High Arctic stream chemistry},
-	volume = {3},
-	issn = {2368-7460},
-	url = {http://www.nrcresearchpress.com/doi/full/10.1139/as-2016-0024},
-	doi = {10.1139/as-2016-0024},
-	abstract = {Permafrost disturbances (such as active layer detachment ({ALD}) slides) and thermal perturbation (deep ground thaw from high soil temperatures) alter Arctic surface water chemistry. However, the potential multi-year impacts on water chemistry and the ultimate recovery time are not well understood. This study evaluates the impacts on surface waters and recovery following disturbance of a High Arctic catchment in 2007 from {ALDs}. We measured ion concentrations and stable isotopes in surface waters collected between 2006 and 2014 from paired catchments — one disturbed and the other not. The years 2007 and 2012 were exceptionally warm and represent unusual thermal perturbation for both catchments. Results indicate that the exposure and mobilization of soluble ions in near surface soil is a key control over dissolved ion concentrations and composition following {ALDs}. Runoff in the disturbed catchment shows increased total dissolved solute ({TDS}) concentrations and seasonal {TDS} fluxes and changes to the relative c..., Les perturbations du pergélisol (telles que les glissements causés par le détachement de la couche active ({DCA})) et la perturbation thermique (le dégel du sol en profondeur causé par des températures élevées) changent l’hydrochimie des eaux de surface dans l’Arctique. Cependant, on ne comprend pas bien les impacts potentiels de plusieurs années sur l’hydrochimie ni le temps de rétablissement final. Cette étude évalue les impacts sur les eaux de surface après la perturbation d’un bassin hydrologique du Haut-Arctique en 2007 en raison d’un {DCA} ainsi que le rétablissement. Nous avons mesuré les concentrations d’ions et les isotopes stables dans les eaux de surface recueillies entre 2006 et 2014 provenant de deux bassins hydrologiques appariés — un perturbé et l’autre non. Les années 2007 et 2012 étaient exceptionnellement chaudes et représentent une perturbation thermique inhabituelle des deux bassins hydrologiques. Les résultats indiquent que l’exposition et la mobilisation d’ions solubles dans le sol près ...},
-	pages = {254--276},
-	number = {2},
-	journaltitle = {Arctic Science},
-	shortjournal = {Arctic Science},
-	author = {Lamhonwah, Daniel and Lafrenière, M. J. and Lamoureux, S. F. and Wolfe, B. B.},
-	urldate = {2017-07-20},
-	date = {2016-12-05},
-	file = {Lamhonwah et al. - 2016 - Multi-year impacts of permafrost disturbance and t.pdf:C\:\\Users\\Brent Thorne\\Zotero\\storage\\PTR5CW5H\\Lamhonwah et al. - 2016 - Multi-year impacts of permafrost disturbance and t.pdf:application/pdf;NRC Research Press Snapshot:C\:\\Users\\Brent Thorne\\Zotero\\storage\\NCNBQGUJ\\Lamhonwah et al. - 2016 - Multi-year impacts of permafrost disturbance and t.html:text/html}
-}
-
-@article{lantz_vegetation_2017,
-	title = {Vegetation Succession and Environmental Conditions following Catastrophic Lake Drainage in Old Crow Flats, Yukon},
-	volume = {70},
-	issn = {1923-1245, 0004-0843},
-	url = {http://arctic.journalhosting.ucalgary.ca/arctic/index.php/arctic/article/view/4646},
-	doi = {10.14430/arctic4646},
-	pages = {177},
-	number = {2},
-	journaltitle = {{ARCTIC}},
-	author = {Lantz, Trevor C.},
-	urldate = {2017-07-17},
-	date = {2017-05-31},
-	file = {Lantz - 2017 - Vegetation Succession and Environmental Conditions.pdf:C\:\\Users\\Brent Thorne\\Zotero\\storage\\6HNB3ZPP\\Lantz - 2017 - Vegetation Succession and Environmental Conditions.pdf:application/pdf}
-}
-
-@article{dyke_climate_2000,
-	title = {Climate of the Mackenzie River valley},
-	volume = {547},
-	url = {https://www.researchgate.net/profile/Larry_Dyke2/publication/273380005_Climate_of_the_Mackenzie_River_valley/links/54ff4de80cf2741b69f657d0.pdf},
-	pages = {21--30},
-	journaltitle = {The Physical Environment of the Mackenzie Valley, Northwest Territories: a Baseline for the Assessment of Environmental Change. Ottawa, Ontario: Geological Survey of Canada Bulletin},
-	author = {Dyke, L. D.},
-	urldate = {2017-07-17},
-	date = {2000},
-	file = {Dyke - 2000 - Climate of the Mackenzie River valley.pdf:C\:\\Users\\Brent Thorne\\Zotero\\storage\\T27INN4F\\Dyke - 2000 - Climate of the Mackenzie River valley.pdf:application/pdf}
-}
-
-@misc{heginbottom_canada_1995,
-	title = {Canada Permafrost},
-	url = {http://ftp.geogratis.gc.ca/pub/nrcan_rncan/raster/atlas_5_ed/eng/environment/land/mcr4177.pdf},
-	publisher = {Natural Resources Canada},
-	editora = {Heginbottom, J.A.},
-	editoratype = {collaborator},
-	urldate = {2017-07-17},
-	date = {1995},
-	file = {Heginbottom - 1995 - Canada Permafrost.pdf:C\:\\Users\\Brent Thorne\\Zotero\\storage\\N83438FX\\Heginbottom - 1995 - Canada Permafrost.pdf:application/pdf}
-}
-
-@article{lantz_changes_2015,
-	title = {Changes in lake area in response to thermokarst processes and climate in Old Crow Flats, Yukon},
-	volume = {120},
-	issn = {2169-8961},
-	url = {http://onlinelibrary.wiley.com/doi/10.1002/2014JG002744/abstract},
-	doi = {10.1002/2014JG002744},
-	abstract = {Growing evidence indicates that lake-dominated ecosystems at high latitudes are undergoing significant hydrological changes. Research examining these changes is complicated because both thermokarst and climatic processes likely influence lake dynamics. To examine the relative impacts of these processes in permafrost landscapes, we investigated the dynamics of lake area and number in Old Crow Flats ({OCF}), Yukon using historical air photos and satellite imagery. Between 1951 and 2007, {OCF} experienced a decline of {\textasciitilde}6000 ha in total lake area but gained 232 lakes. Close to half (49\%) of the difference in lake area was driven by the rapid and persistent drainage of 38 large lakes. These catastrophic drainages were associated with new or enlarged outlet channels, resulted in the formation of numerous residual ponds, and were likely driven by thermokarst processes. Our analysis shows that catastrophic lake drainages have become more than 5 times more frequent in recent decades. These changes are likely related to the impacts of increased temperature and precipitation on thermokarst processes. Fifty-nine of the 170 intensively studied lakes showed either large bidirectional fluctuations or gradual cumulative declines. These changes affected a much smaller portion of {OCF} and were likely driven by interactions between increased precipitation and temperature and individual catchment characteristics. To anticipate landscape-scale changes in these systems, and assess their impact on hydrology, wildlife habitat, and carbon storage, field research is required to better characterize the mechanisms responsible for changes.},
-	pages = {2014JG002744},
-	number = {3},
-	journaltitle = {Journal of Geophysical Research: Biogeosciences},
-	shortjournal = {J. Geophys. Res. Biogeosci.},
-	author = {Lantz, T. C. and Turner, K. W.},
-	date = {2015-03-01},
-	langid = {english},
-	keywords = {permafrost, 0497 Wetlands, 0475 Permafrost, cryosphere, and high-latitude processes, 0480 Remote sensing, 1807 Climate impacts, air photos, global change, thermokarst},
-	file = {Lantz and Turner - 2015 - Changes in lake area in response to thermokarst pr.pdf:C\:\\Users\\Brent Thorne\\Zotero\\storage\\N8IK6QTM\\Lantz and Turner - 2015 - Changes in lake area in response to thermokarst pr.pdf:application/pdf}
-}
-
-@unpublished{bouchard_isotopic_2013,
-	location = {Ottawa, {ON}},
-	title = {Isotopic evidence for recent hydrological shifts in source waters of shallow lakes in northern freshwater landscapes.},
-	abstract = {In northern Canada, shallow-lake-rich freshwater landscapes provide key habitat for many wildlife species and play a vital role in the traditional use of the land by local indigenous communities. Changes in precipitation have the potential to substantially alter the hydrological conditions of these shallow lakes. Here we compare multiple years of measurements of lake water oxygen isotope composition (δ18Omes) with surface sediment cellulose-inferred lake water oxygen isotope composition (δ18Oinf) for {\textasciitilde}80 lakes in two of Canada’s largest lake-rich thermokarst landscapes – Old Crow Flats ({OCF}), Yukon, and western Hudson Bay Lowlands ({HBL}), Manitoba. Results reveal a strikingly coherent pattern of recent hydrological change in these two landscapes. In {OCF}, δ18Oinf values from snowmelt-dominated lakes align reasonably well with the 2007-2008 δ18Omes values from the early ice-free season, as expected. In contrast, δ18Oinf from rainfall-dominated lakes are systematically lower (i.e., more 18O-depleted) relative to δ18Omes. Climate data indicate that the winter of 2007-08 had markedly lower snowfall compared to the long-term mean, whereas winters immediately prior to our water sample collections were characterized by snowfall equal to or greater than the long-term mean. Thus, we speculate that the isotopic offset between δ18Oinf and δ18Omes for some of the lakes is due to a shift to more rainfall-dominated precipitation. Similar results have been obtained from lakes in {HBL}. Here too, about 40\% of the sampled lakes contain δ18Oinf values that are lower than δ18Omes values from 2010-2012, which may also reflect a recent shift to more rainfall-dominated precipitation. These findings suggest that some lakes in our study areas received less snowmelt during the water sampling years in comparison to the time interval captured in the surface-sediments. Notably, a few lakes in {HBL} lost all of their water to evaporation during mid-summer 2010, fuelling concerns that reduction in snowmelt and an increase in the length of the ice-free season in these landscapes may lead to an increase in the occurrence of lake desiccation.},
-	type = {Conference},
-	howpublished = {Conference},
-	note = {{PALS} 2013},
-	author = {Bouchard, Frederic},
-	editora = {Deakin, C. and Turner, Kevin W. and White, H.E. and Macdonald, Lauren and Medeiros, Andrew and Wolfe, Brent B. and Hall, Roland I. and Pienitz, Reinhard},
-	editoratype = {collaborator},
-	date = {2013},
-	file = {Bouchard - 2013 - Isotopic evidence for recent hydrological shifts i.pdf:C\:\\Users\\Brent Thorne\\Zotero\\storage\\ISPJ397I\\Bouchard - 2013 - Isotopic evidence for recent hydrological shifts i.pdf:application/pdf}
-}
-
-@book{reeuwijk_procedures_2002,
-	location = {Wageningen},
-	edition = {6. ed},
-	title = {Procedures for soil analysis},
-	isbn = {978-90-6672-044-2},
-	series = {Technical paper / International Soil Reference an Information Centre},
-	number = {9},
-	publisher = {International Soil Reference and Information Centre},
-	author = {Reeuwijk, L. P. van},
-	date = {2002},
-	note = {{OCLC}: 248862095},
-	file = {Reeuwijk - 2002 - Procedures for soil analysis.pdf:C\:\\Users\\Brent Thorne\\Zotero\\storage\\TRHHI2KR\\Reeuwijk - 2002 - Procedures for soil analysis.pdf:application/pdf}
-}
-
-@article{consortium_global_2017,
-	title = {A global multiproxy database for temperature reconstructions of the Common Era},
-	volume = {4},
-	rights = {2017 Nature Publishing Group},
-	issn = {2052-4463},
-	url = {https://www.nature.com/articles/sdata201788},
-	doi = {10.1038/sdata.2017.88},
-	abstract = {Data Descriptor},
-	pages = {sdata201788},
-	journaltitle = {Scientific Data},
-	author = {Consortium, {PAGES}2k and Emile-Geay, Julien and {McKay}, Nicholas P. and Kaufman, Darrell S. and Gunten, Lucien von and Wang, Jianghao and Anchukaitis, Kevin J. and Abram, Nerilie J. and Addison, Jason A. and Curran, Mark A. J. and Evans, Michael N. and Henley, Benjamin J. and Hao, Zhixin and Martrat, Belen and {McGregor}, Helen V. and Neukom, Raphael and Pederson, Gregory T. and Stenni, Barbara and Thirumalai, Kaustubh and Werner, Johannes P. and Xu, Chenxi and Divine, Dmitry V. and Dixon, Bronwyn C. and Gergis, Joelle and Mundo, Ignacio A. and Nakatsuka, Takeshi and Phipps, Steven J. and Routson, Cody C. and Steig, Eric J. and Tierney, Jessica E. and Tyler, Jonathan J. and Allen, Kathryn J. and Bertler, Nancy A. N. and Björklund, Jesper and Chase, Brian M. and Chen, Min-Te and Cook, Ed and Jong, Rixt de and {DeLong}, Kristine L. and Dixon, Daniel A. and Ekaykin, Alexey A. and Ersek, Vasile and Filipsson, Helena L. and Francus, Pierre and Freund, Mandy B. and Frezzotti, Massimo and Gaire, Narayan P. and Gajewski, Konrad and Ge, Quansheng and Goosse, Hugues and Gornostaeva, Anastasia and Grosjean, Martin and Horiuchi, Kazuho and Hormes, Anne and Husum, Katrine and Isaksson, Elisabeth and Kandasamy, Selvaraj and Kawamura, Kenji and Kilbourne, K. Halimeda and Koç, Nalan and Leduc, Guillaume and Linderholm, Hans W. and Lorrey, Andrew M. and Mikhalenko, Vladimir and Mortyn, P. Graham and Motoyama, Hideaki and Moy, Andrew D. and Mulvaney, Robert and Munz, Philipp M. and Nash, David J. and Oerter, Hans and Opel, Thomas and Orsi, Anais J. and Ovchinnikov, Dmitriy V. and Porter, Trevor J. and Roop, Heidi A. and Saenger, Casey and Sano, Masaki and Sauchyn, David and Saunders, Krystyna M. and Seidenkrantz, Marit-Solveig and Severi, Mirko and Shao, Xuemei and Sicre, Marie-Alexandrine and Sigl, Michael and Sinclair, Kate and George, Scott St and Jacques, Jeannine-Marie St and Thamban, Meloth and Thapa, Udya Kuwar and Thomas, Elizabeth R. and Turney, Chris and Uemura, Ryu and Viau, Andre E. and Vladimirova, Diana O. and Wahl, Eugene R. and White, James W. C. and Yu, Zicheng and Zinke, Jens},
-	urldate = {2017-07-12},
-	date = {2017-07-11},
-	langid = {english},
-	file = {Consortium et al. - 2017 - A global multiproxy database for temperature recon.pdf:C\:\\Users\\Brent Thorne\\Zotero\\storage\\V9X5BRUF\\Consortium et al. - 2017 - A global multiproxy database for temperature recon.pdf:application/pdf;Snapshot:C\:\\Users\\Brent Thorne\\Zotero\\storage\\GCREN8I7\\Consortium et al. - 2017 - A global multiproxy database for temperature recon.html:text/html}
-}
-
-@article{walvoord_increased_2007,
-	title = {Increased groundwater to stream discharge from permafrost thawing in the Yukon River basin: Potential impacts on lateral export of carbon and nitrogen},
-	volume = {34},
-	issn = {0094-8276},
-	url = {http://doi.wiley.com/10.1029/2007GL030216},
-	doi = {10.1029/2007GL030216},
-	shorttitle = {Increased groundwater to stream discharge from permafrost thawing in the Yukon River basin},
-	number = {12},
-	journaltitle = {Geophysical Research Letters},
-	author = {Walvoord, Michelle A. and Striegl, Robert G.},
-	urldate = {2017-07-12},
-	date = {2007-06-28},
-	langid = {english},
-	file = {Walvoord and Striegl - 2007 - Increased groundwater to stream discharge from per.pdf:C\:\\Users\\Brent Thorne\\Zotero\\storage\\K9HFZCT5\\Walvoord and Striegl - 2007 - Increased groundwater to stream discharge from per.pdf:application/pdf}
-}
-
-@article{tunaley_scaling_2017,
-	title = {Scaling effects of riparian peatlands on stable isotopes in runoff and {DOC} mobilisation},
-	volume = {549},
-	issn = {00221694},
-	url = {http://linkinghub.elsevier.com/retrieve/pii/S0022169417301956},
-	doi = {10.1016/j.jhydrol.2017.03.056},
-	pages = {220--235},
-	journaltitle = {Journal of Hydrology},
-	author = {Tunaley, C. and Tetzlaff, D. and Soulsby, C.},
-	urldate = {2017-07-12},
-	date = {2017-06},
-	langid = {english},
-	file = {Tunaley et al. - 2017 - Scaling effects of riparian peatlands on stable is.pdf:C\:\\Users\\Brent Thorne\\Zotero\\storage\\473I62RG\\Tunaley et al. - 2017 - Scaling effects of riparian peatlands on stable is.pdf:application/pdf}
-}
-
-@article{wissel_new_2008,
-	title = {A new approach for the isolation of cellulose from aquatic plant tissue and freshwater sediments for stable isotope analysis},
-	volume = {39},
-	issn = {01466380},
-	url = {http://linkinghub.elsevier.com/retrieve/pii/S0146638008002398},
-	doi = {10.1016/j.orggeochem.2008.07.014},
-	pages = {1545--1561},
-	number = {11},
-	journaltitle = {Organic Geochemistry},
-	author = {Wissel, Holger and Mayr, Christoph and Lücke, Andreas},
-	urldate = {2017-07-12},
-	date = {2008-11},
-	langid = {english},
-	file = {Wissel et al. - 2008 - A new approach for the isolation of cellulose from.pdf:C\:\\Users\\Brent Thorne\\Zotero\\storage\\C88UXPZF\\Wissel et al. - 2008 - A new approach for the isolation of cellulose from.pdf:application/pdf}
-}
-
-@book{speer_fundamentals_2010,
-	location = {Tucson},
-	title = {Fundamentals of tree-ring research},
-	isbn = {978-0-8165-2684-0},
-	pagetotal = {333},
-	publisher = {University of Arizona Press},
-	author = {Speer, James H.},
-	date = {2010},
-	note = {{OCLC}: ocn460061751},
-	keywords = {Dendrochronology, Growth, Tree-rings, Trees, Wood},
-	file = {Speer - 2010 - Fundamentals of tree-ring research.pdf:C\:\\Users\\Brent Thorne\\Zotero\\storage\\ZUQ5JRRD\\Speer - 2010 - Fundamentals of tree-ring research.pdf:application/pdf}
-}
-
-@article{arnon_copper_1949,
-	title = {Copper enzymes in isolated chloroplasts. Polyphenoloxidase in Beta vulgaris},
-	volume = {24},
-	url = {https://www.ncbi.nlm.nih.gov/pmc/articles/pmc437905/},
-	pages = {1},
-	number = {1},
-	journaltitle = {Plant physiology},
-	author = {Arnon, Daniel I.},
-	urldate = {2017-07-12},
-	date = {1949},
-	file = {Plant Physiology (Arnon, 1948).pdf:C\:\\Users\\Brent Thorne\\Zotero\\storage\\B28EETIK\\Plant Physiology (Arnon, 1948).pdf:application/pdf}
-}
-
-@inproceedings{shibghatallah_measuring_2013,
-	title = {Measuring leaf chlorophyll concentration from its color: A way in monitoring environment change to plantations},
-	volume = {1554},
-	url = {http://aip.scitation.org/doi/abs/10.1063/1.4820322},
-	shorttitle = {Measuring leaf chlorophyll concentration from its color},
-	pages = {210--213},
-	booktitle = {{AIP} Conference Proceedings},
-	publisher = {{AIP}},
-	author = {Shibghatallah, Muhammad Abdul Hakim and Khotimah, Siti Nurul and Suhandono, Sony and Viridi, Sparisoma and Kesuma, Teja},
-	urldate = {2017-07-12},
-	date = {2013},
-	file = {Measuring Leaf Chlorophyll Concentration from Its Color.pdf:C\:\\Users\\Brent Thorne\\Zotero\\storage\\ZV5ZSSFP\\Measuring Leaf Chlorophyll Concentration from Its Color.pdf:application/pdf}
-}
-
-@article{balasubramaniam_source_2015,
-	title = {Source water inputs and catchment characteristics regulate limnological conditions of shallow subarctic lakes (Old Crow Flats, Yukon, Canada)},
-	volume = {72},
-	issn = {0706-652X, 1205-7533},
-	url = {http://www.nrcresearchpress.com/doi/10.1139/cjfas-2014-0340},
-	doi = {10.1139/cjfas-2014-0340},
-	pages = {1058--1072},
-	number = {7},
-	journaltitle = {Canadian Journal of Fisheries and Aquatic Sciences},
-	author = {Balasubramaniam, Ann M. and Hall, Roland I. and Wolfe, Brent B. and Sweetman, Jon N. and Wang, Xiaowa and Smith, Ralph},
-	urldate = {2017-07-11},
-	date = {2015-07},
-	langid = {english},
-	file = {Balasubramaniam et al. - 2015 - Source water inputs and catchment characteristics .pdf:C\:\\Users\\Brent Thorne\\Zotero\\storage\\6AHUH3SG\\Balasubramaniam et al. - 2015 - Source water inputs and catchment characteristics .pdf:application/pdf}
-}
-
-@article{ahmed_hierarchical_2017,
-	title = {Hierarchical land cover and vegetation classification using multispectral data acquired from an unmanned aerial vehicle},
-	volume = {38},
-	pages = {2037--2052},
-	number = {8},
-	journaltitle = {International Journal of Remote Sensing},
-	author = {Ahmed, Oumer S. and Shemrock, Adam and Chabot, Dominique and Dillon, Chris and Williams, Griffin and Wasson, Rachel and Franklin, Steven E.},
-	date = {2017},
-	file = {Ahmed et al. - 2017 - Hierarchical land cover and vegetation classificat.pdf:C\:\\Users\\Brent Thorne\\Zotero\\storage\\IVAKQGUK\\Ahmed et al. - 2017 - Hierarchical land cover and vegetation classificat.pdf:application/pdf}
-}
-
-@thesis{myers-smith_shrub_2011,
-	title = {Shrub encroachment in arctic and alpine tundra: Patterns of expansion and ecosystem impacts.},
-	url = {https://era.library.ualberta.ca/files/df65v836z},
-	shorttitle = {Shrub encroachment in arctic and alpine tundra},
-	type = {phdthesis},
-	author = {Myers-Smith, Isla H.},
-	urldate = {2017-07-11},
-	date = {2011},
-	file = {Myers-Smith - 2011 - Shrub encroachment in arctic and alpine tundra Pa.pdf:C\:\\Users\\Brent Thorne\\Zotero\\storage\\3T9BCR66\\Myers-Smith - 2011 - Shrub encroachment in arctic and alpine tundra Pa.pdf:application/pdf}
-}
-
-@thesis{blok_shrubs_nodate,
-	title = {Shrubs in the cold: interactions between vegetation, permafrost and climate in Siberian tundra},
-	shorttitle = {Shrubs in the cold},
-	pagetotal = {152},
-	type = {phdthesis},
-	author = {Blok, Daan},
-	note = {{OCLC}: 930839610},
-	file = {Blok - Shrubs in the cold interactions between vegetatio.pdf:C\:\\Users\\Brent Thorne\\Zotero\\storage\\5XSARGGZ\\Blok - Shrubs in the cold interactions between vegetatio.pdf:application/pdf}
-}
-
-@article{schwartz_dating_2005,
-	title = {Dating the Growth of Oceanic Crust at a Slow-Spreading Ridge},
-	volume = {310},
-	issn = {0036-8075, 1095-9203},
-	url = {http://www.sciencemag.org/cgi/doi/10.1126/science.1116349},
-	doi = {10.1126/science.1116349},
-	pages = {654--657},
-	number = {5748},
-	journaltitle = {Science},
-	author = {Schwartz, J. J.},
-	urldate = {2017-07-11},
-	date = {2005-10-28},
-	langid = {english},
-	file = {Schwartz - 2005 - Dating the Growth of Oceanic Crust at a Slow-Sprea.pdf:C\:\\Users\\Brent Thorne\\Zotero\\storage\\GUADV58E\\Schwartz - 2005 - Dating the Growth of Oceanic Crust at a Slow-Sprea.pdf:application/pdf}
-}
-
-@article{castilla_we_2016,
-	title = {We Must all Pay More Attention to Rigor in Accuracy Assessment: Additional Comment to “The Improvement of Land Cover Classification by Thermal Remote Sensing”. Remote Sens. 2015, 7, 8368–8390},
-	volume = {8},
-	issn = {2072-4292},
-	url = {http://www.mdpi.com/2072-4292/8/4/288},
-	doi = {10.3390/rs8040288},
-	shorttitle = {We Must all Pay More Attention to Rigor in Accuracy Assessment},
-	pages = {288},
-	number = {4},
-	journaltitle = {Remote Sensing},
-	author = {Castilla, Guillermo},
-	urldate = {2017-07-11},
-	date = {2016-03-26},
-	langid = {english},
-	file = {Castilla - 2016 - We Must all Pay More Attention to Rigor in Accurac.pdf:C\:\\Users\\Brent Thorne\\Zotero\\storage\\V9PG28IA\\Castilla - 2016 - We Must all Pay More Attention to Rigor in Accurac.pdf:application/pdf}
-}
-
-@article{wolfe_environmental_2011,
-	title = {Environmental change and traditional use of the Old Crow Flats in northern Canada: an {IPY} opportunity to meet the challenges of the new northern research paradigm},
-	volume = {64},
-	url = {http://search.proquest.com/openview/09405a4d127d9f97d6eb37ae2598ef8b/1?pq-origsite=gscholar&cbl=40958},
-	shorttitle = {Environmental change and traditional use of the Old Crow Flats in northern Canada},
-	pages = {127},
-	number = {1},
-	journaltitle = {Arctic},
-	author = {Wolfe, Brent B. and Humphries, Murray M. and Pisaric, Michael FJ and Balasubramaniam, Ann M. and Burn, Chris R. and Chan, Laurie and Cooley, Dorothy and Froese, Duane G. and Graupe, Shel and Hall, Roland I. and {others}},
-	urldate = {2017-07-11},
-	date = {2011},
-	file = {Wolfe et al. - 2011 - Environmental change and traditional use of the Ol.pdf:C\:\\Users\\Brent Thorne\\Zotero\\storage\\ZPA2CX36\\Wolfe et al. - 2011 - Environmental change and traditional use of the Ol.pdf:application/pdf}
-}
-
-@article{turner_characterizing_2010,
-	title = {Characterizing the role of hydrological processes on lake water balances in the Old Crow Flats, Yukon Territory, Canada, using water isotope tracers},
-	volume = {386},
-	issn = {00221694},
-	url = {http://linkinghub.elsevier.com/retrieve/pii/S0022169410001381},
-	doi = {10.1016/j.jhydrol.2010.03.012},
-	pages = {103--117},
-	number = {1},
-	journaltitle = {Journal of Hydrology},
-	author = {Turner, Kevin W. and Wolfe, Brent B. and Edwards, Thomas W.D.},
-	urldate = {2017-07-11},
-	date = {2010-05},
-	langid = {english},
-	file = {Turner 2010 Characterising the role of hydrological process - OCF.pdf:C\:\\Users\\Brent Thorne\\Zotero\\storage\\CBN6I3K8\\Turner 2010 Characterising the role of hydrological process - OCF.pdf:application/pdf}
-}
-
-@article{sturm_changing_2005,
-	title = {Changing snow and shrub conditions affect albedo with global implications},
-	volume = {110},
-	issn = {0148-0227},
-	url = {http://doi.wiley.com/10.1029/2005JG000013},
-	doi = {10.1029/2005JG000013},
-	issue = {G1},
-	journaltitle = {Journal of Geophysical Research},
-	author = {Sturm, Matthew},
-	urldate = {2017-07-11},
-	date = {2005},
-	langid = {english},
-	file = {Sturm - 2005 - Changing snow and shrub conditions affect albedo w.pdf:C\:\\Users\\Brent Thorne\\Zotero\\storage\\4MWJX3K3\\Sturm - 2005 - Changing snow and shrub conditions affect albedo w.pdf:application/pdf}
-}
-
-@article{sturm_snowshrub_2001,
-	title = {Snow–shrub interactions in Arctic tundra: a hypothesis with climatic implications},
-	volume = {14},
-	url = {http://journals.ametsoc.org/doi/abs/10.1175/1520-0442(2001)014%3C0336:SSIIAT%3E2.0.CO%3B2},
-	shorttitle = {Snow–shrub interactions in Arctic tundra},
-	pages = {336--344},
-	number = {3},
-	journaltitle = {Journal of Climate},
-	author = {Sturm, Matthew and Holmgren, Jon and {McFadden}, Joseph P. and Liston, Glen E. and Chapin {III}, F. Stuart and Racine, Charles H.},
-	urldate = {2017-07-11},
-	date = {2001},
-	file = {Sturm et al. - 2001 - Snow–shrub interactions in Arctic tundra a hypoth.pdf:C\:\\Users\\Brent Thorne\\Zotero\\storage\\UKAKDNPV\\Sturm et al. - 2001 - Snow–shrub interactions in Arctic tundra a hypoth.pdf:application/pdf}
-}
-
-@article{blok_shrub_2010,
-	title = {Shrub expansion may reduce summer permafrost thaw in Siberian tundra},
-	volume = {16},
-	issn = {13541013, 13652486},
-	url = {http://doi.wiley.com/10.1111/j.1365-2486.2009.02110.x},
-	doi = {10.1111/j.1365-2486.2009.02110.x},
-	pages = {1296--1305},
-	number = {4},
-	journaltitle = {Global Change Biology},
-	author = {Blok, D. and Heijmans, M. M. P. D. and Schaepman-Strub, G. and Kononov, A. V. and Maximov, T. C. and Berendse, F.},
-	urldate = {2017-07-11},
-	date = {2010-04},
-	langid = {english},
-	file = {Blok et al. - 2010 - Shrub expansion may reduce summer permafrost thaw .pdf:C\:\\Users\\Brent Thorne\\Zotero\\storage\\35FI3H4X\\Blok et al. - 2010 - Shrub expansion may reduce summer permafrost thaw .pdf:application/pdf}
-}
-
-@article{beck_corrigendum:_2012,
-	title = {Corrigendum: Satellite observations of high northern latitude vegetation productivity changes between 1982 and 2008: ecological variability and regional differences},
-	volume = {7},
-	issn = {1748-9326},
-	url = {http://stacks.iop.org/1748-9326/7/i=2/a=029501?key=crossref.71b082981f4be8dfd192909a1eabddbf},
-	doi = {10.1088/1748-9326/7/2/029501},
-	shorttitle = {Corrigendum},
-	pages = {029501},
-	number = {2},
-	journaltitle = {Environmental Research Letters},
-	author = {Beck, Pieter S A and Goetz, Scott J},
-	urldate = {2017-07-11},
-	date = {2012-06-01},
-	file = {Beck and Goetz - 2012 - Corrigendum Satellite observations of high northe.pdf:C\:\\Users\\Brent Thorne\\Zotero\\storage\\4RRV3R4Z\\Beck and Goetz - 2012 - Corrigendum Satellite observations of high northe.pdf:application/pdf}
-}
-
-@article{paradis_greater_2016,
-	title = {Greater effect of increasing shrub height on winter versus summer soil temperature},
-	volume = {11},
-	issn = {1748-9326},
-	url = {http://stacks.iop.org/1748-9326/11/i=8/a=085005?key=crossref.7b7752b09481fb6d33045327abdd3395},
-	doi = {10.1088/1748-9326/11/8/085005},
-	pages = {085005},
-	number = {8},
-	journaltitle = {Environmental Research Letters},
-	author = {Paradis, Mélissa and Lévesque, Esther and Boudreau, Stéphane},
-	urldate = {2017-07-11},
-	date = {2016-08-01},
-	file = {Paradis et al. - 2016 - Greater effect of increasing shrub height on winte.pdf:C\:\\Users\\Brent Thorne\\Zotero\\storage\\HCJANEGX\\Paradis et al. - 2016 - Greater effect of increasing shrub height on winte.pdf:application/pdf}
-}
-
-@article{naito_patterns_2011,
-	title = {Patterns and processes of global shrub expansion},
-	volume = {35},
-	issn = {0309-1333, 1477-0296},
-	url = {http://journals.sagepub.com/doi/10.1177/0309133311403538},
-	doi = {10.1177/0309133311403538},
-	pages = {423--442},
-	number = {4},
-	journaltitle = {Progress in Physical Geography},
-	author = {Naito, Adam T. and Cairns, David M.},
-	urldate = {2017-07-11},
-	date = {2011-08},
-	langid = {english},
-	file = {Naito and Cairns - 2011 - Patterns and processes of global shrub expansion.pdf:C\:\\Users\\Brent Thorne\\Zotero\\storage\\5G8NZ9QP\\Naito and Cairns - 2011 - Patterns and processes of global shrub expansion.pdf:application/pdf}
-}
-
-@article{myers-smith_shrub_2011-1,
-	title = {Shrub expansion in tundra ecosystems: dynamics, impacts and research priorities},
-	volume = {6},
-	issn = {1748-9326},
-	url = {http://stacks.iop.org/1748-9326/6/i=4/a=045509?key=crossref.3e2b3e3172ca6f9fc39a607c137b880f},
-	doi = {10.1088/1748-9326/6/4/045509},
-	shorttitle = {Shrub expansion in tundra ecosystems},
-	pages = {045509},
-	number = {4},
-	journaltitle = {Environmental Research Letters},
-	author = {Myers-Smith, Isla H and Forbes, Bruce C and Wilmking, Martin and Hallinger, Martin and Lantz, Trevor and Blok, Daan and Tape, Ken D and Macias-Fauria, Marc and Sass-Klaassen, Ute and Lévesque, Esther and Boudreau, Stéphane and Ropars, Pascale and Hermanutz, Luise and Trant, Andrew and Collier, Laura Siegwart and Weijers, Stef and Rozema, Jelte and Rayback, Shelly A and Schmidt, Niels Martin and Schaepman-Strub, Gabriela and Wipf, Sonja and Rixen, Christian and Ménard, Cécile B and Venn, Susanna and Goetz, Scott and Andreu-Hayles, Laia and Elmendorf, Sarah and Ravolainen, Virve and Welker, Jeffrey and Grogan, Paul and Epstein, Howard E and Hik, David S},
-	urldate = {2017-07-11},
-	date = {2011-12-01},
-	file = {Myers-Smith et al. - 2011 - Shrub expansion in tundra ecosystems dynamics, im.pdf:C\:\\Users\\Brent Thorne\\Zotero\\storage\\GRPDSF39\\Myers-Smith et al. - 2011 - Shrub expansion in tundra ecosystems dynamics, im.pdf:application/pdf}
-}
-
-@article{loranty_tundra_2011,
-	title = {Tundra vegetation effects on pan-Arctic albedo},
-	volume = {6},
-	issn = {1748-9326},
-	url = {http://stacks.iop.org/1748-9326/6/i=2/a=029601?key=crossref.2e8808c62dac2c1672cede1d420f86fa},
-	doi = {10.1088/1748-9326/6/2/029601},
-	pages = {029601},
-	number = {2},
-	journaltitle = {Environmental Research Letters},
-	author = {Loranty, Michael M and Goetz, Scott J and Beck, Pieter S A},
-	urldate = {2017-07-11},
-	date = {2011-06-01},
-	file = {Loranty et al. - 2011 - Tundra vegetation effects on pan-Arctic albedo.pdf:C\:\\Users\\Brent Thorne\\Zotero\\storage\\CG2CSWIX\\Loranty et al. - 2011 - Tundra vegetation effects on pan-Arctic albedo.pdf:application/pdf}
-}
-
-@article{liston_modelled_2002,
-	title = {Modelled changes in arctic tundra snow, energy and moisture fluxes due to increased shrubs},
-	volume = {8},
-	url = {http://onlinelibrary.wiley.com/doi/10.1046/j.1354-1013.2001.00416.x/full},
-	pages = {17--32},
-	number = {1},
-	journaltitle = {Global Change Biology},
-	author = {Liston, Glen E. and Mcfadden, Joseph P. and Sturm, Matthew and Pielke, Roger A.},
-	urldate = {2017-07-11},
-	date = {2002},
-	file = {Liston et al. - 2002 - Modelled changes in arctic tundra snow, energy and.pdf:C\:\\Users\\Brent Thorne\\Zotero\\storage\\2H8GSEDM\\Liston et al. - 2002 - Modelled changes in arctic tundra snow, energy and.pdf:application/pdf}
-}
-
-@article{lantz_response_2010,
-	title = {Response of green alder (Alnus viridis subsp. fruticosa) patch dynamics and plant community composition to fire and regional temperature in north-western Canada: Response of vegetation to fire and regional climate},
-	issn = {03050270, 13652699},
-	url = {http://doi.wiley.com/10.1111/j.1365-2699.2010.02317.x},
-	doi = {10.1111/j.1365-2699.2010.02317.x},
-	shorttitle = {Response of green alder (Alnus viridis subsp. fruticosa) patch dynamics and plant community composition to fire and regional temperature in north-western Canada},
-	pages = {no--no},
-	journaltitle = {Journal of Biogeography},
-	author = {Lantz, Trevor C. and Gergel, Sarah E. and Henry, Greg H. R.},
-	urldate = {2017-07-11},
-	date = {2010-05},
-	langid = {english},
-	file = {Lantz et al. - 2010 - Response of green alder (Alnus viridis subsp. frut.pdf:C\:\\Users\\Brent Thorne\\Zotero\\storage\\U473UEV5\\Lantz et al. - 2010 - Response of green alder (Alnus viridis subsp. frut.pdf:application/pdf}
-}
-
-@article{lantz_relative_2009,
-	title = {Relative impacts of disturbance and temperature: persistent changes in microenvironment and vegetation in retrogressive thaw slumps},
-	volume = {15},
-	issn = {13541013, 13652486},
-	url = {http://doi.wiley.com/10.1111/j.1365-2486.2009.01917.x},
-	doi = {10.1111/j.1365-2486.2009.01917.x},
-	shorttitle = {Relative impacts of disturbance and temperature},
-	pages = {1664--1675},
-	number = {7},
-	journaltitle = {Global Change Biology},
-	author = {Lantz, Trevor C. and Kokelj, Steven V. and Gergel, Sarah E. and Henry, Greg H. R.},
-	urldate = {2017-07-11},
-	date = {2009-07},
-	langid = {english},
-	file = {Lantz et al. - 2009 - Relative impacts of disturbance and temperature p.pdf:C\:\\Users\\Brent Thorne\\Zotero\\storage\\7KFTF2Z5\\Lantz et al. - 2009 - Relative impacts of disturbance and temperature p.pdf:application/pdf}
-}
-
-@article{korosi_broad-scale_2017,
-	title = {Broad-scale lake expansion and flooding inundates essential wood bison habitat},
-	volume = {8},
-	issn = {2041-1723},
-	url = {http://www.nature.com/doifinder/10.1038/ncomms14510},
-	doi = {10.1038/ncomms14510},
-	pages = {14510},
-	journaltitle = {Nature Communications},
-	author = {Korosi, Jennifer B. and Thienpont, Joshua R. and Pisaric, Michael F. J. and {deMontigny}, Peter and Perreault, Joelle T. and {McDonald}, Jamylynn and Simpson, Myrna J. and Armstrong, Terry and Kokelj, Steven V. and Smol, John P. and Blais, Jules M.},
-	urldate = {2017-07-11},
-	date = {2017-02-23},
-	file = {Korosi et al. - 2017 - Broad-scale lake expansion and flooding inundates .pdf:C\:\\Users\\Brent Thorne\\Zotero\\storage\\8J5JH3BH\\Korosi et al. - 2017 - Broad-scale lake expansion and flooding inundates .pdf:application/pdf}
-}
-
-@article{hallinger_establishing_2010,
-	title = {Establishing a missing link: warm summers and winter snow cover promote shrub expansion into alpine tundra in Scandinavia},
-	volume = {186},
-	issn = {0028646X},
-	url = {http://doi.wiley.com/10.1111/j.1469-8137.2010.03223.x},
-	doi = {10.1111/j.1469-8137.2010.03223.x},
-	shorttitle = {Establishing a missing link},
-	pages = {890--899},
-	number = {4},
-	journaltitle = {New Phytologist},
-	author = {Hallinger, Martin and Manthey, Michael and Wilmking, Martin},
-	urldate = {2017-07-11},
-	date = {2010-06},
-	langid = {english},
-	file = {Hallinger et al. - 2010 - Establishing a missing link warm summers and wint.pdf:C\:\\Users\\Brent Thorne\\Zotero\\storage\\T2IXWH6W\\Hallinger et al. - 2010 - Establishing a missing link warm summers and wint.pdf:application/pdf}
-}
-
-@article{johnstone_environmental_2008,
-	title = {Environmental conditions and vegetation recovery at abandoned drilling mud sumps in the Mackenzie Delta region, Northwest Territories, Canada},
-	url = {http://www.jstor.org/stable/40513206},
-	pages = {199--211},
-	journaltitle = {Arctic},
-	author = {Johnstone, Jill F. and Kokelj, Steven V.},
-	urldate = {2017-07-11},
-	date = {2008},
-	file = {Johnstone and Kokelj - 2008 - Environmental conditions and vegetation recovery a.pdf:C\:\\Users\\Brent Thorne\\Zotero\\storage\\PUAK44TF\\Johnstone and Kokelj - 2008 - Environmental conditions and vegetation recovery a.pdf:application/pdf}
-}
-
-@article{kemper_directional_2009,
-	title = {Directional change in upland tundra plant communities 20-30 years after seismic exploration in the Canadian low-arctic},
-	volume = {20},
-	url = {http://onlinelibrary.wiley.com/doi/10.1111/j.1654-1103.2009.01069.x/full},
-	pages = {557--567},
-	number = {3},
-	journaltitle = {Journal of Vegetation Science},
-	author = {Kemper, J. Todd and Macdonald, S. Ellen},
-	urldate = {2017-07-11},
-	date = {2009},
-	file = {Kemper and Macdonald - 2009 - Directional change in upland tundra plant communit.pdf:C\:\\Users\\Brent Thorne\\Zotero\\storage\\SEJPMQPM\\Kemper and Macdonald - 2009 - Directional change in upland tundra plant communit.pdf:application/pdf}
-}
-
-@article{dial_changes_2007,
-	title = {Changes in the alpine forest-tundra ecotone commensurate with recent warming in southcentral Alaska: Evidence from orthophotos and field plots: {TREE} {LINE} {CHANGES} {IN} {SOUTHCENTRAL} {ALASKA}},
-	volume = {112},
-	issn = {01480227},
-	url = {http://doi.wiley.com/10.1029/2007JG000453},
-	doi = {10.1029/2007JG000453},
-	shorttitle = {Changes in the alpine forest-tundra ecotone commensurate with recent warming in southcentral Alaska},
-	pages = {n/a--n/a},
-	issue = {G4},
-	journaltitle = {Journal of Geophysical Research: Biogeosciences},
-	author = {Dial, Roman J. and Berg, Edward E. and Timm, Katriina and {McMahon}, Alissa and Geck, Jason},
-	urldate = {2017-07-11},
-	date = {2007-12},
-	langid = {english},
-	file = {Dial et al. - 2007 - Changes in the alpine forest-tundra ecotone commen.pdf:C\:\\Users\\Brent Thorne\\Zotero\\storage\\NV4FKNGN\\Dial et al. - 2007 - Changes in the alpine forest-tundra ecotone commen.pdf:application/pdf}
-}
-
-@article{dahlgren_age_2016,
-	title = {Age distributions of Greenlandic dwarf shrubs support concept of negligible actuarial senescence},
-	volume = {7},
-	issn = {21508925},
-	url = {http://doi.wiley.com/10.1002/ecs2.1521},
-	doi = {10.1002/ecs2.1521},
-	pages = {e01521},
-	number = {10},
-	journaltitle = {Ecosphere},
-	author = {Dahlgren, Johan P. and Rizzi, Silvia and Schweingruber, Fritz H. and Hellmann, Lena and Büntgen, Ulf},
-	urldate = {2017-07-11},
-	date = {2016-10},
-	langid = {english},
-	file = {Dahlgren_et_al-2016-Ecosphere.pdf:C\:\\Users\\Brent Thorne\\Zotero\\storage\\7G34882A\\Dahlgren_et_al-2016-Ecosphere.pdf:application/pdf}
-}
-
-@article{fraser_uav_2016,
-	title = {{UAV} photogrammetry for mapping vegetation in the low-Arctic},
-	volume = {2},
-	issn = {2368-7460},
-	url = {http://www.nrcresearchpress.com/doi/10.1139/as-2016-0008},
-	doi = {10.1139/as-2016-0008},
-	pages = {79--102},
-	number = {3},
-	journaltitle = {Arctic Science},
-	author = {Fraser, Robert H. and Olthof, Ian and Lantz, Trevor C. and Schmitt, Carla},
-	urldate = {2017-07-11},
-	date = {2016-09},
-	langid = {english},
-	file = {Fraser et al. - 2016 - UAV photogrammetry for mapping vegetation in the l.pdf:C\:\\Users\\Brent Thorne\\Zotero\\storage\\RBZXGWB9\\Fraser et al. - 2016 - UAV photogrammetry for mapping vegetation in the l.pdf:application/pdf}
-}
-
-@article{anisimov_arctic_2017,
-	title = {Arctic Ecosystems and their Services Under Changing Climate: Predictive-Modeling Assessment},
-	volume = {107},
-	url = {http://onlinelibrary.wiley.com/doi/10.1111/j.1931-0846.2016.12199.x/full},
-	shorttitle = {Arctic Ecosystems and their Services Under Changing Climate},
-	pages = {108--124},
-	number = {1},
-	journaltitle = {Geographical Review},
-	author = {Anisimov, Oleg and Kokorev, Vasily and Zhiltcova, Yelena},
-	urldate = {2017-07-11},
-	date = {2017},
-	file = {Arctic Ecosystems and Their Services Under Changing Climate.pdf:C\:\\Users\\Brent Thorne\\Zotero\\storage\\FQBTGIAK\\Arctic Ecosystems and Their Services Under Changing Climate.pdf:application/pdf}
-}
-
-@article{militino_stochastic_2017,
-	title = {Stochastic Spatio-Temporal Models for Analysing {NDVI} Distribution of {GIMMS} {NDVI}3g Images},
-	volume = {9},
-	issn = {2072-4292},
-	url = {http://www.mdpi.com/2072-4292/9/1/76},
-	doi = {10.3390/rs9010076},
-	pages = {76},
-	number = {1},
-	journaltitle = {Remote Sensing},
-	author = {Militino, Ana and Ugarte, Maria and Pérez-Goya, Unai},
-	urldate = {2017-07-11},
-	date = {2017-01-15},
-	langid = {english},
-	file = {Militino et al. - 2017 - Stochastic Spatio-Temporal Models for Analysing ND.pdf:C\:\\Users\\Brent Thorne\\Zotero\\storage\\TPPXSR5G\\Militino et al. - 2017 - Stochastic Spatio-Temporal Models for Analysing ND.pdf:application/pdf}
-}
-
-@article{moffat_recent_2016,
-	title = {Recent Vegetation Change (1980–2013) in the Tundra Ecosystems of the Tuktoyaktuk Coastlands, {NWT}, Canada},
-	volume = {48},
-	issn = {1523-0430, 1938-4246},
-	url = {http://www.bioone.org/doi/10.1657/AAAR0015-063},
-	doi = {10.1657/AAAR0015-063},
-	pages = {581--597},
-	number = {3},
-	journaltitle = {Arctic, Antarctic, and Alpine Research},
-	author = {Moffat, Nina D. and Lantz, Trevor C. and Fraser, Robert H. and Olthof, Ian},
-	urldate = {2017-07-11},
-	date = {2016-08},
-	langid = {english},
-	file = {Moffat et al. - 2016 - Recent Vegetation Change (1980–2013) in the Tundra.pdf:C\:\\Users\\Brent Thorne\\Zotero\\storage\\IJJ8UXS6\\Moffat et al. - 2016 - Recent Vegetation Change (1980–2013) in the Tundra.pdf:application/pdf}
-}
-
-@article{pattison_trends_2015,
-	title = {Trends in {NDVI} and Tundra Community Composition in the Arctic of {NE} Alaska Between 1984 and 2009},
-	volume = {18},
-	issn = {1432-9840, 1435-0629},
-	url = {http://link.springer.com/10.1007/s10021-015-9858-9},
-	doi = {10.1007/s10021-015-9858-9},
-	pages = {707--719},
-	number = {4},
-	journaltitle = {Ecosystems},
-	author = {Pattison, Robert R. and Jorgenson, Janet C. and Raynolds, Martha K. and Welker, Jeffery M.},
-	urldate = {2017-07-11},
-	date = {2015-06},
-	langid = {english},
-	file = {Pattison et al. - 2015 - Trends in NDVI and Tundra Community Composition in.pdf:C\:\\Users\\Brent Thorne\\Zotero\\storage\\M4GT9EHE\\Pattison et al. - 2015 - Trends in NDVI and Tundra Community Composition in.pdf:application/pdf}
-}
-
-@article{greaves_estimating_2015,
-	title = {Estimating aboveground biomass and leaf area of low-stature Arctic shrubs with terrestrial {LiDAR}},
-	volume = {164},
-	issn = {00344257},
-	url = {http://linkinghub.elsevier.com/retrieve/pii/S0034425715000826},
-	doi = {10.1016/j.rse.2015.02.023},
-	pages = {26--35},
-	journaltitle = {Remote Sensing of Environment},
-	author = {Greaves, Heather E. and Vierling, Lee A. and Eitel, Jan U.H. and Boelman, Natalie T. and Magney, Troy S. and Prager, Case M. and Griffin, Kevin L.},
-	urldate = {2017-07-11},
-	date = {2015-07},
-	langid = {english},
-	file = {Greaves et al. - 2015 - Estimating aboveground biomass and leaf area of lo.pdf:C\:\\Users\\Brent Thorne\\Zotero\\storage\\6IN4XJHA\\Greaves et al. - 2015 - Estimating aboveground biomass and leaf area of lo.pdf:application/pdf}
-}
-
-@article{olofsson_good_2014,
-	title = {Good practices for estimating area and assessing accuracy of land change},
-	volume = {148},
-	issn = {00344257},
-	url = {http://linkinghub.elsevier.com/retrieve/pii/S0034425714000704},
-	doi = {10.1016/j.rse.2014.02.015},
-	pages = {42--57},
-	journaltitle = {Remote Sensing of Environment},
-	author = {Olofsson, Pontus and Foody, Giles M. and Herold, Martin and Stehman, Stephen V. and Woodcock, Curtis E. and Wulder, Michael A.},
-	urldate = {2017-07-11},
-	date = {2014-05},
-	langid = {english},
-	file = {Olofsson et al. - 2014 - Good practices for estimating area and assessing a.pdf:C\:\\Users\\Brent Thorne\\Zotero\\storage\\MA5FKWXJ\\Olofsson et al. - 2014 - Good practices for estimating area and assessing a.pdf:application/pdf}
-}
-
-@article{wulder_lidar_2012,
-	title = {Lidar sampling for large-area forest characterization: A review},
-	volume = {121},
-	issn = {00344257},
-	url = {http://linkinghub.elsevier.com/retrieve/pii/S0034425712000855},
-	doi = {10.1016/j.rse.2012.02.001},
-	shorttitle = {Lidar sampling for large-area forest characterization},
-	pages = {196--209},
-	journaltitle = {Remote Sensing of Environment},
-	author = {Wulder, Michael A. and White, Joanne C. and Nelson, Ross F. and Næsset, Erik and Ørka, Hans Ole and Coops, Nicholas C. and Hilker, Thomas and Bater, Christopher W. and Gobakken, Terje},
-	urldate = {2017-07-11},
-	date = {2012-06},
-	langid = {english},
-	file = {Wulder et al. - 2012 - Lidar sampling for large-area forest characterizat.pdf:C\:\\Users\\Brent Thorne\\Zotero\\storage\\ARMF4NBB\\Wulder et al. - 2012 - Lidar sampling for large-area forest characterizat.pdf:application/pdf}
-}
-
-@article{porter_temperature-growth_2011,
-	title = {Temperature-growth divergence in white spruce forests of Old Crow Flats, Yukon Territory, and adjacent regions of northwestern North America},
-	volume = {17},
-	issn = {13541013},
-	url = {http://doi.wiley.com/10.1111/j.1365-2486.2011.02507.x},
-	doi = {10.1111/j.1365-2486.2011.02507.x},
-	pages = {3418--3430},
-	number = {11},
-	journaltitle = {Global Change Biology},
-	author = {Porter, Trevor J. and Pisaric, Michael F. J.},
-	urldate = {2017-07-11},
-	date = {2011-11},
-	langid = {english},
-	file = {Porter and Pisaric - 2011 - Temperature-growth divergence in white spruce fore.pdf:C\:\\Users\\Brent Thorne\\Zotero\\storage\\23CCN7BK\\Porter and Pisaric - 2011 - Temperature-growth divergence in white spruce fore.pdf:application/pdf}
-}
-
-@article{white_food_2007,
-	title = {Food and water security in a changing arctic climate},
-	volume = {2},
-	issn = {1748-9326},
-	url = {http://stacks.iop.org/1748-9326/2/i=4/a=045018?key=crossref.d4de7703f8707536a0c7fa3cf28caf94},
-	doi = {10.1088/1748-9326/2/4/045018},
-	pages = {045018},
-	number = {4},
-	journaltitle = {Environmental Research Letters},
-	author = {White, Daniel M and Craig Gerlach, S and Loring, Philip and Tidwell, Amy C and Chambers, Molly C},
-	urldate = {2017-07-11},
-	date = {2007-10},
-	file = {White et al. - 2007 - Food and water security in a changing arctic clima.pdf:C\:\\Users\\Brent Thorne\\Zotero\\storage\\UGI5NDKN\\White et al. - 2007 - Food and water security in a changing arctic clima.pdf:application/pdf}
-}
-
-@incollection{simpson_human_2012,
-	location = {Dordrecht},
-	title = {Human Impacts: Applications of Numerical Methods to Evaluate Surface-Water Acidification and Eutrophication},
-	volume = {5},
-	isbn = {978-94-007-2744-1 978-94-007-2745-8},
-	url = {http://link.springer.com/10.1007/978-94-007-2745-8},
-	series = {Developments in Paleoenvironmental Research},
-	pages = {579--614},
-	booktitle = {Tracking Environmental Change Using Lake Sediments},
-	publisher = {Springer Netherlands},
-	author = {Simpson, George L. and Hall, Roland I.},
-	editor = {Birks, H. John B. and Juggins, Steve and Smol, John P.},
-	urldate = {2017-07-11},
-	date = {2012},
-	doi = {10.1007/978-94-007-2745-8},
-	file = {Simpson and Hall - 2012 - Human Impacts Applications of Numerical Methods t.pdf:C\:\\Users\\Brent Thorne\\Zotero\\storage\\Z9CEMCUB\\Simpson and Hall - 2012 - Human Impacts Applications of Numerical Methods t.pdf:application/pdf}
-}
-
-@collection{birks_tracking_2012,
-	location = {Dordrecht},
-	title = {Tracking Environmental Change Using Lake Sediments},
-	volume = {5},
-	isbn = {978-94-007-2744-1 978-94-007-2745-8},
-	url = {http://link.springer.com/10.1007/978-94-007-2745-8},
-	series = {Developments in Paleoenvironmental Research},
-	publisher = {Springer Netherlands},
-	editor = {Birks, H. John B. and Lotter, André F. and Juggins, Steve and Smol, John P.},
-	urldate = {2017-07-11},
-	date = {2012},
-	doi = {10.1007/978-94-007-2745-8},
-	file = {Birks et al. - 2012 - Tracking Environmental Change Using Lake Sediments.pdf:C\:\\Users\\Brent Thorne\\Zotero\\storage\\J7KIKFJ7\\Birks et al. - 2012 - Tracking Environmental Change Using Lake Sediments.pdf:application/pdf}
-}
\ No newline at end of file
diff --git a/inst/rmarkdown/templates/posterdown_latex/skeleton/skeleton.Rmd b/inst/rmarkdown/templates/posterdown_latex/skeleton/skeleton.Rmd
deleted file mode 100644
index d2f92da..0000000
--- a/inst/rmarkdown/templates/posterdown_latex/skeleton/skeleton.Rmd
+++ /dev/null
@@ -1,119 +0,0 @@
----
-# PLEASE SEE THE README for in depth description github.com/brentthorne/posterdown
-#
-#---POSTER SIZE & DEFAULT FONT---#
-poster_height: "38in" # height in inches of poster
-poster_width: "45in" # width in inches of poster
-font_family: "palatino" # choose from typical latex fonts (example: "palatino")
-font_size: "30pt" #please see github.com/brentthorne/posterdown for compatible options.
-
-#---TITLE BOX OPTIONS---#
-#ESSENTIALS
-title: '\fontfamily{phv}\selectfont Using posterdown to generate reproducible conference posters via RMarkdown > Knitr > Markdown > Pandoc > Latex > PDF workflow'
-author: "Author One^1^ Author Two^2^"
-affiliation: "^1^Department of Poster Layouts, University of Markdown; ^2^Deparment of Another Institution, Institution University"
-#STYLE & FORMATTING
-titlebox_bgcol: "008080"  #Colour of the Title Box background
-titlebox_bordercol: "0b4545" #Colour of the title Box border.
-titlebox_shape: "all"
-titlebox_borderwidth: "1cm"
-title_textcol: "ffffff" #colour of title text
-author_textcol: "0b4545" # Colour of author text
-affiliation_textcol: "FFFFFF" # Colour of affiliation text
-title_textsize: "Huge"         # Poster title fontsize
-author_textsize: "Large"       # Author list font size
-affiliation_textsize: "large"  # Affiliation font size
-#ADDING LOGOS
-logoleft_name: 'Figures/posterdownlogo'
-logoleft_width: '3in'
-logoleft_xshift: '1in'
-logoleft_yshift: '1in'
-logoright_name: 'Figures/posterdownlogo'
-logoright_width: '3in'
-logoright_xshift: '-1in'
-logoright_yshift: '1in'
-
-#---POSTER BODY OPTIONS---#
-body_bgcol: "ffffff" #colour of the poster main background
-body_textsize: "normalsize"    # Size of the main poster body text
-body_textcol: "000000" # Colour of main text in the body of poster
-column_numbers: 4 # Number of columns that the poster has
-column_margins: "0.5in" # Margin spacing for columns
-columnline_col: "008080" #colour 
-columnline_width: "0pt" #width of line between each column
-#SECTION TITLE STYLING
-sectitle_textcol: "ffffff" # Colour of the poster section titles
-sectitle_bgcol: "0b4545" # Colour of the section title box
-sectitle_bordercol: "0b4545" # Colour of the border around the section title box.
-sectitle_borderwidth: "2mm" # Thicknes of the section title box border
-sectitle_boxshape: "uphill" # Changes the shape of the section title box.
-
-#---BIBLIOGRAPHY OPTIONS---#
-bibliography: MyLibrary # name of the .bib file used for referencing
-bibliography_spacing: 0.8 # sets the multiplier for line spacing of bibliography spacing (between 0 and 1)
-bibliography_textsize: "small"  # size of the bibliography text size (handy for one too many references!)
-
-#---OTHER---#
-cite_col: "CC0000" #colour of ciation elements
-url_col: "008080" #colour of url links
-link_col: "008080" #colour of other links within the poster
-footnote_textcol: "ffffff" # Colour of footnote text if used
-output: posterdown::posterdown_latex
----
-
-```{r setup, include=FALSE}
-knitr::opts_chunk$set(
-  results = 'asis',
-  echo = FALSE,
-  comment = FALSE,
-  warning = FALSE,
-  message = FALSE,
-  fig.align = 'center'
-)
-```
-
-# Introduction
-
-Welcome to `posterdown` ! This is my attempt to provide a semi-smooth workflow for those who wish to take their R Markdown skills to the conference world. Most features from R Markdown are available in this package such as Markdown section notation, figure captioning, and even citations like this one [@rmarkdown]. The rest of this example poster will show how you can insert typical conference poster features into your own document. 
-
-## Objectives
-
-1. Easy to use reproducible poster design. 
-2. Integration with R Markdown.
-3. Easy transition from `posterdown` to `thesisdown` or `rticles` [@rticles; @thesisdown].
-
-# Methods
-
-This package uses the same workflow approach as the R Markdown you know and love. Basically it goes from RMarkdown > Knitr > Markdown > Pandoc > HTML/CSS > PDF. You can even use the bibliography the same way [@turnerControlsWaterBalance2014].
-
-## Random text
-
-Lorem ipsum dolor sit amet, consectetur adipiscing elit. Aliquam placerat augue at velit tincidunt semper. Donec elementum porta posuere. Nullam interdum, odio at tincidunt feugiat, turpis nisi blandit eros, eu posuere risus felis non quam. Nam eget lorem odio. Duis et aliquet orci. Phasellus nec viverra est. Praesent odio orci, mattis vel mauris nec, consectetur fermentum mauris. Etiam eu hendrerit tortor. Donec mi tellus, efficitur et porttitor eu, auctor eu tellus. Quisque faucibus vestibulum sapien vel lacinia. Ut auctor lorem non interdum blandit.
-
-# Results
-
-Usually you want to have a nice table displaying some important results that you have calculated. In `posterdown` this is as easy as using the `kable` table formatting you are probably use to as per typical R Markdown formatting. I suggesting checking out the `kableExtra` package and its in depth documentation on customizing these tables found [here](https://haozhu233.github.io/kableExtra/awesome_table_in_pdf.pdf) [@kableExtra2019]. You can reference tables like so: Table \@ref(tab:mytable).
-
-
-```{r mytable, out.width='80%'}
-knitr::kable(iris[1:5, 1:4], caption = 'Table caption.',align = 'c',"html")
-```
-
-Or with figures: Figure \@ref(fig:standard-plot).
-
-```{r standard-plot, out.width='80%', fig.align='center', echo=TRUE, fig.cap='Great figure!'}
-plot(mtcars[1:2])
-```
-
-
-# Next Steps: More random text
-
-Aliquam sed faucibus risus, quis efficitur erat. Vestibulum semper mauris quis tempus eleifend. Aliquam sagittis dictum ipsum, quis viverra ligula eleifend ut. Curabitur sagittis vitae arcu eget faucibus. In non elementum felis. Duis et aliquam nunc. Nunc pulvinar sapien nunc, vel pretium nisi efficitur in. Fusce fringilla maximus leo et maximus. Fusce at ligula laoreet, iaculis mi at, auctor odio. Praesent sed elementum justo. Aenean consectetur risus rhoncus tincidunt efficitur. Praesent dictum mauris at diam maximus maximus [@thorneposterdown2019].
-
-# Conclusion
-
-Try `posterdown` out! Hopefully you like it!
-
-# References
-
-\printbibliography
diff --git a/inst/rmarkdown/templates/posterdown_latex/template.yaml b/inst/rmarkdown/templates/posterdown_latex/template.yaml
deleted file mode 100644
index b5d418f..0000000
--- a/inst/rmarkdown/templates/posterdown_latex/template.yaml
+++ /dev/null
@@ -1,4 +0,0 @@
-name: Posterdown LaTeX
-description: >
- Template for creating R Markdown based PDF via LaTeX
-create_dir: true
diff --git a/inst/rmarkdown/templates/posterdown_pdf/resources/template.tex b/inst/rmarkdown/templates/posterdown_pdf/resources/template.tex
deleted file mode 100644
index be5ec1f..0000000
--- a/inst/rmarkdown/templates/posterdown_pdf/resources/template.tex
+++ /dev/null
@@ -1,240 +0,0 @@
-%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-%% %%	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
-%% %% Contributors: Shea Connell (SC)
-%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-
-\documentclass[article,$font_size$,extrafontsizes]{memoir}
-
-%utf-8 seems to be important
-\RequirePackage[utf8]{inputenc}
-\RequirePackage[T1]{fontenc}
-\RequirePackage{lmodern}
-\RequirePackage{multicol}
-\RequirePackage{graphicx}
-\RequirePackage{lipsum}
-\RequirePackage{blindtext}
-\RequirePackage[svgnames,table]{xcolor}
-\RequirePackage{tikz}
-\RequirePackage[framemethod=tikz]{mdframed}
-\RequirePackage{color}
-\RequirePackage{geometry}
-\RequirePackage{adjmulticol}
-\RequirePackage[skins,most,listings,skins]{tcolorbox}
-
-%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{wrapfig}
-
-%rof hyperrefs
-\RequirePackage{hyperref}
-\hypersetup{
-    colorlinks=true,
-    linkcolor=linkcol,
-    citecolor=citecol,
-    filecolor=linkcol,
-    urlcolor=urlcol,
-}
-%For figure and table placement
-\RequirePackage{float}
-\floatplacement{figure}{H}
-\floatplacement{table}{H}
-
-%%%%%%%%% COLOURS %%%%%%%%
-%Fill/ Line Colours
-\definecolor{titleboxbgcol}{HTML}{$titlebox_bgcol$}
-\definecolor{titleboxbordercol}{HTML}{$titlebox_bordercol$}
-\definecolor{columnlinecol}{HTML}{$columnline_col$}
-\definecolor{bodybgcol}{HTML}{$body_bgcol$}
-\definecolor{sectitlebgcol}{HTML}{$sectitle_bgcol$}
-\definecolor{sectitlebordercol}{HTML}{$sectitle_bordercol$}
-% Text Colours
-\definecolor{titletextcol}{HTML}{$title_textcol$}
-\definecolor{authortextcol}{HTML}{$author_textcol$}
-\definecolor{affiliationtextcol}{HTML}{$affiliation_textcol$}
-\definecolor{sectitletextcol}{HTML}{$sectitle_textcol$}
-\definecolor{bodytextcol}{HTML}{$body_textcol$}
-\definecolor{footnotetextcol}{HTML}{$footnote_textcol$}
-\definecolor{citecol}{HTML}{$cite_col$}
-\definecolor{urlcol}{HTML}{$url_col$}
-\definecolor{linkcol}{HTML}{$link_col$}
-
-
-%Memoir spacing options
-%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}{$columnline_width$}
-\def\columnseprulecolor{\color{columnlinecol}}
-
-%define section title features
-\setsubsubsecheadstyle{\small\color{sectitletextcol}\textbf}% Set \section style
-\setsecnumformat{}
-\def\sectionmark#1{\markboth{#1}{#1}}
-
-%%%%%%%%%%%% TCOLORBOXES TO THE RESCUE %%%%%%%%%%%%%%%%%%%%
-%Title Box
-\newtcolorbox{topbox}{
-enhanced,
-colback=titleboxbgcol,
-colframe=titleboxbordercol,
-halign=center,
-boxrule=$titlebox_borderwidth$,
-sharp corners=$titlebox_shape$,
- overlay={
-    \node[anchor=south west]
-      at ([xshift=$logoleft_xshift$,yshift=$logoleft_yshift$]frame.south west)
-       {\includegraphics[width=$logoleft_width$]{$logoleft_name$}};
-    \node[anchor=south east]
-      at ([xshift=$logoright_xshift$,yshift=$logoright_yshift$]frame.south east)
-       {\includegraphics[width=$logoright_width$]{$logoright_name$}};}
-
-}
-%Body Section Title Box
-\newtcolorbox{myboxstuff}[1][]{
-code={\parindent=0em},
-colframe=sectitlebordercol,
-nobeforeafter,
-left skip=0pt,
-valign=center,
-halign=center,
-fontupper=\Large\bfseries,
-colupper=sectitletextcol,
-boxrule=$sectitle_borderwidth$,
-colback=sectitlebgcol,
-sharp corners=$sectitle_boxshape$, #1}
-\newcommand{\mybox}[1]{%
-\begin{myboxstuff}
-\strut #1
-\end{myboxstuff}%
-}
-\makeheadstyles{MyBox}{
-    \setsecheadstyle{\mybox}
-}
-\headstyles{MyBox}\makepagestyle{MyBox}
-%-----------------------------------------------------
-%Make sure that the page is empty of any preset items from memoir
-\thispagestyle{empty}
-
-%biblatex options
-\RequirePackage[sorting=none,backend=biber]{biblatex}
-\renewcommand*{\bibfont}{\$bibliography_textsize$} %% SC
-\bibliography{$bibliography$}
-\defbibheading{bibliography}[\bibname]{%
-\setlength\bibitemsep{$bibliography_spacing$\itemsep} %% SC
-\section*{#1}%
-\markboth{#1}{#1}}
-\AtBeginDocument{%
-  \renewcommand{\bibname}{References}
-}
-
-%Remove section numbering & set 2nd level header as first level
-%to avoid the automatic new page generated from memoir chapter
-%formatting
-\counterwithout{section}{chapter}
-\makechapterstyle{mydefault}{
-\addtocounter{secnumdepth}{2}
-\setsecheadstyle{\mybox}
-\setsubsecheadstyle{\itshape}
-\setsubsubsecheadstyle{\itshape}
-}
-
-%set the chapterstyle
-\chapterstyle{mydefault}
-
-%define column spacing
-\setlength\columnsep{$column_margins$}
-
-%spacing params
-\setlength\parindent{0em}
-\setlength\parskip{0em}
-\setlength\hangparas{0}
-
-%spacing after section head title
-\setaftersecskip{0em}
-\setbeforesecskip{1.5em}
-\setlength\textfloatsep{0in}
-\setlength\floatsep{0in}
-\setlength\intextsep{0in}
-
-\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
-
-%Footnote to white
-\RequirePackage{footmisc}
-\def\footnotelayout{\centering\color{footnotetextcol}}
-
-% see https://stackoverflow.com/a/47122900
-$if(highlighting-macros)$
-$highlighting-macros$
-$endif$
-
-% choose font family
-\RequirePackage{$font_family$}
-
-% define the BODYBGCOL
-\newpagecolor{bodybgcol}
-
-%sets footnote to be white hopefully
-\renewcommand\footnoterule{}
-\renewcommand{\thempfootnote}{\footnotesize\color{footnotetextcol}{\arabic{mpfootnote}}}
-
-%-------------- Begin Document -------------------%
-\begin{document}
-
-%-------------- Title Box Start ------------------%
-%tcolorbox allows for pictures hopefully
-\begin{topbox}
-  \color{titletextcol}
-  \vspace{0.5in}
-  \$title_textsize${$title$}  \\[0.3in]  %% SC
-  \color{authortextcol} \$author_textsize${$author$} \\[0.2in] %% SC
-  \color{affiliationtextcol} \$affiliation_textsize${$affiliation$} %% SC
-  \vspace{1cm}
-\end{topbox}
-%--------------- Title Box End -------------------%
-%----------------- Body Start --------------------%
-% Begin body of poster
-\begin{adjmulticols*}{$column_numbers$}{$column_margins$}{$column_margins$}
-\$body_textsize${  %% SC
-\color{bodytextcol}
-$body$
-}
-\end{adjmulticols*}
-%------------------ Body End ---------------------%
-%end the poster
-\end{document}
-
diff --git a/inst/rmarkdown/templates/posterdown_pdf/skeleton/Figures/posterdownlogo.png b/inst/rmarkdown/templates/posterdown_pdf/skeleton/Figures/posterdownlogo.png
deleted file mode 100644
index 258776d..0000000
--- a/inst/rmarkdown/templates/posterdown_pdf/skeleton/Figures/posterdownlogo.png
+++ /dev/null
Binary files differ
diff --git a/inst/rmarkdown/templates/posterdown_pdf/skeleton/MyLibrary.bib b/inst/rmarkdown/templates/posterdown_pdf/skeleton/MyLibrary.bib
deleted file mode 100644
index cfbb472..0000000
--- a/inst/rmarkdown/templates/posterdown_pdf/skeleton/MyLibrary.bib
+++ /dev/null
@@ -1,3308 +0,0 @@
-
-@article{noauthor_permafrost_2018,
-	title = {Permafrost Terrain Dynamics and Infrastructure Impacts Revealed by {UAV} Photogrammetry and Thermal Imaging},
-	abstract = {Unmanned Aerial Vehicle ({UAV}) systems, sensors, and photogrammetric processing techniques have enabled timely and highly detailed three-dimensional surface reconstructions at a scale that bridges the gap between conventional remote-sensing and ﬁeld-scale observations. In this work 29 rotary and ﬁxed-wing {UAV} surveys were conducted during multiple ﬁeld campaigns, totaling 47 ﬂights and over 14.3 km2, to document permafrost thaw subsidence impacts on or close to road infrastructure in the Northwest Territories, Canada. This paper provides four case studies: (1) terrain models and orthomosaic time series revealed the morphology and daily to annual dynamics of thaw-driven mass wasting phenomenon (retrogressive thaw slumps; {RTS}). Scar zone cut volume estimates ranged between 3.2 × 103 and 5.9 × 106 m3. The annual net erosion of {RTS} surveyed ranged between 0.35 × 103 and 0.39 × 106 m3. The largest {RTS} produced a long debris tongue with an estimated volume of 1.9 × 106 m3. Downslope transport of scar zone and embankment ﬁll materials was visualized using ﬂow vectors, while thermal imaging revealed areas of exposed ground ice and mobile lobes of saturated, thawed materials. (2) Stratigraphic models were developed for {RTS} headwalls, delineating ground-ice bodies and stratigraphic unconformities. (3) In poorly drained areas along road embankments, {UAV} surveys detected seasonal terrain uplift and settlement of up to 0.5 m ({\textgreater}1700 m2 in extent) as a result of injection ice development. (4) Time series of terrain models highlighted the thaw-driven evolution of a borrow pit (6.4 × 105 m3 cut volume) constructed in permafrost terrain, whereby ﬂuvial and thaw-driven sediment transfer (1.1 and 3.9 × 103 m3 a−1 respectively) was observed and whereby annual slope proﬁle reconﬁguration was monitored to gain management insights concerning site stabilization. Elevation model vertical accuracies were also assessed as part of the case studies and ranged between 0.02 and 0.13 m Root Mean Square Error, whereby photogrammetric models processed with Post-processed Kinematic image solutions achieved similar accuracies without ground control points over much larger and complex areas than previously reported. The high resolution of {UAV} surveys, and the capacity to derive quantitative time series provides novel insights into permafrost processes that are otherwise challenging to study. The timely emergence of these tools bridges ﬁeld-based research and applied studies with broad-scale remote-sensing approaches during a period when climate change is transforming permafrost environments.},
-	pages = {30},
-	date = {2018},
-	langid = {english},
-	file = {2018 - Permafrost Terrain Dynamics and Infrastructure Imp.pdf:C\:\\Users\\Brent Thorne\\Zotero\\storage\\FUDSGAUE\\2018 - Permafrost Terrain Dynamics and Infrastructure Imp.pdf:application/pdf}
-}
-
-@thesis{tank_sources_2009,
-	location = {Canada},
-	title = {Sources and cycling of dissolved organic carbon across a landscape of arctic delta lakes},
-	abstract = {Dissolved organic carbon ({DOC}) is a key regulator of aquatic ecosystems, and the primary substrate for aquatic bacteria. However, variations in function between different {DOC} sources are rarely studied. Arctic Mackenzie Delta lakes exhibit striking differences in {DOC} composition, with {DOC} sources ranging from C produced as a byproduct of aquatic plant (macrophyte) photosynthesis, to C derived from permafrost melting (thermokarst), and C delivered to lakes via river-water. This study assessed how variations in {DOC} source regulate the composition of the within-lake pool, drive bacterial metabolism and the contribution of bacterial biomass to higher trophic levels, and affect {CO}2 flux from Delta lakes. {DOC}-specific tracers showed macrophyte-derived {DOC} to comprise less than 15\% of the {DOC} pool in macrophyte-rich lakes, despite macrophyte C levels 7-12-fold greater than total {DOC}. However, bacterial δ13C indicated that bacteria preferentially incorporate {DOC} generated by macrophytes, while surveys and incubation experiments showed that bacterial metabolism is rapid on macrophytic {DOC}, with high rates of bacterial biomass production relative to respiratory loss as {CO}2. Accordingly, δ13C, δ15N, and fatty acid biomarkers demonstrated that zooplankton from macrophyte-rich lakes receive a greater proportion of their biomass from bacterial organic matter than zooplankton from other lake types. At the same time, however, experiments indicated that the high {pH} resulting from rapid photosynthesis in macrophyte-rich lakes can decrease the rate of bacterial metabolism over the short-term, and increase {CO}2 respiration at the expense of bacterial biomass production. In contrast, {DOC}-specific tracers indicated that thermokarst-derived {DOC} accumulates in lakes. Incubation experiments and in situ surveys revealed thermokarst {DOC} to be a relatively poor bacterial substrate, which resulted in proportionately more {CO}2 respiration, relative to bacterial biomass production, than observed for other Delta {DOC} sources. Moreover, multi-year surveys demonstrated that thermokarst lakes exhibit high levels of {CO}2 emission, despite clear undersaturation in other lakes, presumably because permafrost-derived {DOC} was largely respired by bacteria. Understanding the divergent roles played by the contrasting sources of {DOC} to Delta lakes both adds insight to the functioning of other lake regions, globally, and helps clarify the effect of climate-induced changes in {DOC} on northern lakes.},
-	pagetotal = {238},
-	institution = {Simon Fraser University},
-	type = {phdthesis},
-	author = {Tank, S. E.},
-	date = {2009},
-	file = {Tank - 2009 - Sources and cycling of dissolved organic carbon ac.pdf:C\:\\Users\\Brent Thorne\\Zotero\\storage\\UI6YIRWV\\Tank - 2009 - Sources and cycling of dissolved organic carbon ac.pdf:application/pdf}
-}
-
-@article{sobek_patterns_2007,
-	title = {Patterns and regulation of dissolved organic carbon: An analysis of 7,500 widely distributed lakes},
-	volume = {52},
-	issn = {1939-5590},
-	url = {https://aslopubs.onlinelibrary.wiley.com/doi/abs/10.4319/lo.2007.52.3.1208},
-	doi = {10.4319/lo.2007.52.3.1208},
-	shorttitle = {Patterns and regulation of dissolved organic carbon},
-	abstract = {Dissolved organic carbon ({DOC}) is a key parameter in lakes that can affect numerous features, including microbial metabolism, light climate, acidity, and primary production. In an attempt to understand the factors that regulate {DOC} in lakes, we assembled a large database (7,514 lakes from 6 continents) of {DOC} concentrations and other parameters that characterize the conditions in the lakes, the catchment, the soil, and the climate. {DOC} concentrations were in the range 0.1–332 mg L−1, and the median was 5.71 mg L−1. A partial least squares regression explained 48\% of the variability in lake {DOC} and showed that altitude, mean annual runoff, and precipitation were negatively correlated with lake {DOC}, while conductivity, soil carbon density, and soil C:N ratio were positively related with lake {DOC}. A multiple linear regression using altitude, mean annual runoff, and soil carbon density as predictors explained 40\% of the variability in lake {DOC}. While lake area and drainage ratio (catchment : lake area) were not correlated to lake {DOC} in the global data set, these two factors explained significant variation of the residuals of the multiple linear regression model in several regional subsets of data. These results suggest a hierarchical regulation of {DOC} in lakes, where climatic and topographic characteristics set the possible range of {DOC} concentrations of a certain region, and catchment and lake properties then regulate the {DOC} concentration in each individual lake.},
-	pages = {1208--1219},
-	number = {3},
-	journaltitle = {Limnology and Oceanography},
-	author = {Sobek, Sebastian and Tranvik, Lars J. and Prairie, Yves T. and Kortelainen, Pirkko and Cole, Jonathan J.},
-	urldate = {2018-10-24},
-	date = {2007-05-01},
-	langid = {english},
-	file = {Sobek et al. - 2007 - Patterns and regulation of dissolved organic carbo.pdf:C\:\\Users\\Brent Thorne\\Zotero\\storage\\5WVT5HTP\\Sobek et al. - 2007 - Patterns and regulation of dissolved organic carbo.pdf:application/pdf}
-}
-
-@article{macander_regional_2017,
-	title = {Regional Quantitative Cover Mapping of Tundra Plant Functional Types in Arctic Alaska},
-	volume = {9},
-	issn = {2072-4292},
-	url = {http://www.mdpi.com/2072-4292/9/10/1024},
-	doi = {10.3390/rs9101024},
-	abstract = {Ecosystem maps are foundational tools that support multi-disciplinary study design and applications including wildlife habitat assessment, monitoring and Earth-system modeling. Here, we present continuous-ﬁeld cover maps for tundra plant functional types ({PFTs}) across {\textasciitilde}125,000 km2 of Alaska’s North Slope at 30-m resolution. To develop maps, we collected a ﬁeld-based training dataset using a point-intercept sampling method at 225 plots spanning bioclimatic and geomorphic gradients. We stratiﬁed vegetation by nine {PFTs} (e.g., low deciduous shrub, dwarf evergreen shrub, sedge, lichen) and summarized measurements of the {PFTs}, open water, bare ground and litter using the cover metrics total cover (areal cover including the understory) and top cover (uppermost canopy or ground cover). We then developed 73 spectral predictors derived from Landsat satellite observations (surface reﬂectance composites for {\textasciitilde}15-day periods from May–August) and ﬁve gridded environmental predictors (e.g., summer temperature, climatological snow-free date) to model cover of {PFTs} using the random forest data-mining algorithm. Model performance tended to be best for canopy-forming {PFTs}, particularly deciduous shrubs. Our assessment of predictor importance indicated that models for low-statured {PFTs} were improved through the use of seasonal composites from early and late in the growing season, particularly when similar {PFTs} were aggregated together (e.g., total deciduous shrub, herbaceous). Continuous-ﬁeld maps have many advantages over traditional thematic maps, and the methods described here are well-suited to support periodic map updates in tandem with future ﬁeld and Landsat observations.},
-	pages = {1024},
-	number = {10},
-	journaltitle = {Remote Sensing},
-	author = {Macander, Matthew and Frost, Gerald and Nelson, Peter and Swingley, Christopher},
-	urldate = {2018-10-11},
-	date = {2017-10-04},
-	langid = {english},
-	file = {Macander et al. - 2017 - Regional Quantitative Cover Mapping of Tundra Plan.pdf:C\:\\Users\\Brent Thorne\\Zotero\\storage\\NLKZSHKX\\Macander et al. - 2017 - Regional Quantitative Cover Mapping of Tundra Plan.pdf:application/pdf}
-}
-
-@book{zazula_ice_2013,
-	location = {Whitehorse},
-	title = {Ice age Old Crow: Yukon's ancient history from north of the Arctic Circle},
-	isbn = {978-1-55362-634-3},
-	shorttitle = {Ice age Old Crow},
-	abstract = {"Introduction: The remote village of Old Crow is Yukon's only community north of the Arctic Circle. The fascinating ice age history in this region has captured the imaginations of scientists, the Vuntut Gwitchin and the world for generations. Bluffs and banks along the Old Crow River are the richest source of ice age fossils in Canada. The Old Crow region also provides important clues about when the first people arrived in North America. In addition, layers of sediment and soil laid down over millions of years provide a crucial framework for the study of climate change in the Arctic. Scientific evidence from the Old Crow region provides many answers - and even more questions - about the long-vanished ice age world. ... An integral part of the story of ice age research in the Old Crow region is the continued involvement of the Vuntut Gwitchin. Since ancient times they have encountered the fossils of strange ancient beasts as they traversed the land and travelled the river. The importance of these ancient fossils is reflected in stories told by elders about how life as they know it came to be. Since the first arrival of scientists more than a century ago, the local people of Old Crow have provided valuable assistance and taken the time to share their stories and culture. With the signing of land claims and self-government agreements in 1993 the Vuntut Gwitchin gained greater responsibility for the management of ancient artifacts and fossils on their land. As a result, the Vuntut Gwitchin Government ({VGG}) owns and manages all fossils and artifacts found since 1995 on Vuntut Gwitchin Settlement Land. The creation of Vuntut National Park in 1995 further highlighted the importance of ice age research in the Old Crow region to the people of Canada."--{ASTIS} [online] database.},
-	publisher = {Yukon Tourism and Culture},
-	author = {Zazula, Grant and Froese, Duane Gerald and Halladay, Patricia and {Yukon} and {Department of Tourism and Culture}},
-	date = {2013},
-	langid = {english},
-	note = {{OCLC}: 864275210},
-	file = {Zazula et al. - 2013 - Ice age Old Crow Yukon's ancient history from nor.pdf:C\:\\Users\\Brent Thorne\\Zotero\\storage\\8PR3KYD4\\Zazula et al. - 2013 - Ice age Old Crow Yukon's ancient history from nor.pdf:application/pdf}
-}
-
-@article{holden_identifying_2012,
-	title = {Identifying structural complexity in aeromagnetic data: An image analysis approach to greenfields gold exploration},
-	volume = {46},
-	issn = {01691368},
-	url = {http://linkinghub.elsevier.com/retrieve/pii/S0169136811001454},
-	doi = {10.1016/j.oregeorev.2011.11.002},
-	shorttitle = {Identifying structural complexity in aeromagnetic data},
-	abstract = {Aeromagnetic data is important for the exploration of gold and other hydrothermal deposits because geologically favourable environments are associated with changes in rock magnetism. For example, Archean orogenic gold mineralisation is known to be present in areas of structural complexity near major shear-zones that form conduits for mineralising ﬂuids. Potential ﬂuid pathways such as shear zones and faults are often associated with magnetite destructive alteration resulting in linear negative anomalies in magnetic data. Here, we present a new image analysis method that identiﬁes geological structural complexity using lineaments automatically mapped within magnetic data. This quantitative analysis is efﬁcient and self consistent in dealing with large volumes of data, and is suitable as a ﬁrst-pass ground selection tool for orogenic gold exploration in greenﬁeld terrains.},
-	pages = {47--59},
-	journaltitle = {Ore Geology Reviews},
-	author = {Holden, Eun-Jung and Wong, Jason C. and Kovesi, Peter and Wedge, Daniel and Dentith, Mike and Bagas, Leon},
-	urldate = {2018-10-03},
-	date = {2012-08},
-	langid = {english},
-	file = {Holden et al. - 2012 - Identifying structural complexity in aeromagnetic .pdf:C\:\\Users\\Brent Thorne\\Zotero\\storage\\VUVAL6C8\\Holden et al. - 2012 - Identifying structural complexity in aeromagnetic .pdf:application/pdf}
-}
-
-@thesis{noauthor_aspler_nodate,
-	title = {Aspler - Geology of Nonacho Basin - {PhD} Thesis - 1985.pdf},
-	type = {phdthesis},
-	file = {Aspler - Geology of Nonacho Basin - PhD Thesis - 1985.pdf:C\:\\Users\\Brent Thorne\\Zotero\\storage\\H3EF6FNV\\Aspler - Geology of Nonacho Basin - PhD Thesis - 1985.pdf:application/pdf}
-}
-
-@article{tyren_lineament_nodate,
-	title = {Lineament interpretation Short review and methodology},
-	pages = {42},
-	author = {Tyrén, Sven},
-	langid = {english},
-	file = {Tyrén - Lineament interpretation Short review and methodol.pdf:C\:\\Users\\Brent Thorne\\Zotero\\storage\\IX2X2DS9\\Tyrén - Lineament interpretation Short review and methodol.pdf:application/pdf}
-}
-
-@article{middleton_geological_nodate,
-	title = {{GEOLOGICAL} {LINEAMENT} {INTERPRETATION} {USING} {THE} {OBJECT}-{BASED} {IMAGE} {ANALYSIS} {APPROACH}: {RESULTS} {OF} {SEMI}-{AUTOMATED} {ANALYSES} {VERSUS} {VISUAL} {INTERPRETATION}},
-	pages = {20},
-	author = {Middleton, Maarit and Schnur, Tilo and Sorjonen-Ward, Peter},
-	langid = {english},
-	file = {Middleton et al. - GEOLOGICAL LINEAMENT INTERPRETATION USING THE OBJE.pdf:C\:\\Users\\Brent Thorne\\Zotero\\storage\\CDZR88LQ\\Middleton et al. - GEOLOGICAL LINEAMENT INTERPRETATION USING THE OBJE.pdf:application/pdf}
-}
-
-@article{loranty_reviews_2018,
-	title = {Reviews and syntheses: Changing ecosystem influences on soil thermal regimes in northern high-latitude permafrost regions},
-	issn = {1810-6285},
-	url = {https://www.biogeosciences-discuss.net/bg-2018-201/},
-	doi = {10.5194/bg-2018-201},
-	shorttitle = {Reviews and syntheses},
-	pages = {1--56},
-	journaltitle = {Biogeosciences Discussions},
-	author = {Loranty, Michael M. and Abbott, Benjamin W. and Blok, Daan and Douglas, Thomas A. and Epstein, Howard E. and Forbes, Bruce C. and Jones, Benjamin M. and Kholodov, Alexander L. and Kropp, Heather and Malhotra, Avni and Mamet, Steven D. and Myers-Smith, Isla H. and Natali, Susan M. and O{\textbackslash}\&amp;apos;Donnell, Jonathan A. and Phoenix, Gareth K. and Rocha, Adrian V. and Sonnentag, Oliver and Tape, Ken D. and Walker, Donald A.},
-	urldate = {2018-09-17},
-	date = {2018-05-07},
-	langid = {english},
-	file = {Loranty et al. - 2018 - Reviews and syntheses Changing ecosystem influenc.pdf:C\:\\Users\\Brent Thorne\\Zotero\\storage\\QM3WZTNY\\Loranty et al. - 2018 - Reviews and syntheses Changing ecosystem influenc.pdf:application/pdf}
-}
-
-@article{weymer_statistical_2018,
-	title = {Statistical modeling of the long-range-dependent structure of barrier island framework geology and surface geomorphology},
-	volume = {6},
-	issn = {2196-632X},
-	url = {https://www.earth-surf-dynam.net/6/431/2018/},
-	doi = {10.5194/esurf-6-431-2018},
-	abstract = {Shorelines exhibit long-range dependence ({LRD}) and have been shown in some environments to be described in the wave number domain by a power-law characteristic of scale independence. Recent evidence suggests that the geomorphology of barrier islands can, however, exhibit scale dependence as a result of systematic variations in the underlying framework geology. The {LRD} of framework geology, which inﬂuences island geomorphology and its response to storms and sea level rise, has not been previously examined. Electromagnetic induction ({EMI}) surveys conducted along Padre Island National Seashore ({PAIS}), Texas, United States, reveal that the {EMI} apparent conductivity (σa) signal and, by inference, the framework geology exhibits {LRD} at scales of up to 101 to 102 km. Our study demonstrates the utility of describing {EMI} σa and lidar spatial series by a fractional autoregressive integrated moving average ({ARIMA}) process that speciﬁcally models {LRD}. This method offers a robust and compact way of quantifying the geological variations along a barrier island shoreline using three statistical parameters (p, d, q). We discuss how {ARIMA} models that use a single parameter d provide a quantitative measure for determining free and forced barrier island evolutionary behavior across different scales. Statistical analyses at regional, intermediate, and local scales suggest that the geologic framework within an area of paleo-channels exhibits a ﬁrst-order control on dune height. The exchange of sediment amongst nearshore, beach, and dune in areas outside this region are scale independent, implying that barrier islands like {PAIS} exhibit a combination of free and forced behaviors that affect the response of the island to sea level rise.},
-	pages = {431--450},
-	number = {2},
-	journaltitle = {Earth Surface Dynamics},
-	author = {Weymer, Bradley A. and Wernette, Phillipe and Everett, Mark E. and Houser, Chris},
-	urldate = {2018-09-12},
-	date = {2018-06-01},
-	langid = {english},
-	file = {Weymer et al. - 2018 - Statistical modeling of the long-range-dependent s.PDF:C\:\\Users\\Brent Thorne\\Zotero\\storage\\BXBDDUKW\\Weymer et al. - 2018 - Statistical modeling of the long-range-dependent s.PDF:application/pdf}
-}
-
-@article{park_influence_2012,
-	title = {The influence of climate and hydrological variables on opposite anomaly in active layer thickness between Eurasian and North American watersheds},
-	volume = {6},
-	issn = {1994-0440},
-	url = {http://www.the-cryosphere-discuss.net/6/2537/2012/},
-	doi = {10.5194/tcd-6-2537-2012},
-	pages = {2537--2574},
-	number = {4},
-	journaltitle = {The Cryosphere Discussions},
-	author = {Park, H. and Walsh, J. and Fedorov, A. N. and Sherstiukov, A. B. and Iijima, Y. and Ohata, T.},
-	urldate = {2018-09-10},
-	date = {2012-07-17},
-	langid = {english},
-	file = {Park et al. - 2012 - The influence of climate and hydrological variable.pdf:C\:\\Users\\Brent Thorne\\Zotero\\storage\\RVMGM4HC\\Park et al. - 2012 - The influence of climate and hydrological variable.pdf:application/pdf}
-}
-
-@article{morison_hydrology_nodate,
-	title = {Hydrology and Nutrient Biogeochemistry of Shallow Pond-Peatland Complexes, Hudson Bay Lowlands},
-	pages = {186},
-	author = {Morison, Matthew},
-	langid = {english},
-	file = {Morison - Hydrology and Nutrient Biogeochemistry of Shallow .pdf:C\:\\Users\\Brent Thorne\\Zotero\\storage\\9F8RG8VX\\Morison - Hydrology and Nutrient Biogeochemistry of Shallow .pdf:application/pdf}
-}
-
-@article{bolduc_multiyear_2018,
-	title = {Multiyear variations in High Arctic river temperatures in response to climate variability},
-	issn = {2368-7460},
-	url = {http://www.nrcresearchpress.com/doi/10.1139/as-2017-0053},
-	doi = {10.1139/as-2017-0053},
-	abstract = {Water temperature measurements (2004–2016) from two small rivers in the High Arctic were analyzed to determine the effects of climate variability on thermal regime and the sensitivity to climate change. The East and West rivers (unofficial names) drain similar watersheds (11.6 and 8.0 km2, respectively) and are located at the Cape Bounty Arctic Watershed Observatory ({CBAWO}), Melville Island, Canada (74°55′N, 109°35′W). Differences in seasonal timing of river temperatures were evident when comparing the coldest and warmest years of the study period, and across different discharge conditions. Snowmelt runoff is characterized by uniformly cold water (∼0–1 °C) over a wide range of discharge conditions, followed by warming water temperatures during flow recession. The rivers showed varying sensitivity to mid-summer air temperature conditions in a given year, with warmer years indicating high correlation (r2 = 0.794–0.929), whereas colder years showed reduced correlation (r2 = 0.368–0.778). River temperatures reached levels which are reported to negatively affect fish and other cold-water aquatic species ({\textgreater}18 °C) with greater frequency and duration during the warmest years. These results provide a basis to further enhance prediction of river thermal conditions to assess ecosystem health in a river system and to refine insights into the effects of climate change on High Arctic aquatic ecosystems.},
-	pages = {1--19},
-	journaltitle = {Arctic Science},
-	author = {Bolduc, Christopher and Lamoureux, Scott F.},
-	urldate = {2018-09-02},
-	date = {2018-04-17},
-	langid = {english},
-	file = {Bolduc and Lamoureux - 2018 - Multiyear variations in High Arctic river temperat.pdf:C\:\\Users\\Brent Thorne\\Zotero\\storage\\BR5SN5GZ\\Bolduc and Lamoureux - 2018 - Multiyear variations in High Arctic river temperat.pdf:application/pdf}
-}
-
-@article{matveev_methane_2018,
-	title = {Methane and carbon dioxide emissions from thermokarst lakes on mineral soils},
-	issn = {2368-7460},
-	url = {http://www.nrcresearchpress.com/doi/10.1139/as-2017-0047},
-	doi = {10.1139/as-2017-0047},
-	abstract = {Thermokarst lakes are known to emit methane ({CH}4) and carbon dioxide ({CO}2), but little attention has been given to those formed from the thawing and collapse of lithalsas, ice-rich mineral soil mounds that occur in permafrost landscapes. The present study was undertaken to assess greenhouse gas stocks and fluxes in eight lithalsa lakes across a 200 km gradient of permafrost degradation in subarctic Québec. The northernmost lakes varied in their surface-water {CO}2 content from below to above saturation, but the southern lakes in this gradient had much higher surface concentrations that were well above airequilibrium. Surface-water {CH}4 concentrations were at least an order of magnitude above air-equilibrium values at all sites, and the diffusive fluxes of both gases increased from north to south. Methane oxidation in the surface waters from a northern lake was only 10\% of the emission rate, but at the southern end it was around 60\% of the efflux to the atmosphere, indicating that methanotrophy can play a substantive role in reducing net emissions. Overall, our observations show that lithalsa lakes can begin emitting {CH}4 and {CO}2 soon after they form, with effluxes of both gases that persist and increase as the permafrost continues to warm and erode.},
-	pages = {1--21},
-	journaltitle = {Arctic Science},
-	author = {Matveev, Alex and Laurion, Isabelle and Vincent, Warwick F.},
-	urldate = {2018-08-26},
-	date = {2018-05-17},
-	langid = {english},
-	file = {Matveev et al. - 2018 - Methane and carbon dioxide emissions from thermoka.pdf:C\:\\Users\\Brent Thorne\\Zotero\\storage\\5KIDBYHG\\Matveev et al. - 2018 - Methane and carbon dioxide emissions from thermoka.pdf:application/pdf}
-}
-
-@book{davis_permafrost:_2001,
-	location = {Fairbanks, Alaska},
-	title = {Permafrost: a guide to frozen ground in transition},
-	isbn = {978-1-889963-19-8},
-	shorttitle = {Permafrost},
-	pagetotal = {351},
-	publisher = {University of Alaska Press},
-	author = {Davis, T. Neil},
-	date = {2001},
-	keywords = {Permafrost}
-}
-
-@article{hindshaw_origin_2016,
-	title = {Origin and temporal variability of unusually low \textit{δ} $^{\textrm{13}}$ C-{DOC} values in two High Arctic catchments: {UNUSUALLY} {LOW} {\textless}i{\textgreater}δ{\textless}/i{\textgreater} $^{\textrm{13}}$ C-{DOC} {VALUES}},
-	volume = {121},
-	issn = {21698953},
-	url = {http://doi.wiley.com/10.1002/2015JG003303},
-	doi = {10.1002/2015JG003303},
-	shorttitle = {Origin and temporal variability of unusually low \textit{δ} $^{\textrm{13}}$ C-{DOC} values in two High Arctic catchments},
-	abstract = {The stable carbon isotopic composition of dissolved organic matter (������13C-{DOC}) reveals information about its source and extent of biological processing. Here we report the lowest ������13C-{DOC} values (−43.8‰) measured to date in surface waters. The streams were located in the High Arctic, a region currently experiencing rapid changes in climate and carbon cycling. Based on the widespread occurrence of methane cycling in permafrost regions and the detection of the {pmoA} gene, a proxy for aerobic methanotrophs, we conclude that the low ������13C-{DOC} values are due to organic matter partially derived from methanotrophs consuming biologically produced, 13C-depleted methane. These ﬁndings demonstrate the signiﬁcant impact that biological activity has on the stream water chemistry exported from permafrost and glaciated environments in the Arctic. Given that the catchments studied here are representative of larger areas of the Arctic, occurrences of low ������13C-{DOC} values may be more widespread than previously recognized, with implications for understanding C cycling in these environments.},
-	pages = {1073--1085},
-	number = {4},
-	journaltitle = {Journal of Geophysical Research: Biogeosciences},
-	author = {Hindshaw, R. S. and Lang, S. Q. and Bernasconi, S. M. and Heaton, T. H. E. and Lindsay, M. R. and Boyd, E. S.},
-	urldate = {2018-07-19},
-	date = {2016-04},
-	langid = {english},
-	file = {Hindshaw et al. - 2016 - Origin and temporal variability of unusually low .pdf:C\:\\Users\\Brent Thorne\\Zotero\\storage\\LWN5SYIG\\Hindshaw et al. - 2016 - Origin and temporal variability of unusually low .pdf:application/pdf}
-}
-
-@article{frey_impacts_2009,
-	title = {Impacts of permafrost degradation on arctic river biogeochemistry},
-	volume = {23},
-	issn = {08856087, 10991085},
-	url = {http://doi.wiley.com/10.1002/hyp.7196},
-	doi = {10.1002/hyp.7196},
-	abstract = {Over the next century, near-surface permafrost across the circumpolar Arctic is expected to degrade signiﬁcantly, particularly for land areas south of 70°N. This is likely to cause widespread impacts on arctic hydrology, ecology, and trace gas emissions. Here, we present a review of recent studies investigating linkages between permafrost dynamics and river biogeochemistry in the Arctic, including consideration of likely impacts that warming-induced changes in permafrost may be having (or will have in the future) on the delivery of organic matter, inorganic nutrients, and major ions to the Arctic Ocean. These interacting processes can be highly complex and undoubtedly exhibit spatial and temporal variabilities associated with current permafrost conditions, sensitivity to permafrost thaw, mode of permafrost degradation (overall permafrost thaw, active layer deepening, and/or thermokarst processes), and environmental characteristics of watersheds (e.g. land cover, soil type, and topography). One of the most profound consequences of permafrost thaw projected for the future is that the arctic terrestrial freshwater system is likely to experience a transition from a surface water-dominated system to a groundwater-dominated system. Along with many other cascading impacts from this transition, mineral-rich groundwater may become an important contributor to streamﬂow, in addition to the currently dominant contribution from mineral-poor surface water. Most studies observe or predict an increase in major ion, phosphate, and silicate export with this shift towards greater groundwater contributions. However, we see conﬂicting accounts of whether the delivery of inorganic nitrogen and organic matter will increase or decrease with warming and permafrost thaw. It is important to note that uncertainties in the predictions of the total ﬂux of biogeochemical constituents are tightly linked to future uncertainties in discharge of rivers. Nonetheless, it is clear that over the next century there will be important shifts in the river transport of organic matter, inorganic nutrients, and major ions, which may in turn have critical implications for primary production and carbon cycling on arctic shelves and in the Arctic Ocean basin interior. Copyright  2008 John Wiley \& Sons, Ltd.},
-	pages = {169--182},
-	number = {1},
-	journaltitle = {Hydrological Processes},
-	author = {Frey, Karen E. and {McClelland}, James W.},
-	urldate = {2018-07-17},
-	date = {2009-01-01},
-	langid = {english},
-	file = {Frey and McClelland - 2009 - Impacts of permafrost degradation on arctic river .pdf:C\:\\Users\\Brent Thorne\\Zotero\\storage\\VGHCAHGV\\Frey and McClelland - 2009 - Impacts of permafrost degradation on arctic river .pdf:application/pdf}
-}
-
-@article{vonk_reviews_2015,
-	title = {Reviews and syntheses: Effects of permafrost thaw on Arctic aquatic ecosystems},
-	volume = {12},
-	issn = {1726-4189},
-	url = {https://www.biogeosciences.net/12/7129/2015/},
-	doi = {10.5194/bg-12-7129-2015},
-	shorttitle = {Reviews and syntheses},
-	pages = {7129--7167},
-	number = {23},
-	journaltitle = {Biogeosciences},
-	author = {Vonk, J. E. and Tank, S. E. and Bowden, W. B. and Laurion, I. and Vincent, W. F. and Alekseychik, P. and Amyot, M. and Billet, M. F. and Canário, J. and Cory, R. M. and Deshpande, B. N. and Helbig, M. and Jammet, M. and Karlsson, J. and Larouche, J. and {MacMillan}, G. and Rautio, M. and Walter Anthony, K. M. and Wickland, K. P.},
-	urldate = {2018-07-17},
-	date = {2015-12-08},
-	langid = {english},
-	file = {Vonk et al. - 2015 - Reviews and syntheses Effects of permafrost thaw .pdf:C\:\\Users\\Brent Thorne\\Zotero\\storage\\FP89SUHS\\Vonk et al. - 2015 - Reviews and syntheses Effects of permafrost thaw .pdf:application/pdf}
-}
-
-@article{waldrop_molecular_2010,
-	title = {Molecular investigations into a globally important carbon pool: permafrost-protected carbon in Alaskan soils},
-	volume = {16},
-	issn = {1365-2486},
-	url = {https://onlinelibrary.wiley.com/doi/abs/10.1111/j.1365-2486.2009.02141.x},
-	doi = {10.1111/j.1365-2486.2009.02141.x},
-	shorttitle = {Molecular investigations into a globally important carbon pool},
-	abstract = {The fate of carbon (C) contained within permafrost in boreal forest environments is an important consideration for the current and future carbon cycle as soils warm in northern latitudes. Currently, little is known about the microbiology or chemistry of permafrost soils that may affect its decomposition once soils thaw. We tested the hypothesis that low microbial abundances and activities in permafrost soils limit decomposition rates compared with active layer soils. We examined active layer and permafrost soils near Fairbanks, {AK}, the Yukon River, and the Arctic Circle. Soils were incubated in the lab under aerobic and anaerobic conditions. Gas fluxes at −5 and 5 °C were measured to calculate temperature response quotients (Q10). The Q10 was lower in permafrost soils (average 2.7) compared with active layer soils (average 7.5). Soil nutrients, leachable dissolved organic C ({DOC}) quality and quantity, and nuclear magnetic resonance spectroscopy of the soils revealed that the organic matter within permafrost soils is as labile, or even more so, than surface soils. Microbial abundances (fungi, bacteria, and subgroups: methanogens and Basidiomycetes) and exoenzyme activities involved in decomposition were lower in permafrost soils compared with active layer soils, which, together with the chemical data, supports the reduced Q10 values. {CH}4 fluxes were correlated with methanogen abundance and the highest {CH}4 production came from active layer soils. These results suggest that permafrost soils have high inherent decomposability, but low microbial abundances and activities reduce the temperature sensitivity of C fluxes. Despite these inherent limitations, however, respiration per unit soil C was higher in permafrost soils compared with active layer soils, suggesting that decomposition and heterotrophic respiration may contribute to a positive feedback to warming of this eco region.},
-	pages = {2543--2554},
-	number = {9},
-	journaltitle = {Global Change Biology},
-	author = {Waldrop, M. P. and Wickland, K. P. and Iii, R. White and Berhe, A. A. and Harden, J. W. and Romanovsky, V. E.},
-	urldate = {2018-07-17},
-	date = {2010},
-	langid = {english},
-	keywords = {carbon cycling, enzymes, methanogenesis, microbial communities, permafrost, respiration},
-	file = {Waldrop et al. - Molecular investigations into a globally important.pdf:C\:\\Users\\Brent Thorne\\Zotero\\storage\\FMFNECBB\\Waldrop et al. - Molecular investigations into a globally important.pdf:application/pdf}
-}
-
-@article{drake_ancient_2015,
-	title = {Ancient low–molecular-weight organic acids in permafrost fuel rapid carbon dioxide production upon thaw},
-	volume = {112},
-	issn = {0027-8424, 1091-6490},
-	url = {http://www.pnas.org/lookup/doi/10.1073/pnas.1511705112},
-	doi = {10.1073/pnas.1511705112},
-	pages = {13946--13951},
-	number = {45},
-	journaltitle = {Proceedings of the National Academy of Sciences},
-	author = {Drake, Travis W. and Wickland, Kimberly P. and Spencer, Robert G. M. and {McKnight}, Diane M. and Striegl, Robert G.},
-	urldate = {2018-07-17},
-	date = {2015-11-10},
-	langid = {english},
-	file = {Drake et al. - 2015 - Ancient low–molecular-weight organic acids in perm.pdf:C\:\\Users\\Brent Thorne\\Zotero\\storage\\QH32PI44\\Drake et al. - 2015 - Ancient low–molecular-weight organic acids in perm.pdf:application/pdf}
-}
-
-@article{wickland_dissolved_2007,
-	title = {Dissolved Organic Carbon in Alaskan Boreal Forest: Sources, Chemical Characteristics, and Biodegradability},
-	volume = {10},
-	issn = {1432-9840, 1435-0629},
-	url = {http://link.springer.com/10.1007/s10021-007-9101-4},
-	doi = {10.1007/s10021-007-9101-4},
-	shorttitle = {Dissolved Organic Carbon in Alaskan Boreal Forest},
-	pages = {1323--1340},
-	number = {8},
-	journaltitle = {Ecosystems},
-	author = {Wickland, Kimberly P. and Neff, Jason C. and Aiken, George R.},
-	urldate = {2018-07-17},
-	date = {2007-12},
-	langid = {english},
-	file = {Wickland et al. - 2007 - Dissolved Organic Carbon in Alaskan Boreal Forest.pdf:C\:\\Users\\Brent Thorne\\Zotero\\storage\\EEKLIR9K\\Wickland et al. - 2007 - Dissolved Organic Carbon in Alaskan Boreal Forest.pdf:application/pdf}
-}
-
-@article{schuur_expert_2013,
-	title = {Expert assessment of vulnerability of permafrost carbon to climate change},
-	volume = {119},
-	issn = {0165-0009, 1573-1480},
-	url = {http://link.springer.com/10.1007/s10584-013-0730-7},
-	doi = {10.1007/s10584-013-0730-7},
-	pages = {359--374},
-	number = {2},
-	journaltitle = {Climatic Change},
-	author = {Schuur, E. A. G. and Abbott, B. W. and Bowden, W. B. and Brovkin, V. and Camill, P. and Canadell, J. G. and Chanton, J. P. and Chapin, F. S. and Christensen, T. R. and Ciais, P. and Crosby, B. T. and Czimczik, C. I. and Grosse, G. and Harden, J. and Hayes, D. J. and Hugelius, G. and Jastrow, J. D. and Jones, J. B. and Kleinen, T. and Koven, C. D. and Krinner, G. and Kuhry, P. and Lawrence, D. M. and {McGuire}, A. D. and Natali, S. M. and O’Donnell, J. A. and Ping, C. L. and Riley, W. J. and Rinke, A. and Romanovsky, V. E. and Sannel, A. B. K. and Schädel, C. and Schaefer, K. and Sky, J. and Subin, Z. M. and Tarnocai, C. and Turetsky, M. R. and Waldrop, M. P. and Walter Anthony, K. M. and Wickland, K. P. and Wilson, C. J. and Zimov, S. A.},
-	urldate = {2018-07-17},
-	date = {2013-07},
-	langid = {english},
-	file = {Schuur et al. - 2013 - Expert assessment of vulnerability of permafrost c.pdf:C\:\\Users\\Brent Thorne\\Zotero\\storage\\T3XQGA86\\Schuur et al. - 2013 - Expert assessment of vulnerability of permafrost c.pdf:application/pdf}
-}
-
-@article{grosse_vulnerability_nodate,
-	title = {Vulnerability of high-latitude soil organic carbon in North America to disturbance},
-	volume = {116},
-	issn = {2156-2202},
-	url = {https://agupubs.onlinelibrary.wiley.com/doi/abs/10.1029/2010JG001507},
-	doi = {10.1029/2010JG001507},
-	abstract = {This synthesis addresses the vulnerability of the North American high-latitude soil organic carbon ({SOC}) pool to climate change. Disturbances caused by climate warming in arctic, subarctic, and boreal environments can result in significant redistribution of C among major reservoirs with potential global impacts. We divide the current northern high-latitude {SOC} pools into (1) near-surface soils where {SOC} is affected by seasonal freeze-thaw processes and changes in moisture status, and (2) deeper permafrost and peatland strata down to several tens of meters depth where {SOC} is usually not affected by short-term changes. We address key factors (permafrost, vegetation, hydrology, paleoenvironmental history) and processes (C input, storage, decomposition, and output) responsible for the formation of the large high-latitude {SOC} pool in North America and highlight how climate-related disturbances could alter this pool's character and size. Press disturbances of relatively slow but persistent nature such as top-down thawing of permafrost, and changes in hydrology, microbiological communities, pedological processes, and vegetation types, as well as pulse disturbances of relatively rapid and local nature such as wildfires and thermokarst, could substantially impact {SOC} stocks. Ongoing climate warming in the North American high-latitude region could result in crossing environmental thresholds, thereby accelerating press disturbances and increasingly triggering pulse disturbances and eventually affecting the C source/sink net character of northern high-latitude soils. Finally, we assess postdisturbance feedbacks, models, and predictions for the northern high-latitude {SOC} pool, and discuss data and research gaps to be addressed by future research.},
-	issue = {G4},
-	journaltitle = {Journal of Geophysical Research: Biogeosciences},
-	author = {Grosse, Guido and Harden, Jennifer and Turetsky, Merritt and {McGuire}, A. David and Camill, Philip and Tarnocai, Charles and Frolking, Steve and Schuur, Edward A. G. and Jorgenson, Torre and Marchenko, Sergei and Romanovsky, Vladimir and Wickland, Kimberly P. and French, Nancy and Waldrop, Mark and Bourgeau‐Chavez, Laura and Striegl, Robert G.},
-	urldate = {2018-07-17},
-	langid = {english},
-	keywords = {permafrost, disturbance, high latitudes, North America, peatlands, soil carbon},
-	file = {Grosse et al. - Vulnerability of high-latitude soil organic carbon.pdf:C\:\\Users\\Brent Thorne\\Zotero\\storage\\PSCLLGST\\Grosse et al. - Vulnerability of high-latitude soil organic carbon.pdf:application/pdf}
-}
-
-@article{striegl_carbon_2007,
-	title = {Carbon export and cycling by the Yukon, Tanana, and Porcupine rivers, Alaska, 2001-2005: {YUKON} {BASIN} {CARBON} {EXPORT}},
-	volume = {43},
-	issn = {00431397},
-	url = {http://doi.wiley.com/10.1029/2006WR005201},
-	doi = {10.1029/2006WR005201},
-	shorttitle = {Carbon export and cycling by the Yukon, Tanana, and Porcupine rivers, Alaska, 2001-2005},
-	number = {2},
-	journaltitle = {Water Resources Research},
-	author = {Striegl, Robert G. and Dornblaser, Mark M. and Aiken, George R. and Wickland, Kimberly P. and Raymond, Peter A.},
-	urldate = {2018-07-17},
-	date = {2007-02},
-	langid = {english},
-	file = {Striegl et al. - 2007 - Carbon export and cycling by the Yukon, Tanana, an.pdf:C\:\\Users\\Brent Thorne\\Zotero\\storage\\4WV5PGZB\\Striegl et al. - 2007 - Carbon export and cycling by the Yukon, Tanana, an.pdf:application/pdf}
-}
-
-@article{striegl_carbon_2001,
-	title = {Carbon dioxide partial pressure and 13C content of north temperate and boreal lakes at spring ice melt},
-	volume = {46},
-	issn = {00243590},
-	url = {http://doi.wiley.com/10.4319/lo.2001.46.4.0941},
-	doi = {10.4319/lo.2001.46.4.0941},
-	pages = {941--945},
-	number = {4},
-	journaltitle = {Limnology and Oceanography},
-	author = {Striegl, Robert G. and Kortelainen, Pirkko and Chanton, Jeffrey P. and Wickland, Kimberly P. and Bugna, Glynnis C. and Rantakari, Miitta},
-	urldate = {2018-07-17},
-	date = {2001-06},
-	langid = {english},
-	file = {Striegl et al. - 2001 - Carbon dioxide partial pressure and 13C content of.pdf:C\:\\Users\\Brent Thorne\\Zotero\\storage\\ZACPZD3B\\Striegl et al. - 2001 - Carbon dioxide partial pressure and 13C content of.pdf:application/pdf}
-}
-
-@article{matveev_methane_2018-1,
-	title = {Methane and carbon dioxide emissions from thermokarst lakes on mineral soils},
-	issn = {2368-7460},
-	url = {http://www.nrcresearchpress.com/doi/10.1139/as-2017-0047},
-	doi = {10.1139/as-2017-0047},
-	abstract = {Thermokarst lakes are known to emit methane ({CH}4) and carbon dioxide ({CO}2), but little attention has been given to those formed from the thawing and collapse of lithalsas, ice-rich mineral soil mounds that occur in permafrost landscapes. The present study was undertaken to assess greenhouse gas stocks and fluxes in eight lithalsa lakes across a 200 km gradient of permafrost degradation in subarctic Québec. The northernmost lakes varied in their surface-water {CO}2 content from below to above saturation, but the southern lakes in this gradient had much higher surface concentrations that were well above airequilibrium. Surface-water {CH}4 concentrations were at least an order of magnitude above air-equilibrium values at all sites, and the diffusive fluxes of both gases increased from north to south. Methane oxidation in the surface waters from a northern lake was only 10\% of the emission rate, but at the southern end it was around 60\% of the efflux to the atmosphere, indicating that methanotrophy can play a substantive role in reducing net emissions. Overall, our observations show that lithalsa lakes can begin emitting {CH}4 and {CO}2 soon after they form, with effluxes of both gases that persist and increase as the permafrost continues to warm and erode.},
-	pages = {1--21},
-	journaltitle = {Arctic Science},
-	author = {Matveev, Alex and Laurion, Isabelle and Vincent, Warwick F.},
-	urldate = {2018-07-13},
-	date = {2018-05-17},
-	langid = {english},
-	file = {Matveev et al. - 2018 - Methane and carbon dioxide emissions from thermoka.pdf:C\:\\Users\\Brent Thorne\\Zotero\\storage\\R7AE2NU6\\Matveev et al. - 2018 - Methane and carbon dioxide emissions from thermoka.pdf:application/pdf}
-}
-
-@article{brown_thermal_2010,
-	title = {The Thermal State of Permafrost: the {IPY}- {IPA} snapshot (2007-2009)},
-	abstract = {During the International Polar Year ({IPY}) the International Permafrost Association ({IPA}) coordinated the acquisition of standardized permafrost temperatures data (snapshot) under the Thermal State of Permafrost ({TSP}) Project. The current network consists of more than 860 boreholes in both hemispheres with more than 25 participating countries. The vast majority of sites are equipped for long-term permafrost temperature observations. A borehole inventory including mean annual ground temperatures for 600 boreholes (snapshot) is available online.},
-	pages = {7},
-	author = {Brown, Jerry and Kholodov, Alexander and Romanovsky, Vladimir and Yoshikawa, Kenji and Smith, Sharon L and Christiansen, Hanne H and Vieira, Goncalo and Noetzli, Jeannette},
-	date = {2010},
-	langid = {english},
-	file = {Brown et al. - The Thermal State of Permafrost the IPY- IPA snap.pdf:C\:\\Users\\Brent Thorne\\Zotero\\storage\\87EWNZZY\\Brown et al. - The Thermal State of Permafrost the IPY- IPA snap.pdf:application/pdf}
-}
-
-@article{romanovsky_permafrost_2010,
-	title = {Permafrost thermal state in the polar Northern Hemisphere during the international polar year 2007-2009: a synthesis},
-	volume = {21},
-	issn = {10456740, 10991530},
-	url = {http://doi.wiley.com/10.1002/ppp.689},
-	doi = {10.1002/ppp.689},
-	shorttitle = {Permafrost thermal state in the polar Northern Hemisphere during the international polar year 2007-2009},
-	abstract = {The permafrost monitoring network in the polar regions of the Northern Hemisphere was enhanced during the International Polar Year ({IPY}), and new information on permafrost thermal state was collected for regions where there was little available. This augmented monitoring network is an important legacy of the {IPY}, as is the updated baseline of current permafrost conditions against which future changes may be measured. Within the Northern Hemisphere polar region, ground temperatures are currently being measured in about 575 boreholes in North America, the Nordic region and Russia. These show that in the discontinuous permafrost zone, permafrost temperatures fall within a narrow range, with the mean annual ground temperature ({MAGT}) at most sites being higher than À28C. A greater range in {MAGT} is present within the continuous permafrost zone, from above À18C at some locations to as low as À158C. The latest results indicate that the permafrost warming which started two to three decades ago has generally continued into the {IPY} period. Warming rates are much smaller for permafrost already at temperatures close to 08C compared with colder permafrost, especially for ice-rich permafrost where latent heat effects dominate the ground thermal regime. Colder permafrost sites are warming more rapidly. This improved knowledge about the permafrost thermal state and its dynamics is important for multidisciplinary polar research, but also for many of the 4 million people living in the Arctic. In particular, this knowledge is required for designing effective adaptation strategies for the local communities under warmer climatic conditions. Copyright \# 2010 John Wiley \& Sons, Ltd.},
-	pages = {106--116},
-	number = {2},
-	journaltitle = {Permafrost and Periglacial Processes},
-	author = {Romanovsky, Vladimir E. and Smith, Sharon L. and Christiansen, Hanne H.},
-	urldate = {2018-07-12},
-	date = {2010-06-08},
-	langid = {english},
-	file = {Romanovsky et al. - 2010 - Permafrost thermal state in the polar Northern Hem.pdf:C\:\\Users\\Brent Thorne\\Zotero\\storage\\VIRP59D7\\Romanovsky et al. - 2010 - Permafrost thermal state in the polar Northern Hem.pdf:application/pdf}
-}
-
-@article{zimov_permafrost_2006,
-	title = {Permafrost and the Global Carbon Budget},
-	volume = {312},
-	issn = {0036-8075, 1095-9203},
-	url = {http://www.sciencemag.org/cgi/doi/10.1126/science.1128908},
-	doi = {10.1126/science.1128908},
-	shorttitle = {{CLIMATE} {CHANGE}},
-	pages = {1612--1613},
-	number = {5780},
-	journaltitle = {Science},
-	author = {Zimov, S. A.},
-	urldate = {2018-07-12},
-	date = {2006-06-16},
-	langid = {english},
-	file = {Zimov - 2006 - CLIMATE CHANGE Permafrost and the Global Carbon B.pdf:C\:\\Users\\Brent Thorne\\Zotero\\storage\\F7N376ZX\\Zimov - 2006 - CLIMATE CHANGE Permafrost and the Global Carbon B.pdf:application/pdf}
-}
-
-@article{zimov_permafrost_2006-1,
-	title = {Permafrost carbon: Stock and decomposability of a globally significant carbon pool},
-	volume = {33},
-	issn = {0094-8276},
-	url = {http://doi.wiley.com/10.1029/2006GL027484},
-	doi = {10.1029/2006GL027484},
-	shorttitle = {Permafrost carbon},
-	number = {20},
-	journaltitle = {Geophysical Research Letters},
-	author = {Zimov, S. A. and Davydov, S. P. and Zimova, G. M. and Davydova, A. I. and Schuur, E. A. G. and Dutta, K. and Chapin, F. S.},
-	urldate = {2018-07-12},
-	date = {2006-10-27},
-	langid = {english},
-	file = {Zimov et al. - 2006 - Permafrost carbon Stock and decomposability of a .pdf:C\:\\Users\\Brent Thorne\\Zotero\\storage\\V28TVFWE\\Zimov et al. - 2006 - Permafrost carbon Stock and decomposability of a .pdf:application/pdf}
-}
-
-@article{schuur_effect_2009,
-	title = {The effect of permafrost thaw on old carbon release and net carbon exchange from tundra},
-	volume = {459},
-	issn = {0028-0836, 1476-4687},
-	url = {http://www.nature.com/articles/nature08031},
-	doi = {10.1038/nature08031},
-	pages = {556--559},
-	number = {7246},
-	journaltitle = {Nature},
-	author = {Schuur, Edward A. G. and Vogel, Jason G. and Crummer, Kathryn G. and Lee, Hanna and Sickman, James O. and Osterkamp, T. E.},
-	urldate = {2018-07-12},
-	date = {2009-05},
-	langid = {english},
-	file = {Schuur et al. - 2009 - The effect of permafrost thaw on old carbon releas.pdf:C\:\\Users\\Brent Thorne\\Zotero\\storage\\YRBJYIWH\\Schuur et al. - 2009 - The effect of permafrost thaw on old carbon releas.pdf:application/pdf}
-}
-
-@article{tarnocai_soil_2009,
-	title = {Soil organic carbon pools in the northern circumpolar permafrost region: {SOIL} {ORGANIC} {CARBON} {POOLS}},
-	volume = {23},
-	issn = {08866236},
-	url = {http://doi.wiley.com/10.1029/2008GB003327},
-	doi = {10.1029/2008GB003327},
-	shorttitle = {Soil organic carbon pools in the northern circumpolar permafrost region},
-	pages = {n/a--n/a},
-	number = {2},
-	journaltitle = {Global Biogeochemical Cycles},
-	author = {Tarnocai, C. and Canadell, J. G. and Schuur, E. A. G. and Kuhry, P. and Mazhitova, G. and Zimov, S.},
-	urldate = {2018-07-12},
-	date = {2009-06},
-	langid = {english},
-	file = {Tarnocai et al. - 2009 - Soil organic carbon pools in the northern circumpo.pdf:C\:\\Users\\Brent Thorne\\Zotero\\storage\\2FYYA39I\\Tarnocai et al. - 2009 - Soil organic carbon pools in the northern circumpo.pdf:application/pdf}
-}
-
-@article{schaefer_impact_2014,
-	title = {The impact of the permafrost carbon feedback on global climate},
-	volume = {9},
-	issn = {1748-9326},
-	url = {http://stacks.iop.org/1748-9326/9/i=8/a=085003?key=crossref.30cf8c5adeaa54d6e76392833f9bc72e},
-	doi = {10.1088/1748-9326/9/8/085003},
-	abstract = {Degrading permafrost can alter ecosystems, damage infrastructure, and release enough carbon dioxide ({CO}2) and methane ({CH}4) to inﬂuence global climate. The permafrost carbon feedback ({PCF}) is the ampliﬁcation of surface warming due to {CO}2 and {CH}4 emissions from thawing permafrost. An analysis of available estimates {PCF} strength and timing indicate 120 ± 85 Gt of carbon emissions from thawing permafrost by 2100. This is equivalent to 5.7 ± 4.0\% of total anthropogenic emissions for the Intergovernmental Panel on Climate Change ({IPCC}) representative concentration pathway ({RCP}) 8.5 scenario and would increase global temperatures by 0.29 ± 0.21 °C or 7.8 ± 5.7\%. For {RCP}4.5, the scenario closest to the 2 °C warming target for the climate change treaty, the range of cumulative emissions in 2100 from thawing permafrost decreases to between 27 and 100 Gt C with temperature increases between 0.05 and 0.15 °C, but the relative fraction of permafrost to total emissions increases to between 3\% and 11\%. Any substantial warming results in a committed, long-term carbon release from thawing permafrost with 60\% of emissions occurring after 2100, indicating that not accounting for permafrost emissions risks overshooting the 2 °C warming target. Climate projections in the {IPCC} Fifth Assessment Report ({AR}5), and any emissions targets based on those projections, do not adequately account for emissions from thawing permafrost and the effects of the {PCF} on global climate. We recommend the {IPCC} commission a special assessment focusing on the {PCF} and its impact on global climate to supplement the {AR}5 in support of treaty negotiation.},
-	pages = {085003},
-	number = {8},
-	journaltitle = {Environmental Research Letters},
-	author = {Schaefer, Kevin and Lantuit, Hugues and Romanovsky, Vladimir E and Schuur, Edward A G and Witt, Ronald},
-	urldate = {2018-07-12},
-	date = {2014-08-01},
-	langid = {english},
-	file = {Schaefer et al. - 2014 - The impact of the permafrost carbon feedback on gl.pdf:C\:\\Users\\Brent Thorne\\Zotero\\storage\\QZWSMAJF\\Schaefer et al. - 2014 - The impact of the permafrost carbon feedback on gl.pdf:application/pdf}
-}
-
-@article{raymond_global_2013,
-	title = {Global carbon dioxide emissions from inland waters},
-	volume = {503},
-	issn = {0028-0836, 1476-4687},
-	url = {http://www.nature.com/articles/nature12760},
-	doi = {10.1038/nature12760},
-	pages = {355--359},
-	number = {7476},
-	journaltitle = {Nature},
-	author = {Raymond, Peter A. and Hartmann, Jens and Lauerwald, Ronny and Sobek, Sebastian and {McDonald}, Cory and Hoover, Mark and Butman, David and Striegl, Robert and Mayorga, Emilio and Humborg, Christoph and Kortelainen, Pirkko and Dürr, Hans and Meybeck, Michel and Ciais, Philippe and Guth, Peter},
-	urldate = {2018-07-11},
-	date = {2013-11},
-	langid = {english},
-	file = {Raymond et al. - 2013 - Global carbon dioxide emissions from inland waters.pdf:C\:\\Users\\Brent Thorne\\Zotero\\storage\\XA6S3BWZ\\Raymond et al. - 2013 - Global carbon dioxide emissions from inland waters.pdf:application/pdf}
-}
-
-@article{tank_landscape-level_2012,
-	title = {Landscape-level controls on dissolved carbon flux from diverse catchments of the circumboreal: {DISSOLVED} {CARBON} {FLUX} {FROM} {BOREAL} {RIVERS}},
-	volume = {26},
-	issn = {08866236},
-	url = {http://doi.wiley.com/10.1029/2012GB004299},
-	doi = {10.1029/2012GB004299},
-	shorttitle = {Landscape-level controls on dissolved carbon flux from diverse catchments of the circumboreal},
-	pages = {n/a--n/a},
-	number = {4},
-	journaltitle = {Global Biogeochemical Cycles},
-	author = {Tank, Suzanne E. and Frey, Karen E. and Striegl, Robert G. and Raymond, Peter A. and Holmes, Robert M. and {McClelland}, James W. and Peterson, Bruce J.},
-	urldate = {2018-07-10},
-	date = {2012-12},
-	langid = {english},
-	file = {Tank et al. - 2012 - Landscape-level controls on dissolved carbon flux .pdf:C\:\\Users\\Brent Thorne\\Zotero\\storage\\22AQP5MM\\Tank et al. - 2012 - Landscape-level controls on dissolved carbon flux .pdf:application/pdf}
-}
-
-@article{tank_land--ocean_2012,
-	title = {A land-to-ocean perspective on the magnitude, source and implication of {DIC} flux from major Arctic rivers to the Arctic Ocean: {ARCTIC} {RIVER} {DIC}},
-	volume = {26},
-	issn = {08866236},
-	url = {http://doi.wiley.com/10.1029/2011GB004192},
-	doi = {10.1029/2011GB004192},
-	shorttitle = {A land-to-ocean perspective on the magnitude, source and implication of {DIC} flux from major Arctic rivers to the Arctic Ocean},
-	pages = {n/a--n/a},
-	number = {4},
-	journaltitle = {Global Biogeochemical Cycles},
-	author = {Tank, Suzanne E. and Raymond, Peter A. and Striegl, Robert G. and {McClelland}, James W. and Holmes, Robert M. and Fiske, Greg J. and Peterson, Bruce J.},
-	urldate = {2018-07-10},
-	date = {2012-12},
-	langid = {english},
-	file = {Tank et al. - 2012 - A land-to-ocean perspective on the magnitude, sour.pdf:C\:\\Users\\Brent Thorne\\Zotero\\storage\\JZ6UWCEK\\Tank et al. - 2012 - A land-to-ocean perspective on the magnitude, sour.pdf:application/pdf}
-}
-
-@article{olefeldt_permafrost_2014,
-	title = {Permafrost conditions in peatlands regulate magnitude, timing, and chemical composition of catchment dissolved organic carbon export},
-	volume = {20},
-	issn = {13541013},
-	url = {http://doi.wiley.com/10.1111/gcb.12607},
-	doi = {10.1111/gcb.12607},
-	abstract = {Permafrost thaw in peatlands has the potential to alter catchment export of dissolved organic carbon ({DOC}) and thus inﬂuence downstream aquatic C cycling. Subarctic peatlands are often mosaics of different peatland types, where permafrost conditions regulate the hydrological setting of each type. We show that hydrological setting is key to observed differences in magnitude, timing, and chemical composition of {DOC} export between permafrost and nonpermafrost peatland types, and that these differences inﬂuence the export of {DOC} of larger catchments even when peatlands are minor catchment components. In many aspects, {DOC} export from a studied peatland permafrost plateau was similar to that of a forested upland catchment. Similarities included low annual export (2–3 g C {mÀ}2) dominated by the snow melt period ({\textasciitilde}70\%), and how substantial {DOC} export following storms required wet antecedent conditions. Conversely, nonpermafrost fens had higher {DOC} export (7 g C {mÀ}2), resulting from sustained hydrological connectivity during summer. Chemical composition of catchment {DOC} export arose from the mixing of highly aromatic {DOC} from organic soils from permafrost plateau soil water and upland forest surface horizons with nonaromatic {DOC} from mineral soil groundwater, but was further modulated by fens. Increasing aromaticity from fen inﬂow to outlet was substantial and depended on both water residence time and water temperature. The role of fens as catchment biogeochemical hotspots was further emphasized by their capacity for sulfate retention. As a result of fen characteristics, a 4\% fen cover in a mixed catchment was responsible for 34\% higher {DOC} export, 50\% higher {DOC} concentrations and {\textasciitilde}10\% higher {DOC} aromaticity at the catchment outlet during summer compared to a nonpeatland upland catchment. Expansion of fens due to thaw thus has potential to inﬂuence landscape C cycling by increasing fen capacity to act as biogeochemical hotspots, amplifying aquatic C cycling, and increasing catchment {DOC} export.},
-	pages = {3122--3136},
-	number = {10},
-	journaltitle = {Global Change Biology},
-	author = {Olefeldt, David and Roulet, Nigel T.},
-	urldate = {2018-07-10},
-	date = {2014-10},
-	langid = {english},
-	file = {Olefeldt and Roulet - 2014 - Permafrost conditions in peatlands regulate magnit.pdf:C\:\\Users\\Brent Thorne\\Zotero\\storage\\AG4JVWK5\\Olefeldt and Roulet - 2014 - Permafrost conditions in peatlands regulate magnit.pdf:application/pdf}
-}
-
-@article{helbig_direct_2017,
-	title = {Direct and indirect climate change effects on carbon dioxide fluxes in a thawing boreal forest-wetland landscape},
-	volume = {23},
-	issn = {13541013},
-	url = {http://doi.wiley.com/10.1111/gcb.13638},
-	doi = {10.1111/gcb.13638},
-	abstract = {In the sporadic permafrost zone of northwestern Canada, boreal forest carbon dioxide ({CO}2) ﬂuxes will be altered directly by climate change through changing meteorological forcing and indirectly through changes in landscape functioning associated with thaw-induced collapse-scar bog (‘wetland’) expansion. However, their combined effect on landscape-scale net ecosystem {CO}2 exchange ({NEELAND}), resulting from changing gross primary productivity ({GPP}) and ecosystem respiration ({ER}), remains unknown. Here, we quantify indirect land cover change impacts on {NEELAND} and direct climate change impacts on modeled temperature- and light-limited {NEELAND} of a boreal forest–wetland landscape. Using nested eddy covariance ﬂux towers, we ﬁnd both {GPP} and {ER} to be larger at the landscape compared to the wetland level. However, annual {NEELAND} (À20 g C {mÀ}2) and wetland {NEE} (À24 g C {mÀ}2) were similar, suggesting negligible wetland expansion effects on {NEELAND}. In contrast, we ﬁnd non-negligible direct climate change impacts when modeling {NEELAND} using projected air temperature and incoming shortwave radiation. At the end of the 21st century, modeled {GPP} mainly increases in spring and fall due to reduced temperature limitation, but becomes more frequently light-limited in fall. In a warmer climate, {ER} increases year-round in the absence of moisture stress resulting in net {CO}2 uptake increases in the shoulder seasons and decreases during the summer. Annually, landscape net {CO}2 uptake is projected to decline by 25 Æ 14 g C {mÀ}2 for a moderate and 103 Æ 38 g C {mÀ}2 for a high warming scenario, potentially reversing recently observed positive net {CO}2 uptake trends across the boreal biome. Thus, even without moisture stress, net {CO}2 uptake of boreal forest–wetland landscapes may decline, and ultimately, these landscapes may turn into net {CO}2 sources under continued anthropogenic {CO}2 emissions. We conclude that {NEELAND} changes are more likely to be driven by direct climate change rather than by indirect land cover change impacts.},
-	pages = {3231--3248},
-	number = {8},
-	journaltitle = {Global Change Biology},
-	author = {Helbig, Manuel and Chasmer, Laura E. and Desai, Ankur R. and Kljun, Natascha and Quinton, William L. and Sonnentag, Oliver},
-	urldate = {2018-07-10},
-	date = {2017-08},
-	langid = {english},
-	file = {Helbig et al. - 2017 - Direct and indirect climate change effects on carb.pdf:C\:\\Users\\Brent Thorne\\Zotero\\storage\\8E5C5R6X\\Helbig et al. - 2017 - Direct and indirect climate change effects on carb.pdf:application/pdf}
-}
-
-@article{jantze_subsurface_2013,
-	title = {Subsurface release and transport of dissolved carbon in a discontinuous permafrost region},
-	volume = {17},
-	issn = {1607-7938},
-	url = {https://www.hydrol-earth-syst-sci.net/17/3827/2013/},
-	doi = {10.5194/hess-17-3827-2013},
-	abstract = {Subsurface hydrological ﬂow pathways and advection rates through the landscape affect the quantity and timing of hydrological transport of dissolved carbon. This study investigates hydrological carbon transport through the subsurface to streams and how it is affected by the distribution of subsurface hydrological pathways and travel times through the landscape. We develop a consistent mechanistic, pathway- and travel time-based modeling approach for release and transport of dissolved organic carbon ({DOC}) and dissolved inorganic carbon ({DIC}). The model implications are tested against observations in the subarctic Abiskojokken catchment in northernmost Sweden (68◦21 N, 18◦49 E) as a ﬁeld case example of a discontinuous permafrost region. The results show: (a) For {DOC}, both concentration and load are essentially ﬂow-independent because their dynamics are instead dominated by the annual renewal and depletion. Specifically, the ﬂow independence is the result of the small characteristic {DOC} respiration-dissolution time scale, in the range of 1 yr, relative to the average travel time of water through the subsurface to the stream. (b) For {DIC}, the load is highly ﬂow-dependent due to the large characteristic weatheringdissolution time, much larger than 1 yr, relative to the average subsurface water travel time to the stream. This rate relation keeps the {DIC} concentration essentially ﬂow-independent, and thereby less ﬂuctuating in time than the {DIC} load.},
-	pages = {3827--3839},
-	number = {10},
-	journaltitle = {Hydrology and Earth System Sciences},
-	author = {Jantze, E. J. and Lyon, S. W. and Destouni, G.},
-	urldate = {2018-07-10},
-	date = {2013-10-08},
-	langid = {english},
-	file = {Jantze et al. - 2013 - Subsurface release and transport of dissolved carb.pdf:C\:\\Users\\Brent Thorne\\Zotero\\storage\\M7BJ9KTX\\Jantze et al. - 2013 - Subsurface release and transport of dissolved carb.pdf:application/pdf}
-}
-
-@article{jones_rapid_2017,
-	title = {Rapid carbon loss and slow recovery following permafrost thaw in boreal peatlands},
-	volume = {23},
-	issn = {13541013},
-	url = {http://doi.wiley.com/10.1111/gcb.13403},
-	doi = {10.1111/gcb.13403},
-	abstract = {Permafrost peatlands store one-third of the total carbon (C) in the atmosphere and are increasingly vulnerable to thaw as high-latitude temperatures warm. Large uncertainties remain about C dynamics following permafrost thaw in boreal peatlands. We used a chronosequence approach to measure C stocks in forested permafrost plateaus (forest) and thawed permafrost bogs, ranging in thaw age from young ({\textless}10 years) to old ({\textgreater}100 years) from two interior Alaska chronosequences. Permafrost originally aggraded simultaneously with peat accumulation (syngenetic permafrost) at both sites. We found that upon thaw, C loss of the forest peat C is equivalent to {\textasciitilde}30\% of the initial forest C stock and is directly proportional to the prethaw C stocks. Our model results indicate that permafrost thaw turned these peatlands into net C sources to the atmosphere for a decade following thaw, after which post-thaw bog peat accumulation returned sites to net C sinks. It can take multiple centuries to millennia for a site to recover its prethaw C stocks; the amount of time needed for them to regain their prethaw C stocks is governed by the amount of C that accumulated prior to thaw. Consequently, these ﬁndings show that older peatlands will take longer to recover prethaw C stocks, whereas younger peatlands will exceed prethaw stocks in a matter of centuries. We conclude that the loss of sporadic and discontinuous permafrost by 2100 could result in a loss of up to 24 Pg of deep C from permafrost peatlands.},
-	pages = {1109--1127},
-	number = {3},
-	journaltitle = {Global Change Biology},
-	author = {Jones, Miriam C. and Harden, Jennifer and O'Donnell, Jonathan and Manies, Kristen and Jorgenson, Torre and Treat, Claire and Ewing, Stephanie},
-	urldate = {2018-07-10},
-	date = {2017-03},
-	langid = {english},
-	file = {Jones et al. - 2017 - Rapid carbon loss and slow recovery following perm.pdf:C\:\\Users\\Brent Thorne\\Zotero\\storage\\G5LIA6V4\\Jones et al. - 2017 - Rapid carbon loss and slow recovery following perm.pdf:application/pdf}
-}
-
-@article{lessels_coupled_2015,
-	title = {A coupled hydrology-biogeochemistry model to simulate dissolved organic carbon exports from a permafrost-influenced catchment: A {COUPLED} {HYDROLOGY}-{BIOGEOCHEMISTRY} {MODEL}},
-	volume = {29},
-	issn = {08856087},
-	url = {http://doi.wiley.com/10.1002/hyp.10566},
-	doi = {10.1002/hyp.10566},
-	shorttitle = {A coupled hydrology-biogeochemistry model to simulate dissolved organic carbon exports from a permafrost-influenced catchment},
-	abstract = {We outline the development of a simple, coupled hydrology–biogeochemistry model for simulating stream discharge and dissolved organic carbon ({DOC}) dynamics in data sparse, permafrost-inﬂuenced catchments with large stores of soil organic carbon. The model incorporates the inﬂuence of active layer dynamics and slope aspect on hydrological ﬂowpaths and resulting {DOC} mobilization. Calibration and evaluation of the model was undertaken using observations from Granger Basin within the Wolf Creek research basin, Yukon, northern Canada. Results show that the model was able to capture the dominant hydrological response and {DOC} dynamics of the catchment reasonably well. Simulated {DOC} was highly correlated with observed {DOC} (r2 = 0.65) for the study period. During the snowmelt period, the model adequately captured the observed dynamics, with simulations generally reﬂecting the timing and magnitude of the observed {DOC} and stream discharge. The model was less successful over the later summer period although this partly reﬂected a lack of {DOC} observations for calibration. The developed model offers a valuable framework for investigating the interactions between hydrological and {DOC} processes in these highly dynamic systems, where data acquisition is often very difﬁcult. © 2015 The Authors Hydrological Processes Published by John Wiley \& Sons, Ltd.},
-	pages = {5383--5396},
-	number = {26},
-	journaltitle = {Hydrological Processes},
-	author = {Lessels, Jason S. and Tetzlaff, Doerthe and Carey, Sean K and Smith, Pete and Soulsby, Chris},
-	urldate = {2018-07-10},
-	date = {2015-12-30},
-	langid = {english},
-	file = {Lessels et al. - 2015 - A coupled hydrology-biogeochemistry model to simul.pdf:C\:\\Users\\Brent Thorne\\Zotero\\storage\\SFAG89YM\\Lessels et al. - 2015 - A coupled hydrology-biogeochemistry model to simul.pdf:application/pdf}
-}
-
-@article{tank_multiple_2011,
-	title = {Multiple tracers demonstrate distinct sources of dissolved organic matter to lakes of the Mackenzie Delta, western Canadian Arctic},
-	volume = {56},
-	issn = {00243590},
-	url = {http://doi.wiley.com/10.4319/lo.2011.56.4.1297},
-	doi = {10.4319/lo.2011.56.4.1297},
-	abstract = {Lakes of the Mackenzie Delta occur across a gradient that contains three clear end members: those that remain connected to river-water channels throughout the summer; those that receive only brief inputs of river water during an annual spring flood but contain dense macrophyte stands; and those that experience significant permafrost thaw along their margins. We measured dissolved organic carbon ({DOC}) concentration, dissolved organic matter ({DOM}) absorption and fluorescence, and stable isotopes of {DOM}, {DOM} precursor materials, and bacteria to elucidate the importance of river water, macrophytes, and thermokarst as {DOM} sources to Mackenzie Delta lakes. Despite standing stocks of macrophyte C that are sevenfold to 12-fold greater than those of total {DOC}, stable isotopes indicated that autochthonous sources contributed less than 15\% to overall {DOM} in macrophyte-rich lakes. Instead, fluorescence and absorption indicated that the moderate summertime increase in {DOC} concentration in macrophyte-rich lakes was the result of infrequent flushing, while bacterial d13C indicated rapid bacterial removal of autochthonous {DOC} from the water column. In thermokarst lakes, summertime increases in {DOC} concentration were substantial, and stable isotopes indicated that much of this increase came from C released as a result of thermokarst-related processes. Our results indicate that these distinct sources of {DOM} to neighboring arctic Delta lakes may drive between-lake differences in C cycling and energy flow. Rapidly assimilated macrophyte {DOM} should be an important contributor to microbial food webs in our study lakes. In contrast, the accumulation of thermokarst-origin {DOM} allows for a significant role in physico-chemistry but indicates a lesser contribution of this {DOM} to higher trophic levels.},
-	pages = {1297--1309},
-	number = {4},
-	journaltitle = {Limnology and Oceanography},
-	author = {Tank, Suzanne E. and Lesack, Lance F. W. and Gareis, Jolie A. L. and Osburn, Christopher L. and Hesslein, Ray H.},
-	urldate = {2018-07-10},
-	date = {2011-07},
-	langid = {english},
-	file = {Tank et al. - 2011 - Multiple tracers demonstrate distinct sources of d.pdf:C\:\\Users\\Brent Thorne\\Zotero\\storage\\JBYRCSYS\\Tank et al. - 2011 - Multiple tracers demonstrate distinct sources of d.pdf:application/pdf}
-}
-
-@article{voigt_warming_2017,
-	title = {Warming of subarctic tundra increases emissions of all three important greenhouse gases - carbon dioxide, methane, and nitrous oxide},
-	volume = {23},
-	issn = {13541013},
-	url = {http://doi.wiley.com/10.1111/gcb.13563},
-	doi = {10.1111/gcb.13563},
-	abstract = {Rapidly rising temperatures in the Arctic might cause a greater release of greenhouse gases ({GHGs}) to the atmosphere. To study the effect of warming on {GHG} dynamics, we deployed open-top chambers in a subarctic tundra site in Northeast European Russia. We determined carbon dioxide ({CO}2), methane ({CH}4), and nitrous oxide (N2O) ﬂuxes as well as the concentration of those gases, inorganic nitrogen (N) and dissolved organic carbon ({DOC}) along the soil proﬁle. Studied tundra surfaces ranged from mineral to organic soils and from vegetated to unvegetated areas. As a result of air warming, the seasonal {GHG} budget of the vegetated tundra surfaces shifted from a {GHG} sink of À300 to À198 g {CO}2–eq {mÀ}2 to a source of 105 to 144 g {CO}2–eq {mÀ}2. At bare peat surfaces, we observed increased release of all three {GHGs}. While the positive warming response was dominated by {CO}2, we provide here the ﬁrst in situ evidence of increasing N2O emissions from tundra soils with warming. Warming promoted N2O release not only from bare peat, previously identiﬁed as a strong N2O source, but also from the abundant, vegetated peat surfaces that do not emit N2O under present climate. At these surfaces, elevated temperatures had an adverse effect on plant growth, resulting in lower plant N uptake and, consequently, better N availability for soil microbes. Although the warming was limited to the soil surface and did not alter thaw depth, it increased concentrations of {DOC}, {CO}2, and {CH}4 in the soil down to the permafrost table. This can be attributed to downward {DOC} leaching, fueling microbial activity at depth. Taken together, our results emphasize the tight linkages between plant and soil processes, and different soil layers, which need to be taken into account when predicting the climate change feedback of the Arctic.},
-	pages = {3121--3138},
-	number = {8},
-	journaltitle = {Global Change Biology},
-	author = {Voigt, Carolina and Lamprecht, Richard E. and Marushchak, Maija E. and Lind, Saara E. and Novakovskiy, Alexander and Aurela, Mika and Martikainen, Pertti J. and Biasi, Christina},
-	urldate = {2018-07-10},
-	date = {2017-08},
-	langid = {english},
-	file = {Voigt et al. - 2017 - Warming of subarctic tundra increases emissions of.pdf:C\:\\Users\\Brent Thorne\\Zotero\\storage\\HP5JPI38\\Voigt et al. - 2017 - Warming of subarctic tundra increases emissions of.pdf:application/pdf}
-}
-
-@article{yuan_microbial_2018,
-	title = {Microbial functional diversity covaries with permafrost thaw-induced environmental heterogeneity in tundra soil},
-	volume = {24},
-	issn = {13541013},
-	url = {http://doi.wiley.com/10.1111/gcb.13820},
-	doi = {10.1111/gcb.13820},
-	pages = {297--307},
-	number = {1},
-	journaltitle = {Global Change Biology},
-	author = {Yuan, Mengting M. and Zhang, Jin and Xue, Kai and Wu, Liyou and Deng, Ye and Deng, Jie and Hale, Lauren and Zhou, Xishu and He, Zhili and Yang, Yunfeng and Van Nostrand, Joy D. and Schuur, Edward A. G. and Konstantinidis, Konstantinos T. and Penton, Christopher R. and Cole, James R. and Tiedje, James M. and Luo, Yiqi and Zhou, Jizhong},
-	urldate = {2018-07-10},
-	date = {2018-01},
-	langid = {english},
-	file = {Yuan et al. - 2018 - Microbial functional diversity covaries with perma.pdf:C\:\\Users\\Brent Thorne\\Zotero\\storage\\SNW3HGEE\\Yuan et al. - 2018 - Microbial functional diversity covaries with perma.pdf:application/pdf}
-}
-
-@article{grewer_redistribution_2016,
-	title = {Redistribution of soil organic matter by permafrost disturbance in the Canadian High Arctic},
-	volume = {128},
-	issn = {0168-2563, 1573-515X},
-	url = {http://link.springer.com/10.1007/s10533-016-0215-7},
-	doi = {10.1007/s10533-016-0215-7},
-	pages = {397--415},
-	number = {3},
-	journaltitle = {Biogeochemistry},
-	author = {Grewer, David M. and Lafrenière, Melissa J. and Lamoureux, Scott F. and Simpson, Myrna J.},
-	urldate = {2018-07-10},
-	date = {2016-07},
-	langid = {english},
-	file = {Grewer et al. - 2016 - Redistribution of soil organic matter by permafros.pdf:C\:\\Users\\Brent Thorne\\Zotero\\storage\\9AVWLWEN\\Grewer et al. - 2016 - Redistribution of soil organic matter by permafros.pdf:application/pdf}
-}
-
-@article{birkel_integrating_2014,
-	title = {Integrating parsimonious models of hydrological connectivity and soil biogeochemistry to simulate stream {DOC} dynamics: {PARSIMONIOUS} {COUPLED} {DOC} {MODEL}},
-	volume = {119},
-	issn = {21698953},
-	url = {http://doi.wiley.com/10.1002/2013JG002551},
-	doi = {10.1002/2013JG002551},
-	shorttitle = {Integrating parsimonious models of hydrological connectivity and soil biogeochemistry to simulate stream {DOC} dynamics},
-	abstract = {To improve understanding and prediction of dissolved organic carbon ({DOC}) sources and ﬂuxes in northern peat-dominated catchments, we present the development and application of a parsimonious tracer-aided rainfall-runoff model coupled with a biogeochemistry subroutine able to concurrently simulate streamﬂow and {DOC} dynamics. The modeling approach which included quantitative assessment of associated uncertainties was conditioned by geochemical tracers which discriminate dominant water sources. Integration of {DOC} was predicated on statistical time series models which identiﬁed air temperature and streamﬂow as the key proxies that capture {DOC} supply and transport processes in two upland catchments in Scotland, {UK}. Conceptualizing the nonlinear partitioning of quick near-surface and slower groundwater runoff sources in combination with a {DOC} mass balance resulted in a coupled, low-parameter mechanistic model. Model tests showed mostly sensitive parameters and reasonable simulation results with seasonally controlled {DOC} supply and event-based {DOC} transport. Transport is facilitated even for smaller events by overland ﬂow from saturated histosols connected to the stream network. However, during prolonged dry periods, near-surface runoff “switches off” and stream {DOC} is dominated by low concentration groundwaters. Furthermore, the model was able to explain subtle differences in {DOC} dynamics between the two catchments mainly reﬂecting the distribution of saturated soils and available storage. We conclude that tracers and statistical time series models can successfully guide the development of parsimonious yet structurally consistent water quality models. Parsimonious models provide tools for estimating {DOC} dynamics and loads with reduced uncertainty and potentially greater transferability.},
-	pages = {1030--1047},
-	number = {5},
-	journaltitle = {Journal of Geophysical Research: Biogeosciences},
-	author = {Birkel, Christian and Soulsby, Chris and Tetzlaff, Doerthe},
-	urldate = {2018-07-10},
-	date = {2014-05},
-	langid = {english},
-	file = {Birkel et al. - 2014 - Integrating parsimonious models of hydrological co.pdf:C\:\\Users\\Brent Thorne\\Zotero\\storage\\IHILJUWI\\Birkel et al. - 2014 - Integrating parsimonious models of hydrological co.pdf:application/pdf}
-}
-
-@article{grosse_changing_2016,
-	title = {Changing permafrost in a warming world and feedbacks to the Earth system},
-	volume = {11},
-	issn = {1748-9326},
-	url = {http://stacks.iop.org/1748-9326/11/i=4/a=040201?key=crossref.721a63a7398b84c27da7f27834004831},
-	doi = {10.1088/1748-9326/11/4/040201},
-	pages = {040201},
-	number = {4},
-	journaltitle = {Environmental Research Letters},
-	author = {Grosse, Guido and Goetz, Scott and {McGuire}, A Dave and Romanovsky, Vladimir E and Schuur, Edward A G},
-	urldate = {2018-07-10},
-	date = {2016-04-01},
-	langid = {english},
-	file = {Grosse et al. - 2016 - Changing permafrost in a warming world and feedbac.pdf:C\:\\Users\\Brent Thorne\\Zotero\\storage\\DR29MC8H\\Grosse et al. - 2016 - Changing permafrost in a warming world and feedbac.pdf:application/pdf}
-}
-
-@article{meng_focus_2016,
-	title = {Focus on the impact of climate change on wetland ecosystems and carbon dynamics},
-	volume = {11},
-	issn = {1748-9326},
-	url = {http://stacks.iop.org/1748-9326/11/i=10/a=100201?key=crossref.ada7f1df1dfcbdace4ca4278816eceb2},
-	doi = {10.1088/1748-9326/11/10/100201},
-	abstract = {The renewed growth in atmospheric methane ({CH}4) since 2007 after a decade of stabilization has drawn much attention to its causes and future trends. Wetlands are the single largest source of atmospheric {CH}4. Understanding wetland ecosystems and carbon dynamics is critical to the estimation of global {CH}4 and carbon budgets. After approximately 7 years of {CH}4 related research following the renewed growth in atmospheric {CH}4, Environmental Research Letters launched a special issue of research letters on wetland ecosystems and carbon dynamics in 2014. This special issue highlights recent developments in terrestrial ecosystem models and ﬁeld measurements of carbon ﬂuxes across different types of wetland ecosystems. The 14 research letters emphasize the importance of wetland ecosystems in the global {CO}2 and {CH}4 budget.},
-	pages = {100201},
-	number = {10},
-	journaltitle = {Environmental Research Letters},
-	author = {Meng, Lei and Roulet, Nigel and Zhuang, Qianlai and Christensen, Torben R and Frolking, Steve},
-	urldate = {2018-07-10},
-	date = {2016-10-01},
-	langid = {english},
-	file = {Meng et al. - 2016 - Focus on the impact of climate change on wetland e.pdf:C\:\\Users\\Brent Thorne\\Zotero\\storage\\MZ9EJSBG\\Meng et al. - 2016 - Focus on the impact of climate change on wetland e.pdf:application/pdf}
-}
-
-@article{mann_pan-arctic_2016,
-	title = {Pan-Arctic Trends in Terrestrial Dissolved Organic Matter from Optical Measurements},
-	volume = {4},
-	issn = {2296-6463},
-	url = {http://journal.frontiersin.org/Article/10.3389/feart.2016.00025/abstract},
-	doi = {10.3389/feart.2016.00025},
-	abstract = {Climate change is causing extensive warming across Arctic regions resulting in permafrost degradation, alterations to regional hydrology and shifting amounts and composition of dissolved organic matter ({DOM}) transported by streams and rivers. Here, we characterize the {DOM} composition and optical properties of the six largest Arctic rivers draining into the Arctic Ocean to examine the ability of optical measurements to provide meaningful insights into terrigenous carbon export patterns and biogeochemical cycling. The chemical composition of aquatic {DOM} varied with season, spring months were typiﬁed by highest lignin phenol and dissolved organic carbon ({DOC}) concentrations with greater hydrophobic acid content, and lower proportions of hydrophilic compounds, relative to summer and winter months. Chromophoric {DOM} ({CDOM}) spectral slope (S275–295) tracked seasonal shifts in {DOM} composition across river basins. Fluorescence and parallel factor analysis identiﬁed seven components across the six Arctic rivers. The ratios of “terrestrial humic-like” vs. “marine humic-like” ﬂuorescent components co-varied with lignin monomer ratios over summer and winter months, suggesting ﬂuorescence may provide information on the age and degradation state of riverine {DOM}. {CDOM} absorbance (a350) proved a sensitive proxy for lignin phenol concentrations across all six river basins and over the hydrograph, enabling for the ﬁrst time the development of a single pan-arctic relationship between a350 and terrigenous {DOC} (R2 = 0.93). Combining this lignin proxy with high-resolution monitoring of a350, pan-arctic estimates of annual lignin ﬂux were calculated to range from 156 to 185 Gg, resulting in shorter and more constrained estimates of terrigenous {DOM} residence times in the Arctic Ocean (spanning 7 months to 2½ years). Furthermore, multiple linear regression models incorporating both absorbance and ﬂuorescence variables proved capable of explaining much of the variability in lignin composition across rivers and seasons. Our ﬁndings suggest that synoptic, high-resolution optical measurements can provide improved understanding of northern high-latitude organic matter cycling and ﬂux, and prove an important technique for capturing future climate-driven changes.},
-	journaltitle = {Frontiers in Earth Science},
-	author = {Mann, Paul J. and Spencer, Robert G. M. and Hernes, Peter J. and Six, Johan and Aiken, George R. and Tank, Suzanne E. and {McClelland}, James W. and Butler, Kenna D. and Dyda, Rachael Y. and Holmes, Robert M.},
-	urldate = {2018-07-10},
-	date = {2016-03-17},
-	langid = {english},
-	file = {Mann et al. - 2016 - Pan-Arctic Trends in Terrestrial Dissolved Organic.pdf:C\:\\Users\\Brent Thorne\\Zotero\\storage\\EDA6WJEQ\\Mann et al. - 2016 - Pan-Arctic Trends in Terrestrial Dissolved Organic.pdf:application/pdf}
-}
-
-@article{striegl_carbon_2012,
-	title = {Carbon dioxide and methane emissions from the Yukon River system: {YUKON} {RIVER} C {GAS} {EMISSIONS}},
-	volume = {26},
-	issn = {08866236},
-	url = {http://doi.wiley.com/10.1029/2012GB004306},
-	doi = {10.1029/2012GB004306},
-	shorttitle = {Carbon dioxide and methane emissions from the Yukon River system},
-	pages = {n/a--n/a},
-	number = {4},
-	journaltitle = {Global Biogeochemical Cycles},
-	author = {Striegl, Robert G. and Dornblaser, M. M. and {McDonald}, C. P. and Rover, J. R. and Stets, E. G.},
-	urldate = {2018-07-10},
-	date = {2012-12},
-	langid = {english},
-	file = {Striegl et al. - 2012 - Carbon dioxide and methane emissions from the Yuko.pdf:C\:\\Users\\Brent Thorne\\Zotero\\storage\\4VJK44C5\\Striegl et al. - 2012 - Carbon dioxide and methane emissions from the Yuko.pdf:application/pdf}
-}
-
-@article{abbott_biomass_2016,
-	title = {Biomass offsets little or none of permafrost carbon release from soils, streams, and wildfire: an expert assessment},
-	volume = {11},
-	issn = {1748-9326},
-	url = {http://stacks.iop.org/1748-9326/11/i=3/a=034014?key=crossref.66df61179f78005f9999c2637a68bf9e},
-	doi = {10.1088/1748-9326/11/3/034014},
-	shorttitle = {Biomass offsets little or none of permafrost carbon release from soils, streams, and wildfire},
-	abstract = {As the permafrost region warms, its large organic carbon pool will be increasingly vulnerable to decomposition, combustion, and hydrologic export. Models predict that some portion of this release will be offset by increased production of Arctic and boreal biomass; however, the lack of robust estimates of net carbon balance increases the risk of further overshooting international emissions targets. Precise empirical or model-based assessments of the critical factors driving carbon balance are unlikely in the near future, so to address this gap, we present estimates from 98 permafrost-region experts of the response of biomass, wildﬁre, and hydrologic carbon ﬂux to climate change. Results suggest that contrary to model projections, total permafrost-region biomass could decrease due to water stress and disturbance, factors that are not adequately incorporated in current models. Assessments indicate that end-of-the-century organic carbon release from Arctic rivers and collapsing coastlines could increase by 75\% while carbon loss via burning could increase four-fold. Experts identiﬁed water balance, shifts in vegetation community, and permafrost degradation as the key sources of uncertainty in predicting future system response. In combination with previous ﬁndings, results suggest the permafrost region will become a carbon source to the atmosphere by 2100 regardless of warming scenario but that 65\%–85\% of permafrost carbon release can still be avoided if human emissions are actively reduced.},
-	pages = {034014},
-	number = {3},
-	journaltitle = {Environmental Research Letters},
-	author = {Abbott, Benjamin W and Jones, Jeremy B and Schuur, Edward A G and Chapin III, F Stuart and Bowden, William B and Bret-Harte, M Syndonia and Epstein, Howard E and Flannigan, Michael D and Harms, Tamara K and Hollingsworth, Teresa N and Mack, Michelle C and McGuire, A David and Natali, Susan M and Rocha, Adrian V and Tank, Suzanne E and Turetsky, Merritt R and Vonk, Jorien E and Wickland, Kimberly P and Aiken, George R and Alexander, Heather D and Amon, Rainer M W and Benscoter, Brian W and Bergeron, Yves and Bishop, Kevin and Blarquez, Olivier and {Ben Bond-Lamberty} and Breen, Amy L and Buffam, Ishi and Cai, Yihua and Carcaillet, Christopher and Carey, Sean K and Chen, Jing M and Chen, Han Y H and Christensen, Torben R and Cooper, Lee W and Cornelissen, J Hans C and de Groot, William J and DeLuca, Thomas H and Dorrepaal, Ellen and Fetcher, Ned and Finlay, Jacques C and Forbes, Bruce C and French, Nancy H F and Gauthier, Sylvie and Girardin, Martin P and Goetz, Scott J and Goldammer, Johann G and Gough, Laura and Grogan, Paul and Guo, Laodong and Higuera, Philip E and Hinzman, Larry and Hu, Feng Sheng and Hugelius, Gustaf and Jafarov, Elchin E and Jandt, Randi and Johnstone, Jill F and {Jan Karlsson} and Kasischke, Eric S and Kattner, Gerhard and Kelly, Ryan and Keuper, Frida and Kling, George W and Kortelainen, Pirkko and Kouki, Jari and Kuhry, Peter and Laudon, Hjalmar and Laurion, Isabelle and Macdonald, Robie W and Mann, Paul J and Martikainen, Pertti J and McClelland, James W and Molau, Ulf and Oberbauer, Steven F and Olefeldt, David and Paré, David and Parisien, Marc-André and Payette, Serge and Peng, Changhui and Pokrovsky, Oleg S and Rastetter, Edward B and Raymond, Peter A and Raynolds, Martha K and Rein, Guillermo and Reynolds, James F and Robards, Martin and Rogers, Brendan M and Schädel, Christina and Schaefer, Kevin and Schmidt, Inger K and Shvidenko, Anatoly and Sky, Jasper and Spencer, Robert G M and Starr, Gregory and Striegl, Robert G and Teisserenc, Roman and Tranvik, Lars J and Virtanen, Tarmo and Welker, Jeffrey M and Zimov, Sergei},
-	urldate = {2018-07-10},
-	date = {2016-03-01},
-	langid = {english},
-	file = {Abbott et al. - 2016 - Biomass offsets little or none of permafrost carbo.pdf:C\:\\Users\\Brent Thorne\\Zotero\\storage\\ZIVXAECM\\Abbott et al. - 2016 - Biomass offsets little or none of permafrost carbo.pdf:application/pdf;Abbott_SI.pdf:C\:\\Users\\Brent Thorne\\Zotero\\storage\\BXSPRXVM\\Abbott_SI.pdf:application/pdf}
-}
-
-@article{tank_multi-decadal_2016,
-	title = {Multi-decadal increases in dissolved organic carbon and alkalinity flux from the Mackenzie drainage basin to the Arctic Ocean},
-	volume = {11},
-	issn = {1748-9326},
-	url = {http://stacks.iop.org/1748-9326/11/i=5/a=054015?key=crossref.7d1c7cfed6e5144abdb52d2f625a9970},
-	doi = {10.1088/1748-9326/11/5/054015},
-	pages = {054015},
-	number = {5},
-	journaltitle = {Environmental Research Letters},
-	author = {Tank, Suzanne E and Striegl, Robert G and {McClelland}, James W and Kokelj, Steven V},
-	urldate = {2018-07-10},
-	date = {2016-05-01},
-	langid = {english},
-	file = {Tank et al. - 2016 - Multi-decadal increases in dissolved organic carbo.pdf:C\:\\Users\\Brent Thorne\\Zotero\\storage\\J5V6VHLI\\Tank et al. - 2016 - Multi-decadal increases in dissolved organic carbo.pdf:application/pdf}
-}
-
-@article{baofeng_digital_2016,
-	title = {Digital surface model applied to unmanned aerial vehicle based photogrammetry to assess potential biotic or abiotic effects on grapevine canopies},
-	volume = {9},
-	abstract = {Accurate data acquisition and analysis to obtain crop canopy information are critical steps to understand plant growth dynamics and to assess the potential impacts of biotic or abiotic stresses on plant development. A versatile and easy to use monitoring system will allow researchers and growers to improve the follow-up management strategies within farms once potential problems have been detected. This study reviewed existing remote sensing platforms and relevant information applied to crops and specifically grapevines to equip a simple Unmanned Aerial Vehicle ({UAV}) using a visible high definition {RGB} camera. The objective of the proposed Unmanned Aerial System ({UAS}) was to implement a Digital Surface Model ({DSM}) in order to obtain accurate information about the affected or missing grapevines that can be attributed to potential biotic or abiotic stress effects. The analysis process started with a three-dimensional (3D) reconstruction from the {RGB} images collected from grapevines using the {UAS} and the Structure from Motion ({SfM}) technique to obtain the {DSM} applied on a per-plant basis. Then, the {DSM} was expressed as greyscale images according to the halftone technique to finally extract the information of affected and missing grapevines using computer vision algorithms based on canopy cover measurement and classification. To validate the automated method proposed, each grapevine row was visually inspected within the study area. The inspection was then compared to the digital assessment using the proposed {UAS} in order to validate calculations of affected and missing grapevines for the whole studied vineyard. Results showed that the percentage of affected and missing grapevines was 9.5\% and 7.3\%, respectively from the area studied. Therefore, for this specific study, the abiotic stress that affected the experimental vineyard (frost) impacted a total of 16.8 \% of plants. This study provided a new method for automatically surveying affected or missing grapevines in the field and an evaluation tool for plant growth conditions, which can be implemented for other uses such as canopy management, irrigation scheduling and other precision agricultural applications.},
-	pages = {13},
-	journaltitle = {Biol Eng},
-	author = {Baofeng, Su and Jinru, Xue and Chunyu, Xie and Yulin, Fang and Yuyang, Song and Fuentes, Sigfredo},
-	date = {2016-11-16},
-	langid = {english},
-	file = {Baofeng et al. - Digital surface model applied to unmanned aerial v.pdf:C\:\\Users\\Brent Thorne\\Zotero\\storage\\25SC6CWE\\Baofeng et al. - Digital surface model applied to unmanned aerial v.pdf:application/pdf}
-}
-
-@article{gennaro_unmanned_2016,
-	title = {Unmanned Aerial Vehicle ({UAV})-based remote sensing to monitor grapevine leaf stripe disease within a vineyard affected by esca complex},
-	issn = {00319465},
-	url = {http://www.fupress.net/index.php/pm/article/view/18312},
-	doi = {10.14601/Phytopathol_Mediterr-18312},
-	abstract = {Foliar symptoms of grapevine leaf stripe disease ({GLSD}, a disease within the esca complex) are linked to drastic alteration of photosynthetic function and activation of defense responses in affected grapevines several days before the appearance of the first visible symptoms on leaves. The present study suggests a methodology to investigate the relationships between high-resolution multispectral images (0.05 m/pixel) acquired using an Unmanned Aerial Vehicle ({UAV}), and {GLSD} foliar symptoms monitored by ground surveys. This approach showed high correlation between Normalized Differential Vegetation Index ({NDVI}) acquired by the {UAV} and {GLSD} symptoms, and discrimination between symptomatic from asymptomatic plants. High-resolution multispectral images were acquired during June and July of 2012 and 2013, in an experimental vineyard heavily affected by {GLSD}, located in Tuscany (Italy), where vines had been surveyed and mapped since 2003. Each vine was located with a global positioning system, and classified for appearance of foliar symptoms and disease severity at weekly intervals from the beginning of each season. Remote sensing and ground observation data were analyzed to promptly identify the early stages of disease, even before visual detection. This work suggests an innovative methodology for quantitative and qualitative analysis of spatial distribution of symptomatic plants. The system may also be used for exploring the physiological bases of {GLSD}, and predicting the onset of this disease.},
-	number = {2},
-	journaltitle = {Phytopathologia Mediterranea},
-	author = {{GENNARO}, Salvatore F. {DI} and {BATTISTON}, Enrico and {MARCO}, Stefano {DI} and {FACINI}, Osvaldo and {MATESE}, Alessandro and {NOCENTINI}, Marco and {PALLIOTTI}, Alberto and {MUGNAI}, Laura},
-	urldate = {2018-07-04},
-	date = {2016-07-29},
-	langid = {english},
-	file = {GENNARO et al. - 2016 - Unmanned Aerial Vehicle (UAV)-based remote sensing.pdf:C\:\\Users\\Brent Thorne\\Zotero\\storage\\Q38A2UPX\\GENNARO et al. - 2016 - Unmanned Aerial Vehicle (UAV)-based remote sensing.pdf:application/pdf}
-}
-
-@article{arno_review._2009,
-	title = {Review. Precision viticulture. Research topics, challenges and opportunities in site-specific vineyard management},
-	volume = {7},
-	issn = {2171-9292, 1695-971X},
-	url = {http://revistas.inia.es/index.php/sjar/article/view/1092},
-	doi = {10.5424/sjar/2009074-1092},
-	abstract = {Precision Viticulture ({PV}) is a concept that is beginning to have an impact on the wine-growing sector. Its practical implementation is dependant on various technological developments: crop sensors and yield monitors, local and remote sensors, Global Positioning Systems ({GPS}), {VRA} (Variable-Rate Application) equipment and machinery, Geographic Information Systems ({GIS}) and systems for data analysis and interpretation. This paper reviews a number of research lines related to {PV}. These areas of research have focused on four very specific fields: 1) quantification and evaluation of within-field variability, 2) delineation of zones of differential treatment at parcel level, based on the analysis and interpretation of this variability, 3) development of Variable-Rate Technologies ({VRT}) and, finally, 4) evaluation of the opportunities for site-specific vineyard management. Research in these fields should allow winegrowers and enologists to know and understand why yield variability exists within the same parcel, what the causes of this variability are, how the yield and its quality are interrelated and, if spatial variability exists, whether site-specific vineyard management is justifiable on a technical and economic basis.},
-	pages = {779},
-	number = {4},
-	journaltitle = {Spanish Journal of Agricultural Research},
-	author = {Arnó, J. and Martínez Casasnovas, J.A. and Ribes Dasi, M. and Rosell, J.R.},
-	urldate = {2018-07-04},
-	date = {2009-12-01},
-	langid = {english},
-	file = {Arnó et al. - 2009 - Review. Precision viticulture. Research topics, ch.pdf:C\:\\Users\\Brent Thorne\\Zotero\\storage\\MYKWTYKV\\Arnó et al. - 2009 - Review. Precision viticulture. Research topics, ch.pdf:application/pdf}
-}
-
-@article{bramley_understanding_2005,
-	title = {Understanding variability in winegrape production systems 2. Within vineyard variation in quality over several vintages},
-	volume = {11},
-	issn = {1322-7130, 1755-0238},
-	url = {http://doi.wiley.com/10.1111/j.1755-0238.2005.tb00277.x},
-	doi = {10.1111/j.1755-0238.2005.tb00277.x},
-	abstract = {Spatial variability in various indices of winegrape quality was studied over several vintages in blocks planted to Cabernet Sauvignon and Ruby Cabernet in the Coonawarra (1999–2002) and Sunraysia (2000–2002) regions of Australia. At both sites, inter-annual variation was marked whilst intra-annual variation was much greater for some indices (e.g. concentration of total phenolics) than others (e.g. Baumé). The magnitude of intra-annual variation was readily identiﬁed in terms of the ‘spread’, deﬁned as the difference between the maximum and minimum values, expressed as a \% of the median value. Typical values of the spread were 20\% for Baumé, but could be as high as 117\% for phenolics, and better indicated the extent of variation facing the winemaker than the coefﬁcient of variation ({CV}; typically 3\% for Baumé and 14\% for phenolics). For all attributes, variation in any given year showed marked spatial structure, with the patterns of variation being broadly consistent for each attribute in each year of the study, and with many attributes following similar patterns. The results therefore strongly support the idea of zonal vineyard management. However, fruit quality zone identification is dependent on a large sampling effort. Therefore, given the current availability of yield monitors, the ﬁnding that between-zone differences in quality indices were generally signiﬁcant (P {\textless} 0.05) for zones identiﬁed on the basis of yield alone, and, in the absence of an on-the-go sensing capability, it is suggested that zonal management should proceed on the basis of zones of characteristic yield productivity. Based on the present work, it is suggested that development of an on-the-go fruit quality sensing technology would enable the wine industry to maximise its opportunity to gain benefit from differential vineyard management such as selective harvesting. Indeed, the results of this work suggest that in the absence of zonal management, preferably supported by on-the-go quality sensing, winemaker demands for delivery of uniform parcels of fruit are unlikely to be satisﬁed.},
-	pages = {33--42},
-	number = {1},
-	journaltitle = {Australian Journal of Grape and Wine Research},
-	author = {Bramley, R.G.V.},
-	urldate = {2018-07-04},
-	date = {2005-04},
-	langid = {english},
-	file = {Bramley - 2005 - Understanding variability in winegrape production .pdf:C\:\\Users\\Brent Thorne\\Zotero\\storage\\SMNS5YAL\\Bramley - 2005 - Understanding variability in winegrape production .pdf:application/pdf}
-}
-
-@article{de_castro_3-d_2018,
-	title = {3-D Characterization of Vineyards Using a Novel {UAV} Imagery-Based {OBIA} Procedure for Precision Viticulture Applications},
-	volume = {10},
-	issn = {2072-4292},
-	url = {http://www.mdpi.com/2072-4292/10/4/584},
-	doi = {10.3390/rs10040584},
-	abstract = {Precision viticulture has arisen in recent years as a new approach in grape production. It is based on assessing ﬁeld spatial variability and implementing site-speciﬁc management strategies, which can require georeferenced information of the three dimensional (3D) grapevine canopy structure as one of the input data. The 3D structure of vineyard ﬁelds can be generated applying photogrammetric techniques to aerial images collected with Unmanned Aerial Vehicles ({UAVs}), although processing the large amount of crop data embedded in 3D models is currently a bottleneck of this technology. To solve this limitation, a novel and robust object-based image analysis ({OBIA}) procedure based on Digital Surface Model ({DSM}) was developed for 3D grapevine characterization. The signiﬁcance of this work relies on the developed {OBIA} algorithm which is fully automatic and self-adaptive to different crop-ﬁeld conditions, classifying grapevines, and row gap (missing vine plants), and computing vine dimensions without any user intervention. The results obtained in three testing ﬁelds on two different dates showed high accuracy in the classiﬁcation of grapevine area and row gaps, as well as minor errors in the estimates of grapevine height. In addition, this algorithm computed the position, projected area, and volume of every grapevine in the ﬁeld, which increases the potential of this {UAV}- and {OBIA}-based technology as a tool for site-speciﬁc crop management applications.},
-	pages = {584},
-	number = {4},
-	journaltitle = {Remote Sensing},
-	author = {de Castro, Ana and Jiménez-Brenes, Francisco and Torres-Sánchez, Jorge and Peña, José and Borra-Serrano, Irene and López-Granados, Francisca},
-	urldate = {2018-07-04},
-	date = {2018-04-10},
-	langid = {english},
-	file = {de Castro et al. - 2018 - 3-D Characterization of Vineyards Using a Novel UA.pdf:C\:\\Users\\Brent Thorne\\Zotero\\storage\\V7C4QQ8G\\de Castro et al. - 2018 - 3-D Characterization of Vineyards Using a Novel UA.pdf:application/pdf}
-}
-
-@article{feng_uav_2015,
-	title = {{UAV} Remote Sensing for Urban Vegetation Mapping Using Random Forest and Texture Analysis},
-	volume = {7},
-	issn = {2072-4292},
-	url = {http://www.mdpi.com/2072-4292/7/1/1074},
-	doi = {10.3390/rs70101074},
-	pages = {1074--1094},
-	number = {1},
-	journaltitle = {Remote Sensing},
-	author = {Feng, Quanlong and Liu, Jiantao and Gong, Jianhua},
-	urldate = {2018-07-04},
-	date = {2015-01-19},
-	langid = {english},
-	file = {Feng et al. - 2015 - UAV Remote Sensing for Urban Vegetation Mapping Us.pdf:C\:\\Users\\Brent Thorne\\Zotero\\storage\\AEGI5689\\Feng et al. - 2015 - UAV Remote Sensing for Urban Vegetation Mapping Us.pdf:application/pdf}
-}
-
-@article{mcguire_dependence_2018,
-	title = {Dependence of the evolution of carbon dynamics in the northern permafrost region on the trajectory of climate change},
-	volume = {115},
-	issn = {0027-8424, 1091-6490},
-	url = {http://www.pnas.org/lookup/doi/10.1073/pnas.1719903115},
-	doi = {10.1073/pnas.1719903115},
-	pages = {3882--3887},
-	number = {15},
-	journaltitle = {Proceedings of the National Academy of Sciences},
-	author = {{McGuire}, A. David and Lawrence, David M. and Koven, Charles and Clein, Joy S. and Burke, Eleanor and Chen, Guangsheng and Jafarov, Elchin and {MacDougall}, Andrew H. and Marchenko, Sergey and Nicolsky, Dmitry and Peng, Shushi and Rinke, Annette and Ciais, Philippe and Gouttevin, Isabelle and Hayes, Daniel J. and Ji, Duoying and Krinner, Gerhard and Moore, John C. and Romanovsky, Vladimir and Schädel, Christina and Schaefer, Kevin and Schuur, Edward A. G. and Zhuang, Qianlai},
-	urldate = {2018-07-02},
-	date = {2018-04-10},
-	langid = {english},
-	file = {McGuire et al. - 2018 - Dependence of the evolution of carbon dynamics in .pdf:C\:\\Users\\Brent Thorne\\Zotero\\storage\\V4CP9RI9\\McGuire et al. - 2018 - Dependence of the evolution of carbon dynamics in .pdf:application/pdf}
-}
-
-@article{noauthor_3882.full.pdf_nodate,
-	title = {3882.full.pdf},
-	doi = {https://doi.org/10.1073/pnas.1719903115}
-}
-
-@article{turner_controls_2014,
-	title = {Controls on water balance of shallow thermokarst lakes and their relations with catchment characteristics: a multi-year, landscape-scale assessment based on water isotope tracers and remote sensing in Old Crow Flats, Yukon (Canada)},
-	volume = {20},
-	issn = {13541013},
-	url = {http://doi.wiley.com/10.1111/gcb.12465},
-	doi = {10.1111/gcb.12465},
-	shorttitle = {Controls on water balance of shallow thermokarst lakes and their relations with catchment characteristics},
-	abstract = {Many northern lake-rich regions are undergoing pronounced hydrological change, yet inadequate knowledge of the drivers of these landscape-scale responses hampers our ability to predict future conditions. We address this challenge in the thermokarst landscape of Old Crow Flats ({OCF}) using a combination of remote sensing imagery and monitoring of stable isotope compositions of lake waters over three thaw seasons (2007–2009). Quantitative analysis conﬁrmed that the hydrological behavior of lakes is strongly inﬂuenced by catchment vegetation and physiography. Catchments of snowmelt-dominated lakes, typically located in southern peripheral areas of {OCF}, encompass high proportions of woodland/forest and tall shrub vegetation (mean percent land cover = ca. 60\%). These land cover types effectively capture snow and generate abundant snowmelt runoff that offsets lake water evaporation. Rainfalldominated lakes that are not strongly inﬂuenced by evaporation are typically located in eastern and northern {OCF} where their catchments have higher proportions of dwarf shrub/herbaceous and sparse vegetation (ca. 45\%), as well as surface water (ca. 20\%). Evaporation-dominated lakes, are located in the {OCF} interior where their catchments are distinguished by substantially higher lake area to catchment area ratios ({LA}/{CA} = ca. 29\%) compared to low evaporation-inﬂuenced rainfall-dominated (ca. 10\%) and snowmelt-dominated (ca. 4\%) lakes. Lakes whose catchments contain {\textgreater}75\% combined dwarf shrub/herbaceous vegetation and surface water are most susceptible to evaporative lake-level drawdown, especially following periods of low precipitation. Findings indicate that multiple hydrological trajectories are probable in response to climate-driven changes in precipitation amount and seasonality, vegetation composition, and thermokarst processes. These will likely include a shift to greater snowmelt inﬂuence in catchments experiencing expansion of tall shrubs, greater inﬂuence from evaporation in catchments having higher proportions of surface water, and an increase in the rate of thermokarst lake expansion and probability of drainage. Local observations suggest that some of these changes are already underway.},
-	pages = {1585--1603},
-	number = {5},
-	journaltitle = {Global Change Biology},
-	author = {Turner, Kevin W. and Wolfe, Brent B. and Edwards, Thomas W. D. and Lantz, Trevor C. and Hall, Roland I. and Larocque, Guillaume},
-	urldate = {2018-06-29},
-	date = {2014-05},
-	langid = {english},
-	file = {Turner et al. - 2014 - Controls on water balance of shallow thermokarst l.pdf:C\:\\Users\\Brent Thorne\\Zotero\\storage\\ENFATHMR\\Turner et al. - 2014 - Controls on water balance of shallow thermokarst l.pdf:application/pdf}
-}
-
-@article{carrillo_use_2016,
-	title = {Use of multi-spectral airborne imagery to improve yield sampling in viticulture},
-	volume = {17},
-	issn = {1385-2256, 1573-1618},
-	url = {http://link.springer.com/10.1007/s11119-015-9407-8},
-	doi = {10.1007/s11119-015-9407-8},
-	pages = {74--92},
-	number = {1},
-	journaltitle = {Precision Agriculture},
-	author = {Carrillo, E. and Matese, A. and Rousseau, J. and Tisseyre, B.},
-	urldate = {2018-06-27},
-	date = {2016-02},
-	langid = {english},
-	file = {Carrillo et al. - 2016 - Use of multi-spectral airborne imagery to improve .pdf:C\:\\Users\\Brent Thorne\\Zotero\\storage\\NP4AZI7X\\Carrillo et al. - 2016 - Use of multi-spectral airborne imagery to improve .pdf:application/pdf}
-}
-
-@misc{gordon_arctic_2005,
-	title = {Arctic Borderlands Ecological Knowledge Co-op},
-	author = {Gordon, Annie B and Andre, May and Kaglik, Butch and Cockney, Steve and Allen, Mildred and Snowshoe, Audrey and Tetlichi, Randall},
-	date = {2005},
-	langid = {english},
-	file = {Gordon et al. - 2005 - Arctic Borderlands Ecological Knowledge Co-op.pdf:C\:\\Users\\Brent Thorne\\Zotero\\storage\\DXMNW9PT\\Gordon et al. - 2005 - Arctic Borderlands Ecological Knowledge Co-op.pdf:application/pdf}
-}
-
-@article{hogrefe_normalized_2017,
-	title = {Normalized Difference Vegetation Index as an Estimator for Abundance and Quality of Avian Herbivore Forage in Arctic Alaska},
-	volume = {9},
-	issn = {2072-4292},
-	url = {http://www.mdpi.com/2072-4292/9/12/1234},
-	doi = {10.3390/rs9121234},
-	abstract = {Tools that can monitor biomass and nutritional quality of forage plants are needed to understand how arctic herbivores may respond to the rapidly changing environment at high latitudes. The Normalized Difference Vegetation Index ({NDVI}) has been widely used to assess changes in abundance and distribution of terrestrial vegetative communities. However, the efﬁcacy of {NDVI} to measure seasonal changes in biomass and nutritional quality of forage plants in the Arctic remains largely un-evaluated at landscape and ﬁne-scale levels. We modeled the relationships between {NDVI} and seasonal changes in aboveground biomass and nitrogen concentration in halophytic graminoids, a key food source for arctic-nesting geese. The model was calibrated based on data collected at one site and validated using data from another site. Effects of spatial scale on model accuracy were determined by comparing model predictions between {NDVI} derived from moderate resolution (250 × 250 m pixels) satellite data and high resolution (20 cm diameter area) handheld spectrometer data. {NDVI} derived from the handheld spectrometer was a superior estimator (R2 ≥ 0.67) of seasonal changes in aboveground biomass compared to satellite-derived {NDVI} (R2 ≤ 0.40). The addition of temperature and precipitation variables to the model for biomass improved ﬁt, but provided minor gains in predictive power beyond that of the {NDVI}-only model. This model, however, was only a moderately accurate estimator of biomass in an ecologically-similar halophytic graminoid wetland located 100 km away, indicating the necessity for site-speciﬁc validation. In contrast to assessments of biomass, satellite-derived {NDVI} was a better estimator for the timing of peak percent of nitrogen than {NDVI} derived from the handheld spectrometer. We conﬁrmed that the date when {NDVI} reached 50\% of its seasonal maximum was a reasonable approximation of the period of peak spring vegetative green-up and peak percent nitrogen. This study demonstrates the importance of matching the scale of {NDVI} measurements to the vegetation properties of biomass and nitrogen phenology.},
-	pages = {1234},
-	number = {12},
-	journaltitle = {Remote Sensing},
-	author = {Hogrefe, Kyle and Patil, Vijay and Ruthrauff, Daniel and Meixell, Brandt and Budde, Michael and Hupp, Jerry and Ward, David},
-	urldate = {2018-06-19},
-	date = {2017-11-29},
-	langid = {english},
-	file = {Hogrefe et al. - 2017 - Normalized Difference Vegetation Index as an Estim.pdf:C\:\\Users\\Brent Thorne\\Zotero\\storage\\QJLPS23F\\Hogrefe et al. - 2017 - Normalized Difference Vegetation Index as an Estim.pdf:application/pdf}
-}
-
-@article{ahmed_assessment_2018,
-	title = {Assessment of land cover change using remote sensing, aerial photographs and dendrochronological approaches in Old Crow Flats, Yukon},
-	abstract = {Changing climate conditions have been amplified across Arctic and subarctic regions, which have influenced landscape characteristics. Notably, shrub vegetation size and spatial distributions have increased in many locations, which have been found to influence other landscape components including hydrological and ecological conditions. The 14,500 km2 Old Crow Flats ({OCF}) basin in northern Yukon is one such landscape where past research has identified relations among land cover and hydroecological conditions, however, more refined insight of land cover changes is required to identify how this important and vast wetland will respond to future changing climate. Here, we evaluated spatial and temporal patterns of vegetation change in {OCF} since 1985 using Landsat imagery and ground control observations from plot sampling, oblique aerial images, and an unmanned aerial vehicle ({UAV}). Trends in greening vegetation spatial distribution were identified using remote-sensing indicators, the normalized difference vegetation index ({NDVI}) and tasseled cap transformation ({TCg}). Findings showed a significant increase in vegetation greening during the last 30 years, which was compared with a Landsat-derived land cover classification layer. Quantitative analysis showed that greening occurred mostly in 8,335 km2 shrub-vegetation classified areas (outside of drained lake basins) from 1985 to 2014. Shrub vegetation coverage was estimated to increase approximately 13.25 km2 per year in {OCF}. The greatest increases in vegetation was found across the northern and eastern ecotone areas of the {OCF} basin. The highest percentage of greening ({\textasciitilde}7.58\%) was observed in the northern {OCF} basin and northern parts of the Black Fox Creek subcatchment, and the highest coverage of greening ({\textasciitilde}2,108 km2) was found in the Johnson Creek subcatchment. Additional validation of remote sensing analysis was generated from 550 oblique photographs, as well as integration of shrub age analysis and acquisition of multispectral images in two 90-m plots. Oblique photographs showed the majority (72\%) of sampled pixels with significant greening were shrub vegetation. {UAV} and analysis of tree rings in the two plots within greening pixels showed that shrub was the dominant vegetation (70-73\% coverage) and that 70\% of shrubs sampled were dated at ≤ 30 years old. The Landsat-derived vegetation greening products will be essential for refining our knowledge of how changing land cover is impacting lake and river hydroecological conditions. Insight generated here about key wildlife habitat will be useful for stakeholders including the Vuntut Gwitchin First Nation and Vuntut National Park as they form monitoring and land management plans as climate continues to change.},
-	journaltitle = {Remote Sensing},
-	shortjournal = {Remote Sensing},
-	author = {Ahmed, M. Razu and Turner, Kevin W. and Thorne, W. Brent and Wang, Jon A. and Lantz, Trevor C.},
-	date = {2018-06},
-	file = {Ahmed et al. - 2018 - Assessment of land cover change using remote sensi.pdf:C\:\\Users\\Brent Thorne\\Zotero\\storage\\UKJEP9PC\\Ahmed et al. - 2018 - Assessment of land cover change using remote sensi.pdf:application/pdf}
-}
-
-@article{olthof_recent_2009,
-	title = {Recent (1986-2006) Vegetation-Specific {NDVI} Trends in Northern Canada from Satellite Data},
-	volume = {61},
-	issn = {1923-1245, 0004-0843},
-	url = {http://arctic.journalhosting.ucalgary.ca/arctic/index.php/arctic/article/view/46},
-	doi = {10.14430/arctic46},
-	abstract = {Recent northern vegetation changes caused by climate warming have been well documented, using experimental plot warming to examine vegetation-specific changes and satellite image data to examine overall trends. Previous remote sensing efforts have employed the Normalized Difference Vegetation Index ({NDVI}) from {AVHRR}, whose 1 km to 8 km pixel size is too large for examination of broad scale vegetation-specific responses because of mixing within the pixel footprint. In this paper, we reconcile differences between field- and remote sensing-based approaches by using both medium-resolution (30 m) and coarseresolution (1 km) data to study 20 years of vegetation-specific responses to northern climate warming (1986 to 2006). Trends are compared among vegetation communities from two separate Landsat classifications in Canada’s eastern and western forest-tundra transition zone, as well as a 1 km {AVHRR} database recently developed over Canada. A comparison of absolute trends among mapped vegetation communities revealed lichen-dominated communities consistently exhibiting lower trends than those dominated by vascular plants, with both exhibiting increasing {NDVI}. Our results and those obtained from experimental warming suggest that the magnitude difference in {NDVI} increase between lichen and vascular vegetation is related to increasing vigor and biomass of vascular vegetation, in contrast to physiological impairment of lichen due to the short-term secondary effect of temperature on moisture. In the longer term, succession from lichen to vascular is likely responsible for the small observed {NDVI} increase over lichen-dominated regions. The fact that both Landsat and {AVHRR} exhibited similar relative vegetation-specific trends in {NDVI} suggests that this phenomenon may be widespread in the North.},
-	number = {4},
-	journaltitle = {{ARCTIC}},
-	author = {Olthof, Ian and Pouliot, Darren},
-	urldate = {2018-05-09},
-	date = {2009-08-28},
-	langid = {english},
-	file = {Olthof and Pouliot - 2009 - Recent (1986-2006) Vegetation-Specific NDVI Trends.pdf:C\:\\Users\\Brent Thorne\\Zotero\\storage\\B2P2MZGI\\Olthof and Pouliot - 2009 - Recent (1986-2006) Vegetation-Specific NDVI Trends.pdf:application/pdf}
-}
-
-@article{van_der_maaten_dendrometer:_2016,
-	title = {{dendrometeR}: Analyzing the pulse of trees in R},
-	volume = {40},
-	issn = {11257865},
-	url = {http://linkinghub.elsevier.com/retrieve/pii/S1125786516300662},
-	doi = {10.1016/j.dendro.2016.06.001},
-	shorttitle = {{dendrometeR}},
-	abstract = {Dendrometers are measurement devices proven to be useful to analyze tree water relations and growth responses in relation to environmental variability. To analyze dendrometer data, two analytical methods prevail: (1) daily approaches that calculate or extract single values per day, and (2) stem-cycle approaches that separate high-resolution dendrometer records into distinct phases of contraction, expansion and stem-radius increment. Especially the stem-cycle approach requires complex algorithms to disentangle cyclic phases. Here, we present an R package, named {dendrometeR}, that facilitates the analysis of dendrometer data using both analytical methods. By making the package freely available, we make a ﬁrst step towards comparable and reproducible methods to analyze dendrometer data. The package contains customizable functions to prepare, verify, process and plot dendrometer series, as well as functions that facilitate the analysis of dendrometer data (i.e. daily statistics or extracted phases) in relation to environmental data. The functionality of {dendrometeR} is illustrated in this note.},
-	pages = {12--16},
-	journaltitle = {Dendrochronologia},
-	author = {van der Maaten, Ernst and van der Maaten-Theunissen, Marieke and Smiljanić, Marko and Rossi, Sergio and Simard, Sonia and Wilmking, Martin and Deslauriers, Annie and Fonti, Patrick and von Arx, Georg and Bouriaud, Olivier},
-	urldate = {2018-04-13},
-	date = {2016-12},
-	langid = {english},
-	file = {van der Maaten et al. - 2016 - dendrometeR Analyzing the pulse of trees in R.pdf:C\:\\Users\\Brent Thorne\\Zotero\\storage\\LUEFGPTC\\van der Maaten et al. - 2016 - dendrometeR Analyzing the pulse of trees in R.pdf:application/pdf}
-}
-
-@article{suzuki_hydrological_2018,
-	title = {Hydrological Variability and Changes in the Arctic Circumpolar Tundra and the Three Largest Pan-Arctic River Basins from 2002 to 2016},
-	volume = {10},
-	issn = {2072-4292},
-	url = {http://www.mdpi.com/2072-4292/10/3/402},
-	doi = {10.3390/rs10030402},
-	abstract = {The Arctic freshwater budget is critical for understanding the climate in the northern regions. However, the hydrology of the Arctic circumpolar tundra region ({ACTR}) and the largest pan-Arctic rivers are still not well understood. In this paper, we analyze the spatiotemporal variations in the terrestrial water storage ({TWS}) of the {ACTR} and three of the largest pan-Arctic river basins (Lena, Mackenzie, Yukon). To do this, we utilize monthly Gravity Recovery and Climate Experiment ({GRACE}) data from 2002 to 2016. Together with global land reanalysis, and river runoff data, we identify declining {TWS} trends throughout the {ACTR} that we attribute largely to increasing evapotranspiration driven by increasing summer air temperatures. In terms of regional changes, large and signiﬁcant negative trends in {TWS} are observed mainly over the North American continent. At basin scale, we show that, in the Lena River basin, the autumnal {TWS} signal persists until the spring of the following year, while in the Mackenzie River basin, the {TWS} level in the autumn and winter has no signiﬁcant impact on the following year. As expected global warming is expected to be particularly signiﬁcant in the northern regions, our results are important for understanding future {TWS} trends, with possible further decline.},
-	pages = {402},
-	number = {3},
-	journaltitle = {Remote Sensing},
-	author = {Suzuki, Kazuyoshi and Matsuo, Koji and Yamazaki, Dai and Ichii, Kazuhito and Iijima, Yoshihiro and Papa, Fabrice and Yanagi, Yuji and Hiyama, Tetsuya},
-	urldate = {2018-04-06},
-	date = {2018-03-06},
-	langid = {english},
-	file = {Suzuki et al. - 2018 - Hydrological Variability and Changes in the Arctic.pdf:C\:\\Users\\Brent Thorne\\Zotero\\storage\\HNQ334P9\\Suzuki et al. - 2018 - Hydrological Variability and Changes in the Arctic.pdf:application/pdf}
-}
-
-@inproceedings{liu_combining_2010,
-	title = {Combining Tasseled Cap Transformation with Support Vector Machine to classify Landsat {TM} imagery data},
-	isbn = {978-1-4244-5958-2},
-	url = {http://ieeexplore.ieee.org/document/5582727/},
-	doi = {10.1109/ICNC.2010.5582727},
-	abstract = {Landsat represents the world's longest continuously acquired collection of space-based moderate-resolution land remote sensing data. Compared with the other earlier Landsat satellites, Landsat 8 has several new characteristics in spectral bands, spectral range and radiometric resolution. Therefore, there is a strong requirement to analyze the characteristics of the Landsat 8 for land cover classification, global change research. In this paper, Landsat 8 {OLI} image was used with Support Vector Machine ({SVM}) and Tasseled Cap Transformation ({TCT}) for land cover classification. Firstly, the Top of Atmospheric ({TOA}) reflectance based {TCT} was developed based on Landsat 8 {OLI} images. Then comparison of {ISODATA}, K-Means and {SVM} of all original 8 Landsat 8 {OLI} bands and both of {TCT} Greenness and Wetness in land cover classification was done. The present results showed that compared with using the original 8 Landsat 8 {OLI} bands, the classification results from {ISODATA} and K-Means based on both of {TCT} Greenness and Wetness had better robustness and accuracy, and the classification using {SVM} with {TCT} had better efficiency and accuracy.},
-	pages = {3570--3572},
-	publisher = {{IEEE}},
-	author = {Liu, Qingsheng and Liu, Gaohuan},
-	urldate = {2018-03-28},
-	date = {2010-08},
-	langid = {english},
-	file = {Liu and Liu - 2010 - Combining Tasseled Cap Transformation with Support.pdf:C\:\\Users\\Brent Thorne\\Zotero\\storage\\E8JGU7PD\\Liu and Liu - 2010 - Combining Tasseled Cap Transformation with Support.pdf:application/pdf}
-}
-
-@article{davidson_mapping_2016,
-	title = {Mapping Arctic Tundra Vegetation Communities Using Field Spectroscopy and Multispectral Satellite Data in North Alaska, {USA}},
-	volume = {8},
-	issn = {2072-4292},
-	url = {http://www.mdpi.com/2072-4292/8/12/978},
-	doi = {10.3390/rs8120978},
-	pages = {978},
-	number = {12},
-	journaltitle = {Remote Sensing},
-	author = {Davidson, Scott and Santos, Maria and Sloan, Victoria and Watts, Jennifer and Phoenix, Gareth and Oechel, Walter and Zona, Donatella},
-	urldate = {2018-03-28},
-	date = {2016-11-26},
-	langid = {english},
-	file = {Davidson et al. - 2016 - Mapping Arctic Tundra Vegetation Communities Using.pdf:C\:\\Users\\Brent Thorne\\Zotero\\storage\\U6E5F6HB\\Davidson et al. - 2016 - Mapping Arctic Tundra Vegetation Communities Using.pdf:application/pdf}
-}
-
-@article{thompson_atmospheric_2015,
-	title = {Atmospheric correction for global mapping spectroscopy: {ATREM} advances for the {HyspIRI} preparatory campaign},
-	volume = {167},
-	issn = {00344257},
-	url = {http://linkinghub.elsevier.com/retrieve/pii/S0034425715000607},
-	doi = {10.1016/j.rse.2015.02.010},
-	shorttitle = {Atmospheric correction for global mapping spectroscopy},
-	abstract = {Orbital imaging spectrometers, such as the proposed Hyperspectral Infrared Imager ({HyspIRI}) mission, will provide global, multi-year Visible Shortwave Infrared ({VSWIR}) reﬂectance maps. Monitoring the Earth's surface at high spectral resolution will advance our understanding of changing ecosystems and land use. These applications depend on reliable correction of atmospheric scattering and absorption. The {HyspIRI} Preparatory Campaign is an airborne precursor mission comprised of multiple ﬂights by the “classic” Airborne Visible Infrared Imaging Spectrometer ({AVIRIS}-C) over a wide geographic area. This article describes the atmospheric correction that we have implemented for the campaign. We ﬁrst present the theoretical basis of our approach, which is grounded in the {ATmospheric} {REMoval} ({ATREM}) algorithm. We then describe new enhancements including retrieval of pressure altitude, which improves accuracy over widely varying topography, and joint retrieval of optical absorption for three phases of water (vapor, liquid, and ice), which improves accuracy over vegetated areas. Reﬂectance is validated using ground spectra acquired across a wide range of targets and elevations. Finally, we use the algorithm to map vapor, liquid, and ice phases of water over 6 months across a 14,000 km2 region of California. © 2015 Elsevier Inc. All rights reserved.},
-	pages = {64--77},
-	journaltitle = {Remote Sensing of Environment},
-	author = {Thompson, David R. and Gao, Bo-Cai and Green, Robert O. and Roberts, Dar A. and Dennison, Philip E. and Lundeen, Sarah R.},
-	urldate = {2018-03-28},
-	date = {2015-09},
-	langid = {english},
-	file = {Thompson et al. - 2015 - Atmospheric correction for global mapping spectros.pdf:C\:\\Users\\Brent Thorne\\Zotero\\storage\\SZUB9598\\Thompson et al. - 2015 - Atmospheric correction for global mapping spectros.pdf:application/pdf}
-}
-
-@article{robert_airborne_nodate,
-	title = {Airborne Visible/Infrared Imaging Spectrometer Next Generation ({AVIRIS}-{NG}) Data User’s Guide - India Campaign 2015},
-	pages = {13},
-	author = {Robert, Robert O Green and Lundeen, Sarah and {McCubbin}, Ian and Thompson, David R and Bue, Brian D},
-	langid = {english},
-	file = {Robert et al. - Airborne VisibleInfrared Imaging Spectrometer Nex.pdf:C\:\\Users\\Brent Thorne\\Zotero\\storage\\U3LZ3QMN\\Robert et al. - Airborne VisibleInfrared Imaging Spectrometer Nex.pdf:application/pdf}
-}
-
-@article{lantuit_temporal_2005,
-	title = {Temporal stereophotogrammetric analysis of retrogressive thaw slumps on Herschel Island, Yukon Territory},
-	volume = {5},
-	issn = {1684-9981},
-	url = {http://www.nat-hazards-earth-syst-sci.net/5/413/2005/},
-	doi = {10.5194/nhess-5-413-2005},
-	pages = {413--423},
-	number = {3},
-	journaltitle = {Natural Hazards and Earth System Science},
-	author = {Lantuit, H. and Pollard, W. H.},
-	urldate = {2018-03-23},
-	date = {2005-05-30},
-	langid = {english},
-	file = {Lantuit and Pollard - 2005 - Temporal stereophotogrammetric analysis of retrogr.pdf:C\:\\Users\\Brent Thorne\\Zotero\\storage\\U6QNUN9M\\Lantuit and Pollard - 2005 - Temporal stereophotogrammetric analysis of retrogr.pdf:application/pdf}
-}
-
-@article{weismuller_modeling_2011,
-	title = {Modeling the thermal dynamics of the active layer at two contrasting permafrost sites on Svalbard and on the Tibetan Plateau},
-	volume = {5},
-	issn = {1994-0424},
-	url = {http://www.the-cryosphere.net/5/741/2011/},
-	doi = {10.5194/tc-5-741-2011},
-	abstract = {Employing a one-dimensional, coupled thermal and hydraulic numerical model, we quantitatively analyze high-resolution, multi-year data from the active layers at two contrasting permafrost sites. The model implements heat conduction with the de Vries parameterization, heat convection with water and vapor ﬂow, freeze-thaw transition parameterized with a heuristic soil-freezing characteristic, and liquid water ﬂow with the Mualem-van Genuchten parameterization. The model is driven by measured temperatures and water contents at the upper and lower boundary with all required material properties deduced from the measured data. The aims are (i) to ascertain the applicability of such a rather simple model, (ii) to quantify the dominating processes, and (iii) to discuss possible causes of remaining deviations.},
-	pages = {741--757},
-	number = {3},
-	journaltitle = {The Cryosphere},
-	author = {Weismüller, J. and Wollschläger, U. and Boike, J. and Pan, X. and Yu, Q. and Roth, K.},
-	urldate = {2018-03-23},
-	date = {2011-09-19},
-	langid = {english},
-	file = {Weismüller et al. - 2011 - Modeling the thermal dynamics of the active layer .pdf:C\:\\Users\\Brent Thorne\\Zotero\\storage\\RERPBMUI\\Weismüller et al. - 2011 - Modeling the thermal dynamics of the active layer .pdf:application/pdf}
-}
-
-@collection{giosan_river_2005,
-	location = {Tulsa, Okla},
-	title = {River deltas: concepts, models, and examples},
-	isbn = {978-1-56576-113-1 978-1-56576-219-0},
-	series = {{SEPM} special publication},
-	shorttitle = {River deltas},
-	abstract = {Coastal-prism sediments record rising local water levels, forced by sea-level rise. Sea-level rise is the primary driving factor, but the anatomy of the coastal prism is a result of a complex interplay of sea level, subsidence, and upstream controls (essentially sediment load). The sedimentary architecture of a coastal prism is linked to paleo–groundwater rise. Groundwater rise is quantified for the entire Rhine–Meuse delta (extending 120 km inland, 60 km wide) between an 11.0 kyr {BP} groundwater lowstand and the present highstand, dating series of organic markers (peats) of paleo–groundwater levels at compaction-free locations. The accumulated dataset of paleo–groundwater-level markers ({\textgreater} 300 index points) has a dense spatial and temporal coverage and a predictive quality that enables geostatistical analysis. The combination of this dataset and a carefully designed interpolation method (a form of 3D kriging) reveals the interplay between upstream (climate, discharge) and downstream (sea level, tides) controls on gradients of groundwater level and patterns of groundwater rise. Regional effects due to local controls (differential subsidence, groundwater flow) are also identified.},
-	pagetotal = {502},
-	number = {83},
-	publisher = {Society for Sedimentary Geology},
-	editor = {Giosan, Liviu},
-	date = {2005},
-	langid = {english},
-	note = {{OCLC}: 255162802},
-	file = {Giosan - 2005 - River deltas concepts, models, and examples.pdf:C\:\\Users\\Brent Thorne\\Zotero\\storage\\SQL7BJL4\\Giosan - 2005 - River deltas concepts, models, and examples.pdf:application/pdf}
-}
-
-@article{chen_three-dimensional_2015,
-	title = {Three-Dimensional Mapping of Soil Organic Carbon by Combining Kriging Method with Profile Depth Function},
-	volume = {10},
-	issn = {1932-6203},
-	url = {https://www.ncbi.nlm.nih.gov/pmc/articles/PMC4457849/},
-	doi = {10.1371/journal.pone.0129038},
-	abstract = {Understanding spatial variation of soil organic carbon ({SOC}) in three-dimensional direction is helpful for land use management. Due to the effect of profile depths and soil texture on vertical distribution of {SOC}, the stationary assumption for {SOC} cannot be met in the vertical direction. Therefore the three-dimensional (3D) ordinary kriging technique cannot be directly used to map the distribution of {SOC} at a regional scale. The objectives of this study were to map the 3D distribution of {SOC} at a regional scale by combining kriging method with the profile depth function of {SOC} ({KPDF}), and to explore the effects of soil texture and land use type on vertical distribution of {SOC} in a fluvial plain. A total of 605 samples were collected from 121 soil profiles (0.0 to 1.0 m, 0.20 m increment) in Quzhou County, China and {SOC} contents were determined for each soil sample. The {KPDF} method was used to obtain the 3D map of {SOC} at the county scale. The results showed that the exponential equation well described the vertical distribution of mean values of the {SOC} contents. The coefficients of determination, root mean squared error and mean prediction error between the measured and the predicted {SOC} contents were 0.52, 1.82 and -0.24 g kg-1 respectively, suggesting that the {KPDF} method could be used to produce a 3D map of {SOC} content. The surface {SOC} contents were high in the mid-west and south regions, and low values lay in the southeast corner. The {SOC} contents showed significant positive correlations between the five different depths and the correlations of {SOC} contents were larger in adjacent layers than in non-adjacent layers. Soil texture and land use type had significant effects on the spatial distribution of {SOC}. The influence of land use type was more important than that of soil texture in the surface soil, and soil texture played a more important role in influencing the {SOC} levels for 0.2-0.4 m layer.},
-	number = {6},
-	journaltitle = {{PLoS} {ONE}},
-	shortjournal = {{PLoS} One},
-	author = {Chen, Chong and Hu, Kelin and Li, Hong and Yun, Anping and Li, Baoguo},
-	urldate = {2018-03-23},
-	date = {2015-06-05},
-	pmid = {26047012},
-	pmcid = {PMC4457849},
-	file = {Chen et al. - 2015 - Three-Dimensional Mapping of Soil Organic Carbon b.pdf:C\:\\Users\\Brent Thorne\\Zotero\\storage\\52K9DNCY\\Chen et al. - 2015 - Three-Dimensional Mapping of Soil Organic Carbon b.pdf:application/pdf}
-}
-
-@article{gibson_estimating_1993,
-	title = {Estimating Evaporation Using Stable Isotopes: Quantitative Results and Sensitivity Analysis for Two Catchments in Northern Canada},
-	volume = {24},
-	url = {http://hr.iwaponline.com/content/24/2-3/79.abstract},
-	abstract = {The stable isotope-mass balance method can provide useful water balance information in ungauged catchments. The method has been used to evaluate evaporation and water balance at two contrasting sites in northern Canada. Areally weighted evaporative discharge from an 850 km2 tundra catchment in south-central District of Keewatin is estimated to be about 7 \% of total water discharge (≈ 16 mm/yr), compared to about 19 \% (≈ 65 mm/yr) from a 300 km2 forested watershed in the Upper Mackenzie Valley. Lakes in both watersheds exhibit broad ranges of evaporation/inflow ratios related to local water balance. The potential errors in the estimates are evaluated through consideration of possible variations in basin storage, humidity, and the isotopic composition of atmospheric vapour.},
-	pages = {79},
-	number = {2},
-	journaltitle = {Hydrology Research},
-	shortjournal = {Hydrol Res},
-	author = {Gibson, J.J. and Edwards, T.W.D. and Bursey, G.G. and Prowse, T.D.},
-	date = {1993-04-01},
-	file = {Gibson et al. - 1993 - Estimating Evaporation Using Stable Isotopes Quan.pdf:C\:\\Users\\Brent Thorne\\Zotero\\storage\\KALY3NJ8\\Gibson et al. - 1993 - Estimating Evaporation Using Stable Isotopes Quan.pdf:application/pdf}
-}
-
-@article{welker_arctic_2005,
-	title = {Arctic and North Atlantic Oscillation phase changes are recorded in the isotopes (delta18O and delta13C) of Cassiope tetragona plants},
-	volume = {11},
-	issn = {1354-1013, 1365-2486},
-	url = {http://doi.wiley.com/10.1111/j.1365-2486.2005.00961.x},
-	doi = {10.1111/j.1365-2486.2005.00961.x},
-	abstract = {The Arctic and North Atlantic Oscillations ({AO}/{NAO}) are large-scale annual modes of atmospheric circulation that have shifted in the last 30 years. Recent changes in arctic climate, including increasing surface air temperature, declining sea ice extent, and shifts in the amounts seasonality of precipitation are linked to the strong positive phase of the {AO}/{NAO}. Here, we show that phase changes in the {AO}/{NAO} are recorded in the isotopic (d18O and D-carbon isotope discrimination) characteristics of the long-lived circum-arctic plant, Cassiope tetragona, as summer rain has become a more important water source than snowmelt water which in turn has lead to decreases in D and reductions in plant stem growth. These isotopic records in C. tetragona may facilitate reconstructions of climate, plant–soil water relations, plant gas exchange attributes and a mechanistic understanding of growth responses to shifts in atmospheric circulation. If plant specimens were available for populations across the arctic as part of the International Polar Year, these archives could provide a circum-arctic record of historical climate change and associated shifts in physiological plant performance and growth.},
-	pages = {997--1002},
-	number = {7},
-	journaltitle = {Global Change Biology},
-	author = {Welker, Jeffrey M. and Rayback, Shelly and Henry, Greg H. R.},
-	urldate = {2018-03-23},
-	date = {2005-07},
-	langid = {english},
-	file = {Welker et al. - 2005 - Arctic and North Atlantic Oscillation phase change.pdf:C\:\\Users\\Brent Thorne\\Zotero\\storage\\LKCW7B34\\Welker et al. - 2005 - Arctic and North Atlantic Oscillation phase change.pdf:application/pdf}
-}
-
-@article{andreu-hayles_long_2011,
-	title = {Long tree-ring chronologies reveal 20th century increases in water-use efficiency but no enhancement of tree growth at five Iberian pine forests: {IBERIAN} {PINE} {PHYSIOLOGICAL} {AND} {GROWTH} {CHANGES}},
-	volume = {17},
-	issn = {13541013},
-	url = {http://doi.wiley.com/10.1111/j.1365-2486.2010.02373.x},
-	doi = {10.1111/j.1365-2486.2010.02373.x},
-	shorttitle = {Long tree-ring chronologies reveal 20th century increases in water-use efficiency but no enhancement of tree growth at five Iberian pine forests},
-	abstract = {We investigated the tree growth and physiological response of ﬁve pine forest stands in relation to changes in atmospheric {CO}2 concentration (ca) and climate in the Iberian Peninsula using annually resolved width and d13C treering chronologies since {AD} 1600. 13C discrimination (D \% ci/ca), leaf intercellular {CO}2 concentration (ci) and intrinsic water-use efﬁciency ({iWUE}) were inferred from d13C values. The most pronounced changes were observed during the second half of the 20th century, and differed between stands. Three sites kept a constant ci/ca ratio, leading to signiﬁcant ci and {iWUE} increases (active response to ca); whereas a signiﬁcant increase in ci/ca resulted in the lowest {iWUE} increase of all stands at a relict Pinus uncinata forest site (passive response to ca). A signiﬁcant decrease in ci/ca led to the greatest {iWUE} improvement at the northwestern site. We tested the climatic signal strength registered in the d13C series after removing the low-frequency trends due to the physiological responses to increasing ca. We found stronger correlations with temperature during the growing season, demonstrating that the physiological response to ca changes modulated d13C and masked the climate signal. Since 1970 higher d13C values revealed {iWUE} improvements at all the sites exceeding values expected by an active response to the ca increase alone. These patterns were related to upward trends in temperatures, indicating that other factors are reinforcing stomatal closure in these forests. Narrower rings during the second half of the 20th century than in previous centuries were observed at four sites and after 1970 at all sites, providing no evidence for a possible {CO}2 ‘fertilization’ effect on growth. The {iWUE} improvements found for all the forests, reﬂecting both a ca rise and warmer conditions, seem to be insufﬁcient to compensate for the negative effects of the increasing water limitation on growth.},
-	pages = {2095--2112},
-	number = {6},
-	journaltitle = {Global Change Biology},
-	author = {Andreu-Hayles, Laia and Planells, Octavi and {GutiéRrez}, Emilia and Muntan, Elena and Helle, Gerhard and Anchukaitis, Kevin J. and Schleser, Gerhard H.},
-	urldate = {2018-03-23},
-	date = {2011-06},
-	langid = {english},
-	file = {Andreu-Hayles et al. - 2011 - Long tree-ring chronologies reveal 20th century in.pdf:C\:\\Users\\Brent Thorne\\Zotero\\storage\\H4GW7466\\Andreu-Hayles et al. - 2011 - Long tree-ring chronologies reveal 20th century in.pdf:application/pdf}
-}
-
-@article{santruckova_carbon_2007,
-	title = {Carbon Isotopes in Tree Rings of Norway Spruce Exposed to Atmospheric Pollution},
-	volume = {41},
-	issn = {0013-936X, 1520-5851},
-	url = {http://pubs.acs.org/doi/abs/10.1021/es070011t},
-	doi = {10.1021/es070011t},
-	pages = {5778--5782},
-	number = {16},
-	journaltitle = {Environmental Science \& Technology},
-	author = {Šantr˚učková, Hana and Šantr˚uček, Jiří and Šetlík, Jiří and Svoboda, Miroslav and Kopáček, Jiří},
-	urldate = {2018-03-23},
-	date = {2007-08},
-	langid = {english},
-	file = {Šantr˚učková et al. - 2007 - Carbon Isotopes in Tree Rings of Norway Spruce Exp.pdf:C\:\\Users\\Brent Thorne\\Zotero\\storage\\XV22547M\\Šantr˚učková et al. - 2007 - Carbon Isotopes in Tree Rings of Norway Spruce Exp.pdf:application/pdf}
-}
-
-@article{roy-leveillee_permafrost_nodate,
-	title = {Permafrost conditions near shorelines of oriented lakes in Old Crow Flats, Yukon Territory},
-	abstract = {Old Crow Flats is a 4300 km2 plain in the continuous permafrost of Northern Yukon. It contains over 2500 thermokarst lakes, many of which have rectilinear shorelines and tend to be oriented either {NE}-{SW} or {NW}-{SE}. Previous explanations of the shape and orientation of the lakes focussed on the underlying geological structure and the propagation of faults through the sediments to cause the alignment of the lakeshores. Permafrost conditions and shore erosion mechanisms observed at forested and tundra sites suggest that wind and patterns of ice-wedge development may be contributing to the occurrence of rectilinear shorelines in the open tundra of Old Crow Flats.},
-	pages = {8},
-	author = {Roy-Léveillée, P and Burn, C R},
-	file = {Roy-Léveillée and Burn - Permafrost conditions near shorelines of oriented .pdf:C\:\\Users\\Brent Thorne\\Zotero\\storage\\F47TUKRZ\\Roy-Léveillée and Burn - Permafrost conditions near shorelines of oriented .pdf:application/pdf}
-}
-
-@book{roots_ecoregions_2006,
-	location = {Summerland, B.C.},
-	title = {Ecoregions of the Yukon Territory: biophysical properties of Yukon landscapes},
-	isbn = {978-0-660-18828-7},
-	shorttitle = {Ecoregions of the Yukon Territory},
-	publisher = {Agriculture and Agri-Food Canada, Research Branch},
-	author = {Roots, Charles Frederick and Smith, C. A. Scott and Meikle, J. C and {Canada} and {Agriculture and Agri-Food Canada}},
-	date = {2006},
-	note = {{OCLC}: 1015906693},
-	file = {Roots et al. - 2006 - Ecoregions of the Yukon Territory biophysical pro.pdf:C\:\\Users\\Brent Thorne\\Zotero\\storage\\NL2CMXQC\\Roots et al. - 2006 - Ecoregions of the Yukon Territory biophysical pro.pdf:application/pdf}
-}
-
-@article{brock_spatial_2008,
-	title = {Spatial and temporal perspectives on spring break-up flooding in the Slave River Delta, {NWT}},
-	volume = {22},
-	issn = {08856087, 10991085},
-	url = {http://doi.wiley.com/10.1002/hyp.7008},
-	doi = {10.1002/hyp.7008},
-	abstract = {Spatial and temporal patterns of spring break-up ﬂooding in the Slave River Delta ({SRD}), Northwest Territories, are characterized during three years (2003–2005) using water isotope tracers and total inorganic suspended sediment ({TSS}) concentrations measured from lakewater samples collected shortly after the spring melt. Strongly contrasting spring melt periods led to a moderate ﬂood in 2003, no ﬂooding in 2004 and widespread ﬂooding in 2005. Flooded lakes have isotopically-depleted υ18O (υ2H) signatures, ranging between 19Ð2‰ ( 145‰) and 17Ð1‰ ( 146‰) and most have high {TSS} concentrations ({\textgreater}10 mg L 1), while non-ﬂooded lakes have more isotopically-enriched υ18O (υ2H) signatures, ranging between 18Ð2‰ ( 149‰) and 10Ð6‰ ( 118‰) and low {TSS} concentrations ({\textless}10 mg L 1). These results, in conjunction with the isotopic signatures of Slave River water and snowmelt, are used to estimate the proportion of river- or snowmelt-induced dilution in delta lakes during the spring of each study year. Calculations indicate river ﬂooding caused dilution of ¾70–100\% in delta lakes, while snowmelt dilution in the absence of river ﬂooding ranged from ¾0–56\%. A positive relationship exists between the spatial extent of spring ﬂooding in the {SRD} and level and discharge on the Slave River and upstream tributaries, suggesting that upstream ﬂow generation plays a key role in determining the magnitude of spring ﬂooding in the {SRD}. Parallel variations in the 46-year instrumental Slave River discharge record and ﬂood stratigraphy in the active delta indicate that there is potential for extending the ﬂood history of the {SRD}, a development that will contribute to a more robust understanding of the drivers of historic, contemporary and future ﬂood frequency in the delta. Copyright  2008 John Wiley \& Sons, Ltd.},
-	pages = {4058--4072},
-	number = {20},
-	journaltitle = {Hydrological Processes},
-	author = {Brock, B. E. and Wolfe, B. B. and Edwards, T. W. D.},
-	urldate = {2018-03-16},
-	date = {2008-09-30},
-	langid = {english},
-	file = {Brock et al. - 2008 - Spatial and temporal perspectives on spring break-.pdf:C\:\\Users\\Brent Thorne\\Zotero\\storage\\TXAM7JBF\\Brock et al. - 2008 - Spatial and temporal perspectives on spring break-.pdf:application/pdf}
-}
-
-@article{tondu_using_2013,
-	title = {Using Water Isotope Tracers to Develop the Hydrological Component of a Long-Term Aquatic Ecosystem Monitoring Program for a Northern Lake-Rich Landscape},
-	volume = {45},
-	issn = {1523-0430, 1938-4246},
-	url = {http://www.bioone.org/doi/abs/10.1657/1938-4246-45.4.594},
-	doi = {10.1657/1938-4246-45.4.594},
-	abstract = {Arctic lake-rich landscapes are vulnerable to climate change, but their remote locations present a challenge to develop effective approaches for monitoring hydroecological status and trends. Here, we structure the hydrological component of an aquatic ecosystem monitoring program that addresses concerns of Parks Canada (Vuntut National Park) and the Vuntut Gwitchin First Nation about changing water levels of Old Crow Flats ({OCF}), Yukon, Canada, a 5600-km2 thermokarst landscape recognized nationally and internationally for its ecological, historical, and cultural significance. The foundation of the monitoring program is 5 years (2007–2011) of water isotope data from 14 lakes situated in catchments that are representative of the land-cover and hydrological diversity of {OCF}. Isotopic compositions of input water (␦I) and evaporation-to-inflow (E/I) ratios, calculated using the coupled-isotope tracer method, provide key hydrological metrics for each lake over the 5-year sampling interval. From these time series, we identify monitoring lakes that are sensitive to changes in snowmelt, rainfall, and evaporation, and demonstrate the use of the Mann-Kendall test for determining statistically significant trends in the roles of these hydrological processes on lake-water balances. These approaches will serve to identify lake hydrological responses to climate change and variability from ongoing water isotope monitoring by Parks Canada, in partnership with the Vuntut Gwitchin Government, Wilfrid Laurier University, and the University of Waterloo.},
-	pages = {594--614},
-	number = {4},
-	journaltitle = {Arctic, Antarctic, and Alpine Research},
-	author = {Tondu, J. M. E. and Turner, K. W. and Wolfe, B. B. and Hall, R. I. and Edwards, T. W. D. and {McDonald}, I.},
-	urldate = {2018-03-14},
-	date = {2013-11},
-	langid = {english},
-	file = {Tondu et al. - 2013 - Using Water Isotope Tracers to Develop the Hydrolo.pdf:C\:\\Users\\Brent Thorne\\Zotero\\storage\\C3JYWJGC\\Tondu et al. - 2013 - Using Water Isotope Tracers to Develop the Hydrolo.pdf:application/pdf}
-}
-
-@thesis{hughes_detecting_2018,
-	location = {St. Catharines},
-	title = {Detecting spatial variation in hydrology and carbon export across a lake-rich permafrost landscape, Old Crow Flats, Yukon, Canada},
-	rights = {2018 Daniel Hughes},
-	abstract = {Lake-rich permafrost landscapes are widespread across northern regions and provide refuge for abundant wildlife and resources for local communities. Evidence suggests that these landscapes are highly sensitive to changes in climate. The traditional territory of the Vuntut Gwitchin First Nation, Old Crow Flats ({OCF}), {YK}, is a vast 5600-km2 lake-rich landscape that is internationally recognized for its ecological and cultural integrity. Pronounced changes in lake and river water levels and land cover compositions have been observed during recent decades by local community members and in scientific studies. Research presented here focuses on enhancing our understanding of spatial patterns in hydrology and carbon export across {OCF}, using a suite of water chemistry parameters, carbon concentrations and water and carbon isotope tracers. The spatial patterns detected are providing an important reference for ongoing investigations of how
-changing climate and lake-rich landscapes are influencing water and carbon balances.},
-	pagetotal = {116},
-	institution = {Brock University},
-	type = {phdthesis},
-	author = {Hughes, Daniel D.},
-	editora = {Turner, Kevin W.},
-	editoratype = {collaborator},
-	date = {2018-03},
-	file = {Hughes - 2018 - Detecting spatial variation in hydrology and carbo.pdf:C\:\\Users\\Brent Thorne\\Zotero\\storage\\C6IGSVPE\\Hughes - 2018 - Detecting spatial variation in hydrology and carbo.pdf:application/pdf}
-}
-
-@article{turner_characterising_2014,
-	title = {Characterising Runoff Generation Processes in a Lake-Rich Thermokarst Landscape (Old Crow Flats, Yukon, Canada) using δ $^{\textrm{18}}$ O, δ $^{\textrm{2}}$ H and d-excess Measurements: Characterising Runoff with Water Isotope Tracers in Old Crow Flats, Yukon},
-	volume = {25},
-	issn = {10456740},
-	url = {http://doi.wiley.com/10.1002/ppp.1802},
-	doi = {10.1002/ppp.1802},
-	shorttitle = {Characterising Runoff Generation Processes in a Lake-Rich Thermokarst Landscape (Old Crow Flats, Yukon, Canada) using δ $^{\textrm{18}}$ O, δ $^{\textrm{2}}$ H and d-excess Measurements},
-	pages = {53--59},
-	number = {1},
-	journaltitle = {Permafrost and Periglacial Processes},
-	author = {Turner, Kevin W. and Edwards, Thomas W. D. and Wolfe, Brent B.},
-	urldate = {2018-03-07},
-	date = {2014-01},
-	langid = {english},
-	file = {Turner et al. - 2014 - Characterising Runoff Generation Processes in a La.pdf:C\:\\Users\\Brent Thorne\\Zotero\\storage\\277B3VGI\\Turner et al. - 2014 - Characterising Runoff Generation Processes in a La.pdf:application/pdf}
-}
-
-@article{bouchard_paleolimnology_2017,
-	title = {Paleolimnology of thermokarst lakes: a window into permafrost landscape evolution},
-	volume = {3},
-	issn = {2368-7460},
-	url = {http://www.nrcresearchpress.com/doi/10.1139/as-2016-0022},
-	doi = {10.1139/as-2016-0022},
-	shorttitle = {Paleolimnology of thermokarst lakes},
-	pages = {91--117},
-	number = {2},
-	journaltitle = {Arctic Science},
-	author = {Bouchard, Frédéric and {MacDonald}, Lauren A. and Turner, Kevin W. and Thienpont, Joshua R. and Medeiros, Andrew S. and Biskaborn, Boris K. and Korosi, Jennifer and Hall, Roland I. and Pienitz, Reinhard and Wolfe, Brent B.},
-	urldate = {2018-03-07},
-	date = {2017-06},
-	langid = {english},
-	file = {Bouchard et al. - 2017 - Paleolimnology of thermokarst lakes a window into.pdf:C\:\\Users\\Brent Thorne\\Zotero\\storage\\RNIVRCN4\\Bouchard et al. - 2017 - Paleolimnology of thermokarst lakes a window into.pdf:application/pdf}
-}
-
-@article{tondu_limnological_2017,
-	title = {Limnological evolution of Zelma Lake, a recently drained thermokarst lake in Old Crow Flats (Yukon, Canada)},
-	volume = {3},
-	issn = {2368-7460},
-	url = {http://www.nrcresearchpress.com/doi/10.1139/as-2016-0012},
-	doi = {10.1139/as-2016-0012},
-	pages = {220--236},
-	number = {2},
-	journaltitle = {Arctic Science},
-	author = {Tondu, Jana M.E. and Turner, Kevin W. and Wiklund, Johan A. and Wolfe, Brent B. and Hall, Roland I. and {McDonald}, Ian},
-	urldate = {2018-03-07},
-	date = {2017-06},
-	langid = {english},
-	file = {Tondu et al. - 2017 - Limnological evolution of Zelma Lake, a recently d.pdf:C\:\\Users\\Brent Thorne\\Zotero\\storage\\9WQHG3HI\\Tondu et al. - 2017 - Limnological evolution of Zelma Lake, a recently d.pdf:application/pdf}
-}
-
-@article{fabre_using_2017,
-	title = {Using Modeling Tools to Better Understand Permafrost Hydrology},
-	volume = {9},
-	issn = {2073-4441},
-	url = {http://www.mdpi.com/2073-4441/9/6/418},
-	doi = {10.3390/w9060418},
-	pages = {418},
-	number = {12},
-	journaltitle = {Water},
-	author = {Fabre, Clément and Sauvage, Sabine and Tananaev, Nikita and Srinivasan, Raghavan and Teisserenc, Roman and Sánchez Pérez, José},
-	urldate = {2018-02-22},
-	date = {2017-06-10},
-	langid = {english},
-	file = {Fabre et al. - 2017 - Using Modeling Tools to Better Understand Permafro.pdf:C\:\\Users\\Brent Thorne\\Zotero\\storage\\HMRLJQCM\\Fabre et al. - 2017 - Using Modeling Tools to Better Understand Permafro.pdf:application/pdf}
-}
-
-@article{watts_unmanned_2012,
-	title = {Unmanned Aircraft Systems in Remote Sensing and Scientific Research: Classification and Considerations of Use},
-	volume = {4},
-	issn = {2072-4292},
-	url = {http://www.mdpi.com/2072-4292/4/6/1671},
-	doi = {10.3390/rs4061671},
-	shorttitle = {Unmanned Aircraft Systems in Remote Sensing and Scientific Research},
-	pages = {1671--1692},
-	number = {12},
-	journaltitle = {Remote Sensing},
-	author = {Watts, Adam C. and Ambrosia, Vincent G. and Hinkley, Everett A.},
-	urldate = {2018-02-01},
-	date = {2012-06-08},
-	langid = {english},
-	file = {Watts et al. - 2012 - Unmanned Aircraft Systems in Remote Sensing and Sc.pdf:C\:\\Users\\Brent Thorne\\Zotero\\storage\\XPPNT6PV\\Watts et al. - 2012 - Unmanned Aircraft Systems in Remote Sensing and Sc.pdf:application/pdf}
-}
-
-@article{schuur_vulnerability_2008,
-	title = {Vulnerability of permafrost carbon to climate change: Implications for the global carbon cycle},
-	volume = {58},
-	doi = {https://doi.org/10.1641/B580807},
-	shorttitle = {Vulnerability of permafrost carbon to climate change},
-	pages = {701--714},
-	number = {8},
-	journaltitle = {{AIBS} Bulletin},
-	author = {Schuur, Edward {AG} and Bockheim, James and Canadell, Josep G. and Euskirchen, Eugenie and Field, Christopher B. and Goryachkin, Sergey V. and Hagemann, Stefan and Kuhry, Peter and Lafleur, Peter M. and Lee, Hanna},
-	date = {2008},
-	file = {Schuur et al. - 2008 - Vulnerability of permafrost carbon to climate chan.pdf:C\:\\Users\\Brent Thorne\\Zotero\\storage\\RE2HU2NG\\Schuur et al. - 2008 - Vulnerability of permafrost carbon to climate chan.pdf:application/pdf}
-}
-
-@article{chenot_substrate_2017,
-	title = {Substrate Composition and Depth Affect Soil Moisture Behavior and Plant-Soil Relationship on Mediterranean Extensive Green Roofs},
-	volume = {9},
-	issn = {2073-4441},
-	url = {http://www.mdpi.com/2073-4441/9/11/817},
-	doi = {10.3390/w9110817},
-	pages = {817},
-	number = {11},
-	journaltitle = {Water},
-	author = {Chenot, Julie and Gaget, Elie and Moinardeau, Cannelle and Jaunatre, Renaud and Buisson, Elise and Dutoit, Thierry},
-	urldate = {2018-01-29},
-	date = {2017-10-25},
-	langid = {english},
-	file = {Chenot et al. - 2017 - Substrate Composition and Depth Affect Soil Moistu.pdf:C\:\\Users\\Brent Thorne\\Zotero\\storage\\82CYQTEA\\Chenot et al. - 2017 - Substrate Composition and Depth Affect Soil Moistu.pdf:application/pdf}
-}
-
-@article{gevaert_classification_2016,
-	title = {Classification of informal settlements through the integration of 2D and 3D features extracted from {UAV} data},
-	volume = {{III}-3},
-	issn = {2194-9050},
-	url = {http://www.isprs-ann-photogramm-remote-sens-spatial-inf-sci.net/III-3/317/2016/},
-	doi = {10.5194/isprs-annals-III-3-317-2016},
-	pages = {317--324},
-	journaltitle = {{ISPRS} Annals of Photogrammetry, Remote Sensing and Spatial Information Sciences},
-	author = {Gevaert, C. M. and Persello, C. and Sliuzas, R. and Vosselman, G.},
-	urldate = {2018-01-25},
-	date = {2016-06-06},
-	langid = {english},
-	file = {Gevaert et al. - 2016 - Classification of informal settlements through the.pdf:C\:\\Users\\Brent Thorne\\Zotero\\storage\\EUBADFJI\\Gevaert et al. - 2016 - Classification of informal settlements through the.pdf:application/pdf}
-}
-
-@article{strecha_developing_2012,
-	title = {Developing species specific vegetation maps using multi-spectral hyperspatial imagery from unmanned aerial vehicles},
-	volume = {3},
-	pages = {311--316},
-	journaltitle = {{ISPRS} Annals of the Photogrammetry, Remote Sensing and Spatial Information Sciences},
-	author = {Strecha, Christoph and Fletcher, Andrew and Lechner, Alex and Erskine, Peter and Fua, Pascal},
-	date = {2012},
-	file = {Strecha et al. - 2012 - Developing species specific vegetation maps using .pdf:C\:\\Users\\Brent Thorne\\Zotero\\storage\\73HGX3PY\\Strecha et al. - 2012 - Developing species specific vegetation maps using .pdf:application/pdf}
-}
-
-@article{schuh_soil_2017,
-	title = {Soil moisture redistribution and its effect on inter-annual active layer temperature and thickness variations in a dry loess terrace in Adventdalen, Svalbard},
-	volume = {11},
-	issn = {1994-0424},
-	url = {https://www.the-cryosphere.net/11/635/2017/},
-	doi = {10.5194/tc-11-635-2017},
-	pages = {635--651},
-	number = {1},
-	journaltitle = {The Cryosphere},
-	author = {Schuh, Carina and Frampton, Andrew and Christiansen, Hanne Hvidtfeldt},
-	urldate = {2018-01-25},
-	date = {2017-02-28},
-	langid = {english},
-	file = {Schuh et al. - 2017 - Soil moisture redistribution and its effect on int.pdf:C\:\\Users\\Brent Thorne\\Zotero\\storage\\DVIHARFQ\\Schuh et al. - 2017 - Soil moisture redistribution and its effect on int.pdf:application/pdf}
-}
-
-@article{minsley_sensitivity_2015,
-	title = {Sensitivity of airborne geophysical data to sublacustrine and near-surface permafrost thaw},
-	volume = {9},
-	issn = {1994-0424},
-	url = {http://www.the-cryosphere.net/9/781/2015/},
-	doi = {10.5194/tc-9-781-2015},
-	pages = {781--794},
-	number = {2},
-	journaltitle = {The Cryosphere},
-	author = {Minsley, B. J. and Wellman, T. P. and Walvoord, M. A. and Revil, A.},
-	urldate = {2018-01-24},
-	date = {2015-04-27},
-	langid = {english},
-	file = {Minsley et al. - 2015 - Sensitivity of airborne geophysical data to sublac.pdf:C\:\\Users\\Brent Thorne\\Zotero\\storage\\NRKLDFHM\\Minsley et al. - 2015 - Sensitivity of airborne geophysical data to sublac.pdf:application/pdf}
-}
-
-@article{kass_situ_2017,
-	title = {In situ nuclear magnetic resonance response of permafrost and active layer soil in boreal and tundra ecosystems},
-	volume = {11},
-	issn = {1994-0424},
-	url = {https://www.the-cryosphere.net/11/2943/2017/},
-	doi = {10.5194/tc-11-2943-2017},
-	pages = {2943--2955},
-	number = {6},
-	journaltitle = {The Cryosphere},
-	author = {Kass, M. Andy and Irons, Trevor P. and Minsley, Burke J. and Pastick, Neal J. and Brown, Dana R. N. and Wylie, Bruce K.},
-	urldate = {2018-01-24},
-	date = {2017-12-14},
-	langid = {english},
-	file = {Kass et al. - 2017 - In situ nuclear magnetic resonance response of per.pdf:C\:\\Users\\Brent Thorne\\Zotero\\storage\\73SJ7YKA\\Kass et al. - 2017 - In situ nuclear magnetic resonance response of per.pdf:application/pdf}
-}
-
-@article{walvoord_influence_2012,
-	title = {Influence of permafrost distribution on groundwater flow in the context of climate-driven permafrost thaw: Example from Yukon Flats Basin, Alaska, United States: {PERMAFROST} {DISTRIBUTION} {AND} {GROUNDWATER} {FLOW}},
-	volume = {48},
-	issn = {00431397},
-	url = {http://doi.wiley.com/10.1029/2011WR011595},
-	doi = {10.1029/2011WR011595},
-	shorttitle = {Influence of permafrost distribution on groundwater flow in the context of climate-driven permafrost thaw},
-	number = {7},
-	journaltitle = {Water Resources Research},
-	author = {Walvoord, Michelle A. and Voss, Clifford I. and Wellman, Tristan P.},
-	urldate = {2018-01-24},
-	date = {2012-07},
-	langid = {english},
-	file = {Walvoord et al. - 2012 - Influence of permafrost distribution on groundwate.pdf:C\:\\Users\\Brent Thorne\\Zotero\\storage\\528PXEWI\\Walvoord et al. - 2012 - Influence of permafrost distribution on groundwate.pdf:application/pdf}
-}
-
-@article{vonk_high_2013,
-	title = {High biolability of ancient permafrost carbon upon thaw: {BIOLABILITY} {OF} {ANCIENT} {PERMAFROST} {CARBON}},
-	volume = {40},
-	issn = {00948276},
-	url = {http://doi.wiley.com/10.1002/grl.50348},
-	doi = {10.1002/grl.50348},
-	shorttitle = {High biolability of ancient permafrost carbon upon thaw},
-	pages = {2689--2693},
-	number = {11},
-	journaltitle = {Geophysical Research Letters},
-	author = {Vonk, Jorien E. and Mann, Paul J. and Davydov, Sergey and Davydova, Anna and Spencer, Robert G. M. and Schade, John and Sobczak, William V. and Zimov, Nikita and Zimov, Sergei and Bulygina, Ekaterina and Eglinton, Timothy I. and Holmes, Robert M.},
-	urldate = {2018-01-24},
-	date = {2013-06-16},
-	langid = {english},
-	file = {Vonk et al. - 2013 - High biolability of ancient permafrost carbon upon.pdf:C\:\\Users\\Brent Thorne\\Zotero\\storage\\WVV4DVTG\\Vonk et al. - 2013 - High biolability of ancient permafrost carbon upon.pdf:application/pdf}
-}
-
-@article{striegl_decrease_2005,
-	title = {A decrease in discharge-normalized {DOC} export by the Yukon River during summer through autumn},
-	volume = {32},
-	issn = {0094-8276},
-	url = {http://doi.wiley.com/10.1029/2005GL024413},
-	doi = {10.1029/2005GL024413},
-	number = {21},
-	journaltitle = {Geophysical Research Letters},
-	author = {Striegl, Robert G. and Aiken, George R. and Dornblaser, Mark M. and Raymond, Peter A. and Wickland, Kimberly P.},
-	urldate = {2018-01-24},
-	date = {2005},
-	langid = {english},
-	file = {Striegl et al. - 2005 - A decrease in discharge-normalized DOC export by t.pdf:C\:\\Users\\Brent Thorne\\Zotero\\storage\\Y9FY79WV\\Striegl et al. - 2005 - A decrease in discharge-normalized DOC export by t.pdf:application/pdf}
-}
-
-@article{khedri_estimating_2017,
-	title = {Estimating soil moisture using {POLSAR} data: a machine learning approach},
-	volume = {{XLII}-4/W4},
-	issn = {2194-9034},
-	url = {https://www.int-arch-photogramm-remote-sens-spatial-inf-sci.net/XLII-4-W4/133/2017/},
-	doi = {10.5194/isprs-archives-XLII-4-W4-133-2017},
-	shorttitle = {{ESTIMATING} {SOIL} {MOISTURE} {USING} {POLSAR} {DATA}},
-	pages = {133--137},
-	journaltitle = {{ISPRS} - International Archives of the Photogrammetry, Remote Sensing and Spatial Information Sciences},
-	author = {Khedri, E. and Hasanlou, M. and Tabatabaeenejad, A.},
-	urldate = {2018-01-23},
-	date = {2017-09-26},
-	langid = {english},
-	file = {Khedri et al. - 2017 - Estimating soil moisture using POLSAR data a mach.pdf:C\:\\Users\\Brent Thorne\\Zotero\\storage\\LGWFBNJS\\Khedri et al. - 2017 - Estimating soil moisture using POLSAR data a mach.pdf:application/pdf}
-}
-
-@article{olefeldt_circumpolar_2016,
-	title = {Circumpolar distribution and carbon storage of thermokarst landscapes},
-	volume = {7},
-	issn = {2041-1723},
-	url = {http://www.nature.com/doifinder/10.1038/ncomms13043},
-	doi = {10.1038/ncomms13043},
-	pages = {13043},
-	journaltitle = {Nature Communications},
-	author = {Olefeldt, D. and Goswami, S. and Grosse, G. and Hayes, D. and Hugelius, G. and Kuhry, P. and {McGuire}, A. D. and Romanovsky, V. E. and Sannel, A.B.K. and Schuur, E.A.G. and Turetsky, M. R.},
-	urldate = {2018-01-23},
-	date = {2016-10-11},
-	file = {Olefeldt et al. - 2016 - Circumpolar distribution and carbon storage of the.pdf:C\:\\Users\\Brent Thorne\\Zotero\\storage\\SWZ2MFY7\\Olefeldt et al. - 2016 - Circumpolar distribution and carbon storage of the.pdf:application/pdf}
-}
-
-@article{bourgeau-chavez_development_2010,
-	title = {Development of calibration algorithms for selected water content reflectometry probes for burned and non-burned organic soils of Alaska},
-	volume = {19},
-	issn = {1049-8001},
-	url = {http://www.publish.csiro.au/?paper=WF07175},
-	doi = {10.1071/WF07175},
-	pages = {961},
-	number = {7},
-	journaltitle = {International Journal of Wildland Fire},
-	author = {Bourgeau-Chavez, Laura L. and Garwood, Gordon C. and Riordan, Kevin and Koziol, Benjamin W. and Slawski, James},
-	urldate = {2018-01-10},
-	date = {2010},
-	langid = {english},
-	file = {Bourgeau-Chavez et al. - 2010 - Development of calibration algorithms for selected.pdf:C\:\\Users\\Brent Thorne\\Zotero\\storage\\QTKBP7QQ\\Bourgeau-Chavez et al. - 2010 - Development of calibration algorithms for selected.pdf:application/pdf}
-}
-
-@inproceedings{whitcomb_method_2016,
-	title = {Method for upscaling in-situ soil moisture measurements for calibration and validation of smap soil moisture products},
-	isbn = {978-1-5090-3332-4},
-	url = {http://ieeexplore.ieee.org/document/7729419/},
-	doi = {10.1109/IGARSS.2016.7729419},
-	pages = {1641--1644},
-	publisher = {{IEEE}},
-	author = {Whitcomb, J. and Clewley, D. and Akbar, R. and Silva, A. and Berg, A. and Adams, J. and Moghaddam, M.},
-	editor = {{Uknown}},
-	urldate = {2018-01-05},
-	date = {2016-07}
-}
-
-@article{clewley_method_2017,
-	title = {A Method for Upscaling In Situ Soil Moisture Measurements to Satellite Footprint Scale Using Random Forests},
-	volume = {10},
-	issn = {1939-1404, 2151-1535},
-	url = {http://ieeexplore.ieee.org/document/7907192/},
-	doi = {10.1109/JSTARS.2017.2690220},
-	pages = {2663--2673},
-	number = {6},
-	journaltitle = {{IEEE} Journal of Selected Topics in Applied Earth Observations and Remote Sensing},
-	author = {Clewley, Daniel and Whitcomb, Jane B. and Akbar, Ruzbeh and Silva, Agnelo R. and Berg, Aaron and Adams, Justin R. and Caldwell, Todd and Entekhabi, Dara and Moghaddam, Mahta},
-	urldate = {2018-01-05},
-	date = {2017-06}
-}
-
-@article{street_what_2007,
-	title = {What is the relationship between changes in canopy leaf area and changes in photosynthetic {CO}2 flux in arctic ecosystems?},
-	volume = {95},
-	issn = {1365-2745},
-	url = {http://onlinelibrary.wiley.com/doi/10.1111/j.1365-2745.2006.01187.x/abstract},
-	doi = {10.1111/j.1365-2745.2006.01187.x},
-	abstract = {* 1The arctic environment is highly heterogeneous in terms of plant distribution and productivity. If we are to make regional scale predictions of carbon exchange it is necessary to find robust relationships that can simplify this variability. One such potential relationship is that of leaf area to photosynthetic {CO}2 flux at the canopy scale.
-* 2In this paper we assess the effectiveness of canopy leaf area in explaining variation in gross primary productivity ({GPP}): (i) across different vegetation types; (ii) at various stages of leaf development; and (iii) under enhanced nutrient availability. To do this we measure net {CO}2 flux light response curves with a 1 × 1 m chamber, and calculate {GPP} at a photosynthetic photon flux density ({PPFD}) of 600 µmol m−2 s−1.
-* 3At a subarctic site in Sweden, we report 10-fold variation in {GPP} among natural vegetation types with leaf area index ({LAI}) values of 0.05–2.31 m2 m−2. At a site of similar latitude in Alaska we document substantially elevated rates of {GPP} in fertilized vegetation.
-* 4We can explain 80\% of the observed variation in {GPP} in natural vegetation (including vegetation measured before deciduous leaf bud burst) by leaf area alone, when leaf area is predicted from measurements of normalized difference vegetation index ({NDVI}).
-* 5In fertilized vegetation the relative increase in leaf area between control and fertilized treatments exceeds the relative increase in {GPP}. This suggests that higher leaf area causes increased self-shading, or that lower leaf nitrogen per unit leaf area causes a reduction in the rate of photosynthesis.
-* 6The results of this study indicate that canopy leaf area is an excellent predictor of {GPP} in diverse low arctic tundra, across a wide range of plant functional types.},
-	pages = {139--150},
-	number = {1},
-	journaltitle = {Journal of Ecology},
-	author = {Street, L. E. and Shaver, G. R. and Williams, M. and Van Wijk, M. T.},
-	urldate = {2018-01-04},
-	date = {2007-01-01},
-	langid = {english},
-	keywords = {Alaska, Arctic tundra, carbon balance, {CO}2 flux, gross primary productivity, landscape heterogeneity, leaf area index, light response, normalized difference vegetation index, Sweden},
-	file = {Street et al. - 2007 - What is the relationship between changes in canopy.pdf:C\:\\Users\\Brent Thorne\\Zotero\\storage\\4TA5BNA3\\Street et al. - 2007 - What is the relationship between changes in canopy.pdf:application/pdf}
-}
-
-@article{von_fischer_vegetation_2010,
-	title = {Vegetation height and other controls of spatial variability in methane emissions from the Arctic coastal tundra at Barrow, Alaska},
-	volume = {115},
-	issn = {2156-2202},
-	url = {http://onlinelibrary.wiley.com/doi/10.1029/2009JG001283/abstract},
-	doi = {10.1029/2009JG001283},
-	abstract = {We conducted measurements of methane ({CH}4) emission and ecosystem respiration on {\textgreater}200 points across the Arctic coastal tundra near Barrow, Alaska, United States, in July 2007 and August 2008. This site contains broad diversity in tundra microtopography, including polygonal tundra, thaw lakes, and drained lake basins. In 2007, we surveyed {CH}4 emissions across this landscape, and found that soil water content was the strongest control of methane emission rate, such that emission rates rose exponentially with water content. However, there was considerable residual variation in {CH}4 emission in the wettest soils ({\textgreater}80\% volumetric water content) where {CH}4 emissions were highest. A statistical analysis of possible soil and plant controls on {CH}4 emission rates from these wet soils revealed that vegetation height (especially of Carex aquatilis) was the best predictor, with ecosystem respiration and permafrost depth as significant copredictors. To evaluate whether plant height served as a proxy for aboveground plant biomass, or gross primary production, we conducted a survey of {CH}4 emission rates from wet, Carex-dominated sites in 2008, coincidently measuring these candidate predictors. Surprisingly, vegetation height remained the best predictor of {CH}4 emission rates, with {CH}4 emissions rising exponentially with vegetation height. We hypothesize that taller plants have more extensive root systems that both stimulate more methanogenesis and conduct more pore water {CH}4 to the atmosphere. We anticipate that the magnitude of the climate change–{CH}4 feedback in the Arctic Coastal Plain will strongly depend on how permafrost thaw alters the ecology of Carex aquatilis.},
-	pages = {G00I03},
-	issue = {G4},
-	journaltitle = {Journal of Geophysical Research: Biogeosciences},
-	shortjournal = {J. Geophys. Res.},
-	author = {von Fischer, Joseph C. and Rhew, Robert C. and Ames, Gregory M. and Fosdick, Bailey K. and von Fischer, Paul E.},
-	urldate = {2018-01-04},
-	date = {2010-12-01},
-	langid = {english},
-	keywords = {0404 Anoxic and hypoxic environments, 0428 Carbon cycling, 0476 Plant ecology, 0490 Trace gases, 0497 Wetlands, Carex aquatilis, methane, tundra},
-	file = {Snapshot:C\:\\Users\\Brent Thorne\\Zotero\\storage\\L22276TK\\abstract.html:text/html;von Fischer et al. - 2010 - Vegetation height and other controls of spatial va.pdf:C\:\\Users\\Brent Thorne\\Zotero\\storage\\2J374FDT\\von Fischer et al. - 2010 - Vegetation height and other controls of spatial va.pdf:application/pdf}
-}
-
-@article{delworth_influence_1988,
-	title = {The Influence of Potential Evaporation on the Variabilities of Simulated Soil Wetness and Climate},
-	volume = {1},
-	url = {http://journals.ametsoc.org/doi/abs/10.1175/1520-0442%281988%29001%3C0523%3ATIOPEO%3E2.0.CO%3B2},
-	doi = {10.1175/1520-0442(1988)001<0523:TIOPEO>2.0.CO;2},
-	abstract = {Abstract An atmospheric general circulation model with prescribed sea surface temperature and cloudiness was integrated for 50 years in order to study atmosphere-land surface interactions. The temporal variability of model soil moisture and precipitation have been studied in an effort to understand the interactions of these variables with other components of the climate system. Temporal variability analysis has shown that the spectra of monthly mean precipitation over land are close to white at all latitudes, with total variance decreasing poleward. In contrasts, the spectra of soil moisture are red, and become more red with increasing latitude. As a measure of this redness, half of the total variance of a composite tropical soil moisture spectrum occurs at periods longer than nine months, while at high latitudes, half of the total variance of a composite soil moisture spectrum occurs at periods longer than 22 months. The spectra of soil moisture also exhibit marked longitudinal variations. These spectral results may be viewed in the light of stochastic theory. The formulation of the {GFDL} soil moisture parameterization is mathematically similar to a stochastic process. According to this model, forcing of a system by an input white noise variable (precipitation) will yield an output variable (soil moisture) with a red spectrum, the redness of which is controlled by a damping term (potential evaporation). Thus, the increasingly red nature of the soil moisture spectra at higher latitudes is a result of declining potential evaporation values at higher latitudes. Physically, soil moisture excesses are dissipated more slowly at high latitudes where the energy available for evaporation is small. Some of the longitudinal variations in soil moisture spectra result from longitudinal variations in potential evaporation, while others are explicable in terms of the value of the ratio of potential evaporation to precipitation. Regions where this value is less than one are characterized by frequent runoff and short time scales of soil moisture variability. By preventing excessive positive anomalies of soil moisture, the runoff process hastens the return of soil moisture values to their mean state, thereby shortening soil moisture time scales. Through the use of a second {GCM} integration with prescribed soil moisture, it was shown that interactive sod moisture may substantially increase summer surface air temperature variability. Soil moisture interacts with the atmosphere primarily through the surface energy balance. The degree of soil saturation strongly influences the atmosphere of outgoing energy from the surface between the latent and sensible heat fluxes. Interactive soil moisture allows larger variations of these fluxes, thereby increasing the variance of surface air temperature. Because the flux of latent heat is directly proportional to potential evaporation under conditions of sufficient moisture, the influence of soil moisture on the atmosphere is greatest when the potential evaporation value is large. This occurs most frequently in the tropics and summer hemisphere extratropics.},
-	pages = {523--547},
-	number = {5},
-	journaltitle = {Journal of Climate},
-	author = {Delworth, Thomas L. and Manabe, Syukuro},
-	date = {1988},
-	note = {bibtex[eprint=http://journals.ametsoc.org/doi/pdf/10.1175/1520-0442\%281988\%29001\%3C0523\%3ATIOPEO\%3E2.0.{CO}\%3B2]},
-	file = {Delworth and Manabe - 1988 - The Influence of Potential Evaporation on the Vari.pdf:C\:\\Users\\Brent Thorne\\Zotero\\storage\\4IRHH9AM\\Delworth and Manabe - 1988 - The Influence of Potential Evaporation on the Vari.pdf:application/pdf}
-}
-
-@article{chen_temporal_2014,
-	title = {Temporal and spatial pattern of thermokarst lake area changes at Yukon Flats, Alaska},
-	volume = {28},
-	issn = {08856087},
-	url = {http://doi.wiley.com/10.1002/hyp.9642},
-	doi = {10.1002/hyp.9642},
-	shorttitle = {Temporal and spatial pattern of thermokarst lake area changes at Yukon Flats, Alaska},
-	pages = {837--852},
-	number = {3},
-	journaltitle = {Hydrological Processes},
-	author = {Chen, Min and Rowland, Joel C. and Wilson, Cathy J. and Altmann, Garrett L. and Brumby, Steven P.},
-	urldate = {2018-01-03},
-	date = {2014-01-30},
-	langid = {english},
-	file = {Chen et al. - 2014 - Temporal and spatial pattern of thermokarst lake a.pdf:C\:\\Users\\Brent Thorne\\Zotero\\storage\\L3765CJI\\Chen et al. - 2014 - Temporal and spatial pattern of thermokarst lake a.pdf:application/pdf}
-}
-
-@article{arp_depth_2015,
-	title = {Depth, ice thickness, and ice-out timing cause divergent hydrologic responses among Arctic lakes: {ICE} {CAUSES} {DIVERGENT} {HYDROLOGIC} {RESPONSES} {AMONG} {ARCTIC} {LAKES}},
-	volume = {51},
-	issn = {00431397},
-	url = {http://doi.wiley.com/10.1002/2015WR017362},
-	doi = {10.1002/2015WR017362},
-	shorttitle = {Depth, ice thickness, and ice-out timing cause divergent hydrologic responses among Arctic lakes},
-	pages = {9379--9401},
-	number = {12},
-	journaltitle = {Water Resources Research},
-	author = {Arp, Christopher D. and Jones, Benjamin M. and Liljedahl, Anna K. and Hinkel, Kenneth M. and Welker, Jeffery A.},
-	urldate = {2018-01-03},
-	date = {2015-12},
-	langid = {english},
-	file = {Arp et al. - 2015 - Depth, ice thickness, and ice-out timing cause div.pdf:C\:\\Users\\Brent Thorne\\Zotero\\storage\\VB4TAZA6\\Arp et al. - 2015 - Depth, ice thickness, and ice-out timing cause div.pdf:application/pdf}
-}
-
-@article{minsley_airborne_2012,
-	title = {Airborne electromagnetic imaging of discontinuous permafrost: {AEM} {IMAGING} {OF} {PERMAFROST}},
-	volume = {39},
-	issn = {00948276},
-	url = {http://doi.wiley.com/10.1029/2011GL050079},
-	doi = {10.1029/2011GL050079},
-	shorttitle = {Airborne electromagnetic imaging of discontinuous permafrost},
-	pages = {n/a--n/a},
-	number = {2},
-	journaltitle = {Geophysical Research Letters},
-	author = {Minsley, Burke J. and Abraham, Jared D. and Smith, Bruce D. and Cannia, James C. and Voss, Clifford I. and Jorgenson, M. Torre and Walvoord, Michelle A. and Wylie, Bruce K. and Anderson, Lesleigh and Ball, Lyndsay B. and Deszcz-Pan, Maryla and Wellman, Tristan P. and Ager, Thomas A.},
-	urldate = {2018-01-03},
-	date = {2012-01},
-	langid = {english},
-	file = {Minsley et al. - 2012 - Airborne electromagnetic imaging of discontinuous .pdf:C\:\\Users\\Brent Thorne\\Zotero\\storage\\8J2PUMRQ\\Minsley et al. - 2012 - Airborne electromagnetic imaging of discontinuous .pdf:application/pdf}
-}
-
-@article{liu_estimating_2012,
-	title = {Estimating 1992-2000 average active layer thickness on the Alaskan North Slope from remotely sensed surface subsidence: {REMOTELY} {SENSING} {ACTIVE} {LAYER} {THICKNESS}},
-	volume = {117},
-	issn = {01480227},
-	url = {http://doi.wiley.com/10.1029/2011JF002041},
-	doi = {10.1029/2011JF002041},
-	shorttitle = {Estimating 1992-2000 average active layer thickness on the Alaskan North Slope from remotely sensed surface subsidence},
-	pages = {n/a--n/a},
-	issue = {F1},
-	journaltitle = {Journal of Geophysical Research: Earth Surface},
-	author = {Liu, Lin and Schaefer, Kevin and Zhang, Tingjun and Wahr, John},
-	urldate = {2018-01-03},
-	date = {2012-03},
-	langid = {english},
-	file = {Liu et al. - 2012 - Estimating 1992-2000 average active layer thicknes.pdf:C\:\\Users\\Brent Thorne\\Zotero\\storage\\YZH67QQQ\\Liu et al. - 2012 - Estimating 1992-2000 average active layer thicknes.pdf:application/pdf}
-}
-
-@thesis{thorne_using_2017,
-	location = {St. Catharines},
-	title = {Using unmanned aviation vehicle ({UAV}) multi-spectral remote sensing to detect shrub vegetation characteristics in Old Crow Flats, Yukon},
-	rights = {Copyright (c) William Brent Thorne 2017},
-	abstract = {Climate change is having major impacts on northern regions. Shrub vegetation proliferation is an example of how land cover is being modified, which can influence ground biophysical conditions and the hydrology of lake-rich landscapes. These impacts are being investigated in Old Crow Flats, Yukon, traditional territory of the Vuntut Gwitchin First Nation who rely on the resources of this landscape to support their traditional lifestyle. Vegetation conditions of two 90-m x 90-m plots were investigated using dendrochronology and high-resolution multi-spectral images captured using an unmanned aviation vehicle ({UAV}). Dendrochronology results showed that the average age for shrub vegetation was 28 years old (standard deviation = 13.65). The dominant species in the two plots included green alder (Alnus viridis,), dwarf birch (Betula nan), and willow (Salix sp.). Red and near-infrared bands of the multi-spectral images were used to calculate normalized difference vegetation index values ({NDVI}) for the two plots, which is an indicator of plant chlorophyll and phytomass. Vegetation characteristics measured on the ground were compared to {NDVI} values to identify whether {NDVI} may be used to differentiate species and plant age. Results of this research show that coupling {UAV} technology with ground measurements may be highly useful for identifying shrub species and age in lake-rich Arctic landscapes such as Old Crow Flats, Yukon. Integrated approaches being developed here are enhancing hydroecological monitoring protocols, which are providing the basis to identify how
-this landscape is responding to a changing climate.},
-	pagetotal = {49},
-	institution = {Brock University},
-	type = {Undergraduate Thesis},
-	author = {Thorne, W. Brent},
-	editora = {Turner, Kevin W.},
-	editoratype = {collaborator},
-	date = {2017},
-	keywords = {hydrology, {NDVI}, remote sensing, shrub, Thorne, {UAV}, unmanned aviation vehicle, vegetation},
-	file = {Thorne - 2017 - Using unmanned aviation vehicle (UAV) multi-spectr.pdf:C\:\\Users\\Brent Thorne\\Zotero\\storage\\U7ZUJ56M\\Thorne - 2017 - Using unmanned aviation vehicle (UAV) multi-spectr.pdf:application/pdf}
-}
-
-@incollection{roy-leveillee_old_2017,
-	title = {Old Crow Flats: Thermokarst Lakes in the Forest–Tundra Transition},
-	url = {http://link.springer.com/chapter/10.1007/978-3-319-44595-3_19},
-	shorttitle = {Old Crow Flats},
-	pages = {267--276},
-	booktitle = {Landscapes and Landforms of Western Canada},
-	publisher = {Springer},
-	author = {Roy-Leveillee, Pascale and Burn, Christopher R.},
-	editor = {Slaymaker, Olav},
-	urldate = {2017-07-31},
-	date = {2017},
-	file = {Roy-Léveillée and Burn - 2017 - Old Crow Flats Thermokarst Lakes in the Forest–Tu.pdf:C\:\\Users\\Brent Thorne\\Zotero\\storage\\TZQISKEQ\\Roy-Léveillée and Burn - 2017 - Old Crow Flats Thermokarst Lakes in the Forest–Tu.pdf:application/pdf}
-}
-
-@article{engram_characterization_2013,
-	title = {Characterization of L-band synthetic aperture radar ({SAR}) backscatter from floating and grounded thermokarst lake ice in Arctic Alaska},
-	volume = {7},
-	issn = {1994-0424},
-	url = {http://www.the-cryosphere.net/7/1741/2013/},
-	doi = {10.5194/tc-7-1741-2013},
-	pages = {1741--1752},
-	number = {6},
-	journaltitle = {The Cryosphere},
-	author = {Engram, M. and Anthony, K. W. and Meyer, F. J. and Grosse, G.},
-	urldate = {2018-01-02},
-	date = {2013-11-14},
-	langid = {english},
-	file = {Engram et al. - 2013 - Characterization of L-band synthetic aperture rada.pdf:C\:\\Users\\Brent Thorne\\Zotero\\storage\\4WZ9FCKA\\Engram et al. - 2013 - Characterization of L-band synthetic aperture rada.pdf:application/pdf}
-}
-
-@article{minsley_evidence_2016,
-	title = {Evidence for nonuniform permafrost degradation after fire in boreal landscapes: {MAPPING} {POSTFIRE} {PERMAFROST} {DEGRADATION}},
-	volume = {121},
-	issn = {21699003},
-	url = {http://doi.wiley.com/10.1002/2015JF003781},
-	doi = {10.1002/2015JF003781},
-	shorttitle = {Evidence for nonuniform permafrost degradation after fire in boreal landscapes},
-	pages = {320--335},
-	number = {2},
-	journaltitle = {Journal of Geophysical Research: Earth Surface},
-	author = {Minsley, Burke J. and Pastick, Neal J. and Wylie, Bruce K. and Brown, Dana R. N. and Andy Kass, M.},
-	urldate = {2018-01-02},
-	date = {2016-02},
-	langid = {english},
-	file = {Minsley et al. - 2016 - Evidence for nonuniform permafrost degradation aft.pdf:C\:\\Users\\Brent Thorne\\Zotero\\storage\\BPUM7RZI\\Minsley et al. - 2016 - Evidence for nonuniform permafrost degradation aft.pdf:application/pdf}
-}
-
-@article{tabatabaeenejad_p-band_2015,
-	title = {P-Band Radar Retrieval of Subsurface Soil Moisture Profile as a Second-Order Polynomial: First {AirMOSS} Results},
-	volume = {53},
-	issn = {0196-2892, 1558-0644},
-	url = {http://ieeexplore.ieee.org/document/6839044/},
-	doi = {10.1109/TGRS.2014.2326839},
-	shorttitle = {P-Band Radar Retrieval of Subsurface Soil Moisture Profile as a Second-Order Polynomial},
-	pages = {645--658},
-	number = {2},
-	journaltitle = {{IEEE} Transactions on Geoscience and Remote Sensing},
-	author = {Tabatabaeenejad, Alireza and Burgin, Mariko and {Xueyang Duan} and Moghaddam, Mahta},
-	urldate = {2018-01-02},
-	date = {2015-02},
-	file = {Tabatabaeenejad et al. - 2015 - P-Band Radar Retrieval of Subsurface Soil Moisture.pdf:C\:\\Users\\Brent Thorne\\Zotero\\storage\\CGW3899H\\Tabatabaeenejad et al. - 2015 - P-Band Radar Retrieval of Subsurface Soil Moisture.pdf:application/pdf}
-}
-
-@article{sadeghi_advancing_2016,
-	title = {Advancing {NASA}’s {AirMOSS} P-Band Radar Root Zone Soil Moisture Retrieval Algorithm via Incorporation of Richards’ Equation},
-	volume = {9},
-	issn = {2072-4292},
-	url = {http://www.mdpi.com/2072-4292/9/1/17},
-	doi = {10.3390/rs9010017},
-	pages = {17},
-	number = {1},
-	journaltitle = {Remote Sensing},
-	author = {Sadeghi, Morteza and Tabatabaeenejad, Alireza and Tuller, Markus and Moghaddam, Mahta and Jones, Scott},
-	urldate = {2018-01-02},
-	date = {2016-12-28},
-	langid = {english},
-	file = {Sadeghi et al. - 2016 - Advancing NASA’s AirMOSS P-Band Radar Root Zone So.pdf:C\:\\Users\\Brent Thorne\\Zotero\\storage\\QBJQWC47\\Sadeghi et al. - 2016 - Advancing NASA’s AirMOSS P-Band Radar Root Zone So.pdf:application/pdf}
-}
-
-@article{riley_characterizing_2014,
-	title = {Characterizing coarse-resolution watershed soil moisture heterogeneity using fine-scale simulations},
-	volume = {18},
-	issn = {1607-7938},
-	url = {http://www.hydrol-earth-syst-sci.net/18/2463/2014/},
-	doi = {10.5194/hess-18-2463-2014},
-	pages = {2463--2483},
-	number = {7},
-	journaltitle = {Hydrology and Earth System Sciences},
-	author = {Riley, W. J. and Shen, C.},
-	urldate = {2018-01-02},
-	date = {2014-07-03},
-	langid = {english},
-	file = {Riley and Shen - 2014 - Characterizing coarse-resolution watershed soil mo.pdf:C\:\\Users\\Brent Thorne\\Zotero\\storage\\RBQPC368\\Riley and Shen - 2014 - Characterizing coarse-resolution watershed soil mo.pdf:application/pdf}
-}
-
-@article{lawrence_permafrost_2015,
-	title = {Permafrost thaw and resulting soil moisture changes regulate projected high-latitude {CO} $_{\textrm{2}}$ and {CH} $_{\textrm{4}}$ emissions},
-	volume = {10},
-	issn = {1748-9326},
-	url = {http://stacks.iop.org/1748-9326/10/i=9/a=094011?key=crossref.0ec3ff97879a814d0c3dfaacde810d23},
-	doi = {10.1088/1748-9326/10/9/094011},
-	pages = {094011},
-	number = {9},
-	journaltitle = {Environmental Research Letters},
-	author = {Lawrence, D M and Koven, C D and Swenson, S C and Riley, W J and Slater, A G},
-	urldate = {2018-01-02},
-	date = {2015-09-01},
-	file = {Lawrence et al. - 2015 - Permafrost thaw and resulting soil moisture change.pdf:C\:\\Users\\Brent Thorne\\Zotero\\storage\\BIWWD7UN\\Lawrence et al. - 2015 - Permafrost thaw and resulting soil moisture change.pdf:application/pdf}
-}
-
-@article{myers-smith_shrub_2013,
-	title = {Shrub canopies influence soil temperatures but not nutrient dynamics: An experimental test of tundra snow-shrub interactions},
-	volume = {3},
-	issn = {20457758},
-	url = {http://doi.wiley.com/10.1002/ece3.710},
-	doi = {10.1002/ece3.710},
-	shorttitle = {Shrub canopies influence soil temperatures but not nutrient dynamics},
-	pages = {3683--3700},
-	number = {11},
-	journaltitle = {Ecology and Evolution},
-	author = {Myers-Smith, Isla H. and Hik, David S.},
-	urldate = {2018-01-01},
-	date = {2013-10},
-	langid = {english},
-	file = {Myers-Smith_et_al-2013-Ecology_and_Evolution.pdf:C\:\\Users\\Brent Thorne\\Zotero\\storage\\BXJH6H4S\\Myers-Smith_et_al-2013-Ecology_and_Evolution.pdf:application/pdf}
-}
-
-@article{jorgenson_remote_2016,
-	title = {Remote Sensing of Landscape Change in Permafrost Regions: Remote Sensing of Landscape Change in Permafrost Regions},
-	volume = {27},
-	issn = {10456740},
-	url = {http://doi.wiley.com/10.1002/ppp.1914},
-	doi = {10.1002/ppp.1914},
-	shorttitle = {Remote Sensing of Landscape Change in Permafrost Regions},
-	pages = {324--338},
-	number = {4},
-	journaltitle = {Permafrost and Periglacial Processes},
-	author = {Jorgenson, Mark Torre and Grosse, Guido},
-	urldate = {2017-12-23},
-	date = {2016-10},
-	langid = {english},
-	file = {Jorgenson_et_al-2016-Permafrost_and_Periglacial_Processes.pdf:C\:\\Users\\Brent Thorne\\Zotero\\storage\\A2EE3KVX\\Jorgenson_et_al-2016-Permafrost_and_Periglacial_Processes.pdf:application/pdf}
-}
-
-@article{gilabert_generalized_2002,
-	title = {A generalized soil-adjusted vegetation index},
-	volume = {82},
-	pages = {303--310},
-	number = {2},
-	journaltitle = {Remote Sensing of environment},
-	author = {Gilabert, M. A. and González-Piqueras, J. and Garcıa-Haro, F. J. and Meliá, J.},
-	date = {2002},
-	file = {Gilabert et al. - 2002 - A generalized soil-adjusted vegetation index.pdf:C\:\\Users\\Brent Thorne\\Zotero\\storage\\ET3DR4XH\\Gilabert et al. - 2002 - A generalized soil-adjusted vegetation index.pdf:application/pdf}
-}
-
-@article{huete_soil-adjusted_1988,
-	title = {A soil-adjusted vegetation index ({SAVI})},
-	volume = {25},
-	pages = {295--309},
-	number = {3},
-	journaltitle = {Remote sensing of environment},
-	author = {Huete, Alfredo R.},
-	date = {1988},
-	file = {Huete - 1988 - A soil-adjusted vegetation index (SAVI).pdf:C\:\\Users\\Brent Thorne\\Zotero\\storage\\V6TUS789\\Huete - 1988 - A soil-adjusted vegetation index (SAVI).pdf:application/pdf}
-}
-
-@article{candiago_evaluating_2015,
-	title = {Evaluating Multispectral Images and Vegetation Indices for Precision Farming Applications from {UAV} Images},
-	volume = {7},
-	issn = {2072-4292},
-	url = {http://www.mdpi.com/2072-4292/7/4/4026/},
-	doi = {10.3390/rs70404026},
-	pages = {4026--4047},
-	number = {4},
-	journaltitle = {Remote Sensing},
-	author = {Candiago, Sebastian and Remondino, Fabio and De Giglio, Michaela and Dubbini, Marco and Gattelli, Mario},
-	urldate = {2017-12-20},
-	date = {2015-04-02},
-	langid = {english},
-	file = {Candiago et al. - 2015 - Evaluating Multispectral Images and Vegetation Ind.pdf:C\:\\Users\\Brent Thorne\\Zotero\\storage\\KQXU52BU\\Candiago et al. - 2015 - Evaluating Multispectral Images and Vegetation Ind.pdf:application/pdf}
-}
-
-@article{albetis_detection_2017,
-	title = {Detection of Flavescence dorée Grapevine Disease Using Unmanned Aerial Vehicle ({UAV}) Multispectral Imagery},
-	volume = {9},
-	issn = {2072-4292},
-	url = {http://www.mdpi.com/2072-4292/9/4/308},
-	doi = {10.3390/rs9040308},
-	pages = {308},
-	number = {4},
-	journaltitle = {Remote Sensing},
-	author = {Albetis, Johanna and Duthoit, Sylvie and Guttler, Fabio and Jacquin, Anne and Goulard, Michel and Poilvé, Hervé and Féret, Jean-Baptiste and Dedieu, Gérard},
-	urldate = {2017-12-20},
-	date = {2017-03-24},
-	langid = {english},
-	file = {Albetis et al. - 2017 - Detection of Flavescence dorée Grapevine Disease U.pdf:C\:\\Users\\Brent Thorne\\Zotero\\storage\\TG2QSUD4\\Albetis et al. - 2017 - Detection of Flavescence dorée Grapevine Disease U.pdf:application/pdf}
-}
-
-@article{lopez-lopez_early_2016,
-	title = {Early Detection and Quantification of Almond Red Leaf Blotch Using High-Resolution Hyperspectral and Thermal Imagery},
-	volume = {8},
-	issn = {2072-4292},
-	url = {http://www.mdpi.com/2072-4292/8/4/276},
-	doi = {10.3390/rs8040276},
-	pages = {276},
-	number = {4},
-	journaltitle = {Remote Sensing},
-	author = {López-López, Manuel and Calderón, Rocío and González-Dugo, Victoria and Zarco-Tejada, Pablo and Fereres, Elías},
-	urldate = {2017-12-20},
-	date = {2016-03-25},
-	langid = {english},
-	file = {López-López et al. - 2016 - Early Detection and Quantification of Almond Red L.pdf:C\:\\Users\\Brent Thorne\\Zotero\\storage\\6KFIEIW3\\López-López et al. - 2016 - Early Detection and Quantification of Almond Red L.pdf:application/pdf}
-}
-
-@article{balasubramaniam_biotic_2017,
-	title = {Biotic responses to multiple aquatic and terrestrial gradients in shallow subarctic lakes (Old Crow Flats, Yukon, Canada)},
-	volume = {3},
-	issn = {2368-7460},
-	url = {http://www.nrcresearchpress.com/doi/10.1139/as-2016-0021},
-	doi = {10.1139/as-2016-0021},
-	pages = {277--300},
-	number = {2},
-	journaltitle = {Arctic Science},
-	author = {Balasubramaniam, A.M. and Medeiros, A.S. and Turner, K.W. and Hall, R.I. and Wolfe, B.B.},
-	urldate = {2017-12-18},
-	date = {2017-06},
-	langid = {english},
-	file = {Balasubramaniam et al. - 2017 - Biotic responses to multiple aquatic and terrestri.pdf:C\:\\Users\\Brent Thorne\\Zotero\\storage\\Q5WUQE2F\\Balasubramaniam et al. - 2017 - Biotic responses to multiple aquatic and terrestri.pdf:application/pdf}
-}
-
-@article{walvoord_hydrologic_2016,
-	title = {Hydrologic Impacts of Thawing Permafrost—A Review},
-	volume = {15},
-	issn = {1539-1663},
-	url = {https://dl.sciencesocieties.org/publications/vzj/abstracts/15/6/vzj2016.01.0010},
-	doi = {10.2136/vzj2016.01.0010},
-	pages = {0},
-	number = {6},
-	journaltitle = {Vadose Zone Journal},
-	author = {Walvoord, Michelle A. and Kurylyk, Barret L.},
-	urldate = {2017-12-18},
-	date = {2016},
-	langid = {english}
-}
-
-@article{wang_analysis_2017,
-	title = {Analysis of Differences in Phenology Extracted from the Enhanced Vegetation Index and the Leaf Area Index},
-	volume = {17},
-	issn = {1424-8220},
-	url = {http://www.mdpi.com/1424-8220/17/9/1982},
-	doi = {10.3390/s17091982},
-	pages = {1982},
-	number = {9},
-	journaltitle = {Sensors},
-	author = {Wang, Cong and Li, Jing and Liu, Qinhuo and Zhong, Bo and Wu, Shanlong and Xia, Chuanfu},
-	urldate = {2017-12-07},
-	date = {2017-08-30},
-	langid = {english},
-	file = {Wang et al. - 2017 - Analysis of Differences in Phenology Extracted fro.pdf:C\:\\Users\\Brent Thorne\\Zotero\\storage\\6QVN5DJJ\\Wang et al. - 2017 - Analysis of Differences in Phenology Extracted fro.pdf:application/pdf}
-}
-
-@article{filippini_alba_geotechnologies_2017,
-	title = {Geotechnologies and Soil Mapping for Delimitation of Management Zones as an Approach to Precision Viticulture},
-	volume = {2017},
-	issn = {1687-7667, 1687-7675},
-	url = {https://www.hindawi.com/journals/aess/2017/4180965/},
-	doi = {10.1155/2017/4180965},
-	pages = {1--10},
-	journaltitle = {Applied and Environmental Soil Science},
-	author = {Filippini Alba, José Maria and Flores, Carlos Alberto and Miele, Alberto},
-	urldate = {2017-12-07},
-	date = {2017},
-	langid = {english},
-	file = {Filippini Alba et al. - 2017 - Geotechnologies and Soil Mapping for Delimitation .pdf:C\:\\Users\\Brent Thorne\\Zotero\\storage\\C7AA8MZH\\Filippini Alba et al. - 2017 - Geotechnologies and Soil Mapping for Delimitation .pdf:application/pdf}
-}
-
-@article{puletti_unsupervised_2014,
-	title = {Unsupervised classification of very high remotely sensed images for grapevine rows detection},
-	volume = {47},
-	issn = {2279-7254},
-	url = {https://www.tandfonline.com/doi/full/10.5721/EuJRS20144704},
-	doi = {10.5721/EuJRS20144704},
-	pages = {45--54},
-	number = {1},
-	journaltitle = {European Journal of Remote Sensing},
-	author = {Puletti, Nicola and Perria, Rita and Storchi, Paolo},
-	urldate = {2017-12-07},
-	date = {2014-01},
-	langid = {english},
-	file = {Puletti et al. - 2014 - Unsupervised classification of very high remotely .pdf:C\:\\Users\\Brent Thorne\\Zotero\\storage\\8NI2EUMR\\Puletti et al. - 2014 - Unsupervised classification of very high remotely .pdf:application/pdf}
-}
-
-@book{harris_s.a._glossary_1988,
-	location = {Ottawa,Ontario,Canada},
-	title = {Glossary of permafrost and related ground-ice terms},
-	isbn = {978-0-660-12540-4},
-	series = {Technical Memorandum / National Research Council, Canada},
-	pagetotal = {156},
-	number = {142},
-	author = {{Harris S.A.} and {French H.M.} and {Heginbottom J.A.}},
-	date = {1988},
-	note = {{OCLC}: 20504505},
-	file = {Harris S.A. et al. - 1988 - Glossary of permafrost and related ground-ice term.pdf:C\:\\Users\\Brent Thorne\\Zotero\\storage\\4GF3MEPG\\Harris S.A. et al. - 1988 - Glossary of permafrost and related ground-ice term.pdf:application/pdf}
-}
-
-@article{poblete-echeverria_detection_2017,
-	title = {Detection and Segmentation of Vine Canopy in Ultra-High Spatial Resolution {RGB} Imagery Obtained from Unmanned Aerial Vehicle ({UAV}): A Case Study in a Commercial Vineyard},
-	volume = {9},
-	issn = {20724292},
-	url = {https://proxy.library.brocku.ca/login?url=http://search.ebscohost.com/login.aspx?direct=true&db=a9h&AN=122027077&site=eds-live&scope=site},
-	doi = {10.3390/rs9030268},
-	shorttitle = {Detection and Segmentation of Vine Canopy in Ultra-High Spatial Resolution {RGB} Imagery Obtained from Unmanned Aerial Vehicle ({UAV})},
-	abstract = {The use of Unmanned Aerial Vehicles ({UAVs}) in viticulture permits the capture of aerial Red-Green-Blue ({RGB}) images with an ultra-high spatial resolution. Recent studies have demonstrated that {RGB} images can be used to monitor spatial variability of vine biophysical parameters. However, for estimating these parameters, accurate and automated segmentation methods are required to extract relevant information from {RGB} images. Manual segmentation of aerial images is a laborious and time-consuming process. Traditional classification methods have shown satisfactory results in the segmentation of {RGB} images for diverse applications and surfaces, however, in the case of commercial vineyards, it is necessary to consider some particularities inherent to canopy size in the vertical trellis systems ({VSP}) such as shadow effect and different soil conditions in inter-rows (mixed information of soil and weeds). Therefore, the objective of this study was to compare the performance of four classification methods (K-means, Artificial Neural Networks ({ANN}), Random Forest ({RForest}) and Spectral Indices ({SI})) to detect canopy in a vineyard trained on {VSP}. Six flights were carried out from post-flowering to harvest in a commercial vineyard cv. Carménère using a low-cost {UAV} equipped with a conventional {RGB} camera. The results show that the {ANN} and the simple {SI} method complemented with the Otsu method for thresholding presented the best performance for the detection of the vine canopy with high overall accuracy values for all study days. Spectral indices presented the best performance in the detection of Plant class (Vine canopy) with an overall accuracy of around 0.99. However, considering the performance pixel by pixel, the Spectral indices are not able to discriminate between Soil and Shadow class. The best performance in the classification of three classes (Plant, Soil, and Shadow) of vineyard {RGB} images, was obtained when the {SI} values were used as input data in trained methods ({ANN} and {RForest}), reaching overall accuracy values around 0.98 with high sensitivity values for the three classes.},
-	pages = {1--14},
-	number = {3},
-	journaltitle = {Remote Sensing},
-	shortjournal = {Remote Sensing},
-	author = {Poblete-Echeverría, Carlos and Federico Olmedo, Guillermo and Ingram, Ben and Bardeen, Matthew},
-	date = {2017-03},
-	keywords = {remote sensing, {DRONE} aircraft, image analysis, {PARAMETER} estimation, {PLANT} canopies, precision viticulture, random forest, {SEGMENTATION} (Image processing), spatial variability, {VINEYARDS}},
-	file = {EBSCO Full Text:C\:\\Users\\Brent Thorne\\Zotero\\storage\\AQ3Q7WQ5\\Poblete-Echeverría et al. - 2017 - Detection and Segmentation of Vine Canopy in Ultra.pdf:application/pdf}
-}
-
-@article{sladojevic_deep_2016,
-	title = {Deep Neural Networks Based Recognition of Plant Diseases by Leaf Image Classification},
-	volume = {2016},
-	issn = {1687-5265},
-	url = {https://www.ncbi.nlm.nih.gov/pmc/articles/PMC4934169/},
-	doi = {10.1155/2016/3289801},
-	abstract = {The latest generation of convolutional neural networks ({CNNs}) has achieved impressive results in the field of image classification. This paper is concerned with a new approach to the development of plant disease recognition model, based on leaf image classification, by the use of deep convolutional networks. Novel way of training and the methodology used facilitate a quick and easy system implementation in practice. The developed model is able to recognize 13 different types of plant diseases out of healthy leaves, with the ability to distinguish plant leaves from their surroundings. According to our knowledge, this method for plant disease recognition has been proposed for the first time. All essential steps required for implementing this disease recognition model are fully described throughout the paper, starting from gathering images in order to create a database, assessed by agricultural experts. Caffe, a deep learning framework developed by Berkley Vision and Learning Centre, was used to perform the deep {CNN} training. The experimental results on the developed model achieved precision between 91\% and 98\%, for separate class tests, on average 96.3\%.},
-	journaltitle = {Computational Intelligence and Neuroscience},
-	shortjournal = {Comput Intell Neurosci},
-	author = {Sladojevic, Srdjan and Arsenovic, Marko and Anderla, Andras and Culibrk, Dubravko and Stefanovic, Darko},
-	date = {2016},
-	pmid = {27418923},
-	pmcid = {PMC4934169},
-	file = {Sladojevic et al. - 2016 - Deep Neural Networks Based Recognition of Plant Di.pdf:C\:\\Users\\Brent Thorne\\Zotero\\storage\\ZWU7NT3Z\\Sladojevic et al. - 2016 - Deep Neural Networks Based Recognition of Plant Di.pdf:application/pdf}
-}
-
-@article{terron_evaluation_2015,
-	title = {Evaluation of vineyard growth under four irrigation regimes using vegetation and soil on-the-go sensors},
-	volume = {1},
-	issn = {2199-398X},
-	url = {http://www.soil-journal.net/1/459/2015/},
-	doi = {10.5194/soil-1-459-2015},
-	pages = {459--473},
-	number = {1},
-	journaltitle = {{SOIL}},
-	author = {Terrón, J. M. and Blanco, J. and Moral, F. J. and Mancha, L. A. and Uriarte, D. and Marques da Silva, J. R.},
-	urldate = {2017-11-28},
-	date = {2015-06-17},
-	langid = {english},
-	file = {Terrón et al. - 2015 - Evaluation of vineyard growth under four irrigatio.pdf:C\:\\Users\\Brent Thorne\\Zotero\\storage\\AIKE8PI9\\Terrón et al. - 2015 - Evaluation of vineyard growth under four irrigatio.pdf:application/pdf}
-}
-
-@collection{dion_microbiology_2008,
-	location = {Berlin},
-	title = {Microbiology of extreme soils},
-	isbn = {978-3-540-74230-2},
-	series = {Soil biology},
-	pagetotal = {369},
-	number = {v. 13},
-	publisher = {Springer},
-	editor = {Dion, Patrice and Nautiyal, Chandra Shekhar},
-	date = {2008},
-	note = {{OCLC}: ocn181328027},
-	keywords = {Effect of human beings on, Microbiology, Research, Soil microbiology, Soils},
-	file = {Dion and Nautiyal - 2008 - Microbiology of extreme soils.pdf:C\:\\Users\\Brent Thorne\\Zotero\\storage\\P42SF3BP\\Dion and Nautiyal - 2008 - Microbiology of extreme soils.pdf:application/pdf}
-}
-
-@article{lamoureux_more_2017,
-	title = {More than just snowmelt: integrated watershed science for changing climate and permafrost at the Cape Bounty Arctic Watershed Observatory: Integrated watershed science for changing climate and permafrost at {CBAWO}},
-	issn = {20491948},
-	url = {http://doi.wiley.com/10.1002/wat2.1255},
-	doi = {10.1002/wat2.1255},
-	shorttitle = {More than just snowmelt},
-	pages = {e1255},
-	journaltitle = {Wiley Interdisciplinary Reviews: Water},
-	author = {Lamoureux, Scott F. and Lafrenière, Melissa J.},
-	urldate = {2017-11-01},
-	date = {2017-10-24},
-	langid = {english},
-	file = {Lamoureux_et_al-2017-Wiley_Interdisciplinary_Reviews-_Water.pdf:C\:\\Users\\Brent Thorne\\Zotero\\storage\\H2489T2P\\Lamoureux_et_al-2017-Wiley_Interdisciplinary_Reviews-_Water.pdf:application/pdf}
-}
-
-@thesis{macdougall_evaluating_2017,
-	title = {Evaluating the affect of seasonal soil moisture and vegetation change on C-Band {SAR} backscatter over corn fields in {SW} Ontario},
-	type = {phdthesis},
-	author = {{MacDougall}, Joshua},
-	date = {2017},
-	file = {MacDougall - 2017 - Evaluating the affect of seasonal soil moisture an.pdf:C\:\\Users\\Brent Thorne\\Zotero\\storage\\QWSBV5I8\\MacDougall - 2017 - Evaluating the affect of seasonal soil moisture an.pdf:application/pdf}
-}
-
-@article{ouellette_time-series_2017,
-	title = {A Time-Series Approach to Estimating Soil Moisture From Vegetated Surfaces Using L-Band Radar Backscatter},
-	volume = {55},
-	issn = {0196-2892, 1558-0644},
-	url = {http://ieeexplore.ieee.org/document/7864350/},
-	doi = {10.1109/TGRS.2017.2663768},
-	pages = {3186--3193},
-	number = {6},
-	journaltitle = {{IEEE} Transactions on Geoscience and Remote Sensing},
-	author = {Ouellette, Jeffrey D. and Johnson, Joel T. and Balenzano, Anna and Mattia, Francesco and Satalino, Giuseppe and Kim, Seung-Bum and Dunbar, R. Scott and Colliander, Andreas and Cosh, Michael H. and Caldwell, Todd G. and Walker, Jeffrey P. and Berg, Aaron A.},
-	urldate = {2017-10-20},
-	date = {2017-06},
-	file = {Ouellette et al. - 2017 - A Time-Series Approach to Estimating Soil Moisture.pdf:C\:\\Users\\Brent Thorne\\Zotero\\storage\\CRSW45MW\\Ouellette et al. - 2017 - A Time-Series Approach to Estimating Soil Moisture.pdf:application/pdf}
-}
-
-@article{hosseini_using_2017,
-	title = {Using multi-polarization C- and L-band synthetic aperture radar to estimate biomass and soil moisture of wheat fields},
-	volume = {58},
-	issn = {03032434},
-	url = {http://linkinghub.elsevier.com/retrieve/pii/S0303243417300065},
-	doi = {10.1016/j.jag.2017.01.006},
-	pages = {50--64},
-	journaltitle = {International Journal of Applied Earth Observation and Geoinformation},
-	author = {Hosseini, Mehdi and {McNairn}, Heather},
-	urldate = {2017-10-20},
-	date = {2017-06},
-	langid = {english},
-	file = {Hosseini and McNairn - 2017 - Using multi-polarization C- and L-band synthetic a.pdf:C\:\\Users\\Brent Thorne\\Zotero\\storage\\XMSAT6Q4\\Hosseini and McNairn - 2017 - Using multi-polarization C- and L-band synthetic a.pdf:application/pdf}
-}
-
-@article{ackerman_arctic_2017,
-	title = {Arctic shrub growth trajectories differ across soil moisture levels},
-	volume = {23},
-	issn = {13541013},
-	url = {http://doi.wiley.com/10.1111/gcb.13677},
-	doi = {10.1111/gcb.13677},
-	pages = {4294--4302},
-	number = {10},
-	journaltitle = {Global Change Biology},
-	author = {Ackerman, Daniel and Griffin, Daniel and Hobbie, Sarah E. and Finlay, Jacques C.},
-	urldate = {2017-09-14},
-	date = {2017-10},
-	langid = {english},
-	file = {Ackerman et al. - 2017 - Arctic shrub growth trajectories differ across soi.pdf:C\:\\Users\\Brent Thorne\\Zotero\\storage\\7ZRCVS73\\Ackerman et al. - 2017 - Arctic shrub growth trajectories differ across soi.pdf:application/pdf}
-}
-
-@thesis{turner_investigating_2014,
-	location = {Waterloo, Ontario},
-	title = {Investigating the Hydrology of a Thermokarst Landscape (Old Crow Flats, Yukon, Canada) Using Water Isotope Tracers.},
-	rights = {Kevin W. Turner},
-	pagetotal = {219},
-	institution = {Wilfrid Laurier University},
-	type = {phdthesis},
-	author = {Turner, Kevin William},
-	date = {2014},
-	note = {{OCLC}: 921571251},
-	file = {Turner - 2014 - Investigating the Hydrology of a Thermokarst Lands.pdf:C\:\\Users\\Brent Thorne\\Zotero\\storage\\DNST7PF3\\Turner - 2014 - Investigating the Hydrology of a Thermokarst Lands.pdf:application/pdf}
-}
-
-@article{vincent_arctic_2017,
-	title = {Arctic permafrost landscapes in transition: towards an integrated Earth system approach},
-	volume = {3},
-	issn = {2368-7460},
-	url = {http://www.nrcresearchpress.com/doi/10.1139/as-2016-0027},
-	doi = {10.1139/as-2016-0027},
-	shorttitle = {Arctic permafrost landscapes in transition},
-	pages = {39--64},
-	number = {2},
-	journaltitle = {Arctic Science},
-	author = {Vincent, Warwick F. and Lemay, Mickaël and Allard, Michel},
-	urldate = {2017-08-30},
-	date = {2017-06},
-	langid = {english},
-	file = {Vincent et al. - 2017 - Arctic permafrost landscapes in transition toward.pdf:C\:\\Users\\Brent Thorne\\Zotero\\storage\\UXR8GEI2\\Vincent et al. - 2017 - Arctic permafrost landscapes in transition toward.pdf:application/pdf}
-}
-
-@article{schadel_circumpolar_2014,
-	title = {Circumpolar assessment of permafrost C quality and its vulnerability over time using long-term incubation data},
-	volume = {20},
-	issn = {1365-2486},
-	url = {http://onlinelibrary.wiley.com.proxy.library.brocku.ca/doi/10.1111/gcb.12417/abstract},
-	doi = {10.1111/gcb.12417},
-	abstract = {High-latitude ecosystems store approximately 1700 Pg of soil carbon (C), which is twice as much C as is currently contained in the atmosphere. Permafrost thaw and subsequent microbial decomposition of permafrost organic matter could add large amounts of C to the atmosphere, thereby influencing the global C cycle. The rates at which C is being released from the permafrost zone at different soil depths and across different physiographic regions are poorly understood but crucial in understanding future changes in permafrost C storage with climate change. We assessed the inherent decomposability of C from the permafrost zone by assembling a database of long-term ({\textgreater}1 year) aerobic soil incubations from 121 individual samples from 23 high-latitude ecosystems located across the northern circumpolar permafrost zone. Using a three-pool (i.e., fast, slow and passive) decomposition model, we estimated pool sizes for C fractions with different turnover times and their inherent decomposition rates using a reference temperature of 5 °C. Fast cycling C accounted for less than 5\% of all C in both organic and mineral soils whereas the pool size of slow cycling C increased with C : N. Turnover time at 5 °C of fast cycling C typically was below 1 year, between 5 and 15 years for slow turning over C, and more than 500 years for passive C. We project that between 20 and 90\% of the organic C could potentially be mineralized to {CO}2 within 50 incubation years at a constant temperature of 5 °C, with vulnerability to loss increasing in soils with higher C : N. These results demonstrate the variation in the vulnerability of C stored in permafrost soils based on inherent differences in organic matter decomposability, and point toward C : N as an index of decomposability that has the potential to be used to scale permafrost C loss across landscapes.},
-	pages = {641--652},
-	number = {2},
-	journaltitle = {Global Change Biology},
-	shortjournal = {Glob Change Biol},
-	author = {Schädel, Christina and Schuur, Edward A. G. and Bracho, Rosvel and Elberling, Bo and Knoblauch, Christian and Lee, Hanna and Luo, Yiqi and Shaver, Gaius R. and Turetsky, Merritt R.},
-	date = {2014-02-01},
-	langid = {english},
-	keywords = {Alaska, tundra, boreal forest, C decomposition, climate change, Siberia, soil organic carbon},
-	file = {Schädel et al. - 2014 - Circumpolar assessment of permafrost C quality and.pdf:C\:\\Users\\Brent Thorne\\Zotero\\storage\\N6A9G9M5\\Schädel et al. - 2014 - Circumpolar assessment of permafrost C quality and.pdf:application/pdf;Snapshot:C\:\\Users\\Brent Thorne\\Zotero\\storage\\8RCSUATK\\abstract.html:text/html}
-}
-
-@article{smith_thermal_2010,
-	title = {Thermal state of permafrost in North America: a contribution to the international polar year},
-	volume = {21},
-	url = {http://onlinelibrary.wiley.com/doi/10.1002/ppp.690/full},
-	shorttitle = {Thermal state of permafrost in North America},
-	pages = {117--135},
-	number = {2},
-	journaltitle = {Permafrost and Periglacial Processes},
-	author = {Smith, S. L. and Romanovsky, V. E. and Lewkowicz, A. G. and Burn, C. R. and Allard, M. and Clow, G. D. and Yoshikawa, K. and Throop, J.},
-	urldate = {2017-08-30},
-	date = {2010},
-	file = {Smith et al. - 2010 - Thermal state of permafrost in North America a co.pdf:C\:\\Users\\Brent Thorne\\Zotero\\storage\\B2EASXDZ\\Smith et al. - 2010 - Thermal state of permafrost in North America a co.pdf:application/pdf}
-}
-
-@article{park_widespread_2016,
-	title = {Widespread permafrost vulnerability and soil active layer increases over the high northern latitudes inferred from satellite remote sensing and process model assessments},
-	volume = {175},
-	issn = {00344257},
-	url = {http://linkinghub.elsevier.com/retrieve/pii/S0034425715302686},
-	doi = {10.1016/j.rse.2015.12.046},
-	pages = {349--358},
-	journaltitle = {Remote Sensing of Environment},
-	author = {Park, Hotaek and Kim, Youngwook and Kimball, John S.},
-	urldate = {2017-08-30},
-	date = {2016-03},
-	langid = {english},
-	file = {Park et al. - 2016 - Widespread permafrost vulnerability and soil activ.pdf:C\:\\Users\\Brent Thorne\\Zotero\\storage\\XUCW9HPK\\Park et al. - 2016 - Widespread permafrost vulnerability and soil activ.pdf:application/pdf}
-}
-
-@article{newman_microtopographic_2015,
-	title = {Microtopographic and depth controls on active layer chemistry in Arctic polygonal ground: Polygonal Ground Chemistry},
-	volume = {42},
-	issn = {00948276},
-	url = {http://doi.wiley.com/10.1002/2014GL062804},
-	doi = {10.1002/2014GL062804},
-	shorttitle = {Microtopographic and depth controls on active layer chemistry in Arctic polygonal ground},
-	pages = {1808--1817},
-	number = {6},
-	journaltitle = {Geophysical Research Letters},
-	author = {Newman, B. D. and Throckmorton, H. M. and Graham, D. E. and Gu, B. and Hubbard, S. S. and Liang, L. and Wu, Y. and Heikoop, J. M. and Herndon, E. M. and Phelps, T. J. and Wilson, C. J. and Wullschleger, S. D.},
-	urldate = {2017-08-30},
-	date = {2015-03-28},
-	langid = {english},
-	file = {Newman et al. - 2015 - Microtopographic and depth controls on active laye.pdf:C\:\\Users\\Brent Thorne\\Zotero\\storage\\R6KTPTXE\\Newman et al. - 2015 - Microtopographic and depth controls on active laye.pdf:application/pdf}
-}
-
-@article{muskett_active-layer_2015,
-	title = {Active-Layer Soil Moisture Content Regional Variations in Alaska and Russia by Ground-Based and Satellite-Based Methods, 2002 through 2014},
-	volume = {06},
-	issn = {2156-8359, 2156-8367},
-	url = {http://www.scirp.org/journal/doi.aspx?DOI=10.4236/ijg.2015.61002},
-	doi = {10.4236/ijg.2015.61002},
-	pages = {12--41},
-	number = {1},
-	journaltitle = {International Journal of Geosciences},
-	author = {Muskett, Reginald R. and Romanovsky, Vladimir E. and Cable, William L. and Kholodov, Alexander L.},
-	urldate = {2017-08-30},
-	date = {2015},
-	file = {Muskett et al. - 2015 - Active-Layer Soil Moisture Content Regional Variat.pdf:C\:\\Users\\Brent Thorne\\Zotero\\storage\\IAIE7EPM\\Muskett et al. - 2015 - Active-Layer Soil Moisture Content Regional Variat.pdf:application/pdf}
-}
-
-@article{gusmeroli_active_2015,
-	title = {Active Layer Stratigraphy and Organic Layer Thickness at a Thermokarst Site in Arctic Alaska Identified Using Ground Penetrating Radar},
-	volume = {47},
-	issn = {1523-0430, 1938-4246},
-	url = {http://www.bioone.org/doi/10.1657/AAAR00C-13-301},
-	doi = {10.1657/AAAR00C-13-301},
-	pages = {195--202},
-	number = {2},
-	journaltitle = {Arctic, Antarctic, and Alpine Research},
-	author = {Gusmeroli, Alessio and Liu, Lin and Schaefer, Kevin and Zhang, Tingjun and Schaefer, Timothy and Grosse, Guido},
-	urldate = {2017-08-30},
-	date = {2015-05},
-	langid = {english},
-	file = {Gusmeroli et al. - 2015 - Active Layer Stratigraphy and Organic Layer Thickn.pdf:C\:\\Users\\Brent Thorne\\Zotero\\storage\\BXQWQX86\\Gusmeroli et al. - 2015 - Active Layer Stratigraphy and Organic Layer Thickn.pdf:application/pdf}
-}
-
-@article{brown_circumpolar_2000,
-	title = {The circumpolar active layer monitoring (calm) program: Research designs and initial results $^{\textrm{1}}$},
-	volume = {24},
-	issn = {1088-937X, 1939-0513},
-	url = {http://www.tandfonline.com/doi/abs/10.1080/10889370009377698},
-	doi = {10.1080/10889370009377698},
-	shorttitle = {The circumpolar active layer monitoring (calm) program},
-	pages = {166--258},
-	number = {3},
-	journaltitle = {Polar Geography},
-	author = {Brown, J. and Hinkel, K. M. and Nelson, F. E.},
-	urldate = {2017-08-30},
-	date = {2000-07},
-	langid = {english},
-	file = {Brown et al. - 2000 - The circumpolar active layer monitoring (calm) pro.pdf:C\:\\Users\\Brent Thorne\\Zotero\\storage\\NRFEFXQE\\Brown et al. - 2000 - The circumpolar active layer monitoring (calm) pro.pdf:application/pdf}
-}
-
-@article{gangodagamage_extrapolating_2014,
-	title = {Extrapolating active layer thickness measurements across Arctic polygonal terrain using {LiDAR} and {NDVI} data sets},
-	volume = {50},
-	issn = {1944-7973},
-	url = {http://onlinelibrary.wiley.com/doi/10.1002/2013WR014283/abstract},
-	doi = {10.1002/2013WR014283},
-	abstract = {Landscape attributes that vary with microtopography, such as active layer thickness ({ALT}), are labor intensive and difficult to document effectively through in situ methods at kilometer spatial extents, thus rendering remotely sensed methods desirable. Spatially explicit estimates of {ALT} can provide critically needed data for parameterization, initialization, and evaluation of Arctic terrestrial models. In this work, we demonstrate a new approach using high-resolution remotely sensed data for estimating centimeter-scale {ALT} in a 5 km2 area of ice-wedge polygon terrain in Barrow, Alaska. We use a simple regression-based, machine learning data-fusion algorithm that uses topographic and spectral metrics derived from multisensor data ({LiDAR} and {WorldView}-2) to estimate {ALT} (2 m spatial resolution) across the study area. Comparison of the {ALT} estimates with ground-based measurements, indicates the accuracy (r2 = 0.76, {RMSE} ±4.4 cm) of the approach. While it is generally accepted that broad climatic variability associated with increasing air temperature will govern the regional averages of {ALT}, consistent with prior studies, our findings using high-resolution {LiDAR} and {WorldView}-2 data, show that smaller-scale variability in {ALT} is controlled by local eco-hydro-geomorphic factors. This work demonstrates a path forward for mapping {ALT} at high spatial resolution and across sufficiently large regions for improved understanding and predictions of coupled dynamics among permafrost, hydrology, and land-surface processes from readily available remote sensing data.},
-	pages = {6339--6357},
-	number = {8},
-	journaltitle = {Water Resources Research},
-	shortjournal = {Water Resour. Res.},
-	author = {Gangodagamage, Chandana and Rowland, Joel C. and Hubbard, Susan S. and Brumby, Steven P. and Liljedahl, Anna K. and Wainwright, Haruko and Wilson, Cathy J. and Altmann, Garrett L. and Dafflon, Baptiste and Peterson, John and Ulrich, Craig and Tweedie, Craig E. and Wullschleger, Stan D.},
-	date = {2014-08-01},
-	langid = {english},
-	keywords = {Alaska, 0704 Seasonally frozen ground, 0706 Active layer, 0748 Ponds, 1823 Frozen ground, active layer thickness, barrow, eco-hydro-geo-thermal regimes, frozen ground, ice wedge polygons, thaw depth},
-	file = {Gangodagamage et al. - 2014 - Extrapolating active layer thickness measurements .pdf:C\:\\Users\\Brent Thorne\\Zotero\\storage\\AKTMBIC6\\Gangodagamage et al. - 2014 - Extrapolating active layer thickness measurements .pdf:application/pdf;Snapshot:C\:\\Users\\Brent Thorne\\Zotero\\storage\\J4BANJIG\\abstract.html:text/html}
-}
-
-@article{kokelj_impacts_2009,
-	title = {The impacts of thawing permafrost on the chemistry of lakes across the subarctic boreal-tundra transition, Mackenzie Delta region, Canada},
-	volume = {20},
-	issn = {10456740, 10991530},
-	url = {http://doi.wiley.com/10.1002/ppp.641},
-	doi = {10.1002/ppp.641},
-	pages = {185--199},
-	number = {2},
-	journaltitle = {Permafrost and Periglacial Processes},
-	author = {Kokelj, S. V. and Zajdlik, B. and Thompson, M. S.},
-	urldate = {2017-08-28},
-	date = {2009-04},
-	langid = {english},
-	file = {Kokelj et al. - 2009 - The impacts of thawing permafrost on the chemistry.pdf:C\:\\Users\\Brent Thorne\\Zotero\\storage\\WZ9RZ2GV\\Kokelj et al. - 2009 - The impacts of thawing permafrost on the chemistry.pdf:application/pdf}
-}
-
-@article{lapp_hydrology_2017,
-	title = {Hydrology of the North Klondike River: carbon export, water balance and inter-annual climate influences within a sub-alpine permafrost catchment},
-	volume = {53},
-	issn = {1025-6016},
-	url = {http://journals.scholarsportal.info/detailsundefined},
-	doi = {10.1080/10256016.2017.1355795},
-	shorttitle = {Hydrology of the North Klondike River},
-	abstract = {{ABSTRACT} Arctic and sub-arctic watersheds are undergoing significant changes due to recent climate warming and degrading permafrost, engendering enhanced monitoring of arctic rivers. Smaller catchments provide understanding of discharge, solute flux and groundwater recharge at the process level that contributes to an understanding of how larger arctic watersheds are responding to climate change. The North Klondike River, located in west central Yukon, is a sub-alpine permafrost catchment, which maintains an active hydrological monitoring station with a record of {\textgreater}40 years. In addition to being able to monitor intra-annual variability, this data set allows for more complex analysis of streamflow records. Streamflow data, geochemistry and stable isotope data for 2014 show a groundwater-dominated system, predominantly recharged during periods of snowmelt. Radiocarbon is shown to be a valuable tracer of soil zone recharge processes and carbon sources. Winter groundwater baseflow contributes 20 \% of total annual discharge, and accounts for up to 50 \% of total river discharge during the spring and summer months. Although total stream discharge remains unchanged, mean annual groundwater baseflow has increased over the 40-year monitoring period. Wavelet analysis reveals a catchment that responds to El Niño and longer solar cycles, as well as climatic shifts such as the Pacific Decadal Oscillation. Dedicated to Professor Peter Fritz on the occasion of his 80th birthday},
-	pages = {500--517},
-	number = {5},
-	journaltitle = {Isotopes in Environmental and Health Studies},
-	shortjournal = {Isotopes in Environmental and Health Studies},
-	author = {Lapp, Anthony and Clark, Ian and Macumber, Andrew and Patterson, Tim},
-	date = {2017},
-	keywords = {Carbon-13, carbon-14, catchment, groundwater, hydrogen-2, hydrogen-3, isotope hydrology, North Klondike River, oxygen-18, sub-alpine permafrost, water balance}
-}
-
-@article{serreze_observational_2000,
-	title = {Observational Evidence of Recent Change in the Northern High-Latitude Environment},
-	volume = {46},
-	issn = {0165-0009},
-	url = {http://journals.scholarsportal.info/detailsundefined},
-	abstract = {Studies from a variety of disciplines document recent change in the northern high-latitude environment. Prompted by predictions of an amplified response of the Arctic to enhanced greenhouse forcing, we present a synthesis of these observations. Pronounced winter and spring warming over northern continents since about 1970 is partly compensated by cooling over the northern North Atlantic. Warming is also evident over the central Arctic Ocean. There is a downward tendency in sea ice extent, attended by warming and increased areal extent of the Arctic Ocean's Atlantic layer. Negative snow cover anomalies have dominated over both continents since the late 1980s and terrestrial precipitation has increased since 1900. Small Arctic glaciers have exhibited generally negative mass balances. While permafrost has warmed in Alaska and Russia, it has cooled in eastern Canada. There is evidence of increased plant growth, attended by greater shrub abundance and northward migration of the tree line. Evidence also suggests that the tundra has changed from a net sink to a net source of atmospheric carbon dioxide. Taken together, these results paint a reasonably coherent picture of change, but their interpretation as signals of enhanced greenhouse warming is open to debate. Many of the environmental records are either short, are of uncertain quality, or provide limited spatial coverage. The recent high-latitude warming is also no larger than the interdecadal temperature range during this century. Nevertheless, the general patterns of change broadly agree with model predictions. Roughly half of the pronounced recent rise in Northern Hemisphere winter temperatures reflects shifts in atmospheric circulation. However, such changes are not inconsistent with anthropogenic forcing and include generally positive phases of the North Atlantic and Arctic Oscillations and extratropical responses to the El-Niño Southern Oscillation. An anthropogenic effect is also suggested from interpretation of the paleoclimate record, which indicates that the 20th century Arctic is the warmest of the past 400 years.},
-	pages = {159--207},
-	number = {1},
-	journaltitle = {Climatic Change},
-	shortjournal = {Climatic Change},
-	author = {Serreze, M. C. and Walsh, J. E. and Chapin {III}, F. S. and Osterkamp, T. and Dyurgerov, M. and Romanovsky, V. and Oechel, W. C. and Morison, J. and Zhang, T. and Barry, R. G.},
-	date = {2000},
-	file = {Serreze et al. - 2000 - Observational Evidence of Recent Change in the Nor.pdf:C\:\\Users\\Brent Thorne\\Zotero\\storage\\A8SBW8KF\\Serreze et al. - 2000 - Observational Evidence of Recent Change in the Nor.pdf:application/pdf}
-}
-
-@article{zhang_spatial_2005,
-	title = {Spatial and temporal variability in active layer thickness over the Russian Arctic drainage basin},
-	volume = {110},
-	issn = {2156-2202},
-	url = {http://onlinelibrary.wiley.com/doi/10.1029/2004JD005642/abstract},
-	doi = {10.1029/2004JD005642},
-	abstract = {Changes in active layer thickness ({ALT}) over northern high-latitude permafrost regions have important impacts on the surface energy balance, hydrologic cycle, carbon exchange between the atmosphere and the land surface, plant growth, and ecosystems as a whole. This study examines the 20th century variations of {ALT} for the Ob, Yenisey, and Lena River basins. {ALT} is estimated from historical soil temperature measurements from 17 stations (1956–1990, Lena basin only), an annual thawing index based on both surface air temperature data (1901–2002) and numerical modeling (1980–2002). The latter two provide spatial fields. Based on the thawing index, the long-term average (1961–1990) {ALT} is about 1.87 m in the Ob, 1.67 in the Yenisey, and 1.69 m in the Lena basin. Over the past several decades, {ALT} over the three basins shows positive trends, but with different magnitudes. Based on the 17 stations, {ALT} increased about 0.32 m between 1956 and 1990 in the Lena. To the extent that results based on the soil temperatures represent ground “truth,” {ALT} obtained from both the thawing index and numerical modeling is underestimated. It is widely believed that {ALT} will increase with global warming. However, this hypothesis needs further refinement since {ALT} responds primarily to summer air temperature while observed warming has occurred mainly in winter and spring. It is also shown that {ALT} exhibits complex and inconsistent responses to variations in snow cover.},
-	pages = {D16101},
-	issue = {D16},
-	journaltitle = {Journal of Geophysical Research: Atmospheres},
-	shortjournal = {J. Geophys. Res.},
-	author = {Zhang, Tingjun and Frauenfeld, Oliver W. and Serreze, Mark C. and Etringer, Andrew and Oelke, Christoph and {McCreight}, James and Barry, Roger G. and Gilichinsky, David and Yang, Daqing and Ye, Hengchun and Ling, Feng and Chudinova, Svetlana},
-	date = {2005-08-27},
-	langid = {english},
-	keywords = {permafrost, 1823 Frozen ground, 1824 Geomorphology: general, 1834 Human impacts, 1863 Snow and ice, active layer, Russian Arctic},
-	file = {Snapshot:C\:\\Users\\Brent Thorne\\Zotero\\storage\\JFQAGW5E\\abstract.html:text/html;Zhang et al. - 2005 - Spatial and temporal variability in active layer t.pdf:C\:\\Users\\Brent Thorne\\Zotero\\storage\\5FU38XED\\Zhang et al. - 2005 - Spatial and temporal variability in active layer t.pdf:application/pdf}
-}
-
-@article{christiansen_thermal_2010,
-	title = {The thermal state of permafrost in the nordic area during the international polar year 2007-2009: Thermal state of permafrost in the Nordic area},
-	volume = {21},
-	issn = {10456740},
-	url = {http://doi.wiley.com/10.1002/ppp.687},
-	doi = {10.1002/ppp.687},
-	shorttitle = {The thermal state of permafrost in the nordic area during the international polar year 2007-2009},
-	pages = {156--181},
-	number = {2},
-	journaltitle = {Permafrost and Periglacial Processes},
-	author = {Christiansen, H. H. and Etzelmüller, B. and Isaksen, K. and Juliussen, H. and Farbrot, H. and Humlum, O. and Johansson, M. and Ingeman-Nielsen, T. and Kristensen, L. and Hjort, J. and Holmlund, P. and Sannel, A. B. K. and Sigsgaard, C. and Åkerman, H. J. and Foged, N. and Blikra, L. H. and Pernosky, M. A. and Ødegård, R. S.},
-	urldate = {2017-08-20},
-	date = {2010-04},
-	langid = {english},
-	file = {Christiansen et al. - 2010 - The thermal state of permafrost in the nordic area.pdf:C\:\\Users\\Brent Thorne\\Zotero\\storage\\LVTFFSK2\\Christiansen et al. - 2010 - The thermal state of permafrost in the nordic area.pdf:application/pdf}
-}
-
-@article{schaefer_remotely_2015,
-	title = {Remotely Sensed Active Layer Thickness ({ReSALT}) at Barrow, Alaska Using Interferometric Synthetic Aperture Radar},
-	volume = {7},
-	issn = {2072-4292},
-	url = {http://www.mdpi.com/2072-4292/7/4/3735/},
-	doi = {10.3390/rs70403735},
-	pages = {3735--3759},
-	number = {4},
-	journaltitle = {Remote Sensing},
-	author = {Schaefer, Kevin and Liu, Lin and Parsekian, Andrew and Jafarov, Elchin and Chen, Albert and Zhang, Tingjun and Gusmeroli, Alessio and Panda, Santosh and Zebker, Howard and Schaefer, Tim},
-	urldate = {2017-08-20},
-	date = {2015-03-27},
-	langid = {english},
-	file = {Schaefer et al. - 2015 - Remotely Sensed Active Layer Thickness (ReSALT) at.pdf:C\:\\Users\\Brent Thorne\\Zotero\\storage\\UJDM5XAJ\\Schaefer et al. - 2015 - Remotely Sensed Active Layer Thickness (ReSALT) at.pdf:application/pdf}
-}
-
-@thesis{riglin_perpetual_1977,
-	title = {The Perpetual Landslide, Summerland, British Columbia},
-	institution = {University of British Columbia},
-	type = {Master's Thesis},
-	author = {Riglin, Linda},
-	date = {1977-04},
-	file = {Riglin - 1977 - The Perpetual Landslide, Summerland, British Colum.pdf:C\:\\Users\\Brent Thorne\\Zotero\\storage\\M8EGSI9A\\Riglin - 1977 - The Perpetual Landslide, Summerland, British Colum.pdf:application/pdf}
-}
-
-@article{stone_even_2014,
-	title = {Even for Slide-Prone Region, Landslide Was Off the Chart},
-	volume = {344},
-	url = {http://science.sciencemag.org/content/344/6179/16.short},
-	pages = {16--17},
-	number = {6179},
-	journaltitle = {Science},
-	author = {Stone, Richard and {others}},
-	urldate = {2017-08-09},
-	date = {2014},
-	file = {Stone and others - 2014 - Even for Slide-Prone Region, Landslide Was Off the.pdf:C\:\\Users\\Brent Thorne\\Zotero\\storage\\75HGFCE7\\Stone and others - 2014 - Even for Slide-Prone Region, Landslide Was Off the.pdf:application/pdf}
-}
-
-@article{murphy_use_2016,
-	title = {Use of a Small Unmanned Aerial System for the {SR}-530 Mudslide Incident near Oso, Washington: Use of Small Unmanned Aerial System for {SR}-530 Mudslide Incident near Oso, Washington},
-	volume = {33},
-	issn = {15564959},
-	url = {http://doi.wiley.com/10.1002/rob.21586},
-	doi = {10.1002/rob.21586},
-	shorttitle = {Use of a Small Unmanned Aerial System for the {SR}-530 Mudslide Incident near Oso, Washington},
-	pages = {476--488},
-	number = {4},
-	journaltitle = {Journal of Field Robotics},
-	author = {Murphy, Robin R. and Duncan, Brittany A. and Collins, Tyler and Kendrick, Justin and Lohman, Patrick and Palmer, Tamara and Sanborn, Frank},
-	urldate = {2017-08-09},
-	date = {2016-06},
-	langid = {english},
-	file = {Murphy et al. - 2016 - Use of a Small Unmanned Aerial System for the SR-5.pdf:C\:\\Users\\Brent Thorne\\Zotero\\storage\\U2XXHRV9\\Murphy et al. - 2016 - Use of a Small Unmanned Aerial System for the SR-5.pdf:application/pdf}
-}
-
-@misc{dragovich_geologic_2003,
-	title = {Geologic Map of the Mount Higgins 7.5-minute Quadrangle, Skagit and Snohomish Counties, Washington},
-	url = {http://file.dnr.wa.gov/publications/ger_ofr2003-12_geol_map_mounthiggins_24k.pdf},
-	publisher = {Washington Department of Natural Resources},
-	type = {Topographic},
-	editora = {Dragovich,, Joe and Stanton,, Benjamin and Lingley,, William and Griesel,, Gerry},
-	editoratype = {collaborator},
-	urldate = {2017-08-09},
-	date = {2003},
-	file = {Dragovich, et al. - 2003 - Geologic Map of the Mount Higgins 7.5-minute Quadr.pdf:C\:\\Users\\Brent Thorne\\Zotero\\storage\\F4FK2QTW\\Dragovich, et al. - 2003 - Geologic Map of the Mount Higgins 7.5-minute Quadr.pdf:application/pdf}
-}
-
-@report{haugerud_preliminary_2014,
-	title = {Preliminary Interpretation of Pre-2014 Landslide Deposits in the Vicinity of Oso, Washington},
-	institution = {U.S. Geological Survey},
-	type = {U.S. Geological Survey Open-File Report},
-	author = {Haugerud, Ralph A.},
-	date = {2014},
-	langid = {english},
-	file = {Haugerud - 2014 - Preliminary Interpretation of Pre-2014 Landslide D.pdf:C\:\\Users\\Brent Thorne\\Zotero\\storage\\3R4N67B8\\Haugerud - 2014 - Preliminary Interpretation of Pre-2014 Landslide D.pdf:application/pdf}
-}
-
-@article{wartman_22_2016,
-	title = {The 22 March 2014 Oso landslide, Washington, {USA}},
-	volume = {253},
-	issn = {0169555X},
-	url = {http://linkinghub.elsevier.com/retrieve/pii/S0169555X15301860},
-	doi = {10.1016/j.geomorph.2015.10.022},
-	pages = {275--288},
-	journaltitle = {Geomorphology},
-	author = {Wartman, Joseph and Montgomery, David R. and Anderson, Scott A. and Keaton, Jeffrey R. and Benoît, Jean and dela Chapelle, John and Gilbert, Robert},
-	urldate = {2017-08-09},
-	date = {2016-01},
-	langid = {english},
-	file = {Wartman et al. - 2016 - The 22 March 2014 Oso landslide, Washington, USA.pdf:C\:\\Users\\Brent Thorne\\Zotero\\storage\\ZB3AI2DV\\Wartman et al. - 2016 - The 22 March 2014 Oso landslide, Washington, USA.pdf:application/pdf}
-}
-
-@article{goncalves_concentration_2001,
-	title = {Concentration of photosynthetic pigments and chlorophyll fluorescence of mahogany and tonka bean under two light environments},
-	volume = {13},
-	url = {http://www.scielo.br/scielo.php?pid=S0103-31312001000200004&script=sci_arttext&tlng=es},
-	pages = {149--157},
-	number = {2},
-	journaltitle = {Revista Brasileira de Fisiologia Vegetal},
-	author = {{GONÇALVES}, {JOSÉ} {FRANCISCO} {DE} {CARVALHO} and {MARENCO}, {RICARDO} {ANTONIO} and Vieira, Gil},
-	urldate = {2017-07-31},
-	date = {2001},
-	file = {GONÇALVES et al. - 2001 - Concentration of photosynthetic pigments and chlor.pdf:C\:\\Users\\Brent Thorne\\Zotero\\storage\\3AAZTFZP\\GONÇALVES et al. - 2001 - Concentration of photosynthetic pigments and chlor.pdf:application/pdf}
-}
-
-@article{lamhonwah_multi-year_2016,
-	title = {Multi-year impacts of permafrost disturbance and thermal perturbation on High Arctic stream chemistry},
-	volume = {3},
-	issn = {2368-7460},
-	url = {http://www.nrcresearchpress.com/doi/full/10.1139/as-2016-0024},
-	doi = {10.1139/as-2016-0024},
-	abstract = {Permafrost disturbances (such as active layer detachment ({ALD}) slides) and thermal perturbation (deep ground thaw from high soil temperatures) alter Arctic surface water chemistry. However, the potential multi-year impacts on water chemistry and the ultimate recovery time are not well understood. This study evaluates the impacts on surface waters and recovery following disturbance of a High Arctic catchment in 2007 from {ALDs}. We measured ion concentrations and stable isotopes in surface waters collected between 2006 and 2014 from paired catchments — one disturbed and the other not. The years 2007 and 2012 were exceptionally warm and represent unusual thermal perturbation for both catchments. Results indicate that the exposure and mobilization of soluble ions in near surface soil is a key control over dissolved ion concentrations and composition following {ALDs}. Runoff in the disturbed catchment shows increased total dissolved solute ({TDS}) concentrations and seasonal {TDS} fluxes and changes to the relative c..., Les perturbations du pergélisol (telles que les glissements causés par le détachement de la couche active ({DCA})) et la perturbation thermique (le dégel du sol en profondeur causé par des températures élevées) changent l’hydrochimie des eaux de surface dans l’Arctique. Cependant, on ne comprend pas bien les impacts potentiels de plusieurs années sur l’hydrochimie ni le temps de rétablissement final. Cette étude évalue les impacts sur les eaux de surface après la perturbation d’un bassin hydrologique du Haut-Arctique en 2007 en raison d’un {DCA} ainsi que le rétablissement. Nous avons mesuré les concentrations d’ions et les isotopes stables dans les eaux de surface recueillies entre 2006 et 2014 provenant de deux bassins hydrologiques appariés — un perturbé et l’autre non. Les années 2007 et 2012 étaient exceptionnellement chaudes et représentent une perturbation thermique inhabituelle des deux bassins hydrologiques. Les résultats indiquent que l’exposition et la mobilisation d’ions solubles dans le sol près ...},
-	pages = {254--276},
-	number = {2},
-	journaltitle = {Arctic Science},
-	shortjournal = {Arctic Science},
-	author = {Lamhonwah, Daniel and Lafrenière, M. J. and Lamoureux, S. F. and Wolfe, B. B.},
-	urldate = {2017-07-20},
-	date = {2016-12-05},
-	file = {Lamhonwah et al. - 2016 - Multi-year impacts of permafrost disturbance and t.pdf:C\:\\Users\\Brent Thorne\\Zotero\\storage\\PTR5CW5H\\Lamhonwah et al. - 2016 - Multi-year impacts of permafrost disturbance and t.pdf:application/pdf;NRC Research Press Snapshot:C\:\\Users\\Brent Thorne\\Zotero\\storage\\NCNBQGUJ\\Lamhonwah et al. - 2016 - Multi-year impacts of permafrost disturbance and t.html:text/html}
-}
-
-@article{lantz_vegetation_2017,
-	title = {Vegetation Succession and Environmental Conditions following Catastrophic Lake Drainage in Old Crow Flats, Yukon},
-	volume = {70},
-	issn = {1923-1245, 0004-0843},
-	url = {http://arctic.journalhosting.ucalgary.ca/arctic/index.php/arctic/article/view/4646},
-	doi = {10.14430/arctic4646},
-	pages = {177},
-	number = {2},
-	journaltitle = {{ARCTIC}},
-	author = {Lantz, Trevor C.},
-	urldate = {2017-07-17},
-	date = {2017-05-31},
-	file = {Lantz - 2017 - Vegetation Succession and Environmental Conditions.pdf:C\:\\Users\\Brent Thorne\\Zotero\\storage\\6HNB3ZPP\\Lantz - 2017 - Vegetation Succession and Environmental Conditions.pdf:application/pdf}
-}
-
-@article{dyke_climate_2000,
-	title = {Climate of the Mackenzie River valley},
-	volume = {547},
-	url = {https://www.researchgate.net/profile/Larry_Dyke2/publication/273380005_Climate_of_the_Mackenzie_River_valley/links/54ff4de80cf2741b69f657d0.pdf},
-	pages = {21--30},
-	journaltitle = {The Physical Environment of the Mackenzie Valley, Northwest Territories: a Baseline for the Assessment of Environmental Change. Ottawa, Ontario: Geological Survey of Canada Bulletin},
-	author = {Dyke, L. D.},
-	urldate = {2017-07-17},
-	date = {2000},
-	file = {Dyke - 2000 - Climate of the Mackenzie River valley.pdf:C\:\\Users\\Brent Thorne\\Zotero\\storage\\T27INN4F\\Dyke - 2000 - Climate of the Mackenzie River valley.pdf:application/pdf}
-}
-
-@misc{heginbottom_canada_1995,
-	title = {Canada Permafrost},
-	url = {http://ftp.geogratis.gc.ca/pub/nrcan_rncan/raster/atlas_5_ed/eng/environment/land/mcr4177.pdf},
-	publisher = {Natural Resources Canada},
-	editora = {Heginbottom, J.A.},
-	editoratype = {collaborator},
-	urldate = {2017-07-17},
-	date = {1995},
-	file = {Heginbottom - 1995 - Canada Permafrost.pdf:C\:\\Users\\Brent Thorne\\Zotero\\storage\\N83438FX\\Heginbottom - 1995 - Canada Permafrost.pdf:application/pdf}
-}
-
-@article{lantz_changes_2015,
-	title = {Changes in lake area in response to thermokarst processes and climate in Old Crow Flats, Yukon},
-	volume = {120},
-	issn = {2169-8961},
-	url = {http://onlinelibrary.wiley.com/doi/10.1002/2014JG002744/abstract},
-	doi = {10.1002/2014JG002744},
-	abstract = {Growing evidence indicates that lake-dominated ecosystems at high latitudes are undergoing significant hydrological changes. Research examining these changes is complicated because both thermokarst and climatic processes likely influence lake dynamics. To examine the relative impacts of these processes in permafrost landscapes, we investigated the dynamics of lake area and number in Old Crow Flats ({OCF}), Yukon using historical air photos and satellite imagery. Between 1951 and 2007, {OCF} experienced a decline of {\textasciitilde}6000 ha in total lake area but gained 232 lakes. Close to half (49\%) of the difference in lake area was driven by the rapid and persistent drainage of 38 large lakes. These catastrophic drainages were associated with new or enlarged outlet channels, resulted in the formation of numerous residual ponds, and were likely driven by thermokarst processes. Our analysis shows that catastrophic lake drainages have become more than 5 times more frequent in recent decades. These changes are likely related to the impacts of increased temperature and precipitation on thermokarst processes. Fifty-nine of the 170 intensively studied lakes showed either large bidirectional fluctuations or gradual cumulative declines. These changes affected a much smaller portion of {OCF} and were likely driven by interactions between increased precipitation and temperature and individual catchment characteristics. To anticipate landscape-scale changes in these systems, and assess their impact on hydrology, wildlife habitat, and carbon storage, field research is required to better characterize the mechanisms responsible for changes.},
-	pages = {2014JG002744},
-	number = {3},
-	journaltitle = {Journal of Geophysical Research: Biogeosciences},
-	shortjournal = {J. Geophys. Res. Biogeosci.},
-	author = {Lantz, T. C. and Turner, K. W.},
-	date = {2015-03-01},
-	langid = {english},
-	keywords = {permafrost, 0497 Wetlands, 0475 Permafrost, cryosphere, and high-latitude processes, 0480 Remote sensing, 1807 Climate impacts, air photos, global change, thermokarst},
-	file = {Lantz and Turner - 2015 - Changes in lake area in response to thermokarst pr.pdf:C\:\\Users\\Brent Thorne\\Zotero\\storage\\N8IK6QTM\\Lantz and Turner - 2015 - Changes in lake area in response to thermokarst pr.pdf:application/pdf}
-}
-
-@unpublished{bouchard_isotopic_2013,
-	location = {Ottawa, {ON}},
-	title = {Isotopic evidence for recent hydrological shifts in source waters of shallow lakes in northern freshwater landscapes.},
-	abstract = {In northern Canada, shallow-lake-rich freshwater landscapes provide key habitat for many wildlife species and play a vital role in the traditional use of the land by local indigenous communities. Changes in precipitation have the potential to substantially alter the hydrological conditions of these shallow lakes. Here we compare multiple years of measurements of lake water oxygen isotope composition (δ18Omes) with surface sediment cellulose-inferred lake water oxygen isotope composition (δ18Oinf) for {\textasciitilde}80 lakes in two of Canada’s largest lake-rich thermokarst landscapes – Old Crow Flats ({OCF}), Yukon, and western Hudson Bay Lowlands ({HBL}), Manitoba. Results reveal a strikingly coherent pattern of recent hydrological change in these two landscapes. In {OCF}, δ18Oinf values from snowmelt-dominated lakes align reasonably well with the 2007-2008 δ18Omes values from the early ice-free season, as expected. In contrast, δ18Oinf from rainfall-dominated lakes are systematically lower (i.e., more 18O-depleted) relative to δ18Omes. Climate data indicate that the winter of 2007-08 had markedly lower snowfall compared to the long-term mean, whereas winters immediately prior to our water sample collections were characterized by snowfall equal to or greater than the long-term mean. Thus, we speculate that the isotopic offset between δ18Oinf and δ18Omes for some of the lakes is due to a shift to more rainfall-dominated precipitation. Similar results have been obtained from lakes in {HBL}. Here too, about 40\% of the sampled lakes contain δ18Oinf values that are lower than δ18Omes values from 2010-2012, which may also reflect a recent shift to more rainfall-dominated precipitation. These findings suggest that some lakes in our study areas received less snowmelt during the water sampling years in comparison to the time interval captured in the surface-sediments. Notably, a few lakes in {HBL} lost all of their water to evaporation during mid-summer 2010, fuelling concerns that reduction in snowmelt and an increase in the length of the ice-free season in these landscapes may lead to an increase in the occurrence of lake desiccation.},
-	type = {Conference},
-	howpublished = {Conference},
-	note = {{PALS} 2013},
-	author = {Bouchard, Frederic},
-	editora = {Deakin, C. and Turner, Kevin W. and White, H.E. and Macdonald, Lauren and Medeiros, Andrew and Wolfe, Brent B. and Hall, Roland I. and Pienitz, Reinhard},
-	editoratype = {collaborator},
-	date = {2013},
-	file = {Bouchard - 2013 - Isotopic evidence for recent hydrological shifts i.pdf:C\:\\Users\\Brent Thorne\\Zotero\\storage\\ISPJ397I\\Bouchard - 2013 - Isotopic evidence for recent hydrological shifts i.pdf:application/pdf}
-}
-
-@book{reeuwijk_procedures_2002,
-	location = {Wageningen},
-	edition = {6. ed},
-	title = {Procedures for soil analysis},
-	isbn = {978-90-6672-044-2},
-	series = {Technical paper / International Soil Reference an Information Centre},
-	number = {9},
-	publisher = {International Soil Reference and Information Centre},
-	author = {Reeuwijk, L. P. van},
-	date = {2002},
-	note = {{OCLC}: 248862095},
-	file = {Reeuwijk - 2002 - Procedures for soil analysis.pdf:C\:\\Users\\Brent Thorne\\Zotero\\storage\\TRHHI2KR\\Reeuwijk - 2002 - Procedures for soil analysis.pdf:application/pdf}
-}
-
-@article{consortium_global_2017,
-	title = {A global multiproxy database for temperature reconstructions of the Common Era},
-	volume = {4},
-	rights = {2017 Nature Publishing Group},
-	issn = {2052-4463},
-	url = {https://www.nature.com/articles/sdata201788},
-	doi = {10.1038/sdata.2017.88},
-	abstract = {Data Descriptor},
-	pages = {sdata201788},
-	journaltitle = {Scientific Data},
-	author = {Consortium, {PAGES}2k and Emile-Geay, Julien and {McKay}, Nicholas P. and Kaufman, Darrell S. and Gunten, Lucien von and Wang, Jianghao and Anchukaitis, Kevin J. and Abram, Nerilie J. and Addison, Jason A. and Curran, Mark A. J. and Evans, Michael N. and Henley, Benjamin J. and Hao, Zhixin and Martrat, Belen and {McGregor}, Helen V. and Neukom, Raphael and Pederson, Gregory T. and Stenni, Barbara and Thirumalai, Kaustubh and Werner, Johannes P. and Xu, Chenxi and Divine, Dmitry V. and Dixon, Bronwyn C. and Gergis, Joelle and Mundo, Ignacio A. and Nakatsuka, Takeshi and Phipps, Steven J. and Routson, Cody C. and Steig, Eric J. and Tierney, Jessica E. and Tyler, Jonathan J. and Allen, Kathryn J. and Bertler, Nancy A. N. and Björklund, Jesper and Chase, Brian M. and Chen, Min-Te and Cook, Ed and Jong, Rixt de and {DeLong}, Kristine L. and Dixon, Daniel A. and Ekaykin, Alexey A. and Ersek, Vasile and Filipsson, Helena L. and Francus, Pierre and Freund, Mandy B. and Frezzotti, Massimo and Gaire, Narayan P. and Gajewski, Konrad and Ge, Quansheng and Goosse, Hugues and Gornostaeva, Anastasia and Grosjean, Martin and Horiuchi, Kazuho and Hormes, Anne and Husum, Katrine and Isaksson, Elisabeth and Kandasamy, Selvaraj and Kawamura, Kenji and Kilbourne, K. Halimeda and Koç, Nalan and Leduc, Guillaume and Linderholm, Hans W. and Lorrey, Andrew M. and Mikhalenko, Vladimir and Mortyn, P. Graham and Motoyama, Hideaki and Moy, Andrew D. and Mulvaney, Robert and Munz, Philipp M. and Nash, David J. and Oerter, Hans and Opel, Thomas and Orsi, Anais J. and Ovchinnikov, Dmitriy V. and Porter, Trevor J. and Roop, Heidi A. and Saenger, Casey and Sano, Masaki and Sauchyn, David and Saunders, Krystyna M. and Seidenkrantz, Marit-Solveig and Severi, Mirko and Shao, Xuemei and Sicre, Marie-Alexandrine and Sigl, Michael and Sinclair, Kate and George, Scott St and Jacques, Jeannine-Marie St and Thamban, Meloth and Thapa, Udya Kuwar and Thomas, Elizabeth R. and Turney, Chris and Uemura, Ryu and Viau, Andre E. and Vladimirova, Diana O. and Wahl, Eugene R. and White, James W. C. and Yu, Zicheng and Zinke, Jens},
-	urldate = {2017-07-12},
-	date = {2017-07-11},
-	langid = {english},
-	file = {Consortium et al. - 2017 - A global multiproxy database for temperature recon.pdf:C\:\\Users\\Brent Thorne\\Zotero\\storage\\V9X5BRUF\\Consortium et al. - 2017 - A global multiproxy database for temperature recon.pdf:application/pdf;Snapshot:C\:\\Users\\Brent Thorne\\Zotero\\storage\\GCREN8I7\\Consortium et al. - 2017 - A global multiproxy database for temperature recon.html:text/html}
-}
-
-@article{walvoord_increased_2007,
-	title = {Increased groundwater to stream discharge from permafrost thawing in the Yukon River basin: Potential impacts on lateral export of carbon and nitrogen},
-	volume = {34},
-	issn = {0094-8276},
-	url = {http://doi.wiley.com/10.1029/2007GL030216},
-	doi = {10.1029/2007GL030216},
-	shorttitle = {Increased groundwater to stream discharge from permafrost thawing in the Yukon River basin},
-	number = {12},
-	journaltitle = {Geophysical Research Letters},
-	author = {Walvoord, Michelle A. and Striegl, Robert G.},
-	urldate = {2017-07-12},
-	date = {2007-06-28},
-	langid = {english},
-	file = {Walvoord and Striegl - 2007 - Increased groundwater to stream discharge from per.pdf:C\:\\Users\\Brent Thorne\\Zotero\\storage\\K9HFZCT5\\Walvoord and Striegl - 2007 - Increased groundwater to stream discharge from per.pdf:application/pdf}
-}
-
-@article{tunaley_scaling_2017,
-	title = {Scaling effects of riparian peatlands on stable isotopes in runoff and {DOC} mobilisation},
-	volume = {549},
-	issn = {00221694},
-	url = {http://linkinghub.elsevier.com/retrieve/pii/S0022169417301956},
-	doi = {10.1016/j.jhydrol.2017.03.056},
-	pages = {220--235},
-	journaltitle = {Journal of Hydrology},
-	author = {Tunaley, C. and Tetzlaff, D. and Soulsby, C.},
-	urldate = {2017-07-12},
-	date = {2017-06},
-	langid = {english},
-	file = {Tunaley et al. - 2017 - Scaling effects of riparian peatlands on stable is.pdf:C\:\\Users\\Brent Thorne\\Zotero\\storage\\473I62RG\\Tunaley et al. - 2017 - Scaling effects of riparian peatlands on stable is.pdf:application/pdf}
-}
-
-@article{wissel_new_2008,
-	title = {A new approach for the isolation of cellulose from aquatic plant tissue and freshwater sediments for stable isotope analysis},
-	volume = {39},
-	issn = {01466380},
-	url = {http://linkinghub.elsevier.com/retrieve/pii/S0146638008002398},
-	doi = {10.1016/j.orggeochem.2008.07.014},
-	pages = {1545--1561},
-	number = {11},
-	journaltitle = {Organic Geochemistry},
-	author = {Wissel, Holger and Mayr, Christoph and Lücke, Andreas},
-	urldate = {2017-07-12},
-	date = {2008-11},
-	langid = {english},
-	file = {Wissel et al. - 2008 - A new approach for the isolation of cellulose from.pdf:C\:\\Users\\Brent Thorne\\Zotero\\storage\\C88UXPZF\\Wissel et al. - 2008 - A new approach for the isolation of cellulose from.pdf:application/pdf}
-}
-
-@book{speer_fundamentals_2010,
-	location = {Tucson},
-	title = {Fundamentals of tree-ring research},
-	isbn = {978-0-8165-2684-0},
-	pagetotal = {333},
-	publisher = {University of Arizona Press},
-	author = {Speer, James H.},
-	date = {2010},
-	note = {{OCLC}: ocn460061751},
-	keywords = {Dendrochronology, Growth, Tree-rings, Trees, Wood},
-	file = {Speer - 2010 - Fundamentals of tree-ring research.pdf:C\:\\Users\\Brent Thorne\\Zotero\\storage\\ZUQ5JRRD\\Speer - 2010 - Fundamentals of tree-ring research.pdf:application/pdf}
-}
-
-@article{arnon_copper_1949,
-	title = {Copper enzymes in isolated chloroplasts. Polyphenoloxidase in Beta vulgaris},
-	volume = {24},
-	url = {https://www.ncbi.nlm.nih.gov/pmc/articles/pmc437905/},
-	pages = {1},
-	number = {1},
-	journaltitle = {Plant physiology},
-	author = {Arnon, Daniel I.},
-	urldate = {2017-07-12},
-	date = {1949},
-	file = {Plant Physiology (Arnon, 1948).pdf:C\:\\Users\\Brent Thorne\\Zotero\\storage\\B28EETIK\\Plant Physiology (Arnon, 1948).pdf:application/pdf}
-}
-
-@inproceedings{shibghatallah_measuring_2013,
-	title = {Measuring leaf chlorophyll concentration from its color: A way in monitoring environment change to plantations},
-	volume = {1554},
-	url = {http://aip.scitation.org/doi/abs/10.1063/1.4820322},
-	shorttitle = {Measuring leaf chlorophyll concentration from its color},
-	pages = {210--213},
-	booktitle = {{AIP} Conference Proceedings},
-	publisher = {{AIP}},
-	author = {Shibghatallah, Muhammad Abdul Hakim and Khotimah, Siti Nurul and Suhandono, Sony and Viridi, Sparisoma and Kesuma, Teja},
-	urldate = {2017-07-12},
-	date = {2013},
-	file = {Measuring Leaf Chlorophyll Concentration from Its Color.pdf:C\:\\Users\\Brent Thorne\\Zotero\\storage\\ZV5ZSSFP\\Measuring Leaf Chlorophyll Concentration from Its Color.pdf:application/pdf}
-}
-
-@article{balasubramaniam_source_2015,
-	title = {Source water inputs and catchment characteristics regulate limnological conditions of shallow subarctic lakes (Old Crow Flats, Yukon, Canada)},
-	volume = {72},
-	issn = {0706-652X, 1205-7533},
-	url = {http://www.nrcresearchpress.com/doi/10.1139/cjfas-2014-0340},
-	doi = {10.1139/cjfas-2014-0340},
-	pages = {1058--1072},
-	number = {7},
-	journaltitle = {Canadian Journal of Fisheries and Aquatic Sciences},
-	author = {Balasubramaniam, Ann M. and Hall, Roland I. and Wolfe, Brent B. and Sweetman, Jon N. and Wang, Xiaowa and Smith, Ralph},
-	urldate = {2017-07-11},
-	date = {2015-07},
-	langid = {english},
-	file = {Balasubramaniam et al. - 2015 - Source water inputs and catchment characteristics .pdf:C\:\\Users\\Brent Thorne\\Zotero\\storage\\6AHUH3SG\\Balasubramaniam et al. - 2015 - Source water inputs and catchment characteristics .pdf:application/pdf}
-}
-
-@article{ahmed_hierarchical_2017,
-	title = {Hierarchical land cover and vegetation classification using multispectral data acquired from an unmanned aerial vehicle},
-	volume = {38},
-	pages = {2037--2052},
-	number = {8},
-	journaltitle = {International Journal of Remote Sensing},
-	author = {Ahmed, Oumer S. and Shemrock, Adam and Chabot, Dominique and Dillon, Chris and Williams, Griffin and Wasson, Rachel and Franklin, Steven E.},
-	date = {2017},
-	file = {Ahmed et al. - 2017 - Hierarchical land cover and vegetation classificat.pdf:C\:\\Users\\Brent Thorne\\Zotero\\storage\\IVAKQGUK\\Ahmed et al. - 2017 - Hierarchical land cover and vegetation classificat.pdf:application/pdf}
-}
-
-@thesis{myers-smith_shrub_2011,
-	title = {Shrub encroachment in arctic and alpine tundra: Patterns of expansion and ecosystem impacts.},
-	url = {https://era.library.ualberta.ca/files/df65v836z},
-	shorttitle = {Shrub encroachment in arctic and alpine tundra},
-	type = {phdthesis},
-	author = {Myers-Smith, Isla H.},
-	urldate = {2017-07-11},
-	date = {2011},
-	file = {Myers-Smith - 2011 - Shrub encroachment in arctic and alpine tundra Pa.pdf:C\:\\Users\\Brent Thorne\\Zotero\\storage\\3T9BCR66\\Myers-Smith - 2011 - Shrub encroachment in arctic and alpine tundra Pa.pdf:application/pdf}
-}
-
-@thesis{blok_shrubs_nodate,
-	title = {Shrubs in the cold: interactions between vegetation, permafrost and climate in Siberian tundra},
-	shorttitle = {Shrubs in the cold},
-	pagetotal = {152},
-	type = {phdthesis},
-	author = {Blok, Daan},
-	note = {{OCLC}: 930839610},
-	file = {Blok - Shrubs in the cold interactions between vegetatio.pdf:C\:\\Users\\Brent Thorne\\Zotero\\storage\\5XSARGGZ\\Blok - Shrubs in the cold interactions between vegetatio.pdf:application/pdf}
-}
-
-@article{schwartz_dating_2005,
-	title = {Dating the Growth of Oceanic Crust at a Slow-Spreading Ridge},
-	volume = {310},
-	issn = {0036-8075, 1095-9203},
-	url = {http://www.sciencemag.org/cgi/doi/10.1126/science.1116349},
-	doi = {10.1126/science.1116349},
-	pages = {654--657},
-	number = {5748},
-	journaltitle = {Science},
-	author = {Schwartz, J. J.},
-	urldate = {2017-07-11},
-	date = {2005-10-28},
-	langid = {english},
-	file = {Schwartz - 2005 - Dating the Growth of Oceanic Crust at a Slow-Sprea.pdf:C\:\\Users\\Brent Thorne\\Zotero\\storage\\GUADV58E\\Schwartz - 2005 - Dating the Growth of Oceanic Crust at a Slow-Sprea.pdf:application/pdf}
-}
-
-@article{castilla_we_2016,
-	title = {We Must all Pay More Attention to Rigor in Accuracy Assessment: Additional Comment to “The Improvement of Land Cover Classification by Thermal Remote Sensing”. Remote Sens. 2015, 7, 8368–8390},
-	volume = {8},
-	issn = {2072-4292},
-	url = {http://www.mdpi.com/2072-4292/8/4/288},
-	doi = {10.3390/rs8040288},
-	shorttitle = {We Must all Pay More Attention to Rigor in Accuracy Assessment},
-	pages = {288},
-	number = {4},
-	journaltitle = {Remote Sensing},
-	author = {Castilla, Guillermo},
-	urldate = {2017-07-11},
-	date = {2016-03-26},
-	langid = {english},
-	file = {Castilla - 2016 - We Must all Pay More Attention to Rigor in Accurac.pdf:C\:\\Users\\Brent Thorne\\Zotero\\storage\\V9PG28IA\\Castilla - 2016 - We Must all Pay More Attention to Rigor in Accurac.pdf:application/pdf}
-}
-
-@article{wolfe_environmental_2011,
-	title = {Environmental change and traditional use of the Old Crow Flats in northern Canada: an {IPY} opportunity to meet the challenges of the new northern research paradigm},
-	volume = {64},
-	url = {http://search.proquest.com/openview/09405a4d127d9f97d6eb37ae2598ef8b/1?pq-origsite=gscholar&cbl=40958},
-	shorttitle = {Environmental change and traditional use of the Old Crow Flats in northern Canada},
-	pages = {127},
-	number = {1},
-	journaltitle = {Arctic},
-	author = {Wolfe, Brent B. and Humphries, Murray M. and Pisaric, Michael FJ and Balasubramaniam, Ann M. and Burn, Chris R. and Chan, Laurie and Cooley, Dorothy and Froese, Duane G. and Graupe, Shel and Hall, Roland I. and {others}},
-	urldate = {2017-07-11},
-	date = {2011},
-	file = {Wolfe et al. - 2011 - Environmental change and traditional use of the Ol.pdf:C\:\\Users\\Brent Thorne\\Zotero\\storage\\ZPA2CX36\\Wolfe et al. - 2011 - Environmental change and traditional use of the Ol.pdf:application/pdf}
-}
-
-@article{turner_characterizing_2010,
-	title = {Characterizing the role of hydrological processes on lake water balances in the Old Crow Flats, Yukon Territory, Canada, using water isotope tracers},
-	volume = {386},
-	issn = {00221694},
-	url = {http://linkinghub.elsevier.com/retrieve/pii/S0022169410001381},
-	doi = {10.1016/j.jhydrol.2010.03.012},
-	pages = {103--117},
-	number = {1},
-	journaltitle = {Journal of Hydrology},
-	author = {Turner, Kevin W. and Wolfe, Brent B. and Edwards, Thomas W.D.},
-	urldate = {2017-07-11},
-	date = {2010-05},
-	langid = {english},
-	file = {Turner 2010 Characterising the role of hydrological process - OCF.pdf:C\:\\Users\\Brent Thorne\\Zotero\\storage\\CBN6I3K8\\Turner 2010 Characterising the role of hydrological process - OCF.pdf:application/pdf}
-}
-
-@article{sturm_changing_2005,
-	title = {Changing snow and shrub conditions affect albedo with global implications},
-	volume = {110},
-	issn = {0148-0227},
-	url = {http://doi.wiley.com/10.1029/2005JG000013},
-	doi = {10.1029/2005JG000013},
-	issue = {G1},
-	journaltitle = {Journal of Geophysical Research},
-	author = {Sturm, Matthew},
-	urldate = {2017-07-11},
-	date = {2005},
-	langid = {english},
-	file = {Sturm - 2005 - Changing snow and shrub conditions affect albedo w.pdf:C\:\\Users\\Brent Thorne\\Zotero\\storage\\4MWJX3K3\\Sturm - 2005 - Changing snow and shrub conditions affect albedo w.pdf:application/pdf}
-}
-
-@article{sturm_snowshrub_2001,
-	title = {Snow–shrub interactions in Arctic tundra: a hypothesis with climatic implications},
-	volume = {14},
-	url = {http://journals.ametsoc.org/doi/abs/10.1175/1520-0442(2001)014%3C0336:SSIIAT%3E2.0.CO%3B2},
-	shorttitle = {Snow–shrub interactions in Arctic tundra},
-	pages = {336--344},
-	number = {3},
-	journaltitle = {Journal of Climate},
-	author = {Sturm, Matthew and Holmgren, Jon and {McFadden}, Joseph P. and Liston, Glen E. and Chapin {III}, F. Stuart and Racine, Charles H.},
-	urldate = {2017-07-11},
-	date = {2001},
-	file = {Sturm et al. - 2001 - Snow–shrub interactions in Arctic tundra a hypoth.pdf:C\:\\Users\\Brent Thorne\\Zotero\\storage\\UKAKDNPV\\Sturm et al. - 2001 - Snow–shrub interactions in Arctic tundra a hypoth.pdf:application/pdf}
-}
-
-@article{blok_shrub_2010,
-	title = {Shrub expansion may reduce summer permafrost thaw in Siberian tundra},
-	volume = {16},
-	issn = {13541013, 13652486},
-	url = {http://doi.wiley.com/10.1111/j.1365-2486.2009.02110.x},
-	doi = {10.1111/j.1365-2486.2009.02110.x},
-	pages = {1296--1305},
-	number = {4},
-	journaltitle = {Global Change Biology},
-	author = {Blok, D. and Heijmans, M. M. P. D. and Schaepman-Strub, G. and Kononov, A. V. and Maximov, T. C. and Berendse, F.},
-	urldate = {2017-07-11},
-	date = {2010-04},
-	langid = {english},
-	file = {Blok et al. - 2010 - Shrub expansion may reduce summer permafrost thaw .pdf:C\:\\Users\\Brent Thorne\\Zotero\\storage\\35FI3H4X\\Blok et al. - 2010 - Shrub expansion may reduce summer permafrost thaw .pdf:application/pdf}
-}
-
-@article{beck_corrigendum:_2012,
-	title = {Corrigendum: Satellite observations of high northern latitude vegetation productivity changes between 1982 and 2008: ecological variability and regional differences},
-	volume = {7},
-	issn = {1748-9326},
-	url = {http://stacks.iop.org/1748-9326/7/i=2/a=029501?key=crossref.71b082981f4be8dfd192909a1eabddbf},
-	doi = {10.1088/1748-9326/7/2/029501},
-	shorttitle = {Corrigendum},
-	pages = {029501},
-	number = {2},
-	journaltitle = {Environmental Research Letters},
-	author = {Beck, Pieter S A and Goetz, Scott J},
-	urldate = {2017-07-11},
-	date = {2012-06-01},
-	file = {Beck and Goetz - 2012 - Corrigendum Satellite observations of high northe.pdf:C\:\\Users\\Brent Thorne\\Zotero\\storage\\4RRV3R4Z\\Beck and Goetz - 2012 - Corrigendum Satellite observations of high northe.pdf:application/pdf}
-}
-
-@article{paradis_greater_2016,
-	title = {Greater effect of increasing shrub height on winter versus summer soil temperature},
-	volume = {11},
-	issn = {1748-9326},
-	url = {http://stacks.iop.org/1748-9326/11/i=8/a=085005?key=crossref.7b7752b09481fb6d33045327abdd3395},
-	doi = {10.1088/1748-9326/11/8/085005},
-	pages = {085005},
-	number = {8},
-	journaltitle = {Environmental Research Letters},
-	author = {Paradis, Mélissa and Lévesque, Esther and Boudreau, Stéphane},
-	urldate = {2017-07-11},
-	date = {2016-08-01},
-	file = {Paradis et al. - 2016 - Greater effect of increasing shrub height on winte.pdf:C\:\\Users\\Brent Thorne\\Zotero\\storage\\HCJANEGX\\Paradis et al. - 2016 - Greater effect of increasing shrub height on winte.pdf:application/pdf}
-}
-
-@article{naito_patterns_2011,
-	title = {Patterns and processes of global shrub expansion},
-	volume = {35},
-	issn = {0309-1333, 1477-0296},
-	url = {http://journals.sagepub.com/doi/10.1177/0309133311403538},
-	doi = {10.1177/0309133311403538},
-	pages = {423--442},
-	number = {4},
-	journaltitle = {Progress in Physical Geography},
-	author = {Naito, Adam T. and Cairns, David M.},
-	urldate = {2017-07-11},
-	date = {2011-08},
-	langid = {english},
-	file = {Naito and Cairns - 2011 - Patterns and processes of global shrub expansion.pdf:C\:\\Users\\Brent Thorne\\Zotero\\storage\\5G8NZ9QP\\Naito and Cairns - 2011 - Patterns and processes of global shrub expansion.pdf:application/pdf}
-}
-
-@article{myers-smith_shrub_2011-1,
-	title = {Shrub expansion in tundra ecosystems: dynamics, impacts and research priorities},
-	volume = {6},
-	issn = {1748-9326},
-	url = {http://stacks.iop.org/1748-9326/6/i=4/a=045509?key=crossref.3e2b3e3172ca6f9fc39a607c137b880f},
-	doi = {10.1088/1748-9326/6/4/045509},
-	shorttitle = {Shrub expansion in tundra ecosystems},
-	pages = {045509},
-	number = {4},
-	journaltitle = {Environmental Research Letters},
-	author = {Myers-Smith, Isla H and Forbes, Bruce C and Wilmking, Martin and Hallinger, Martin and Lantz, Trevor and Blok, Daan and Tape, Ken D and Macias-Fauria, Marc and Sass-Klaassen, Ute and Lévesque, Esther and Boudreau, Stéphane and Ropars, Pascale and Hermanutz, Luise and Trant, Andrew and Collier, Laura Siegwart and Weijers, Stef and Rozema, Jelte and Rayback, Shelly A and Schmidt, Niels Martin and Schaepman-Strub, Gabriela and Wipf, Sonja and Rixen, Christian and Ménard, Cécile B and Venn, Susanna and Goetz, Scott and Andreu-Hayles, Laia and Elmendorf, Sarah and Ravolainen, Virve and Welker, Jeffrey and Grogan, Paul and Epstein, Howard E and Hik, David S},
-	urldate = {2017-07-11},
-	date = {2011-12-01},
-	file = {Myers-Smith et al. - 2011 - Shrub expansion in tundra ecosystems dynamics, im.pdf:C\:\\Users\\Brent Thorne\\Zotero\\storage\\GRPDSF39\\Myers-Smith et al. - 2011 - Shrub expansion in tundra ecosystems dynamics, im.pdf:application/pdf}
-}
-
-@article{loranty_tundra_2011,
-	title = {Tundra vegetation effects on pan-Arctic albedo},
-	volume = {6},
-	issn = {1748-9326},
-	url = {http://stacks.iop.org/1748-9326/6/i=2/a=029601?key=crossref.2e8808c62dac2c1672cede1d420f86fa},
-	doi = {10.1088/1748-9326/6/2/029601},
-	pages = {029601},
-	number = {2},
-	journaltitle = {Environmental Research Letters},
-	author = {Loranty, Michael M and Goetz, Scott J and Beck, Pieter S A},
-	urldate = {2017-07-11},
-	date = {2011-06-01},
-	file = {Loranty et al. - 2011 - Tundra vegetation effects on pan-Arctic albedo.pdf:C\:\\Users\\Brent Thorne\\Zotero\\storage\\CG2CSWIX\\Loranty et al. - 2011 - Tundra vegetation effects on pan-Arctic albedo.pdf:application/pdf}
-}
-
-@article{liston_modelled_2002,
-	title = {Modelled changes in arctic tundra snow, energy and moisture fluxes due to increased shrubs},
-	volume = {8},
-	url = {http://onlinelibrary.wiley.com/doi/10.1046/j.1354-1013.2001.00416.x/full},
-	pages = {17--32},
-	number = {1},
-	journaltitle = {Global Change Biology},
-	author = {Liston, Glen E. and Mcfadden, Joseph P. and Sturm, Matthew and Pielke, Roger A.},
-	urldate = {2017-07-11},
-	date = {2002},
-	file = {Liston et al. - 2002 - Modelled changes in arctic tundra snow, energy and.pdf:C\:\\Users\\Brent Thorne\\Zotero\\storage\\2H8GSEDM\\Liston et al. - 2002 - Modelled changes in arctic tundra snow, energy and.pdf:application/pdf}
-}
-
-@article{lantz_response_2010,
-	title = {Response of green alder (Alnus viridis subsp. fruticosa) patch dynamics and plant community composition to fire and regional temperature in north-western Canada: Response of vegetation to fire and regional climate},
-	issn = {03050270, 13652699},
-	url = {http://doi.wiley.com/10.1111/j.1365-2699.2010.02317.x},
-	doi = {10.1111/j.1365-2699.2010.02317.x},
-	shorttitle = {Response of green alder (Alnus viridis subsp. fruticosa) patch dynamics and plant community composition to fire and regional temperature in north-western Canada},
-	pages = {no--no},
-	journaltitle = {Journal of Biogeography},
-	author = {Lantz, Trevor C. and Gergel, Sarah E. and Henry, Greg H. R.},
-	urldate = {2017-07-11},
-	date = {2010-05},
-	langid = {english},
-	file = {Lantz et al. - 2010 - Response of green alder (Alnus viridis subsp. frut.pdf:C\:\\Users\\Brent Thorne\\Zotero\\storage\\U473UEV5\\Lantz et al. - 2010 - Response of green alder (Alnus viridis subsp. frut.pdf:application/pdf}
-}
-
-@article{lantz_relative_2009,
-	title = {Relative impacts of disturbance and temperature: persistent changes in microenvironment and vegetation in retrogressive thaw slumps},
-	volume = {15},
-	issn = {13541013, 13652486},
-	url = {http://doi.wiley.com/10.1111/j.1365-2486.2009.01917.x},
-	doi = {10.1111/j.1365-2486.2009.01917.x},
-	shorttitle = {Relative impacts of disturbance and temperature},
-	pages = {1664--1675},
-	number = {7},
-	journaltitle = {Global Change Biology},
-	author = {Lantz, Trevor C. and Kokelj, Steven V. and Gergel, Sarah E. and Henry, Greg H. R.},
-	urldate = {2017-07-11},
-	date = {2009-07},
-	langid = {english},
-	file = {Lantz et al. - 2009 - Relative impacts of disturbance and temperature p.pdf:C\:\\Users\\Brent Thorne\\Zotero\\storage\\7KFTF2Z5\\Lantz et al. - 2009 - Relative impacts of disturbance and temperature p.pdf:application/pdf}
-}
-
-@article{korosi_broad-scale_2017,
-	title = {Broad-scale lake expansion and flooding inundates essential wood bison habitat},
-	volume = {8},
-	issn = {2041-1723},
-	url = {http://www.nature.com/doifinder/10.1038/ncomms14510},
-	doi = {10.1038/ncomms14510},
-	pages = {14510},
-	journaltitle = {Nature Communications},
-	author = {Korosi, Jennifer B. and Thienpont, Joshua R. and Pisaric, Michael F. J. and {deMontigny}, Peter and Perreault, Joelle T. and {McDonald}, Jamylynn and Simpson, Myrna J. and Armstrong, Terry and Kokelj, Steven V. and Smol, John P. and Blais, Jules M.},
-	urldate = {2017-07-11},
-	date = {2017-02-23},
-	file = {Korosi et al. - 2017 - Broad-scale lake expansion and flooding inundates .pdf:C\:\\Users\\Brent Thorne\\Zotero\\storage\\8J5JH3BH\\Korosi et al. - 2017 - Broad-scale lake expansion and flooding inundates .pdf:application/pdf}
-}
-
-@article{hallinger_establishing_2010,
-	title = {Establishing a missing link: warm summers and winter snow cover promote shrub expansion into alpine tundra in Scandinavia},
-	volume = {186},
-	issn = {0028646X},
-	url = {http://doi.wiley.com/10.1111/j.1469-8137.2010.03223.x},
-	doi = {10.1111/j.1469-8137.2010.03223.x},
-	shorttitle = {Establishing a missing link},
-	pages = {890--899},
-	number = {4},
-	journaltitle = {New Phytologist},
-	author = {Hallinger, Martin and Manthey, Michael and Wilmking, Martin},
-	urldate = {2017-07-11},
-	date = {2010-06},
-	langid = {english},
-	file = {Hallinger et al. - 2010 - Establishing a missing link warm summers and wint.pdf:C\:\\Users\\Brent Thorne\\Zotero\\storage\\T2IXWH6W\\Hallinger et al. - 2010 - Establishing a missing link warm summers and wint.pdf:application/pdf}
-}
-
-@article{johnstone_environmental_2008,
-	title = {Environmental conditions and vegetation recovery at abandoned drilling mud sumps in the Mackenzie Delta region, Northwest Territories, Canada},
-	url = {http://www.jstor.org/stable/40513206},
-	pages = {199--211},
-	journaltitle = {Arctic},
-	author = {Johnstone, Jill F. and Kokelj, Steven V.},
-	urldate = {2017-07-11},
-	date = {2008},
-	file = {Johnstone and Kokelj - 2008 - Environmental conditions and vegetation recovery a.pdf:C\:\\Users\\Brent Thorne\\Zotero\\storage\\PUAK44TF\\Johnstone and Kokelj - 2008 - Environmental conditions and vegetation recovery a.pdf:application/pdf}
-}
-
-@article{kemper_directional_2009,
-	title = {Directional change in upland tundra plant communities 20-30 years after seismic exploration in the Canadian low-arctic},
-	volume = {20},
-	url = {http://onlinelibrary.wiley.com/doi/10.1111/j.1654-1103.2009.01069.x/full},
-	pages = {557--567},
-	number = {3},
-	journaltitle = {Journal of Vegetation Science},
-	author = {Kemper, J. Todd and Macdonald, S. Ellen},
-	urldate = {2017-07-11},
-	date = {2009},
-	file = {Kemper and Macdonald - 2009 - Directional change in upland tundra plant communit.pdf:C\:\\Users\\Brent Thorne\\Zotero\\storage\\SEJPMQPM\\Kemper and Macdonald - 2009 - Directional change in upland tundra plant communit.pdf:application/pdf}
-}
-
-@article{dial_changes_2007,
-	title = {Changes in the alpine forest-tundra ecotone commensurate with recent warming in southcentral Alaska: Evidence from orthophotos and field plots: {TREE} {LINE} {CHANGES} {IN} {SOUTHCENTRAL} {ALASKA}},
-	volume = {112},
-	issn = {01480227},
-	url = {http://doi.wiley.com/10.1029/2007JG000453},
-	doi = {10.1029/2007JG000453},
-	shorttitle = {Changes in the alpine forest-tundra ecotone commensurate with recent warming in southcentral Alaska},
-	pages = {n/a--n/a},
-	issue = {G4},
-	journaltitle = {Journal of Geophysical Research: Biogeosciences},
-	author = {Dial, Roman J. and Berg, Edward E. and Timm, Katriina and {McMahon}, Alissa and Geck, Jason},
-	urldate = {2017-07-11},
-	date = {2007-12},
-	langid = {english},
-	file = {Dial et al. - 2007 - Changes in the alpine forest-tundra ecotone commen.pdf:C\:\\Users\\Brent Thorne\\Zotero\\storage\\NV4FKNGN\\Dial et al. - 2007 - Changes in the alpine forest-tundra ecotone commen.pdf:application/pdf}
-}
-
-@article{dahlgren_age_2016,
-	title = {Age distributions of Greenlandic dwarf shrubs support concept of negligible actuarial senescence},
-	volume = {7},
-	issn = {21508925},
-	url = {http://doi.wiley.com/10.1002/ecs2.1521},
-	doi = {10.1002/ecs2.1521},
-	pages = {e01521},
-	number = {10},
-	journaltitle = {Ecosphere},
-	author = {Dahlgren, Johan P. and Rizzi, Silvia and Schweingruber, Fritz H. and Hellmann, Lena and Büntgen, Ulf},
-	urldate = {2017-07-11},
-	date = {2016-10},
-	langid = {english},
-	file = {Dahlgren_et_al-2016-Ecosphere.pdf:C\:\\Users\\Brent Thorne\\Zotero\\storage\\7G34882A\\Dahlgren_et_al-2016-Ecosphere.pdf:application/pdf}
-}
-
-@article{fraser_uav_2016,
-	title = {{UAV} photogrammetry for mapping vegetation in the low-Arctic},
-	volume = {2},
-	issn = {2368-7460},
-	url = {http://www.nrcresearchpress.com/doi/10.1139/as-2016-0008},
-	doi = {10.1139/as-2016-0008},
-	pages = {79--102},
-	number = {3},
-	journaltitle = {Arctic Science},
-	author = {Fraser, Robert H. and Olthof, Ian and Lantz, Trevor C. and Schmitt, Carla},
-	urldate = {2017-07-11},
-	date = {2016-09},
-	langid = {english},
-	file = {Fraser et al. - 2016 - UAV photogrammetry for mapping vegetation in the l.pdf:C\:\\Users\\Brent Thorne\\Zotero\\storage\\RBZXGWB9\\Fraser et al. - 2016 - UAV photogrammetry for mapping vegetation in the l.pdf:application/pdf}
-}
-
-@article{anisimov_arctic_2017,
-	title = {Arctic Ecosystems and their Services Under Changing Climate: Predictive-Modeling Assessment},
-	volume = {107},
-	url = {http://onlinelibrary.wiley.com/doi/10.1111/j.1931-0846.2016.12199.x/full},
-	shorttitle = {Arctic Ecosystems and their Services Under Changing Climate},
-	pages = {108--124},
-	number = {1},
-	journaltitle = {Geographical Review},
-	author = {Anisimov, Oleg and Kokorev, Vasily and Zhiltcova, Yelena},
-	urldate = {2017-07-11},
-	date = {2017},
-	file = {Arctic Ecosystems and Their Services Under Changing Climate.pdf:C\:\\Users\\Brent Thorne\\Zotero\\storage\\FQBTGIAK\\Arctic Ecosystems and Their Services Under Changing Climate.pdf:application/pdf}
-}
-
-@article{militino_stochastic_2017,
-	title = {Stochastic Spatio-Temporal Models for Analysing {NDVI} Distribution of {GIMMS} {NDVI}3g Images},
-	volume = {9},
-	issn = {2072-4292},
-	url = {http://www.mdpi.com/2072-4292/9/1/76},
-	doi = {10.3390/rs9010076},
-	pages = {76},
-	number = {1},
-	journaltitle = {Remote Sensing},
-	author = {Militino, Ana and Ugarte, Maria and Pérez-Goya, Unai},
-	urldate = {2017-07-11},
-	date = {2017-01-15},
-	langid = {english},
-	file = {Militino et al. - 2017 - Stochastic Spatio-Temporal Models for Analysing ND.pdf:C\:\\Users\\Brent Thorne\\Zotero\\storage\\TPPXSR5G\\Militino et al. - 2017 - Stochastic Spatio-Temporal Models for Analysing ND.pdf:application/pdf}
-}
-
-@article{moffat_recent_2016,
-	title = {Recent Vegetation Change (1980–2013) in the Tundra Ecosystems of the Tuktoyaktuk Coastlands, {NWT}, Canada},
-	volume = {48},
-	issn = {1523-0430, 1938-4246},
-	url = {http://www.bioone.org/doi/10.1657/AAAR0015-063},
-	doi = {10.1657/AAAR0015-063},
-	pages = {581--597},
-	number = {3},
-	journaltitle = {Arctic, Antarctic, and Alpine Research},
-	author = {Moffat, Nina D. and Lantz, Trevor C. and Fraser, Robert H. and Olthof, Ian},
-	urldate = {2017-07-11},
-	date = {2016-08},
-	langid = {english},
-	file = {Moffat et al. - 2016 - Recent Vegetation Change (1980–2013) in the Tundra.pdf:C\:\\Users\\Brent Thorne\\Zotero\\storage\\IJJ8UXS6\\Moffat et al. - 2016 - Recent Vegetation Change (1980–2013) in the Tundra.pdf:application/pdf}
-}
-
-@article{pattison_trends_2015,
-	title = {Trends in {NDVI} and Tundra Community Composition in the Arctic of {NE} Alaska Between 1984 and 2009},
-	volume = {18},
-	issn = {1432-9840, 1435-0629},
-	url = {http://link.springer.com/10.1007/s10021-015-9858-9},
-	doi = {10.1007/s10021-015-9858-9},
-	pages = {707--719},
-	number = {4},
-	journaltitle = {Ecosystems},
-	author = {Pattison, Robert R. and Jorgenson, Janet C. and Raynolds, Martha K. and Welker, Jeffery M.},
-	urldate = {2017-07-11},
-	date = {2015-06},
-	langid = {english},
-	file = {Pattison et al. - 2015 - Trends in NDVI and Tundra Community Composition in.pdf:C\:\\Users\\Brent Thorne\\Zotero\\storage\\M4GT9EHE\\Pattison et al. - 2015 - Trends in NDVI and Tundra Community Composition in.pdf:application/pdf}
-}
-
-@article{greaves_estimating_2015,
-	title = {Estimating aboveground biomass and leaf area of low-stature Arctic shrubs with terrestrial {LiDAR}},
-	volume = {164},
-	issn = {00344257},
-	url = {http://linkinghub.elsevier.com/retrieve/pii/S0034425715000826},
-	doi = {10.1016/j.rse.2015.02.023},
-	pages = {26--35},
-	journaltitle = {Remote Sensing of Environment},
-	author = {Greaves, Heather E. and Vierling, Lee A. and Eitel, Jan U.H. and Boelman, Natalie T. and Magney, Troy S. and Prager, Case M. and Griffin, Kevin L.},
-	urldate = {2017-07-11},
-	date = {2015-07},
-	langid = {english},
-	file = {Greaves et al. - 2015 - Estimating aboveground biomass and leaf area of lo.pdf:C\:\\Users\\Brent Thorne\\Zotero\\storage\\6IN4XJHA\\Greaves et al. - 2015 - Estimating aboveground biomass and leaf area of lo.pdf:application/pdf}
-}
-
-@article{olofsson_good_2014,
-	title = {Good practices for estimating area and assessing accuracy of land change},
-	volume = {148},
-	issn = {00344257},
-	url = {http://linkinghub.elsevier.com/retrieve/pii/S0034425714000704},
-	doi = {10.1016/j.rse.2014.02.015},
-	pages = {42--57},
-	journaltitle = {Remote Sensing of Environment},
-	author = {Olofsson, Pontus and Foody, Giles M. and Herold, Martin and Stehman, Stephen V. and Woodcock, Curtis E. and Wulder, Michael A.},
-	urldate = {2017-07-11},
-	date = {2014-05},
-	langid = {english},
-	file = {Olofsson et al. - 2014 - Good practices for estimating area and assessing a.pdf:C\:\\Users\\Brent Thorne\\Zotero\\storage\\MA5FKWXJ\\Olofsson et al. - 2014 - Good practices for estimating area and assessing a.pdf:application/pdf}
-}
-
-@article{wulder_lidar_2012,
-	title = {Lidar sampling for large-area forest characterization: A review},
-	volume = {121},
-	issn = {00344257},
-	url = {http://linkinghub.elsevier.com/retrieve/pii/S0034425712000855},
-	doi = {10.1016/j.rse.2012.02.001},
-	shorttitle = {Lidar sampling for large-area forest characterization},
-	pages = {196--209},
-	journaltitle = {Remote Sensing of Environment},
-	author = {Wulder, Michael A. and White, Joanne C. and Nelson, Ross F. and Næsset, Erik and Ørka, Hans Ole and Coops, Nicholas C. and Hilker, Thomas and Bater, Christopher W. and Gobakken, Terje},
-	urldate = {2017-07-11},
-	date = {2012-06},
-	langid = {english},
-	file = {Wulder et al. - 2012 - Lidar sampling for large-area forest characterizat.pdf:C\:\\Users\\Brent Thorne\\Zotero\\storage\\ARMF4NBB\\Wulder et al. - 2012 - Lidar sampling for large-area forest characterizat.pdf:application/pdf}
-}
-
-@article{porter_temperature-growth_2011,
-	title = {Temperature-growth divergence in white spruce forests of Old Crow Flats, Yukon Territory, and adjacent regions of northwestern North America},
-	volume = {17},
-	issn = {13541013},
-	url = {http://doi.wiley.com/10.1111/j.1365-2486.2011.02507.x},
-	doi = {10.1111/j.1365-2486.2011.02507.x},
-	pages = {3418--3430},
-	number = {11},
-	journaltitle = {Global Change Biology},
-	author = {Porter, Trevor J. and Pisaric, Michael F. J.},
-	urldate = {2017-07-11},
-	date = {2011-11},
-	langid = {english},
-	file = {Porter and Pisaric - 2011 - Temperature-growth divergence in white spruce fore.pdf:C\:\\Users\\Brent Thorne\\Zotero\\storage\\23CCN7BK\\Porter and Pisaric - 2011 - Temperature-growth divergence in white spruce fore.pdf:application/pdf}
-}
-
-@article{white_food_2007,
-	title = {Food and water security in a changing arctic climate},
-	volume = {2},
-	issn = {1748-9326},
-	url = {http://stacks.iop.org/1748-9326/2/i=4/a=045018?key=crossref.d4de7703f8707536a0c7fa3cf28caf94},
-	doi = {10.1088/1748-9326/2/4/045018},
-	pages = {045018},
-	number = {4},
-	journaltitle = {Environmental Research Letters},
-	author = {White, Daniel M and Craig Gerlach, S and Loring, Philip and Tidwell, Amy C and Chambers, Molly C},
-	urldate = {2017-07-11},
-	date = {2007-10},
-	file = {White et al. - 2007 - Food and water security in a changing arctic clima.pdf:C\:\\Users\\Brent Thorne\\Zotero\\storage\\UGI5NDKN\\White et al. - 2007 - Food and water security in a changing arctic clima.pdf:application/pdf}
-}
-
-@incollection{simpson_human_2012,
-	location = {Dordrecht},
-	title = {Human Impacts: Applications of Numerical Methods to Evaluate Surface-Water Acidification and Eutrophication},
-	volume = {5},
-	isbn = {978-94-007-2744-1 978-94-007-2745-8},
-	url = {http://link.springer.com/10.1007/978-94-007-2745-8},
-	series = {Developments in Paleoenvironmental Research},
-	pages = {579--614},
-	booktitle = {Tracking Environmental Change Using Lake Sediments},
-	publisher = {Springer Netherlands},
-	author = {Simpson, George L. and Hall, Roland I.},
-	editor = {Birks, H. John B. and Juggins, Steve and Smol, John P.},
-	urldate = {2017-07-11},
-	date = {2012},
-	doi = {10.1007/978-94-007-2745-8},
-	file = {Simpson and Hall - 2012 - Human Impacts Applications of Numerical Methods t.pdf:C\:\\Users\\Brent Thorne\\Zotero\\storage\\Z9CEMCUB\\Simpson and Hall - 2012 - Human Impacts Applications of Numerical Methods t.pdf:application/pdf}
-}
-
-@collection{birks_tracking_2012,
-	location = {Dordrecht},
-	title = {Tracking Environmental Change Using Lake Sediments},
-	volume = {5},
-	isbn = {978-94-007-2744-1 978-94-007-2745-8},
-	url = {http://link.springer.com/10.1007/978-94-007-2745-8},
-	series = {Developments in Paleoenvironmental Research},
-	publisher = {Springer Netherlands},
-	editor = {Birks, H. John B. and Lotter, André F. and Juggins, Steve and Smol, John P.},
-	urldate = {2017-07-11},
-	date = {2012},
-	doi = {10.1007/978-94-007-2745-8},
-	file = {Birks et al. - 2012 - Tracking Environmental Change Using Lake Sediments.pdf:C\:\\Users\\Brent Thorne\\Zotero\\storage\\J7KIKFJ7\\Birks et al. - 2012 - Tracking Environmental Change Using Lake Sediments.pdf:application/pdf}
-}
\ No newline at end of file
diff --git a/inst/rmarkdown/templates/posterdown_pdf/skeleton/skeleton.Rmd b/inst/rmarkdown/templates/posterdown_pdf/skeleton/skeleton.Rmd
deleted file mode 100644
index 23f6dc1..0000000
--- a/inst/rmarkdown/templates/posterdown_pdf/skeleton/skeleton.Rmd
+++ /dev/null
@@ -1,118 +0,0 @@
----
-# PLEASE SEE THE README for in depth description github.com/brentthorne/posterdown
-#
-#---POSTER SIZE & DEFAULT FONT---#
-poster_height: "38in" # height in inches of poster
-poster_width: "45in" # width in inches of poster
-font_family: "palatino" # choose from typical latex fonts (example: "palatino")
-font_size: "30pt" #please see github.com/brentthorne/posterdown for compatible options.
-
-#---TITLE BOX OPTIONS---#
-#ESSENTIALS
-title: '\fontfamily{phv}\selectfont Using posterdown to generate reproducible conference posters via RMarkdown > Knitr > Markdown > Pandoc > Latex > PDF workflow'
-author: "Author One^1^ Author Two^2^"
-affiliation: "^1^Department of Poster Layouts, University of Markdown; ^2^Deparment of Another Institution, Institution University"
-#STYLE & FORMATTING
-titlebox_bgcol: "008080"  #Colour of the Title Box background
-titlebox_bordercol: "0b4545" #Colour of the title Box border.
-titlebox_shape: "all"
-titlebox_borderwidth: "1cm"
-title_textcol: "ffffff" #colour of title text
-author_textcol: "0b4545" # Colour of author text
-affiliation_textcol: "FFFFFF" # Colour of affiliation text
-title_textsize: "Huge"         # Poster title fontsize
-author_textsize: "Large"       # Author list font size
-affiliation_textsize: "large"  # Affiliation font size
-#ADDING LOGOS
-logoleft_name: 'Figures/posterdownlogo'
-logoleft_width: '3in'
-logoleft_xshift: '1in'
-logoleft_yshift: '1in'
-logoright_name: 'Figures/posterdownlogo'
-logoright_width: '3in'
-logoright_xshift: '-1in'
-logoright_yshift: '1in'
-
-#---POSTER BODY OPTIONS---#
-body_bgcol: "ffffff" #colour of the poster main background
-body_textsize: "normalsize"    # Size of the main poster body text
-body_textcol: "000000" # Colour of main text in the body of poster
-column_numbers: 4 # Number of columns that the poster has
-column_margins: "0.5in" # Margin spacing for columns
-columnline_col: "008080" #colour 
-columnline_width: "0pt" #width of line between each column
-#SECTION TITLE STYLING
-sectitle_textcol: "ffffff" # Colour of the poster section titles
-sectitle_bgcol: "0b4545" # Colour of the section title box
-sectitle_bordercol: "0b4545" # Colour of the border around the section title box.
-sectitle_borderwidth: "2mm" # Thicknes of the section title box border
-sectitle_boxshape: "uphill" # Changes the shape of the section title box.
-
-#---BIBLIOGRAPHY OPTIONS---#
-bibliography: MyLibrary # name of the .bib file used for referencing
-bibliography_spacing: 0.8 # sets the multiplier for line spacing of bibliography spacing (between 0 and 1)
-bibliography_textsize: "small"  # size of the bibliography text size (handy for one too many references!)
-
-#---OTHER---#
-cite_col: "CC0000" #colour of ciation elements
-url_col: "008080" #colour of url links
-link_col: "008080" #colour of other links within the poster
-footnote_textcol: "ffffff" # Colour of footnote text if used
-output: posterdown::posterdown_pdf
----
-
-```{r setup, include=FALSE}
-knitr::opts_chunk$set(
-  results = 'asis',
-  echo = FALSE,
-  comment = FALSE,
-  warning = FALSE,
-  message = FALSE,
-  fig.align = 'center'
-)
-```
-
-# Introduction
-
-Welcome to `posterdown` ! This is my attempt to provide a semi-smooth workflow for those who wish to take their R Markdown skills to the conference world. Most features from R Markdown are available in this package such as Markdown section notation, figure captioning, and even citations like this one [@rmarkdown]. The rest of this example poster will show how you can insert typical conference poster features into your own document. 
-
-## Objectives
-
-1. Easy to use reproducible poster design. 
-2. Integration with R Markdown.
-3. Easy transition from `posterdown` to `thesisdown` or `rticles` [@rticles; @thesisdown].
-
-# Methods
-
-This package uses the same workflow approach as the R Markdown you know and love. Basically it goes from RMarkdown > Knitr > Markdown > Pandoc > HTML/CSS > PDF. You can even use the bibliography the same way [@turnerControlsWaterBalance2014].
-
-## Random text
-
-Lorem ipsum dolor sit amet, consectetur adipiscing elit. Aliquam placerat augue at velit tincidunt semper. Donec elementum porta posuere. Nullam interdum, odio at tincidunt feugiat, turpis nisi blandit eros, eu posuere risus felis non quam. Nam eget lorem odio. Duis et aliquet orci. Phasellus nec viverra est. Praesent odio orci, mattis vel mauris nec, consectetur fermentum mauris. Etiam eu hendrerit tortor. Donec mi tellus, efficitur et porttitor eu, auctor eu tellus. Quisque faucibus vestibulum sapien vel lacinia. Ut auctor lorem non interdum blandit.
-
-# Results
-
-Usually you want to have a nice table displaying some important results that you have calculated. In `posterdown` this is as easy as using the `kable` table formatting you are probably use to as per typical R Markdown formatting. I suggesting checking out the `kableExtra` package and its in depth documentation on customizing these tables found [here](https://haozhu233.github.io/kableExtra/awesome_table_in_pdf.pdf) [@kableExtra2019]. You can reference tables like so: Table \@ref(tab:mytable).
-
-```{r mytable, out.width='80%'}
-knitr::kable(iris[1:5, 1:4], caption = 'Table caption.',align = 'c',"html")
-```
-
-Or with figures: Figure \@ref(fig:standard-plot).
-
-```{r standard-plot, out.width='80%', fig.align='center', echo=TRUE, fig.cap='Great figure!'}
-plot(mtcars[1:2])
-```
-
-
-# Next Steps: More random text
-
-Lorem ipsum dolor sit amet, consectetur adipiscing elit. Aliquam placerat augue at velit tincidunt semper. Donec elementum porta posuere. Nullam interdum, odio at tincidunt feugiat, turpis nisi blandit eros, eu posuere risus felis non quam. Nam eget lorem odio. Duis et aliquet orci. Phasellus nec viverra est. Praesent odio orci, mattis vel mauris nec, consectetur fermentum mauris. Etiam eu hendrerit tortor. Donec mi tellus, efficitur et porttitor eu, auctor eu tellus. Quisque faucibus vestibulum sapien vel lacinia. Ut auctor lorem non interdum blandit.
-
-Aliquam sed faucibus risus, quis efficitur erat. Vestibulum semper mauris quis tempus eleifend. Aliquam sagittis dictum ipsum, quis viverra ligula eleifend ut. Curabitur sagittis vitae arcu eget faucibus. In non elementum felis. Duis et aliquam nunc. Nunc pulvinar sapien nunc, vel pretium nisi efficitur in. Fusce fringilla maximus leo et maximus. Fusce at ligula laoreet, iaculis mi at, auctor odio. Praesent sed elementum justo. Aenean consectetur risus rhoncus tincidunt efficitur. Praesent dictum mauris at diam maximus maximus [@thorneposterdown2019].
-
-# Conclusion
-
-Try `posterdown` out! Hopefully you like it!
-
-# References
diff --git a/inst/rmarkdown/templates/posterdown_pdf/template.yaml b/inst/rmarkdown/templates/posterdown_pdf/template.yaml
deleted file mode 100644
index 3fba43a..0000000
--- a/inst/rmarkdown/templates/posterdown_pdf/template.yaml
+++ /dev/null
@@ -1,4 +0,0 @@
-name: Posterdown PDF (Legacy)
-description: >
- Template for creating R Markdown based PDF via LaTeX. Legacy Option, no updates past Feb 6 2019.
-create_dir: true
diff --git a/man/posterdown.Rd b/man/posterdown.Rd
index 23e759e..b75eab2 100644
--- a/man/posterdown.Rd
+++ b/man/posterdown.Rd
@@ -23,11 +23,6 @@
 Creates an R Markdown template for a PDF poster document via HTML
 }
 
-\section{posterdown_latex}{
-
-Creates an R Markdown template for a PDF poster document via LaTeX
-}
-
 \author{
 Brent Thorne
 }
diff --git a/man/posterdown_latex.Rd b/man/posterdown_latex.Rd
deleted file mode 100644
index 8ae907c..0000000
--- a/man/posterdown_latex.Rd
+++ /dev/null
@@ -1,31 +0,0 @@
-% Generated by roxygen2: do not edit by hand
-% Please edit documentation in R/posterdown_latex.R
-\name{posterdown_latex}
-\alias{posterdown_latex}
-\alias{posterdown_pdf}
-\title{Posterdown LaTeX format (using Memoir LaTeX document class)}
-\usage{
-posterdown_latex(..., keep_tex = TRUE)
-
-posterdown_pdf(..., keep_tex = TRUE)
-}
-\arguments{
-\item{...}{Additional arguments to \code{rmarkdown::pdf_document}}
-
-\item{keep_tex}{Keep the intermediate tex file used in the conversion to PDF}
-}
-\value{
-R Markdown output format to pass to
-\code{\link[rmarkdown:render]{rmarkdown::render()}}
-}
-\description{
-Legacy function for the OG's of posterdown.
-This will remain untouched from here on out (Feb 6 2019).
-}
-\examples{
-
-\dontrun{
-library(rmarkdown)
-draft("MyArticle.Rmd", template = "posterdown_pdf", package = "posterdown")
-}
-}
