---
title: "SETTLEMENT GAZETTEER OF EASTERN AND PACIFIC SIBERIA."
subtitle: "Archaeological Sites, Fortified Towns, and Urban Centres of the Yenisei, Lena-Kolyma, and Pacific Basins (10000BC - 1900AD)."
date: "8 November 2026"
authors_line: "Aust Kätzchen"
emails:
  - austkaeztchen@confoederatio.org
hero_figure: "figures/fig1_eastern_siberia_basins_map.png"
hero_caption: "Second-Order Regions (II-1 to IV-3 after Chernykh et al. 2022), River Basins, Administrative Boundaries, and Key Archaeological and Historical Settlements of Eastern and Pacific Siberia."
hero_label: "fig:hero"
bibliography: siberia_yenisei_lena_kolyma_pacific_literature_review.bib
csl: crd-mla-numeric.csl
link-citations: true
output:
  pdf_document:
    template: ../../../../core/rticles/intellte/resources/template.tex
    latex_engine: xelatex
    keep_tex: false
---

```{r setup, include=FALSE}
source("../../../../core/framework/R/framework_init.R")
```


```{r load-json, include=FALSE}
library(jsonlite)
library(knitr)

gaz_data <- jsonlite::fromJSON("siberia_yenisei_lena_kolyma_pacific_settlements.json", simplifyVector = FALSE)

subreg_map <- c(
  "Shamanka II-Russia" = "II-1",
  "Lokomotiv-Russia" = "II-1",
  "Ust-Ida I-Russia" = "II-1",
  "Khuzhir-Nuge XIV-Russia" = "II-1",
  "Kurma XI-Russia" = "II-1",
  "Sagan-Zaba II-Russia" = "II-1",
  "Gorelyi Les-Russia" = "II-1",
  "Ust-Belaia-Russia" = "II-1",
  "Studenoe-Russia" = "II-1",
  "Ivolga Fortress-Russia" = "II-1",
  "Nizhnyaya Ivolga-Russia" = "II-1",
  "Bayangol-Russia" = "II-1",
  "Dyrestui-Russia" = "II-1",
  "Ilmovaya Pad-Russia" = "II-1",
  "Cheremukhovaya Pad-Russia" = "II-1",
  "Burkhan-Tolgoi-Russia" = "II-1",
  "Dureny I-Russia" = "II-1",
  "Nizhnemangirtuyskoe-Russia" = "II-1",
  "Mankhay I-Russia" = "II-1",
  "Mankhay II-Russia" = "II-1",
  "Khura-Khobok-Russia" = "II-1",
  "Ulan-Bor-Russia" = "II-1",
  "Shga-Toyon-Russia" = "II-1",
  "Irkutsk-Russia" = "II-1",
  "Verkholensk-Russia" = "II-1",
  "Balagansk-Russia" = "II-1",
  "Nizhneudinsk-Russia" = "II-1",
  "Cheremkhovo-Russia" = "II-1",
  "Zima-Russia" = "II-1",
  "Tulun-Russia" = "II-1",
  "Kultuk-Russia" = "II-1",
  "Listvyanka-Russia" = "II-1",
  "Verkhneudinsk-Russia" = "II-1",
  "Selenginsk-Russia" = "II-1",
  "Troitskosavsk-Russia" = "II-1",
  "Petrovskiy Zavod-Russia" = "II-1",
  "Kabansk-Russia" = "II-1",
  "Barguzin-Russia" = "II-1",
  "Tunka-Russia" = "II-1",
  "Chita-Russia" = "II-1",
  "Aksha-Russia" = "II-1",
  "Afontova Gora-Russia" = "II-2",
  "Toora-Dash-Russia" = "II-2",
  "Afanasyevo Gora-Russia" = "II-2",
  "Okunev Ulus-Russia" = "II-2",
  "Sukhanikha-Russia" = "II-2",
  "Kamenny Log-Russia" = "II-2",
  "Karasuk I-Russia" = "II-2",
  "Torgazhak-Russia" = "II-2",
  "Lugavskoye-Russia" = "II-2",
  "Tagar Island-Russia" = "II-2",
  "Salbyk-Russia" = "II-2",
  "Erbek-Russia" = "II-2",
  "Bidzha-Russia" = "II-2",
  "Oglakhty-Russia" = "II-2",
  "Arzhan-1-Russia" = "II-2",
  "Arzhan-2-Russia" = "II-2",
  "Tunnug-1-Russia" = "II-2",
  "Chinge-Tei-Russia" = "II-2",
  "Por-Bajin-Russia" = "II-2",
  "Shagonar I-Russia" = "II-2",
  "Shagonar III-Russia" = "II-2",
  "Bazhyn-Alaak-Russia" = "II-2",
  "Uybatsky Gorodok-Russia" = "II-2",
  "Kopensky Chaatas-Russia" = "II-2",
  "Krasnoyarsk-Russia" = "II-2",
  "Minusinsk-Russia" = "II-2",
  "Abakan-Russia" = "II-2",
  "Askiz-Russia" = "II-2",
  "Achinsk-Russia" = "II-2",
  "Kansk-Russia" = "II-2",
  "Shushenskoye-Russia" = "II-2",
  "Karatuzskoye-Russia" = "II-2",
  "Kuragino-Russia" = "II-2",
  "Usinskoye-Russia" = "II-2",
  "Turan-Russia" = "II-2",
  "Tagenar VI-Russia" = "II-3",
  "Abylaakh-1-Russia" = "II-3",
  "Maimecha-1-Russia" = "II-3",
  "Pyasina Foundry-Russia" = "II-3",
  "Ust-Kova-Russia" = "II-3",
  "Tsepan-Russia" = "II-3",
  "Kazachka-Russia" = "II-3",
  "Yeniseysk-Russia" = "II-3",
  "Turukhansk-Russia" = "II-3",
  "Dudinka-Russia" = "II-3",
  "Khatanga-Russia" = "II-3",
  "Kazachinskoye-Russia" = "II-3",
  "Bratsk-Russia" = "II-3",
  "Ilimsk-Russia" = "II-3",
  "Ust-Kut-Russia" = "II-3",
  "Kirensk-Russia" = "II-3",
  "Dyuktai Cave-Russia" = "III-1",
  "Belkachi I-Russia" = "III-1",
  "Sumnagin I-Russia" = "III-1",
  "Ust-Timpton-Russia" = "III-1",
  "Ust-Mil II-Russia" = "III-1",
  "Bodaibo-Russia" = "III-1",
  "Vitim-Russia" = "III-1",
  "Amga-Russia" = "III-1",
  "Ust-Maya-Russia" = "III-1",
  "Tommot-Russia" = "III-1",
  "Ymyyakhtakh-Russia" = "III-2",
  "Kullaty-Russia" = "III-2",
  "Siktyakh-Russia" = "III-2",
  "Sayylyk-Russia" = "III-2",
  "Ayyy-Taybyt-Russia" = "III-2",
  "Kulun-Atakh-Russia" = "III-2",
  "Sytygan-Sysy-Russia" = "III-2",
  "Yakutsk-Russia" = "III-2",
  "Olekminsk-Russia" = "III-2",
  "Vilyuysk-Russia" = "III-2",
  "Nyurba-Russia" = "III-2",
  "Suntar-Russia" = "III-2",
  "Churapcha-Russia" = "III-2",
  "Pokrovsk-Russia" = "III-2",
  "Zhokhov-Russia" = "III-3",
  "Burkhala-Russia" = "III-3",
  "Rodinka II-Russia" = "III-3",
  "Verkhoyansk-Russia" = "III-3",
  "Zashiversk-Russia" = "III-3",
  "Srednekolymsk-Russia" = "III-3",
  "Nizhnekolymsk-Russia" = "III-3",
  "Ust-Yansk-Russia" = "III-3",
  "Bulun-Russia" = "III-3",
  "Oymyakon-Russia" = "III-3",
  "Gasya-Russia" = "IV-1",
  "Khummi-Russia" = "IV-1",
  "Goncharka-1-Russia" = "IV-1",
  "Suchu Island-Russia" = "IV-1",
  "Kondon-Pochtovoye-Russia" = "IV-1",
  "Voznesenovka-Russia" = "IV-1",
  "Malyshevo-Russia" = "IV-1",
  "Kalinovka-Russia" = "IV-1",
  "Osinovoye Ozero-Russia" = "IV-1",
  "Uritskoye-Russia" = "IV-1",
  "Kukelevo-Russia" = "IV-1",
  "Poltse I-Russia" = "IV-1",
  "Troitskoye-Russia" = "IV-1",
  "Naifeld-Russia" = "IV-1",
  "Boisman-1-Russia" = "IV-1",
  "Boisman-2-Russia" = "IV-1",
  "Chertovy Vorota-Russia" = "IV-1",
  "Rudnaya Pristan-Russia" = "IV-1",
  "Zaisanovka-1-Russia" = "IV-1",
  "Valentin-Peresheyek-Russia" = "IV-1",
  "Siniy Gai-Russia" = "IV-1",
  "Krounovka-1-Russia" = "IV-1",
  "Bogolyubovka-1-Russia" = "IV-1",
  "Peschany-1-Russia" = "IV-1",
  "Malaya Podushechka-Russia" = "IV-1",
  "Slavyanka-1-Russia" = "IV-1",
  "Bulochka-Russia" = "IV-1",
  "Kraskinskoye-Russia" = "IV-1",
  "Koksharovka-1-Russia" = "IV-1",
  "Maryanovka-Russia" = "IV-1",
  "Novogordeyevskoye-Russia" = "IV-1",
  "Gorbatka-Russia" = "IV-1",
  "Nikolayevskoye-1-Russia" = "IV-1",
  "Yuzhno-Ussuriyskoye-Russia" = "IV-1",
  "Krasnoyarovskoye-Russia" = "IV-1",
  "Shayginskoye-Russia" = "IV-1",
  "Ananyevskoye-Russia" = "IV-1",
  "Lazovskoye-Russia" = "IV-1",
  "Ekaterinovskoye-Russia" = "IV-1",
  "Skalistoye-Russia" = "IV-1",
  "Chuguyevskoye-Russia" = "IV-1",
  "Novopokrovskoye-Russia" = "IV-1",
  "Albazin-Russia" = "IV-1",
  "Guigudar-Russia" = "IV-1",
  "Kumarsky Ostrog-Russia" = "IV-1",
  "Nerchinsk-Russia" = "IV-1",
  "Nerchinskiy Zavod-Russia" = "IV-1",
  "Sretensk-Russia" = "IV-1",
  "Shilka-Russia" = "IV-1",
  "Blagoveshchensk-Russia" = "IV-1",
  "Zeya-Russia" = "IV-1",
  "Khabarovsk-Russia" = "IV-1",
  "Sofiysk-Russia" = "IV-1",
  "Mariinsk-na-Amure-Russia" = "IV-1",
  "Nikolayevsk-on-Amur-Russia" = "IV-1",
  "Bikin-Russia" = "IV-1",
  "Iman-Russia" = "IV-1",
  "Spasskoye-Russia" = "IV-1",
  "Nikolsk-Ussuriyskiy-Russia" = "IV-1",
  "Razdolnoye-Russia" = "IV-1",
  "Posyet-Russia" = "IV-1",
  "Olga-Russia" = "IV-1",
  "Vladivostok-Russia" = "IV-1",
  "Ushki I-Russia" = "IV-2",
  "Ushki V-Russia" = "IV-2",
  "Avacha-Russia" = "IV-2",
  "Targay-Russia" = "IV-2",
  "Zhupanovo-Russia" = "IV-2",
  "Kamaki-Russia" = "IV-2",
  "Imchin-Russia" = "IV-2",
  "Starodubskoye-2-Russia" = "IV-2",
  "Susuya-Russia" = "IV-2",
  "Svobodnoye-Russia" = "IV-2",
  "Promyslovoye-Russia" = "IV-2",
  "Yuzhno-Kurilsk Midden-Russia" = "IV-2",
  "Kurilskoe Ozero-Russia" = "IV-2",
  "Okhotsk-Russia" = "IV-2",
  "Udskoye-Russia" = "IV-2",
  "Ayan-Russia" = "IV-2",
  "Verkhnekamchatsk-Russia" = "IV-2",
  "Nizhnekamchatsk-Russia" = "IV-2",
  "Bolsheretsk-Russia" = "IV-2",
  "Tigil-Russia" = "IV-2",
  "Petropavlovsk-Kamchatskiy-Russia" = "IV-2",
  "Nikolskoye-Russia" = "IV-2",
  "Aleksandrovskiy Post-Russia" = "IV-2",
  "Rykovskoye-Russia" = "IV-2",
  "Korsakov-Russia" = "IV-2",
  "Vladimirovka-Russia" = "IV-2",
  "Ust-Belaia Chukotka-Russia" = "IV-3",
  "Chirovoe-Russia" = "IV-3",
  "Pegtymel-Russia" = "IV-3",
  "Uelen-Russia" = "IV-3",
  "Ekven-Russia" = "IV-3",
  "Enmynytnyn-Russia" = "IV-3",
  "Chini-Russia" = "IV-3",
  "Birnirk-Russia" = "IV-3",
  "Sireniki-Russia" = "IV-3",
  "Naukan-Russia" = "IV-3",
  "Chaplino-Russia" = "IV-3",
  "Anadyrsk-Russia" = "IV-3",
  "Markovo-Russia" = "IV-3",
  "Gizhiginsk-Russia" = "IV-3",
  "Penzhino-Russia" = "IV-3",
  "Novo-Mariinsk-Russia" = "IV-3"
)

fmt_num <- function(x) {
  if (is.null(x) || is.na(x)) return("-")
  format(as.integer(x), big.mark = " ", decimal.mark = ",", scientific = FALSE, trim = TRUE)
}

fmt_coord <- function(lat, lon) {
  ns <- ifelse(lat >= 0, "N", "S")
  ew <- ifelse(lon >= 0, "E", "W")
  paste0(
    format(round(abs(lat), 2), nsmall = 2, decimal.mark = ","), "°", ns, " ",
    format(round(abs(lon), 2), nsmall = 2, decimal.mark = ","), "°", ew
  )
}

fmt_year <- function(y) {
  yi <- as.integer(y)
  if (yi < 0) {
    paste0(abs(yi), "BC")
  } else {
    paste0(yi, "AD")
  }
}

wrap_long_tokens <- function(txt) {
  if (!knitr::is_latex_output()) return(txt)
  tokens <- strsplit(txt, " ", fixed = TRUE)[[1]]
  out <- vapply(tokens, function(w) {
    if (nchar(w) <= 10) return(w)
    chars <- strsplit(w, "", fixed = TRUE)[[1]]
    res <- character(0)
    for (i in seq_along(chars)) {
      res <- c(res, chars[i])
      if (i %% 6 == 0 && i < length(chars) - 2 && chars[i] != "-" && chars[i + 1] != "-") {
        res <- c(res, "\\-")
      }
    }
    paste(res, collapse = "")
  }, character(1))
  paste(out, collapse = " ")
}

build_subregion_df <- function(subreg_code) {
  keys <- names(gaz_data)[subreg_map[names(gaz_data)] == subreg_code]
  rows <- lapply(keys, function(k) {
    s <- gaz_data[[k]]
    p_list <- s$population
    yrs <- as.integer(names(p_list))
    vals <- as.integer(unlist(p_list))
    ord <- order(yrs)
    yrs <- yrs[ord]
    vals <- vals[ord]

    start_yr <- yrs[1]
    end_yr <- yrs[length(yrs)]
    span_str <- ifelse(start_yr == end_yr, fmt_year(start_yr), paste0(fmt_year(start_yr), " - ", fmt_year(end_yr)))

    pre1600_idx <- which(yrs < 1600)
    if (length(pre1600_idx) > 0) {
      max_i <- pre1600_idx[which.max(vals[pre1600_idx])]
      pre1600_str <- paste0(fmt_num(vals[max_i]), " (", fmt_year(yrs[max_i]), ")")
    } else {
      pre1600_str <- "-"
    }

    get_bench <- function(target_yr, tol = 25) {
      exact_i <- which(yrs == target_yr)
      if (length(exact_i) > 0) return(fmt_num(vals[exact_i[1]]))
      near_i <- which(abs(yrs - target_yr) <= tol)
      if (length(near_i) > 0) {
        best_i <- near_i[which.min(abs(yrs[near_i] - target_yr))]
        return(fmt_num(vals[best_i]))
      }
      return("-")
    }

    alt_vec <- unlist(s$other_names)
    alt_str <- if (length(alt_vec) > 0) paste(alt_vec[1:min(2, length(alt_vec))], collapse = "; ") else "-"

    data.frame(
      Settlement = wrap_long_tokens(s$name),
      `Native / Alternate Names` = wrap_long_tokens(alt_str),
      Coords = fmt_coord(s$coords[[1]], s$coords[[2]]),
      `Active Span` = span_str,
      `Pre-1600 Peak` = pre1600_str,
      `1700` = get_bench(1700, 45),
      `1800` = get_bench(1800, 35),
      `1850` = get_bench(1850, 25),
      `1897` = get_bench(1897, 5),
      `1900` = get_bench(1900, 2),
      check.names = FALSE,
      stringsAsFactors = FALSE
    )
  })
  do.call(rbind, rows)
}
```

# Introduction

This supplementary report presents the tabular settlement gazetteer (`siberia_yenisei_lena_kolyma_pacific_settlements.json`) accompanying the regional demographic review of Eastern and Pacific Siberia (`10000BC - 1900AD`; Figure \ref{fig:hero}). The JSON file follows the flat `population_Stadester` structure, indexing **`r length(gaz_data)` individual settlements** by `"<Name>-Russia"` with six standardised fields (`name`, `other_names`, `coords`, `country`, `key`, and `population`) sorted in chronological order (Tables \ref{tab:ii1} to \ref{tab:iv3}). Active occupation spans (`start_year` to `end_year`) correspond directly to the first and last recorded benchmark years in each settlement's `.population` dictionary.

Prehistoric camp and pit-house village figures are derived from excavated dwelling counts, floor areas, and cemetery sizes [@Chernykh2022; @Weber2016a; @Kuzmin2006; @AlekseyevDyakonov2009; @Fitzhugh2016; @Dneprovskiy2017]. Estimates for Iron Age and medieval fortified settlements (*gorodishcha*) in Transbaikalia, Tuva, Khakassia, the Amur Basin, and Primorye are drawn from intramural areas and excavated house-pit totals [@Vasyutin2022; @Tulush2011; @Tulush2016; @Artemyeva2013; @Artemyeva2025; @Gelman2018; @Ivliev2021]. Early Russian fortresses (*ostrogi*), 18th-century mining and border towns, and 19th-century urban centres are compiled from *yasak* and garrison rolls [@Dolgikh1960; @Chertykov2009; @Ushnitskiy2017a; @Turaev2013], imperial revision lists and historical urban studies [@Kabuzan1985; @Mansheev2010; @Kurchatova2015; @Kyshpanakov2022a; @Kolomiets2022; @Rygalova2024], and the 1897 First All-Russian Imperial Census [@Troinitskiy1905; @Patkanov1912].

# Yenisei and Baikal Region (II-1 to II-3)

## Baikal and Selenga Basin (II-1)

```{r tab-ii1, echo=FALSE}
render_table_template(
  build_subregion_df("II-1"),
  list(
    caption = "Settlement Gazetteer of the Baikal and Selenga Basin (II-1, 10000BC - 1900AD).",
    label = "tab:ii1"
  )
)
```

## Sayan, Minusinsk, and Tuva (II-2)

```{r tab-ii2, echo=FALSE}
render_table_template(
  build_subregion_df("II-2"),
  list(
    caption = "Settlement Gazetteer of Sayan, Minusinsk, and Tuva (II-2, 10000BC - 1900AD).",
    label = "tab:ii2"
  )
)
```

## Middle and Lower Yenisei (II-3)

```{r tab-ii3, echo=FALSE}
render_table_template(
  build_subregion_df("II-3"),
  list(
    caption = "Settlement Gazetteer of the Middle and Lower Yenisei Basin (II-3, 10000BC - 1900AD).",
    label = "tab:ii3"
  )
)
```

# Lena and Kolyma Region (III-1 to III-3)

## Vitim, Olekma, and Aldan (III-1)

```{r tab-iii1, echo=FALSE}
render_table_template(
  build_subregion_df("III-1"),
  list(
    caption = "Settlement Gazetteer of the Vitim, Olekma, and Aldan Basins (III-1, 10000BC - 1900AD).",
    label = "tab:iii1"
  )
)
```

## Central Yakutia and Lower Lena (III-2)

```{r tab-iii2, echo=FALSE}
render_table_template(
  build_subregion_df("III-2"),
  list(
    caption = "Settlement Gazetteer of Central Yakutia and the Lower Lena Basin (III-2, 10000BC - 1900AD).",
    label = "tab:iii2"
  )
)
```

## Yana, Indigirka, and Kolyma (III-3)

```{r tab-iii3, echo=FALSE}
render_table_template(
  build_subregion_df("III-3"),
  list(
    caption = "Settlement Gazetteer of the Yana, Indigirka, and Kolyma Basins (III-3, 10000BC - 1900AD).",
    label = "tab:iii3"
  )
)
```

# Pacific Region (IV-1 to IV-3)

## Amur Basin and Primorye (IV-1)

```{r tab-iv1, echo=FALSE}
render_table_template(
  build_subregion_df("IV-1"),
  list(
    caption = "Settlement Gazetteer of the Amur Basin and Primorye (IV-1, 10000BC - 1900AD).",
    label = "tab:iv1"
  )
)
```

## Kamchatka, Sakhalin, and Kuril Islands (IV-2)

```{r tab-iv2, echo=FALSE}
render_table_template(
  build_subregion_df("IV-2"),
  list(
    caption = "Settlement Gazetteer of Kamchatka, Sakhalin, and the Kuril Islands (IV-2, 10000BC - 1900AD).",
    label = "tab:iv2"
  )
)
```

## Chukotka, Anadyr, and Bering Strait (IV-3)

```{r tab-iv3, echo=FALSE}
render_table_template(
  build_subregion_df("IV-3"),
  list(
    caption = "Settlement Gazetteer of Chukotka, Anadyr, and the Bering Strait (IV-3, 10000BC - 1900AD).",
    label = "tab:iv3"
  )
)
```

# References
