afd/outputs/index.html

4566 lines
1.6 MiB
HTML
Raw Normal View History

2022-08-19 12:02:37 +00:00
<!DOCTYPE html>
<html xmlns="http://www.w3.org/1999/xhtml" lang="en" xml:lang="en"><head>
<meta charset="utf-8">
2022-09-29 11:28:32 +00:00
<meta name="generator" content="quarto-1.1.251">
2022-08-19 12:02:37 +00:00
<meta name="viewport" content="width=device-width, initial-scale=1.0, user-scalable=yes">
<meta name="author" content="Marty Oehme">
<title>Drivers of Inequality</title>
<style>
code{white-space: pre-wrap;}
span.smallcaps{font-variant: small-caps;}
div.columns{display: flex; gap: min(4vw, 1.5em);}
div.column{flex: auto; overflow-x: auto;}
2022-08-19 12:02:37 +00:00
div.hanging-indent{margin-left: 1.5em; text-indent: -1.5em;}
ul.task-list{list-style: none;}
ul.task-list li input[type="checkbox"] {
width: 0.8em;
margin: 0 0.8em 0.2em -1.6em;
vertical-align: middle;
}
2022-08-19 12:02:37 +00:00
pre > code.sourceCode { white-space: pre; position: relative; }
pre > code.sourceCode > span { display: inline-block; line-height: 1.25; }
pre > code.sourceCode > span:empty { height: 1.2em; }
.sourceCode { overflow: visible; }
code.sourceCode > span { color: inherit; text-decoration: inherit; }
div.sourceCode { margin: 1em 0; }
pre.sourceCode { margin: 0; }
@media screen {
div.sourceCode { overflow: auto; }
}
@media print {
pre > code.sourceCode { white-space: pre-wrap; }
pre > code.sourceCode > span { text-indent: -5em; padding-left: 5em; }
}
pre.numberSource code
{ counter-reset: source-line 0; }
2022-08-19 12:02:37 +00:00
pre.numberSource code > span
{ position: relative; left: -4em; counter-increment: source-line; }
2022-08-19 12:02:37 +00:00
pre.numberSource code > span > a:first-child::before
{ content: counter(source-line);
position: relative; left: -1em; text-align: right; vertical-align: baseline;
border: none; display: inline-block;
-webkit-touch-callout: none; -webkit-user-select: none;
-khtml-user-select: none; -moz-user-select: none;
-ms-user-select: none; user-select: none;
padding: 0 4px; width: 4em;
color: #aaaaaa;
}
pre.numberSource { margin-left: 3em; border-left: 1px solid #aaaaaa; padding-left: 4px; }
2022-08-19 12:02:37 +00:00
div.sourceCode
{ }
2022-08-19 12:02:37 +00:00
@media screen {
pre > code.sourceCode > span > a:first-child::before { text-decoration: underline; }
}
code span.al { color: #ff0000; font-weight: bold; }
code span.an { color: #60a0b0; font-weight: bold; font-style: italic; }
code span.at { color: #7d9029; }
code span.bn { color: #40a070; }
code span.bu { color: #008000; }
code span.cf { color: #007020; font-weight: bold; }
code span.ch { color: #4070a0; }
code span.cn { color: #880000; }
code span.co { color: #60a0b0; font-style: italic; }
code span.cv { color: #60a0b0; font-weight: bold; font-style: italic; }
code span.do { color: #ba2121; font-style: italic; }
code span.dt { color: #902000; }
code span.dv { color: #40a070; }
code span.er { color: #ff0000; font-weight: bold; }
code span.ex { }
code span.fl { color: #40a070; }
code span.fu { color: #06287e; }
code span.im { color: #008000; font-weight: bold; }
code span.in { color: #60a0b0; font-weight: bold; font-style: italic; }
code span.kw { color: #007020; font-weight: bold; }
code span.op { color: #666666; }
code span.ot { color: #007020; }
code span.pp { color: #bc7a00; }
code span.sc { color: #4070a0; }
code span.ss { color: #bb6688; }
code span.st { color: #4070a0; }
code span.va { color: #19177c; }
code span.vs { color: #4070a0; }
code span.wa { color: #60a0b0; font-weight: bold; font-style: italic; }
2022-08-19 12:02:37 +00:00
div.csl-bib-body { }
div.csl-entry {
clear: both;
2022-08-19 12:02:37 +00:00
}
.hanging div.csl-entry {
margin-left:2em;
text-indent:-2em;
2022-08-19 12:02:37 +00:00
}
div.csl-left-margin {
min-width:2em;
float:left;
2022-08-19 12:02:37 +00:00
}
div.csl-right-inline {
margin-left:2em;
padding-left:1em;
2022-08-19 12:02:37 +00:00
}
div.csl-indent {
margin-left: 2em;
2022-08-19 12:02:37 +00:00
}
</style>
<script>/*!
* clipboard.js v2.0.10
* https://clipboardjs.com/
*
* Licensed MIT © Zeno Rocha
*/
!function(t,e){"object"==typeof exports&&"object"==typeof module?module.exports=e():"function"==typeof define&&define.amd?define([],e):"object"==typeof exports?exports.ClipboardJS=e():t.ClipboardJS=e()}(this,function(){return n={686:function(t,e,n){"use strict";n.d(e,{default:function(){return o}});var e=n(279),i=n.n(e),e=n(370),u=n.n(e),e=n(817),c=n.n(e);function a(t){try{return document.execCommand(t)}catch(t){return}}var f=function(t){t=c()(t);return a("cut"),t};var l=function(t){var e,n,o,r=1<arguments.length&&void 0!==arguments[1]?arguments[1]:{container:document.body},i="";return"string"==typeof t?(e=t,n="rtl"===document.documentElement.getAttribute("dir"),(o=document.createElement("textarea")).style.fontSize="12pt",o.style.border="0",o.style.padding="0",o.style.margin="0",o.style.position="absolute",o.style[n?"right":"left"]="-9999px",n=window.pageYOffset||document.documentElement.scrollTop,o.style.top="".concat(n,"px"),o.setAttribute("readonly",""),o.value=e,o=o,r.container.appendChild(o),i=c()(o),a("copy"),o.remove()):(i=c()(t),a("copy")),i};function r(t){return(r="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&"function"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t})(t)}var s=function(){var t=0<arguments.length&&void 0!==arguments[0]?arguments[0]:{},e=t.action,n=void 0===e?"copy":e,o=t.container,e=t.target,t=t.text;if("copy"!==n&&"cut"!==n)throw new Error('Invalid "action" value, use either "copy" or "cut"');if(void 0!==e){if(!e||"object"!==r(e)||1!==e.nodeType)throw new Error('Invalid "target" value, use a valid Element');if("copy"===n&&e.hasAttribute("disabled"))throw new Error('Invalid "target" attribute. Please use "readonly" instead of "disabled" attribute');if("cut"===n&&(e.hasAttribute("readonly")||e.hasAttribute("disabled")))throw new Error('Invalid "target" attribute. You can\'t cut text from elements with "readonly" or "disabled" attributes')}return t?l(t,{container:o}):e?"cut"===n?f(e):l(e,{container:o}):void 0};function p(t){return(p="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&"function"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t})(t)}function d(t,e){for(var n=0;n<e.length;n++){var o=e[n];o.enumerable=o.enumerable||!1,o.configurable=!0,"value"in o&&(o.writable=!0),Object.defineProperty(t,o.key,o)}}function y(t,e){return(y=Object.setPrototypeOf||function(t,e){return t.__proto__=e,t})(t,e)}function h(n){var o=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Date.prototype.toString.call(Reflect.construct(Date,[],function(){})),!0}catch(t){return!1}}();return function(){var t,e=m(n);return t=o?(t=m(this).constructor,Reflect.construct(e,arguments,t)):e.apply(this,arguments),e=this,!(t=t)||"object"!==p(t)&&"function"!=typeof t?function(t){if(void 0!==t)return t;throw new ReferenceError("this hasn't been initialised - super() hasn't been called")}(e):t}}function m(t){return(m=Object.setPrototypeOf?Object.getPrototypeOf:function(t){return t.__proto__||Object.getPrototypeOf(t)})(t)}function v(t,e){t="data-clipboard-".concat(t);if(e.hasAttribute(t))return e.getAttribute(t)}var o=function(){!function(t,e){if("function"!=typeof e&&null!==e)throw new TypeError("Super expression must either be null or a function");t.prototype=Object.create(e&&e.prototype,{constructor:{value:t,writable:!0,configurable:!0}}),e&&y(t,e)}(r,i());var t,e,n,o=h(r);function r(t,e){var n;return function(t){if(!(t instanceof r))throw new TypeError("Cannot call a class as a function")}(this),(n=o.call(this)).resolveOptions(e),n.listenClick(t),n}return t=r,n=[{key:"copy",value:function(t){var e=1<arguments.length&&void 0!==arguments[1]?arguments[1]:{container:document.body};return l(t,e)}},{key:"cut",value:function(t){return f(t)}},{key:"isSupported",value:function(){var t=0<arguments.length&&void 0!==arguments[0]?arguments[0]:["copy","cut"]
<script>const sectionChanged = new CustomEvent("quarto-sectionChanged", {
detail: {},
bubbles: true,
cancelable: false,
composed: false,
});
window.document.addEventListener("DOMContentLoaded", function (_event) {
const tocEl = window.document.querySelector('nav.toc-active[role="doc-toc"]');
2022-08-19 12:02:37 +00:00
const sidebarEl = window.document.getElementById("quarto-sidebar");
const leftTocEl = window.document.getElementById("quarto-sidebar-toc-left");
const marginSidebarEl = window.document.getElementById(
"quarto-margin-sidebar"
);
// function to determine whether the element has a previous sibling that is active
const prevSiblingIsActiveLink = (el) => {
const sibling = el.previousElementSibling;
if (sibling && sibling.tagName === "A") {
return sibling.classList.contains("active");
} else {
return false;
}
};
// fire slideEnter for bootstrap tab activations (for htmlwidget resize behavior)
function fireSlideEnter(e) {
const event = window.document.createEvent("Event");
event.initEvent("slideenter", true, true);
window.document.dispatchEvent(event);
}
const tabs = window.document.querySelectorAll('a[data-bs-toggle="tab"]');
tabs.forEach((tab) => {
tab.addEventListener("shown.bs.tab", fireSlideEnter);
});
// Track scrolling and mark TOC links as active
// get table of contents and sidebar (bail if we don't have at least one)
const tocLinks = tocEl
? [...tocEl.querySelectorAll("a[data-scroll-target]")]
: [];
const makeActive = (link) => tocLinks[link].classList.add("active");
const removeActive = (link) => tocLinks[link].classList.remove("active");
const removeAllActive = () =>
[...Array(tocLinks.length).keys()].forEach((link) => removeActive(link));
// activate the anchor for a section associated with this TOC entry
tocLinks.forEach((link) => {
link.addEventListener("click", () => {
if (link.href.indexOf("#") !== -1) {
const anchor = link.href.split("#")[1];
const heading = window.document.querySelector(
`[data-anchor-id=${anchor}]`
);
if (heading) {
// Add the class
heading.classList.add("reveal-anchorjs-link");
// function to show the anchor
const handleMouseout = () => {
heading.classList.remove("reveal-anchorjs-link");
heading.removeEventListener("mouseout", handleMouseout);
};
// add a function to clear the anchor when the user mouses out of it
heading.addEventListener("mouseout", handleMouseout);
}
}
});
});
const sections = tocLinks.map((link) => {
const target = link.getAttribute("data-scroll-target");
if (target.startsWith("#")) {
return window.document.getElementById(decodeURI(`${target.slice(1)}`));
} else {
return window.document.querySelector(decodeURI(`${target}`));
}
});
const sectionMargin = 200;
let currentActive = 0;
// track whether we've initialized state the first time
let init = false;
const updateActiveLink = () => {
// The index from bottom to top (e.g. reversed list)
let sectionIndex = -1;
if (
window.innerHeight + window.pageYOffset >=
window.document.body.offsetHeight
) {
sectionIndex = 0;
} else {
sectionIndex = [...sections].reverse().findIndex((section) => {
if (section) {
return window.pageYOffset >= section.offsetTop - sectionMargin;
} else {
return false;
}
});
}
if (sectionIndex > -1) {
const current = sections.length - sectionIndex - 1;
if (current !== currentActive) {
removeAllActive();
currentActive = current;
makeActive(current);
if (init) {
window.dispatchEvent(sectionChanged);
}
init = true;
}
}
};
const inHiddenRegion = (top, bottom, hiddenRegions) => {
for (const region of hiddenRegions) {
if (top <= region.bottom && bottom >= region.top) {
return true;
}
}
return false;
};
const categorySelector = "header.quarto-title-block .quarto-category";
const activateCategories = (href) => {
// Find any categories
// Surround them with a link pointing back to:
// #category=Authoring
try {
const categoryEls = window.document.querySelectorAll(categorySelector);
for (const categoryEl of categoryEls) {
const categoryText = categoryEl.textContent;
if (categoryText) {
const link = `${href}#category=${encodeURIComponent(categoryText)}`;
const linkEl = window.document.createElement("a");
linkEl.setAttribute("href", link);
for (const child of categoryEl.childNodes) {
linkEl.append(child);
}
categoryEl.appendChild(linkEl);
}
}
} catch {
// Ignore errors
}
};
function hasTitleCategories() {
return window.document.querySelector(categorySelector) !== null;
}
function offsetRelativeUrl(url) {
const offset = getMeta("quarto:offset");
return offset ? offset + url : url;
}
function offsetAbsoluteUrl(url) {
const offset = getMeta("quarto:offset");
const baseUrl = new URL(offset, window.location);
const projRelativeUrl = url.replace(baseUrl, "");
if (projRelativeUrl.startsWith("/")) {
return projRelativeUrl;
} else {
return "/" + projRelativeUrl;
}
}
// read a meta tag value
function getMeta(metaName) {
const metas = window.document.getElementsByTagName("meta");
for (let i = 0; i < metas.length; i++) {
if (metas[i].getAttribute("name") === metaName) {
return metas[i].getAttribute("content");
}
}
return "";
}
async function findAndActivateCategories() {
const currentPagePath = offsetAbsoluteUrl(window.location.href);
const response = await fetch(offsetRelativeUrl("listings.json"));
if (response.status == 200) {
return response.json().then(function (listingPaths) {
const listingHrefs = [];
for (const listingPath of listingPaths) {
const pathWithoutLeadingSlash = listingPath.listing.substring(1);
for (const item of listingPath.items) {
if (
item === currentPagePath ||
item === currentPagePath + "index.html"
) {
// Resolve this path against the offset to be sure
// we already are using the correct path to the listing
// (this adjusts the listing urls to be rooted against
// whatever root the page is actually running against)
const relative = offsetRelativeUrl(pathWithoutLeadingSlash);
const baseUrl = window.location;
const resolvedPath = new URL(relative, baseUrl);
listingHrefs.push(resolvedPath.pathname);
break;
}
}
}
// Look up the tree for a nearby linting and use that if we find one
const nearestListing = findNearestParentListing(
offsetAbsoluteUrl(window.location.pathname),
listingHrefs
);
if (nearestListing) {
activateCategories(nearestListing);
} else {
// See if the referrer is a listing page for this item
const referredRelativePath = offsetAbsoluteUrl(document.referrer);
const referrerListing = listingHrefs.find((listingHref) => {
const isListingReferrer =
listingHref === referredRelativePath ||
listingHref === referredRelativePath + "index.html";
return isListingReferrer;
});
if (referrerListing) {
// Try to use the referrer if possible
activateCategories(referrerListing);
} else if (listingHrefs.length > 0) {
// Otherwise, just fall back to the first listing
activateCategories(listingHrefs[0]);
}
}
});
}
}
if (hasTitleCategories()) {
findAndActivateCategories();
}
const findNearestParentListing = (href, listingHrefs) => {
if (!href || !listingHrefs) {
return undefined;
}
// Look up the tree for a nearby linting and use that if we find one
const relativeParts = href.substring(1).split("/");
while (relativeParts.length > 0) {
const path = relativeParts.join("/");
for (const listingHref of listingHrefs) {
if (listingHref.startsWith(path)) {
return listingHref;
}
}
relativeParts.pop();
}
return undefined;
};
const manageSidebarVisiblity = (el, placeholderDescriptor) => {
let isVisible = true;
return (hiddenRegions) => {
if (el === null) {
return;
}
// Find the last element of the TOC
const lastChildEl = el.lastElementChild;
if (lastChildEl) {
// Find the top and bottom o the element that is being managed
const elTop = el.offsetTop;
const elBottom =
elTop + lastChildEl.offsetTop + lastChildEl.offsetHeight;
// Converts the sidebar to a menu
const convertToMenu = () => {
for (const child of el.children) {
child.style.opacity = 0;
child.style.overflow = "hidden";
2022-08-19 12:02:37 +00:00
}
const toggleContainer = window.document.createElement("div");
toggleContainer.style.width = "100%";
toggleContainer.classList.add("zindex-over-content");
toggleContainer.classList.add("quarto-sidebar-toggle");
toggleContainer.classList.add("headroom-target"); // Marks this to be managed by headeroom
toggleContainer.id = placeholderDescriptor.id;
toggleContainer.style.position = "fixed";
const toggleIcon = window.document.createElement("i");
toggleIcon.classList.add("quarto-sidebar-toggle-icon");
toggleIcon.classList.add("bi");
toggleIcon.classList.add("bi-caret-down-fill");
const toggleTitle = window.document.createElement("div");
const titleEl = window.document.body.querySelector(
placeholderDescriptor.titleSelector
);
if (titleEl) {
toggleTitle.append(titleEl.innerText, toggleIcon);
}
toggleTitle.classList.add("zindex-over-content");
toggleTitle.classList.add("quarto-sidebar-toggle-title");
toggleContainer.append(toggleTitle);
const toggleContents = window.document.createElement("div");
toggleContents.classList = el.classList;
toggleContents.classList.add("zindex-over-content");
toggleContents.classList.add("quarto-sidebar-toggle-contents");
for (const child of el.children) {
if (child.id === "toc-title") {
continue;
}
const clone = child.cloneNode(true);
clone.style.opacity = 1;
clone.style.display = null;
toggleContents.append(clone);
}
toggleContents.style.height = "0px";
toggleContainer.append(toggleContents);
el.parentElement.prepend(toggleContainer);
// Process clicks
let tocShowing = false;
// Allow the caller to control whether this is dismissed
// when it is clicked (e.g. sidebar navigation supports
// opening and closing the nav tree, so don't dismiss on click)
const clickEl = placeholderDescriptor.dismissOnClick
? toggleContainer
: toggleTitle;
const closeToggle = () => {
if (tocShowing) {
toggleContainer.classList.remove("expanded");
toggleContents.style.height = "0px";
tocShowing = false;
}
};
const positionToggle = () => {
// position the element (top left of parent, same width as parent)
const elRect = el.getBoundingClientRect();
toggleContainer.style.left = `${elRect.left}px`;
toggleContainer.style.top = `${elRect.top}px`;
toggleContainer.style.width = `${elRect.width}px`;
};
// Get rid of any expanded toggle if the user scrolls
window.document.addEventListener(
"scroll",
throttle(() => {
closeToggle();
}, 50)
);
// Handle positioning of the toggle
window.addEventListener(
"resize",
throttle(() => {
positionToggle();
}, 50)
);
positionToggle();
// Process the click
clickEl.onclick = () => {
if (!tocShowing) {
toggleContainer.classList.add("expanded");
toggleContents.style.height = null;
tocShowing = true;
} else {
closeToggle();
}
};
};
// Converts a sidebar from a menu back to a sidebar
const convertToSidebar = () => {
for (const child of el.children) {
child.style.opacity = 1;
child.style.overflow = null;
2022-08-19 12:02:37 +00:00
}
const placeholderEl = window.document.getElementById(
placeholderDescriptor.id
);
if (placeholderEl) {
placeholderEl.remove();
}
el.classList.remove("rollup");
};
if (isReaderMode()) {
convertToMenu();
isVisible = false;
} else {
if (!isVisible) {
// If the element is current not visible reveal if there are
// no conflicts with overlay regions
if (!inHiddenRegion(elTop, elBottom, hiddenRegions)) {
convertToSidebar();
isVisible = true;
}
} else {
// If the element is visible, hide it if it conflicts with overlay regions
// and insert a placeholder toggle (or if we're in reader mode)
if (inHiddenRegion(elTop, elBottom, hiddenRegions)) {
convertToMenu();
isVisible = false;
}
}
}
}
};
};
// Find any conflicting margin elements and add margins to the
// top to prevent overlap
const marginChildren = window.document.querySelectorAll(
".column-margin.column-container > * "
);
let lastBottom = 0;
for (const marginChild of marginChildren) {
const top = marginChild.getBoundingClientRect().top;
if (top < lastBottom) {
const margin = lastBottom - top;
marginChild.style.marginTop = `${margin}px`;
}
const styles = window.getComputedStyle(marginChild);
const marginTop = parseFloat(styles["marginTop"]);
lastBottom = top + marginChild.getBoundingClientRect().height + marginTop;
}
// Manage the visibility of the toc and the sidebar
const marginScrollVisibility = manageSidebarVisiblity(marginSidebarEl, {
id: "quarto-toc-toggle",
titleSelector: "#toc-title",
dismissOnClick: true,
});
const sidebarScrollVisiblity = manageSidebarVisiblity(sidebarEl, {
id: "quarto-sidebarnav-toggle",
titleSelector: ".title",
dismissOnClick: false,
});
let tocLeftScrollVisibility;
if (leftTocEl) {
tocLeftScrollVisibility = manageSidebarVisiblity(leftTocEl, {
id: "quarto-lefttoc-toggle",
titleSelector: "#toc-title",
dismissOnClick: true,
});
}
// Find the first element that uses formatting in special columns
const conflictingEls = window.document.body.querySelectorAll(
'[class^="column-"], [class*=" column-"], aside, [class*="margin-caption"], [class*=" margin-caption"], [class*="margin-ref"], [class*=" margin-ref"]'
);
// Filter all the possibly conflicting elements into ones
// the do conflict on the left or ride side
const arrConflictingEls = Array.from(conflictingEls);
const leftSideConflictEls = arrConflictingEls.filter((el) => {
if (el.tagName === "ASIDE") {
return false;
}
return Array.from(el.classList).find((className) => {
return (
className !== "column-body" &&
className.startsWith("column-") &&
!className.endsWith("right") &&
!className.endsWith("container") &&
className !== "column-margin"
);
});
});
const rightSideConflictEls = arrConflictingEls.filter((el) => {
if (el.tagName === "ASIDE") {
return true;
}
const hasMarginCaption = Array.from(el.classList).find((className) => {
return className == "margin-caption";
});
if (hasMarginCaption) {
return true;
}
return Array.from(el.classList).find((className) => {
return (
className !== "column-body" &&
!className.endsWith("container") &&
className.startsWith("column-") &&
!className.endsWith("left")
);
});
});
const kOverlapPaddingSize = 10;
function toRegions(els) {
return els.map((el) => {
const top =
el.getBoundingClientRect().top +
document.documentElement.scrollTop -
kOverlapPaddingSize;
return {
top,
bottom: top + el.scrollHeight + 2 * kOverlapPaddingSize,
};
});
}
const hideOverlappedSidebars = () => {
marginScrollVisibility(toRegions(rightSideConflictEls));
sidebarScrollVisiblity(toRegions(leftSideConflictEls));
if (tocLeftScrollVisibility) {
tocLeftScrollVisibility(toRegions(leftSideConflictEls));
}
};
window.quartoToggleReader = () => {
// Applies a slow class (or removes it)
// to update the transition speed
const slowTransition = (slow) => {
const manageTransition = (id, slow) => {
const el = document.getElementById(id);
if (el) {
if (slow) {
el.classList.add("slow");
} else {
el.classList.remove("slow");
}
}
};
manageTransition("TOC", slow);
manageTransition("quarto-sidebar", slow);
};
const readerMode = !isReaderMode();
setReaderModeValue(readerMode);
// If we're entering reader mode, slow the transition
if (readerMode) {
slowTransition(readerMode);
}
highlightReaderToggle(readerMode);
hideOverlappedSidebars();
// If we're exiting reader mode, restore the non-slow transition
if (!readerMode) {
slowTransition(!readerMode);
}
};
const highlightReaderToggle = (readerMode) => {
const els = document.querySelectorAll(".quarto-reader-toggle");
if (els) {
els.forEach((el) => {
if (readerMode) {
el.classList.add("reader");
} else {
el.classList.remove("reader");
}
});
}
};
const setReaderModeValue = (val) => {
if (window.location.protocol !== "file:") {
window.localStorage.setItem("quarto-reader-mode", val);
} else {
localReaderMode = val;
}
};
const isReaderMode = () => {
if (window.location.protocol !== "file:") {
return window.localStorage.getItem("quarto-reader-mode") === "true";
} else {
return localReaderMode;
}
};
let localReaderMode = null;
// Walk the TOC and collapse/expand nodes
// Nodes are expanded if:
// - they are top level
// - they have children that are 'active' links
// - they are directly below an link that is 'active'
const walk = (el, depth) => {
// Tick depth when we enter a UL
if (el.tagName === "UL") {
depth = depth + 1;
}
// It this is active link
let isActiveNode = false;
if (el.tagName === "A" && el.classList.contains("active")) {
isActiveNode = true;
}
// See if there is an active child to this element
let hasActiveChild = false;
for (child of el.children) {
hasActiveChild = walk(child, depth) || hasActiveChild;
}
// Process the collapse state if this is an UL
if (el.tagName === "UL") {
if (depth === 1 || hasActiveChild || prevSiblingIsActiveLink(el)) {
el.classList.remove("collapse");
} else {
el.classList.add("collapse");
}
// untick depth when we leave a UL
depth = depth - 1;
}
return hasActiveChild || isActiveNode;
};
// walk the TOC and expand / collapse any items that should be shown
if (tocEl) {
walk(tocEl, 0);
updateActiveLink();
}
// Throttle the scroll event and walk peridiocally
window.document.addEventListener(
"scroll",
throttle(() => {
if (tocEl) {
updateActiveLink();
walk(tocEl, 0);
}
if (!isReaderMode()) {
hideOverlappedSidebars();
}
}, 5)
);
window.addEventListener(
"resize",
throttle(() => {
if (!isReaderMode()) {
hideOverlappedSidebars();
}
}, 10)
);
hideOverlappedSidebars();
highlightReaderToggle(isReaderMode());
});
// grouped tabsets
window.addEventListener("pageshow", (_event) => {
function getTabSettings() {
const data = localStorage.getItem("quarto-persistent-tabsets-data");
if (!data) {
localStorage.setItem("quarto-persistent-tabsets-data", "{}");
return {};
}
if (data) {
return JSON.parse(data);
}
}
function setTabSettings(data) {
localStorage.setItem(
"quarto-persistent-tabsets-data",
JSON.stringify(data)
);
}
function setTabState(groupName, groupValue) {
const data = getTabSettings();
data[groupName] = groupValue;
setTabSettings(data);
}
function toggleTab(tab, active) {
const tabPanelId = tab.getAttribute("aria-controls");
const tabPanel = document.getElementById(tabPanelId);
if (active) {
tab.classList.add("active");
tabPanel.classList.add("active");
} else {
tab.classList.remove("active");
tabPanel.classList.remove("active");
}
}
function toggleAll(selectedGroup, selectorsToSync) {
for (const [thisGroup, tabs] of Object.entries(selectorsToSync)) {
const active = selectedGroup === thisGroup;
for (const tab of tabs) {
toggleTab(tab, active);
}
}
}
function findSelectorsToSyncByLanguage() {
const result = {};
const tabs = Array.from(
document.querySelectorAll(`div[data-group] a[id^='tabset-']`)
);
for (const item of tabs) {
const div = item.parentElement.parentElement.parentElement;
const group = div.getAttribute("data-group");
if (!result[group]) {
result[group] = {};
}
const selectorsToSync = result[group];
const value = item.innerHTML;
if (!selectorsToSync[value]) {
selectorsToSync[value] = [];
}
selectorsToSync[value].push(item);
}
return result;
}
function setupSelectorSync() {
const selectorsToSync = findSelectorsToSyncByLanguage();
Object.entries(selectorsToSync).forEach(([group, tabSetsByValue]) => {
Object.entries(tabSetsByValue).forEach(([value, items]) => {
items.forEach((item) => {
item.addEventListener("click", (_event) => {
setTabState(group, value);
toggleAll(value, selectorsToSync[group]);
});
});
});
});
return selectorsToSync;
}
const selectorsToSync = setupSelectorSync();
for (const [group, selectedName] of Object.entries(getTabSettings())) {
const selectors = selectorsToSync[group];
// it's possible that stale state gives us empty selections, so we explicitly check here.
if (selectors) {
toggleAll(selectedName, selectors);
}
}
});
2022-08-19 12:02:37 +00:00
function throttle(func, wait) {
let waiting = false;
return function () {
if (!waiting) {
func.apply(this, arguments);
waiting = true;
setTimeout(function () {
waiting = false;
}, wait);
}
};
}
</script>
<script>/**
* @popperjs/core v2.11.4 - MIT License
*/
!function(e,t){"object"==typeof exports&&"undefined"!=typeof module?t(exports):"function"==typeof define&&define.amd?define(["exports"],t):t((e="undefined"!=typeof globalThis?globalThis:e||self).Popper={})}(this,(function(e){"use strict";function t(e){if(null==e)return window;if("[object Window]"!==e.toString()){var t=e.ownerDocument;return t&&t.defaultView||window}return e}function n(e){return e instanceof t(e).Element||e instanceof Element}function r(e){return e instanceof t(e).HTMLElement||e instanceof HTMLElement}function o(e){return"undefined"!=typeof ShadowRoot&&(e instanceof t(e).ShadowRoot||e instanceof ShadowRoot)}var i=Math.max,a=Math.min,s=Math.round;function f(e,t){void 0===t&&(t=!1);var n=e.getBoundingClientRect(),o=1,i=1;if(r(e)&&t){var a=e.offsetHeight,f=e.offsetWidth;f>0&&(o=s(n.width)/f||1),a>0&&(i=s(n.height)/a||1)}return{width:n.width/o,height:n.height/i,top:n.top/i,right:n.right/o,bottom:n.bottom/i,left:n.left/o,x:n.left/o,y:n.top/i}}function c(e){var n=t(e);return{scrollLeft:n.pageXOffset,scrollTop:n.pageYOffset}}function p(e){return e?(e.nodeName||"").toLowerCase():null}function u(e){return((n(e)?e.ownerDocument:e.document)||window.document).documentElement}function l(e){return f(u(e)).left+c(e).scrollLeft}function d(e){return t(e).getComputedStyle(e)}function h(e){var t=d(e),n=t.overflow,r=t.overflowX,o=t.overflowY;return/auto|scroll|overlay|hidden/.test(n+o+r)}function m(e,n,o){void 0===o&&(o=!1);var i,a,d=r(n),m=r(n)&&function(e){var t=e.getBoundingClientRect(),n=s(t.width)/e.offsetWidth||1,r=s(t.height)/e.offsetHeight||1;return 1!==n||1!==r}(n),v=u(n),g=f(e,m),y={scrollLeft:0,scrollTop:0},b={x:0,y:0};return(d||!d&&!o)&&(("body"!==p(n)||h(v))&&(y=(i=n)!==t(i)&&r(i)?{scrollLeft:(a=i).scrollLeft,scrollTop:a.scrollTop}:c(i)),r(n)?((b=f(n,!0)).x+=n.clientLeft,b.y+=n.clientTop):v&&(b.x=l(v))),{x:g.left+y.scrollLeft-b.x,y:g.top+y.scrollTop-b.y,width:g.width,height:g.height}}function v(e){var t=f(e),n=e.offsetWidth,r=e.offsetHeight;return Math.abs(t.width-n)<=1&&(n=t.width),Math.abs(t.height-r)<=1&&(r=t.height),{x:e.offsetLeft,y:e.offsetTop,width:n,height:r}}function g(e){return"html"===p(e)?e:e.assignedSlot||e.parentNode||(o(e)?e.host:null)||u(e)}function y(e){return["html","body","#document"].indexOf(p(e))>=0?e.ownerDocument.body:r(e)&&h(e)?e:y(g(e))}function b(e,n){var r;void 0===n&&(n=[]);var o=y(e),i=o===(null==(r=e.ownerDocument)?void 0:r.body),a=t(o),s=i?[a].concat(a.visualViewport||[],h(o)?o:[]):o,f=n.concat(s);return i?f:f.concat(b(g(s)))}function x(e){return["table","td","th"].indexOf(p(e))>=0}function w(e){return r(e)&&"fixed"!==d(e).position?e.offsetParent:null}function O(e){for(var n=t(e),i=w(e);i&&x(i)&&"static"===d(i).position;)i=w(i);return i&&("html"===p(i)||"body"===p(i)&&"static"===d(i).position)?n:i||function(e){var t=-1!==navigator.userAgent.toLowerCase().indexOf("firefox");if(-1!==navigator.userAgent.indexOf("Trident")&&r(e)&&"fixed"===d(e).position)return null;var n=g(e);for(o(n)&&(n=n.host);r(n)&&["html","body"].indexOf(p(n))<0;){var i=d(n);if("none"!==i.transform||"none"!==i.perspective||"paint"===i.contain||-1!==["transform","perspective"].indexOf(i.willChange)||t&&"filter"===i.willChange||t&&i.filter&&"none"!==i.filter)return n;n=n.parentNode}return null}(e)||n}var j="top",E="bottom",D="right",A="left",L="auto",P=[j,E,D,A],M="start",k="end",W="viewport",B="popper",H=P.reduce((function(e,t){return e.concat([t+"-"+M,t+"-"+k])}),[]),T=[].concat(P,[L]).reduce((function(e,t){return e.concat([t,t+"-"+M,t+"-"+k])}),[]),R=["beforeRead","read","afterRead","beforeMain","main","afterMain","beforeWrite","write","afterWrite"];function S(e){var t=new Map,n=new Set,r=[];function o(e){n.add(e.name),[].concat(e.requires||[],e.requiresIfExists||[]).forEach((function(e){if(!n.has(e)){var r=t.get(e);r&&o(r)}})),r.push(e)}return e.forEach((function(e){t.set(e.name,e)})),e.forEach((function(e){n.has(e.name)||o(e)})),r}function C(e){return e.split("-")[0]}function q(e,t){var n=t.getRootNode&&t.getRootNode();if(e.contains(t))return!0;if(n&&o(n)){var r=t;do{if(r&&e.isSameNode(r))return!0;r=r.parentNo
</script>
<script>!function(e,t){"object"==typeof exports&&"undefined"!=typeof module?module.exports=t(require("@popperjs/core")):"function"==typeof define&&define.amd?define(["@popperjs/core"],t):(e=e||self).tippy=t(e.Popper)}(this,(function(e){"use strict";var t={passive:!0,capture:!0},n=function(){return document.body};function r(e,t,n){if(Array.isArray(e)){var r=e[t];return null==r?Array.isArray(n)?n[t]:n:r}return e}function o(e,t){var n={}.toString.call(e);return 0===n.indexOf("[object")&&n.indexOf(t+"]")>-1}function i(e,t){return"function"==typeof e?e.apply(void 0,t):e}function a(e,t){return 0===t?e:function(r){clearTimeout(n),n=setTimeout((function(){e(r)}),t)};var n}function s(e,t){var n=Object.assign({},e);return t.forEach((function(e){delete n[e]})),n}function u(e){return[].concat(e)}function c(e,t){-1===e.indexOf(t)&&e.push(t)}function p(e){return e.split("-")[0]}function f(e){return[].slice.call(e)}function l(e){return Object.keys(e).reduce((function(t,n){return void 0!==e[n]&&(t[n]=e[n]),t}),{})}function d(){return document.createElement("div")}function v(e){return["Element","Fragment"].some((function(t){return o(e,t)}))}function m(e){return o(e,"MouseEvent")}function g(e){return!(!e||!e._tippy||e._tippy.reference!==e)}function h(e){return v(e)?[e]:function(e){return o(e,"NodeList")}(e)?f(e):Array.isArray(e)?e:f(document.querySelectorAll(e))}function b(e,t){e.forEach((function(e){e&&(e.style.transitionDuration=t+"ms")}))}function y(e,t){e.forEach((function(e){e&&e.setAttribute("data-state",t)}))}function w(e){var t,n=u(e)[0];return null!=n&&null!=(t=n.ownerDocument)&&t.body?n.ownerDocument:document}function E(e,t,n){var r=t+"EventListener";["transitionend","webkitTransitionEnd"].forEach((function(t){e[r](t,n)}))}function O(e,t){for(var n=t;n;){var r;if(e.contains(n))return!0;n=null==n.getRootNode||null==(r=n.getRootNode())?void 0:r.host}return!1}var x={isTouch:!1},C=0;function T(){x.isTouch||(x.isTouch=!0,window.performance&&document.addEventListener("mousemove",A))}function A(){var e=performance.now();e-C<20&&(x.isTouch=!1,document.removeEventListener("mousemove",A)),C=e}function L(){var e=document.activeElement;if(g(e)){var t=e._tippy;e.blur&&!t.state.isVisible&&e.blur()}}var D=!!("undefined"!=typeof window&&"undefined"!=typeof document)&&!!window.msCrypto,R=Object.assign({appendTo:n,aria:{content:"auto",expanded:"auto"},delay:0,duration:[300,250],getReferenceClientRect:null,hideOnClick:!0,ignoreAttributes:!1,interactive:!1,interactiveBorder:2,interactiveDebounce:0,moveTransition:"",offset:[0,10],onAfterUpdate:function(){},onBeforeUpdate:function(){},onCreate:function(){},onDestroy:function(){},onHidden:function(){},onHide:function(){},onMount:function(){},onShow:function(){},onShown:function(){},onTrigger:function(){},onUntrigger:function(){},onClickOutside:function(){},placement:"top",plugins:[],popperOptions:{},render:null,showOnCreate:!1,touch:!0,trigger:"mouseenter focus",triggerTarget:null},{animateFill:!1,followCursor:!1,inlinePositioning:!1,sticky:!1},{allowHTML:!1,animation:"fade",arrow:!0,content:"",inertia:!1,maxWidth:350,role:"tooltip",theme:"",zIndex:9999}),k=Object.keys(R);function P(e){var t=(e.plugins||[]).reduce((function(t,n){var r,o=n.name,i=n.defaultValue;o&&(t[o]=void 0!==e[o]?e[o]:null!=(r=R[o])?r:i);return t}),{});return Object.assign({},e,t)}function j(e,t){var n=Object.assign({},t,{content:i(t.content,[e])},t.ignoreAttributes?{}:function(e,t){return(t?Object.keys(P(Object.assign({},R,{plugins:t}))):k).reduce((function(t,n){var r=(e.getAttribute("data-tippy-"+n)||"").trim();if(!r)return t;if("content"===n)t[n]=r;else try{t[n]=JSON.parse(r)}catch(e){t[n]=r}return t}),{})}(e,t.plugins));return n.aria=Object.assign({},R.aria,n.aria),n.aria={expanded:"auto"===n.aria.expanded?t.interactive:n.aria.expanded,content:"auto"===n.aria.content?t.interactive?null:"describedby":n.aria.content},n}function M(e,t){e.innerHTML=t}function V(e){var t=d();return!0===e?t.className="tippy-arrow":(t.className="tippy-svg-arrow",v(e)?t.appendChild(e):M(t,e)),t}function I(e,t){v(t.content)?(M(e,""),e.appendChild(t.con
</script>
<script>// @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt Expat
//
// AnchorJS - v4.3.1 - 2021-04-17
// https://www.bryanbraun.com/anchorjs/
// Copyright (c) 2021 Bryan Braun; Licensed MIT
//
// @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt Expat
!function(A,e){"use strict";"function"==typeof define&&define.amd?define([],e):"object"==typeof module&&module.exports?module.exports=e():(A.AnchorJS=e(),A.anchors=new A.AnchorJS)}(this,function(){"use strict";return function(A){function d(A){A.icon=Object.prototype.hasOwnProperty.call(A,"icon")?A.icon:"",A.visible=Object.prototype.hasOwnProperty.call(A,"visible")?A.visible:"hover",A.placement=Object.prototype.hasOwnProperty.call(A,"placement")?A.placement:"right",A.ariaLabel=Object.prototype.hasOwnProperty.call(A,"ariaLabel")?A.ariaLabel:"Anchor",A.class=Object.prototype.hasOwnProperty.call(A,"class")?A.class:"",A.base=Object.prototype.hasOwnProperty.call(A,"base")?A.base:"",A.truncate=Object.prototype.hasOwnProperty.call(A,"truncate")?Math.floor(A.truncate):64,A.titleText=Object.prototype.hasOwnProperty.call(A,"titleText")?A.titleText:""}function w(A){var e;if("string"==typeof A||A instanceof String)e=[].slice.call(document.querySelectorAll(A));else{if(!(Array.isArray(A)||A instanceof NodeList))throw new TypeError("The selector provided to AnchorJS was invalid.");e=[].slice.call(A)}return e}this.options=A||{},this.elements=[],d(this.options),this.isTouchDevice=function(){return Boolean("ontouchstart"in window||window.TouchEvent||window.DocumentTouch&&document instanceof DocumentTouch)},this.add=function(A){var e,t,o,i,n,s,a,c,r,l,h,u,p=[];if(d(this.options),"touch"===(l=this.options.visible)&&(l=this.isTouchDevice()?"always":"hover"),0===(e=w(A=A||"h2, h3, h4, h5, h6")).length)return this;for(null===document.head.querySelector("style.anchorjs")&&((u=document.createElement("style")).className="anchorjs",u.appendChild(document.createTextNode("")),void 0===(A=document.head.querySelector('[rel="stylesheet"],style'))?document.head.appendChild(u):document.head.insertBefore(u,A),u.sheet.insertRule(".anchorjs-link{opacity:0;text-decoration:none;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}",u.sheet.cssRules.length),u.sheet.insertRule(":hover>.anchorjs-link,.anchorjs-link:focus{opacity:1}",u.sheet.cssRules.length),u.sheet.insertRule("[data-anchorjs-icon]::after{content:attr(data-anchorjs-icon)}",u.sheet.cssRules.length),u.sheet.insertRule('@font-face{font-family:anchorjs-icons;src:url(data:n/a;base64,AAEAAAALAIAAAwAwT1MvMg8yG2cAAAE4AAAAYGNtYXDp3gC3AAABpAAAAExnYXNwAAAAEAAAA9wAAAAIZ2x5ZlQCcfwAAAH4AAABCGhlYWQHFvHyAAAAvAAAADZoaGVhBnACFwAAAPQAAAAkaG10eASAADEAAAGYAAAADGxvY2EACACEAAAB8AAAAAhtYXhwAAYAVwAAARgAAAAgbmFtZQGOH9cAAAMAAAAAunBvc3QAAwAAAAADvAAAACAAAQAAAAEAAHzE2p9fDzz1AAkEAAAAAADRecUWAAAAANQA6R8AAAAAAoACwAAAAAgAAgAAAAAAAAABAAADwP/AAAACgAAA/9MCrQABAAAAAAAAAAAAAAAAAAAAAwABAAAAAwBVAAIAAAAAAAIAAAAAAAAAAAAAAAAAAAAAAAMCQAGQAAUAAAKZAswAAACPApkCzAAAAesAMwEJAAAAAAAAAAAAAAAAAAAAARAAAAAAAAAAAAAAAAAAAAAAQAAg//0DwP/AAEADwABAAAAAAQAAAAAAAAAAAAAAIAAAAAAAAAIAAAACgAAxAAAAAwAAAAMAAAAcAAEAAwAAABwAAwABAAAAHAAEADAAAAAIAAgAAgAAACDpy//9//8AAAAg6cv//f///+EWNwADAAEAAAAAAAAAAAAAAAAACACEAAEAAAAAAAAAAAAAAAAxAAACAAQARAKAAsAAKwBUAAABIiYnJjQ3NzY2MzIWFxYUBwcGIicmNDc3NjQnJiYjIgYHBwYUFxYUBwYGIwciJicmNDc3NjIXFhQHBwYUFxYWMzI2Nzc2NCcmNDc2MhcWFAcHBgYjARQGDAUtLXoWOR8fORYtLTgKGwoKCjgaGg0gEhIgDXoaGgkJBQwHdR85Fi0tOAobCgoKOBoaDSASEiANehoaCQkKGwotLXoWOR8BMwUFLYEuehYXFxYugC44CQkKGwo4GkoaDQ0NDXoaShoKGwoFBe8XFi6ALjgJCQobCjgaShoNDQ0NehpKGgobCgoKLYEuehYXAAAADACWAAEAAAAAAAEACAAAAAEAAAAAAAIAAwAIAAEAAAAAAAMACAAAAAEAAAAAAAQACAAAAAEAAAAAAAUAAQALAAEAAAAAAAYACAAAAAMAAQQJAAEAEAAMAAMAAQQJAAIABgAcAAMAAQQJAAMAEAAMAAMAAQQJAAQAEAAMAAMAAQQJAAUAAgAiAAMAAQQJAAYAEAAMYW5jaG9yanM0MDBAAGEAbgBjAGgAbwByAGoAcwA0ADAAMABAAAAAAwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABAAH//wAP) format("truetype")}',u.sheet.cssRules.length)),u=document.querySelectorAll("[id]"),t=[].map.call(u,function(A){return A.id}),i=0;i<e.length;i++)if(this.hasAnchorJSLink(e[i]))p.push(i);else{if(e[i].hasAttribute("id"))o=e[i].getAttribute("id");else if(e[i].hasAttribute("data-anchor-id"))o=e[i].getAttribute("data-anchor-id");else{for(c=a=this.urlify(e[i].textContent),s=0;n=t.indexOf(c=void 0!==n?a+"-"+s:c),s+=1,-1!==n;);n=void 0,t.push(c),e[i].setAttribute("id",c),o=c}(r=document.createElement("a")).cla
// @license-end</script>
<style type="text/css">.tippy-box[data-animation=fade][data-state=hidden]{opacity:0}[data-tippy-root]{max-width:calc(100vw - 10px)}.tippy-box{position:relative;background-color:#333;color:#fff;border-radius:4px;font-size:14px;line-height:1.4;white-space:normal;outline:0;transition-property:transform,visibility,opacity}.tippy-box[data-placement^=top]>.tippy-arrow{bottom:0}.tippy-box[data-placement^=top]>.tippy-arrow:before{bottom:-7px;left:0;border-width:8px 8px 0;border-top-color:initial;transform-origin:center top}.tippy-box[data-placement^=bottom]>.tippy-arrow{top:0}.tippy-box[data-placement^=bottom]>.tippy-arrow:before{top:-7px;left:0;border-width:0 8px 8px;border-bottom-color:initial;transform-origin:center bottom}.tippy-box[data-placement^=left]>.tippy-arrow{right:0}.tippy-box[data-placement^=left]>.tippy-arrow:before{border-width:8px 0 8px 8px;border-left-color:initial;right:-7px;transform-origin:center left}.tippy-box[data-placement^=right]>.tippy-arrow{left:0}.tippy-box[data-placement^=right]>.tippy-arrow:before{left:-7px;border-width:8px 8px 8px 0;border-right-color:initial;transform-origin:center right}.tippy-box[data-inertia][data-state=visible]{transition-timing-function:cubic-bezier(.54,1.5,.38,1.11)}.tippy-arrow{width:16px;height:16px;color:#333}.tippy-arrow:before{content:"";position:absolute;border-color:transparent;border-style:solid}.tippy-content{position:relative;padding:5px 9px;z-index:1}</style>
<link href="data:text/css,%0A%3Aroot%20%7B%0A%2D%2Dquarto%2Dhl%2Dot%2Dcolor%3A%20%23003B4F%3B%0A%2D%2Dquarto%2Dhl%2Dat%2Dcolor%3A%20%23657422%3B%0A%2D%2Dquarto%2Dhl%2Dss%2Dcolor%3A%20%2320794D%3B%0A%2D%2Dquarto%2Dhl%2Dan%2Dcolor%3A%20%235E5E5E%3B%0A%2D%2Dquarto%2Dhl%2Dfu%2Dcolor%3A%20%234758AB%3B%0A%2D%2Dquarto%2Dhl%2Dst%2Dcolor%3A%20%2320794D%3B%0A%2D%2Dquarto%2Dhl%2Dcf%2Dcolor%3A%20%23003B4F%3B%0A%2D%2Dquarto%2Dhl%2Dop%2Dcolor%3A%20%235E5E5E%3B%0A%2D%2Dquarto%2Dhl%2Der%2Dcolor%3A%20%23AD0000%3B%0A%2D%2Dquarto%2Dhl%2Dbn%2Dcolor%3A%20%23AD0000%3B%0A%2D%2Dquarto%2Dhl%2Dal%2Dcolor%3A%20%23AD0000%3B%0A%2D%2Dquarto%2Dhl%2Dva%2Dcolor%3A%20%23111111%3B%0A%2D%2Dquarto%2Dhl%2Dbu%2Dcolor%3A%20inherit%3B%0A%2D%2Dquarto%2Dhl%2Dex%2Dcolor%3A%20inherit%3B%0A%2D%2Dquarto%2Dhl%2Dpp%2Dcolor%3A%20%23AD0000%3B%0A%2D%2Dquarto%2Dhl%2Din%2Dcolor%3A%20%235E5E5E%3B%0A%2D%2Dquarto%2Dhl%2Dvs%2Dcolor%3A%20%2320794D%3B%0A%2D%2Dquarto%2Dhl%2Dwa%2Dcolor%3A%20%235E5E5E%3B%0A%2D%2Dquarto%2Dhl%2Ddo%2Dcolor%3A%20%235E5E5E%3B%0A%2D%2Dquarto%2Dhl%2Dim%2Dcolor%3A%20%2300769E%3B%0A%2D%2Dquarto%2Dhl%2Dch%2Dcolor%3A%20%2320794D%3B%0A%2D%2Dquarto%2Dhl%2Ddt%2Dcolor%3A%20%23AD0000%3B%0A%2D%2Dquarto%2Dhl%2Dfl%2Dcolor%3A%20%23AD0000%3B%0A%2D%2Dquarto%2Dhl%2Dco%2Dcolor%3A%20%235E5E5E%3B%0A%2D%2Dquarto%2Dhl%2Dcv%2Dcolor%3A%20%235E5E5E%3B%0A%2D%2Dquarto%2Dhl%2Dcn%2Dcolor%3A%20%238f5902%3B%0A%2D%2Dquarto%2Dhl%2Dsc%2Dcolor%3A%20%235E5E5E%3B%0A%2D%2Dquarto%2Dhl%2Ddv%2Dcolor%3A%20%23AD0000%3B%0A%2D%2Dquarto%2Dhl%2Dkw%2Dcolor%3A%20%23003B4F%3B%0A%7D%0A%0A%3Aroot%20%7B%0A%2D%2Dquarto%2Dfont%2Dmonospace%3A%20SFMono%2DRegular%2C%20Menlo%2C%20Monaco%2C%20Consolas%2C%20%22Liberation%20Mono%22%2C%20%22Courier%20New%22%2C%20monospace%3B%0A%7D%0Apre%20%3E%20code%2EsourceCode%20%3E%20span%20%7B%0Acolor%3A%20%23003B4F%3B%0A%7D%0Acode%20span%20%7B%0Acolor%3A%20%23003B4F%3B%0A%7D%0Acode%2EsourceCode%20%3E%20span%20%7B%0Acolor%3A%20%23003B4F%3B%0A%7D%0Adiv%2EsourceCode%2C%0Adiv%2EsourceCode%20pre%2EsourceCode%20%7B%0Acolor%3A%20%23003B4F%3B%0A%7D%0Acode%20span%2Eot%20%7B%0Acolor%3A%20%23003B4F%3B%0A%7D%0Acode%20span%2Eat%20%7B%0Acolor%3A%20%23657422%3B%0A%7D%0Acode%20span%2Ess%20%7B%0Acolor%3A%20%2320794D%3B%0A%7D%0Acode%20span%2Ean%20%7B%0Acolor%3A%20%235E5E5E%3B%0A%7D%0Acode%20span%2Efu%20%7B%0Acolor%3A%20%234758AB%3B%0A%7D%0Acode%20span%2Est%20%7B%0Acolor%3A%20%2320794D%3B%0A%7D%0Acode%20span%2Ecf%20%7B%0Acolor%3A%20%23003B4F%3B%0A%7D%0Acode%20span%2Eop%20%7B%0Acolor%3A%20%235E5E5E%3B%0A%7D%0Acode%20span%2Eer%20%7B%0Acolor%3A%20%23AD0000%3B%0A%7D%0Acode%20span%2Ebn%20%7B%0Acolor%3A%20%23AD0000%3B%0A%7D%0Acode%20span%2Eal%20%7B%0Acolor%3A%20%23AD0000%3B%0A%7D%0Acode%20span%2Eva%20%7B%0Acolor%3A%20%23111111%3B%0A%7D%0Acode%20span%2Epp%20%7B%0Acolor%3A%20%23AD0000%3B%0A%7D%0Acode%20span%2Ein%20%7B%0Acolor%3A%20%235E5E5E%3B%0A%7D%0Acode%20span%2Evs%20%7B%0Acolor%3A%20%2320794D%3B%0A%7D%0Acode%20span%2Ewa%20%7B%0Acolor%3A%20%235E5E5E%3B%0Afont%2Dstyle%3A%20italic%3B%0A%7D%0Acode%20span%2Edo%20%7B%0Acolor%3A%20%235E5E5E%3B%0Afont%2Dstyle%3A%20italic%3B%0A%7D%0Acode%20span%2Eim%20%7B%0Acolor%3A%20%2300769E%3B%0A%7D%0Acode%20span%2Ech%20%7B%0Acolor%3A%20%2320794D%3B%0A%7D%0Acode%20span%2Edt%20%7B%0Acolor%3A%20%23AD0000%3B%0A%7D%0Acode%20span%2Efl%20%7B%0Acolor%3A%20%23AD0000%3B%0A%7D%0Acode%20span%2Eco%20%7B%0Acolor%3A%20%235E5E5E%3B%0A%7D%0Acode%20span%2Ecv%20%7B%0Acolor%3A%20%235E5E5E%3B%0Afont%2Dstyle%3A%20italic%3B%0A%7D%0Acode%20span%2Ecn%20%7B%0Acolor%3A%20%238f5902%3B%0A%7D%0Acode%20span%2Esc%20%7B%0Acolor%3A%20%235E5E5E%3B%0A%7D%0Acode%20span%2Edv%20%7B%0Acolor%3A%20%23AD0000%3B%0A%7D%0Acode%20span%2Ekw%20%7B%0Acolor%3A%20%23003B4F%3B%0A%7D%0A%2Eprevent%2Dinlining%20%7B%0Acontent%3A%20%22%3C%2F%22%3B%0A%7D%0A%0A" rel="stylesheet" id="quarto-text-highlighting-styles">
<script>/*!
* Bootstrap v5.1.3 (https://getbootstrap.com/)
* Copyright 2011-2021 The Bootstrap Authors (https://github.com/twbs/bootstrap/graphs/contributors)
* Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)
*/
!function(t,e){"object"==typeof exports&&"undefined"!=typeof module?module.exports=e():"function"==typeof define&&define.amd?define(e):(t="undefined"!=typeof globalThis?globalThis:t||self).bootstrap=e()}(this,(function(){"use strict";const t="transitionend",e=t=>{let e=t.getAttribute("data-bs-target");if(!e||"#"===e){let i=t.getAttribute("href");if(!i||!i.includes("#")&&!i.startsWith("."))return null;i.includes("#")&&!i.startsWith("#")&&(i=`#${i.split("#")[1]}`),e=i&&"#"!==i?i.trim():null}return e},i=t=>{const i=e(t);return i&&document.querySelector(i)?i:null},n=t=>{const i=e(t);return i?document.querySelector(i):null},s=e=>{e.dispatchEvent(new Event(t))},o=t=>!(!t||"object"!=typeof t)&&(void 0!==t.jquery&&(t=t[0]),void 0!==t.nodeType),r=t=>o(t)?t.jquery?t[0]:t:"string"==typeof t&&t.length>0?document.querySelector(t):null,a=(t,e,i)=>{Object.keys(i).forEach((n=>{const s=i[n],r=e[n],a=r&&o(r)?"element":null==(l=r)?`${l}`:{}.toString.call(l).match(/\s([a-z]+)/i)[1].toLowerCase();var l;if(!new RegExp(s).test(a))throw new TypeError(`${t.toUpperCase()}: Option "${n}" provided type "${a}" but expected type "${s}".`)}))},l=t=>!(!o(t)||0===t.getClientRects().length)&&"visible"===getComputedStyle(t).getPropertyValue("visibility"),c=t=>!t||t.nodeType!==Node.ELEMENT_NODE||!!t.classList.contains("disabled")||(void 0!==t.disabled?t.disabled:t.hasAttribute("disabled")&&"false"!==t.getAttribute("disabled")),h=t=>{if(!document.documentElement.attachShadow)return null;if("function"==typeof t.getRootNode){const e=t.getRootNode();return e instanceof ShadowRoot?e:null}return t instanceof ShadowRoot?t:t.parentNode?h(t.parentNode):null},d=()=>{},u=t=>{t.offsetHeight},f=()=>{const{jQuery:t}=window;return t&&!document.body.hasAttribute("data-bs-no-jquery")?t:null},p=[],m=()=>"rtl"===document.documentElement.dir,g=t=>{var e;e=()=>{const e=f();if(e){const i=t.NAME,n=e.fn[i];e.fn[i]=t.jQueryInterface,e.fn[i].Constructor=t,e.fn[i].noConflict=()=>(e.fn[i]=n,t.jQueryInterface)}},"loading"===document.readyState?(p.length||document.addEventListener("DOMContentLoaded",(()=>{p.forEach((t=>t()))})),p.push(e)):e()},_=t=>{"function"==typeof t&&t()},b=(e,i,n=!0)=>{if(!n)return void _(e);const o=(t=>{if(!t)return 0;let{transitionDuration:e,transitionDelay:i}=window.getComputedStyle(t);const n=Number.parseFloat(e),s=Number.parseFloat(i);return n||s?(e=e.split(",")[0],i=i.split(",")[0],1e3*(Number.parseFloat(e)+Number.parseFloat(i))):0})(i)+5;let r=!1;const a=({target:n})=>{n===i&&(r=!0,i.removeEventListener(t,a),_(e))};i.addEventListener(t,a),setTimeout((()=>{r||s(i)}),o)},v=(t,e,i,n)=>{let s=t.indexOf(e);if(-1===s)return t[!i&&n?t.length-1:0];const o=t.length;return s+=i?1:-1,n&&(s=(s+o)%o),t[Math.max(0,Math.min(s,o-1))]},y=/[^.]*(?=\..*)\.|.*/,w=/\..*/,E=/::\d+$/,A={};let T=1;const O={mouseenter:"mouseover",mouseleave:"mouseout"},C=/^(mouseenter|mouseleave)/i,k=new Set(["click","dblclick","mouseup","mousedown","contextmenu","mousewheel","DOMMouseScroll","mouseover","mouseout","mousemove","selectstart","selectend","keydown","keypress","keyup","orientationchange","touchstart","touchmove","touchend","touchcancel","pointerdown","pointermove","pointerup","pointerleave","pointercancel","gesturestart","gesturechange","gestureend","focus","blur","change","reset","select","submit","focusin","focusout","load","unload","beforeunload","resize","move","DOMContentLoaded","readystatechange","error","abort","scroll"]);function L(t,e){return e&&`${e}::${T++}`||t.uidEvent||T++}function x(t){const e=L(t);return t.uidEvent=e,A[e]=A[e]||{},A[e]}function D(t,e,i=null){const n=Object.keys(t);for(let s=0,o=n.length;s<o;s++){const o=t[n[s]];if(o.originalHandler===e&&o.delegationSelector===i)return o}return null}function S(t,e,i){const n="string"==typeof e,s=n?i:e;let o=P(t);return k.has(o)||(o=t),[n,s,o]}function N(t,e,i,n,s){if("string"!=typeof e||!t)return;if(i||(i=n,n=null),C.test(e)){const t=t=>function(e){if(!e.relatedTarget||e.relatedTarget!==e.delegateTarget&&!e.delegateTarget.contains(e.relatedTarget))return t.call(this,e)};n?n=t(n):i=t(i)}const[o,r,a]=S(e,i,n),l=x(t),c=l[a]
//# sourceMappingURL=bootstrap.bundle.min.js.map</script>
<style type="text/css">@font-face {
font-family: "bootstrap-icons";
src: url(data:font/woff;base64,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
2022-08-19 12:02:37 +00:00
}
.bi::before,
[class^="bi-"]::before,
[class*=" bi-"]::before {
display: inline-block;
font-family: bootstrap-icons !important;
font-style: normal;
font-weight: normal !important;
font-variant: normal;
text-transform: none;
line-height: 1;
vertical-align: -.125em;
-webkit-font-smoothing: antialiased;
-moz-osx-font-smoothing: grayscale;
}
.bi-123::before { content: "\f67f"; }
.bi-alarm-fill::before { content: "\f101"; }
.bi-alarm::before { content: "\f102"; }
.bi-align-bottom::before { content: "\f103"; }
.bi-align-center::before { content: "\f104"; }
.bi-align-end::before { content: "\f105"; }
.bi-align-middle::before { content: "\f106"; }
.bi-align-start::before { content: "\f107"; }
.bi-align-top::before { content: "\f108"; }
.bi-alt::before { content: "\f109"; }
.bi-app-indicator::before { content: "\f10a"; }
.bi-app::before { content: "\f10b"; }
.bi-archive-fill::before { content: "\f10c"; }
.bi-archive::before { content: "\f10d"; }
.bi-arrow-90deg-down::before { content: "\f10e"; }
.bi-arrow-90deg-left::before { content: "\f10f"; }
.bi-arrow-90deg-right::before { content: "\f110"; }
.bi-arrow-90deg-up::before { content: "\f111"; }
.bi-arrow-bar-down::before { content: "\f112"; }
.bi-arrow-bar-left::before { content: "\f113"; }
.bi-arrow-bar-right::before { content: "\f114"; }
.bi-arrow-bar-up::before { content: "\f115"; }
.bi-arrow-clockwise::before { content: "\f116"; }
.bi-arrow-counterclockwise::before { content: "\f117"; }
.bi-arrow-down-circle-fill::before { content: "\f118"; }
.bi-arrow-down-circle::before { content: "\f119"; }
.bi-arrow-down-left-circle-fill::before { content: "\f11a"; }
.bi-arrow-down-left-circle::before { content: "\f11b"; }
.bi-arrow-down-left-square-fill::before { content: "\f11c"; }
.bi-arrow-down-left-square::before { content: "\f11d"; }
.bi-arrow-down-left::before { content: "\f11e"; }
.bi-arrow-down-right-circle-fill::before { content: "\f11f"; }
.bi-arrow-down-right-circle::before { content: "\f120"; }
.bi-arrow-down-right-square-fill::before { content: "\f121"; }
.bi-arrow-down-right-square::before { content: "\f122"; }
.bi-arrow-down-right::before { content: "\f123"; }
.bi-arrow-down-short::before { content: "\f124"; }
.bi-arrow-down-square-fill::before { content: "\f125"; }
.bi-arrow-down-square::before { content: "\f126"; }
.bi-arrow-down-up::before { content: "\f127"; }
.bi-arrow-down::before { content: "\f128"; }
.bi-arrow-left-circle-fill::before { content: "\f129"; }
.bi-arrow-left-circle::before { content: "\f12a"; }
.bi-arrow-left-right::before { content: "\f12b"; }
.bi-arrow-left-short::before { content: "\f12c"; }
.bi-arrow-left-square-fill::before { content: "\f12d"; }
.bi-arrow-left-square::before { content: "\f12e"; }
.bi-arrow-left::before { content: "\f12f"; }
.bi-arrow-repeat::before { content: "\f130"; }
.bi-arrow-return-left::before { content: "\f131"; }
.bi-arrow-return-right::before { content: "\f132"; }
.bi-arrow-right-circle-fill::before { content: "\f133"; }
.bi-arrow-right-circle::before { content: "\f134"; }
.bi-arrow-right-short::before { content: "\f135"; }
.bi-arrow-right-square-fill::before { content: "\f136"; }
.bi-arrow-right-square::before { content: "\f137"; }
.bi-arrow-right::before { content: "\f138"; }
.bi-arrow-up-circle-fill::before { content: "\f139"; }
.bi-arrow-up-circle::before { content: "\f13a"; }
.bi-arrow-up-left-circle-fill::before { content: "\f13b"; }
.bi-arrow-up-left-circle::before { content: "\f13c"; }
.bi-arrow-up-left-square-fill::before { content: "\f13d"; }
.bi-arrow-up-left-square::before { content: "\f13e"; }
.bi-arrow-up-left::before { content: "\f13f"; }
.bi-arrow-up-right-circle-fill::before { content: "\f140"; }
.bi-arrow-up-right-circle::before { content: "\f141"; }
.bi-arrow-up-right-square-fill::before { content: "\f142"; }
.bi-arrow-up-right-square::before { content: "\f143"; }
.bi-arrow-up-right::before { content: "\f144"; }
.bi-arrow-up-short::before { content: "\f145"; }
.bi-arrow-up-square-fill::before { content: "\f146"; }
.bi-arrow-up-square::before { content: "\f147"; }
.bi-arrow-up::before { content: "\f148"; }
.bi-arrows-angle-contract::before { content: "\f149"; }
.bi-arrows-angle-expand::before { content: "\f14a"; }
.bi-arrows-collapse::before { content: "\f14b"; }
.bi-arrows-expand::before { content: "\f14c"; }
.bi-arrows-fullscreen::before { content: "\f14d"; }
.bi-arrows-move::before { content: "\f14e"; }
.bi-aspect-ratio-fill::before { content: "\f14f"; }
.bi-aspect-ratio::before { content: "\f150"; }
.bi-asterisk::before { content: "\f151"; }
.bi-at::before { content: "\f152"; }
.bi-award-fill::before { content: "\f153"; }
.bi-award::before { content: "\f154"; }
.bi-back::before { content: "\f155"; }
.bi-backspace-fill::before { content: "\f156"; }
.bi-backspace-reverse-fill::before { content: "\f157"; }
.bi-backspace-reverse::before { content: "\f158"; }
.bi-backspace::before { content: "\f159"; }
.bi-badge-3d-fill::before { content: "\f15a"; }
.bi-badge-3d::before { content: "\f15b"; }
.bi-badge-4k-fill::before { content: "\f15c"; }
.bi-badge-4k::before { content: "\f15d"; }
.bi-badge-8k-fill::before { content: "\f15e"; }
.bi-badge-8k::before { content: "\f15f"; }
.bi-badge-ad-fill::before { content: "\f160"; }
.bi-badge-ad::before { content: "\f161"; }
.bi-badge-ar-fill::before { content: "\f162"; }
.bi-badge-ar::before { content: "\f163"; }
.bi-badge-cc-fill::before { content: "\f164"; }
.bi-badge-cc::before { content: "\f165"; }
.bi-badge-hd-fill::before { content: "\f166"; }
.bi-badge-hd::before { content: "\f167"; }
.bi-badge-tm-fill::before { content: "\f168"; }
.bi-badge-tm::before { content: "\f169"; }
.bi-badge-vo-fill::before { content: "\f16a"; }
.bi-badge-vo::before { content: "\f16b"; }
.bi-badge-vr-fill::before { content: "\f16c"; }
.bi-badge-vr::before { content: "\f16d"; }
.bi-badge-wc-fill::before { content: "\f16e"; }
.bi-badge-wc::before { content: "\f16f"; }
.bi-bag-check-fill::before { content: "\f170"; }
.bi-bag-check::before { content: "\f171"; }
.bi-bag-dash-fill::before { content: "\f172"; }
.bi-bag-dash::before { content: "\f173"; }
.bi-bag-fill::before { content: "\f174"; }
.bi-bag-plus-fill::before { content: "\f175"; }
.bi-bag-plus::before { content: "\f176"; }
.bi-bag-x-fill::before { content: "\f177"; }
.bi-bag-x::before { content: "\f178"; }
.bi-bag::before { content: "\f179"; }
.bi-bar-chart-fill::before { content: "\f17a"; }
.bi-bar-chart-line-fill::before { content: "\f17b"; }
.bi-bar-chart-line::before { content: "\f17c"; }
.bi-bar-chart-steps::before { content: "\f17d"; }
.bi-bar-chart::before { content: "\f17e"; }
.bi-basket-fill::before { content: "\f17f"; }
.bi-basket::before { content: "\f180"; }
.bi-basket2-fill::before { content: "\f181"; }
.bi-basket2::before { content: "\f182"; }
.bi-basket3-fill::before { content: "\f183"; }
.bi-basket3::before { content: "\f184"; }
.bi-battery-charging::before { content: "\f185"; }
.bi-battery-full::before { content: "\f186"; }
.bi-battery-half::before { content: "\f187"; }
.bi-battery::before { content: "\f188"; }
.bi-bell-fill::before { content: "\f189"; }
.bi-bell::before { content: "\f18a"; }
.bi-bezier::before { content: "\f18b"; }
.bi-bezier2::before { content: "\f18c"; }
.bi-bicycle::before { content: "\f18d"; }
.bi-binoculars-fill::before { content: "\f18e"; }
.bi-binoculars::before { content: "\f18f"; }
.bi-blockquote-left::before { content: "\f190"; }
.bi-blockquote-right::before { content: "\f191"; }
.bi-book-fill::before { content: "\f192"; }
.bi-book-half::before { content: "\f193"; }
.bi-book::before { content: "\f194"; }
.bi-bookmark-check-fill::before { content: "\f195"; }
.bi-bookmark-check::before { content: "\f196"; }
.bi-bookmark-dash-fill::before { content: "\f197"; }
.bi-bookmark-dash::before { content: "\f198"; }
.bi-bookmark-fill::before { content: "\f199"; }
.bi-bookmark-heart-fill::before { content: "\f19a"; }
.bi-bookmark-heart::before { content: "\f19b"; }
.bi-bookmark-plus-fill::before { content: "\f19c"; }
.bi-bookmark-plus::before { content: "\f19d"; }
.bi-bookmark-star-fill::before { content: "\f19e"; }
.bi-bookmark-star::before { content: "\f19f"; }
.bi-bookmark-x-fill::before { content: "\f1a0"; }
.bi-bookmark-x::before { content: "\f1a1"; }
.bi-bookmark::before { content: "\f1a2"; }
.bi-bookmarks-fill::before { content: "\f1a3"; }
.bi-bookmarks::before { content: "\f1a4"; }
.bi-bookshelf::before { content: "\f1a5"; }
.bi-bootstrap-fill::before { content: "\f1a6"; }
.bi-bootstrap-reboot::before { content: "\f1a7"; }
.bi-bootstrap::before { content: "\f1a8"; }
.bi-border-all::before { content: "\f1a9"; }
.bi-border-bottom::before { content: "\f1aa"; }
.bi-border-center::before { content: "\f1ab"; }
.bi-border-inner::before { content: "\f1ac"; }
.bi-border-left::before { content: "\f1ad"; }
.bi-border-middle::before { content: "\f1ae"; }
.bi-border-outer::before { content: "\f1af"; }
.bi-border-right::before { content: "\f1b0"; }
.bi-border-style::before { content: "\f1b1"; }
.bi-border-top::before { content: "\f1b2"; }
.bi-border-width::before { content: "\f1b3"; }
.bi-border::before { content: "\f1b4"; }
.bi-bounding-box-circles::before { content: "\f1b5"; }
.bi-bounding-box::before { content: "\f1b6"; }
.bi-box-arrow-down-left::before { content: "\f1b7"; }
.bi-box-arrow-down-right::before { content: "\f1b8"; }
.bi-box-arrow-down::before { content: "\f1b9"; }
.bi-box-arrow-in-down-left::before { content: "\f1ba"; }
.bi-box-arrow-in-down-right::before { content: "\f1bb"; }
.bi-box-arrow-in-down::before { content: "\f1bc"; }
.bi-box-arrow-in-left::before { content: "\f1bd"; }
.bi-box-arrow-in-right::before { content: "\f1be"; }
.bi-box-arrow-in-up-left::before { content: "\f1bf"; }
.bi-box-arrow-in-up-right::before { content: "\f1c0"; }
.bi-box-arrow-in-up::before { content: "\f1c1"; }
.bi-box-arrow-left::before { content: "\f1c2"; }
.bi-box-arrow-right::before { content: "\f1c3"; }
.bi-box-arrow-up-left::before { content: "\f1c4"; }
.bi-box-arrow-up-right::before { content: "\f1c5"; }
.bi-box-arrow-up::before { content: "\f1c6"; }
.bi-box-seam::before { content: "\f1c7"; }
.bi-box::before { content: "\f1c8"; }
.bi-braces::before { content: "\f1c9"; }
.bi-bricks::before { content: "\f1ca"; }
.bi-briefcase-fill::before { content: "\f1cb"; }
.bi-briefcase::before { content: "\f1cc"; }
.bi-brightness-alt-high-fill::before { content: "\f1cd"; }
.bi-brightness-alt-high::before { content: "\f1ce"; }
.bi-brightness-alt-low-fill::before { content: "\f1cf"; }
.bi-brightness-alt-low::before { content: "\f1d0"; }
.bi-brightness-high-fill::before { content: "\f1d1"; }
.bi-brightness-high::before { content: "\f1d2"; }
.bi-brightness-low-fill::before { content: "\f1d3"; }
.bi-brightness-low::before { content: "\f1d4"; }
.bi-broadcast-pin::before { content: "\f1d5"; }
.bi-broadcast::before { content: "\f1d6"; }
.bi-brush-fill::before { content: "\f1d7"; }
.bi-brush::before { content: "\f1d8"; }
.bi-bucket-fill::before { content: "\f1d9"; }
.bi-bucket::before { content: "\f1da"; }
.bi-bug-fill::before { content: "\f1db"; }
.bi-bug::before { content: "\f1dc"; }
.bi-building::before { content: "\f1dd"; }
.bi-bullseye::before { content: "\f1de"; }
.bi-calculator-fill::before { content: "\f1df"; }
.bi-calculator::before { content: "\f1e0"; }
.bi-calendar-check-fill::before { content: "\f1e1"; }
.bi-calendar-check::before { content: "\f1e2"; }
.bi-calendar-date-fill::before { content: "\f1e3"; }
.bi-calendar-date::before { content: "\f1e4"; }
.bi-calendar-day-fill::before { content: "\f1e5"; }
.bi-calendar-day::before { content: "\f1e6"; }
.bi-calendar-event-fill::before { content: "\f1e7"; }
.bi-calendar-event::before { content: "\f1e8"; }
.bi-calendar-fill::before { content: "\f1e9"; }
.bi-calendar-minus-fill::before { content: "\f1ea"; }
.bi-calendar-minus::before { content: "\f1eb"; }
.bi-calendar-month-fill::before { content: "\f1ec"; }
.bi-calendar-month::before { content: "\f1ed"; }
.bi-calendar-plus-fill::before { content: "\f1ee"; }
.bi-calendar-plus::before { content: "\f1ef"; }
.bi-calendar-range-fill::before { content: "\f1f0"; }
.bi-calendar-range::before { content: "\f1f1"; }
.bi-calendar-week-fill::before { content: "\f1f2"; }
.bi-calendar-week::before { content: "\f1f3"; }
.bi-calendar-x-fill::before { content: "\f1f4"; }
.bi-calendar-x::before { content: "\f1f5"; }
.bi-calendar::before { content: "\f1f6"; }
.bi-calendar2-check-fill::before { content: "\f1f7"; }
.bi-calendar2-check::before { content: "\f1f8"; }
.bi-calendar2-date-fill::before { content: "\f1f9"; }
.bi-calendar2-date::before { content: "\f1fa"; }
.bi-calendar2-day-fill::before { content: "\f1fb"; }
.bi-calendar2-day::before { content: "\f1fc"; }
.bi-calendar2-event-fill::before { content: "\f1fd"; }
.bi-calendar2-event::before { content: "\f1fe"; }
.bi-calendar2-fill::before { content: "\f1ff"; }
.bi-calendar2-minus-fill::before { content: "\f200"; }
.bi-calendar2-minus::before { content: "\f201"; }
.bi-calendar2-month-fill::before { content: "\f202"; }
.bi-calendar2-month::before { content: "\f203"; }
.bi-calendar2-plus-fill::before { content: "\f204"; }
.bi-calendar2-plus::before { content: "\f205"; }
.bi-calendar2-range-fill::before { content: "\f206"; }
.bi-calendar2-range::before { content: "\f207"; }
.bi-calendar2-week-fill::before { content: "\f208"; }
.bi-calendar2-week::before { content: "\f209"; }
.bi-calendar2-x-fill::before { content: "\f20a"; }
.bi-calendar2-x::before { content: "\f20b"; }
.bi-calendar2::before { content: "\f20c"; }
.bi-calendar3-event-fill::before { content: "\f20d"; }
.bi-calendar3-event::before { content: "\f20e"; }
.bi-calendar3-fill::before { content: "\f20f"; }
.bi-calendar3-range-fill::before { content: "\f210"; }
.bi-calendar3-range::before { content: "\f211"; }
.bi-calendar3-week-fill::before { content: "\f212"; }
.bi-calendar3-week::before { content: "\f213"; }
.bi-calendar3::before { content: "\f214"; }
.bi-calendar4-event::before { content: "\f215"; }
.bi-calendar4-range::before { content: "\f216"; }
.bi-calendar4-week::before { content: "\f217"; }
.bi-calendar4::before { content: "\f218"; }
.bi-camera-fill::before { content: "\f219"; }
.bi-camera-reels-fill::before { content: "\f21a"; }
.bi-camera-reels::before { content: "\f21b"; }
.bi-camera-video-fill::before { content: "\f21c"; }
.bi-camera-video-off-fill::before { content: "\f21d"; }
.bi-camera-video-off::before { content: "\f21e"; }
.bi-camera-video::before { content: "\f21f"; }
.bi-camera::before { content: "\f220"; }
.bi-camera2::before { content: "\f221"; }
.bi-capslock-fill::before { content: "\f222"; }
.bi-capslock::before { content: "\f223"; }
.bi-card-checklist::before { content: "\f224"; }
.bi-card-heading::before { content: "\f225"; }
.bi-card-image::before { content: "\f226"; }
.bi-card-list::before { content: "\f227"; }
.bi-card-text::before { content: "\f228"; }
.bi-caret-down-fill::before { content: "\f229"; }
.bi-caret-down-square-fill::before { content: "\f22a"; }
.bi-caret-down-square::before { content: "\f22b"; }
.bi-caret-down::before { content: "\f22c"; }
.bi-caret-left-fill::before { content: "\f22d"; }
.bi-caret-left-square-fill::before { content: "\f22e"; }
.bi-caret-left-square::before { content: "\f22f"; }
.bi-caret-left::before { content: "\f230"; }
.bi-caret-right-fill::before { content: "\f231"; }
.bi-caret-right-square-fill::before { content: "\f232"; }
.bi-caret-right-square::before { content: "\f233"; }
.bi-caret-right::before { content: "\f234"; }
.bi-caret-up-fill::before { content: "\f235"; }
.bi-caret-up-square-fill::before { content: "\f236"; }
.bi-caret-up-square::before { content: "\f237"; }
.bi-caret-up::before { content: "\f238"; }
.bi-cart-check-fill::before { content: "\f239"; }
.bi-cart-check::before { content: "\f23a"; }
.bi-cart-dash-fill::before { content: "\f23b"; }
.bi-cart-dash::before { content: "\f23c"; }
.bi-cart-fill::before { content: "\f23d"; }
.bi-cart-plus-fill::before { content: "\f23e"; }
.bi-cart-plus::before { content: "\f23f"; }
.bi-cart-x-fill::before { content: "\f240"; }
.bi-cart-x::before { content: "\f241"; }
.bi-cart::before { content: "\f242"; }
.bi-cart2::before { content: "\f243"; }
.bi-cart3::before { content: "\f244"; }
.bi-cart4::before { content: "\f245"; }
.bi-cash-stack::before { content: "\f246"; }
.bi-cash::before { content: "\f247"; }
.bi-cast::before { content: "\f248"; }
.bi-chat-dots-fill::before { content: "\f249"; }
.bi-chat-dots::before { content: "\f24a"; }
.bi-chat-fill::before { content: "\f24b"; }
.bi-chat-left-dots-fill::before { content: "\f24c"; }
.bi-chat-left-dots::before { content: "\f24d"; }
.bi-chat-left-fill::before { content: "\f24e"; }
.bi-chat-left-quote-fill::before { content: "\f24f"; }
.bi-chat-left-quote::before { content: "\f250"; }
.bi-chat-left-text-fill::before { content: "\f251"; }
.bi-chat-left-text::before { content: "\f252"; }
.bi-chat-left::before { content: "\f253"; }
.bi-chat-quote-fill::before { content: "\f254"; }
.bi-chat-quote::before { content: "\f255"; }
.bi-chat-right-dots-fill::before { content: "\f256"; }
.bi-chat-right-dots::before { content: "\f257"; }
.bi-chat-right-fill::before { content: "\f258"; }
.bi-chat-right-quote-fill::before { content: "\f259"; }
.bi-chat-right-quote::before { content: "\f25a"; }
.bi-chat-right-text-fill::before { content: "\f25b"; }
.bi-chat-right-text::before { content: "\f25c"; }
.bi-chat-right::before { content: "\f25d"; }
.bi-chat-square-dots-fill::before { content: "\f25e"; }
.bi-chat-square-dots::before { content: "\f25f"; }
.bi-chat-square-fill::before { content: "\f260"; }
.bi-chat-square-quote-fill::before { content: "\f261"; }
.bi-chat-square-quote::before { content: "\f262"; }
.bi-chat-square-text-fill::before { content: "\f263"; }
.bi-chat-square-text::before { content: "\f264"; }
.bi-chat-square::before { content: "\f265"; }
.bi-chat-text-fill::before { content: "\f266"; }
.bi-chat-text::before { content: "\f267"; }
.bi-chat::before { content: "\f268"; }
.bi-check-all::before { content: "\f269"; }
.bi-check-circle-fill::before { content: "\f26a"; }
.bi-check-circle::before { content: "\f26b"; }
.bi-check-square-fill::before { content: "\f26c"; }
.bi-check-square::before { content: "\f26d"; }
.bi-check::before { content: "\f26e"; }
.bi-check2-all::before { content: "\f26f"; }
.bi-check2-circle::before { content: "\f270"; }
.bi-check2-square::before { content: "\f271"; }
.bi-check2::before { content: "\f272"; }
.bi-chevron-bar-contract::before { content: "\f273"; }
.bi-chevron-bar-down::before { content: "\f274"; }
.bi-chevron-bar-expand::before { content: "\f275"; }
.bi-chevron-bar-left::before { content: "\f276"; }
.bi-chevron-bar-right::before { content: "\f277"; }
.bi-chevron-bar-up::before { content: "\f278"; }
.bi-chevron-compact-down::before { content: "\f279"; }
.bi-chevron-compact-left::before { content: "\f27a"; }
.bi-chevron-compact-right::before { content: "\f27b"; }
.bi-chevron-compact-up::before { content: "\f27c"; }
.bi-chevron-contract::before { content: "\f27d"; }
.bi-chevron-double-down::before { content: "\f27e"; }
.bi-chevron-double-left::before { content: "\f27f"; }
.bi-chevron-double-right::before { content: "\f280"; }
.bi-chevron-double-up::before { content: "\f281"; }
.bi-chevron-down::before { content: "\f282"; }
.bi-chevron-expand::before { content: "\f283"; }
.bi-chevron-left::before { content: "\f284"; }
.bi-chevron-right::before { content: "\f285"; }
.bi-chevron-up::before { content: "\f286"; }
.bi-circle-fill::before { content: "\f287"; }
.bi-circle-half::before { content: "\f288"; }
.bi-circle-square::before { content: "\f289"; }
.bi-circle::before { content: "\f28a"; }
.bi-clipboard-check::before { content: "\f28b"; }
.bi-clipboard-data::before { content: "\f28c"; }
.bi-clipboard-minus::before { content: "\f28d"; }
.bi-clipboard-plus::before { content: "\f28e"; }
.bi-clipboard-x::before { content: "\f28f"; }
.bi-clipboard::before { content: "\f290"; }
.bi-clock-fill::before { content: "\f291"; }
.bi-clock-history::before { content: "\f292"; }
.bi-clock::before { content: "\f293"; }
.bi-cloud-arrow-down-fill::before { content: "\f294"; }
.bi-cloud-arrow-down::before { content: "\f295"; }
.bi-cloud-arrow-up-fill::before { content: "\f296"; }
.bi-cloud-arrow-up::before { content: "\f297"; }
.bi-cloud-check-fill::before { content: "\f298"; }
.bi-cloud-check::before { content: "\f299"; }
.bi-cloud-download-fill::before { content: "\f29a"; }
.bi-cloud-download::before { content: "\f29b"; }
.bi-cloud-drizzle-fill::before { content: "\f29c"; }
.bi-cloud-drizzle::before { content: "\f29d"; }
.bi-cloud-fill::before { content: "\f29e"; }
.bi-cloud-fog-fill::before { content: "\f29f"; }
.bi-cloud-fog::before { content: "\f2a0"; }
.bi-cloud-fog2-fill::before { content: "\f2a1"; }
.bi-cloud-fog2::before { content: "\f2a2"; }
.bi-cloud-hail-fill::before { content: "\f2a3"; }
.bi-cloud-hail::before { content: "\f2a4"; }
.bi-cloud-haze-1::before { content: "\f2a5"; }
.bi-cloud-haze-fill::before { content: "\f2a6"; }
.bi-cloud-haze::before { content: "\f2a7"; }
.bi-cloud-haze2-fill::before { content: "\f2a8"; }
.bi-cloud-lightning-fill::before { content: "\f2a9"; }
.bi-cloud-lightning-rain-fill::before { content: "\f2aa"; }
.bi-cloud-lightning-rain::before { content: "\f2ab"; }
.bi-cloud-lightning::before { content: "\f2ac"; }
.bi-cloud-minus-fill::before { content: "\f2ad"; }
.bi-cloud-minus::before { content: "\f2ae"; }
.bi-cloud-moon-fill::before { content: "\f2af"; }
.bi-cloud-moon::before { content: "\f2b0"; }
.bi-cloud-plus-fill::before { content: "\f2b1"; }
.bi-cloud-plus::before { content: "\f2b2"; }
.bi-cloud-rain-fill::before { content: "\f2b3"; }
.bi-cloud-rain-heavy-fill::before { content: "\f2b4"; }
.bi-cloud-rain-heavy::before { content: "\f2b5"; }
.bi-cloud-rain::before { content: "\f2b6"; }
.bi-cloud-slash-fill::before { content: "\f2b7"; }
.bi-cloud-slash::before { content: "\f2b8"; }
.bi-cloud-sleet-fill::before { content: "\f2b9"; }
.bi-cloud-sleet::before { content: "\f2ba"; }
.bi-cloud-snow-fill::before { content: "\f2bb"; }
.bi-cloud-snow::before { content: "\f2bc"; }
.bi-cloud-sun-fill::before { content: "\f2bd"; }
.bi-cloud-sun::before { content: "\f2be"; }
.bi-cloud-upload-fill::before { content: "\f2bf"; }
.bi-cloud-upload::before { content: "\f2c0"; }
.bi-cloud::before { content: "\f2c1"; }
.bi-clouds-fill::before { content: "\f2c2"; }
.bi-clouds::before { content: "\f2c3"; }
.bi-cloudy-fill::before { content: "\f2c4"; }
.bi-cloudy::before { content: "\f2c5"; }
.bi-code-slash::before { content: "\f2c6"; }
.bi-code-square::before { content: "\f2c7"; }
.bi-code::before { content: "\f2c8"; }
.bi-collection-fill::before { content: "\f2c9"; }
.bi-collection-play-fill::before { content: "\f2ca"; }
.bi-collection-play::before { content: "\f2cb"; }
.bi-collection::before { content: "\f2cc"; }
.bi-columns-gap::before { content: "\f2cd"; }
.bi-columns::before { content: "\f2ce"; }
.bi-command::before { content: "\f2cf"; }
.bi-compass-fill::before { content: "\f2d0"; }
.bi-compass::before { content: "\f2d1"; }
.bi-cone-striped::before { content: "\f2d2"; }
.bi-cone::before { content: "\f2d3"; }
.bi-controller::before { content: "\f2d4"; }
.bi-cpu-fill::before { content: "\f2d5"; }
.bi-cpu::before { content: "\f2d6"; }
.bi-credit-card-2-back-fill::before { content: "\f2d7"; }
.bi-credit-card-2-back::before { content: "\f2d8"; }
.bi-credit-card-2-front-fill::before { content: "\f2d9"; }
.bi-credit-card-2-front::before { content: "\f2da"; }
.bi-credit-card-fill::before { content: "\f2db"; }
.bi-credit-card::before { content: "\f2dc"; }
.bi-crop::before { content: "\f2dd"; }
.bi-cup-fill::before { content: "\f2de"; }
.bi-cup-straw::before { content: "\f2df"; }
.bi-cup::before { content: "\f2e0"; }
.bi-cursor-fill::before { content: "\f2e1"; }
.bi-cursor-text::before { content: "\f2e2"; }
.bi-cursor::before { content: "\f2e3"; }
.bi-dash-circle-dotted::before { content: "\f2e4"; }
.bi-dash-circle-fill::before { content: "\f2e5"; }
.bi-dash-circle::before { content: "\f2e6"; }
.bi-dash-square-dotted::before { content: "\f2e7"; }
.bi-dash-square-fill::before { content: "\f2e8"; }
.bi-dash-square::before { content: "\f2e9"; }
.bi-dash::before { content: "\f2ea"; }
.bi-diagram-2-fill::before { content: "\f2eb"; }
.bi-diagram-2::before { content: "\f2ec"; }
.bi-diagram-3-fill::before { content: "\f2ed"; }
.bi-diagram-3::before { content: "\f2ee"; }
.bi-diamond-fill::before { content: "\f2ef"; }
.bi-diamond-half::before { content: "\f2f0"; }
.bi-diamond::before { content: "\f2f1"; }
.bi-dice-1-fill::before { content: "\f2f2"; }
.bi-dice-1::before { content: "\f2f3"; }
.bi-dice-2-fill::before { content: "\f2f4"; }
.bi-dice-2::before { content: "\f2f5"; }
.bi-dice-3-fill::before { content: "\f2f6"; }
.bi-dice-3::before { content: "\f2f7"; }
.bi-dice-4-fill::before { content: "\f2f8"; }
.bi-dice-4::before { content: "\f2f9"; }
.bi-dice-5-fill::before { content: "\f2fa"; }
.bi-dice-5::before { content: "\f2fb"; }
.bi-dice-6-fill::before { content: "\f2fc"; }
.bi-dice-6::before { content: "\f2fd"; }
.bi-disc-fill::before { content: "\f2fe"; }
.bi-disc::before { content: "\f2ff"; }
.bi-discord::before { content: "\f300"; }
.bi-display-fill::before { content: "\f301"; }
.bi-display::before { content: "\f302"; }
.bi-distribute-horizontal::before { content: "\f303"; }
.bi-distribute-vertical::before { content: "\f304"; }
.bi-door-closed-fill::before { content: "\f305"; }
.bi-door-closed::before { content: "\f306"; }
.bi-door-open-fill::before { content: "\f307"; }
.bi-door-open::before { content: "\f308"; }
.bi-dot::before { content: "\f309"; }
.bi-download::before { content: "\f30a"; }
.bi-droplet-fill::before { content: "\f30b"; }
.bi-droplet-half::before { content: "\f30c"; }
.bi-droplet::before { content: "\f30d"; }
.bi-earbuds::before { content: "\f30e"; }
.bi-easel-fill::before { content: "\f30f"; }
.bi-easel::before { content: "\f310"; }
.bi-egg-fill::before { content: "\f311"; }
.bi-egg-fried::before { content: "\f312"; }
.bi-egg::before { content: "\f313"; }
.bi-eject-fill::before { content: "\f314"; }
.bi-eject::before { content: "\f315"; }
.bi-emoji-angry-fill::before { content: "\f316"; }
.bi-emoji-angry::before { content: "\f317"; }
.bi-emoji-dizzy-fill::before { content: "\f318"; }
.bi-emoji-dizzy::before { content: "\f319"; }
.bi-emoji-expressionless-fill::before { content: "\f31a"; }
.bi-emoji-expressionless::before { content: "\f31b"; }
.bi-emoji-frown-fill::before { content: "\f31c"; }
.bi-emoji-frown::before { content: "\f31d"; }
.bi-emoji-heart-eyes-fill::before { content: "\f31e"; }
.bi-emoji-heart-eyes::before { content: "\f31f"; }
.bi-emoji-laughing-fill::before { content: "\f320"; }
.bi-emoji-laughing::before { content: "\f321"; }
.bi-emoji-neutral-fill::before { content: "\f322"; }
.bi-emoji-neutral::before { content: "\f323"; }
.bi-emoji-smile-fill::before { content: "\f324"; }
.bi-emoji-smile-upside-down-fill::before { content: "\f325"; }
.bi-emoji-smile-upside-down::before { content: "\f326"; }
.bi-emoji-smile::before { content: "\f327"; }
.bi-emoji-sunglasses-fill::before { content: "\f328"; }
.bi-emoji-sunglasses::before { content: "\f329"; }
.bi-emoji-wink-fill::before { content: "\f32a"; }
.bi-emoji-wink::before { content: "\f32b"; }
.bi-envelope-fill::before { content: "\f32c"; }
.bi-envelope-open-fill::before { content: "\f32d"; }
.bi-envelope-open::before { content: "\f32e"; }
.bi-envelope::before { content: "\f32f"; }
.bi-eraser-fill::before { content: "\f330"; }
.bi-eraser::before { content: "\f331"; }
.bi-exclamation-circle-fill::before { content: "\f332"; }
.bi-exclamation-circle::before { content: "\f333"; }
.bi-exclamation-diamond-fill::before { content: "\f334"; }
.bi-exclamation-diamond::before { content: "\f335"; }
.bi-exclamation-octagon-fill::before { content: "\f336"; }
.bi-exclamation-octagon::before { content: "\f337"; }
.bi-exclamation-square-fill::before { content: "\f338"; }
.bi-exclamation-square::before { content: "\f339"; }
.bi-exclamation-triangle-fill::before { content: "\f33a"; }
.bi-exclamation-triangle::before { content: "\f33b"; }
.bi-exclamation::before { content: "\f33c"; }
.bi-exclude::before { content: "\f33d"; }
.bi-eye-fill::before { content: "\f33e"; }
.bi-eye-slash-fill::before { content: "\f33f"; }
.bi-eye-slash::before { content: "\f340"; }
.bi-eye::before { content: "\f341"; }
.bi-eyedropper::before { content: "\f342"; }
.bi-eyeglasses::before { content: "\f343"; }
.bi-facebook::before { content: "\f344"; }
.bi-file-arrow-down-fill::before { content: "\f345"; }
.bi-file-arrow-down::before { content: "\f346"; }
.bi-file-arrow-up-fill::before { content: "\f347"; }
.bi-file-arrow-up::before { content: "\f348"; }
.bi-file-bar-graph-fill::before { content: "\f349"; }
.bi-file-bar-graph::before { content: "\f34a"; }
.bi-file-binary-fill::before { content: "\f34b"; }
.bi-file-binary::before { content: "\f34c"; }
.bi-file-break-fill::before { content: "\f34d"; }
.bi-file-break::before { content: "\f34e"; }
.bi-file-check-fill::before { content: "\f34f"; }
.bi-file-check::before { content: "\f350"; }
.bi-file-code-fill::before { content: "\f351"; }
.bi-file-code::before { content: "\f352"; }
.bi-file-diff-fill::before { content: "\f353"; }
.bi-file-diff::before { content: "\f354"; }
.bi-file-earmark-arrow-down-fill::before { content: "\f355"; }
.bi-file-earmark-arrow-down::before { content: "\f356"; }
.bi-file-earmark-arrow-up-fill::before { content: "\f357"; }
.bi-file-earmark-arrow-up::before { content: "\f358"; }
.bi-file-earmark-bar-graph-fill::before { content: "\f359"; }
.bi-file-earmark-bar-graph::before { content: "\f35a"; }
.bi-file-earmark-binary-fill::before { content: "\f35b"; }
.bi-file-earmark-binary::before { content: "\f35c"; }
.bi-file-earmark-break-fill::before { content: "\f35d"; }
.bi-file-earmark-break::before { content: "\f35e"; }
.bi-file-earmark-check-fill::before { content: "\f35f"; }
.bi-file-earmark-check::before { content: "\f360"; }
.bi-file-earmark-code-fill::before { content: "\f361"; }
.bi-file-earmark-code::before { content: "\f362"; }
.bi-file-earmark-diff-fill::before { content: "\f363"; }
.bi-file-earmark-diff::before { content: "\f364"; }
.bi-file-earmark-easel-fill::before { content: "\f365"; }
.bi-file-earmark-easel::before { content: "\f366"; }
.bi-file-earmark-excel-fill::before { content: "\f367"; }
.bi-file-earmark-excel::before { content: "\f368"; }
.bi-file-earmark-fill::before { content: "\f369"; }
.bi-file-earmark-font-fill::before { content: "\f36a"; }
.bi-file-earmark-font::before { content: "\f36b"; }
.bi-file-earmark-image-fill::before { content: "\f36c"; }
.bi-file-earmark-image::before { content: "\f36d"; }
.bi-file-earmark-lock-fill::before { content: "\f36e"; }
.bi-file-earmark-lock::before { content: "\f36f"; }
.bi-file-earmark-lock2-fill::before { content: "\f370"; }
.bi-file-earmark-lock2::before { content: "\f371"; }
.bi-file-earmark-medical-fill::before { content: "\f372"; }
.bi-file-earmark-medical::before { content: "\f373"; }
.bi-file-earmark-minus-fill::before { content: "\f374"; }
.bi-file-earmark-minus::before { content: "\f375"; }
.bi-file-earmark-music-fill::before { content: "\f376"; }
.bi-file-earmark-music::before { content: "\f377"; }
.bi-file-earmark-person-fill::before { content: "\f378"; }
.bi-file-earmark-person::before { content: "\f379"; }
.bi-file-earmark-play-fill::before { content: "\f37a"; }
.bi-file-earmark-play::before { content: "\f37b"; }
.bi-file-earmark-plus-fill::before { content: "\f37c"; }
.bi-file-earmark-plus::before { content: "\f37d"; }
.bi-file-earmark-post-fill::before { content: "\f37e"; }
.bi-file-earmark-post::before { content: "\f37f"; }
.bi-file-earmark-ppt-fill::before { content: "\f380"; }
.bi-file-earmark-ppt::before { content: "\f381"; }
.bi-file-earmark-richtext-fill::before { content: "\f382"; }
.bi-file-earmark-richtext::before { content: "\f383"; }
.bi-file-earmark-ruled-fill::before { content: "\f384"; }
.bi-file-earmark-ruled::before { content: "\f385"; }
.bi-file-earmark-slides-fill::before { content: "\f386"; }
.bi-file-earmark-slides::before { content: "\f387"; }
.bi-file-earmark-spreadsheet-fill::before { content: "\f388"; }
.bi-file-earmark-spreadsheet::before { content: "\f389"; }
.bi-file-earmark-text-fill::before { content: "\f38a"; }
.bi-file-earmark-text::before { content: "\f38b"; }
.bi-file-earmark-word-fill::before { content: "\f38c"; }
.bi-file-earmark-word::before { content: "\f38d"; }
.bi-file-earmark-x-fill::before { content: "\f38e"; }
.bi-file-earmark-x::before { content: "\f38f"; }
.bi-file-earmark-zip-fill::before { content: "\f390"; }
.bi-file-earmark-zip::before { content: "\f391"; }
.bi-file-earmark::before { content: "\f392"; }
.bi-file-easel-fill::before { content: "\f393"; }
.bi-file-easel::before { content: "\f394"; }
.bi-file-excel-fill::before { content: "\f395"; }
.bi-file-excel::before { content: "\f396"; }
.bi-file-fill::before { content: "\f397"; }
.bi-file-font-fill::before { content: "\f398"; }
.bi-file-font::before { content: "\f399"; }
.bi-file-image-fill::before { content: "\f39a"; }
.bi-file-image::before { content: "\f39b"; }
.bi-file-lock-fill::before { content: "\f39c"; }
.bi-file-lock::before { content: "\f39d"; }
.bi-file-lock2-fill::before { content: "\f39e"; }
.bi-file-lock2::before { content: "\f39f"; }
.bi-file-medical-fill::before { content: "\f3a0"; }
.bi-file-medical::before { content: "\f3a1"; }
.bi-file-minus-fill::before { content: "\f3a2"; }
.bi-file-minus::before { content: "\f3a3"; }
.bi-file-music-fill::before { content: "\f3a4"; }
.bi-file-music::before { content: "\f3a5"; }
.bi-file-person-fill::before { content: "\f3a6"; }
.bi-file-person::before { content: "\f3a7"; }
.bi-file-play-fill::before { content: "\f3a8"; }
.bi-file-play::before { content: "\f3a9"; }
.bi-file-plus-fill::before { content: "\f3aa"; }
.bi-file-plus::before { content: "\f3ab"; }
.bi-file-post-fill::before { content: "\f3ac"; }
.bi-file-post::before { content: "\f3ad"; }
.bi-file-ppt-fill::before { content: "\f3ae"; }
.bi-file-ppt::before { content: "\f3af"; }
.bi-file-richtext-fill::before { content: "\f3b0"; }
.bi-file-richtext::before { content: "\f3b1"; }
.bi-file-ruled-fill::before { content: "\f3b2"; }
.bi-file-ruled::before { content: "\f3b3"; }
.bi-file-slides-fill::before { content: "\f3b4"; }
.bi-file-slides::before { content: "\f3b5"; }
.bi-file-spreadsheet-fill::before { content: "\f3b6"; }
.bi-file-spreadsheet::before { content: "\f3b7"; }
.bi-file-text-fill::before { content: "\f3b8"; }
.bi-file-text::before { content: "\f3b9"; }
.bi-file-word-fill::before { content: "\f3ba"; }
.bi-file-word::before { content: "\f3bb"; }
.bi-file-x-fill::before { content: "\f3bc"; }
.bi-file-x::before { content: "\f3bd"; }
.bi-file-zip-fill::before { content: "\f3be"; }
.bi-file-zip::before { content: "\f3bf"; }
.bi-file::before { content: "\f3c0"; }
.bi-files-alt::before { content: "\f3c1"; }
.bi-files::before { content: "\f3c2"; }
.bi-film::before { content: "\f3c3"; }
.bi-filter-circle-fill::before { content: "\f3c4"; }
.bi-filter-circle::before { content: "\f3c5"; }
.bi-filter-left::before { content: "\f3c6"; }
.bi-filter-right::before { content: "\f3c7"; }
.bi-filter-square-fill::before { content: "\f3c8"; }
.bi-filter-square::before { content: "\f3c9"; }
.bi-filter::before { content: "\f3ca"; }
.bi-flag-fill::before { content: "\f3cb"; }
.bi-flag::before { content: "\f3cc"; }
.bi-flower1::before { content: "\f3cd"; }
.bi-flower2::before { content: "\f3ce"; }
.bi-flower3::before { content: "\f3cf"; }
.bi-folder-check::before { content: "\f3d0"; }
.bi-folder-fill::before { content: "\f3d1"; }
.bi-folder-minus::before { content: "\f3d2"; }
.bi-folder-plus::before { content: "\f3d3"; }
.bi-folder-symlink-fill::before { content: "\f3d4"; }
.bi-folder-symlink::before { content: "\f3d5"; }
.bi-folder-x::before { content: "\f3d6"; }
.bi-folder::before { content: "\f3d7"; }
.bi-folder2-open::before { content: "\f3d8"; }
.bi-folder2::before { content: "\f3d9"; }
.bi-fonts::before { content: "\f3da"; }
.bi-forward-fill::before { content: "\f3db"; }
.bi-forward::before { content: "\f3dc"; }
.bi-front::before { content: "\f3dd"; }
.bi-fullscreen-exit::before { content: "\f3de"; }
.bi-fullscreen::before { content: "\f3df"; }
.bi-funnel-fill::before { content: "\f3e0"; }
.bi-funnel::before { content: "\f3e1"; }
.bi-gear-fill::before { content: "\f3e2"; }
.bi-gear-wide-connected::before { content: "\f3e3"; }
.bi-gear-wide::before { content: "\f3e4"; }
.bi-gear::before { content: "\f3e5"; }
.bi-gem::before { content: "\f3e6"; }
.bi-geo-alt-fill::before { content: "\f3e7"; }
.bi-geo-alt::before { content: "\f3e8"; }
.bi-geo-fill::before { content: "\f3e9"; }
.bi-geo::before { content: "\f3ea"; }
.bi-gift-fill::before { content: "\f3eb"; }
.bi-gift::before { content: "\f3ec"; }
.bi-github::before { content: "\f3ed"; }
.bi-globe::before { content: "\f3ee"; }
.bi-globe2::before { content: "\f3ef"; }
.bi-google::before { content: "\f3f0"; }
.bi-graph-down::before { content: "\f3f1"; }
.bi-graph-up::before { content: "\f3f2"; }
.bi-grid-1x2-fill::before { content: "\f3f3"; }
.bi-grid-1x2::before { content: "\f3f4"; }
.bi-grid-3x2-gap-fill::before { content: "\f3f5"; }
.bi-grid-3x2-gap::before { content: "\f3f6"; }
.bi-grid-3x2::before { content: "\f3f7"; }
.bi-grid-3x3-gap-fill::before { content: "\f3f8"; }
.bi-grid-3x3-gap::before { content: "\f3f9"; }
.bi-grid-3x3::before { content: "\f3fa"; }
.bi-grid-fill::before { content: "\f3fb"; }
.bi-grid::before { content: "\f3fc"; }
.bi-grip-horizontal::before { content: "\f3fd"; }
.bi-grip-vertical::before { content: "\f3fe"; }
.bi-hammer::before { content: "\f3ff"; }
.bi-hand-index-fill::before { content: "\f400"; }
.bi-hand-index-thumb-fill::before { content: "\f401"; }
.bi-hand-index-thumb::before { content: "\f402"; }
.bi-hand-index::before { content: "\f403"; }
.bi-hand-thumbs-down-fill::before { content: "\f404"; }
.bi-hand-thumbs-down::before { content: "\f405"; }
.bi-hand-thumbs-up-fill::before { content: "\f406"; }
.bi-hand-thumbs-up::before { content: "\f407"; }
.bi-handbag-fill::before { content: "\f408"; }
.bi-handbag::before { content: "\f409"; }
.bi-hash::before { content: "\f40a"; }
.bi-hdd-fill::before { content: "\f40b"; }
.bi-hdd-network-fill::before { content: "\f40c"; }
.bi-hdd-network::before { content: "\f40d"; }
.bi-hdd-rack-fill::before { content: "\f40e"; }
.bi-hdd-rack::before { content: "\f40f"; }
.bi-hdd-stack-fill::before { content: "\f410"; }
.bi-hdd-stack::before { content: "\f411"; }
.bi-hdd::before { content: "\f412"; }
.bi-headphones::before { content: "\f413"; }
.bi-headset::before { content: "\f414"; }
.bi-heart-fill::before { content: "\f415"; }
.bi-heart-half::before { content: "\f416"; }
.bi-heart::before { content: "\f417"; }
.bi-heptagon-fill::before { content: "\f418"; }
.bi-heptagon-half::before { content: "\f419"; }
.bi-heptagon::before { content: "\f41a"; }
.bi-hexagon-fill::before { content: "\f41b"; }
.bi-hexagon-half::before { content: "\f41c"; }
.bi-hexagon::before { content: "\f41d"; }
.bi-hourglass-bottom::before { content: "\f41e"; }
.bi-hourglass-split::before { content: "\f41f"; }
.bi-hourglass-top::before { content: "\f420"; }
.bi-hourglass::before { content: "\f421"; }
.bi-house-door-fill::before { content: "\f422"; }
.bi-house-door::before { content: "\f423"; }
.bi-house-fill::before { content: "\f424"; }
.bi-house::before { content: "\f425"; }
.bi-hr::before { content: "\f426"; }
.bi-hurricane::before { content: "\f427"; }
.bi-image-alt::before { content: "\f428"; }
.bi-image-fill::before { content: "\f429"; }
.bi-image::before { content: "\f42a"; }
.bi-images::before { content: "\f42b"; }
.bi-inbox-fill::before { content: "\f42c"; }
.bi-inbox::before { content: "\f42d"; }
.bi-inboxes-fill::before { content: "\f42e"; }
.bi-inboxes::before { content: "\f42f"; }
.bi-info-circle-fill::before { content: "\f430"; }
.bi-info-circle::before { content: "\f431"; }
.bi-info-square-fill::before { content: "\f432"; }
.bi-info-square::before { content: "\f433"; }
.bi-info::before { content: "\f434"; }
.bi-input-cursor-text::before { content: "\f435"; }
.bi-input-cursor::before { content: "\f436"; }
.bi-instagram::before { content: "\f437"; }
.bi-intersect::before { content: "\f438"; }
.bi-journal-album::before { content: "\f439"; }
.bi-journal-arrow-down::before { content: "\f43a"; }
.bi-journal-arrow-up::before { content: "\f43b"; }
.bi-journal-bookmark-fill::before { content: "\f43c"; }
.bi-journal-bookmark::before { content: "\f43d"; }
.bi-journal-check::before { content: "\f43e"; }
.bi-journal-code::before { content: "\f43f"; }
.bi-journal-medical::before { content: "\f440"; }
.bi-journal-minus::before { content: "\f441"; }
.bi-journal-plus::before { content: "\f442"; }
.bi-journal-richtext::before { content: "\f443"; }
.bi-journal-text::before { content: "\f444"; }
.bi-journal-x::before { content: "\f445"; }
.bi-journal::before { content: "\f446"; }
.bi-journals::before { content: "\f447"; }
.bi-joystick::before { content: "\f448"; }
.bi-justify-left::before { content: "\f449"; }
.bi-justify-right::before { content: "\f44a"; }
.bi-justify::before { content: "\f44b"; }
.bi-kanban-fill::before { content: "\f44c"; }
.bi-kanban::before { content: "\f44d"; }
.bi-key-fill::before { content: "\f44e"; }
.bi-key::before { content: "\f44f"; }
.bi-keyboard-fill::before { content: "\f450"; }
.bi-keyboard::before { content: "\f451"; }
.bi-ladder::before { content: "\f452"; }
.bi-lamp-fill::before { content: "\f453"; }
.bi-lamp::before { content: "\f454"; }
.bi-laptop-fill::before { content: "\f455"; }
.bi-laptop::before { content: "\f456"; }
.bi-layer-backward::before { content: "\f457"; }
.bi-layer-forward::before { content: "\f458"; }
.bi-layers-fill::before { content: "\f459"; }
.bi-layers-half::before { content: "\f45a"; }
.bi-layers::before { content: "\f45b"; }
.bi-layout-sidebar-inset-reverse::before { content: "\f45c"; }
.bi-layout-sidebar-inset::before { content: "\f45d"; }
.bi-layout-sidebar-reverse::before { content: "\f45e"; }
.bi-layout-sidebar::before { content: "\f45f"; }
.bi-layout-split::before { content: "\f460"; }
.bi-layout-text-sidebar-reverse::before { content: "\f461"; }
.bi-layout-text-sidebar::before { content: "\f462"; }
.bi-layout-text-window-reverse::before { content: "\f463"; }
.bi-layout-text-window::before { content: "\f464"; }
.bi-layout-three-columns::before { content: "\f465"; }
.bi-layout-wtf::before { content: "\f466"; }
.bi-life-preserver::before { content: "\f467"; }
.bi-lightbulb-fill::before { content: "\f468"; }
.bi-lightbulb-off-fill::before { content: "\f469"; }
.bi-lightbulb-off::before { content: "\f46a"; }
.bi-lightbulb::before { content: "\f46b"; }
.bi-lightning-charge-fill::before { content: "\f46c"; }
.bi-lightning-charge::before { content: "\f46d"; }
.bi-lightning-fill::before { content: "\f46e"; }
.bi-lightning::before { content: "\f46f"; }
.bi-link-45deg::before { content: "\f470"; }
.bi-link::before { content: "\f471"; }
.bi-linkedin::before { content: "\f472"; }
.bi-list-check::before { content: "\f473"; }
.bi-list-nested::before { content: "\f474"; }
.bi-list-ol::before { content: "\f475"; }
.bi-list-stars::before { content: "\f476"; }
.bi-list-task::before { content: "\f477"; }
.bi-list-ul::before { content: "\f478"; }
.bi-list::before { content: "\f479"; }
.bi-lock-fill::before { content: "\f47a"; }
.bi-lock::before { content: "\f47b"; }
.bi-mailbox::before { content: "\f47c"; }
.bi-mailbox2::before { content: "\f47d"; }
.bi-map-fill::before { content: "\f47e"; }
.bi-map::before { content: "\f47f"; }
.bi-markdown-fill::before { content: "\f480"; }
.bi-markdown::before { content: "\f481"; }
.bi-mask::before { content: "\f482"; }
.bi-megaphone-fill::before { content: "\f483"; }
.bi-megaphone::before { content: "\f484"; }
.bi-menu-app-fill::before { content: "\f485"; }
.bi-menu-app::before { content: "\f486"; }
.bi-menu-button-fill::before { content: "\f487"; }
.bi-menu-button-wide-fill::before { content: "\f488"; }
.bi-menu-button-wide::before { content: "\f489"; }
.bi-menu-button::before { content: "\f48a"; }
.bi-menu-down::before { content: "\f48b"; }
.bi-menu-up::before { content: "\f48c"; }
.bi-mic-fill::before { content: "\f48d"; }
.bi-mic-mute-fill::before { content: "\f48e"; }
.bi-mic-mute::before { content: "\f48f"; }
.bi-mic::before { content: "\f490"; }
.bi-minecart-loaded::before { content: "\f491"; }
.bi-minecart::before { content: "\f492"; }
.bi-moisture::before { content: "\f493"; }
.bi-moon-fill::before { content: "\f494"; }
.bi-moon-stars-fill::before { content: "\f495"; }
.bi-moon-stars::before { content: "\f496"; }
.bi-moon::before { content: "\f497"; }
.bi-mouse-fill::before { content: "\f498"; }
.bi-mouse::before { content: "\f499"; }
.bi-mouse2-fill::before { content: "\f49a"; }
.bi-mouse2::before { content: "\f49b"; }
.bi-mouse3-fill::before { content: "\f49c"; }
.bi-mouse3::before { content: "\f49d"; }
.bi-music-note-beamed::before { content: "\f49e"; }
.bi-music-note-list::before { content: "\f49f"; }
.bi-music-note::before { content: "\f4a0"; }
.bi-music-player-fill::before { content: "\f4a1"; }
.bi-music-player::before { content: "\f4a2"; }
.bi-newspaper::before { content: "\f4a3"; }
.bi-node-minus-fill::before { content: "\f4a4"; }
.bi-node-minus::before { content: "\f4a5"; }
.bi-node-plus-fill::before { content: "\f4a6"; }
.bi-node-plus::before { content: "\f4a7"; }
.bi-nut-fill::before { content: "\f4a8"; }
.bi-nut::before { content: "\f4a9"; }
.bi-octagon-fill::before { content: "\f4aa"; }
.bi-octagon-half::before { content: "\f4ab"; }
.bi-octagon::before { content: "\f4ac"; }
.bi-option::before { content: "\f4ad"; }
.bi-outlet::before { content: "\f4ae"; }
.bi-paint-bucket::before { content: "\f4af"; }
.bi-palette-fill::before { content: "\f4b0"; }
.bi-palette::before { content: "\f4b1"; }
.bi-palette2::before { content: "\f4b2"; }
.bi-paperclip::before { content: "\f4b3"; }
.bi-paragraph::before { content: "\f4b4"; }
.bi-patch-check-fill::before { content: "\f4b5"; }
.bi-patch-check::before { content: "\f4b6"; }
.bi-patch-exclamation-fill::before { content: "\f4b7"; }
.bi-patch-exclamation::before { content: "\f4b8"; }
.bi-patch-minus-fill::before { content: "\f4b9"; }
.bi-patch-minus::before { content: "\f4ba"; }
.bi-patch-plus-fill::before { content: "\f4bb"; }
.bi-patch-plus::before { content: "\f4bc"; }
.bi-patch-question-fill::before { content: "\f4bd"; }
.bi-patch-question::before { content: "\f4be"; }
.bi-pause-btn-fill::before { content: "\f4bf"; }
.bi-pause-btn::before { content: "\f4c0"; }
.bi-pause-circle-fill::before { content: "\f4c1"; }
.bi-pause-circle::before { content: "\f4c2"; }
.bi-pause-fill::before { content: "\f4c3"; }
.bi-pause::before { content: "\f4c4"; }
.bi-peace-fill::before { content: "\f4c5"; }
.bi-peace::before { content: "\f4c6"; }
.bi-pen-fill::before { content: "\f4c7"; }
.bi-pen::before { content: "\f4c8"; }
.bi-pencil-fill::before { content: "\f4c9"; }
.bi-pencil-square::before { content: "\f4ca"; }
.bi-pencil::before { content: "\f4cb"; }
.bi-pentagon-fill::before { content: "\f4cc"; }
.bi-pentagon-half::before { content: "\f4cd"; }
.bi-pentagon::before { content: "\f4ce"; }
.bi-people-fill::before { content: "\f4cf"; }
.bi-people::before { content: "\f4d0"; }
.bi-percent::before { content: "\f4d1"; }
.bi-person-badge-fill::before { content: "\f4d2"; }
.bi-person-badge::before { content: "\f4d3"; }
.bi-person-bounding-box::before { content: "\f4d4"; }
.bi-person-check-fill::before { content: "\f4d5"; }
.bi-person-check::before { content: "\f4d6"; }
.bi-person-circle::before { content: "\f4d7"; }
.bi-person-dash-fill::before { content: "\f4d8"; }
.bi-person-dash::before { content: "\f4d9"; }
.bi-person-fill::before { content: "\f4da"; }
.bi-person-lines-fill::before { content: "\f4db"; }
.bi-person-plus-fill::before { content: "\f4dc"; }
.bi-person-plus::before { content: "\f4dd"; }
.bi-person-square::before { content: "\f4de"; }
.bi-person-x-fill::before { content: "\f4df"; }
.bi-person-x::before { content: "\f4e0"; }
.bi-person::before { content: "\f4e1"; }
.bi-phone-fill::before { content: "\f4e2"; }
.bi-phone-landscape-fill::before { content: "\f4e3"; }
.bi-phone-landscape::before { content: "\f4e4"; }
.bi-phone-vibrate-fill::before { content: "\f4e5"; }
.bi-phone-vibrate::before { content: "\f4e6"; }
.bi-phone::before { content: "\f4e7"; }
.bi-pie-chart-fill::before { content: "\f4e8"; }
.bi-pie-chart::before { content: "\f4e9"; }
.bi-pin-angle-fill::before { content: "\f4ea"; }
.bi-pin-angle::before { content: "\f4eb"; }
.bi-pin-fill::before { content: "\f4ec"; }
.bi-pin::before { content: "\f4ed"; }
.bi-pip-fill::before { content: "\f4ee"; }
.bi-pip::before { content: "\f4ef"; }
.bi-play-btn-fill::before { content: "\f4f0"; }
.bi-play-btn::before { content: "\f4f1"; }
.bi-play-circle-fill::before { content: "\f4f2"; }
.bi-play-circle::before { content: "\f4f3"; }
.bi-play-fill::before { content: "\f4f4"; }
.bi-play::before { content: "\f4f5"; }
.bi-plug-fill::before { content: "\f4f6"; }
.bi-plug::before { content: "\f4f7"; }
.bi-plus-circle-dotted::before { content: "\f4f8"; }
.bi-plus-circle-fill::before { content: "\f4f9"; }
.bi-plus-circle::before { content: "\f4fa"; }
.bi-plus-square-dotted::before { content: "\f4fb"; }
.bi-plus-square-fill::before { content: "\f4fc"; }
.bi-plus-square::before { content: "\f4fd"; }
.bi-plus::before { content: "\f4fe"; }
.bi-power::before { content: "\f4ff"; }
.bi-printer-fill::before { content: "\f500"; }
.bi-printer::before { content: "\f501"; }
.bi-puzzle-fill::before { content: "\f502"; }
.bi-puzzle::before { content: "\f503"; }
.bi-question-circle-fill::before { content: "\f504"; }
.bi-question-circle::before { content: "\f505"; }
.bi-question-diamond-fill::before { content: "\f506"; }
.bi-question-diamond::before { content: "\f507"; }
.bi-question-octagon-fill::before { content: "\f508"; }
.bi-question-octagon::before { content: "\f509"; }
.bi-question-square-fill::before { content: "\f50a"; }
.bi-question-square::before { content: "\f50b"; }
.bi-question::before { content: "\f50c"; }
.bi-rainbow::before { content: "\f50d"; }
.bi-receipt-cutoff::before { content: "\f50e"; }
.bi-receipt::before { content: "\f50f"; }
.bi-reception-0::before { content: "\f510"; }
.bi-reception-1::before { content: "\f511"; }
.bi-reception-2::before { content: "\f512"; }
.bi-reception-3::before { content: "\f513"; }
.bi-reception-4::before { content: "\f514"; }
.bi-record-btn-fill::before { content: "\f515"; }
.bi-record-btn::before { content: "\f516"; }
.bi-record-circle-fill::before { content: "\f517"; }
.bi-record-circle::before { content: "\f518"; }
.bi-record-fill::before { content: "\f519"; }
.bi-record::before { content: "\f51a"; }
.bi-record2-fill::before { content: "\f51b"; }
.bi-record2::before { content: "\f51c"; }
.bi-reply-all-fill::before { content: "\f51d"; }
.bi-reply-all::before { content: "\f51e"; }
.bi-reply-fill::before { content: "\f51f"; }
.bi-reply::before { content: "\f520"; }
.bi-rss-fill::before { content: "\f521"; }
.bi-rss::before { content: "\f522"; }
.bi-rulers::before { content: "\f523"; }
.bi-save-fill::before { content: "\f524"; }
.bi-save::before { content: "\f525"; }
.bi-save2-fill::before { content: "\f526"; }
.bi-save2::before { content: "\f527"; }
.bi-scissors::before { content: "\f528"; }
.bi-screwdriver::before { content: "\f529"; }
.bi-search::before { content: "\f52a"; }
.bi-segmented-nav::before { content: "\f52b"; }
.bi-server::before { content: "\f52c"; }
.bi-share-fill::before { content: "\f52d"; }
.bi-share::before { content: "\f52e"; }
.bi-shield-check::before { content: "\f52f"; }
.bi-shield-exclamation::before { content: "\f530"; }
.bi-shield-fill-check::before { content: "\f531"; }
.bi-shield-fill-exclamation::before { content: "\f532"; }
.bi-shield-fill-minus::before { content: "\f533"; }
.bi-shield-fill-plus::before { content: "\f534"; }
.bi-shield-fill-x::before { content: "\f535"; }
.bi-shield-fill::before { content: "\f536"; }
.bi-shield-lock-fill::before { content: "\f537"; }
.bi-shield-lock::before { content: "\f538"; }
.bi-shield-minus::before { content: "\f539"; }
.bi-shield-plus::before { content: "\f53a"; }
.bi-shield-shaded::before { content: "\f53b"; }
.bi-shield-slash-fill::before { content: "\f53c"; }
.bi-shield-slash::before { content: "\f53d"; }
.bi-shield-x::before { content: "\f53e"; }
.bi-shield::before { content: "\f53f"; }
.bi-shift-fill::before { content: "\f540"; }
.bi-shift::before { content: "\f541"; }
.bi-shop-window::before { content: "\f542"; }
.bi-shop::before { content: "\f543"; }
.bi-shuffle::before { content: "\f544"; }
.bi-signpost-2-fill::before { content: "\f545"; }
.bi-signpost-2::before { content: "\f546"; }
.bi-signpost-fill::before { content: "\f547"; }
.bi-signpost-split-fill::before { content: "\f548"; }
.bi-signpost-split::before { content: "\f549"; }
.bi-signpost::before { content: "\f54a"; }
.bi-sim-fill::before { content: "\f54b"; }
.bi-sim::before { content: "\f54c"; }
.bi-skip-backward-btn-fill::before { content: "\f54d"; }
.bi-skip-backward-btn::before { content: "\f54e"; }
.bi-skip-backward-circle-fill::before { content: "\f54f"; }
.bi-skip-backward-circle::before { content: "\f550"; }
.bi-skip-backward-fill::before { content: "\f551"; }
.bi-skip-backward::before { content: "\f552"; }
.bi-skip-end-btn-fill::before { content: "\f553"; }
.bi-skip-end-btn::before { content: "\f554"; }
.bi-skip-end-circle-fill::before { content: "\f555"; }
.bi-skip-end-circle::before { content: "\f556"; }
.bi-skip-end-fill::before { content: "\f557"; }
.bi-skip-end::before { content: "\f558"; }
.bi-skip-forward-btn-fill::before { content: "\f559"; }
.bi-skip-forward-btn::before { content: "\f55a"; }
.bi-skip-forward-circle-fill::before { content: "\f55b"; }
.bi-skip-forward-circle::before { content: "\f55c"; }
.bi-skip-forward-fill::before { content: "\f55d"; }
.bi-skip-forward::before { content: "\f55e"; }
.bi-skip-start-btn-fill::before { content: "\f55f"; }
.bi-skip-start-btn::before { content: "\f560"; }
.bi-skip-start-circle-fill::before { content: "\f561"; }
.bi-skip-start-circle::before { content: "\f562"; }
.bi-skip-start-fill::before { content: "\f563"; }
.bi-skip-start::before { content: "\f564"; }
.bi-slack::before { content: "\f565"; }
.bi-slash-circle-fill::before { content: "\f566"; }
.bi-slash-circle::before { content: "\f567"; }
.bi-slash-square-fill::before { content: "\f568"; }
.bi-slash-square::before { content: "\f569"; }
.bi-slash::before { content: "\f56a"; }
.bi-sliders::before { content: "\f56b"; }
.bi-smartwatch::before { content: "\f56c"; }
.bi-snow::before { content: "\f56d"; }
.bi-snow2::before { content: "\f56e"; }
.bi-snow3::before { content: "\f56f"; }
.bi-sort-alpha-down-alt::before { content: "\f570"; }
.bi-sort-alpha-down::before { content: "\f571"; }
.bi-sort-alpha-up-alt::before { content: "\f572"; }
.bi-sort-alpha-up::before { content: "\f573"; }
.bi-sort-down-alt::before { content: "\f574"; }
.bi-sort-down::before { content: "\f575"; }
.bi-sort-numeric-down-alt::before { content: "\f576"; }
.bi-sort-numeric-down::before { content: "\f577"; }
.bi-sort-numeric-up-alt::before { content: "\f578"; }
.bi-sort-numeric-up::before { content: "\f579"; }
.bi-sort-up-alt::before { content: "\f57a"; }
.bi-sort-up::before { content: "\f57b"; }
.bi-soundwave::before { content: "\f57c"; }
.bi-speaker-fill::before { content: "\f57d"; }
.bi-speaker::before { content: "\f57e"; }
.bi-speedometer::before { content: "\f57f"; }
.bi-speedometer2::before { content: "\f580"; }
.bi-spellcheck::before { content: "\f581"; }
.bi-square-fill::before { content: "\f582"; }
.bi-square-half::before { content: "\f583"; }
.bi-square::before { content: "\f584"; }
.bi-stack::before { content: "\f585"; }
.bi-star-fill::before { content: "\f586"; }
.bi-star-half::before { content: "\f587"; }
.bi-star::before { content: "\f588"; }
.bi-stars::before { content: "\f589"; }
.bi-stickies-fill::before { content: "\f58a"; }
.bi-stickies::before { content: "\f58b"; }
.bi-sticky-fill::before { content: "\f58c"; }
.bi-sticky::before { content: "\f58d"; }
.bi-stop-btn-fill::before { content: "\f58e"; }
.bi-stop-btn::before { content: "\f58f"; }
.bi-stop-circle-fill::before { content: "\f590"; }
.bi-stop-circle::before { content: "\f591"; }
.bi-stop-fill::before { content: "\f592"; }
.bi-stop::before { content: "\f593"; }
.bi-stoplights-fill::before { content: "\f594"; }
.bi-stoplights::before { content: "\f595"; }
.bi-stopwatch-fill::before { content: "\f596"; }
.bi-stopwatch::before { content: "\f597"; }
.bi-subtract::before { content: "\f598"; }
.bi-suit-club-fill::before { content: "\f599"; }
.bi-suit-club::before { content: "\f59a"; }
.bi-suit-diamond-fill::before { content: "\f59b"; }
.bi-suit-diamond::before { content: "\f59c"; }
.bi-suit-heart-fill::before { content: "\f59d"; }
.bi-suit-heart::before { content: "\f59e"; }
.bi-suit-spade-fill::before { content: "\f59f"; }
.bi-suit-spade::before { content: "\f5a0"; }
.bi-sun-fill::before { content: "\f5a1"; }
.bi-sun::before { content: "\f5a2"; }
.bi-sunglasses::before { content: "\f5a3"; }
.bi-sunrise-fill::before { content: "\f5a4"; }
.bi-sunrise::before { content: "\f5a5"; }
.bi-sunset-fill::before { content: "\f5a6"; }
.bi-sunset::before { content: "\f5a7"; }
.bi-symmetry-horizontal::before { content: "\f5a8"; }
.bi-symmetry-vertical::before { content: "\f5a9"; }
.bi-table::before { content: "\f5aa"; }
.bi-tablet-fill::before { content: "\f5ab"; }
.bi-tablet-landscape-fill::before { content: "\f5ac"; }
.bi-tablet-landscape::before { content: "\f5ad"; }
.bi-tablet::before { content: "\f5ae"; }
.bi-tag-fill::before { content: "\f5af"; }
.bi-tag::before { content: "\f5b0"; }
.bi-tags-fill::before { content: "\f5b1"; }
.bi-tags::before { content: "\f5b2"; }
.bi-telegram::before { content: "\f5b3"; }
.bi-telephone-fill::before { content: "\f5b4"; }
.bi-telephone-forward-fill::before { content: "\f5b5"; }
.bi-telephone-forward::before { content: "\f5b6"; }
.bi-telephone-inbound-fill::before { content: "\f5b7"; }
.bi-telephone-inbound::before { content: "\f5b8"; }
.bi-telephone-minus-fill::before { content: "\f5b9"; }
.bi-telephone-minus::before { content: "\f5ba"; }
.bi-telephone-outbound-fill::before { content: "\f5bb"; }
.bi-telephone-outbound::before { content: "\f5bc"; }
.bi-telephone-plus-fill::before { content: "\f5bd"; }
.bi-telephone-plus::before { content: "\f5be"; }
.bi-telephone-x-fill::before { content: "\f5bf"; }
.bi-telephone-x::before { content: "\f5c0"; }
.bi-telephone::before { content: "\f5c1"; }
.bi-terminal-fill::before { content: "\f5c2"; }
.bi-terminal::before { content: "\f5c3"; }
.bi-text-center::before { content: "\f5c4"; }
.bi-text-indent-left::before { content: "\f5c5"; }
.bi-text-indent-right::before { content: "\f5c6"; }
.bi-text-left::before { content: "\f5c7"; }
.bi-text-paragraph::before { content: "\f5c8"; }
.bi-text-right::before { content: "\f5c9"; }
.bi-textarea-resize::before { content: "\f5ca"; }
.bi-textarea-t::before { content: "\f5cb"; }
.bi-textarea::before { content: "\f5cc"; }
.bi-thermometer-half::before { content: "\f5cd"; }
.bi-thermometer-high::before { content: "\f5ce"; }
.bi-thermometer-low::before { content: "\f5cf"; }
.bi-thermometer-snow::before { content: "\f5d0"; }
.bi-thermometer-sun::before { content: "\f5d1"; }
.bi-thermometer::before { content: "\f5d2"; }
.bi-three-dots-vertical::before { content: "\f5d3"; }
.bi-three-dots::before { content: "\f5d4"; }
.bi-toggle-off::before { content: "\f5d5"; }
.bi-toggle-on::before { content: "\f5d6"; }
.bi-toggle2-off::before { content: "\f5d7"; }
.bi-toggle2-on::before { content: "\f5d8"; }
.bi-toggles::before { content: "\f5d9"; }
.bi-toggles2::before { content: "\f5da"; }
.bi-tools::before { content: "\f5db"; }
.bi-tornado::before { content: "\f5dc"; }
.bi-trash-fill::before { content: "\f5dd"; }
.bi-trash::before { content: "\f5de"; }
.bi-trash2-fill::before { content: "\f5df"; }
.bi-trash2::before { content: "\f5e0"; }
.bi-tree-fill::before { content: "\f5e1"; }
.bi-tree::before { content: "\f5e2"; }
.bi-triangle-fill::before { content: "\f5e3"; }
.bi-triangle-half::before { content: "\f5e4"; }
.bi-triangle::before { content: "\f5e5"; }
.bi-trophy-fill::before { content: "\f5e6"; }
.bi-trophy::before { content: "\f5e7"; }
.bi-tropical-storm::before { content: "\f5e8"; }
.bi-truck-flatbed::before { content: "\f5e9"; }
.bi-truck::before { content: "\f5ea"; }
.bi-tsunami::before { content: "\f5eb"; }
.bi-tv-fill::before { content: "\f5ec"; }
.bi-tv::before { content: "\f5ed"; }
.bi-twitch::before { content: "\f5ee"; }
.bi-twitter::before { content: "\f5ef"; }
.bi-type-bold::before { content: "\f5f0"; }
.bi-type-h1::before { content: "\f5f1"; }
.bi-type-h2::before { content: "\f5f2"; }
.bi-type-h3::before { content: "\f5f3"; }
.bi-type-italic::before { content: "\f5f4"; }
.bi-type-strikethrough::before { content: "\f5f5"; }
.bi-type-underline::before { content: "\f5f6"; }
.bi-type::before { content: "\f5f7"; }
.bi-ui-checks-grid::before { content: "\f5f8"; }
.bi-ui-checks::before { content: "\f5f9"; }
.bi-ui-radios-grid::before { content: "\f5fa"; }
.bi-ui-radios::before { content: "\f5fb"; }
.bi-umbrella-fill::before { content: "\f5fc"; }
.bi-umbrella::before { content: "\f5fd"; }
.bi-union::before { content: "\f5fe"; }
.bi-unlock-fill::before { content: "\f5ff"; }
.bi-unlock::before { content: "\f600"; }
.bi-upc-scan::before { content: "\f601"; }
.bi-upc::before { content: "\f602"; }
.bi-upload::before { content: "\f603"; }
.bi-vector-pen::before { content: "\f604"; }
.bi-view-list::before { content: "\f605"; }
.bi-view-stacked::before { content: "\f606"; }
.bi-vinyl-fill::before { content: "\f607"; }
.bi-vinyl::before { content: "\f608"; }
.bi-voicemail::before { content: "\f609"; }
.bi-volume-down-fill::before { content: "\f60a"; }
.bi-volume-down::before { content: "\f60b"; }
.bi-volume-mute-fill::before { content: "\f60c"; }
.bi-volume-mute::before { content: "\f60d"; }
.bi-volume-off-fill::before { content: "\f60e"; }
.bi-volume-off::before { content: "\f60f"; }
.bi-volume-up-fill::before { content: "\f610"; }
.bi-volume-up::before { content: "\f611"; }
.bi-vr::before { content: "\f612"; }
.bi-wallet-fill::before { content: "\f613"; }
.bi-wallet::before { content: "\f614"; }
.bi-wallet2::before { content: "\f615"; }
.bi-watch::before { content: "\f616"; }
.bi-water::before { content: "\f617"; }
.bi-whatsapp::before { content: "\f618"; }
.bi-wifi-1::before { content: "\f619"; }
.bi-wifi-2::before { content: "\f61a"; }
.bi-wifi-off::before { content: "\f61b"; }
.bi-wifi::before { content: "\f61c"; }
.bi-wind::before { content: "\f61d"; }
.bi-window-dock::before { content: "\f61e"; }
.bi-window-sidebar::before { content: "\f61f"; }
.bi-window::before { content: "\f620"; }
.bi-wrench::before { content: "\f621"; }
.bi-x-circle-fill::before { content: "\f622"; }
.bi-x-circle::before { content: "\f623"; }
.bi-x-diamond-fill::before { content: "\f624"; }
.bi-x-diamond::before { content: "\f625"; }
.bi-x-octagon-fill::before { content: "\f626"; }
.bi-x-octagon::before { content: "\f627"; }
.bi-x-square-fill::before { content: "\f628"; }
.bi-x-square::before { content: "\f629"; }
.bi-x::before { content: "\f62a"; }
.bi-youtube::before { content: "\f62b"; }
.bi-zoom-in::before { content: "\f62c"; }
.bi-zoom-out::before { content: "\f62d"; }
.bi-bank::before { content: "\f62e"; }
.bi-bank2::before { content: "\f62f"; }
.bi-bell-slash-fill::before { content: "\f630"; }
.bi-bell-slash::before { content: "\f631"; }
.bi-cash-coin::before { content: "\f632"; }
.bi-check-lg::before { content: "\f633"; }
.bi-coin::before { content: "\f634"; }
.bi-currency-bitcoin::before { content: "\f635"; }
.bi-currency-dollar::before { content: "\f636"; }
.bi-currency-euro::before { content: "\f637"; }
.bi-currency-exchange::before { content: "\f638"; }
.bi-currency-pound::before { content: "\f639"; }
.bi-currency-yen::before { content: "\f63a"; }
.bi-dash-lg::before { content: "\f63b"; }
.bi-exclamation-lg::before { content: "\f63c"; }
.bi-file-earmark-pdf-fill::before { content: "\f63d"; }
.bi-file-earmark-pdf::before { content: "\f63e"; }
.bi-file-pdf-fill::before { content: "\f63f"; }
.bi-file-pdf::before { content: "\f640"; }
.bi-gender-ambiguous::before { content: "\f641"; }
.bi-gender-female::before { content: "\f642"; }
.bi-gender-male::before { content: "\f643"; }
.bi-gender-trans::before { content: "\f644"; }
.bi-headset-vr::before { content: "\f645"; }
.bi-info-lg::before { content: "\f646"; }
.bi-mastodon::before { content: "\f647"; }
.bi-messenger::before { content: "\f648"; }
.bi-piggy-bank-fill::before { content: "\f649"; }
.bi-piggy-bank::before { content: "\f64a"; }
.bi-pin-map-fill::before { content: "\f64b"; }
.bi-pin-map::before { content: "\f64c"; }
.bi-plus-lg::before { content: "\f64d"; }
.bi-question-lg::before { content: "\f64e"; }
.bi-recycle::before { content: "\f64f"; }
.bi-reddit::before { content: "\f650"; }
.bi-safe-fill::before { content: "\f651"; }
.bi-safe2-fill::before { content: "\f652"; }
.bi-safe2::before { content: "\f653"; }
.bi-sd-card-fill::before { content: "\f654"; }
.bi-sd-card::before { content: "\f655"; }
.bi-skype::before { content: "\f656"; }
.bi-slash-lg::before { content: "\f657"; }
.bi-translate::before { content: "\f658"; }
.bi-x-lg::before { content: "\f659"; }
.bi-safe::before { content: "\f65a"; }
.bi-apple::before { content: "\f65b"; }
.bi-microsoft::before { content: "\f65d"; }
.bi-windows::before { content: "\f65e"; }
.bi-behance::before { content: "\f65c"; }
.bi-dribbble::before { content: "\f65f"; }
.bi-line::before { content: "\f660"; }
.bi-medium::before { content: "\f661"; }
.bi-paypal::before { content: "\f662"; }
.bi-pinterest::before { content: "\f663"; }
.bi-signal::before { content: "\f664"; }
.bi-snapchat::before { content: "\f665"; }
.bi-spotify::before { content: "\f666"; }
.bi-stack-overflow::before { content: "\f667"; }
.bi-strava::before { content: "\f668"; }
.bi-wordpress::before { content: "\f669"; }
.bi-vimeo::before { content: "\f66a"; }
.bi-activity::before { content: "\f66b"; }
.bi-easel2-fill::before { content: "\f66c"; }
.bi-easel2::before { content: "\f66d"; }
.bi-easel3-fill::before { content: "\f66e"; }
.bi-easel3::before { content: "\f66f"; }
.bi-fan::before { content: "\f670"; }
.bi-fingerprint::before { content: "\f671"; }
.bi-graph-down-arrow::before { content: "\f672"; }
.bi-graph-up-arrow::before { content: "\f673"; }
.bi-hypnotize::before { content: "\f674"; }
.bi-magic::before { content: "\f675"; }
.bi-person-rolodex::before { content: "\f676"; }
.bi-person-video::before { content: "\f677"; }
.bi-person-video2::before { content: "\f678"; }
.bi-person-video3::before { content: "\f679"; }
.bi-person-workspace::before { content: "\f67a"; }
.bi-radioactive::before { content: "\f67b"; }
.bi-webcam-fill::before { content: "\f67c"; }
.bi-webcam::before { content: "\f67d"; }
.bi-yin-yang::before { content: "\f67e"; }
.bi-bandaid-fill::before { content: "\f680"; }
.bi-bandaid::before { content: "\f681"; }
.bi-bluetooth::before { content: "\f682"; }
.bi-body-text::before { content: "\f683"; }
.bi-boombox::before { content: "\f684"; }
.bi-boxes::before { content: "\f685"; }
.bi-dpad-fill::before { content: "\f686"; }
.bi-dpad::before { content: "\f687"; }
.bi-ear-fill::before { content: "\f688"; }
.bi-ear::before { content: "\f689"; }
.bi-envelope-check-1::before { content: "\f68a"; }
.bi-envelope-check-fill::before { content: "\f68b"; }
.bi-envelope-check::before { content: "\f68c"; }
.bi-envelope-dash-1::before { content: "\f68d"; }
.bi-envelope-dash-fill::before { content: "\f68e"; }
.bi-envelope-dash::before { content: "\f68f"; }
.bi-envelope-exclamation-1::before { content: "\f690"; }
.bi-envelope-exclamation-fill::before { content: "\f691"; }
.bi-envelope-exclamation::before { content: "\f692"; }
.bi-envelope-plus-fill::before { content: "\f693"; }
.bi-envelope-plus::before { content: "\f694"; }
.bi-envelope-slash-1::before { content: "\f695"; }
.bi-envelope-slash-fill::before { content: "\f696"; }
.bi-envelope-slash::before { content: "\f697"; }
.bi-envelope-x-1::before { content: "\f698"; }
.bi-envelope-x-fill::before { content: "\f699"; }
.bi-envelope-x::before { content: "\f69a"; }
.bi-explicit-fill::before { content: "\f69b"; }
.bi-explicit::before { content: "\f69c"; }
.bi-git::before { content: "\f69d"; }
.bi-infinity::before { content: "\f69e"; }
.bi-list-columns-reverse::before { content: "\f69f"; }
.bi-list-columns::before { content: "\f6a0"; }
.bi-meta::before { content: "\f6a1"; }
.bi-mortorboard-fill::before { content: "\f6a2"; }
.bi-mortorboard::before { content: "\f6a3"; }
.bi-nintendo-switch::before { content: "\f6a4"; }
.bi-pc-display-horizontal::before { content: "\f6a5"; }
.bi-pc-display::before { content: "\f6a6"; }
.bi-pc-horizontal::before { content: "\f6a7"; }
.bi-pc::before { content: "\f6a8"; }
.bi-playstation::before { content: "\f6a9"; }
.bi-plus-slash-minus::before { content: "\f6aa"; }
.bi-projector-fill::before { content: "\f6ab"; }
.bi-projector::before { content: "\f6ac"; }
.bi-qr-code-scan::before { content: "\f6ad"; }
.bi-qr-code::before { content: "\f6ae"; }
.bi-quora::before { content: "\f6af"; }
.bi-quote::before { content: "\f6b0"; }
.bi-robot::before { content: "\f6b1"; }
.bi-send-check-fill::before { content: "\f6b2"; }
.bi-send-check::before { content: "\f6b3"; }
.bi-send-dash-fill::before { content: "\f6b4"; }
.bi-send-dash::before { content: "\f6b5"; }
.bi-send-exclamation-1::before { content: "\f6b6"; }
.bi-send-exclamation-fill::before { content: "\f6b7"; }
.bi-send-exclamation::before { content: "\f6b8"; }
.bi-send-fill::before { content: "\f6b9"; }
.bi-send-plus-fill::before { content: "\f6ba"; }
.bi-send-plus::before { content: "\f6bb"; }
.bi-send-slash-fill::before { content: "\f6bc"; }
.bi-send-slash::before { content: "\f6bd"; }
.bi-send-x-fill::before { content: "\f6be"; }
.bi-send-x::before { content: "\f6bf"; }
.bi-send::before { content: "\f6c0"; }
.bi-steam::before { content: "\f6c1"; }
.bi-terminal-dash-1::before { content: "\f6c2"; }
.bi-terminal-dash::before { content: "\f6c3"; }
.bi-terminal-plus::before { content: "\f6c4"; }
.bi-terminal-split::before { content: "\f6c5"; }
.bi-ticket-detailed-fill::before { content: "\f6c6"; }
.bi-ticket-detailed::before { content: "\f6c7"; }
.bi-ticket-fill::before { content: "\f6c8"; }
.bi-ticket-perforated-fill::before { content: "\f6c9"; }
.bi-ticket-perforated::before { content: "\f6ca"; }
.bi-ticket::before { content: "\f6cb"; }
.bi-tiktok::before { content: "\f6cc"; }
.bi-window-dash::before { content: "\f6cd"; }
.bi-window-desktop::before { content: "\f6ce"; }
.bi-window-fullscreen::before { content: "\f6cf"; }
.bi-window-plus::before { content: "\f6d0"; }
.bi-window-split::before { content: "\f6d1"; }
.bi-window-stack::before { content: "\f6d2"; }
.bi-window-x::before { content: "\f6d3"; }
.bi-xbox::before { content: "\f6d4"; }
.bi-ethernet::before { content: "\f6d5"; }
.bi-hdmi-fill::before { content: "\f6d6"; }
.bi-hdmi::before { content: "\f6d7"; }
.bi-usb-c-fill::before { content: "\f6d8"; }
.bi-usb-c::before { content: "\f6d9"; }
.bi-usb-fill::before { content: "\f6da"; }
.bi-usb-plug-fill::before { content: "\f6db"; }
.bi-usb-plug::before { content: "\f6dc"; }
.bi-usb-symbol::before { content: "\f6dd"; }
.bi-usb::before { content: "\f6de"; }
.bi-boombox-fill::before { content: "\f6df"; }
.bi-displayport-1::before { content: "\f6e0"; }
.bi-displayport::before { content: "\f6e1"; }
.bi-gpu-card::before { content: "\f6e2"; }
.bi-memory::before { content: "\f6e3"; }
.bi-modem-fill::before { content: "\f6e4"; }
.bi-modem::before { content: "\f6e5"; }
.bi-motherboard-fill::before { content: "\f6e6"; }
.bi-motherboard::before { content: "\f6e7"; }
.bi-optical-audio-fill::before { content: "\f6e8"; }
.bi-optical-audio::before { content: "\f6e9"; }
.bi-pci-card::before { content: "\f6ea"; }
.bi-router-fill::before { content: "\f6eb"; }
.bi-router::before { content: "\f6ec"; }
.bi-ssd-fill::before { content: "\f6ed"; }
.bi-ssd::before { content: "\f6ee"; }
.bi-thunderbolt-fill::before { content: "\f6ef"; }
.bi-thunderbolt::before { content: "\f6f0"; }
.bi-usb-drive-fill::before { content: "\f6f1"; }
.bi-usb-drive::before { content: "\f6f2"; }
.bi-usb-micro-fill::before { content: "\f6f3"; }
.bi-usb-micro::before { content: "\f6f4"; }
.bi-usb-mini-fill::before { content: "\f6f5"; }
.bi-usb-mini::before { content: "\f6f6"; }
.bi-cloud-haze2::before { content: "\f6f7"; }
.bi-device-hdd-fill::before { content: "\f6f8"; }
.bi-device-hdd::before { content: "\f6f9"; }
.bi-device-ssd-fill::before { content: "\f6fa"; }
.bi-device-ssd::before { content: "\f6fb"; }
.bi-displayport-fill::before { content: "\f6fc"; }
.bi-mortarboard-fill::before { content: "\f6fd"; }
.bi-mortarboard::before { content: "\f6fe"; }
.bi-terminal-x::before { content: "\f6ff"; }
.bi-arrow-through-heart-fill::before { content: "\f700"; }
.bi-arrow-through-heart::before { content: "\f701"; }
.bi-badge-sd-fill::before { content: "\f702"; }
.bi-badge-sd::before { content: "\f703"; }
.bi-bag-heart-fill::before { content: "\f704"; }
.bi-bag-heart::before { content: "\f705"; }
.bi-balloon-fill::before { content: "\f706"; }
.bi-balloon-heart-fill::before { content: "\f707"; }
.bi-balloon-heart::before { content: "\f708"; }
.bi-balloon::before { content: "\f709"; }
.bi-box2-fill::before { content: "\f70a"; }
.bi-box2-heart-fill::before { content: "\f70b"; }
.bi-box2-heart::before { content: "\f70c"; }
.bi-box2::before { content: "\f70d"; }
.bi-braces-asterisk::before { content: "\f70e"; }
.bi-calendar-heart-fill::before { content: "\f70f"; }
.bi-calendar-heart::before { content: "\f710"; }
.bi-calendar2-heart-fill::before { content: "\f711"; }
.bi-calendar2-heart::before { content: "\f712"; }
.bi-chat-heart-fill::before { content: "\f713"; }
.bi-chat-heart::before { content: "\f714"; }
.bi-chat-left-heart-fill::before { content: "\f715"; }
.bi-chat-left-heart::before { content: "\f716"; }
.bi-chat-right-heart-fill::before { content: "\f717"; }
.bi-chat-right-heart::before { content: "\f718"; }
.bi-chat-square-heart-fill::before { content: "\f719"; }
.bi-chat-square-heart::before { content: "\f71a"; }
.bi-clipboard-check-fill::before { content: "\f71b"; }
.bi-clipboard-data-fill::before { content: "\f71c"; }
.bi-clipboard-fill::before { content: "\f71d"; }
.bi-clipboard-heart-fill::before { content: "\f71e"; }
.bi-clipboard-heart::before { content: "\f71f"; }
.bi-clipboard-minus-fill::before { content: "\f720"; }
.bi-clipboard-plus-fill::before { content: "\f721"; }
.bi-clipboard-pulse::before { content: "\f722"; }
.bi-clipboard-x-fill::before { content: "\f723"; }
.bi-clipboard2-check-fill::before { content: "\f724"; }
.bi-clipboard2-check::before { content: "\f725"; }
.bi-clipboard2-data-fill::before { content: "\f726"; }
.bi-clipboard2-data::before { content: "\f727"; }
.bi-clipboard2-fill::before { content: "\f728"; }
.bi-clipboard2-heart-fill::before { content: "\f729"; }
.bi-clipboard2-heart::before { content: "\f72a"; }
.bi-clipboard2-minus-fill::before { content: "\f72b"; }
.bi-clipboard2-minus::before { content: "\f72c"; }
.bi-clipboard2-plus-fill::before { content: "\f72d"; }
.bi-clipboard2-plus::before { content: "\f72e"; }
.bi-clipboard2-pulse-fill::before { content: "\f72f"; }
.bi-clipboard2-pulse::before { content: "\f730"; }
.bi-clipboard2-x-fill::before { content: "\f731"; }
.bi-clipboard2-x::before { content: "\f732"; }
.bi-clipboard2::before { content: "\f733"; }
.bi-emoji-kiss-fill::before { content: "\f734"; }
.bi-emoji-kiss::before { content: "\f735"; }
.bi-envelope-heart-fill::before { content: "\f736"; }
.bi-envelope-heart::before { content: "\f737"; }
.bi-envelope-open-heart-fill::before { content: "\f738"; }
.bi-envelope-open-heart::before { content: "\f739"; }
.bi-envelope-paper-fill::before { content: "\f73a"; }
.bi-envelope-paper-heart-fill::before { content: "\f73b"; }
.bi-envelope-paper-heart::before { content: "\f73c"; }
.bi-envelope-paper::before { content: "\f73d"; }
.bi-filetype-aac::before { content: "\f73e"; }
.bi-filetype-ai::before { content: "\f73f"; }
.bi-filetype-bmp::before { content: "\f740"; }
.bi-filetype-cs::before { content: "\f741"; }
.bi-filetype-css::before { content: "\f742"; }
.bi-filetype-csv::before { content: "\f743"; }
.bi-filetype-doc::before { content: "\f744"; }
.bi-filetype-docx::before { content: "\f745"; }
.bi-filetype-exe::before { content: "\f746"; }
.bi-filetype-gif::before { content: "\f747"; }
.bi-filetype-heic::before { content: "\f748"; }
.bi-filetype-html::before { content: "\f749"; }
.bi-filetype-java::before { content: "\f74a"; }
.bi-filetype-jpg::before { content: "\f74b"; }
.bi-filetype-js::before { content: "\f74c"; }
.bi-filetype-jsx::before { content: "\f74d"; }
.bi-filetype-key::before { content: "\f74e"; }
.bi-filetype-m4p::before { content: "\f74f"; }
.bi-filetype-md::before { content: "\f750"; }
.bi-filetype-mdx::before { content: "\f751"; }
.bi-filetype-mov::before { content: "\f752"; }
.bi-filetype-mp3::before { content: "\f753"; }
.bi-filetype-mp4::before { content: "\f754"; }
.bi-filetype-otf::before { content: "\f755"; }
.bi-filetype-pdf::before { content: "\f756"; }
.bi-filetype-php::before { content: "\f757"; }
.bi-filetype-png::before { content: "\f758"; }
.bi-filetype-ppt-1::before { content: "\f759"; }
.bi-filetype-ppt::before { content: "\f75a"; }
.bi-filetype-psd::before { content: "\f75b"; }
.bi-filetype-py::before { content: "\f75c"; }
.bi-filetype-raw::before { content: "\f75d"; }
.bi-filetype-rb::before { content: "\f75e"; }
.bi-filetype-sass::before { content: "\f75f"; }
.bi-filetype-scss::before { content: "\f760"; }
.bi-filetype-sh::before { content: "\f761"; }
.bi-filetype-svg::before { content: "\f762"; }
.bi-filetype-tiff::before { content: "\f763"; }
.bi-filetype-tsx::before { content: "\f764"; }
.bi-filetype-ttf::before { content: "\f765"; }
.bi-filetype-txt::before { content: "\f766"; }
.bi-filetype-wav::before { content: "\f767"; }
.bi-filetype-woff::before { content: "\f768"; }
.bi-filetype-xls-1::before { content: "\f769"; }
.bi-filetype-xls::before { content: "\f76a"; }
.bi-filetype-xml::before { content: "\f76b"; }
.bi-filetype-yml::before { content: "\f76c"; }
.bi-heart-arrow::before { content: "\f76d"; }
.bi-heart-pulse-fill::before { content: "\f76e"; }
.bi-heart-pulse::before { content: "\f76f"; }
.bi-heartbreak-fill::before { content: "\f770"; }
.bi-heartbreak::before { content: "\f771"; }
.bi-hearts::before { content: "\f772"; }
.bi-hospital-fill::before { content: "\f773"; }
.bi-hospital::before { content: "\f774"; }
.bi-house-heart-fill::before { content: "\f775"; }
.bi-house-heart::before { content: "\f776"; }
.bi-incognito::before { content: "\f777"; }
.bi-magnet-fill::before { content: "\f778"; }
.bi-magnet::before { content: "\f779"; }
.bi-person-heart::before { content: "\f77a"; }
.bi-person-hearts::before { content: "\f77b"; }
.bi-phone-flip::before { content: "\f77c"; }
.bi-plugin::before { content: "\f77d"; }
.bi-postage-fill::before { content: "\f77e"; }
.bi-postage-heart-fill::before { content: "\f77f"; }
.bi-postage-heart::before { content: "\f780"; }
.bi-postage::before { content: "\f781"; }
.bi-postcard-fill::before { content: "\f782"; }
.bi-postcard-heart-fill::before { content: "\f783"; }
.bi-postcard-heart::before { content: "\f784"; }
.bi-postcard::before { content: "\f785"; }
.bi-search-heart-fill::before { content: "\f786"; }
.bi-search-heart::before { content: "\f787"; }
.bi-sliders2-vertical::before { content: "\f788"; }
.bi-sliders2::before { content: "\f789"; }
.bi-trash3-fill::before { content: "\f78a"; }
.bi-trash3::before { content: "\f78b"; }
.bi-valentine::before { content: "\f78c"; }
.bi-valentine2::before { content: "\f78d"; }
.bi-wrench-adjustable-circle-fill::before { content: "\f78e"; }
.bi-wrench-adjustable-circle::before { content: "\f78f"; }
.bi-wrench-adjustable::before { content: "\f790"; }
.bi-filetype-json::before { content: "\f791"; }
.bi-filetype-pptx::before { content: "\f792"; }
.bi-filetype-xlsx::before { content: "\f793"; }
</style>
<link href="data:text/css,%3Aroot%7B%2D%2Dbs%2Dblue%3A%20%230d6efd%3B%2D%2Dbs%2Dindigo%3A%20%236610f2%3B%2D%2Dbs%2Dpurple%3A%20%236f42c1%3B%2D%2Dbs%2Dpink%3A%20%23d63384%3B%2D%2Dbs%2Dred%3A%20%23dc3545%3B%2D%2Dbs%2Dorange%3A%20%23fd7e14%3B%2D%2Dbs%2Dyellow%3A%20%23ffc107%3B%2D%2Dbs%2Dgreen%3A%20%23198754%3B%2D%2Dbs%2Dteal%3A%20%2320c997%3B%2D%2Dbs%2Dcyan%3A%20%230dcaf0%3B%2D%2Dbs%2Dwhite%3A%20%23ffffff%3B%2D%2Dbs%2Dgray%3A%20%236c757d%3B%2D%2Dbs%2Dgray%2Ddark%3A%20%23343a40%3B%2D%2Dbs%2Dgray%2D100%3A%20%23f8f9fa%3B%2D%2Dbs%2Dgray%2D200%3A%20%23e9ecef%3B%2D%2Dbs%2Dgray%2D300%3A%20%23dee2e6%3B%2D%2Dbs%2Dgray%2D400%3A%20%23ced4da%3B%2D%2Dbs%2Dgray%2D500%3A%20%23adb5bd%3B%2D%2Dbs%2Dgray%2D600%3A%20%236c757d%3B%2D%2Dbs%2Dgray%2D700%3A%20%23495057%3B%2D%2Dbs%2Dgray%2D800%3A%20%23343a40%3B%2D%2Dbs%2Dgray%2D900%3A%20%23212529%3B%2D%2Dbs%2Ddefault%3A%20%23dee2e6%3B%2D%2Dbs%2Dprimary%3A%20%230d6efd%3B%2D%2Dbs%2Dsecondary%3A%20%236c757d%3B%2D%2Dbs%2Dsuccess%3A%20%23198754%3B%2D%2Dbs%2Dinfo%3A%20%230dcaf0%3B%2D%2Dbs%2Dwarning%3A%20%23ffc107%3B%2D%2Dbs%2Ddanger%3A%20%23dc3545%3B%2D%2Dbs%2Dlight%3A%20%23f8f9fa%3B%2D%2Dbs%2Ddark%3A%20%23212529%3B%2D%2Dbs%2Ddefault%2Drgb%3A%20222%2C%20226%2C%20230%3B%2D%2Dbs%2Dprimary%2Drgb%3A%2013%2C%20110%2C%20253%3B%2D%2Dbs%2Dsecondary%2Drgb%3A%20108%2C%20117%2C%20125%3B%2D%2Dbs%2Dsuccess%2Drgb%3A%2025%2C%20135%2C%2084%3B%2D%2Dbs%2Dinfo%2Drgb%3A%2013%2C%20202%2C%20240%3B%2D%2Dbs%2Dwarning%2Drgb%3A%20255%2C%20193%2C%207%3B%2D%2Dbs%2Ddanger%2Drgb%3A%20220%2C%2053%2C%2069%3B%2D%2Dbs%2Dlight%2Drgb%3A%20248%2C%20249%2C%20250%3B%2D%2Dbs%2Ddark%2Drgb%3A%2033%2C%2037%2C%2041%3B%2D%2Dbs%2Dwhite%2Drgb%3A%20255%2C%20255%2C%20255%3B%2D%2Dbs%2Dblack%2Drgb%3A%200%2C%200%2C%200%3B%2D%2Dbs%2Dbody%2Dcolor%2Drgb%3A%2033%2C%2037%2C%2041%3B%2D%2Dbs%2Dbody%2Dbg%2Drgb%3A%20255%2C%20255%2C%20255%3B%2D%2Dbs%2Dfont%2Dsans%2Dserif%3A%20system%2Dui%2C%20%2Dapple%2Dsystem%2C%20%22Segoe%20UI%22%2C%20Roboto%2C%20%22Helvetica%20Neue%22%2C%20Arial%2C%20%22Noto%20Sans%22%2C%20%22Liberation%20Sans%22%2C%20sans%2Dserif%2C%20%22Apple%20Color%20Emoji%22%2C%20%22Segoe%20UI%20Emoji%22%2C%20%22Segoe%20UI%20Symbol%22%2C%20%22Noto%20Color%20Emoji%22%3B%2D%2Dbs%2Dfont%2Dmonospace%3A%20SFMono%2DRegular%2C%20Menlo%2C%20Monaco%2C%20Consolas%2C%20%22Liberation%20Mono%22%2C%20%22Courier%20New%22%2C%20monospace%3B%2D%2Dbs%2Dgradient%3A%20linear%2Dgradient%28180deg%2C%20rgba%28255%2C%20255%2C%20255%2C%200%2E15%29%2C%20rgba%28255%2C%20255%2C%20255%2C%200%29%29%3B%2D%2Dbs%2Droot%2Dfont%2Dsize%3A%2018px%3B%2D%2Dbs%2Dbody%2Dfont%2Dfamily%3A%20var%28%2D%2Dbs%2Dfont%2Dsans%2Dserif%29%3B%2D%2Dbs%2Dbody%2Dfont%2Dsize%3A%201rem%3B%2D%2Dbs%2Dbody%2Dfont%2Dweight%3A%20400%3B%2D%2Dbs%2Dbody%2Dline%2Dheight%3A%201%2E5%3B%2D%2Dbs%2Dbody%2Dcolor%3A%20%23212529%3B%2D%2Dbs%2Dbody%2Dbg%3A%20%23ffffff%7D%2A%2C%2A%3A%3Abefore%2C%2A%3A%3Aafter%7Bbox%2Dsizing%3Aborder%2Dbox%7D%3Aroot%7Bfont%2Dsize%3Avar%28%2D%2Dbs%2Droot%2Dfont%2Dsize%29%7Dbody%7Bmargin%3A0%3Bfont%2Dfamily%3Avar%28%2D%2Dbs%2Dbody%2Dfont%2Dfamily%29%3Bfont%2Dsize%3Avar%28%2D%2Dbs%2Dbody%2Dfont%2Dsize%29%3Bfont%2Dweight%3Avar%28%2D%2Dbs%2Dbody%2Dfont%2Dweight%29%3Bline%2Dheight%3Avar%28%2D%2Dbs%2Dbody%2Dline%2Dheight%29%3Bcolor%3Avar%28%2D%2Dbs%2Dbody%2Dcolor%29%3Btext%2Dalign%3Avar%28%2D%2Dbs%2Dbody%2Dtext%2Dalign%29%3Bbackground%2Dcolor%3Avar%28%2D%2Dbs%2Dbody%2Dbg%29%3B%2Dwebkit%2Dtext%2Dsize%2Dadjust%3A100%25%3B%2Dwebkit%2Dtap%2Dhighlight%2Dcolor%3Argba%280%2C0%2C0%2C0%29%7Dhr%7Bmargin%3A1rem%200%3Bcolor%3Ainherit%3Bbackground%2Dcolor%3AcurrentColor%3Bborder%3A0%3Bopacity%3A%2E25%7Dhr%3Anot%28%5Bsize%5D%29%7Bheight%3A1px%7Dh6%2C%2Eh6%2Ch5%2C%2Eh5%2Ch4%2C%2Eh4%2Ch3%2C%2Eh3%2Ch2%2C%2Eh2%2Ch1%2C%2Eh1%7Bmargin%2Dtop%3A0%3Bmargin%2Dbottom%3A%2E5rem%3Bfont%2Dweight%3A500%3Bline%2Dheight%3A1%2E2%7Dh1%2C%2Eh1%7Bfont%2Dsize%3Acalc%281%2E345rem%20%2B%201%2E14vw%29%7D%40media%28min%2Dwidth%3A%201200px%29%7Bh1%2C%2Eh1%7Bfont%2Dsize%3A2%2E2rem%7D%7Dh2%2C%2Eh2%7Bfont%2Dsize%3Acalc%281%2E3rem%20%2B%200%2E6vw%29%7D%40media%28min%2Dwidth%3A%201200px%29%7Bh2%2C%2Eh2%7Bfont%2Dsize%3A1%2E75rem%7D%7Dh3%2C%2Eh3%7Bfont%2Dsi
2022-08-19 12:02:37 +00:00
</head>
<body>
<header id="title-block-header" class="quarto-title-block default page-columns page-full">
<div class="quarto-title-banner page-columns page-full">
<div class="quarto-title column-body">
2022-08-20 14:45:26 +00:00
<div class="quarto-title-block"><div><h1 class="title">Drivers of Inequality</h1><button type="button" class="btn code-tools-button dropdown-toggle" id="quarto-code-tools-menu" data-bs-toggle="dropdown" aria-expanded="false"><i class="bi"></i> Code</button><ul class="dropdown-menu dropdown-menu-end" aria-labelelledby="quarto-code-tools-menu"><li><a id="quarto-show-all-code" class="dropdown-item" href="javascript:void(0)" role="button">Show All Code</a></li><li><a id="quarto-hide-all-code" class="dropdown-item" href="javascript:void(0)" role="button">Hide All Code</a></li><li><hr class="dropdown-divider"></li><li><a id="quarto-view-source" class="dropdown-item" href="javascript:void(0)" role="button">View Source</a></li></ul></div></div>
2022-08-19 12:02:37 +00:00
</div>
</div>
<div class="quarto-title-meta">
<div>
<div class="quarto-title-meta-heading">Author</div>
<div class="quarto-title-meta-contents">
<p>Marty Oehme </p>
</div>
</div>
<div>
<div class="quarto-title-meta-heading">Published</div>
<div class="quarto-title-meta-contents">
<p class="date">Invalid Date</p>
</div>
</div>
</div>
</header><div id="quarto-content" class="page-columns page-rows-contents page-layout-article">
<div id="quarto-margin-sidebar" class="sidebar margin-sidebar">
<nav id="TOC" role="doc-toc" class="toc-active">
2022-08-19 12:02:37 +00:00
<h2 id="toc-title">Table of contents</h2>
<ul>
<li><a href="#vietnam" id="toc-vietnam" class="nav-link active" data-scroll-target="#vietnam">Vietnam</a>
<ul class="collapse">
<li><a href="#natural-disasters-and-inequalities" id="toc-natural-disasters-and-inequalities" class="nav-link" data-scroll-target="#natural-disasters-and-inequalities">Natural disasters and inequalities</a></li>
<li><a href="#development-assistance-to-vietnam" id="toc-development-assistance-to-vietnam" class="nav-link" data-scroll-target="#development-assistance-to-vietnam">Development assistance to Vietnam</a></li>
</ul></li>
<li><a href="#uganda" id="toc-uganda" class="nav-link" data-scroll-target="#uganda">Uganda</a>
<ul class="collapse">
<li><a href="#inequalities-in-access-to-drinking-water" id="toc-inequalities-in-access-to-drinking-water" class="nav-link" data-scroll-target="#inequalities-in-access-to-drinking-water">Inequalities in access to drinking water</a></li>
<li><a href="#development-assistance-to-uganda" id="toc-development-assistance-to-uganda" class="nav-link" data-scroll-target="#development-assistance-to-uganda">Development assistance to Uganda</a></li>
</ul></li>
<li><a href="#benin" id="toc-benin" class="nav-link" data-scroll-target="#benin">Benin</a>
<ul class="collapse">
<li><a href="#inequalities-in-access-to-electricity" id="toc-inequalities-in-access-to-electricity" class="nav-link" data-scroll-target="#inequalities-in-access-to-electricity">Inequalities in access to electricity</a></li>
<li><a href="#development-assistance-to-benin" id="toc-development-assistance-to-benin" class="nav-link" data-scroll-target="#development-assistance-to-benin">Development assistance to Benin</a></li>
</ul></li>
<li><a href="#djibouti-ethiopia" id="toc-djibouti-ethiopia" class="nav-link" data-scroll-target="#djibouti-ethiopia">Djibouti-Ethiopia</a>
<ul class="collapse">
<li><a href="#gender-inequalities-in-livelihood-opportunities" id="toc-gender-inequalities-in-livelihood-opportunities" class="nav-link" data-scroll-target="#gender-inequalities-in-livelihood-opportunities">Gender inequalities in livelihood opportunities</a></li>
<li><a href="#development-assistance-to-djibouti" id="toc-development-assistance-to-djibouti" class="nav-link" data-scroll-target="#development-assistance-to-djibouti">Development assistance to Djibouti</a></li>
</ul></li>
2022-08-19 16:58:20 +00:00
<li><a href="#references" id="toc-references" class="nav-link" data-scroll-target="#references">References</a></li>
2022-08-19 12:02:37 +00:00
</ul>
</nav>
</div>
<main class="content quarto-banner-title-block page-columns page-full" id="quarto-document-content">
2022-08-19 12:02:37 +00:00
2022-08-20 14:45:26 +00:00
<div class="cell" data-execution_count="4">
<details>
<summary>Code</summary>
2022-09-08 15:30:55 +00:00
<div class="sourceCode cell-code" id="cb1"><pre class="sourceCode python code-with-copy"><code class="sourceCode python"><span id="cb1-1"><a href="#cb1-1" aria-hidden="true" tabindex="-1"></a><span class="im">from</span> IPython.display <span class="im">import</span> Markdown</span>
<span id="cb1-2"><a href="#cb1-2" aria-hidden="true" tabindex="-1"></a><span class="im">from</span> tabulate <span class="im">import</span> tabulate</span></code><button title="Copy to Clipboard" class="code-copy-button"><i class="bi"></i></button></pre></div>
2022-08-20 14:45:26 +00:00
</details>
</div>
<div class="cell" data-execution_count="5">
<details>
<summary>Code</summary>
2022-09-08 15:30:55 +00:00
<div class="sourceCode cell-code" id="cb2"><pre class="sourceCode python code-with-copy"><code class="sourceCode python"><span id="cb2-1"><a href="#cb2-1" aria-hidden="true" tabindex="-1"></a><span class="co"># Set up the data extraction and figure drawing functions</span></span>
<span id="cb2-2"><a href="#cb2-2" aria-hidden="true" tabindex="-1"></a><span class="im">import</span> plotly.express <span class="im">as</span> px</span>
<span id="cb2-3"><a href="#cb2-3" aria-hidden="true" tabindex="-1"></a><span class="im">import</span> plotly.io <span class="im">as</span> pio</span>
<span id="cb2-4"><a href="#cb2-4" aria-hidden="true" tabindex="-1"></a></span>
<span id="cb2-5"><a href="#cb2-5" aria-hidden="true" tabindex="-1"></a><span class="kw">def</span> gini_plot(country_df):</span>
<span id="cb2-6"><a href="#cb2-6" aria-hidden="true" tabindex="-1"></a> <span class="cf">if</span> svg_render:</span>
<span id="cb2-7"><a href="#cb2-7" aria-hidden="true" tabindex="-1"></a> pio.renderers.default <span class="op">=</span> <span class="st">&quot;png&quot;</span></span>
<span id="cb2-8"><a href="#cb2-8" aria-hidden="true" tabindex="-1"></a></span>
<span id="cb2-9"><a href="#cb2-9" aria-hidden="true" tabindex="-1"></a> fig <span class="op">=</span> px.line(country_df, x<span class="op">=</span><span class="st">&quot;year&quot;</span>, y<span class="op">=</span><span class="st">&quot;gini&quot;</span>, markers<span class="op">=</span><span class="va">True</span>, labels<span class="op">=</span>{<span class="st">&quot;year&quot;</span>: <span class="st">&quot;Year&quot;</span>, <span class="st">&quot;gini&quot;</span>: <span class="st">&quot;Gini coefficient&quot;</span>}, template<span class="op">=</span><span class="st">&quot;seaborn&quot;</span>, range_y<span class="op">=</span>[<span class="dv">0</span>,<span class="dv">100</span>])</span>
<span id="cb2-10"><a href="#cb2-10" aria-hidden="true" tabindex="-1"></a> fig.update_traces(marker_size<span class="op">=</span><span class="dv">10</span>)</span>
<span id="cb2-11"><a href="#cb2-11" aria-hidden="true" tabindex="-1"></a> fig.show()</span>
<span id="cb2-12"><a href="#cb2-12" aria-hidden="true" tabindex="-1"></a></span>
<span id="cb2-13"><a href="#cb2-13" aria-hidden="true" tabindex="-1"></a><span class="kw">def</span> plot_consumption_gini_percapita(country_df):</span>
<span id="cb2-14"><a href="#cb2-14" aria-hidden="true" tabindex="-1"></a> gni_cnsmpt <span class="op">=</span> country_df[country_df[<span class="st">&#39;resource&#39;</span>].<span class="bu">str</span>.contains(<span class="st">&quot;Consumption&quot;</span>)]</span>
<span id="cb2-15"><a href="#cb2-15" aria-hidden="true" tabindex="-1"></a> gni_cnsmpt_percapita <span class="op">=</span> gni_cnsmpt[gni_cnsmpt[<span class="st">&#39;scale&#39;</span>].<span class="bu">str</span>.contains(<span class="st">&quot;Per capita&quot;</span>)]</span>
<span id="cb2-16"><a href="#cb2-16" aria-hidden="true" tabindex="-1"></a> gini_plot(gni_cnsmpt_percapita)</span>
<span id="cb2-17"><a href="#cb2-17" aria-hidden="true" tabindex="-1"></a></span>
<span id="cb2-18"><a href="#cb2-18" aria-hidden="true" tabindex="-1"></a><span class="kw">def</span> plot_consumption_gini_percapita_ruralurban(country_df):</span>
<span id="cb2-19"><a href="#cb2-19" aria-hidden="true" tabindex="-1"></a> gni_cnsmpt <span class="op">=</span> country_df[country_df[<span class="st">&#39;resource&#39;</span>].<span class="bu">str</span>.contains(<span class="st">&quot;Consumption&quot;</span>)]</span>
<span id="cb2-20"><a href="#cb2-20" aria-hidden="true" tabindex="-1"></a> gni_cnsmpt <span class="op">=</span> gni_cnsmpt[gni_cnsmpt[<span class="st">&#39;scale&#39;</span>].<span class="bu">str</span>.contains(<span class="st">&quot;Per capita&quot;</span>)]</span>
<span id="cb2-21"><a href="#cb2-21" aria-hidden="true" tabindex="-1"></a> gni_cnsmpt <span class="op">=</span> gni_cnsmpt[gni_cnsmpt[<span class="st">&#39;source&#39;</span>].<span class="bu">str</span>.contains(<span class="st">&quot;World Bank&quot;</span>)]</span>
<span id="cb2-22"><a href="#cb2-22" aria-hidden="true" tabindex="-1"></a> gni_cnsmpt <span class="op">=</span> gni_cnsmpt[gni_cnsmpt[<span class="st">&#39;areacovr&#39;</span>].<span class="bu">str</span>.contains(<span class="st">&quot;All&quot;</span>)]</span>
<span id="cb2-23"><a href="#cb2-23" aria-hidden="true" tabindex="-1"></a> gini_plot(gni_cnsmpt)</span></code><button title="Copy to Clipboard" class="code-copy-button"><i class="bi"></i></button></pre></div>
</details>
</div>
<div class="cell" data-execution_count="6">
<details>
<summary>Code</summary>
2022-09-08 15:30:55 +00:00
<div class="sourceCode cell-code" id="cb3"><pre class="sourceCode python code-with-copy"><code class="sourceCode python"><span id="cb3-1"><a href="#cb3-1" aria-hidden="true" tabindex="-1"></a><span class="co">## Set up functions to grab development aids by type of donating body</span></span>
<span id="cb3-2"><a href="#cb3-2" aria-hidden="true" tabindex="-1"></a><span class="co">## ODA donor type map, see DAC code sheet xlsx</span></span>
<span id="cb3-3"><a href="#cb3-3" aria-hidden="true" tabindex="-1"></a>donortypes <span class="op">=</span> {</span>
<span id="cb3-4"><a href="#cb3-4" aria-hidden="true" tabindex="-1"></a> <span class="dv">1</span>: <span class="st">&#39;dac&#39;</span>,</span>
<span id="cb3-5"><a href="#cb3-5" aria-hidden="true" tabindex="-1"></a> <span class="dv">2</span>: <span class="st">&#39;dac&#39;</span>,</span>
<span id="cb3-6"><a href="#cb3-6" aria-hidden="true" tabindex="-1"></a> <span class="dv">3</span>: <span class="st">&#39;dac&#39;</span>,</span>
<span id="cb3-7"><a href="#cb3-7" aria-hidden="true" tabindex="-1"></a> <span class="dv">4</span>: <span class="st">&#39;dac&#39;</span>,</span>
<span id="cb3-8"><a href="#cb3-8" aria-hidden="true" tabindex="-1"></a> <span class="dv">5</span>: <span class="st">&#39;dac&#39;</span>,</span>
<span id="cb3-9"><a href="#cb3-9" aria-hidden="true" tabindex="-1"></a> <span class="dv">6</span>: <span class="st">&#39;dac&#39;</span>,</span>
<span id="cb3-10"><a href="#cb3-10" aria-hidden="true" tabindex="-1"></a> <span class="dv">7</span>: <span class="st">&#39;dac&#39;</span>,</span>
<span id="cb3-11"><a href="#cb3-11" aria-hidden="true" tabindex="-1"></a> <span class="dv">8</span>: <span class="st">&#39;dac&#39;</span>,</span>
<span id="cb3-12"><a href="#cb3-12" aria-hidden="true" tabindex="-1"></a> <span class="dv">9</span>: <span class="st">&#39;dac&#39;</span>,</span>
<span id="cb3-13"><a href="#cb3-13" aria-hidden="true" tabindex="-1"></a> <span class="dv">10</span>: <span class="st">&#39;dac&#39;</span>,</span>
<span id="cb3-14"><a href="#cb3-14" aria-hidden="true" tabindex="-1"></a> <span class="dv">11</span>: <span class="st">&#39;dac&#39;</span>,</span>
<span id="cb3-15"><a href="#cb3-15" aria-hidden="true" tabindex="-1"></a> <span class="dv">12</span>: <span class="st">&#39;dac&#39;</span>,</span>
<span id="cb3-16"><a href="#cb3-16" aria-hidden="true" tabindex="-1"></a> <span class="dv">18</span>: <span class="st">&#39;dac&#39;</span>,</span>
<span id="cb3-17"><a href="#cb3-17" aria-hidden="true" tabindex="-1"></a> <span class="dv">20</span>: <span class="st">&#39;dac&#39;</span>,</span>
<span id="cb3-18"><a href="#cb3-18" aria-hidden="true" tabindex="-1"></a> <span class="dv">21</span>: <span class="st">&#39;dac&#39;</span>,</span>
<span id="cb3-19"><a href="#cb3-19" aria-hidden="true" tabindex="-1"></a> <span class="dv">22</span>: <span class="st">&#39;dac&#39;</span>,</span>
<span id="cb3-20"><a href="#cb3-20" aria-hidden="true" tabindex="-1"></a> <span class="dv">40</span>: <span class="st">&#39;dac&#39;</span>,</span>
<span id="cb3-21"><a href="#cb3-21" aria-hidden="true" tabindex="-1"></a> <span class="dv">50</span>: <span class="st">&#39;dac&#39;</span>,</span>
<span id="cb3-22"><a href="#cb3-22" aria-hidden="true" tabindex="-1"></a> <span class="dv">61</span>: <span class="st">&#39;dac&#39;</span>,</span>
<span id="cb3-23"><a href="#cb3-23" aria-hidden="true" tabindex="-1"></a> <span class="dv">68</span>: <span class="st">&#39;dac&#39;</span>,</span>
<span id="cb3-24"><a href="#cb3-24" aria-hidden="true" tabindex="-1"></a> <span class="dv">69</span>: <span class="st">&#39;dac&#39;</span>,</span>
<span id="cb3-25"><a href="#cb3-25" aria-hidden="true" tabindex="-1"></a> <span class="dv">75</span>: <span class="st">&#39;dac&#39;</span>,</span>
<span id="cb3-26"><a href="#cb3-26" aria-hidden="true" tabindex="-1"></a> <span class="dv">76</span>: <span class="st">&#39;dac&#39;</span>,</span>
<span id="cb3-27"><a href="#cb3-27" aria-hidden="true" tabindex="-1"></a> <span class="dv">301</span>: <span class="st">&#39;dac&#39;</span>,</span>
<span id="cb3-28"><a href="#cb3-28" aria-hidden="true" tabindex="-1"></a> <span class="dv">302</span>: <span class="st">&#39;dac&#39;</span>,</span>
<span id="cb3-29"><a href="#cb3-29" aria-hidden="true" tabindex="-1"></a> <span class="dv">701</span>: <span class="st">&#39;dac&#39;</span>,</span>
<span id="cb3-30"><a href="#cb3-30" aria-hidden="true" tabindex="-1"></a> <span class="dv">742</span>: <span class="st">&#39;dac&#39;</span>,</span>
<span id="cb3-31"><a href="#cb3-31" aria-hidden="true" tabindex="-1"></a> <span class="dv">801</span>: <span class="st">&#39;dac&#39;</span>,</span>
<span id="cb3-32"><a href="#cb3-32" aria-hidden="true" tabindex="-1"></a> <span class="dv">820</span>: <span class="st">&#39;dac&#39;</span>,</span>
<span id="cb3-33"><a href="#cb3-33" aria-hidden="true" tabindex="-1"></a> <span class="dv">918</span>: <span class="st">&#39;dac&#39;</span>,</span>
<span id="cb3-34"><a href="#cb3-34" aria-hidden="true" tabindex="-1"></a> <span class="dv">104</span>: <span class="st">&#39;mlt&#39;</span>,</span>
<span id="cb3-35"><a href="#cb3-35" aria-hidden="true" tabindex="-1"></a> <span class="dv">807</span>: <span class="st">&#39;mlt&#39;</span>,</span>
<span id="cb3-36"><a href="#cb3-36" aria-hidden="true" tabindex="-1"></a> <span class="dv">811</span>: <span class="st">&#39;mlt&#39;</span>,</span>
<span id="cb3-37"><a href="#cb3-37" aria-hidden="true" tabindex="-1"></a> <span class="dv">812</span>: <span class="st">&#39;mlt&#39;</span>,</span>
<span id="cb3-38"><a href="#cb3-38" aria-hidden="true" tabindex="-1"></a> <span class="dv">901</span>: <span class="st">&#39;mlt&#39;</span>,</span>
<span id="cb3-39"><a href="#cb3-39" aria-hidden="true" tabindex="-1"></a> <span class="dv">902</span>: <span class="st">&#39;mlt&#39;</span>,</span>
<span id="cb3-40"><a href="#cb3-40" aria-hidden="true" tabindex="-1"></a> <span class="dv">903</span>: <span class="st">&#39;mlt&#39;</span>,</span>
<span id="cb3-41"><a href="#cb3-41" aria-hidden="true" tabindex="-1"></a> <span class="dv">905</span>: <span class="st">&#39;mlt&#39;</span>,</span>
<span id="cb3-42"><a href="#cb3-42" aria-hidden="true" tabindex="-1"></a> <span class="dv">906</span>: <span class="st">&#39;mlt&#39;</span>,</span>
<span id="cb3-43"><a href="#cb3-43" aria-hidden="true" tabindex="-1"></a> <span class="dv">907</span>: <span class="st">&#39;mlt&#39;</span>,</span>
<span id="cb3-44"><a href="#cb3-44" aria-hidden="true" tabindex="-1"></a> <span class="dv">909</span>: <span class="st">&#39;mlt&#39;</span>,</span>
<span id="cb3-45"><a href="#cb3-45" aria-hidden="true" tabindex="-1"></a> <span class="dv">913</span>: <span class="st">&#39;mlt&#39;</span>,</span>
<span id="cb3-46"><a href="#cb3-46" aria-hidden="true" tabindex="-1"></a> <span class="dv">914</span>: <span class="st">&#39;mlt&#39;</span>,</span>
<span id="cb3-47"><a href="#cb3-47" aria-hidden="true" tabindex="-1"></a> <span class="dv">915</span>: <span class="st">&#39;mlt&#39;</span>,</span>
<span id="cb3-48"><a href="#cb3-48" aria-hidden="true" tabindex="-1"></a> <span class="dv">921</span>: <span class="st">&#39;mlt&#39;</span>,</span>
<span id="cb3-49"><a href="#cb3-49" aria-hidden="true" tabindex="-1"></a> <span class="dv">923</span>: <span class="st">&#39;mlt&#39;</span>,</span>
<span id="cb3-50"><a href="#cb3-50" aria-hidden="true" tabindex="-1"></a> <span class="dv">926</span>: <span class="st">&#39;mlt&#39;</span>,</span>
<span id="cb3-51"><a href="#cb3-51" aria-hidden="true" tabindex="-1"></a> <span class="dv">928</span>: <span class="st">&#39;mlt&#39;</span>,</span>
<span id="cb3-52"><a href="#cb3-52" aria-hidden="true" tabindex="-1"></a> <span class="dv">932</span>: <span class="st">&#39;mlt&#39;</span>,</span>
<span id="cb3-53"><a href="#cb3-53" aria-hidden="true" tabindex="-1"></a> <span class="dv">940</span>: <span class="st">&#39;mlt&#39;</span>,</span>
<span id="cb3-54"><a href="#cb3-54" aria-hidden="true" tabindex="-1"></a> <span class="dv">944</span>: <span class="st">&#39;mlt&#39;</span>,</span>
<span id="cb3-55"><a href="#cb3-55" aria-hidden="true" tabindex="-1"></a> <span class="dv">948</span>: <span class="st">&#39;mlt&#39;</span>,</span>
<span id="cb3-56"><a href="#cb3-56" aria-hidden="true" tabindex="-1"></a> <span class="dv">951</span>: <span class="st">&#39;mlt&#39;</span>,</span>
<span id="cb3-57"><a href="#cb3-57" aria-hidden="true" tabindex="-1"></a> <span class="dv">952</span>: <span class="st">&#39;mlt&#39;</span>,</span>
<span id="cb3-58"><a href="#cb3-58" aria-hidden="true" tabindex="-1"></a> <span class="dv">953</span>: <span class="st">&#39;mlt&#39;</span>,</span>
<span id="cb3-59"><a href="#cb3-59" aria-hidden="true" tabindex="-1"></a> <span class="dv">954</span>: <span class="st">&#39;mlt&#39;</span>,</span>
<span id="cb3-60"><a href="#cb3-60" aria-hidden="true" tabindex="-1"></a> <span class="dv">956</span>: <span class="st">&#39;mlt&#39;</span>,</span>
<span id="cb3-61"><a href="#cb3-61" aria-hidden="true" tabindex="-1"></a> <span class="dv">958</span>: <span class="st">&#39;mlt&#39;</span>,</span>
<span id="cb3-62"><a href="#cb3-62" aria-hidden="true" tabindex="-1"></a> <span class="dv">959</span>: <span class="st">&#39;mlt&#39;</span>,</span>
<span id="cb3-63"><a href="#cb3-63" aria-hidden="true" tabindex="-1"></a> <span class="dv">960</span>: <span class="st">&#39;mlt&#39;</span>,</span>
<span id="cb3-64"><a href="#cb3-64" aria-hidden="true" tabindex="-1"></a> <span class="dv">963</span>: <span class="st">&#39;mlt&#39;</span>,</span>
<span id="cb3-65"><a href="#cb3-65" aria-hidden="true" tabindex="-1"></a> <span class="dv">964</span>: <span class="st">&#39;mlt&#39;</span>,</span>
<span id="cb3-66"><a href="#cb3-66" aria-hidden="true" tabindex="-1"></a> <span class="dv">966</span>: <span class="st">&#39;mlt&#39;</span>,</span>
<span id="cb3-67"><a href="#cb3-67" aria-hidden="true" tabindex="-1"></a> <span class="dv">967</span>: <span class="st">&#39;mlt&#39;</span>,</span>
<span id="cb3-68"><a href="#cb3-68" aria-hidden="true" tabindex="-1"></a> <span class="dv">971</span>: <span class="st">&#39;mlt&#39;</span>,</span>
<span id="cb3-69"><a href="#cb3-69" aria-hidden="true" tabindex="-1"></a> <span class="dv">974</span>: <span class="st">&#39;mlt&#39;</span>,</span>
<span id="cb3-70"><a href="#cb3-70" aria-hidden="true" tabindex="-1"></a> <span class="dv">976</span>: <span class="st">&#39;mlt&#39;</span>,</span>
<span id="cb3-71"><a href="#cb3-71" aria-hidden="true" tabindex="-1"></a> <span class="dv">978</span>: <span class="st">&#39;mlt&#39;</span>,</span>
<span id="cb3-72"><a href="#cb3-72" aria-hidden="true" tabindex="-1"></a> <span class="dv">979</span>: <span class="st">&#39;mlt&#39;</span>,</span>
<span id="cb3-73"><a href="#cb3-73" aria-hidden="true" tabindex="-1"></a> <span class="dv">980</span>: <span class="st">&#39;mlt&#39;</span>,</span>
<span id="cb3-74"><a href="#cb3-74" aria-hidden="true" tabindex="-1"></a> <span class="dv">981</span>: <span class="st">&#39;mlt&#39;</span>,</span>
<span id="cb3-75"><a href="#cb3-75" aria-hidden="true" tabindex="-1"></a> <span class="dv">982</span>: <span class="st">&#39;mlt&#39;</span>,</span>
<span id="cb3-76"><a href="#cb3-76" aria-hidden="true" tabindex="-1"></a> <span class="dv">983</span>: <span class="st">&#39;mlt&#39;</span>,</span>
<span id="cb3-77"><a href="#cb3-77" aria-hidden="true" tabindex="-1"></a> <span class="dv">988</span>: <span class="st">&#39;mlt&#39;</span>,</span>
<span id="cb3-78"><a href="#cb3-78" aria-hidden="true" tabindex="-1"></a> <span class="dv">990</span>: <span class="st">&#39;mlt&#39;</span>,</span>
<span id="cb3-79"><a href="#cb3-79" aria-hidden="true" tabindex="-1"></a> <span class="dv">992</span>: <span class="st">&#39;mlt&#39;</span>,</span>
<span id="cb3-80"><a href="#cb3-80" aria-hidden="true" tabindex="-1"></a> <span class="dv">997</span>: <span class="st">&#39;mlt&#39;</span>,</span>
<span id="cb3-81"><a href="#cb3-81" aria-hidden="true" tabindex="-1"></a> <span class="dv">1011</span>: <span class="st">&#39;mlt&#39;</span>,</span>
<span id="cb3-82"><a href="#cb3-82" aria-hidden="true" tabindex="-1"></a> <span class="dv">1012</span>: <span class="st">&#39;mlt&#39;</span>,</span>
<span id="cb3-83"><a href="#cb3-83" aria-hidden="true" tabindex="-1"></a> <span class="dv">1013</span>: <span class="st">&#39;mlt&#39;</span>,</span>
<span id="cb3-84"><a href="#cb3-84" aria-hidden="true" tabindex="-1"></a> <span class="dv">1014</span>: <span class="st">&#39;mlt&#39;</span>,</span>
<span id="cb3-85"><a href="#cb3-85" aria-hidden="true" tabindex="-1"></a> <span class="dv">1015</span>: <span class="st">&#39;mlt&#39;</span>,</span>
<span id="cb3-86"><a href="#cb3-86" aria-hidden="true" tabindex="-1"></a> <span class="dv">1016</span>: <span class="st">&#39;mlt&#39;</span>,</span>
<span id="cb3-87"><a href="#cb3-87" aria-hidden="true" tabindex="-1"></a> <span class="dv">1017</span>: <span class="st">&#39;mlt&#39;</span>,</span>
<span id="cb3-88"><a href="#cb3-88" aria-hidden="true" tabindex="-1"></a> <span class="dv">1018</span>: <span class="st">&#39;mlt&#39;</span>,</span>
<span id="cb3-89"><a href="#cb3-89" aria-hidden="true" tabindex="-1"></a> <span class="dv">1019</span>: <span class="st">&#39;mlt&#39;</span>,</span>
<span id="cb3-90"><a href="#cb3-90" aria-hidden="true" tabindex="-1"></a> <span class="dv">1020</span>: <span class="st">&#39;mlt&#39;</span>,</span>
<span id="cb3-91"><a href="#cb3-91" aria-hidden="true" tabindex="-1"></a> <span class="dv">1023</span>: <span class="st">&#39;mlt&#39;</span>,</span>
<span id="cb3-92"><a href="#cb3-92" aria-hidden="true" tabindex="-1"></a> <span class="dv">1024</span>: <span class="st">&#39;mlt&#39;</span>,</span>
<span id="cb3-93"><a href="#cb3-93" aria-hidden="true" tabindex="-1"></a> <span class="dv">1025</span>: <span class="st">&#39;mlt&#39;</span>,</span>
<span id="cb3-94"><a href="#cb3-94" aria-hidden="true" tabindex="-1"></a> <span class="dv">1037</span>: <span class="st">&#39;mlt&#39;</span>,</span>
<span id="cb3-95"><a href="#cb3-95" aria-hidden="true" tabindex="-1"></a> <span class="dv">1038</span>: <span class="st">&#39;mlt&#39;</span>,</span>
<span id="cb3-96"><a href="#cb3-96" aria-hidden="true" tabindex="-1"></a> <span class="dv">1311</span>: <span class="st">&#39;mlt&#39;</span>,</span>
<span id="cb3-97"><a href="#cb3-97" aria-hidden="true" tabindex="-1"></a> <span class="dv">1312</span>: <span class="st">&#39;mlt&#39;</span>,</span>
<span id="cb3-98"><a href="#cb3-98" aria-hidden="true" tabindex="-1"></a> <span class="dv">1313</span>: <span class="st">&#39;mlt&#39;</span>,</span>
<span id="cb3-99"><a href="#cb3-99" aria-hidden="true" tabindex="-1"></a> <span class="dv">30</span>: <span class="st">&#39;nondac&#39;</span>,</span>
<span id="cb3-100"><a href="#cb3-100" aria-hidden="true" tabindex="-1"></a> <span class="dv">45</span>: <span class="st">&#39;nondac&#39;</span>,</span>
<span id="cb3-101"><a href="#cb3-101" aria-hidden="true" tabindex="-1"></a> <span class="dv">55</span>: <span class="st">&#39;nondac&#39;</span>,</span>
<span id="cb3-102"><a href="#cb3-102" aria-hidden="true" tabindex="-1"></a> <span class="dv">62</span>: <span class="st">&#39;nondac&#39;</span>,</span>
<span id="cb3-103"><a href="#cb3-103" aria-hidden="true" tabindex="-1"></a> <span class="dv">70</span>: <span class="st">&#39;nondac&#39;</span>,</span>
<span id="cb3-104"><a href="#cb3-104" aria-hidden="true" tabindex="-1"></a> <span class="dv">72</span>: <span class="st">&#39;nondac&#39;</span>,</span>
<span id="cb3-105"><a href="#cb3-105" aria-hidden="true" tabindex="-1"></a> <span class="dv">77</span>: <span class="st">&#39;nondac&#39;</span>,</span>
<span id="cb3-106"><a href="#cb3-106" aria-hidden="true" tabindex="-1"></a> <span class="dv">82</span>: <span class="st">&#39;nondac&#39;</span>,</span>
<span id="cb3-107"><a href="#cb3-107" aria-hidden="true" tabindex="-1"></a> <span class="dv">83</span>: <span class="st">&#39;nondac&#39;</span>,</span>
<span id="cb3-108"><a href="#cb3-108" aria-hidden="true" tabindex="-1"></a> <span class="dv">84</span>: <span class="st">&#39;nondac&#39;</span>,</span>
<span id="cb3-109"><a href="#cb3-109" aria-hidden="true" tabindex="-1"></a> <span class="dv">87</span>: <span class="st">&#39;nondac&#39;</span>,</span>
<span id="cb3-110"><a href="#cb3-110" aria-hidden="true" tabindex="-1"></a> <span class="dv">130</span>: <span class="st">&#39;nondac&#39;</span>,</span>
<span id="cb3-111"><a href="#cb3-111" aria-hidden="true" tabindex="-1"></a> <span class="dv">133</span>: <span class="st">&#39;nondac&#39;</span>,</span>
<span id="cb3-112"><a href="#cb3-112" aria-hidden="true" tabindex="-1"></a> <span class="dv">358</span>: <span class="st">&#39;nondac&#39;</span>,</span>
<span id="cb3-113"><a href="#cb3-113" aria-hidden="true" tabindex="-1"></a> <span class="dv">543</span>: <span class="st">&#39;nondac&#39;</span>,</span>
<span id="cb3-114"><a href="#cb3-114" aria-hidden="true" tabindex="-1"></a> <span class="dv">546</span>: <span class="st">&#39;nondac&#39;</span>,</span>
<span id="cb3-115"><a href="#cb3-115" aria-hidden="true" tabindex="-1"></a> <span class="dv">552</span>: <span class="st">&#39;nondac&#39;</span>,</span>
<span id="cb3-116"><a href="#cb3-116" aria-hidden="true" tabindex="-1"></a> <span class="dv">561</span>: <span class="st">&#39;nondac&#39;</span>,</span>
<span id="cb3-117"><a href="#cb3-117" aria-hidden="true" tabindex="-1"></a> <span class="dv">566</span>: <span class="st">&#39;nondac&#39;</span>,</span>
<span id="cb3-118"><a href="#cb3-118" aria-hidden="true" tabindex="-1"></a> <span class="dv">576</span>: <span class="st">&#39;nondac&#39;</span>,</span>
<span id="cb3-119"><a href="#cb3-119" aria-hidden="true" tabindex="-1"></a> <span class="dv">611</span>: <span class="st">&#39;nondac&#39;</span>,</span>
<span id="cb3-120"><a href="#cb3-120" aria-hidden="true" tabindex="-1"></a> <span class="dv">613</span>: <span class="st">&#39;nondac&#39;</span>,</span>
<span id="cb3-121"><a href="#cb3-121" aria-hidden="true" tabindex="-1"></a> <span class="dv">732</span>: <span class="st">&#39;nondac&#39;</span>,</span>
<span id="cb3-122"><a href="#cb3-122" aria-hidden="true" tabindex="-1"></a> <span class="dv">764</span>: <span class="st">&#39;nondac&#39;</span>,</span>
<span id="cb3-123"><a href="#cb3-123" aria-hidden="true" tabindex="-1"></a> <span class="dv">765</span>: <span class="st">&#39;nondac&#39;</span>,</span>
<span id="cb3-124"><a href="#cb3-124" aria-hidden="true" tabindex="-1"></a> <span class="dv">1601</span>: <span class="st">&#39;private&#39;</span>,</span>
<span id="cb3-125"><a href="#cb3-125" aria-hidden="true" tabindex="-1"></a> <span class="dv">1602</span>: <span class="st">&#39;private&#39;</span>,</span>
<span id="cb3-126"><a href="#cb3-126" aria-hidden="true" tabindex="-1"></a> <span class="dv">1603</span>: <span class="st">&#39;private&#39;</span>,</span>
<span id="cb3-127"><a href="#cb3-127" aria-hidden="true" tabindex="-1"></a> <span class="dv">1604</span>: <span class="st">&#39;private&#39;</span>,</span>
<span id="cb3-128"><a href="#cb3-128" aria-hidden="true" tabindex="-1"></a> <span class="dv">1605</span>: <span class="st">&#39;private&#39;</span>,</span>
<span id="cb3-129"><a href="#cb3-129" aria-hidden="true" tabindex="-1"></a> <span class="dv">1606</span>: <span class="st">&#39;private&#39;</span>,</span>
<span id="cb3-130"><a href="#cb3-130" aria-hidden="true" tabindex="-1"></a> <span class="dv">1607</span>: <span class="st">&#39;private&#39;</span>,</span>
<span id="cb3-131"><a href="#cb3-131" aria-hidden="true" tabindex="-1"></a> <span class="dv">1608</span>: <span class="st">&#39;private&#39;</span>,</span>
<span id="cb3-132"><a href="#cb3-132" aria-hidden="true" tabindex="-1"></a> <span class="dv">1609</span>: <span class="st">&#39;private&#39;</span>,</span>
<span id="cb3-133"><a href="#cb3-133" aria-hidden="true" tabindex="-1"></a> <span class="dv">1610</span>: <span class="st">&#39;private&#39;</span>,</span>
<span id="cb3-134"><a href="#cb3-134" aria-hidden="true" tabindex="-1"></a> <span class="dv">1611</span>: <span class="st">&#39;private&#39;</span>,</span>
<span id="cb3-135"><a href="#cb3-135" aria-hidden="true" tabindex="-1"></a> <span class="dv">1612</span>: <span class="st">&#39;private&#39;</span>,</span>
<span id="cb3-136"><a href="#cb3-136" aria-hidden="true" tabindex="-1"></a> <span class="dv">1613</span>: <span class="st">&#39;private&#39;</span>,</span>
<span id="cb3-137"><a href="#cb3-137" aria-hidden="true" tabindex="-1"></a> <span class="dv">1614</span>: <span class="st">&#39;private&#39;</span>,</span>
<span id="cb3-138"><a href="#cb3-138" aria-hidden="true" tabindex="-1"></a> <span class="dv">1615</span>: <span class="st">&#39;private&#39;</span>,</span>
<span id="cb3-139"><a href="#cb3-139" aria-hidden="true" tabindex="-1"></a> <span class="dv">1616</span>: <span class="st">&#39;private&#39;</span>,</span>
<span id="cb3-140"><a href="#cb3-140" aria-hidden="true" tabindex="-1"></a> <span class="dv">1617</span>: <span class="st">&#39;private&#39;</span>,</span>
<span id="cb3-141"><a href="#cb3-141" aria-hidden="true" tabindex="-1"></a> <span class="dv">1618</span>: <span class="st">&#39;private&#39;</span>,</span>
<span id="cb3-142"><a href="#cb3-142" aria-hidden="true" tabindex="-1"></a> <span class="dv">1619</span>: <span class="st">&#39;private&#39;</span>,</span>
<span id="cb3-143"><a href="#cb3-143" aria-hidden="true" tabindex="-1"></a> <span class="dv">1620</span>: <span class="st">&#39;private&#39;</span>,</span>
<span id="cb3-144"><a href="#cb3-144" aria-hidden="true" tabindex="-1"></a> <span class="dv">1621</span>: <span class="st">&#39;private&#39;</span>,</span>
<span id="cb3-145"><a href="#cb3-145" aria-hidden="true" tabindex="-1"></a> <span class="dv">1622</span>: <span class="st">&#39;private&#39;</span>,</span>
<span id="cb3-146"><a href="#cb3-146" aria-hidden="true" tabindex="-1"></a> <span class="dv">1623</span>: <span class="st">&#39;private&#39;</span>,</span>
<span id="cb3-147"><a href="#cb3-147" aria-hidden="true" tabindex="-1"></a> <span class="dv">1624</span>: <span class="st">&#39;private&#39;</span>,</span>
<span id="cb3-148"><a href="#cb3-148" aria-hidden="true" tabindex="-1"></a> <span class="dv">1625</span>: <span class="st">&#39;private&#39;</span>,</span>
<span id="cb3-149"><a href="#cb3-149" aria-hidden="true" tabindex="-1"></a> <span class="dv">1626</span>: <span class="st">&#39;private&#39;</span>,</span>
<span id="cb3-150"><a href="#cb3-150" aria-hidden="true" tabindex="-1"></a> <span class="dv">1627</span>: <span class="st">&#39;private&#39;</span>,</span>
<span id="cb3-151"><a href="#cb3-151" aria-hidden="true" tabindex="-1"></a> <span class="dv">1628</span>: <span class="st">&#39;private&#39;</span>,</span>
<span id="cb3-152"><a href="#cb3-152" aria-hidden="true" tabindex="-1"></a> <span class="dv">1629</span>: <span class="st">&#39;private&#39;</span>,</span>
<span id="cb3-153"><a href="#cb3-153" aria-hidden="true" tabindex="-1"></a> <span class="dv">1630</span>: <span class="st">&#39;private&#39;</span>,</span>
<span id="cb3-154"><a href="#cb3-154" aria-hidden="true" tabindex="-1"></a> <span class="dv">1631</span>: <span class="st">&#39;private&#39;</span>,</span>
<span id="cb3-155"><a href="#cb3-155" aria-hidden="true" tabindex="-1"></a> <span class="dv">1632</span>: <span class="st">&#39;private&#39;</span>,</span>
<span id="cb3-156"><a href="#cb3-156" aria-hidden="true" tabindex="-1"></a> <span class="dv">1633</span>: <span class="st">&#39;private&#39;</span>,</span>
<span id="cb3-157"><a href="#cb3-157" aria-hidden="true" tabindex="-1"></a> <span class="dv">1634</span>: <span class="st">&#39;private&#39;</span>,</span>
<span id="cb3-158"><a href="#cb3-158" aria-hidden="true" tabindex="-1"></a> <span class="dv">1635</span>: <span class="st">&#39;private&#39;</span>,</span>
<span id="cb3-159"><a href="#cb3-159" aria-hidden="true" tabindex="-1"></a> <span class="dv">1636</span>: <span class="st">&#39;private&#39;</span>,</span>
<span id="cb3-160"><a href="#cb3-160" aria-hidden="true" tabindex="-1"></a> <span class="dv">1637</span>: <span class="st">&#39;private&#39;</span>,</span>
<span id="cb3-161"><a href="#cb3-161" aria-hidden="true" tabindex="-1"></a> <span class="dv">1638</span>: <span class="st">&#39;private&#39;</span>,</span>
<span id="cb3-162"><a href="#cb3-162" aria-hidden="true" tabindex="-1"></a> <span class="dv">1639</span>: <span class="st">&#39;private&#39;</span>,</span>
<span id="cb3-163"><a href="#cb3-163" aria-hidden="true" tabindex="-1"></a>}</span>
<span id="cb3-164"><a href="#cb3-164" aria-hidden="true" tabindex="-1"></a></span>
<span id="cb3-165"><a href="#cb3-165" aria-hidden="true" tabindex="-1"></a><span class="kw">def</span> totals_by_donortype(oda_frame):</span>
<span id="cb3-166"><a href="#cb3-166" aria-hidden="true" tabindex="-1"></a> totals <span class="op">=</span> oda_frame.loc[</span>
<span id="cb3-167"><a href="#cb3-167" aria-hidden="true" tabindex="-1"></a> (df[<span class="st">&#39;RECIPIENT&#39;</span>] <span class="op">==</span> <span class="dv">236</span>) <span class="op">&amp;</span></span>
<span id="cb3-168"><a href="#cb3-168" aria-hidden="true" tabindex="-1"></a> (df[<span class="st">&#39;SECTOR&#39;</span>] <span class="op">==</span> <span class="dv">1000</span>) <span class="op">&amp;</span></span>
<span id="cb3-169"><a href="#cb3-169" aria-hidden="true" tabindex="-1"></a> (df[<span class="st">&#39;FLOW&#39;</span>] <span class="op">==</span> <span class="dv">100</span>) <span class="op">&amp;</span></span>
<span id="cb3-170"><a href="#cb3-170" aria-hidden="true" tabindex="-1"></a> (df[<span class="st">&#39;CHANNEL&#39;</span>] <span class="op">==</span> <span class="dv">100</span>) <span class="op">&amp;</span></span>
<span id="cb3-171"><a href="#cb3-171" aria-hidden="true" tabindex="-1"></a> (df[<span class="st">&#39;AMOUNTTYPE&#39;</span>] <span class="op">==</span> <span class="st">&#39;D&#39;</span>) <span class="op">&amp;</span></span>
<span id="cb3-172"><a href="#cb3-172" aria-hidden="true" tabindex="-1"></a> (df[<span class="st">&#39;FLOWTYPE&#39;</span>] <span class="op">==</span> <span class="dv">112</span>) <span class="op">&amp;</span></span>
<span id="cb3-173"><a href="#cb3-173" aria-hidden="true" tabindex="-1"></a> (df[<span class="st">&#39;AIDTYPE&#39;</span>] <span class="op">==</span> <span class="st">&quot;100&quot;</span>) <span class="co"># contains mixed int and string representations</span></span>
<span id="cb3-174"><a href="#cb3-174" aria-hidden="true" tabindex="-1"></a> ]</span>
<span id="cb3-175"><a href="#cb3-175" aria-hidden="true" tabindex="-1"></a> donortotals <span class="op">=</span> totals.copy()</span>
<span id="cb3-176"><a href="#cb3-176" aria-hidden="true" tabindex="-1"></a> donortotals[<span class="st">&quot;Donortype&quot;</span>] <span class="op">=</span> donortotals[<span class="st">&quot;DONOR&quot;</span>].<span class="bu">map</span>(donortypes)</span>
<span id="cb3-177"><a href="#cb3-177" aria-hidden="true" tabindex="-1"></a> <span class="cf">return</span> donortotals</span></code><button title="Copy to Clipboard" class="code-copy-button"><i class="bi"></i></button></pre></div>
</details>
</div>
<div class="cell" data-execution_count="7">
<details>
<summary>Code</summary>
<div class="sourceCode cell-code" id="cb4"><pre class="sourceCode python code-with-copy"><code class="sourceCode python"><span id="cb4-1"><a href="#cb4-1" aria-hidden="true" tabindex="-1"></a>svg_render <span class="op">=</span> <span class="va">True</span></span>
<span id="cb4-2"><a href="#cb4-2" aria-hidden="true" tabindex="-1"></a>pd.options.display.float_format <span class="op">=</span> <span class="st">&quot;</span><span class="sc">{:.2f}</span><span class="st">&quot;</span>.<span class="bu">format</span></span></code><button title="Copy to Clipboard" class="code-copy-button"><i class="bi"></i></button></pre></div>
2022-08-20 14:45:26 +00:00
</details>
</div>
<section id="vietnam" class="level2 page-columns page-full">
2022-08-19 12:02:37 +00:00
<h2 class="anchored" data-anchor-id="vietnam">Vietnam</h2>
<hr>
<ul>
2022-08-19 16:58:20 +00:00
<li>Economic restructuring and trade liberalization further drives economy towards wage work, service work, the manufacturing sectors.</li>
2022-08-19 12:02:37 +00:00
<li>Structural changes drove poverty down in absolute terms, but leave those in vulnerable positions consistently at-risk of slipping into or worsening existing poverty.</li>
<li>Economic inequality in Vietnam intersectional between ethnic minorities, rural populations, regional and gendered dimensions.</li>
<li>Ethnic minorities increase in economic inequality, driven by worse returns on assets (human capital and land) and worse access to endowments (land and educational infrastructure).</li>
<li>Environmental degradation and environmental shocks consistently worsen within-sector inequalities for ethnic minority and female population.</li>
<li>Vietnam in vulnerable position to increasing exogenous shocks due to climate change, building capacity against which may require focus shift on risk management and preventative measures</li>
</ul>
<hr>
<p>Vietnams economy is now firmly in the third decade of ongoing economic reform (<em>Doi Moi</em>) as a market-based economy, which lead to remarkable growth phases through opening the economy to international trade while, seen over the bulk of its population, attempting to keep inequality rates managed through policies of controlling credit and reducing subsidies to state-owned enterprises <span class="citation" data-cites="Bui2019">(<a href="#ref-Bui2019" role="doc-biblioref">Bui &amp; Imai, 2019</a>)</span>.</p>
<!-- poor/poverty <40%; mention low social mobility: different social insurances [@Bui2019] -->
2022-09-08 15:30:55 +00:00
<p>Poverty in Vietnam is marked by a drastic reduction in absolute terms over this time with some of the decline directly attributable to the liberalization of markets over the countrys growth more generally <span class="citation" data-cites="WorldBank2012 McCaig2011 Le2022">(<a href="#ref-Le2022" role="doc-biblioref">N. V. T. Le et al., 2022</a>; <a href="#ref-McCaig2011" role="doc-biblioref">McCaig, 2011</a>; <a href="#ref-WorldBank2012" role="doc-biblioref">World Bank, 2012</a>)</span>. While the rate of decline slowed since the mid-2000s <span class="citation" data-cites="VASS2006 VASS2011">(<a href="#ref-VASS2006" role="doc-biblioref">VASS, 2006</a>, <a href="#ref-VASS2011" role="doc-biblioref">2011</a>)</span>, it continued declining in tandem with small income inequality decreases. The overall income inequality decrease that Vietnam experienced from the early 2000s suggests that economic growth has been accompanied by equity extending beyond poverty reduction <span class="citation" data-cites="Benjamin2017">(<a href="#ref-Benjamin2017" role="doc-biblioref">Benjamin et al., 2017</a>)</span>. On the other hand, Le et al. <span class="citation" data-cites="Le2021">(<a href="#ref-Le2021" role="doc-biblioref">2021</a>)</span> suggest a slight increase in overall income distribution from 2010-2018. At the same time, the population groups most affected by poverty through welfare inequalities stay unaltered, as do largely the primary factors accompanying it: There is severe poverty persistence among ethnic minorities in Vietnam <span class="citation" data-cites="Baulch2012">(<a href="#ref-Baulch2012" role="doc-biblioref">Baulch et al., 2012</a>)</span>, concomitant with low education and skills, more prevalent dependency on subsistence agriculture, physical and social isolation, specific disadvantages which become linked to ethnic identities and a greater exposure to natural disasters and risks <span class="citation" data-cites="Kozel2014">(<a href="#ref-Kozel2014" role="doc-biblioref">Kozel, 2014</a>)</span>.</p>
2022-09-29 11:28:32 +00:00
<p>The countrys overall estimated Gini coefficient for income fluctuates between 0.42 and 0.44 between 2010 and 2018, with the highest levels of income inequality observed in the Central Highlands in 2016, though absolute income may be rising, with the top quintile having 9.2 times the income of the lowest quintile in 2010 and 9.8 times in 2016 <span class="citation" data-cites="Le2021">(<a href="#ref-Le2021" role="doc-biblioref">Q. H. Le et al., 2021</a>)</span>. On the other hand, the bottom 40% experienced a slight absolute rise in mean income per capita from 4.00 USD (2011 PPP) in 2014 to 5.00 USD (2011 PPP) in 2018 <span class="citation" data-cites="WorldBank2022e">(<a href="#ref-WorldBank2022e" role="doc-biblioref">World Bank, 2022d</a>)</span>. For Gini coefficients estimated using consumption per capita, see <a href="#fig-vnm">Figure 1</a>, which shows similar trends of increasing inequality, with 2010 constituting a significant increase. Economic inequality and poverty in Vietnam thus underlies an intersectional focus, between ethnic minorities, regional disparities, rural-urban divides and gendered lines, one which exogenous shocks can rapidly exacerbate as the example of the COVID-19 pandemic has recently shown <span class="citation" data-cites="Ebrahim2021">(<a href="#ref-Ebrahim2021" role="doc-biblioref">Ebrahim et al., 2021</a>)</span>.</p>
2022-09-08 15:30:55 +00:00
<div class="cell" data-execution_count="8">
2022-08-20 14:45:26 +00:00
<details>
<summary>Code</summary>
2022-09-08 15:30:55 +00:00
<div class="sourceCode cell-code" id="cb5"><pre class="sourceCode python code-with-copy"><code class="sourceCode python"><span id="cb5-1"><a href="#cb5-1" aria-hidden="true" tabindex="-1"></a>gni_cnsmpt <span class="op">=</span> vnm[vnm[<span class="st">&#39;resource&#39;</span>].<span class="bu">str</span>.contains(<span class="st">&quot;Consumption&quot;</span>)]</span>
<span id="cb5-2"><a href="#cb5-2" aria-hidden="true" tabindex="-1"></a>gni_cnsmpt <span class="op">=</span> gni_cnsmpt[gni_cnsmpt[<span class="st">&#39;scale&#39;</span>].<span class="bu">str</span>.contains(<span class="st">&quot;Per capita&quot;</span>)]</span>
<span id="cb5-3"><a href="#cb5-3" aria-hidden="true" tabindex="-1"></a>gni_cnsmpt <span class="op">=</span> gni_cnsmpt[gni_cnsmpt[<span class="st">&#39;source&#39;</span>].<span class="bu">str</span>.contains(<span class="st">&quot;World Bank&quot;</span>)]</span>
<span id="cb5-4"><a href="#cb5-4" aria-hidden="true" tabindex="-1"></a>gni_cnsmpt <span class="op">=</span> gni_cnsmpt[gni_cnsmpt[<span class="st">&#39;areacovr&#39;</span>].<span class="bu">str</span>.contains(<span class="st">&quot;All&quot;</span>)]</span>
<span id="cb5-5"><a href="#cb5-5" aria-hidden="true" tabindex="-1"></a>gini_plot(gni_cnsmpt)</span></code><button title="Copy to Clipboard" class="code-copy-button"><i class="bi"></i></button></pre></div>
2022-08-20 14:45:26 +00:00
</details>
<div class="cell-output cell-output-display">
2022-08-20 15:56:33 +00:00
<div id="fig-vnm" class="quarto-figure quarto-figure-center anchored">
2022-08-20 14:45:26 +00:00
<figure class="figure">
<p><img src="data:image/png;base64,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
2022-09-08 15:30:55 +00:00
<p></p><figcaption class="figure-caption">Figure 1: Gini index of consumption per capita for Vietnam</figcaption><p></p>
2022-08-20 14:45:26 +00:00
</figure>
</div>
</div>
</div>
2022-09-08 15:30:55 +00:00
<div data-custom-style="caption">
<p>Source: Authors elaboration based on UNU-WIDER WIID (2022).</p>
</div>
2022-08-19 16:58:20 +00:00
<!--
* estimated Gini coeff, overall income distribution: [@Le2021]
* fluctuating 0.42-0.44 (2010-2018)
* highest in Central highlands (2016)
* absolute income inequality may be rising, top quintile 9.2 times income lowest quintile (2010) to 9.8 times (2016) (Hung 2019)
-->
2022-08-19 12:02:37 +00:00
<!-- rural inequality -->
2022-09-08 15:30:55 +00:00
<p>In the 1990s, as the initial stages of the Doi Moi reform bore fruit with economic growth, the first amplifications of inequalities along new rural-urban boundaries became visible. There are two complementary views on the primary dimensions of rural inequalities. On the one hand, the urban-rural divide may be driven by structural effects: the welfare returns to education and agricultural activities changed dramatically from, and with it the requirements on policy adaptations required for stemming inequality.</p>
<p>Nguyen et al. <span class="citation" data-cites="Nguyen2007">(<a href="#ref-Nguyen2007" role="doc-biblioref">2007</a>)</span> argue this for the period of 1993-1998, with their findings that income returns to education improved dramatically over this time and arguing through this that suggested development policies had a strictly urban bias — on the whole they would benefit both from better education and vastly benefit from the restructuring of Vietnams economy. This view was in turn confirmed when Theil Index decomposition found within-sector inequality remaining largely stable while between-sector inequality rose significantly <span class="citation" data-cites="Fesselmeyer2010">(<a href="#ref-Fesselmeyer2010" role="doc-biblioref">Fesselmeyer &amp; Le, 2010</a>)</span>. On the other, Thu Le and Booth <span class="citation" data-cites="ThuLe2014">(<a href="#ref-ThuLe2014" role="doc-biblioref">2014</a>)</span> argue that the urban-rural inequality continued to increase over the years due to both covariate effects and the returns to those covariate effects, primarily education age structures and labor market activities, but also geographic location.</p>
<p>The gap between urban and rural sectors grew, a gap which would continue to widen until 2002, when within-sector rural inequalities started to become more important for inequalities than those between the sectors <span class="citation" data-cites="Fritzen2005 ThuLe2014">(<a href="#ref-Fritzen2005" role="doc-biblioref">Fritzen et al., 2005</a>; <a href="#ref-ThuLe2014" role="doc-biblioref">Thu Le &amp; Booth, 2014</a>)</span>. In the time of within-sector inequality becoming more pronounced many studies, while important contributions to continued inequality research, had a tendency to mask those inequalities in favor of continued analysis of between-sector trends — often to the detriment of the high degree of heterogeneity depending on geographic characteristics such as remoteness or cultural factors, as Cao and Akita <span class="citation" data-cites="Cao2008">(<a href="#ref-Cao2008" role="doc-biblioref">2008</a>)</span> note.</p>
<p>In a recent study, Bui and Imai <span class="citation" data-cites="Bui2019">(<a href="#ref-Bui2019" role="doc-biblioref">2019</a>)</span> build on this earlier work, and also find access to basic education the linchpin of improving rural welfare while its lack combined with economic restructuring precluded many from equal opportunities toward human capital improvement. They find that, as within-sector became more pronounced again after 2010, the large proportion of uneducated heads of households in rural sectors and low social mobility of rural poor combine to increase within-sector inequality while the economy overall changing toward salaried work compounded within-rural and urban-rural disparities. Early income studies generally highlighted the important role of agricultural incomes in reducing, or at the very not exacerbating, income inequality <span class="citation" data-cites="Benjamin2004">(<a href="#ref-Benjamin2004" role="doc-biblioref">Benjamin &amp; Brandt, 2004</a>)</span>. Benjamin et al. <span class="citation" data-cites="Benjamin2017">(<a href="#ref-Benjamin2017" role="doc-biblioref">2017</a>)</span> expand on this over a longer time-frame by decomposing different household income sources underlying Vietnams structural economic changes. They find that, while there is an overall decrease in income inequality throughout Vietnam between 2002 and 2014 and the urban-rural divide also continued its downward trend, rural inequality indeed increased over this time.</p>
<p>Wage income and family business income were the main drivers of overall inequality in 2002 (accounting for over 30% of income but 60% of inequality) and remittances add a small share on top, which, while decreased in effect (risen to 42% of total income), remain majorly correlated with income distributions and thus income inequality. <span class="citation" data-cites="Bui2019">Bui &amp; Imai (<a href="#ref-Bui2019" role="doc-biblioref">2019</a>)</span> confirm this with a per capita income Gini coefficient of 0.36 to 0.39 between 2008 and 2010 which, decomposed into Theil indices for between rural and urban and within rural sectors show that rural-urban inequalities are smaller and decreasing, while within-rural inequalities are large and increasing. Thus, while the study points to both more prevalent and equally distributed labor markets and wage labor opportunities, these effects apply to the overall population and not just within-rural inequalities which are driven in large part by ethnicity, education and environmental factors.</p>
2022-08-19 16:58:20 +00:00
<!--
* estimated Gini coeff, rural and urban expenditure: [@Bui2019]
* 0.36-0.39 (2008-2010), 0.36 (2012)
* Theil rural-urban between: 0.22-0.19 (2008-2012)
* Theil rural-rural within: 0.74-0.83 (2008-2012)
-->
2022-08-19 12:02:37 +00:00
<!-- ethnicity inequality -->
2022-09-08 15:30:55 +00:00
<p>Ethnic minorities in Vietnam are distinctly over-represented in poverty in addition to often being left behind in the development process, not least due to being extreme representatives of the economic situation of Vietnams rural population. Ethnic minority households have a tenuous economic position - and it is deteriorating. In earlier studies on ethnic inequalities in Vietnam, a strong welfare gap between ethnic minorities and the majority was already visible. Van de Walle <span class="citation" data-cites="vandeWalle2001">(<a href="#ref-vandeWalle2001" role="doc-biblioref">2001</a>)</span> reports the situation of ethnic minorities inhabiting predominantly remote rural areas with lower living standards than the ethnic majority, a finding he suggests waws created due to environmental and structural differences (difficult terrain, poor infrastructure, less access to off-farm work and the market economy and inferior access to education) and compounded by social immobility and social isolation. Baulch et al. <span class="citation" data-cites="Baulch2012">(<a href="#ref-Baulch2012" role="doc-biblioref">2012</a>)</span> find that between 1993 and 2004, the welfare gap between ethnic minorities and the ethnic majority had increased by 14.6%, two-fifths of which were due to endowments such as demographic structure and education while geographic variables make up less than one-fifth. They additionally suggest some drivers of the inequality being the lack of ability speaking the Vietnamese language or the distance to a commune or district center amplifying isolating effects, though a large part of the change was linked to temporal changes of unobservable factors - which the study conjectures to be due to negative ethnic stereotyping, a poor understanding of ethnic customs and culture and further (unobserved) variations in household-level endowments.</p>
<p>While in 2002 the ethnic minority population living in rural areas was below 15%, it rose to over 18% in 2014 - both due to higher fertility among minorities and ethnic majority Kinh urbanizing at a higher rate - and the ratio of Kinh to minority incomes rose to more than 2.0 in 2014 <span class="citation" data-cites="Benjamin2017">(<a href="#ref-Benjamin2017" role="doc-biblioref">Benjamin et al., 2017</a>)</span>. The same study finds that income inequality rose even more sharply <em>within</em> ethnic minorities, while that of rural Kinh, though increasing from 2002 to 2014, fell back to 2002 levels around 2014. These findings suggest that the primary drivers of rural income inequality are a growing gap between Kinh and minorities while at the same time a similar rising inequality develops among minority rural populations themselves. <!-- TODO Find levels of population rural/urban in other sources --> In the same vein as the urban-rural divide, Nguyen et al. <span class="citation" data-cites="Nguyen2007">(<a href="#ref-Nguyen2007" role="doc-biblioref">2007</a>)</span> thus argue for structural policy failures which essentially lowered the returns on ethnicity along sectorial dividing lines of education and primary income types.</p>
2022-08-19 16:58:20 +00:00
<!--
* estimated Gini coeff: rural ethnicities [@Baulch2012]
* per capita HH expenditure between Kinh and Hoa majority 0.27 (1993, 2004)
* per capita HH expenditure within minority groups 0.24 (1993), 0.29 (2004) sg increase
-->
<section id="natural-disasters-and-inequalities" class="level3">
<h3 class="anchored" data-anchor-id="natural-disasters-and-inequalities">Natural disasters and inequalities</h3>
2022-08-19 12:02:37 +00:00
<!-- environmental inequality -->
2022-09-08 15:30:55 +00:00
<p>While the effect of agriculture on inequality outcomes is an equalizing one, its future growth, and that of agricultural livelihoods, is threatened by vulnerability to risks such as natural disasters and environmental degradation, exacerbated through climate change <span class="citation" data-cites="Kozel2014">(<a href="#ref-Kozel2014" role="doc-biblioref">Kozel, 2014</a>)</span>. Kozel <span class="citation" data-cites="Kozel2014">(<a href="#ref-Kozel2014" role="doc-biblioref">2014</a>)</span> goes on to argue the continuous precarity of poor households against economy-wide shocks (such as the effect of climate change on rainfall and temperatures) but also highlights the danger of vulnerable households <em>falling</em> into poverty through generated inequalities.</p>
<p>Looking at the particularities of flood risk management in the Ninh Binh province, Mottet and Roche <span class="citation" data-cites="Mottet2009">(<a href="#ref-Mottet2009" role="doc-biblioref">2009</a>)</span> find that most areas within the region are vulnerable. They find the strengths of current management lying in prevention with existing dykes designed to channel high waters, effective monitoring of weather conditions (rainfall or typhoons) and consolidation or elevation of existing residences, while the weaknesses are mainly centered around insufficient information given to inhabitants over flood risks, few compensation systems for flood victims and construction policies continuing to allow building in flood-endangered zones.</p>
<p>Sen et al. <span class="citation" data-cites="Sen2021">(<a href="#ref-Sen2021" role="doc-biblioref">2021</a>)</span> estimate that the main barriers to better information are farmers lack of trust toward formal climate-related services, their lack of perceived risk from climate change itself and difficulties in balancing both climate adaptation and economic benefits of interventions. They argue that, while ethnicity itself is not a barrier to information access with all farmers receiving information through informal channels — friends neighbors and market actors instead of agricultural departments or mass media — cultural issues such as language do come into play and act as a barrier. Reactionary economic mitigation efforts by households, such as reduced healthcare spending, selling of land or livestock assets, taking children out of school due to needing assistance at home can in turn lead to longer-term adverse consequences (thus, <em>mal-adaptation</em>) <span class="citation" data-cites="Kozel2014">(<a href="#ref-Kozel2014" role="doc-biblioref">Kozel, 2014</a>)</span>.</p>
<!--
* estimated Gini coeff: Ninh Binh province [@Kozel2014]
* 0.283 (2013)
* top 90th percentile 3.57 times income 10th percentile
* 13.63 percent in richest quintile
-->
2022-08-19 12:02:37 +00:00
<!-- extreme events / climate change -->
2022-09-08 15:30:55 +00:00
<p>The results are further intensification of inequality along existing social lines during extreme events such as flooding: The effects of inequalities mainly affecting ethnic minorities are illustrated by Son and Kingsbury <span class="citation" data-cites="Son2020">(<a href="#ref-Son2020" role="doc-biblioref">2020</a>)</span>, with droughts impacting yield losses between 50% and 100%, cold snaps leading to loss of livestock and floods damaging residential structures but even more importantly disrupting livelihoods through landslides, crop destruction and overflowing fish ponds. Locally employed coping strategies, they argue, are always conditional on the strength and foresight of institutions and implemented preventative policies along local but also regional and central levels.</p>
<p>Similarly, Ylipaa et al. <span class="citation" data-cites="Ylipaa2019">(<a href="#ref-Ylipaa2019" role="doc-biblioref">2019</a>)</span> analyze impacts mainly across the gender dimension to find that, resulting inequalities may be exacerbated with differentiated rights and responsibilities leading to unequal opportunities and, especially, decreased female mobility in turn increasing their vulnerability to climate impacts with a reduced capacity to adapt. Hudson et al. <span class="citation" data-cites="Hudson2021">(<a href="#ref-Hudson2021" role="doc-biblioref">2021</a>)</span> along the same dimension find that, while the set of relevant variables is largely similar with age, social capital, internal and external support after the flood and the perceived severity of previous flood impacts having major impacts, women tend to show longer recovery times and psychological variables can influence recovery rates more than some adverse flood impacts.</p>
<p>While the quantitative evidence for impacts of such shock events are relatively sparse, Jafino et al. <span class="citation" data-cites="Jafino2021">(<a href="#ref-Jafino2021" role="doc-biblioref">2021</a>)</span> lament the overuse of aggregate perspectives, instead disaggregating the local and inter-sectoral effects to find out that flood protection efforts in the Mekong Delta often predominantly support large-scale farming while small-scale farmers can be harmed through them. They find that measures decrease the aggregate total output and equity indicators by disaggregating profitability indicators into inundation, sedimentation, soil fertility, nutrient dynamics and behavioral land-use in an assessment which sees within-sector policy responses often having an effect on adjacent sectors, increasing the inter-district Gini coefficient.</p>
<p>Adaptation during these catastrophic events reinforces the asset and endowment drivers of non-shock event times, with impacts levels often depending on access to non-farm income sources, access to further arable land, knowledge of adaptive farming practices and mitigation of possible health risks such as water contamination <span class="citation" data-cites="Son2020">(<a href="#ref-Son2020" role="doc-biblioref">Son &amp; Kingsbury, 2020</a>)</span>. Karpouzoglou et al. <span class="citation" data-cites="Karpouzoglou2019">(<a href="#ref-Karpouzoglou2019" role="doc-biblioref">2019</a>)</span> make the point that, ultimately, the pure coupling of flood resilience into infrastructural or institutional interventions needs to take care not to amplify existing inequalities through unforeseen consequences (ripple effects) which cant be escaped by vulnerable people due to their existing immobility.</p>
2022-08-19 12:02:37 +00:00
<!-- conclusion -->
2022-09-08 15:30:55 +00:00
<p>Inequality in Vietnam, then, is slowly rising across the whole population distribution, runs the danger of increasing due to schisms opening within individual sectors of vulnerable groups. Rural populations experience a trend towards increasing inequality within their sector, driven primarily by the social exclusion and geographic isolation of ethnic minorities, its most precarious population. Ethnic minorities inequality is slowly increasing due to receiving worse returns to their existing assets (especially human capital and land) and generally worse access to endowments in the first place (land and educational infrastructure). The restructuring of the economy, turning the labor force toward urban areas and within them wage work in manufacturing and service industries, leaves behind immobile rural populations whose ability to be employed for non-farm shrink further.</p>
<p>All these factors are at risk of experiencing large negative shocks as climate change exacerbates existing extreme environmental conditions, which in turn threaten to increase economic inequalities for both the rural population at large, ethnic minorities and women especially. Women in rural areas experience worse mobility and fewer economic opportunities and are thus less able to adapt to environmental degradation. While inequality as an aggregate is kept relatively low Vietnams growth rate, both ethnic minorities and the rural female population are thus at risk of being left behind economically.</p>
2022-08-20 14:45:26 +00:00
<!-- ## Script Issues
* Too wordy: on within-sector/between-sector rural dimensions; on non-quantitative environmental dimensions
* Too vague on 2 lowest quintile effects, especially as expressed through Gini impacts
* Wordings do not quite capture quintile poverty assessments for coming descriptive statistics
-->
<!-- development assistance -->
</section>
<section id="development-assistance-to-vietnam" class="level3 page-columns page-full">
<h3 class="anchored" data-anchor-id="development-assistance-to-vietnam">Development assistance to Vietnam</h3>
2022-09-08 15:30:55 +00:00
<div class="cell" data-execution_count="9">
<details>
<summary>Code</summary>
2022-09-08 15:30:55 +00:00
<div class="sourceCode cell-code" id="cb6"><pre class="sourceCode python code-with-copy"><code class="sourceCode python"><span id="cb6-1"><a href="#cb6-1" aria-hidden="true" tabindex="-1"></a><span class="co"># Load CRS data</span></span>
<span id="cb6-2"><a href="#cb6-2" aria-hidden="true" tabindex="-1"></a>dfsub1 <span class="op">=</span> pd.read_csv(<span class="st">&#39;data/raw/OECD_CRS/CRS1_Vietnam_11-13_05092022215007164.csv&#39;</span>, parse_dates<span class="op">=</span><span class="va">True</span>, low_memory<span class="op">=</span><span class="va">False</span>)</span>
<span id="cb6-3"><a href="#cb6-3" aria-hidden="true" tabindex="-1"></a>dfsub2 <span class="op">=</span> pd.read_csv(<span class="st">&#39;data/raw/OECD_CRS/CRS1_Vietnam_14-16_05092022215226180.csv&#39;</span>, parse_dates<span class="op">=</span><span class="va">True</span>, low_memory<span class="op">=</span><span class="va">False</span>)</span>
<span id="cb6-4"><a href="#cb6-4" aria-hidden="true" tabindex="-1"></a>dfsub3 <span class="op">=</span> pd.read_csv(<span class="st">&#39;data/raw/OECD_CRS/CRS1_Vietnam_17-20_05092022215427555.csv&#39;</span>, parse_dates<span class="op">=</span><span class="va">True</span>, low_memory<span class="op">=</span><span class="va">False</span>)</span>
<span id="cb6-5"><a href="#cb6-5" aria-hidden="true" tabindex="-1"></a>df <span class="op">=</span> pd.concat([dfsub1, dfsub2, dfsub3], ignore_index<span class="op">=</span><span class="va">True</span>)</span>
<span id="cb6-6"><a href="#cb6-6" aria-hidden="true" tabindex="-1"></a>df <span class="op">=</span> df.rename(columns<span class="op">=</span>{<span class="st">&#39;</span><span class="ch">\ufeff</span><span class="st">&quot;DONOR&quot;&#39;</span>: <span class="st">&#39;DONOR&#39;</span>})</span></code><button title="Copy to Clipboard" class="code-copy-button"><i class="bi"></i></button></pre></div>
</details>
</div>
2022-09-08 15:30:55 +00:00
<div class="cell page-columns page-full" data-execution_count="10">
<details>
<summary>Code</summary>
2022-09-08 15:30:55 +00:00
<div class="sourceCode cell-code" id="cb7"><pre class="sourceCode python code-with-copy"><code class="sourceCode python"><span id="cb7-1"><a href="#cb7-1" aria-hidden="true" tabindex="-1"></a>totals <span class="op">=</span> df.loc[</span>
<span id="cb7-2"><a href="#cb7-2" aria-hidden="true" tabindex="-1"></a> (df[<span class="st">&#39;SECTOR&#39;</span>] <span class="op">==</span> <span class="dv">1000</span>) <span class="op">&amp;</span> <span class="co"># Total</span></span>
<span id="cb7-3"><a href="#cb7-3" aria-hidden="true" tabindex="-1"></a> (df[<span class="st">&#39;CHANNEL&#39;</span>] <span class="op">==</span> <span class="dv">100</span>) <span class="op">&amp;</span></span>
<span id="cb7-4"><a href="#cb7-4" aria-hidden="true" tabindex="-1"></a> (df[<span class="st">&#39;AMOUNTTYPE&#39;</span>] <span class="op">==</span> <span class="st">&#39;D&#39;</span>) <span class="op">&amp;</span></span>
<span id="cb7-5"><a href="#cb7-5" aria-hidden="true" tabindex="-1"></a> (df[<span class="st">&#39;FLOWTYPE&#39;</span>] <span class="op">==</span> <span class="dv">112</span>) <span class="op">&amp;</span></span>
<span id="cb7-6"><a href="#cb7-6" aria-hidden="true" tabindex="-1"></a> (df[<span class="st">&#39;AIDTYPE&#39;</span>] <span class="op">==</span> <span class="st">&quot;100&quot;</span>) <span class="co"># contains mixed int and string representations</span></span>
<span id="cb7-7"><a href="#cb7-7" aria-hidden="true" tabindex="-1"></a> ]</span>
<span id="cb7-8"><a href="#cb7-8" aria-hidden="true" tabindex="-1"></a>financetotals <span class="op">=</span> totals.copy()</span>
<span id="cb7-9"><a href="#cb7-9" aria-hidden="true" tabindex="-1"></a>financetotals <span class="op">=</span> financetotals[financetotals[<span class="st">&#39;DONOR&#39;</span>] <span class="op">&lt;</span> <span class="dv">20000</span>] <span class="co"># drop all &#39;total&#39; aggregations</span></span>
<span id="cb7-10"><a href="#cb7-10" aria-hidden="true" tabindex="-1"></a></span>
<span id="cb7-11"><a href="#cb7-11" aria-hidden="true" tabindex="-1"></a><span class="co">## count amount of development aid financing instruments (grants/loans) by year and display</span></span>
<span id="cb7-12"><a href="#cb7-12" aria-hidden="true" tabindex="-1"></a><span class="co">## count USD amount of development aid financing instumrnets by year and display</span></span>
<span id="cb7-13"><a href="#cb7-13" aria-hidden="true" tabindex="-1"></a>financetotals_grouped <span class="op">=</span> financetotals.groupby([<span class="st">&#39;Flow&#39;</span>, <span class="st">&#39;Year&#39;</span>]).agg({<span class="st">&#39;Value&#39;</span>: [<span class="st">&#39;sum&#39;</span>]})</span>
<span id="cb7-14"><a href="#cb7-14" aria-hidden="true" tabindex="-1"></a>financetotals_grouped <span class="op">=</span> financetotals_grouped.reset_index([<span class="st">&#39;Flow&#39;</span>, <span class="st">&#39;Year&#39;</span>])</span>
<span id="cb7-15"><a href="#cb7-15" aria-hidden="true" tabindex="-1"></a>financetotals_grouped.columns <span class="op">=</span> financetotals_grouped.columns.to_flat_index()</span>
<span id="cb7-16"><a href="#cb7-16" aria-hidden="true" tabindex="-1"></a>financetotals_grouped.columns <span class="op">=</span> [<span class="st">&#39;Financetype&#39;</span>, <span class="st">&#39;Year&#39;</span>, <span class="st">&#39;Value&#39;</span>]</span>
<span id="cb7-17"><a href="#cb7-17" aria-hidden="true" tabindex="-1"></a></span>
<span id="cb7-18"><a href="#cb7-18" aria-hidden="true" tabindex="-1"></a>fig <span class="op">=</span> px.line(financetotals_grouped, x<span class="op">=</span><span class="st">&#39;Year&#39;</span>, y<span class="op">=</span><span class="st">&#39;Value&#39;</span>, color<span class="op">=</span><span class="st">&#39;Financetype&#39;</span>, labels<span class="op">=</span>{<span class="st">&quot;Value&quot;</span>: <span class="st">&quot;Development aid amount, in millions of USD&quot;</span>}, markers<span class="op">=</span><span class="va">True</span>, template<span class="op">=</span><span class="st">&quot;seaborn&quot;</span>)</span>
<span id="cb7-19"><a href="#cb7-19" aria-hidden="true" tabindex="-1"></a><span class="co"># 0-figure</span></span>
<span id="cb7-20"><a href="#cb7-20" aria-hidden="true" tabindex="-1"></a>fig.update_yaxes(rangemode<span class="op">=</span><span class="st">&quot;tozero&quot;</span>)</span>
<span id="cb7-21"><a href="#cb7-21" aria-hidden="true" tabindex="-1"></a>fig.show()</span></code><button title="Copy to Clipboard" class="code-copy-button"><i class="bi"></i></button></pre></div>
</details>
<div class="cell-output cell-output-display column-page">
<div id="fig-vnm-aid-financetype" class="quarto-figure quarto-figure-center anchored">
<figure class="figure">
2022-09-08 15:30:55 +00:00
<p><img src="data:image/png;base64,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
<p></p><figcaption class="figure-caption">Figure 2: Total ODA for Vietnam per year, by financing type</figcaption><p></p>
</figure>
</div>
</div>
</div>
2022-09-08 15:30:55 +00:00
<div data-custom-style="caption">
<p>Note: Values shown are for all Official Development Assistance flows valid under the OECD CRS data, split into the type of financing flow, calculated as constant currency (2020 corrected) USD millions. Source: Authors elaboration based on OECD ODA CRS (2022).</p>
2022-09-08 15:30:55 +00:00
</div>
<p>Official Development Assistance (ODA) to Vietnam reached its highest point in 2014 with almost 5bn USD but generally decreased in the intervening years, as can be seen in <a href="#fig-vnm-aid-financetype">Figure 2</a>. Decreasing continuously after 2014, development assistance reached its lowest point of the last ten years in 2019 when it fell to just under 2.5bn USD, before increasing slightly to just above 2.5bn USD in 2020. Development aid to Vietnam is primarily driven by ODA loans instead of ODA grants.</p>
<p>While grants were just under 1bn USD in 2011 and decreased slightly over the following years to 600m USD in 2019, decreasing loans were also the primary driver of the overall development aid contributions, with the overall monetary curve closely following that of loan contributions. Thus, while loans constituted almost triple the USD amount of grants to Vietnam in 2011, this number even climbed to almost 5 times the amount in 2014, before falling to just over 2.5 times the amount of USD in loans compared to grants in 2020. A large share of development aid contributions to Vietnam are also made up from other official flows<a href="#fn1" class="footnote-ref" id="fnref1" role="doc-noteref"><sup>1</sup></a>, a share which started equal to the absolute grant amount of USD contributed, rose steeply in 2013 to double the amount and fell equally steeply back to its original level in 2019.</p>
<div class="cell page-columns page-full" data-execution_count="11">
<details>
<summary>Code</summary>
2022-09-08 15:30:55 +00:00
<div class="sourceCode cell-code" id="cb8"><pre class="sourceCode python code-with-copy"><code class="sourceCode python"><span id="cb8-1"><a href="#cb8-1" aria-hidden="true" tabindex="-1"></a>totals <span class="op">=</span> df.loc[</span>
<span id="cb8-2"><a href="#cb8-2" aria-hidden="true" tabindex="-1"></a> (df[<span class="st">&#39;SECTOR&#39;</span>] <span class="op">==</span> <span class="dv">1000</span>) <span class="op">&amp;</span> <span class="co"># Total</span></span>
<span id="cb8-3"><a href="#cb8-3" aria-hidden="true" tabindex="-1"></a> (df[<span class="st">&#39;FLOW&#39;</span>] <span class="op">==</span> <span class="dv">100</span>) <span class="op">&amp;</span></span>
<span id="cb8-4"><a href="#cb8-4" aria-hidden="true" tabindex="-1"></a> (df[<span class="st">&#39;CHANNEL&#39;</span>] <span class="op">==</span> <span class="dv">100</span>) <span class="op">&amp;</span></span>
<span id="cb8-5"><a href="#cb8-5" aria-hidden="true" tabindex="-1"></a> (df[<span class="st">&#39;AMOUNTTYPE&#39;</span>] <span class="op">==</span> <span class="st">&#39;D&#39;</span>) <span class="op">&amp;</span></span>
<span id="cb8-6"><a href="#cb8-6" aria-hidden="true" tabindex="-1"></a> (df[<span class="st">&#39;FLOWTYPE&#39;</span>] <span class="op">==</span> <span class="dv">112</span>) <span class="op">&amp;</span></span>
<span id="cb8-7"><a href="#cb8-7" aria-hidden="true" tabindex="-1"></a> (df[<span class="st">&#39;AIDTYPE&#39;</span>] <span class="op">==</span> <span class="st">&quot;100&quot;</span>) <span class="co"># contains mixed int and string representations</span></span>
<span id="cb8-8"><a href="#cb8-8" aria-hidden="true" tabindex="-1"></a> ]</span>
<span id="cb8-9"><a href="#cb8-9" aria-hidden="true" tabindex="-1"></a>donortotals <span class="op">=</span> totals.copy()</span>
<span id="cb8-10"><a href="#cb8-10" aria-hidden="true" tabindex="-1"></a>donortotals[<span class="st">&quot;Donortype&quot;</span>] <span class="op">=</span> donortotals[<span class="st">&quot;DONOR&quot;</span>].<span class="bu">map</span>(donortypes)</span>
<span id="cb8-11"><a href="#cb8-11" aria-hidden="true" tabindex="-1"></a>donortotals <span class="op">=</span> donortotals[(donortotals[<span class="st">&quot;Donortype&quot;</span>] <span class="op">!=</span> <span class="st">&quot;nondac&quot;</span>)]</span>
<span id="cb8-12"><a href="#cb8-12" aria-hidden="true" tabindex="-1"></a></span>
<span id="cb8-13"><a href="#cb8-13" aria-hidden="true" tabindex="-1"></a>donortotals_grouped <span class="op">=</span> donortotals.groupby([<span class="st">&#39;Donortype&#39;</span>, <span class="st">&#39;Year&#39;</span>]).agg({<span class="st">&#39;Value&#39;</span>: [<span class="st">&#39;sum&#39;</span>]})</span>
<span id="cb8-14"><a href="#cb8-14" aria-hidden="true" tabindex="-1"></a>donortotals_grouped <span class="op">=</span> donortotals_grouped.reset_index([<span class="st">&#39;Donortype&#39;</span>, <span class="st">&#39;Year&#39;</span>])</span>
<span id="cb8-15"><a href="#cb8-15" aria-hidden="true" tabindex="-1"></a>donortotals_grouped.columns <span class="op">=</span> donortotals_grouped.columns.to_flat_index()</span>
<span id="cb8-16"><a href="#cb8-16" aria-hidden="true" tabindex="-1"></a>donortotals_grouped.columns <span class="op">=</span> [<span class="st">&#39;Donortype&#39;</span>, <span class="st">&#39;Year&#39;</span>, <span class="st">&#39;Value&#39;</span>]</span>
<span id="cb8-17"><a href="#cb8-17" aria-hidden="true" tabindex="-1"></a>fig <span class="op">=</span> px.line(donortotals_grouped, x<span class="op">=</span><span class="st">&#39;Year&#39;</span>, y<span class="op">=</span><span class="st">&#39;Value&#39;</span>, color<span class="op">=</span><span class="st">&#39;Donortype&#39;</span>, labels<span class="op">=</span>{<span class="st">&quot;Value&quot;</span>: <span class="st">&quot;Development aid, in millions&quot;</span>}, markers<span class="op">=</span><span class="va">True</span>, template<span class="op">=</span><span class="st">&quot;seaborn&quot;</span>)</span>
<span id="cb8-18"><a href="#cb8-18" aria-hidden="true" tabindex="-1"></a><span class="co"># 0-figure</span></span>
<span id="cb8-19"><a href="#cb8-19" aria-hidden="true" tabindex="-1"></a>fig.update_yaxes(rangemode<span class="op">=</span><span class="st">&quot;tozero&quot;</span>)</span>
<span id="cb8-20"><a href="#cb8-20" aria-hidden="true" tabindex="-1"></a>fig.show()</span></code><button title="Copy to Clipboard" class="code-copy-button"><i class="bi"></i></button></pre></div>
</details>
<div class="cell-output cell-output-display column-page">
<div id="fig-vnm-aid-donortype" class="quarto-figure quarto-figure-center anchored">
<figure class="figure">
2022-09-08 15:30:55 +00:00
<p><img src="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAArwAAAH0CAYAAADfWf7fAAAgAElEQVR4XuydB3hUVfr/v5mZzKSRQgIJoQsEpFdZ6oIgFuxldXV//l0brnVdC7ruz5+76q4rdl3bKrq6LEWKiCCC4CIgvfcERGoooaWXKf/nnGFCQtrMnHvv3Jl87/P4iJl73nPO573BT07OfU+Ux+PxgBcJkAAJkAAJkAAJkAAJRCiBKApvhGaW0yIBEiABEiABEiABEpAEKLx8EEiABEiABEiABEiABCKaAIU3otPLyZEACZAACZAACZAACVB4+QyQAAmQAAmQAAmQAAlENAEKb0Snl5MjARIgARIgARIgARKg8PIZIAESIAESIAESIAESiGgCFN6ITi8nRwIkQAIkQAIkQAIkQOHlM0ACJEACJEACJEACJBDRBCi8EZ1eTo4ESIAESIAESIAESIDCy2eABEiABEiABEiABEggoglQeCM6vZwcCZAACZAACZAACZAAhZfPAAmQAAmQAAmQAAmQQEQToPBGdHo5ORIgARIgARIgARIgAQovnwESIAESIAESIAESIIGIJkDhjej0cnIkQAIkQAIkQAIkQAIUXj4DJEACJEACJEACJEACEU2AwhvR6eXkSIAESIAESIAESIAEKLx8BkiABEiABEiABEiABCKaAIU3otPLyZEACZAACZAACZAACVB4+QyQAAmQAAmQAAmQAAlENAEKb0Snl5MjARIgARIgARIgARKg8PIZIAESIAESIAESIAESiGgCFN6ITi8nRwIkQAIkQAIkQAIkQOHlM0ACJEACJEACJEACJBDRBCi8EZ1eTo4ESIAESIAESIAESIDCy2eABEiABEiABEiABEggoglQeCM6vZwcCZAACZAACZAACZAAhZfPAAmQAAmQAAmQAAmQQEQToPBGdHo5ORIgARIgARIgARIgAQovnwESIAESIAESIAESIIGIJkDhjej0cnIkQAIkQAIkQAIkQAIUXj4DJEACJEACJEACJEACEU2AwhvR6eXkSIAESIAESIAESIAEKLx8BkiABEiABEiABEiABCKaAIU3otPLyZEACZAACZAACZAACVB4+QyQAAmQAAmQAAmQAAlENAEKb0Snl5MjARIgARIgARIgARKg8PIZIAESIAESIAESIAESiGgCFN6ITi8nRwIkQAIkQAIkQAIkQOHlM0ACJEACJEACJEACJBDRBCi8EZ1eTo4ESIAESIAESIAESIDCy2eABEiABEiABEiABEggoglQeCM6vZwcCZAACZAACZAACZAAhZfPAAmQAAmQAAmQAAmQQEQToPBGdHo5ORIgARIgARIgARIgAQovnwESIAESIAESIAESIIGIJkDhjej0cnIkQAIkQAIkQAIkQAIUXj4DJEACJEACJEACJEACEU2AwhvR6eXkSIAESIAESIAESIAEKLx8BkiABEiABEiABEiABCKaAIU3otPLyZEACZAACZAACZAACVB4+QyQAAmQAAmQAAmQAAlENAEKb0Snl5MjARIgARIgARIgARKg8PIZIAESIAESIAESIAESiGgCFN6ITi8nRwIkQAIkQAIkQAIkQOHlM0ACJEACJEACJEACJBDRBCi8EZ1eTo4ESIAESIAESIAESIDCy2eABEiABEiABEiABEggoglQeCM6vZwcCZAACZAACZAACZAAhVfxGTh+vEAxApvHxzvg8XhQXFxOGCYkkJISj4KCEjidbhOOrnEPKSoqCqmp8cjLK2zcIEw6e4fDBocjGvn5JSYdYeMeVpMmMaiocKG0tMJwEM2aNTG8z8beIYVX8Qmg8CoCBEDhVWeoZwQKr5501WJTeNX46d2awqs3YbX4FF41fuHWmsKrmDEKryJACq86QJ0jUHh1BqwQnsKrAM+AphReAyArdEHhVYAXhk0pvIpJo/AqAqTwqgPUOQKFV2fACuEpvArwDGhK4TUAskIXFF4FeGHYlMKrmDQKryJACq86QJ0jUHh1BqwQnsKrAM+AphReAyArdEHhVYAXhk0pvIpJo/AqAqTwqgPUOQKFV2fACuEpvArwDGhK4TUAskIXFF4FeGHYlMKrmDQKryJACq86QJ0jUHh1BqwQnsKrAM+AphReAyArdEHhVYAXhk0pvIpJo/AqAqTwqgPUOQKFV2fACuEpvArwDGhK4TUAskIXFF4FeGHYlMKrmDQKryJACq86QJ0jUHh1BqwQnsKrAM+AphReAyArdBGOwjtmzBjs3btXztpqtSI1NRUXXXQR7r33Xlx44YUKNCK/KYVXMccUXkWAFF51gDpHoPDqDFghPIVXAZ4BTSm8BkBW6CJchfe6667D7bffjrKyMvz888/4z3/+g2+++QbvvPMORo4cqUBErenTTz+NSy65BBdffLFaIJ1aU3gVwVJ4FQFSeNUB6hyBwqszYIXwFF4FeAY0pfAaAFmhi3AV3l/96le4++67q838z3/+s5TeJUuWwOFwKFAJvum1116Lhx9+mMIbPEJzt6TwqueHJ62pM9QzAoVXT7pqsSm8avz0bk3h1ZuwWvxIEt7jx49j8ODB+OSTTzB06FDs3LkTf/3rX5GTkyO3PvTu3RvPPPMMWrRogeLiYvTq1Qtvv/22XBU+cOAAMjMz8be//U3eJ6762hcWFqJPnz54+eWXZRshuUuXLsXixYuRnJyMSy+9FLt375axnnrqqcokvf7661i1ahXee+89uQ1DtP3www9x9OhRdOzYES+88ELltow9e/bgxRdflOOw2WwYMmQIxApyYmJi0EnnCm/Q6LwNKbyKALnCqw5Q5wgUXp0BK4Sn8CrAM6AphdcAyApdRJLwCgx9+/bFE088AbHSKrYW3HzzzXjggQfgdDrx+OOPIy8vT25/EFshunfvLiXylVdeQVJSEh599FHk5+fjs88+Q0lJSb3tS0tL0aNHD4wYMQKPPPIIWrVqJUVXSPCrr74qV3jnzp2L5557DsuWLZMrzh6PR263EP2If/fr10/2/+abbyImJgZ//OMfsWPHDtlOjO+yyy7DFVdcgcceewzl5eWyXXx8vIwf7EXhDZbc2XYUXkWAFF51gDpHoPDqDFghPIVXAZ4BTSm8BkBW6CIShVes4jZv3hzjxo3Dxo0bYbfbJaHNmzfjhhtuwJo1axAbGyuF95///KeUVnHNnDlTrvaKVVqxWutP+7feeguXX355ZQaqCq+Q7F/+8peVAr569Wop38uXL4cQZiG8VfvfunUrxN7kH3/8Ebt27cI999yDTZs2VY5fzEUIvLgvOjo6qKxHnPBOnTpVQhQ/EYifOsSSePv27SUcsbfl+eeflz+9iOVz8ZNCWlqa0mcU3qCeu2qNuKVBnaGeESi8etJVi03hVeOnd2sKr96E1eJHkvCKbQliZXXatGmyioNYuRXy6LsOHz4sBXTevHlo06aNFF4huWKlVlyzZ8/Ga6+9Jj1JfN2f9tOnT5dbI3xXVeEVXxNbJn744Qd88cUXcgVXbEcQWxzESrIQXtFn165dZXPf+MQKr5Da8ePHIyEhoUaCv/76a7Rs2TKoxEeU8G7fvl3+VCCSlZ6eLmGLnyo+//xzCXj06NH4+OOPZYLFTzLZ2dkQP6EE+5kgTuEN6rmj8KpjMywChdcw1AF3ROENGJmhDSi8huIOuLNIEt7//d//launixYtkv8WZcqqrvCKP990001Yt26d3GJQn/CKbQiBthfwzxdesa94+PDhmDFjBn7zm99g1qxZaNu2baXwCh8Tn4tr27ZtcivGypUr5Qqv6F+sSlssloDzWleDiBJeIa4nT55Eu3bt5HxFgsX+EvETi/ipRojwRx99JD8Tm64HDRokk//dd98F9Zn4VQGFV/1Z5AqvOkM9I1B49aSrFpvCq8ZP79YUXr0Jq8UPV+H1lSUT+2IPHjwo991+9dVXmDhxonwZTGwZ8O3hvf/+++We2D/84Q/y3+Ie3x7eulZ4g2kvMiH6FnuFxfh82w5+//vfy725GRkZ+Ne//iUT5lvhFSvOvj28QtiF9IpVX98e3uuvvx6/+93v5P7fd999F+JFNrFIGewV
<p></p><figcaption class="figure-caption">Figure 3: Total ODA for Vietnam per year, separated by donor type</figcaption><p></p>
</figure>
</div>
</div>
</div>
2022-09-08 15:30:55 +00:00
<div data-custom-style="caption">
<p>Note: Values shown are for all Official Development Assistance flows valid under the OECD ODA data, split into bilateral development donor countries (dac) and multilateral donors (mlt), as constant currency (2020 corrected) USD millions. Source: Authors elaboration based on OECD ODA CRS (2022).</p>
2022-09-08 15:30:55 +00:00
</div>
2022-09-29 12:09:20 +00:00
<p>Bilateral donor contributions make up the largest part of development aid contributions to Vietnam, as can be seen in <a href="#fig-vnm-aid-donortype">Figure 3</a>. Both bilateral and multilateral contributions increase from 2011 to 2014 and subsequently begin decreasing. While bilateral contributions do not increase in absolute amounts afterwards, until 2020, multilateral contributions do increase again from 2019 to 2020. Nevertheless, bilateral contributions are consistently higher than multilateral, having around a 1.5 times higher share of absolute USD contribution, though growing to just over 2 times the share in 2017, before quickly shrinking down to just 1.3 times the share of multilateral contributions in 2018. This gap may close further in the future, with multilateral contributions being on an increase and bilateral contributions still decreasing.</p>
2022-09-08 15:30:55 +00:00
<div class="cell page-columns page-full" data-execution_count="12">
<details>
<summary>Code</summary>
2022-09-08 15:30:55 +00:00
<div class="sourceCode cell-code" id="cb9"><pre class="sourceCode python code-with-copy"><code class="sourceCode python"><span id="cb9-1"><a href="#cb9-1" aria-hidden="true" tabindex="-1"></a><span class="co"># 14020-22 - large scale potable water</span></span>
<span id="cb9-2"><a href="#cb9-2" aria-hidden="true" tabindex="-1"></a><span class="co"># 14030-32 - individual-level water and sanitation supply</span></span>
<span id="cb9-3"><a href="#cb9-3" aria-hidden="true" tabindex="-1"></a><span class="co"># 14081 - education and training in water supply</span></span>
<span id="cb9-4"><a href="#cb9-4" aria-hidden="true" tabindex="-1"></a>totals <span class="op">=</span> df.loc[</span>
<span id="cb9-5"><a href="#cb9-5" aria-hidden="true" tabindex="-1"></a> (</span>
<span id="cb9-6"><a href="#cb9-6" aria-hidden="true" tabindex="-1"></a> (df[<span class="st">&#39;SECTOR&#39;</span>] <span class="op">==</span> <span class="dv">14020</span>) <span class="op">|</span></span>
<span id="cb9-7"><a href="#cb9-7" aria-hidden="true" tabindex="-1"></a> (df[<span class="st">&#39;SECTOR&#39;</span>] <span class="op">==</span> <span class="dv">14021</span>) <span class="op">|</span></span>
<span id="cb9-8"><a href="#cb9-8" aria-hidden="true" tabindex="-1"></a> (df[<span class="st">&#39;SECTOR&#39;</span>] <span class="op">==</span> <span class="dv">14022</span>) <span class="op">|</span></span>
<span id="cb9-9"><a href="#cb9-9" aria-hidden="true" tabindex="-1"></a> (df[<span class="st">&#39;SECTOR&#39;</span>] <span class="op">==</span> <span class="dv">14030</span>) <span class="op">|</span></span>
<span id="cb9-10"><a href="#cb9-10" aria-hidden="true" tabindex="-1"></a> (df[<span class="st">&#39;SECTOR&#39;</span>] <span class="op">==</span> <span class="dv">14031</span>) <span class="op">|</span></span>
<span id="cb9-11"><a href="#cb9-11" aria-hidden="true" tabindex="-1"></a> (df[<span class="st">&#39;SECTOR&#39;</span>] <span class="op">==</span> <span class="dv">14032</span>) <span class="op">|</span></span>
<span id="cb9-12"><a href="#cb9-12" aria-hidden="true" tabindex="-1"></a> (df[<span class="st">&#39;SECTOR&#39;</span>] <span class="op">==</span> <span class="dv">43060</span>)</span>
<span id="cb9-13"><a href="#cb9-13" aria-hidden="true" tabindex="-1"></a> ) <span class="op">&amp;</span></span>
<span id="cb9-14"><a href="#cb9-14" aria-hidden="true" tabindex="-1"></a> (df[<span class="st">&#39;CHANNEL&#39;</span>] <span class="op">==</span> <span class="dv">100</span>) <span class="op">&amp;</span></span>
<span id="cb9-15"><a href="#cb9-15" aria-hidden="true" tabindex="-1"></a> (df[<span class="st">&#39;AMOUNTTYPE&#39;</span>] <span class="op">==</span> <span class="st">&#39;D&#39;</span>) <span class="op">&amp;</span></span>
<span id="cb9-16"><a href="#cb9-16" aria-hidden="true" tabindex="-1"></a> ((df[<span class="st">&#39;FLOW&#39;</span>] <span class="op">==</span> <span class="dv">11</span>) <span class="op">|</span> (df[<span class="st">&#39;FLOW&#39;</span>] <span class="op">==</span> <span class="dv">13</span>)) <span class="op">&amp;</span> <span class="co"># Total</span></span>
<span id="cb9-17"><a href="#cb9-17" aria-hidden="true" tabindex="-1"></a> (df[<span class="st">&#39;FLOWTYPE&#39;</span>] <span class="op">==</span> <span class="dv">112</span>) <span class="op">&amp;</span></span>
<span id="cb9-18"><a href="#cb9-18" aria-hidden="true" tabindex="-1"></a> (df[<span class="st">&#39;AIDTYPE&#39;</span>] <span class="op">==</span> <span class="st">&quot;100&quot;</span>) <span class="co"># contains mixed int and string representations</span></span>
<span id="cb9-19"><a href="#cb9-19" aria-hidden="true" tabindex="-1"></a> ]</span>
<span id="cb9-20"><a href="#cb9-20" aria-hidden="true" tabindex="-1"></a>floodaid <span class="op">=</span> totals[totals[<span class="st">&#39;DONOR&#39;</span>] <span class="op">&lt;</span> <span class="dv">20000</span>] <span class="co"># drop all &#39;total&#39; aggregations</span></span>
<span id="cb9-21"><a href="#cb9-21" aria-hidden="true" tabindex="-1"></a></span>
<span id="cb9-22"><a href="#cb9-22" aria-hidden="true" tabindex="-1"></a><span class="co"># Aggregate different measures of large scale water supply and sanitation</span></span>
<span id="cb9-23"><a href="#cb9-23" aria-hidden="true" tabindex="-1"></a>floodaid.loc[floodaid[(floodaid[<span class="st">&#39;SECTOR&#39;</span>] <span class="op">==</span> <span class="dv">14021</span>) <span class="op">|</span> (floodaid[<span class="st">&#39;SECTOR&#39;</span>] <span class="op">==</span> <span class="dv">14022</span>)].index, <span class="st">&#39;SECTOR&#39;</span>] <span class="op">=</span> <span class="dv">14020</span></span>
<span id="cb9-24"><a href="#cb9-24" aria-hidden="true" tabindex="-1"></a>floodaid.loc[floodaid[(floodaid[<span class="st">&#39;SECTOR&#39;</span>] <span class="op">==</span> <span class="dv">14020</span>)].index, <span class="st">&#39;Sector&#39;</span>] <span class="op">=</span> <span class="st">&quot;Large water supply and sanitation&quot;</span></span>
<span id="cb9-25"><a href="#cb9-25" aria-hidden="true" tabindex="-1"></a><span class="co"># Aggregate different measures of individual water supply and sanitation</span></span>
<span id="cb9-26"><a href="#cb9-26" aria-hidden="true" tabindex="-1"></a>floodaid.loc[floodaid[(floodaid[<span class="st">&#39;SECTOR&#39;</span>] <span class="op">==</span> <span class="dv">14031</span>) <span class="op">|</span> (floodaid[<span class="st">&#39;SECTOR&#39;</span>] <span class="op">==</span> <span class="dv">14032</span>)].index, <span class="st">&#39;SECTOR&#39;</span>] <span class="op">=</span> <span class="dv">14030</span></span>
<span id="cb9-27"><a href="#cb9-27" aria-hidden="true" tabindex="-1"></a>floodaid.loc[floodaid[(floodaid[<span class="st">&#39;SECTOR&#39;</span>] <span class="op">==</span> <span class="dv">14030</span>)].index, <span class="st">&#39;Sector&#39;</span>] <span class="op">=</span> <span class="st">&quot;Basic water supply and sanitation&quot;</span></span>
<span id="cb9-28"><a href="#cb9-28" aria-hidden="true" tabindex="-1"></a></span>
<span id="cb9-29"><a href="#cb9-29" aria-hidden="true" tabindex="-1"></a><span class="co"># Group by sector per year and sum all values</span></span>
<span id="cb9-30"><a href="#cb9-30" aria-hidden="true" tabindex="-1"></a>floodaid_grouped <span class="op">=</span> floodaid.groupby([<span class="st">&#39;Year&#39;</span>, <span class="st">&#39;Sector&#39;</span>]).agg({<span class="st">&#39;Value&#39;</span>: [<span class="st">&#39;sum&#39;</span>]})</span>
<span id="cb9-31"><a href="#cb9-31" aria-hidden="true" tabindex="-1"></a>floodaid_grouped <span class="op">=</span> floodaid_grouped.reset_index([<span class="st">&#39;Year&#39;</span>, <span class="st">&#39;Sector&#39;</span>])</span>
<span id="cb9-32"><a href="#cb9-32" aria-hidden="true" tabindex="-1"></a>floodaid_grouped.columns <span class="op">=</span> floodaid_grouped.columns.to_flat_index()</span>
<span id="cb9-33"><a href="#cb9-33" aria-hidden="true" tabindex="-1"></a>floodaid_grouped.columns <span class="op">=</span> [<span class="st">&#39;Year&#39;</span>, <span class="st">&#39;Sector&#39;</span>, <span class="st">&#39;Value&#39;</span>]</span>
<span id="cb9-34"><a href="#cb9-34" aria-hidden="true" tabindex="-1"></a></span>
<span id="cb9-35"><a href="#cb9-35" aria-hidden="true" tabindex="-1"></a>crosstab <span class="op">=</span> pd.crosstab(floodaid_grouped[<span class="st">&#39;Year&#39;</span>], floodaid_grouped[<span class="st">&#39;Sector&#39;</span>], margins<span class="op">=</span><span class="va">True</span>, values<span class="op">=</span>floodaid_grouped[<span class="st">&#39;Value&#39;</span>], aggfunc<span class="op">=</span><span class="st">&#39;sum&#39;</span>)</span>
<span id="cb9-36"><a href="#cb9-36" aria-hidden="true" tabindex="-1"></a></span>
<span id="cb9-37"><a href="#cb9-37" aria-hidden="true" tabindex="-1"></a><span class="co"># Rename and reorder columns</span></span>
<span id="cb9-38"><a href="#cb9-38" aria-hidden="true" tabindex="-1"></a>crosstab.columns <span class="op">=</span> [<span class="st">&#39;Basic water supply&#39;</span>, <span class="st">&#39;Disaster risk reduction&#39;</span>, <span class="st">&#39;Large water supply&#39;</span>, <span class="st">&#39;All&#39;</span>]</span>
<span id="cb9-39"><a href="#cb9-39" aria-hidden="true" tabindex="-1"></a>crosstab <span class="op">=</span> crosstab[[<span class="st">&#39;Basic water supply&#39;</span>, <span class="st">&#39;Large water supply&#39;</span>, <span class="st">&#39;Disaster risk reduction&#39;</span>, <span class="st">&#39;All&#39;</span>]]</span>
<span id="cb9-40"><a href="#cb9-40" aria-hidden="true" tabindex="-1"></a></span>
<span id="cb9-41"><a href="#cb9-41" aria-hidden="true" tabindex="-1"></a>Markdown(tabulate(crosstab.fillna(<span class="st">&quot;0.00&quot;</span>), headers<span class="op">=</span><span class="st">&quot;keys&quot;</span>, tablefmt<span class="op">=</span><span class="st">&quot;github&quot;</span>, floatfmt<span class="op">=</span><span class="st">&quot;.2f&quot;</span>))</span></code><button title="Copy to Clipboard" class="code-copy-button"><i class="bi"></i></button></pre></div>
</details>
2022-09-08 15:30:55 +00:00
<div class="cell-output cell-output-display column-page" data-execution_count="12">
<div id="tbl-vnm-aid-water" class="anchored">
2022-09-08 15:30:55 +00:00
<table class="table table-sm table-striped">
<caption>Table 1: ODA projects of water supply and risk reduction in Vietnam per year, separated by project type</caption>
<colgroup>
<col style="width: 9%">
<col style="width: 25%">
<col style="width: 25%">
<col style="width: 30%">
<col style="width: 10%">
</colgroup>
<thead>
<tr class="header">
<th>Year</th>
<th>Basic water supply</th>
<th>Large water supply</th>
<th>Disaster risk reduction</th>
<th>All</th>
</tr>
</thead>
<tbody>
<tr class="odd">
<td>2011</td>
<td>96.24</td>
<td>105.94</td>
<td>4.01</td>
<td>206.19</td>
</tr>
<tr class="even">
<td>2012</td>
<td>85.56</td>
<td>150.63</td>
<td>6.73</td>
<td>242.92</td>
</tr>
<tr class="odd">
<td>2013</td>
<td>123.46</td>
<td>178.72</td>
<td>8.82</td>
<td>311.00</td>
</tr>
<tr class="even">
<td>2014</td>
<td>133.89</td>
<td>193.56</td>
<td>10.69</td>
<td>338.15</td>
</tr>
<tr class="odd">
<td>2015</td>
<td>142.92</td>
<td>174.46</td>
<td>19.98</td>
<td>337.36</td>
</tr>
<tr class="even">
<td>2016</td>
<td>154.11</td>
<td>230.91</td>
<td>37.08</td>
<td>422.10</td>
</tr>
<tr class="odd">
<td>2017</td>
<td>86.39</td>
<td>239.99</td>
<td>42.73</td>
<td>369.11</td>
</tr>
<tr class="even">
<td>2018</td>
<td>70.70</td>
<td>252.37</td>
<td>35.51</td>
<td>358.57</td>
</tr>
<tr class="odd">
<td>2019</td>
<td>39.24</td>
<td>203.36</td>
<td>42.24</td>
<td>284.84</td>
</tr>
<tr class="even">
<td>2020</td>
<td>50.98</td>
<td>224.11</td>
<td>63.31</td>
<td>338.40</td>
</tr>
<tr class="odd">
<td>All</td>
<td>983.49</td>
<td>1954.03</td>
<td>271.11</td>
<td>3208.64</td>
</tr>
</tbody>
</table>
</div>
</div>
</div>
2022-09-08 15:30:55 +00:00
<div data-custom-style="caption">
<p>Note: Values shown are for all Official Development Assistance flows valid under the OECD CRS data, calculated as constant currency (2020 corrected) USD millions. The categories under analysis are large- and small-scale water supply and sanitation infrastructure projects as well as disaster risk reduction which includes improved flooding prevention infrastructure. Source: Authors elaboration based on OECD ODA CRS (2022).</p>
2022-09-08 15:30:55 +00:00
</div>
<p>The breakdown of project-based development aid for water supply infrastructure and disaster risk reduction in Vietnam can be seen in <a href="#tbl-vnm-aid-water">Table 1</a>. It shows the funds broken down into their use for three categories: First, contributions to provide access to basic water supply and sanitation, which subsumes building and maintaining handpumps, gravity wells, rainwater collection systems, storage tanks, and small, often shared, distribution systems. Second, contributions to large-scale water supply and sanitation, including potable water treatment plants, intake works, large pumping stations and storage, as well as the transmission and distribution through large-scale systems. And last, contributions towards disaster risk reduction which is a larger umbrella concept aimed at building local and national capacities, but includes infrastructure measures (e.g. flood protection systems), preparedness measures (such as early warning systems), and normative prevention measures (such as closer adherence to building and structural codes), as well as risk transfer systems (insurance schemes or risk funds). This constitutes the closest category to flood risk management itself, which is part of the overarching disaster risk management dimension.</p>
2022-09-29 12:09:20 +00:00
<p>While overall aid contributions to Vietnams water supply and risk management sectors have slightly increased over time from 206m USD in 2011 to their peak of 422m USD in 2016, they have largely stagnated around the level of 300m to 350m USD per year since then. From the level of 96m USD in 2011, access to basic water supply saw significant increases to its contributions from 2013 to 2016, with 154m USD contributed at its peak in 2016 and shrinking drastically the following years to 39m USD in 2019, its lowest contribution year. Large water supply project contributions see a similar if less drastic curve, with contributions increasing from 105m USD in 2011 to 252m USD at their peak in 2018, before decreasing slightly over the next two years.</p>
2022-09-08 15:30:55 +00:00
<p>Thus, the contribution curves to basic and large-scale water supply projects somewhat follows the overall development aid contribution curve to Vietnam, with peaks between 2016 and 2018 before more or less drastic drops in aid contributions. Disaster risk reduction contributions, however, show the least similarity to the general trend, with contributions being only 4m USD in 2011 before increasing year-over-year (with the exception of 2018) to reach their peak with 63m USD in 2020. The most significant increases happened between the years 2014 and 2016, as well as again in 2020. While the other contribution sectors follow a shrinking contribution in the years following 2014, then, disaster risk reduction instead keeps on reaching an increase in its absolute contribution amounts, perhaps pointing to a continued necessity for development in the sector.</p>
<div style="page-break-after: always;"></div>
2022-08-19 12:02:37 +00:00
</section>
</section>
<section id="uganda" class="level2 page-columns page-full">
2022-08-19 12:02:37 +00:00
<h2 class="anchored" data-anchor-id="uganda">Uganda</h2>
<hr>
<ul>
2022-09-08 15:30:55 +00:00
<li>Poverty and inequality in Uganda are at a fluctuating level in Uganda, with poverty levels staying roughly stable and inequality slowly trending upward.</li>
2022-08-19 12:02:37 +00:00
<li>National poverty line set very low, potentially hiding additional households in states of deprivation and those in danger of reverting to poverty.</li>
<li>Inequality, poverty and informal economy in close circular relation in Uganda, presenting a vicious circle for those captive within.</li>
<li>Education levels of poor people are consistently low, with those of rural population more so.</li>
<li>Inadequate access to clean water can exacerbate these inequalities, directly influencing food security, rural child education and gender inequalities.</li>
<li>The district of Isingiro especially is dramatically below national average of clean water access, and in danger of exacerbation through climate change.</li>
</ul>
<hr>
<!-- intro/overall -->
2022-09-29 11:28:32 +00:00
<p>Uganda generally has a degree of inequality that fluctuates but over time seems largely unchanged, as does the share of people below its poverty line in recent years. The long-term level of income inequality in the country stayed relatively stagnant, with a Gini coefficient for the consumption per capita of 0.36 calculated for the 1992/93 census and a World Bank calculation of 0.43 for the year 2019, with the coefficient rising slighly in the years 2002/03 and 2009/10 during its fluctuation <span class="citation" data-cites="Atamanov2022">(<a href="#ref-Atamanov2022" role="doc-biblioref">World Bank, 2022h</a>, see also <a href="#fig-uga" role="doc-biblioref">Figure 4</a>)</span>, while <span class="citation" data-cites="Lwanga-Ntale2014">Lwanga-Ntale (<a href="#ref-Lwanga-Ntale2014" role="doc-biblioref">2014</a>)</span> finds a slight upward trend over time. However, the aggregation masks several important distinctions: Rural inequality overall is lower than urban inequality, with <span class="citation" data-cites="Lwanga-Ntale2014">Lwanga-Ntale (<a href="#ref-Lwanga-Ntale2014" role="doc-biblioref">2014</a>)</span> finding Gini coefficients of 0.35 and 0.41 for 2012/13 respectively. Additionally, he sees inequalities between income quintiles primarily driven by the highest (0.25) and lowest (0.14) quintiles, whereas middle-income show lower Gini coefficients (0.05-0.07). These inequality levels remained mostly unchanged between 2012/13 and 2019/20 but hide qualitative dimensions such as the shift out of a lower-income agricultural livelihood predominantly taking place among older men who have at least some level of formal education and are from already more well-off households <span class="citation" data-cites="Atamanov2022">(<a href="#ref-Atamanov2022" role="doc-biblioref">World Bank, 2022h</a>)</span>.</p>
2022-09-08 15:30:55 +00:00
<div class="cell" data-execution_count="13">
2022-08-20 14:45:26 +00:00
<details>
<summary>Code</summary>
2022-09-08 15:30:55 +00:00
<div class="sourceCode cell-code" id="cb10"><pre class="sourceCode python code-with-copy"><code class="sourceCode python"><span id="cb10-1"><a href="#cb10-1" aria-hidden="true" tabindex="-1"></a>gni_cnsmpt <span class="op">=</span> uga[uga[<span class="st">&#39;resource&#39;</span>].<span class="bu">str</span>.contains(<span class="st">&quot;Consumption&quot;</span>)]</span>
<span id="cb10-2"><a href="#cb10-2" aria-hidden="true" tabindex="-1"></a>gni_cnsmpt_percapita <span class="op">=</span> gni_cnsmpt[gni_cnsmpt[<span class="st">&#39;scale&#39;</span>].<span class="bu">str</span>.contains(<span class="st">&quot;Per capita&quot;</span>)]</span>
<span id="cb10-3"><a href="#cb10-3" aria-hidden="true" tabindex="-1"></a>gini_plot(gni_cnsmpt_percapita)</span></code><button title="Copy to Clipboard" class="code-copy-button"><i class="bi"></i></button></pre></div>
2022-08-20 14:45:26 +00:00
</details>
<div class="cell-output cell-output-display">
2022-08-20 15:56:33 +00:00
<div id="fig-uga" class="quarto-figure quarto-figure-center anchored">
2022-08-20 14:45:26 +00:00
<figure class="figure">
<p><img src="data:image/png;base64,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
2022-09-08 15:30:55 +00:00
<p></p><figcaption class="figure-caption">Figure 4: Gini index of consumption per capita for Uganda</figcaption><p></p>
2022-08-20 14:45:26 +00:00
</figure>
</div>
</div>
</div>
2022-09-08 15:30:55 +00:00
<div data-custom-style="caption">
<p>Source: Authors elaboration based on UNU-WIDER WIID (2022).</p>
</div>
2022-08-19 12:02:37 +00:00
<!-- poverty -->
2022-09-29 11:28:32 +00:00
<p>The World Bank <span class="citation" data-cites="Atamanov2022">(<a href="#ref-Atamanov2022" role="doc-biblioref">2022h</a>)</span> report goes on to examine the share of people below the poverty line in Uganda: around 30% of households are in a state of poverty in 2019/20, which once again fluctuated but roughly reflects the share of 30.7% households in poverty in 2012/13. Two surges in rural household poverty in 2012/2013 and 2016/17 can be linked to droughts in the country, with an improvement in 2019/20 conversely being linked to favorable weather conditions. <!-- TODO find citation or put Atamanov --> <span class="citation" data-cites="Ssewanyana2012">Ssewanyana &amp; Kasirye (<a href="#ref-Ssewanyana2012" role="doc-biblioref">2012</a>)</span> find that in absolute terms poverty fell significantly (from 28.5% in 2005/06 to 23.9% in 2009/10) but there are clear relative regional differences emerging, with Western Ugandan households increasing in poverty while Northern and Eastern households reduced their share of households below the poverty line. Additionally, they find that while transient poverty is more common than chronic poverty in Uganda, nearly 10% of households continue to live in persistent material deprivation.</p>
<p>Lastly, for a long time it has been seen as an issue that Uganda puts its national poverty line too low with the line being put between 0.94 USD (2011 PPP) and 1.07 USD (2011 PPP) depending on the province (lower than the international live of 1.90 USD PPP), while <span class="citation" data-cites="vandeVen2021">van de Ven et al. (<a href="#ref-vandeVen2021" role="doc-biblioref">2021</a>)</span> estimate a living income of around 3.82 USD (2011 PPP) would be required for a national poverty line that meets basic human rights for a decent living. In absolute terms, the bottom 40% of Uganda had a median daily income of 1.28 USD (2011 PPP) in 2016 which kept stable to 2019 <span class="citation" data-cites="WorldBank2022e">(<a href="#ref-WorldBank2022e" role="doc-biblioref">World Bank, 2022d</a>)</span>.</p>
2022-08-19 12:02:37 +00:00
<!-- endowment/assets: education, ..? -->
2022-09-08 15:30:55 +00:00
<p>Esaku <span class="citation" data-cites="Esaku2021 Esaku2021a">(<a href="#ref-Esaku2021" role="doc-biblioref">2021b</a>, <a href="#ref-Esaku2021a" role="doc-biblioref">2021a</a>)</span> finds a somewhat circular driving relationship between Ugandan inequality, poverty and working in what calls the shadow economy: inequality increases the size of the informal economy, as a large subsistence sector creates revenue tax shortfalls, undermines the governments efforts to attain equitable income distributions in the economy and the creation of social safety nets for the poort, who, in turn, have to turn to the informal economy to secure their livelihoods, increasing its size both short- and long-term and feeding back into the cycle.</p>
2022-09-29 11:28:32 +00:00
<p><span class="citation" data-cites="Cali2014">Cali (<a href="#ref-Cali2014" role="doc-biblioref">2014</a>)</span> finds that, already, one of the primary determinants of income disparity in more trade-exposed markets of Uganda in the 1990s were the increasing education differences leading to more disparate wage premiums. Additionally, slow structural change — further impeded by the onset of the COVID-19 pandemic, which pushed both urban and rural residents back into poverty — leaves a low-productivity agricultural sector which becomes, in combination with a lack of education, the strongest predictor of poverty: the poverty rate in households with an uneducated household head (17% of all households) is 48% (2019/20), while already households with a household head possessing primary education (also 17% of all) nearly cuts this in half with 25% poverty rate (2019/20) <span class="citation" data-cites="Atamanov2022">(<a href="#ref-Atamanov2022" role="doc-biblioref">World Bank, 2022h</a>)</span>.</p>
<p>The World Bank <span class="citation" data-cites="WorldBank2022">(<a href="#ref-WorldBank2022" role="doc-biblioref">2022g</a>)</span> calculated a Learning Poverty Indicator for Uganda which finds that 82% of children at late primary age are not proficient in reading, 81% of children do not achieve minimum proficiency level in reading at the end of primary schooling, and 4% of primary school-aged children are not enrolled in school at all. <span class="citation" data-cites="Datzberger2018">Datzberger (<a href="#ref-Datzberger2018" role="doc-biblioref">2018</a>)</span> argues these problems primarily exist in Uganda due to choosing an approach to education that is primarily assimilation-based, that is, intended to effect change at the individual-level through fostering grassroots education throughout society at large, instead of looking into more transformative policy approaches which would operate on a more systemic level, removing oppressive structures of inequality in tandem with government institutions at multiple levels.</p>
2022-08-19 12:02:37 +00:00
<!-- water access -->
<section id="inequalities-in-access-to-drinking-water" class="level3">
<h3 class="anchored" data-anchor-id="inequalities-in-access-to-drinking-water">Inequalities in access to drinking water</h3>
2022-09-29 11:28:32 +00:00
<p>Such personal circumstances as access to a timely education play decisive role in life and human capital development — circumstances to which decent housing as well as access to clean water are equally fundamental building blocks <span class="citation" data-cites="Atamanov2022">(<a href="#ref-Atamanov2022" role="doc-biblioref">World Bank, 2022h</a>)</span>. In 1990 a policy initiative to shift from a supply-driven to a demand-driven model for rural drinking water provision was enacted which, over time, improved rural safe water coverage slightly but also made operation and maintenance of improved water sources pose a challenge that could impede long-term access to safe water.</p>
<p>In the country, access to improved water sources rose from 44% in 1990 to 60% in 2004 and 66% in 2010 <span class="citation" data-cites="Naiga2015">(<a href="#ref-Naiga2015" role="doc-biblioref">Naiga et al., 2015</a>)</span>. In 2019, access to improved sources of drinking water in the country is at a level of 87% in urban areas and 74% in rural areas, with relatively little inequality in rural regions between poor and non-poor households <span class="citation" data-cites="Atamanov2022">(<a href="#ref-Atamanov2022" role="doc-biblioref">World Bank, 2022h</a>)</span>.</p>
2022-09-08 15:30:55 +00:00
<p>Health care facilities in rural areas are generally well connected to improved sources with 94% of facilities having access to public stand posts, protected spring technology, deep boreholes and some to rain harvesting tanks, gravity flow schemes or groundwater-based pumped piped water supplies <span class="citation" data-cites="Mulogo2018">(<a href="#ref-Mulogo2018" role="doc-biblioref">Mulogo et al., 2018</a>)</span>. Thus, individual households are generally less well connected than health care facilities, and rural households in turn less well than urban households.</p>
2022-08-19 12:02:37 +00:00
<!-- Isingiro district -->
2022-09-08 15:30:55 +00:00
<p>The same study found for the Isingiro district in Western Uganda on the other hand, in 2010, only 28% of households had access to improved water <span class="citation" data-cites="Mulogo2018">(<a href="#ref-Mulogo2018" role="doc-biblioref">Mulogo et al., 2018</a>)</span>. <!-- TODO check validity --> <span class="citation" data-cites="Naiga2015">Naiga et al. (<a href="#ref-Naiga2015" role="doc-biblioref">2015</a>)</span> investigated the characteristics of improved water access in the Isingiro district, finding that whereas the national average distance to travel for a water source is 0.2km in urban and 0.8km in rural locations, in Isingiro it is 1.5km, and of the fewer existing improved water sources, only 53% were fully functional, with 24% being only partly functional (having only low or intermittent yield) and 18% not being functional at all. Additionally, they found blocked drainage channels in some of the sources which could in turn lead to a possible health risk due to contamination of the source.</p>
<p><span class="citation" data-cites="Naiga2018">Naiga (<a href="#ref-Naiga2018" role="doc-biblioref">2018</a>)</span> argues that some reasons for the low access to working improved water sources is the absence of many of the organizational characteristics prescribed by the design principles of community-managed water infrastructure management — unclear social boundaries, missing collective-choice arrangements and a lack of sanctions or conflict resolution mechanisms — in other words, a policy failure resulting in lack of sufficient self-governance arrangements.</p>
2022-08-19 12:02:37 +00:00
<p>Such inequalities in water access often stand in direct relationship with other inequalities such as along gender, geographic or income dimensions, with fetching water traditionally being a female care role, the cost of user fees to gain access to improved water being prohibitive to poorer households, while the remoteness of many households location makes the trekk to the source more time-consuming and replacement parts for repairs difficult to source in an adequate time <span class="citation" data-cites="Naiga2015">(<a href="#ref-Naiga2015" role="doc-biblioref">Naiga et al., 2015</a>)</span>.</p>
<!-- water access during extreme events -->
2022-09-08 15:30:55 +00:00
<p>Looking into the effects of climate change and its accompanying increase in climate shock events, especially droughts, on such gender roles, <span class="citation" data-cites="Nagasha2019">Nagasha et al. (<a href="#ref-Nagasha2019" role="doc-biblioref">2019</a>)</span> find that it gender roles adapt while gender inequalities tend to increase, with men participating more in firewood collection and water fetching but generally focused on assuming a single reproductive role while women played multiple roles simultaneously. Two effects they found of this exacerbation were the women often being forced to engage their children in work activities to manage the simultaneous workload, and women, due to their exclusion from landownership in the region, being brought further into a state of dependence and thus made even more vulnerable to future climate change effects.</p>
<p>Water supply use seems to experience little change during emergency situations, and peoples willingness (or ability) to pay for water is also too small to maintain water revenue without addressing the disparity in socio-economic attributes of households <span class="citation" data-cites="Sempewo2021 Sempewo2021a">(<a href="#ref-Sempewo2021" role="doc-biblioref">Sempewo, Kisaakye, et al., 2021</a>; <a href="#ref-Sempewo2021a" role="doc-biblioref">Sempewo, Mushomi, et al., 2021</a>)</span>. Taken together, this hints at one possibility of subsequent health disparity increases due to prior income inequalities and poverty during emergency situations such as climate shocks.</p>
<p>Access to water is also one of the primary reasons for both real and perceived food insecurity vulnerabilities, even more so during climate shocks. In Uganda, <span class="citation" data-cites="Cooper2016">Cooper &amp; Wheeler (<a href="#ref-Cooper2016" role="doc-biblioref">2016</a>)</span> investigate the vulnerability of rural farmers to climate events and find that, while most farmers implement anticipatory and livelihood coping responses (54.7%), many responses only protect against very specific events (45.4%) and most had no response at all to coping with rainfall variability: while farmers with more land, education, access to government extensions and non-farm livelihoods have more capacity to buffer the shock, both wealthier farmers (droughts as highest perceived risk) and poor farmers (extreme rainfall as highest) perceive themselves most vulnerable to rainfall-based events.</p>
<p>In the Isingiro district, <span class="citation" data-cites="Twongyirwe2019">Twongyirwe et al. (<a href="#ref-Twongyirwe2019" role="doc-biblioref">2019</a>)</span> find that most farmers (68.6%) perceive food insecurity as a problem with the overwhelming majority seeing droughts as the major contributory issue to this food insecurity (95.6%). They also find that mainly higher-income and larger farms see it as less of a problem, while 13% of all farmers report that they did not, or could not, do anything to respond to the drought effects. Lastly, even for inhabitants of wetland areas, droughts can pose problems. <span class="citation" data-cites="Yikii2017">Yikii et al. (<a href="#ref-Yikii2017" role="doc-biblioref">2017</a>)</span>, looking at the prevalence and determining factors of food insecurity in wetland adjacent areas in the district, find that 93% of households within wetlands are already food insecure due to poverty, low levels of labor productivity and low levels of education, which they argue would worsen in droughts unless the government finds ways of promoting food and nutrition education, alternative income generating activities, drought resistant crop varieties and ways of water conservation.</p>
<p>Uganda houses around 1.3 million refugees in 13 refugee camps located in 11 districts across the country, including Nakivale refugee camp in the Isingiro district. In refugee camps, water continues to be a scarce resource: While concrete reports on refugee camps in the Isingiro district are scarce, the circumstances in neighboring refugee camps have more received more quantification, with only 67% of the Kyangwali refugee camp having access to improved water sources and only 46% access to sanitation service facilities <span class="citation" data-cites="Calderon-Villarreal2022">(<a href="#ref-Calderon-Villarreal2022" role="doc-biblioref">Calderón-Villarreal et al., 2022</a>)</span>. Little access to sanitation sites can in turn negatively affect access to clean water if no improved water sources are nearby, as was the case with a prolonged cholera outbreak in Kyangwali due to a contaminated stream in 2018 <span class="citation" data-cites="Monje2020">(<a href="#ref-Monje2020" role="doc-biblioref">Monje et al., 2020</a>)</span>.</p>
<p>Such resource scarcity can also be a gendered problem, with predominantly girls and young women experiencing an increased amount of sexual and gender based violence as access to resources (especially water, food and firewood) becomes more scarce <span class="citation" data-cites="Logie2021">(<a href="#ref-Logie2021" role="doc-biblioref">Logie et al., 2021</a>)</span>. In Nakivale refugee camp growing numbers of refugees have arrived throughout 2022, many re-situated from other Ugandan refugee camps <span class="citation" data-cites="UNHCR2022">(<a href="#ref-UNHCR2022" role="doc-biblioref">UNHCR, 2022</a>)</span>. Here, water scarcity is an increasingly urgent issue, with its primary reasons being a limited waste management system exacerbating Lake Nakivales water quality degradation and a poor state of water reticulation: a large number of non-functioning tap stands, underfunded and non-functioning water treatment plants, while peripheries of the settlement are not covered by water supply at all <span class="citation" data-cites="UNHCR2020">(<a href="#ref-UNHCR2020" role="doc-biblioref">UNHCR, 2020</a>)</span>.</p>
2022-08-19 12:02:37 +00:00
<!-- conclusion -->
2022-09-08 15:30:55 +00:00
<p>Thus, while Ugandas poverty and inequality are not trending towards drastically worsening over the last years, hidden disparities bring its issues in focus once disaggregated: Nationally, poverty is a looming transient affair for many households, more if increasing the countrys very low national line of poverty. Inequality derives itself partly from this poverty, making it necessary for many to accept informal work which, taken at large, in turn fosters further national inequality.</p>
<p>The role education plays in Ugandas allocation of poverty cannot be overstated, with especially many rural children not having adequate opportunity to access timely education. This disparity could be exacerbated by poor quality access to clean water through improved water sources, which in turn worsens food securities, retrenches gender role inequalities and precludes more children from their education. In the district of Isingiro in West Uganda access to water is considerably below the national average, with policy failures during implementation now leading to partly or non-functional water sources. The problem runs danger of deteriorating with an increased amount of climate shocks such as droughts threatening to exacerbate existing inequalities and drive further households into poverty.</p>
<!-- development assistance -->
2022-08-19 12:02:37 +00:00
</section>
<section id="development-assistance-to-uganda" class="level3 page-columns page-full">
<h3 class="anchored" data-anchor-id="development-assistance-to-uganda">Development assistance to Uganda</h3>
2022-09-08 15:30:55 +00:00
<div class="cell" data-execution_count="14">
<details>
<summary>Code</summary>
2022-09-08 15:30:55 +00:00
<div class="sourceCode cell-code" id="cb11"><pre class="sourceCode python code-with-copy"><code class="sourceCode python"><span id="cb11-1"><a href="#cb11-1" aria-hidden="true" tabindex="-1"></a><span class="co"># Load CRS data</span></span>
<span id="cb11-2"><a href="#cb11-2" aria-hidden="true" tabindex="-1"></a>dfsub1 <span class="op">=</span> pd.read_csv(<span class="st">&#39;data/raw/OECD_CRS/CRS1_Uganda_11-13_05092022214241555.csv&#39;</span>, parse_dates<span class="op">=</span><span class="va">True</span>, low_memory<span class="op">=</span><span class="va">False</span>)</span>
<span id="cb11-3"><a href="#cb11-3" aria-hidden="true" tabindex="-1"></a>dfsub2 <span class="op">=</span> pd.read_csv(<span class="st">&#39;data/raw/OECD_CRS/CRS1_Uganda_14-16_05092022213749491.csv&#39;</span>, parse_dates<span class="op">=</span><span class="va">True</span>, low_memory<span class="op">=</span><span class="va">False</span>)</span>
<span id="cb11-4"><a href="#cb11-4" aria-hidden="true" tabindex="-1"></a>dfsub3 <span class="op">=</span> pd.read_csv(<span class="st">&#39;data/raw/OECD_CRS/CRS1_Uganda_17-20_05092022213356210.csv&#39;</span>, parse_dates<span class="op">=</span><span class="va">True</span>, low_memory<span class="op">=</span><span class="va">False</span>)</span>
<span id="cb11-5"><a href="#cb11-5" aria-hidden="true" tabindex="-1"></a>df <span class="op">=</span> pd.concat([dfsub1, dfsub2, dfsub3], ignore_index<span class="op">=</span><span class="va">True</span>)</span>
<span id="cb11-6"><a href="#cb11-6" aria-hidden="true" tabindex="-1"></a>df <span class="op">=</span> df.rename(columns<span class="op">=</span>{<span class="st">&#39;</span><span class="ch">\ufeff</span><span class="st">&quot;DONOR&quot;&#39;</span>: <span class="st">&#39;DONOR&#39;</span>})</span></code><button title="Copy to Clipboard" class="code-copy-button"><i class="bi"></i></button></pre></div>
</details>
</div>
2022-09-08 15:30:55 +00:00
<div class="cell page-columns page-full" data-execution_count="15">
<details>
<summary>Code</summary>
2022-09-08 15:30:55 +00:00
<div class="sourceCode cell-code" id="cb12"><pre class="sourceCode python code-with-copy"><code class="sourceCode python"><span id="cb12-1"><a href="#cb12-1" aria-hidden="true" tabindex="-1"></a>totals <span class="op">=</span> df.loc[</span>
<span id="cb12-2"><a href="#cb12-2" aria-hidden="true" tabindex="-1"></a> (df[<span class="st">&#39;SECTOR&#39;</span>] <span class="op">==</span> <span class="dv">1000</span>) <span class="op">&amp;</span> <span class="co"># Total</span></span>
<span id="cb12-3"><a href="#cb12-3" aria-hidden="true" tabindex="-1"></a> (df[<span class="st">&#39;CHANNEL&#39;</span>] <span class="op">==</span> <span class="dv">100</span>) <span class="op">&amp;</span></span>
<span id="cb12-4"><a href="#cb12-4" aria-hidden="true" tabindex="-1"></a> (df[<span class="st">&#39;AMOUNTTYPE&#39;</span>] <span class="op">==</span> <span class="st">&#39;D&#39;</span>) <span class="op">&amp;</span></span>
<span id="cb12-5"><a href="#cb12-5" aria-hidden="true" tabindex="-1"></a> (df[<span class="st">&#39;FLOWTYPE&#39;</span>] <span class="op">==</span> <span class="dv">112</span>) <span class="op">&amp;</span></span>
<span id="cb12-6"><a href="#cb12-6" aria-hidden="true" tabindex="-1"></a> (df[<span class="st">&#39;AIDTYPE&#39;</span>] <span class="op">==</span> <span class="st">&quot;100&quot;</span>) <span class="co"># contains mixed int and string representations</span></span>
<span id="cb12-7"><a href="#cb12-7" aria-hidden="true" tabindex="-1"></a> ]</span>
<span id="cb12-8"><a href="#cb12-8" aria-hidden="true" tabindex="-1"></a>financetotals <span class="op">=</span> totals.copy()</span>
<span id="cb12-9"><a href="#cb12-9" aria-hidden="true" tabindex="-1"></a>financetotals <span class="op">=</span> financetotals[financetotals[<span class="st">&#39;DONOR&#39;</span>] <span class="op">&lt;</span> <span class="dv">20000</span>] <span class="co"># drop all &#39;total&#39; aggregations</span></span>
<span id="cb12-10"><a href="#cb12-10" aria-hidden="true" tabindex="-1"></a></span>
<span id="cb12-11"><a href="#cb12-11" aria-hidden="true" tabindex="-1"></a><span class="co">## count amount of development aid financing instruments (grants/loans) by year and display</span></span>
<span id="cb12-12"><a href="#cb12-12" aria-hidden="true" tabindex="-1"></a><span class="co">## count USD amount of development aid financing instumrnets by year and display</span></span>
<span id="cb12-13"><a href="#cb12-13" aria-hidden="true" tabindex="-1"></a>financetotals_grouped <span class="op">=</span> financetotals.groupby([<span class="st">&#39;Flow&#39;</span>, <span class="st">&#39;Year&#39;</span>]).agg({<span class="st">&#39;Value&#39;</span>: [<span class="st">&#39;sum&#39;</span>]})</span>
<span id="cb12-14"><a href="#cb12-14" aria-hidden="true" tabindex="-1"></a>financetotals_grouped <span class="op">=</span> financetotals_grouped.reset_index([<span class="st">&#39;Flow&#39;</span>, <span class="st">&#39;Year&#39;</span>])</span>
<span id="cb12-15"><a href="#cb12-15" aria-hidden="true" tabindex="-1"></a>financetotals_grouped.columns <span class="op">=</span> financetotals_grouped.columns.to_flat_index()</span>
<span id="cb12-16"><a href="#cb12-16" aria-hidden="true" tabindex="-1"></a>financetotals_grouped.columns <span class="op">=</span> [<span class="st">&#39;Financetype&#39;</span>, <span class="st">&#39;Year&#39;</span>, <span class="st">&#39;Value&#39;</span>]</span>
<span id="cb12-17"><a href="#cb12-17" aria-hidden="true" tabindex="-1"></a></span>
<span id="cb12-18"><a href="#cb12-18" aria-hidden="true" tabindex="-1"></a>fig <span class="op">=</span> px.line(financetotals_grouped, x<span class="op">=</span><span class="st">&#39;Year&#39;</span>, y<span class="op">=</span><span class="st">&#39;Value&#39;</span>, color<span class="op">=</span><span class="st">&#39;Financetype&#39;</span>, labels<span class="op">=</span>{<span class="st">&quot;Value&quot;</span>: <span class="st">&quot;Development aid amount, in millions of USD&quot;</span>}, markers<span class="op">=</span><span class="va">True</span>, template<span class="op">=</span><span class="st">&quot;seaborn&quot;</span>)</span>
<span id="cb12-19"><a href="#cb12-19" aria-hidden="true" tabindex="-1"></a><span class="co"># 0-figure</span></span>
<span id="cb12-20"><a href="#cb12-20" aria-hidden="true" tabindex="-1"></a>fig.update_yaxes(rangemode<span class="op">=</span><span class="st">&quot;tozero&quot;</span>)</span>
<span id="cb12-21"><a href="#cb12-21" aria-hidden="true" tabindex="-1"></a>fig.show()</span></code><button title="Copy to Clipboard" class="code-copy-button"><i class="bi"></i></button></pre></div>
</details>
<div class="cell-output cell-output-display column-page">
<div id="fig-uga-aid-financetype" class="quarto-figure quarto-figure-center anchored">
<figure class="figure">
2022-09-08 15:30:55 +00:00
<p><img src="data:image/png;base64,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
<p></p><figcaption class="figure-caption">Figure 5: Total ODA for Uganda per year, by financing type</figcaption><p></p>
</figure>
</div>
</div>
</div>
2022-09-08 15:30:55 +00:00
<div data-custom-style="caption">
<p>Note: Values shown are for all Official Development Assistance flows valid under the OECD CRS data, split into the type of financing flow, calculated as constant currency (2020 corrected) USD millions. Source: Authors elaboration based on OECD ODA CRS (2022).</p>
2022-09-08 15:30:55 +00:00
</div>
2022-09-29 12:09:20 +00:00
<p>Overall Ugandan development aid reception is high, with over 1.5bn USD granted as official development assistance in 2011 as seen in <a href="#fig-uga-aid-financetype">Figure 5</a>. The Official Development Assistance overall further increased to over 2.2bn USD in 2019, before rapidly increasing in 2020 to over 3.0bn USD. The overall trend of increasing aid money is largely due to increases in development grants which especially increased from 2015 to 2017. In general, development loans play a smaller role in absolute terms: Whereas in 2011 around 1.2bn USD funds came in the form of grants, only around 300m USD were in the form of loans. The absolute portion of loans slowly increased until 2019 to just over 500m USD, before significantly increasing in 2020, tripling to almost 1.5bn USD.</p>
2022-09-08 15:30:55 +00:00
<div class="cell page-columns page-full" data-execution_count="16">
<details>
<summary>Code</summary>
2022-09-08 15:30:55 +00:00
<div class="sourceCode cell-code" id="cb13"><pre class="sourceCode python code-with-copy"><code class="sourceCode python"><span id="cb13-1"><a href="#cb13-1" aria-hidden="true" tabindex="-1"></a>totals <span class="op">=</span> df.loc[</span>
<span id="cb13-2"><a href="#cb13-2" aria-hidden="true" tabindex="-1"></a> (df[<span class="st">&#39;SECTOR&#39;</span>] <span class="op">==</span> <span class="dv">1000</span>) <span class="op">&amp;</span> <span class="co"># Total</span></span>
<span id="cb13-3"><a href="#cb13-3" aria-hidden="true" tabindex="-1"></a> (df[<span class="st">&#39;FLOW&#39;</span>] <span class="op">==</span> <span class="dv">100</span>) <span class="op">&amp;</span></span>
<span id="cb13-4"><a href="#cb13-4" aria-hidden="true" tabindex="-1"></a> (df[<span class="st">&#39;CHANNEL&#39;</span>] <span class="op">==</span> <span class="dv">100</span>) <span class="op">&amp;</span></span>
<span id="cb13-5"><a href="#cb13-5" aria-hidden="true" tabindex="-1"></a> (df[<span class="st">&#39;AMOUNTTYPE&#39;</span>] <span class="op">==</span> <span class="st">&#39;D&#39;</span>) <span class="op">&amp;</span></span>
<span id="cb13-6"><a href="#cb13-6" aria-hidden="true" tabindex="-1"></a> (df[<span class="st">&#39;FLOWTYPE&#39;</span>] <span class="op">==</span> <span class="dv">112</span>) <span class="op">&amp;</span></span>
<span id="cb13-7"><a href="#cb13-7" aria-hidden="true" tabindex="-1"></a> (df[<span class="st">&#39;AIDTYPE&#39;</span>] <span class="op">==</span> <span class="st">&quot;100&quot;</span>) <span class="co"># contains mixed int and string representations</span></span>
<span id="cb13-8"><a href="#cb13-8" aria-hidden="true" tabindex="-1"></a> ]</span>
<span id="cb13-9"><a href="#cb13-9" aria-hidden="true" tabindex="-1"></a>donortotals <span class="op">=</span> totals.copy()</span>
<span id="cb13-10"><a href="#cb13-10" aria-hidden="true" tabindex="-1"></a>donortotals[<span class="st">&quot;Donortype&quot;</span>] <span class="op">=</span> donortotals[<span class="st">&quot;DONOR&quot;</span>].<span class="bu">map</span>(donortypes)</span>
<span id="cb13-11"><a href="#cb13-11" aria-hidden="true" tabindex="-1"></a>donortotals <span class="op">=</span> donortotals[(donortotals[<span class="st">&quot;Donortype&quot;</span>] <span class="op">!=</span> <span class="st">&quot;nondac&quot;</span>)]</span>
<span id="cb13-12"><a href="#cb13-12" aria-hidden="true" tabindex="-1"></a></span>
<span id="cb13-13"><a href="#cb13-13" aria-hidden="true" tabindex="-1"></a>donortotals_grouped <span class="op">=</span> donortotals.groupby([<span class="st">&#39;Donortype&#39;</span>, <span class="st">&#39;Year&#39;</span>]).agg({<span class="st">&#39;Value&#39;</span>: [<span class="st">&#39;sum&#39;</span>]})</span>
<span id="cb13-14"><a href="#cb13-14" aria-hidden="true" tabindex="-1"></a>donortotals_grouped <span class="op">=</span> donortotals_grouped.reset_index([<span class="st">&#39;Donortype&#39;</span>, <span class="st">&#39;Year&#39;</span>])</span>
<span id="cb13-15"><a href="#cb13-15" aria-hidden="true" tabindex="-1"></a>donortotals_grouped.columns <span class="op">=</span> donortotals_grouped.columns.to_flat_index()</span>
<span id="cb13-16"><a href="#cb13-16" aria-hidden="true" tabindex="-1"></a>donortotals_grouped.columns <span class="op">=</span> [<span class="st">&#39;Donortype&#39;</span>, <span class="st">&#39;Year&#39;</span>, <span class="st">&#39;Value&#39;</span>]</span>
<span id="cb13-17"><a href="#cb13-17" aria-hidden="true" tabindex="-1"></a>fig <span class="op">=</span> px.line(donortotals_grouped, x<span class="op">=</span><span class="st">&#39;Year&#39;</span>, y<span class="op">=</span><span class="st">&#39;Value&#39;</span>, color<span class="op">=</span><span class="st">&#39;Donortype&#39;</span>, labels<span class="op">=</span>{<span class="st">&quot;Value&quot;</span>: <span class="st">&quot;Development aid amount, in millions of USD&quot;</span>}, markers<span class="op">=</span><span class="va">True</span>, template<span class="op">=</span><span class="st">&quot;seaborn&quot;</span>)</span>
<span id="cb13-18"><a href="#cb13-18" aria-hidden="true" tabindex="-1"></a><span class="co"># 0-figure</span></span>
<span id="cb13-19"><a href="#cb13-19" aria-hidden="true" tabindex="-1"></a>fig.update_yaxes(rangemode<span class="op">=</span><span class="st">&quot;tozero&quot;</span>)</span>
<span id="cb13-20"><a href="#cb13-20" aria-hidden="true" tabindex="-1"></a>fig.show()</span></code><button title="Copy to Clipboard" class="code-copy-button"><i class="bi"></i></button></pre></div>
</details>
<div class="cell-output cell-output-display column-page">
<div id="fig-uga-aid-donortype" class="quarto-figure quarto-figure-center anchored">
<figure class="figure">
2022-09-08 15:30:55 +00:00
<p><img src="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAArwAAAH0CAYAAADfWf7fAAAgAElEQVR4XuydCXhVxfn/v9lXQsjGjuw7KJuKILKJVWhRca2Wqn+t/qxarHWr1R+tUhdAfy5VsIJooSjiRhFRtiK77DsS9h0SQgLJzXpv/s87MSEhCbn3zpmTe2++8zw+IPfMe2Y+cwKfTN7zTlBxcXEx2EiABEiABEiABEiABEggQAkEUXgDdGU5LRIgARIgARIgARIgAUWAwssHgQRIgARIgARIgARIIKAJUHgDenk5ORIgARIgARIgARIgAQovnwESIAESIAESIAESIIGAJkDhDejl5eRIgARIgARIgARIgAQovHwGSIAESIAESIAESIAEApoAhTegl5eTIwESIAESIAESIAESoPDyGSABEiABEiABEiABEghoAhTegF5eTo4ESIAESIAESIAESIDCy2eABEiABEiABEiABEggoAlQeAN6eTk5EiABEiABEiABEiABCi+fARIgARIgARIgARIggYAmQOEN6OXl5EiABEiABEiABEiABCi8fAZIgARIgARIgARIgAQCmgCFN6CXl5MjARIgARIgARIgARKg8PIZIAESIAESIAESIAESCGgCFN6AXl5OjgRIgARIgARIgARIgMLLZ4AESIAESIAESIAESCCgCVB4A3p5OTkSIAESIAESIAESIAEKL58BEiABEiABEiABEiCBgCZA4Q3o5eXkSIAESIAESIAESIAEKLx8BkiABEiABEiABEiABAKaAIU3oJeXkyMBEiABEiABEiABEqDw8hkgARIgARIgARIgARIIaAIU3oBeXk6OBEiABEiABEiABEiAwstngARIgARIgARIgARIIKAJUHgDenk5ORIgARIgARIgARIgAQovnwESIAESIAESIAESIIGAJkDhDejl5eRIgARIgARIgARIgAQovHwGSIAESIAESIAESIAEApoAhTegl5eTIwESIAESIAESIAESoPDyGSABEiABEiABEiABEghoAhTegF5eTo4ESIAESIAESIAESIDCy2eABEiABEiABEiABEggoAlQeAN6eTk5EiABEiABEiABEiABCi+fARIgARIgARIgARIggYAmQOEN6OXl5EiABEiABEiABEiABCi8fAZIgARIgARIgARIgAQCmgCFN6CXl5MjARIgARIgARIgARKg8PIZIAESIAESIAESIAESCGgCFN6AXl5OjgRIgARIgARIgARIgMLLZ4AESIAESIAESIAESCCgCVB4A3p5OTkSIAESIAESIAESIAEKL58BEiABEiABEiABEiCBgCZA4Q3o5eXkSIAESIAESIAESIAEKLx8BkiABEiABEiABEiABAKaAIU3oJeXkyMBEiABEiABEiABEqDw8hkgARIgARIgARIgARIIaAIU3oBeXk6OBEiABEiABEiABEiAwstngARIgARIgARIgARIIKAJUHgDenk5ORIgARIgARIgARIgAQovnwESIAESIAESIAESIIGAJkDhDejl5eRIgARIgARIgARIgAQovHwGSIAESIAESIAESIAEApoAhTegl5eTIwESIAESIAESIAESoPDyGSABEiABEiABEiABEghoAhTegF5eTo4ESIAESIAESIAESIDCy2eABEiABEiABEiABEggoAlQeAN6eTk5EiABEiABEiABEiABCq/mM5CWdk4zArvHxESguLgYDkcBYfgggQYNYnDuXC6Kilw+OLq6PaSgoCAkJsYgPT27boPw0dlHRIQiIiIMZ8/m+ugI6/aw6tWLRGGhE3l5hbaDSE6uZ/s96/oNKbyaTwCFVxMgAAqvPkOTESi8Junqxabw6vEz3ZvCa5qwXnwKrx4/f+sdcMK7a9cuvPnmm1i4cCHWrFmDhISEsjX5z3/+gw8++ABhYWGIjIzE2LFj0bZtW/X50qVL8eKLLyI3N1f92cSJE5GUlFTjZxRe/UeewqvP0GQECq9JunqxKbx6/Ez3pvCaJqwXn8Krx8/fegec8I4ZMwajRo3C/fffj1WrVpUJ74kTJzB8+HB89913SmQ///xzzJo1C59++inOnj2LoUOHYsqUKejWrRveeecd7N69G2+99dZFP5PFpvDqP/IUXn2GJiNQeE3S1YtN4dXjZ7o3hdc0Yb34FF49fv7WO+CEt3QBOnToUEF4165dixdeeAHffvutuuSnn37C6NGj1S7wvHnz8MUXX6jdX2nZ2dno27cv1q9fr3aKq/ssPDycwmvBE0/htQCiwRAUXoNwNUNTeDUBGu5O4TUMWDM8hVcToJ91rzPCK6kK119/Pf7+97+jR48eahc3IyMDL7/8Mt59912kp6crIS5tIrwzZ85UMlzdZy1btqTwWvDAU3gtgGgwBIXXIFzN0BReTYCGu1N4DQPWDE/h1QToZ93rjPDKushOrQivpDTk5eWpHd3SfF2n04mnnnqqbPkGDhyoRFh2hKv7rHPnzsjMdPjZkvvecKOiwlWVhtp4U9b3aPjeiOrVi4LDkQ+nk1UafG11RHjj4iKRlcUqAL62NjKe8PAQhIWFIicn3xeHV+fHFB0drqrPFBQU2c4iPj7a9nvW9RvWGeHdtGkTnnjiCXz55ZeIi4vDjz/+qP5/yZIl+Oc//4m0tLQKO7y9e/fG7NmzlfBW95ns8EpJEzY9AsHBQSqAy1WsF4i9jRAIDQ1WslvM5fGIrzALCQn2qI83F4eFhfDvIW/A2dBHviGRv9/4zaINsL24hXx9ymZLbfzbI1+3bPYSqDPC++GHH2Lr1q14/fXXywjLDu2iRYuwefNm9QLb1KlT1WenT5/GoEGDVA6vfF7dZ1LtgS+t6T+wTGnQZ2gyAlMaTNLVi82UBj1+pnszpcE0Yb34/pjSMGzYMOzfv19NPCQkBImJibj88svxu9/9Dp06ddIDEuC964zwSsWGP//5z5gzZw7q1asHeYntkUcewcqVK1UpsiFDhqgUB6nSMGHCBJw8eRLjx49XL7BV95k8GxRe/a8QCq8+Q5MRKLwm6erFpvDq8TPdm8JrmrBefH8V3ptuukm9dJ+fn48DBw7g3//+t/pptLybJJt1tdWeffZZXHvttRg8eHBtDeGi9w0o4c3KylKlx6SJsCYnJyM4OFhJrtTjFaGVPF6priC7s08//TQkdUHa8uXLVV3enJwcdOnSRUlvfHx8jZ9RePWfawqvPkOTESi8Junqxabw6vEz3ZvCa5qwXnx/Fd7bbrtNlV4t3/76178q6ZUzBSIiIvTAeNn7xhtvxGOPPUbh9ZKfz3ej8OovEYVXn6HJCBRek3T1YlN49fiZ7k3hNU1YL34gCa+8a3TVVVdB0jf79+8POYRLXtJPTU1VqQ+XXXYZnnvuOTRu3BgOhwOXXnop3n77bbUrfPjwYTRp0kRVrZLrpF2sv/zkW6pdvfbaa6qPSO6yZcuwePFitVF43XXXYc+ePSrWM888U7ZIb7zxhioF+95776k0DOn7/vvvqw1KKSDw0ksvlaVl7N27F+PGjVPjCA0NRb9+/SA7yPIOlrctoHZ4vYWg04/Cq0OvpC+FV5+hyQgUXpN09WJTePX4me5N4TVNWC9+IAmvkOjZsyeefPJJyE6rpBbcfvvt+P3vf4+ioiL86U9/UiVWJf1BUiG6du2qJFJ+ml2/fn08/vjj6qCtjz/+WKV5Xqy/VLmS9E+pZvWHP/wBzZo1U6IrEiyn1EpKwzfffKN+ai4/PZcdZ3k5UNIt5D7ya69evdT95WRcOflWUk537typ+sn4fvGLX+CGG25QxQUKCgpUv5iYGBXf20bh9Zbcz/0ovJoAKbz6AA1HoPAaBqwRnsKrAc+GrhReGyBr3CIQhVd2cVNSUvDggw9CqlNJCqe0LVu2qFNo5f2lqKgoJbxSoUqkVZqke8pur+zSym6tO/3lNFo536C0lRdekexrrrmmTMClMpbI94oVK1RZWBHe8vfftm0bJDdZ3quSg8EeeOABVVCgdPwyFxF4uU5SUr1pFF5vqJXrQ+HVBEjh1QdoOAKF1zBgjfAUXg14NnSl8NoAWeMWgSS8kpYg
<p></p><figcaption class="figure-caption">Figure 6: Total ODA for Uganda per year, separated by donor type</figcaption><p></p>
</figure>
</div>
</div>
</div>
2022-09-08 15:30:55 +00:00
<div data-custom-style="caption">
<p>Note: Values shown are for all Official Development Assistance flows valid under the OECD ODA data, split into bilateral development donor countries (dac) and multilateral donors (mlt), as constant currency (2020 corrected) USD millions. Source: Authors elaboration based on OECD ODA CRS (2022).</p>
2022-09-08 15:30:55 +00:00
</div>
2022-09-29 12:09:20 +00:00
<p>In terms of predominant donor types, bilateral aid to Uganda was much higher than multilateral aid to the country until 2019. In 2011 only about 400m USD were provided through multilateral donors while almost 1.2bn USD were provided via bilateral donors, though the multilateral contributions quickly grew to over 600m USD in 2013. Despite a single significant decrease of multilateral aid in 2014, the amount of multilateral aid kept generally stagnant until 2018, when the amount first increased to 800m USD in 2019 and subsequently to over 1.7bn in 2020.</p>
2022-09-08 15:30:55 +00:00
<div class="cell page-columns page-full" data-execution_count="17">
<details>
<summary>Code</summary>
2022-09-08 15:30:55 +00:00
<div class="sourceCode cell-code" id="cb14"><pre class="sourceCode python code-with-copy"><code class="sourceCode python"><span id="cb14-1"><a href="#cb14-1" aria-hidden="true" tabindex="-1"></a><span class="co"># 14020-22 - large scale potable water</span></span>
<span id="cb14-2"><a href="#cb14-2" aria-hidden="true" tabindex="-1"></a><span class="co"># 14030-32 - individual-level water and sanitation supply</span></span>
<span id="cb14-3"><a href="#cb14-3" aria-hidden="true" tabindex="-1"></a><span class="co"># 14081 - education and training in water supply</span></span>
<span id="cb14-4"><a href="#cb14-4" aria-hidden="true" tabindex="-1"></a>totals <span class="op">=</span> df.loc[</span>
<span id="cb14-5"><a href="#cb14-5" aria-hidden="true" tabindex="-1"></a> ( (df[<span class="st">&#39;SECTOR&#39;</span>] <span class="op">==</span> <span class="dv">14020</span>) <span class="op">|</span></span>
<span id="cb14-6"><a href="#cb14-6" aria-hidden="true" tabindex="-1"></a> (df[<span class="st">&#39;SECTOR&#39;</span>] <span class="op">==</span> <span class="dv">14021</span>) <span class="op">|</span></span>
<span id="cb14-7"><a href="#cb14-7" aria-hidden="true" tabindex="-1"></a> (df[<span class="st">&#39;SECTOR&#39;</span>] <span class="op">==</span> <span class="dv">14022</span>) <span class="op">|</span></span>
<span id="cb14-8"><a href="#cb14-8" aria-hidden="true" tabindex="-1"></a> (df[<span class="st">&#39;SECTOR&#39;</span>] <span class="op">==</span> <span class="dv">14030</span>) <span class="op">|</span></span>
<span id="cb14-9"><a href="#cb14-9" aria-hidden="true" tabindex="-1"></a> (df[<span class="st">&#39;SECTOR&#39;</span>] <span class="op">==</span> <span class="dv">14031</span>) <span class="op">|</span></span>
<span id="cb14-10"><a href="#cb14-10" aria-hidden="true" tabindex="-1"></a> (df[<span class="st">&#39;SECTOR&#39;</span>] <span class="op">==</span> <span class="dv">14032</span>) <span class="op">|</span></span>
<span id="cb14-11"><a href="#cb14-11" aria-hidden="true" tabindex="-1"></a> (df[<span class="st">&#39;SECTOR&#39;</span>] <span class="op">==</span> <span class="dv">14081</span>)</span>
<span id="cb14-12"><a href="#cb14-12" aria-hidden="true" tabindex="-1"></a> ) <span class="op">&amp;</span></span>
<span id="cb14-13"><a href="#cb14-13" aria-hidden="true" tabindex="-1"></a> (df[<span class="st">&#39;CHANNEL&#39;</span>] <span class="op">==</span> <span class="dv">100</span>) <span class="op">&amp;</span></span>
<span id="cb14-14"><a href="#cb14-14" aria-hidden="true" tabindex="-1"></a> (df[<span class="st">&#39;AMOUNTTYPE&#39;</span>] <span class="op">==</span> <span class="st">&#39;D&#39;</span>) <span class="op">&amp;</span></span>
<span id="cb14-15"><a href="#cb14-15" aria-hidden="true" tabindex="-1"></a> ((df[<span class="st">&#39;FLOW&#39;</span>] <span class="op">==</span> <span class="dv">11</span>) <span class="op">|</span> (df[<span class="st">&#39;FLOW&#39;</span>] <span class="op">==</span> <span class="dv">13</span>)) <span class="op">&amp;</span> <span class="co"># Total</span></span>
<span id="cb14-16"><a href="#cb14-16" aria-hidden="true" tabindex="-1"></a> (df[<span class="st">&#39;FLOWTYPE&#39;</span>] <span class="op">==</span> <span class="dv">112</span>) <span class="op">&amp;</span></span>
<span id="cb14-17"><a href="#cb14-17" aria-hidden="true" tabindex="-1"></a> (df[<span class="st">&#39;AIDTYPE&#39;</span>] <span class="op">==</span> <span class="st">&quot;100&quot;</span>) <span class="co"># contains mixed int and string representations</span></span>
<span id="cb14-18"><a href="#cb14-18" aria-hidden="true" tabindex="-1"></a> ]</span>
<span id="cb14-19"><a href="#cb14-19" aria-hidden="true" tabindex="-1"></a>wateraid <span class="op">=</span> totals[totals[<span class="st">&#39;DONOR&#39;</span>] <span class="op">&lt;</span> <span class="dv">20000</span>] <span class="co"># drop all &#39;total&#39; aggregations</span></span>
<span id="cb14-20"><a href="#cb14-20" aria-hidden="true" tabindex="-1"></a><span class="co"># Aggregate different measures of large scale water supply and sanitation</span></span>
<span id="cb14-21"><a href="#cb14-21" aria-hidden="true" tabindex="-1"></a>wateraid.loc[wateraid[(wateraid[<span class="st">&#39;SECTOR&#39;</span>] <span class="op">==</span> <span class="dv">14021</span>) <span class="op">|</span> (wateraid[<span class="st">&#39;SECTOR&#39;</span>] <span class="op">==</span> <span class="dv">14022</span>)].index, <span class="st">&#39;SECTOR&#39;</span>] <span class="op">=</span> <span class="dv">14020</span></span>
<span id="cb14-22"><a href="#cb14-22" aria-hidden="true" tabindex="-1"></a>wateraid.loc[wateraid[(wateraid[<span class="st">&#39;SECTOR&#39;</span>] <span class="op">==</span> <span class="dv">14020</span>)].index, <span class="st">&#39;Sector&#39;</span>] <span class="op">=</span> <span class="st">&quot;Water supply and sanitation - large systems&quot;</span></span>
<span id="cb14-23"><a href="#cb14-23" aria-hidden="true" tabindex="-1"></a><span class="co"># Aggregate different measures of individual water supply and sanitation</span></span>
<span id="cb14-24"><a href="#cb14-24" aria-hidden="true" tabindex="-1"></a>wateraid.loc[wateraid[(wateraid[<span class="st">&#39;SECTOR&#39;</span>] <span class="op">==</span> <span class="dv">14031</span>) <span class="op">|</span> (wateraid[<span class="st">&#39;SECTOR&#39;</span>] <span class="op">==</span> <span class="dv">14032</span>)].index, <span class="st">&#39;SECTOR&#39;</span>] <span class="op">=</span> <span class="dv">14030</span></span>
<span id="cb14-25"><a href="#cb14-25" aria-hidden="true" tabindex="-1"></a>wateraid.loc[wateraid[(wateraid[<span class="st">&#39;SECTOR&#39;</span>] <span class="op">==</span> <span class="dv">14030</span>)].index, <span class="st">&#39;Sector&#39;</span>] <span class="op">=</span> <span class="st">&quot;Basic drinking water supply and basic sanitation&quot;</span></span>
<span id="cb14-26"><a href="#cb14-26" aria-hidden="true" tabindex="-1"></a></span>
<span id="cb14-27"><a href="#cb14-27" aria-hidden="true" tabindex="-1"></a><span class="co"># Group by sector per year and sum all values</span></span>
<span id="cb14-28"><a href="#cb14-28" aria-hidden="true" tabindex="-1"></a>wateraid_grouped <span class="op">=</span> wateraid.groupby([<span class="st">&#39;Year&#39;</span>, <span class="st">&#39;Sector&#39;</span>]).agg({<span class="st">&#39;Value&#39;</span>: [<span class="st">&#39;sum&#39;</span>]})</span>
<span id="cb14-29"><a href="#cb14-29" aria-hidden="true" tabindex="-1"></a>wateraid_grouped <span class="op">=</span> wateraid_grouped.reset_index([<span class="st">&#39;Year&#39;</span>, <span class="st">&#39;Sector&#39;</span>])</span>
<span id="cb14-30"><a href="#cb14-30" aria-hidden="true" tabindex="-1"></a>wateraid_grouped.columns <span class="op">=</span> wateraid_grouped.columns.to_flat_index()</span>
<span id="cb14-31"><a href="#cb14-31" aria-hidden="true" tabindex="-1"></a>wateraid_grouped.columns <span class="op">=</span> [<span class="st">&#39;Year&#39;</span>, <span class="st">&#39;Sector&#39;</span>, <span class="st">&#39;Value&#39;</span>]</span>
<span id="cb14-32"><a href="#cb14-32" aria-hidden="true" tabindex="-1"></a>crosstab <span class="op">=</span> pd.crosstab(wateraid_grouped[<span class="st">&#39;Year&#39;</span>], wateraid_grouped[<span class="st">&#39;Sector&#39;</span>], margins<span class="op">=</span><span class="va">True</span>, values<span class="op">=</span>wateraid_grouped[<span class="st">&#39;Value&#39;</span>], aggfunc<span class="op">=</span><span class="st">&#39;sum&#39;</span>)</span>
<span id="cb14-33"><a href="#cb14-33" aria-hidden="true" tabindex="-1"></a></span>
<span id="cb14-34"><a href="#cb14-34" aria-hidden="true" tabindex="-1"></a><span class="co"># Rename and reorder columns</span></span>
<span id="cb14-35"><a href="#cb14-35" aria-hidden="true" tabindex="-1"></a>crosstab.columns <span class="op">=</span> [<span class="st">&#39;Basic water supply&#39;</span>, <span class="st">&#39;Education and training&#39;</span>, <span class="st">&#39;Large water supply&#39;</span>, <span class="st">&#39;All&#39;</span>]</span>
<span id="cb14-36"><a href="#cb14-36" aria-hidden="true" tabindex="-1"></a>crosstab <span class="op">=</span> crosstab[[<span class="st">&#39;Basic water supply&#39;</span>, <span class="st">&#39;Large water supply&#39;</span>, <span class="st">&#39;Education and training&#39;</span>, <span class="st">&#39;All&#39;</span>]]</span>
<span id="cb14-37"><a href="#cb14-37" aria-hidden="true" tabindex="-1"></a></span>
<span id="cb14-38"><a href="#cb14-38" aria-hidden="true" tabindex="-1"></a>Markdown(tabulate(crosstab.fillna(<span class="st">&quot;0.00&quot;</span>), headers<span class="op">=</span><span class="st">&quot;keys&quot;</span>, tablefmt<span class="op">=</span><span class="st">&quot;github&quot;</span>, floatfmt<span class="op">=</span><span class="st">&quot;.2f&quot;</span>))</span></code><button title="Copy to Clipboard" class="code-copy-button"><i class="bi"></i></button></pre></div>
</details>
2022-09-08 15:30:55 +00:00
<div class="cell-output cell-output-display column-page" data-execution_count="17">
<div id="tbl-uga-aid-watersupply" class="anchored">
2022-09-08 15:30:55 +00:00
<table class="table table-sm table-striped">
<caption>Table 2: ODA projects of water and sanitation supply in Uganda per year, separated by project type</caption>
<colgroup>
<col style="width: 9%">
<col style="width: 25%">
<col style="width: 25%">
<col style="width: 30%">
<col style="width: 9%">
</colgroup>
<thead>
<tr class="header">
<th>Year</th>
<th>Basic water supply</th>
<th>Large water supply</th>
<th>Education and training</th>
<th>All</th>
</tr>
</thead>
<tbody>
<tr class="odd">
<td>2011</td>
<td>10.74</td>
<td>17.00</td>
<td>14.53</td>
<td>42.27</td>
</tr>
<tr class="even">
<td>2012</td>
<td>26.08</td>
<td>30.15</td>
<td>12.40</td>
<td>68.63</td>
</tr>
<tr class="odd">
<td>2013</td>
<td>10.18</td>
<td>49.49</td>
<td>4.54</td>
<td>64.21</td>
</tr>
<tr class="even">
<td>2014</td>
<td>21.06</td>
<td>37.09</td>
<td>0.42</td>
<td>58.58</td>
</tr>
<tr class="odd">
<td>2015</td>
<td>22.28</td>
<td>51.68</td>
<td>0.20</td>
<td>74.16</td>
</tr>
<tr class="even">
<td>2016</td>
<td>12.18</td>
<td>72.62</td>
<td>0.00</td>
<td>84.80</td>
</tr>
<tr class="odd">
<td>2017</td>
<td>14.17</td>
<td>94.10</td>
<td>0.10</td>
<td>108.37</td>
</tr>
<tr class="even">
<td>2018</td>
<td>10.77</td>
<td>110.02</td>
<td>0.06</td>
<td>120.85</td>
</tr>
<tr class="odd">
<td>2019</td>
<td>16.03</td>
<td>89.60</td>
<td>0.49</td>
<td>106.12</td>
</tr>
<tr class="even">
<td>2020</td>
<td>21.08</td>
<td>125.15</td>
<td>0.20</td>
<td>146.43</td>
</tr>
<tr class="odd">
<td>All</td>
<td>164.57</td>
<td>676.89</td>
<td>32.96</td>
<td>874.42</td>
</tr>
</tbody>
</table>
</div>
</div>
</div>
2022-09-08 15:30:55 +00:00
<div data-custom-style="caption">
<p>Note: Values shown are for all Official Development Assistance flows valid under the OECD CRS data, calculated as constant currency (2020 corrected) USD millions. The categories under analysis are large- and small-scale water supply and sanitation infrastructure projects as well as education and training for the management of water supply infrastructure. Source: Authors elaboration based on OECD ODA CRS (2022).</p>
2022-09-08 15:30:55 +00:00
</div>
2022-09-29 12:09:20 +00:00
<p>The breakdown of development aid to water supply infrastructure and education projects can be seen in <a href="#tbl-uga-aid-watersupply">Table 2</a>. It shows that overall the contributions to improve water access have been increasing, starting at 42.27m USD in 2011 and climbing to 146.43m USD by 2020. The development funds are broken down into three categories: Basic water supply improvement, large water supply improvement and education and training.</p>
2022-09-08 15:30:55 +00:00
<p>Education and training encompasses training for both professionals in the field itself and service providers. Water supply improvement is broken down into funds for large systems — potable water treatment plants, intake works, large pumping stations and storage, as well as large-scale transmission and distribution systems — and more individual-level basic water supply, such as handpumps, gravity wells, rainwater collection systems, storage tanks, and smaller, often shared, distributions systems. The basic water supply encompasses a more endpoint-oriented collection of measures, often situated in rural locations. Both the large and small scale categories encompass sanitation, with larger-scale sewage pumping stations and trunk sewers, as well as smaller on-site disposal and sanitation systems, latrines and alternative systems. This is due to most infrastructure projects missing the concrete dimensions to separate water supply from sanitation in the data, either due to infrastructural overlap or missing data points.</p>
2022-09-29 12:09:20 +00:00
<p>The split shows that while basic water supply infrastructure projects tended to see contributions between 10m USD and 20m USD, with little overall increase from 2011 to 2020. Large-scale water supply and sanitation projects have, however, seen a significant increase over time, starting at a contribution of 17m USD in 2011 and receiving a 125.15m USD contribution in 2020. This may speak to the necessity of larger infrastructure in place before more basic water supply infrastructure can make use of it, or the provision of large infrastructure at the cost of implementations at smaller scales.</p>
2022-09-08 15:30:55 +00:00
<p>Education and training for water infrastructure management and service provision, while still receiving contributions of 14.53m USD and 12.40m USD in 2011 and 2012 respectively, significantly decrease over the next years to amounts continuously under one million. The monetary focus for aid provision thus lies on large-scale water supply and sanitation projects for these years.</p>
<div style="page-break-after: always;"></div>
</section>
</section>
<section id="benin" class="level2 page-columns page-full">
2022-08-19 12:02:37 +00:00
<h2 class="anchored" data-anchor-id="benin">Benin</h2>
<hr>
<ul>
2022-09-08 15:30:55 +00:00
<li>A stable and increasing real GDP growth rates but slow decrease in poverty levels.</li>
2022-08-19 12:02:37 +00:00
<li>Poverty affects households in poorly educated households in rural areas to much higher levels than urban areas.</li>
<li>Education disparities happen mainly along community-level dimensions through high socio-economic segregation of schools and different access to resources.</li>
<li>Large disparity of access to electricity between urban and rural households, which directly negatively affects the environmental conditions of individual rural households.</li>
<li>No access to electricity due to both lacking rural infrastructure and electrical grid connection costs being too high.</li>
<li>Rapid electrification will require both infrastructure expansion and policy commitment to finding ways of lowering grid connection costs.</li>
</ul>
<hr>
<!-- intro/overall -->
2022-09-29 11:28:32 +00:00
<p>Benin in recent years has seen fairly stable real GDP growth rates and downward trending poverty levels in absolute terms. Its growth rate averaged 6.4% for the years 2017 to 2019 and, with a decrease during the intermittent years due to the Covid-19 pandemic, has recovered to a rate of 6.6% in 2021 <span class="citation" data-cites="WorldBank2022b">(<a href="#ref-WorldBank2022b" role="doc-biblioref">World Bank, 2022e</a>)</span>. There only exists sporadic and fluctuating data on the countrys overall inequality, with the World Bank Development Index noting a Gini coefficient of 38.6 for the year (2003) before rising to 43.4 (2011) and up to 47.8 (2015), though decreasing below the 2003 level to 37.8 (2018) in its most recent calculation, see <a href="#fig-ben">Figure 7</a>. At the same time, the countrys poverty rate, even measured based on the international line, only decreased at a very slow rate in its most recent years, from a share of households in poverty at 18.8% in 2019, to 18.7% in 2020 and 18.3% at the end of 2021, with the reduction threatened to be slowed further through increased prices on food and energy <span class="citation" data-cites="WorldBank2022b">(<a href="#ref-WorldBank2022b" role="doc-biblioref">World Bank, 2022e</a>)</span>.</p>
2022-09-08 15:30:55 +00:00
<div class="cell" data-execution_count="18">
2022-08-20 14:45:26 +00:00
<details>
<summary>Code</summary>
2022-09-08 15:30:55 +00:00
<div class="sourceCode cell-code" id="cb15"><pre class="sourceCode python code-with-copy"><code class="sourceCode python"><span id="cb15-1"><a href="#cb15-1" aria-hidden="true" tabindex="-1"></a>gni_cnsmpt <span class="op">=</span> ben[ben[<span class="st">&#39;resource&#39;</span>].<span class="bu">str</span>.contains(<span class="st">&quot;Consumption&quot;</span>)]</span>
<span id="cb15-2"><a href="#cb15-2" aria-hidden="true" tabindex="-1"></a>gni_cnsmpt_percapita <span class="op">=</span> gni_cnsmpt[gni_cnsmpt[<span class="st">&#39;scale&#39;</span>].<span class="bu">str</span>.contains(<span class="st">&quot;Per capita&quot;</span>)]</span>
<span id="cb15-3"><a href="#cb15-3" aria-hidden="true" tabindex="-1"></a>gini_plot(gni_cnsmpt_percapita)</span></code><button title="Copy to Clipboard" class="code-copy-button"><i class="bi"></i></button></pre></div>
2022-08-20 14:45:26 +00:00
</details>
<div class="cell-output cell-output-display">
2022-08-20 15:56:33 +00:00
<div id="fig-ben" class="quarto-figure quarto-figure-center anchored">
2022-08-20 14:45:26 +00:00
<figure class="figure">
<p><img src="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAArwAAAH0CAYAAADfWf7fAAAgAElEQVR4Xu29CZRW1ZWwvYWqoqpAQIpJRSVhiiAqBpPgkGBDEm2TzyxNJ5+mO0ujae3hM+mVRG2TNhiiiQJJS9NgugHtmBWUIGmNojHS+VUcaCTgTFDihEGoKiaLKmb+dW4NVAHFYd8z1Fvvee5aLtHa+9x7nn2Ap3ad99yj9u3bt0+4IAABCEAAAhCAAAQgUKQEjkJ4i7SyTAsCEIAABCAAAQhAICOA8LIQIAABCEAAAhCAAASKmgDCW9TlZXIQgAAEIAABCEAAAggvawACEIAABCAAAQhAoKgJILxFXV4mBwEIQAACEIAABCCA8LIGIAABCEAAAhCAAASKmgDCW9TlZXIQgAAEIAABCEAAAggvawACEIAABCAAAQhAoKgJILxFXV4mBwEIQAACEIAABCCA8LIGIAABCEAAAhCAAASKmgDCW9TlZXIQgAAEIAABCEAAAggvawACEIAABCAAAQhAoKgJILxFXV4mBwEIQAACEIAABCCA8LIGIAABCEAAAhCAAASKmgDCW9TlZXIQgAAEIAABCEAAAggvawACEIAABCAAAQhAoKgJILxFXV4mBwEIQAACEIAABCCA8LIGIAABCEAAAhCAAASKmgDCW9TlZXIQgAAEIAABCEAAAggvawACEIAABCAAAQhAoKgJILxFXV4mBwEIQAACEIAABCCA8LIGIAABCEAAAhCAAASKmgDCW9TlZXIQgAAEIAABCEAAAggvawACEIAABCAAAQhAoKgJILxFXV4mBwEIQAACEIAABCCA8LIGIAABCEAAAhCAAASKmgDCW9TlZXIQgAAEIAABCEAAAggvawACEIAABCAAAQhAoKgJILxFXV4mBwEIQAACEIAABCCA8LIGIAABCEAAAhCAAASKmgDCW9TlZXIQgAAEIAABCEAAAggvawACEIAABCAAAQhAoKgJILxFXV4mBwEIQAACEIAABCCA8LIGIAABCEAAAhCAAASKmgDCW9TlZXIQgAAEIAABCEAAAggvawACEIAABCAAAQhAoKgJILxFXV4mBwEIQAACEIAABCCA8LIGIAABCEAAAhCAAASKmgDCW9TlZXIQgAAEIAABCEAAAggvawACEIAABCAAAQhAoKgJILxFXV4mBwEIQAACEIAABCCA8LIGIAABCEAAAhCAAASKmgDCW9TlZXIQgAAEIAABCEAAAggvawACEIAABCAAAQhAoKgJILxFXV4mBwEIQAACEIAABCCA8LIGIAABCEAAAhCAAASKmgDCW9TlZXIQgAAEIAABCEAAAggvawACEIAABCAAAQhAoKgJILxFXV4mBwEIQAACEIAABCCA8LIGIAABCEAAAhCAAASKmgDCW9TlZXIQgAAEIAABCEAAAggvawACEIAABCAAAQhAoKgJILxFXV4mBwEIQAACEIAABCCA8LIGIAABCEAAAhCAAASKmkBSwrtq1Sq544475PHHH5elS5dKnz59Wor7xBNPyOTJk6WhoUGGDh0q06ZNk759+2ZfP9zXinp1MDkIQAACEIAABCBQBASSEt5vfvObcskll8hVV10lzz77bIvwbt26VSZOnChz5syR0aNHy4wZM2T16tUyffp0OdzXiqD+TAECEIAABCAAAQgUPYGkhLe5miNGjGgjvIsWLZKFCxfK7Nmzs5C6ujoZN26cLF++POsGt/e1srKyol8gTBACEIAABCAAAQh0dgIIr4jMnDlTampq5KabbmqppxHeefPmiZHh9r42ePDgzl5/nh8CEIAABCAAAQgUPQGEVyTbr7tnzx657rrrWgo+fvz4TIQfeeSRdr82cuTIol8gTBACEIAABCAAAQh0dgIIr4jMmjVLqqur23R4x44dKwsWLMiEt72vmQ5vdfUHnX0NdJrnP+ookaqqo6WmBuadpmgF/KBHHXWU9OnTXWpr6wr4KXm0zkKgS5ej5JhjWE+dpV6F/pxdu3aRXr0qZOPGbS2P2q/f0YX+2AX9fAiviDz66KMyf/58mTt3blas2tpaOe+887I9vIsXL273a6WlpQhvxOWN8EaEncCtEN4EihxxighvRNgJ3Arh9V9khLfpQ2oTJkzIPrRmTmmYOnWqrF+/XqZMmZJ9gK29r5ly0OH1vyjbGxHhjcc6hTshvClUOd4cEd54rFO4E8Lrv8rJCO+WLVvkwgsvzAgame3Xr5906dJFHnzwwex4siVLlsikSZNk27ZtMmrUqEx6e/funcUf7msIr/9FifDGY5rynRDelKvvf+4Ir3+mKY+I8PqvfjLC6x9d44gIbyiyB49Lhzce6xTuhPCmUOV4c0R447FO4U4Ir/8qI7yOTBFeR4CKdIRXAYtQKwGE14qIAAUBhFcBi1ArAYTXikgdgPCqkbVNQHgdASrSEV4FLEKtBBBeKyICFAQQXgUsQq0EEF4rInUAwqtGhvA6IsudjvDmRkfiIQggvCwLnwQQXp80GQvh9b8GEF5HpnR4HQEq0hFeBSxCrQQQXisiAhQEEF4FLEKtBBBeKyJ1AMKrRkaH1xFZ7nSENzc6EunwsgYCE0B4AwNObHiE13/BEV5HpnR4HQEq0hFeBSxCrQTo8FoREaAggPAqYBFqJYDwWhGpAxBeNTI6vI7IcqcjvLnRkUiHlzUQmADCGxhwYsMjvP4LjvA6MqXD6whQkY7wKmARaiVAh9eKiAAFAYRXAYtQKwGE14pIHYDwqpHR4XVEljsd4c2NjkQ6vKyBwAQQ3sCAExse4fVfcITXkSkdXkeAinSEVwGLUCsBOrxWRAQoCCC8CliEWgkgvFZE6gCEV42MDq8jstzpCG9udCTS4WUNBCaA8AYGnNjwCK//giO8jkzp8DoCVKQjvApYhFoJ0OG1IiJAQQDhVcAi1EoA4bUiUgcgvGpkdHgdkeVOR3hzoyORDi9rIDABhDcw4MSGR3j9FxzhdWRKh9cRoCId4VXAItRKgA6vFREBCgIIrwIWoVYCCK8VkToA4VUjo8PriCx3OsKbGx2JdHhZA4EJILyBASc2PMLrv+AIryNTOryOABXpCK8CFqFWAnR4rYgIUBBAeBWwCLUSQHitiNQBCK8aGR1eR2S50xHe3OhIpMPLGghMAOENDDix4RFe/wVHeB2Z0uF1BKhIR3gVsAi1EqDDa0VEgIIAwquARaiVAMJrRaQOQHjVyOjwOiLLnY7w5kZHIh1e1kBgAghvYMCJDY/w+i84wuvIlA6vI0BFOsKrgEWolQAdXisiAhQEEF4FLEKtBBBeKyJ1AMKrRkaH1xFZ7nSENzc6EunwsgYCE0B4AwNObHiE13/BEV5HpnR4HQEq0hFeBSxCrQTo8FoREaAggPAqYBFqJYDwWhGpAxBeNTI6vI7IcqcjvLnRkUiHlzUQmADCGxhwYsMjvP4LjvA6MqXD6whQkY7wKmARaiVAh9eKiAAFAYRXAYtQKwGE14pIHYDwqpHR4XVEljsd4c2NjkQ6vKyBwAQQ3sCAExse4fVfcITXkSkdXkeAinSEVwGLUCsBOrxWRAQoCCC8CliEWgkgvFZE6gCEV42MDq8jstzpCG9udCTS4WUNBCaA8AYGnNjwCK//giO8jkzp8DoCVKQjvApYhFoJ0OG1IiJAQQDhVcAi1EoA4bUiUgcgvGpkdHgdkeVOR3hzoyORDi9rIDABhDcw4MSGR3j9FxzhdWRKh9cRoCId4VXAItRKgA6vFREBCgIIrwIWoVYCCK8VkToA4VUjo8PriCx3OsKbGx2JdHhZA4EJILyBASc2PMLrv+AIryNTOryOABXpCK8CFqFWAnR4rYgIUBBAeBWwCLUSQHitiNQBCK8aGR1eR2S50xHe3OhIpMPLGghMAOENDDix4RFe/wVHeB2Z0uF1BKhIR3gVsAi1EqDDa0VEgIIAwquARaiVAMJrRaQOQHjVyOjwOiLLnY7w5kZHIh1e1kBgAghvYMCJDY/w+i84wuvIlA6vI0BFOsKrgEWolQAdXisiAhQEEF4FLEKtBBBeKyJ1AMKrRkaH1xFZ7nSENzc6Eunw
2022-09-08 15:30:55 +00:00
<p></p><figcaption class="figure-caption">Figure 7: Gini index of consumption per capita for Benin</figcaption><p></p>
2022-08-20 14:45:26 +00:00
</figure>
</div>
</div>
</div>
2022-09-08 15:30:55 +00:00
<div data-custom-style="caption">
<p>Source: Authors elaboration based on UNU-WIDER WIID (2022).</p>
</div>
2022-08-19 12:02:37 +00:00
<!-- poverty -->
2022-09-29 11:28:32 +00:00
<p>Based on its national poverty line, Benins overall poverty rate is 38.5%, though it hides a strong spatial disparity in the incidence of poverty between rural (44.2%) and urban (31.4) areas <span class="citation" data-cites="WorldBank2022b">(<a href="#ref-WorldBank2022b" role="doc-biblioref">World Bank, 2022e</a>)</span>. Looking at the effect of income growth on the time to exit poverty, <span class="citation" data-cites="Alia2017">Alia (<a href="#ref-Alia2017" role="doc-biblioref">2017</a>)</span> finds a general negative correlation with stronger growth indeed leading to shorter average exit times (7-10 years for a household at a per capita growth rate of 4.2%), though this aggregate also hides a large heterogeneity primarily determined by a households size, its available human capital and whether it is located rurally. So while the study does conclude for an overall equitable pro-poor growth in Benin, rural households, beside already being relatively more poverty stricken, are in danger of being left further behind during periods of overall growth. <span class="citation" data-cites="Djossou2017">Djossou et al. (<a href="#ref-Djossou2017" role="doc-biblioref">2017</a>)</span> find similar pro-poor growth with spatial disparities but surprisingly see urban households potentially benefiting less than rural households from additional growth, with efforts to open up communities to harness the benefits of growth often primarily targeted at rural communities.</p>
2022-08-19 12:02:37 +00:00
<!-- drivers: endowment/assets: education, ..? -->
2022-09-29 11:28:32 +00:00
<p>Using the Learning Poverty index, which combines the share of school deprivation (the share of primary-aged children out-of-school) and learning deprivation (share of pupils below a minimum proficiency in reading), a <span class="citation" data-cites="WorldBank2022a">World Bank (<a href="#ref-WorldBank2022a" role="doc-biblioref">2022b</a>)</span> report shows that 56% of children at late primary age in Benin are not proficient in reading, 55% do not achieve minimum proficiency levels at the end of primary school and 3% of primary school-aged children are not enrolled in school at all. <!-- TODO These levels are higher than in Uganda, though, since ... gender dimension? --> Looking purely at attendance rates, <span class="citation" data-cites="McNabb2018">McNabb (<a href="#ref-McNabb2018" role="doc-biblioref">2018</a>)</span> finds that the primary household-level determinants of attendance are the wealth of a household, its religion, as well as the education level of its household head. Here, gender disparities persist, however, with girls continuously less likely to attend and adopted girls being at the greatest disadvantage, while boys tend to face higher opportunity costs than girls due to often working in the fields in which case the distance to a school begins to play an important role. While the household-level variables do play a role — through the availability of educational resources at home, differences in schooling quality and overall health and well-being — <span class="citation" data-cites="Gruijters2020">Gruijters &amp; Behrman (<a href="#ref-Gruijters2020" role="doc-biblioref">2020</a>)</span> find that most of the disparity stems from the community-level: the difference in school quality is large, marked by high socio-economic segregation between schools, and primarily determined through an unequal distribution of teaching resources including teachers and textbooks.</p>
2022-09-08 15:30:55 +00:00
<p>Thus, while growth is generally pro-poor in Benin, its primary determinants do not cluster only at the household level, but are comprised of partly household-level but especially community-level differences.</p>
<section id="inequalities-in-access-to-electricity" class="level3">
<h3 class="anchored" data-anchor-id="inequalities-in-access-to-electricity">Inequalities in access to electricity</h3>
2022-08-19 12:02:37 +00:00
<!-- electricity access -->
2022-09-29 11:28:32 +00:00
<p>One of the foremost examples of the effects of inequal endowments can have is brought by <span class="citation" data-cites="VanDePoel2009">Van De Poel et al. (<a href="#ref-VanDePoel2009" role="doc-biblioref">2009</a>)</span> when they look at the determinants of rural infant death rates in Benin among others and find that environmental factors — such as access to a safe water source, quality housing materials and electricity — are the primary determinants, ahead even of access to a health facility in the community. Access to electricity in the country especially underlies a large heterogeneity based on location. The overall level of electrification of Benin has been rising slowly — though outpacing population growth — from 22% in 2000 to 26% in 2005, 34% in 2010, a decline to 30% in 2015 and then a faster increase to 40% in 2019, although a broad difference in electrification levels between urban (65%) and rural (17%) regions remain <span class="citation" data-cites="WorldBank2021">(<a href="#ref-WorldBank2021" role="doc-biblioref">World Bank, 2021b</a>)</span>.</p>
2022-09-08 15:30:55 +00:00
<p>In rural areas there are generally three approaches to electrification that work outside of a connection to the main grid, individual installation of solar panels or generators for smaller electric appliances, collective solutions like kiosks offering electric charging for some cost, or autonomous mini-grids powering a portion of a more densely populated rural area (though often requiring permits or licenses if above certain sizes) <span class="citation" data-cites="Jaglin2019">(<a href="#ref-Jaglin2019" role="doc-biblioref">Jaglin, 2019</a>)</span>.</p>
<p><span class="citation" data-cites="Rateau2022">Rateau &amp; Choplin (<a href="#ref-Rateau2022" role="doc-biblioref">2022</a>)</span> see one of the primary reasons for off-grid electrification in either physical unavailability in rural areas or a prohibitively high cost for connection to the grid. However, these more individualized solutions are often only targeted at credit-worthy customers and can lead to a further increase in inequalities between income percentiles, leaving behind households which are already neglected within the field of energy access <span class="citation" data-cites="Barry2020">(<a href="#ref-Barry2020" role="doc-biblioref">Barry &amp; Creti, 2020</a>)</span>. The former, physical access, is argued by <span class="citation" data-cites="Djossou2017">Djossou et al. (<a href="#ref-Djossou2017" role="doc-biblioref">2017</a>)</span> as well, emphasizing the need for continued infrastructure expansion to more households, in order to provide access to more durable goods (fridges, mobile phones and internet) which can help decrease the inequality gap. The latter, prohibitively high costs, should not be disregarded in such an infrastructure expansion as well, however.</p>
<p>One of the major obstacles to main grid connection remains the high charge a customer is expected to pay with solutions requiring continued political commitment to identify, examine and implement more low-cost electrification processes as well as financing solutions. <span class="citation" data-cites="Golumbeanu2013">Golumbeanu &amp; Barnes (<a href="#ref-Golumbeanu2013" role="doc-biblioref">2013</a>)</span> point out the main obstacles that need to be addressed here: the lack of incentives to increase electrical affordability, a weak utilities commitment toward providing broad electricity access with focus often lying more on high-consumption urban markets, often overrated technical specifications for low loads, too great distances between households and distribution poles in an area, and an overall lack of affordable financing solutions.</p>
2022-08-19 12:02:37 +00:00
<!-- conclusion -->
<p>Thus, though having a relatively stable and growing real GDP, Benin suffers from slow decreases in its poverty rates coupled with a relative unchanged income inequality. Additionally, the countrys poverty rates have a high heterogeneity with relatively more rural households and households with poor education in poverty. A large part of education disparities happens at the community-level, with schools marked by high socio-economic segregation, but household-level disparities, especially environmental ones, playing a role. One of those determinants is a households access to electricity, of which there is an enormous disparity between urban and rural households. The primary reasons for not having access to electricity are the lack of physical infrastructure available in rural areas, as well as connection costs to the main electrical grid being too high. To decrease the effects of this driving force of inequality, both infrastructural expansion as well as policy commitments toward affordable connections to electrical grids are thus of vital importance.</p>
<!-- development assistance -->
2022-08-19 12:02:37 +00:00
</section>
<section id="development-assistance-to-benin" class="level3 page-columns page-full">
<h3 class="anchored" data-anchor-id="development-assistance-to-benin">Development assistance to Benin</h3>
2022-09-08 15:30:55 +00:00
<div class="cell" data-execution_count="19">
<details>
<summary>Code</summary>
2022-09-08 15:30:55 +00:00
<div class="sourceCode cell-code" id="cb16"><pre class="sourceCode python code-with-copy"><code class="sourceCode python"><span id="cb16-1"><a href="#cb16-1" aria-hidden="true" tabindex="-1"></a><span class="co"># Load CRS data</span></span>
<span id="cb16-2"><a href="#cb16-2" aria-hidden="true" tabindex="-1"></a>dfsub1 <span class="op">=</span> pd.read_csv(<span class="st">&#39;data/raw/OECD_CRS/CRS1_Benin_11-13_05092022185506030.csv&#39;</span>, parse_dates<span class="op">=</span><span class="va">True</span>, low_memory<span class="op">=</span><span class="va">False</span>)</span>
<span id="cb16-3"><a href="#cb16-3" aria-hidden="true" tabindex="-1"></a>dfsub2 <span class="op">=</span> pd.read_csv(<span class="st">&#39;data/raw/OECD_CRS/CRS1_Benin_14-16_05092022192438936.csv&#39;</span>, parse_dates<span class="op">=</span><span class="va">True</span>, low_memory<span class="op">=</span><span class="va">False</span>)</span>
<span id="cb16-4"><a href="#cb16-4" aria-hidden="true" tabindex="-1"></a>dfsub3 <span class="op">=</span> pd.read_csv(<span class="st">&#39;data/raw/OECD_CRS/CRS1_Benin_17-20_05092022192856890.csv&#39;</span>, parse_dates<span class="op">=</span><span class="va">True</span>, low_memory<span class="op">=</span><span class="va">False</span>)</span>
<span id="cb16-5"><a href="#cb16-5" aria-hidden="true" tabindex="-1"></a>df <span class="op">=</span> pd.concat([dfsub1, dfsub2, dfsub3], ignore_index<span class="op">=</span><span class="va">True</span>)</span>
<span id="cb16-6"><a href="#cb16-6" aria-hidden="true" tabindex="-1"></a>df <span class="op">=</span> df.rename(columns<span class="op">=</span>{<span class="st">&#39;</span><span class="ch">\ufeff</span><span class="st">&quot;DONOR&quot;&#39;</span>: <span class="st">&#39;DONOR&#39;</span>})</span></code><button title="Copy to Clipboard" class="code-copy-button"><i class="bi"></i></button></pre></div>
</details>
</div>
2022-09-08 15:30:55 +00:00
<div class="cell page-columns page-full" data-execution_count="20">
<details>
<summary>Code</summary>
2022-09-08 15:30:55 +00:00
<div class="sourceCode cell-code" id="cb17"><pre class="sourceCode python code-with-copy"><code class="sourceCode python"><span id="cb17-1"><a href="#cb17-1" aria-hidden="true" tabindex="-1"></a>totals <span class="op">=</span> df.loc[</span>
<span id="cb17-2"><a href="#cb17-2" aria-hidden="true" tabindex="-1"></a> (df[<span class="st">&#39;RECIPIENT&#39;</span>] <span class="op">==</span> <span class="dv">236</span>) <span class="op">&amp;</span> <span class="co"># Benin</span></span>
<span id="cb17-3"><a href="#cb17-3" aria-hidden="true" tabindex="-1"></a> (df[<span class="st">&#39;SECTOR&#39;</span>] <span class="op">==</span> <span class="dv">1000</span>) <span class="op">&amp;</span> <span class="co"># Total</span></span>
<span id="cb17-4"><a href="#cb17-4" aria-hidden="true" tabindex="-1"></a> (df[<span class="st">&#39;CHANNEL&#39;</span>] <span class="op">==</span> <span class="dv">100</span>) <span class="op">&amp;</span></span>
<span id="cb17-5"><a href="#cb17-5" aria-hidden="true" tabindex="-1"></a> (df[<span class="st">&#39;AMOUNTTYPE&#39;</span>] <span class="op">==</span> <span class="st">&#39;D&#39;</span>) <span class="op">&amp;</span></span>
<span id="cb17-6"><a href="#cb17-6" aria-hidden="true" tabindex="-1"></a> (df[<span class="st">&#39;FLOWTYPE&#39;</span>] <span class="op">==</span> <span class="dv">112</span>) <span class="op">&amp;</span></span>
<span id="cb17-7"><a href="#cb17-7" aria-hidden="true" tabindex="-1"></a> (df[<span class="st">&#39;AIDTYPE&#39;</span>] <span class="op">==</span> <span class="st">&quot;100&quot;</span>) <span class="co"># contains mixed int and string representations</span></span>
<span id="cb17-8"><a href="#cb17-8" aria-hidden="true" tabindex="-1"></a> ]</span>
<span id="cb17-9"><a href="#cb17-9" aria-hidden="true" tabindex="-1"></a>financetotals <span class="op">=</span> totals.copy()</span>
<span id="cb17-10"><a href="#cb17-10" aria-hidden="true" tabindex="-1"></a>financetotals <span class="op">=</span> financetotals[financetotals[<span class="st">&#39;DONOR&#39;</span>] <span class="op">&lt;</span> <span class="dv">20000</span>] <span class="co"># drop all &#39;total&#39; aggregations</span></span>
<span id="cb17-11"><a href="#cb17-11" aria-hidden="true" tabindex="-1"></a></span>
<span id="cb17-12"><a href="#cb17-12" aria-hidden="true" tabindex="-1"></a><span class="co">## count amount of development aid financing instruments (grants/loans) by year and display</span></span>
<span id="cb17-13"><a href="#cb17-13" aria-hidden="true" tabindex="-1"></a><span class="co">## count USD amount of development aid financing instumrnets by year and display</span></span>
<span id="cb17-14"><a href="#cb17-14" aria-hidden="true" tabindex="-1"></a>financetotals_grouped <span class="op">=</span> financetotals.groupby([<span class="st">&#39;Flow&#39;</span>, <span class="st">&#39;Year&#39;</span>]).agg({<span class="st">&#39;Value&#39;</span>: [<span class="st">&#39;sum&#39;</span>]})</span>
<span id="cb17-15"><a href="#cb17-15" aria-hidden="true" tabindex="-1"></a>financetotals_grouped <span class="op">=</span> financetotals_grouped.reset_index([<span class="st">&#39;Flow&#39;</span>, <span class="st">&#39;Year&#39;</span>])</span>
<span id="cb17-16"><a href="#cb17-16" aria-hidden="true" tabindex="-1"></a>financetotals_grouped.columns <span class="op">=</span> financetotals_grouped.columns.to_flat_index()</span>
<span id="cb17-17"><a href="#cb17-17" aria-hidden="true" tabindex="-1"></a>financetotals_grouped.columns <span class="op">=</span> [<span class="st">&#39;Financetype&#39;</span>, <span class="st">&#39;Year&#39;</span>, <span class="st">&#39;Value&#39;</span>]</span>
<span id="cb17-18"><a href="#cb17-18" aria-hidden="true" tabindex="-1"></a></span>
<span id="cb17-19"><a href="#cb17-19" aria-hidden="true" tabindex="-1"></a>fig <span class="op">=</span> px.line(financetotals_grouped, x<span class="op">=</span><span class="st">&#39;Year&#39;</span>, y<span class="op">=</span><span class="st">&#39;Value&#39;</span>, color<span class="op">=</span><span class="st">&#39;Financetype&#39;</span>, labels<span class="op">=</span>{<span class="st">&quot;Value&quot;</span>: <span class="st">&quot;Development aid amount, in millions of USD&quot;</span>}, markers<span class="op">=</span><span class="va">True</span>, template<span class="op">=</span><span class="st">&quot;seaborn&quot;</span>)</span>
<span id="cb17-20"><a href="#cb17-20" aria-hidden="true" tabindex="-1"></a><span class="co"># 0-figure</span></span>
<span id="cb17-21"><a href="#cb17-21" aria-hidden="true" tabindex="-1"></a>fig.update_yaxes(rangemode<span class="op">=</span><span class="st">&quot;tozero&quot;</span>)</span>
<span id="cb17-22"><a href="#cb17-22" aria-hidden="true" tabindex="-1"></a>fig.show()</span></code><button title="Copy to Clipboard" class="code-copy-button"><i class="bi"></i></button></pre></div>
</details>
<div class="cell-output cell-output-display column-page">
<div id="fig-ben-aid-financetype" class="quarto-figure quarto-figure-center anchored">
<figure class="figure">
2022-09-08 15:30:55 +00:00
<p><img src="data:image/png;base64,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
<p></p><figcaption class="figure-caption">Figure 8: Total ODA for Benin per year, by financing type</figcaption><p></p>
</figure>
</div>
</div>
</div>
2022-09-08 15:30:55 +00:00
<div data-custom-style="caption">
<p>Note: Values shown are for all Official Development Assistance flows valid under the OECD CRS data, split into the type of financing flow, calculated as constant currency (2020 corrected) USD millions. Source: Authors elaboration based on OECD ODA CRS (2022).</p>
2022-09-08 15:30:55 +00:00
</div>
<p>The total amount of development aid for Benin registered by the OECD Creditor Reporting System has been fluctuating, with an overall upward trend since 2011: The aid broken down by financing type can be seen in <a href="#fig-ben-aid-financetype">Figure 8</a> and shows that money has predominantly been given by way of ODA grants, with roughly double the absolute monetary amount of ODA loans per year. There was an increase in both ODA grants and ODA loans which lead to a significant increase in total development assistance in 2017, and while loans decreased until 2019, grants steadily increased from 2018 to 2020. With loans also beginning to increase from 2019, the overall amount of development assistance saw a large increase in 2020, most likely predominantly due to Covid-19 pandemic related aid packages.</p>
2022-09-08 15:30:55 +00:00
<div class="cell page-columns page-full" data-execution_count="21">
<details>
<summary>Code</summary>
2022-09-08 15:30:55 +00:00
<div class="sourceCode cell-code" id="cb18"><pre class="sourceCode python code-with-copy"><code class="sourceCode python"><span id="cb18-1"><a href="#cb18-1" aria-hidden="true" tabindex="-1"></a>totals <span class="op">=</span> df.loc[</span>
<span id="cb18-2"><a href="#cb18-2" aria-hidden="true" tabindex="-1"></a> (df[<span class="st">&#39;RECIPIENT&#39;</span>] <span class="op">==</span> <span class="dv">236</span>) <span class="op">&amp;</span> <span class="co"># Benin</span></span>
<span id="cb18-3"><a href="#cb18-3" aria-hidden="true" tabindex="-1"></a> (df[<span class="st">&#39;SECTOR&#39;</span>] <span class="op">==</span> <span class="dv">1000</span>) <span class="op">&amp;</span> <span class="co"># Total</span></span>
<span id="cb18-4"><a href="#cb18-4" aria-hidden="true" tabindex="-1"></a> (df[<span class="st">&#39;FLOW&#39;</span>] <span class="op">==</span> <span class="dv">100</span>) <span class="op">&amp;</span></span>
<span id="cb18-5"><a href="#cb18-5" aria-hidden="true" tabindex="-1"></a> (df[<span class="st">&#39;CHANNEL&#39;</span>] <span class="op">==</span> <span class="dv">100</span>) <span class="op">&amp;</span></span>
<span id="cb18-6"><a href="#cb18-6" aria-hidden="true" tabindex="-1"></a> (df[<span class="st">&#39;AMOUNTTYPE&#39;</span>] <span class="op">==</span> <span class="st">&#39;D&#39;</span>) <span class="op">&amp;</span></span>
<span id="cb18-7"><a href="#cb18-7" aria-hidden="true" tabindex="-1"></a> (df[<span class="st">&#39;FLOWTYPE&#39;</span>] <span class="op">==</span> <span class="dv">112</span>) <span class="op">&amp;</span></span>
<span id="cb18-8"><a href="#cb18-8" aria-hidden="true" tabindex="-1"></a> (df[<span class="st">&#39;AIDTYPE&#39;</span>] <span class="op">==</span> <span class="st">&quot;100&quot;</span>) <span class="co"># contains mixed int and string representations</span></span>
<span id="cb18-9"><a href="#cb18-9" aria-hidden="true" tabindex="-1"></a> ]</span>
<span id="cb18-10"><a href="#cb18-10" aria-hidden="true" tabindex="-1"></a>donortotals <span class="op">=</span> totals.copy()</span>
<span id="cb18-11"><a href="#cb18-11" aria-hidden="true" tabindex="-1"></a>donortotals[<span class="st">&quot;Donortype&quot;</span>] <span class="op">=</span> donortotals[<span class="st">&quot;DONOR&quot;</span>].<span class="bu">map</span>(donortypes)</span>
<span id="cb18-12"><a href="#cb18-12" aria-hidden="true" tabindex="-1"></a>donortotals <span class="op">=</span> donortotals[(donortotals[<span class="st">&quot;Donortype&quot;</span>] <span class="op">!=</span> <span class="st">&quot;nondac&quot;</span>)]</span>
<span id="cb18-13"><a href="#cb18-13" aria-hidden="true" tabindex="-1"></a></span>
<span id="cb18-14"><a href="#cb18-14" aria-hidden="true" tabindex="-1"></a>donortotals_grouped <span class="op">=</span> donortotals.groupby([<span class="st">&#39;Donortype&#39;</span>, <span class="st">&#39;Year&#39;</span>]).agg({<span class="st">&#39;Value&#39;</span>: [<span class="st">&#39;sum&#39;</span>]})</span>
<span id="cb18-15"><a href="#cb18-15" aria-hidden="true" tabindex="-1"></a>donortotals_grouped <span class="op">=</span> donortotals_grouped.reset_index([<span class="st">&#39;Donortype&#39;</span>, <span class="st">&#39;Year&#39;</span>])</span>
<span id="cb18-16"><a href="#cb18-16" aria-hidden="true" tabindex="-1"></a>donortotals_grouped.columns <span class="op">=</span> donortotals_grouped.columns.to_flat_index()</span>
<span id="cb18-17"><a href="#cb18-17" aria-hidden="true" tabindex="-1"></a>donortotals_grouped.columns <span class="op">=</span> [<span class="st">&#39;Donortype&#39;</span>, <span class="st">&#39;Year&#39;</span>, <span class="st">&#39;Value&#39;</span>]</span>
<span id="cb18-18"><a href="#cb18-18" aria-hidden="true" tabindex="-1"></a>fig <span class="op">=</span> px.line(donortotals_grouped, x<span class="op">=</span><span class="st">&#39;Year&#39;</span>, y<span class="op">=</span><span class="st">&#39;Value&#39;</span>, color<span class="op">=</span><span class="st">&#39;Donortype&#39;</span>, labels<span class="op">=</span>{<span class="st">&quot;Value&quot;</span>: <span class="st">&quot;Development aid amount, in millions of USD&quot;</span>}, markers<span class="op">=</span><span class="va">True</span>, template<span class="op">=</span><span class="st">&quot;seaborn&quot;</span>)</span>
<span id="cb18-19"><a href="#cb18-19" aria-hidden="true" tabindex="-1"></a><span class="co"># 0-figure</span></span>
<span id="cb18-20"><a href="#cb18-20" aria-hidden="true" tabindex="-1"></a>fig.update_yaxes(rangemode<span class="op">=</span><span class="st">&quot;tozero&quot;</span>)</span>
<span id="cb18-21"><a href="#cb18-21" aria-hidden="true" tabindex="-1"></a>fig.show()</span></code><button title="Copy to Clipboard" class="code-copy-button"><i class="bi"></i></button></pre></div>
</details>
<div class="cell-output cell-output-display column-page">
<div id="fig-ben-aid-donortype" class="quarto-figure quarto-figure-center anchored">
<figure class="figure">
2022-09-08 15:30:55 +00:00
<p><img src="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAArwAAAH0CAYAAADfWf7fAAAgAElEQVR4XuydB3hUxfqHf9maDgmh9947CKFJE0RQig2Uy0UUUGz3iqBY8WKl+VeQJiIWikgRBUQQEOkgvSdIL5JGSNlsstnd/zMTg4S03Z2ds+dsvnkeH5A9882c9zuEN5PvzAQ4nU4nqBEBIkAEiAARIAJEgAgQAT8lEEDC66eZpdsiAkSACBABIkAEiAAR4ARIeOlBIAJEgAgQASJABIgAEfBrAiS8fp1eujkiQASIABEgAkSACBABEl56BogAESACRIAIEAEiQAT8mgAJr1+nl26OCBABIkAEiAARIAJEgISXngEiQASIABEgAkSACBABvyZAwuvX6aWbIwJEgAgQASJABIgAESDhpWeACBABIkAEiAARIAJEwK8JkPD6dXrp5ogAESACRIAIEAEiQARIeOkZIAJEgAgQASJABIgAEfBrAiS8fp1eujkiQASIABEgAkSACBABEl56BogAESACRIAIEAEiQAT8mgAJr1+nl26OCBABIkAEiAARIAJEgISXngEiQASIABEgAkSACBABvyZAwuvX6aWbIwJEgAgQASJABIgAESDhpWeACBABIkAEiAARIAJEwK8JkPD6dXrp5ogAESACRIAIEAEiQARIeOkZIAJEgAgQASJABIgAEfBrAiS8fp1eujkiQASIABEgAkSACBABEl56BogAESACRIAIEAEiQAT8mgAJr1+nl26OCBABIkAEiAARIAJEgISXngEiQASIABEgAkSACBABvyZAwuvX6aWbIwJEgAgQASJABIgAESDhpWeACBABIkAEiAARIAJEwK8JkPD6dXrp5ogAESACRIAIEAEiQARIeOkZIAJEgAgQASJABIgAEfBrAiS8fp1eujkiQASIABEgAkSACBABEl56BogAESACRIAIEAEiQAT8mgAJr1+nl26OCBABIkAEiAARIAJEgISXngEiQASIABEgAkSACBABvyZAwuvX6aWbIwJEgAgQASJABIgAESDhpWeACBABIkAEiAARIAJEwK8JkPD6dXrp5ogAESACRIAIEAEiQARIeOkZIAJEgAgQASJABIgAEfBrAiS8fp1eujkiQASIABEgAkSACBABEl56BogAESACRIAIEAEiQAT8mgAJr1+nl26OCBABIkAEiAARIAJEgISX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
<p></p><figcaption class="figure-caption">Figure 9: Total ODA for Benin per year, separated by donor type</figcaption><p></p>
</figure>
</div>
</div>
</div>
2022-09-08 15:30:55 +00:00
<div data-custom-style="caption">
<p>Note: Values shown are for all Official Development Assistance flows valid under the OECD ODA data, split into bilateral development donor countries (dac) and multilateral donors (mlt), as constant currency (2020 corrected) USD millions. Source: Authors elaboration based on OECD ODA CRS (2022).</p>
2022-09-08 15:30:55 +00:00
</div>
<p>The total amount of development aid for Benin registered by the OECD Creditor Reporting System, broken down into individual donor types can be seen in <a href="#fig-ben-aid-donortype">Figure 9</a>. It shows that bilateral development aid by individual member countries tended to be higher than that provided through multilateral donors until 2019. Beginning in 2020 this split reversed to higher development aid amounts donated through multilateral donors than individual bilateral aid.</p>
2022-09-08 15:30:55 +00:00
<div class="cell page-columns page-full" data-execution_count="22">
<details>
<summary>Code</summary>
2022-09-08 15:30:55 +00:00
<div class="sourceCode cell-code" id="cb19"><pre class="sourceCode python code-with-copy"><code class="sourceCode python"><span id="cb19-1"><a href="#cb19-1" aria-hidden="true" tabindex="-1"></a>totals <span class="op">=</span> df.loc[</span>
<span id="cb19-2"><a href="#cb19-2" aria-hidden="true" tabindex="-1"></a> (df[<span class="st">&#39;RECIPIENT&#39;</span>] <span class="op">==</span> <span class="dv">236</span>) <span class="op">&amp;</span> <span class="co"># Benin</span></span>
<span id="cb19-3"><a href="#cb19-3" aria-hidden="true" tabindex="-1"></a> ((df[<span class="st">&#39;SECTOR&#39;</span>] <span class="op">==</span> <span class="dv">23630</span>) <span class="op">|</span> (df[<span class="st">&#39;SECTOR&#39;</span>] <span class="op">==</span> <span class="dv">23631</span>)) <span class="op">&amp;</span> <span class="co"># Total</span></span>
<span id="cb19-4"><a href="#cb19-4" aria-hidden="true" tabindex="-1"></a> (df[<span class="st">&#39;CHANNEL&#39;</span>] <span class="op">==</span> <span class="dv">100</span>) <span class="op">&amp;</span></span>
<span id="cb19-5"><a href="#cb19-5" aria-hidden="true" tabindex="-1"></a> (df[<span class="st">&#39;AMOUNTTYPE&#39;</span>] <span class="op">==</span> <span class="st">&#39;D&#39;</span>) <span class="op">&amp;</span></span>
<span id="cb19-6"><a href="#cb19-6" aria-hidden="true" tabindex="-1"></a> ((df[<span class="st">&#39;FLOW&#39;</span>] <span class="op">==</span> <span class="dv">11</span>) <span class="op">|</span> (df[<span class="st">&#39;FLOW&#39;</span>] <span class="op">==</span> <span class="dv">13</span>)) <span class="op">&amp;</span> <span class="co"># Total</span></span>
<span id="cb19-7"><a href="#cb19-7" aria-hidden="true" tabindex="-1"></a> (df[<span class="st">&#39;FLOWTYPE&#39;</span>] <span class="op">==</span> <span class="dv">112</span>) <span class="op">&amp;</span></span>
<span id="cb19-8"><a href="#cb19-8" aria-hidden="true" tabindex="-1"></a> (df[<span class="st">&#39;AIDTYPE&#39;</span>] <span class="op">==</span> <span class="st">&quot;100&quot;</span>) <span class="co"># contains mixed int and string representations</span></span>
<span id="cb19-9"><a href="#cb19-9" aria-hidden="true" tabindex="-1"></a> ]</span>
<span id="cb19-10"><a href="#cb19-10" aria-hidden="true" tabindex="-1"></a>electricityaid <span class="op">=</span> totals[totals[<span class="st">&#39;DONOR&#39;</span>] <span class="op">&lt;</span> <span class="dv">20000</span>] <span class="co"># drop all &#39;total&#39; aggregations</span></span>
<span id="cb19-11"><a href="#cb19-11" aria-hidden="true" tabindex="-1"></a></span>
<span id="cb19-12"><a href="#cb19-12" aria-hidden="true" tabindex="-1"></a>el_grouped <span class="op">=</span> electricityaid.groupby([<span class="st">&#39;Year&#39;</span>, <span class="st">&#39;Flow&#39;</span>]).agg({<span class="st">&#39;Value&#39;</span>: [<span class="st">&#39;sum&#39;</span>]})</span>
<span id="cb19-13"><a href="#cb19-13" aria-hidden="true" tabindex="-1"></a>el_grouped <span class="op">=</span> el_grouped.reset_index([<span class="st">&#39;Year&#39;</span>, <span class="st">&#39;Flow&#39;</span>])</span>
<span id="cb19-14"><a href="#cb19-14" aria-hidden="true" tabindex="-1"></a>el_grouped.columns <span class="op">=</span> el_grouped.columns.to_flat_index()</span>
<span id="cb19-15"><a href="#cb19-15" aria-hidden="true" tabindex="-1"></a>el_grouped.columns <span class="op">=</span> [<span class="st">&#39;Year&#39;</span>, <span class="st">&#39;Flow&#39;</span>, <span class="st">&#39;Value&#39;</span>]</span>
<span id="cb19-16"><a href="#cb19-16" aria-hidden="true" tabindex="-1"></a></span>
<span id="cb19-17"><a href="#cb19-17" aria-hidden="true" tabindex="-1"></a>crosstab <span class="op">=</span> pd.crosstab(el_grouped[<span class="st">&#39;Year&#39;</span>], el_grouped[<span class="st">&#39;Flow&#39;</span>], margins<span class="op">=</span><span class="va">True</span>, values<span class="op">=</span>el_grouped[<span class="st">&#39;Value&#39;</span>], aggfunc<span class="op">=</span><span class="st">&#39;sum&#39;</span>)</span>
<span id="cb19-18"><a href="#cb19-18" aria-hidden="true" tabindex="-1"></a>Markdown(tabulate(crosstab.fillna(<span class="st">&quot;0.00&quot;</span>), headers<span class="op">=</span><span class="st">&quot;keys&quot;</span>, tablefmt<span class="op">=</span><span class="st">&quot;github&quot;</span>, floatfmt<span class="op">=</span><span class="st">&quot;.2f&quot;</span>))</span></code><button title="Copy to Clipboard" class="code-copy-button"><i class="bi"></i></button></pre></div>
</details>
2022-09-08 15:30:55 +00:00
<div class="cell-output cell-output-display column-page" data-execution_count="22">
<div id="tbl-ben-aid-electricity" class="anchored">
2022-09-08 15:30:55 +00:00
<table class="table table-sm table-striped">
<caption>Table 3: ODA for transmission and distribution of electric power in Benin per year, separated by financing type</caption>
<thead>
<tr class="header">
<th>Year</th>
<th>ODA Grants</th>
<th>ODA Loans</th>
<th>All</th>
</tr>
</thead>
<tbody>
<tr class="odd">
<td>2011</td>
<td>0.17</td>
<td>5.29</td>
<td>5.46</td>
</tr>
<tr class="even">
<td>2012</td>
<td>4.81</td>
<td>3.27</td>
<td>8.08</td>
</tr>
<tr class="odd">
<td>2013</td>
<td>3.82</td>
<td>18.90</td>
<td>22.72</td>
</tr>
<tr class="even">
<td>2014</td>
<td>6.80</td>
<td>8.60</td>
<td>15.41</td>
</tr>
<tr class="odd">
<td>2015</td>
<td>6.00</td>
<td>24.73</td>
<td>30.72</td>
</tr>
<tr class="even">
<td>2016</td>
<td>3.01</td>
<td>16.50</td>
<td>19.51</td>
</tr>
<tr class="odd">
<td>2017</td>
<td>2.37</td>
<td>19.73</td>
<td>22.10</td>
</tr>
<tr class="even">
<td>2018</td>
<td>7.78</td>
<td>22.83</td>
<td>30.61</td>
</tr>
<tr class="odd">
<td>2019</td>
<td>14.15</td>
<td>27.92</td>
<td>42.07</td>
</tr>
<tr class="even">
<td>2020</td>
<td>55.19</td>
<td>45.59</td>
<td>100.78</td>
</tr>
<tr class="odd">
<td>All</td>
<td>104.10</td>
<td>193.36</td>
<td>297.46</td>
</tr>
</tbody>
</table>
</div>
</div>
</div>
2022-09-08 15:30:55 +00:00
<div data-custom-style="caption">
<p>Note: Values shown are for all Official Development Assistance flows valid under the OECD CRS data, split into the type of financing flow, calculated as constant currency (2020 corrected) USD millions. The category under analysis is Electric Power transmission and distribution (centralized grids) within the data. Source: Authors elaboration based on OECD ODA CRS (2022).</p>
2022-09-08 15:30:55 +00:00
</div>
<p><a href="#tbl-ben-aid-electricity">Table 3</a> shows the amounts of project-bound development aid to Benin for the transmission and distribution of electric power within its centralized grid. The category subsumes grid distribution from the power source to end users and transmission lines. It also includes storage of energy to generate power (e.g. batteries) and projects to extend grid access, especially in rural areas. For development aid to the electrification of Benin, the monetary contributions are smaller but increasing and show trends quite different to that of overall development aid to the country.</p>
2022-09-29 12:09:20 +00:00
<p>The amount of overall development contributions to electrification increases from 2011 to 2020, with significant increases in 2013 and 2015 for loans and 2019, 2020 for grants. While there is a steady increase to the overall development aid toward electrification, increases in grants tend to lag behind increases in loans for Benin, with grants exceeding 10m USD for the first time in 2019 while loans already reached 18.90m USD in 2013. Over the complete period of 2011 to 2020, however, grants for the transmission and distribution of electric power in Benin have consistently been lower than loans.</p>
<div style="page-break-after: always;"></div>
</section>
</section>
<section id="djibouti-ethiopia" class="level2 page-columns page-full">
2022-08-19 16:58:20 +00:00
<h2 class="anchored" data-anchor-id="djibouti-ethiopia">Djibouti-Ethiopia</h2>
<hr>
<ul>
<li>Stable average GDP growth rates recently greatly reduced through local and global economic instabilities.</li>
<li>Enormous poverty rate with much disparity between Djibouti city and other country regions and country set to miss many future poverty rate goals.</li>
<li>High levels of deprivation for rural poor, little participation in labor force and lacking rural infrastructure.</li>
<li>Labor market highly dependent on trade and internal dichotomy of public administration sector and large informal sector comprised of predominantly unskilled workers.</li>
<li>Women facing fewer opportunities for upward educational mobility, less labor market participation, higher unemployment rates, a persisting (but closing) literacy gap.</li>
<li>Rural nomadic and pastoralist people highly vulnerable after droughts and regional instability, leading many to flee country or become sedentary and greatly reducing their numbers.</li>
</ul>
<hr>
2022-08-19 12:02:37 +00:00
<!-- intro -->
2022-09-29 11:28:32 +00:00
<p>Djibouti occupies a somewhat singular position, being a tiny country with an economy focused primarily around its deep-water port, trying to establish itself as a regional hub for trade and commerce. The countrys GDP has averaged roughly 6% per year before the Covid-19 pandemic greatly reduced those growth rates <span class="citation" data-cites="WorldBank2022c">(<a href="#ref-WorldBank2022c" role="doc-biblioref">World Bank, 2022f</a>)</span>. However, the countrys inequality levels are high (Gini coefficient 41.6) and its poverty rates are extreme <span class="citation" data-cites="WorldBank2022c">(21.1%, <a href="#ref-WorldBank2022c" role="doc-biblioref">World Bank, 2022f</a>)</span>. Additionally in many cases there is a lack of data or the data itself are lacking in several socio-economic dimensions which hinders analysis and policy design.</p>
2022-09-08 15:30:55 +00:00
<div class="cell" data-execution_count="23">
2022-08-20 14:45:26 +00:00
<details>
<summary>Code</summary>
2022-09-08 15:30:55 +00:00
<div class="sourceCode cell-code" id="cb20"><pre class="sourceCode python code-with-copy"><code class="sourceCode python"><span id="cb20-1"><a href="#cb20-1" aria-hidden="true" tabindex="-1"></a>gni_cnsmpt <span class="op">=</span> dji[dji[<span class="st">&#39;resource&#39;</span>].<span class="bu">str</span>.contains(<span class="st">&quot;Consumption&quot;</span>)]</span>
<span id="cb20-2"><a href="#cb20-2" aria-hidden="true" tabindex="-1"></a>gni_cnsmpt_percapita <span class="op">=</span> gni_cnsmpt[gni_cnsmpt[<span class="st">&#39;scale&#39;</span>].<span class="bu">str</span>.contains(<span class="st">&quot;Per capita&quot;</span>)]</span>
<span id="cb20-3"><a href="#cb20-3" aria-hidden="true" tabindex="-1"></a>gini_plot(gni_cnsmpt_percapita)</span></code><button title="Copy to Clipboard" class="code-copy-button"><i class="bi"></i></button></pre></div>
2022-08-20 14:45:26 +00:00
</details>
<div class="cell-output cell-output-display">
2022-08-20 15:56:33 +00:00
<div id="fig-dji" class="quarto-figure quarto-figure-center anchored">
2022-08-20 14:45:26 +00:00
<figure class="figure">
<p><img src="data:image/png;base64,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
2022-09-08 15:30:55 +00:00
<p></p><figcaption class="figure-caption">Figure 10: Gini index of consumption per capita for Djibouti</figcaption><p></p>
2022-08-20 14:45:26 +00:00
</figure>
</div>
</div>
</div>
2022-09-08 15:30:55 +00:00
<div data-custom-style="caption">
<p>Source: Authors elaboration based on UNU-WIDER WIID (2022).</p>
</div>
2022-08-19 12:02:37 +00:00
<!-- poverty -->
2022-09-29 11:28:32 +00:00
<p>Poverty in Djibouti is high and marked by high deprivation: Using the national poverty line of around 2.18USD (2011 PPP) the poverty rate for the overall country by consumption is estimated at 21.1% in 2017, while 17% live in extreme poverty under the international poverty line of 1.90USD (2011 PPP) and 32% of the population are still under the international lower middle income poverty line of 3.20USD (2011 PPP) <span class="citation" data-cites="Mendiratta2019 WorldBank2022c">(<a href="#ref-Mendiratta2019" role="doc-biblioref">World Bank, 2019</a>, <a href="#ref-WorldBank2022c" role="doc-biblioref">2022f</a>)</span>. Furthermore, there is a significant spatial disparity between poverty rates. <span class="citation" data-cites="Ibarra2020">World Bank (<a href="#ref-Ibarra2020" role="doc-biblioref">2020b</a>)</span> estimate only 15% of Djiboutis overall population living in rural areas, with 45% of the countrys poor residing in rural areas while 37% reside in the Balbala<a href="#fn2" class="footnote-ref" id="fnref2" role="doc-noteref"><sup>2</sup></a> area <span class="citation" data-cites="Ibarra2020">(<a href="#ref-Ibarra2020" role="doc-biblioref">World Bank, 2020b</a>)</span>. The study goes on to describe the high levels of deprivation for the rural poor, with the countrys highest dependency ratios, lowest participation in the labor force, very low levels of employment in the households heads and very low school enrollment, and while urban poor face similar restrictions they have better access to public services and higher school attendance rates. Access to basic amenities and services in Djibouti is low (42.1%) and 15.5% of the population have no access to both electricity and sanitation, and all people in monetary poverty are also deprived along multiple dimensions <span class="citation" data-cites="Mendiratta2020">(<a href="#ref-Mendiratta2020" role="doc-biblioref">World Bank, 2020c</a>)</span>.</p>
2022-09-08 15:30:55 +00:00
<p>Over half the working-age population does not participate in the labor force with employment being estimated at 45% in 2017, lower than the 46.3% estimated for 1996, despite the countrys economic growth <span class="citation" data-cites="Mendiratta2019">(<a href="#ref-Mendiratta2019" role="doc-biblioref">World Bank, 2019</a>)</span>. <span class="citation" data-cites="Emara2020">Emara &amp; Mohieldin (<a href="#ref-Emara2020" role="doc-biblioref">2020</a>)</span> look at the overall impact of financial inclusion on poverty levels but find that, first, Djibouti is way above its targeted poverty levels, second, it is not only one of the only countries in the region (together with Yemen) to not achieve a 5% poverty level target yet, but not even on track to achieve this target by 2030 solely through improvements in financial inclusion.</p>
2022-08-19 12:02:37 +00:00
<!-- inequality -->
2022-09-29 11:28:32 +00:00
<p>Inequality in Djibouti is high, with the lowest decile only making up 1.9% of total consumption while the richest decile enjoy 32% of the total consumption, 16 times as much as those at the lowest decile <span class="citation" data-cites="Mendiratta2019">(<a href="#ref-Mendiratta2019" role="doc-biblioref">World Bank, 2019</a>)</span>. The country has an estimated Gini coefficient for consumption per capita of 41.6 in 2017, making it one of the most unequal countries in the region <span class="citation" data-cites="WorldBank2022c">(<a href="#ref-WorldBank2022c" role="doc-biblioref">World Bank, 2022f</a>, see also <a href="#fig-dji" role="doc-biblioref">Figure 10</a>)</span>. More of its inequality hides in a large spatial and gendered heterogeneity. Urban poor face high deprivation but higher access to public services and schooling compared to the rural poor, who have only 41% access to improved water sources, 10% access to sanitation, 3% access to electricity, and with only one third living close (under 1km) to a primary school <span class="citation" data-cites="Ibarra2020">(<a href="#ref-Ibarra2020" role="doc-biblioref">World Bank, 2020b</a>)</span>.</p>
<p>While in general over half the working-age population does not participate in the labor force, the makeup is 59% of men and only 32% of women who participate, mirroring unemployment rates with an estimated third of men and two thirds of women being unemployed <span class="citation" data-cites="Mendiratta2019">(<a href="#ref-Mendiratta2019" role="doc-biblioref">World Bank, 2019</a>)</span>. <span class="citation" data-cites="Mendiratta2019">World Bank (<a href="#ref-Mendiratta2019" role="doc-biblioref">2019</a>)</span> also find the labor market itself highly unequal, with its dichotomy of a public administrative sector (drawing mainly highly skilled workers) and informal private sector making up 90% of the overall labor market, the majority of women working in the informal sector and almost half of the jobs for women in this sector consisting of one-person self-employed enterprises. Nearly 41% of working-age women find themselves in positions of vulnerable employment <span class="citation" data-cites="WorldBank2022d">(<a href="#ref-WorldBank2022d" role="doc-biblioref">World Bank, 2022c</a>)</span>.</p>
2022-08-19 12:02:37 +00:00
<!-- drivers -->
2022-09-29 11:28:32 +00:00
<p>Djiboutis economy is primarily, and within its formal sector almost exclusively, driven by its strategic location and possession of a deep-water port so it can act as a regional refueling, trading and transport shipment center <span class="citation" data-cites="WorldBank2022c">(<a href="#ref-WorldBank2022c" role="doc-biblioref">World Bank, 2022f</a>)</span>. At the same time, this interconnected economic nature and the countrys heavy reliance on food and energy imports marks a key vulnerability and makes it immediately dependent on the stability of global trade and export markets, a stability which was recently disrupted through a global pandemic <span class="citation" data-cites="WorldBank2022c">(<a href="#ref-WorldBank2022c" role="doc-biblioref">World Bank, 2022f</a>)</span>.</p>
<p>Likewise, Djibouti depends on regional stability, since its economic growth is tightly coupled with the Ethiopian economy, sourcing around 70% of its port trade from this landlocked neighbor <span class="citation" data-cites="Mendiratta2019">(<a href="#ref-Mendiratta2019" role="doc-biblioref">World Bank, 2019</a>)</span>. A series of droughts in the country threatened the livelihood of its nomadic and pastoralist population, with many fleeing to neighboring countries, some becoming sedentary in village or city outskirts, and the overall nomadic population decreasing by nearly three quarters from 2009 to 2017 <span class="citation" data-cites="Ibarra2020 Mendiratta2019">(<a href="#ref-Mendiratta2019" role="doc-biblioref">World Bank, 2019</a>, <a href="#ref-Ibarra2020" role="doc-biblioref">2020b</a>)</span>.</p>
<p>Additionally, during the early waves of Covid-19 Djibouti had one of the highest infection rates in the region, and though it had a high recovery rate, it also had one of the highest fatality rates, possibly due to deficiencies in its healthcare system <span class="citation" data-cites="ElKhamlichi2022">(<a href="#ref-ElKhamlichi2022" role="doc-biblioref">El Khamlichi et al., 2022</a>)</span>. The countrys rising costs of now fast-maturing debts made the government leave social spending behind, leaving a budget of 5% for health and 3% for social expenditures, spendings which looks diminutive compared to its over 30% expenditures on public infrastructure <span class="citation" data-cites="WorldBank2022c">(<a href="#ref-WorldBank2022c" role="doc-biblioref">World Bank, 2022f</a>)</span>. Only 10% of rural poor inhabitants live close (under 1km) to a health facility <span class="citation" data-cites="Ibarra2020">(<a href="#ref-Ibarra2020" role="doc-biblioref">World Bank, 2020b</a>)</span>.</p>
<section id="gender-inequalities-in-livelihood-opportunities" class="level3">
<h3 class="anchored" data-anchor-id="gender-inequalities-in-livelihood-opportunities">Gender inequalities in livelihood opportunities</h3>
2022-09-29 11:28:32 +00:00
<p>While still facing reduced rates of labor market participation, the country has expended effort on increasing womens opportunity for education: Having overall lower literacy rates for women still, the overall literacy rates in younger cohorts (10-24 years old) is significantly higher compared to older ones, and the gaps have decreased from 24% difference between the genders (40-60 years old) to 10% (15-24 years old) and 2% (10-14 years old) <span class="citation" data-cites="Mendiratta2019">(<a href="#ref-Mendiratta2019" role="doc-biblioref">World Bank, 2019</a>)</span>.</p>
<p>Womens lower secondary completion rate grew from 28.6% in 2009 (compared to 35.2% men) to 56.3% in 2021 (54.0% for men) <span class="citation" data-cites="WorldBank2022d">(<a href="#ref-WorldBank2022d" role="doc-biblioref">World Bank, 2022c</a>)</span>. However, for 2017, womens upward educational mobility was still significantly worse than mens, with non-poor men having an upward mobility of 53%, non-poor women 29%, poor men 19% and poor women only 10% against the national average of 36% <span class="citation" data-cites="Mendiratta2019">(<a href="#ref-Mendiratta2019" role="doc-biblioref">World Bank, 2019</a>)</span>. <!-- trade and inclusion --> Such differences reflect themselves in firm ownership structures and on the labor market, where 22.3% of all firms have female participation in ownership and only 14.2% a female top manager, and both salaried employment and agricultural employment are male-dominated (though agricultural work only with a slight and shrinking difference of 4%) <span class="citation" data-cites="WorldBank2022d">(<a href="#ref-WorldBank2022d" role="doc-biblioref">World Bank, 2022c</a>)</span>.</p>
<p>The official number of procedures to register a business are the same for men and women, as are the time and cost required for business start-up procedures <span class="citation" data-cites="WorldBank2020">(<a href="#ref-WorldBank2020" role="doc-biblioref">World Bank, 2020a</a>)</span>, however, there are factors which may further inhibit equal female business participation and ownership: while women have the same legal rights in access to credit, contractual and financial instruments as men <span class="citation" data-cites="WorldBank2022f">(<a href="#ref-WorldBank2022f" role="doc-biblioref">World Bank, 2022i</a>)</span>, women have an overall lower account ownership rate at financial institutions with 8.8% compared to mens 16.6% (2011) reflecting itself especially in a lower access to debit cards at institutions <span class="citation" data-cites="WorldBank2021a">World Bank (<a href="#ref-WorldBank2022g" role="doc-biblioref">2022a</a>)</span>.</p>
<p>As mentioned above, women have a lower participation rate on the labor market with an especially stark gender difference in the industrial sector — a sector of the economy in which women in Djibouti do not have the same rights to participate in as men, especially in jobs deemed dangerous <span class="citation" data-cites="WorldBank2022f">(<a href="#ref-WorldBank2022f" role="doc-biblioref">World Bank, 2022i</a>)</span> — with service being the sector that makes up the greatest share of female labor participation (71.1% of all female labor compared to 56.0% of all male labor 2019), a sector which is also driving the high share of women in vulnerable employment (41.4% of female labor in 2019) <span class="citation" data-cites="WorldBank2022g">(<a href="#ref-WorldBank2022g" role="doc-biblioref">World Bank, 2022a</a>)</span>.</p>
2022-09-08 15:30:55 +00:00
<p>Overall it seems, however, that past growth in the countrys GDP is likely not favorable for an inclusive growth path, with its large-scale infrastructure investments mostly creating demand for skilled workers and neglect of social spending not allowing the buffers and social safety nets that prevent further drift into inequality. <span class="citation" data-cites="Brass2008">Brass (<a href="#ref-Brass2008" role="doc-biblioref">2008</a>)</span> argues even that the country leaderships policy decisions carry increased weight in this, towards a path of ever increasing economic dependence and into a predicament of economic diversification requiring a more educated population, but a more educated population without already accompanying diversified economy likely enacting a successful policy or governmental opposition.</p>
2022-08-19 12:02:37 +00:00
<!-- conclusion -->
2022-08-19 16:58:20 +00:00
<p>Thus, Djibouti represents a country with an overall solid growth rate but accompanying high inequalities and poverty rates, from which path it does not seem to detach without more policy intervention. It is a country with one of the highest poverty rates in the region and an enormous spatial disparity in poverty between the prime sectors of Djibouti city and the rest of the country. The rural sectors face high levels of deprivation, economic disparity and largely lacking infrastructure, and the majority of its population not participating in the labor force. The countrys labor market is to the largest degree dichotomized in the public administrative sector, comprised of mostly skilled workers, and a large private informal sector comprised mostly of unskilled workers, many of which are women. The overall economy is dependent on high levels of regional and global stability which was recently undermined by droughts, Ethiopian conflict and the Covid-19 pandemic. Nomadic and pastoralist people in the countrys rural regions were hit especially hard, with the nomadic population decreasing by nearly three quarters and many fleeing or becoming sedentary. Women face less opportunity in the country with worse upward educational mobility, less participation in the labor force, higher unemployment rates, and a continuing, if closing, gender literacy gap. Djibouti is set to miss most of its poverty target levels and move along a growth pathway that does not lend itself to inclusion unless active policy measures changing its economic investment and growth strategies are examined.</p>
<!-- development assistance -->
</section>
<section id="development-assistance-to-djibouti" class="level3 page-columns page-full">
<h3 class="anchored" data-anchor-id="development-assistance-to-djibouti">Development assistance to Djibouti</h3>
2022-09-08 15:30:55 +00:00
<div class="cell" data-execution_count="24">
<details>
<summary>Code</summary>
2022-09-08 15:30:55 +00:00
<div class="sourceCode cell-code" id="cb21"><pre class="sourceCode python code-with-copy"><code class="sourceCode python"><span id="cb21-1"><a href="#cb21-1" aria-hidden="true" tabindex="-1"></a><span class="co"># Load CRS data</span></span>
<span id="cb21-2"><a href="#cb21-2" aria-hidden="true" tabindex="-1"></a>dfsub1 <span class="op">=</span> pd.read_csv(<span class="st">&#39;data/raw/OECD_CRS/CRS1_Djibouti_11-13_05092022210301944.csv&#39;</span>, parse_dates<span class="op">=</span><span class="va">True</span>, low_memory<span class="op">=</span><span class="va">False</span>)</span>
<span id="cb21-3"><a href="#cb21-3" aria-hidden="true" tabindex="-1"></a>dfsub2 <span class="op">=</span> pd.read_csv(<span class="st">&#39;data/raw/OECD_CRS/CRS1_Djibouti_14-16_05092022210632022.csv&#39;</span>, parse_dates<span class="op">=</span><span class="va">True</span>, low_memory<span class="op">=</span><span class="va">False</span>)</span>
<span id="cb21-4"><a href="#cb21-4" aria-hidden="true" tabindex="-1"></a>dfsub3 <span class="op">=</span> pd.read_csv(<span class="st">&#39;data/raw/OECD_CRS/CRS1_Djibouti_17-20_05092022210913679.csv&#39;</span>, parse_dates<span class="op">=</span><span class="va">True</span>, low_memory<span class="op">=</span><span class="va">False</span>)</span>
<span id="cb21-5"><a href="#cb21-5" aria-hidden="true" tabindex="-1"></a>df <span class="op">=</span> pd.concat([dfsub1, dfsub2, dfsub3], ignore_index<span class="op">=</span><span class="va">True</span>)</span>
<span id="cb21-6"><a href="#cb21-6" aria-hidden="true" tabindex="-1"></a>df <span class="op">=</span> df.rename(columns<span class="op">=</span>{<span class="st">&#39;</span><span class="ch">\ufeff</span><span class="st">&quot;DONOR&quot;&#39;</span>: <span class="st">&#39;DONOR&#39;</span>})</span></code><button title="Copy to Clipboard" class="code-copy-button"><i class="bi"></i></button></pre></div>
</details>
</div>
2022-09-08 15:30:55 +00:00
<div class="cell page-columns page-full" data-execution_count="25">
<details>
<summary>Code</summary>
2022-09-08 15:30:55 +00:00
<div class="sourceCode cell-code" id="cb22"><pre class="sourceCode python code-with-copy"><code class="sourceCode python"><span id="cb22-1"><a href="#cb22-1" aria-hidden="true" tabindex="-1"></a>totals <span class="op">=</span> df.loc[</span>
<span id="cb22-2"><a href="#cb22-2" aria-hidden="true" tabindex="-1"></a> (df[<span class="st">&#39;SECTOR&#39;</span>] <span class="op">==</span> <span class="dv">1000</span>) <span class="op">&amp;</span> <span class="co"># Total</span></span>
<span id="cb22-3"><a href="#cb22-3" aria-hidden="true" tabindex="-1"></a> (df[<span class="st">&#39;CHANNEL&#39;</span>] <span class="op">==</span> <span class="dv">100</span>) <span class="op">&amp;</span></span>
<span id="cb22-4"><a href="#cb22-4" aria-hidden="true" tabindex="-1"></a> (df[<span class="st">&#39;AMOUNTTYPE&#39;</span>] <span class="op">==</span> <span class="st">&#39;D&#39;</span>) <span class="op">&amp;</span></span>
<span id="cb22-5"><a href="#cb22-5" aria-hidden="true" tabindex="-1"></a> (df[<span class="st">&#39;FLOWTYPE&#39;</span>] <span class="op">==</span> <span class="dv">112</span>) <span class="op">&amp;</span></span>
<span id="cb22-6"><a href="#cb22-6" aria-hidden="true" tabindex="-1"></a> (df[<span class="st">&#39;AIDTYPE&#39;</span>] <span class="op">==</span> <span class="st">&quot;100&quot;</span>) <span class="co"># contains mixed int and string representations</span></span>
<span id="cb22-7"><a href="#cb22-7" aria-hidden="true" tabindex="-1"></a> ]</span>
<span id="cb22-8"><a href="#cb22-8" aria-hidden="true" tabindex="-1"></a>financetotals <span class="op">=</span> totals.copy()</span>
<span id="cb22-9"><a href="#cb22-9" aria-hidden="true" tabindex="-1"></a>financetotals <span class="op">=</span> financetotals[financetotals[<span class="st">&#39;DONOR&#39;</span>] <span class="op">&lt;</span> <span class="dv">20000</span>] <span class="co"># drop all &#39;total&#39; aggregations</span></span>
<span id="cb22-10"><a href="#cb22-10" aria-hidden="true" tabindex="-1"></a></span>
<span id="cb22-11"><a href="#cb22-11" aria-hidden="true" tabindex="-1"></a><span class="co">## count amount of development aid financing instruments (grants/loans) by year and display</span></span>
<span id="cb22-12"><a href="#cb22-12" aria-hidden="true" tabindex="-1"></a><span class="co">## count USD amount of development aid financing instumrnets by year and display</span></span>
<span id="cb22-13"><a href="#cb22-13" aria-hidden="true" tabindex="-1"></a>financetotals_grouped <span class="op">=</span> financetotals.groupby([<span class="st">&#39;Flow&#39;</span>, <span class="st">&#39;Year&#39;</span>]).agg({<span class="st">&#39;Value&#39;</span>: [<span class="st">&#39;sum&#39;</span>]})</span>
<span id="cb22-14"><a href="#cb22-14" aria-hidden="true" tabindex="-1"></a>financetotals_grouped <span class="op">=</span> financetotals_grouped.reset_index([<span class="st">&#39;Flow&#39;</span>, <span class="st">&#39;Year&#39;</span>])</span>
<span id="cb22-15"><a href="#cb22-15" aria-hidden="true" tabindex="-1"></a>financetotals_grouped.columns <span class="op">=</span> financetotals_grouped.columns.to_flat_index()</span>
<span id="cb22-16"><a href="#cb22-16" aria-hidden="true" tabindex="-1"></a>financetotals_grouped.columns <span class="op">=</span> [<span class="st">&#39;Financetype&#39;</span>, <span class="st">&#39;Year&#39;</span>, <span class="st">&#39;Value&#39;</span>]</span>
<span id="cb22-17"><a href="#cb22-17" aria-hidden="true" tabindex="-1"></a></span>
<span id="cb22-18"><a href="#cb22-18" aria-hidden="true" tabindex="-1"></a>fig <span class="op">=</span> px.line(financetotals_grouped, x<span class="op">=</span><span class="st">&#39;Year&#39;</span>, y<span class="op">=</span><span class="st">&#39;Value&#39;</span>, color<span class="op">=</span><span class="st">&#39;Financetype&#39;</span>, labels<span class="op">=</span>{<span class="st">&quot;Value&quot;</span>: <span class="st">&quot;Development aid, in millions&quot;</span>}, markers<span class="op">=</span><span class="va">True</span>, template<span class="op">=</span><span class="st">&quot;seaborn&quot;</span>)</span>
<span id="cb22-19"><a href="#cb22-19" aria-hidden="true" tabindex="-1"></a>fig.show()</span></code><button title="Copy to Clipboard" class="code-copy-button"><i class="bi"></i></button></pre></div>
</details>
<div class="cell-output cell-output-display column-page">
<div id="fig-dji-aid-financetype" class="quarto-figure quarto-figure-center anchored">
<figure class="figure">
<p><img src="data:image/png;base64,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
<p></p><figcaption class="figure-caption">Figure 11: Total ODA for Djibouti per year, by financing type</figcaption><p></p>
</figure>
</div>
</div>
</div>
2022-09-08 15:30:55 +00:00
<div data-custom-style="caption">
<p>Note: Values shown are for all Official Development Assistance flows valid under the OECD CRS data, split into the type of financing flow, calculated as constant currency (2020 corrected) USD millions. Source: Authors elaboration based on OECD ODA CRS (2022).</p>
2022-09-08 15:30:55 +00:00
</div>
<p>The amount of Official Development Assistance to Djibouti has generally been increasing since 2011, first steadily and, since 2017, more rapidly, as can be seen in <a href="#fig-dji-aid-financetype">Figure 11</a>. With just under 150m USD in assistance contributions 2011 and just over 320m USD at its peak in 2020, Djibouti has received less overall ODA funds than the other countries surveyed in this study.</p>
2022-09-29 12:09:20 +00:00
<p>The primary type of development assistance provided are grants, with loans making up between half and one third of the absolute grant amount in USD between 2011 and 2020. Grants have trended slowly upwards from just over 100m USD in 2011 to 135m in 2014, before fluctuating around this level until 2017, and finally increasing more significantly to over 200m USD in 2020. Loans had a more significant jump earlier, from a relatively stagnant level of under 40m USD in 2014 to 80m USD in 2015, with a similarly significant jump from 2018 to 2019, before decreasing slightly again to just over 110m USD in 2020. While largely comprising less than 10m USD until 2018, other official flows (non-export credits) had a large increase to over 75m USD in 2019, but decreasing almost as significantly again the following year.</p>
2022-09-08 15:30:55 +00:00
<div class="cell page-columns page-full" data-execution_count="26">
<details>
<summary>Code</summary>
2022-09-08 15:30:55 +00:00
<div class="sourceCode cell-code" id="cb23"><pre class="sourceCode python code-with-copy"><code class="sourceCode python"><span id="cb23-1"><a href="#cb23-1" aria-hidden="true" tabindex="-1"></a>totals <span class="op">=</span> df.loc[</span>
<span id="cb23-2"><a href="#cb23-2" aria-hidden="true" tabindex="-1"></a> (df[<span class="st">&#39;SECTOR&#39;</span>] <span class="op">==</span> <span class="dv">1000</span>) <span class="op">&amp;</span> <span class="co"># Total</span></span>
<span id="cb23-3"><a href="#cb23-3" aria-hidden="true" tabindex="-1"></a> (df[<span class="st">&#39;FLOW&#39;</span>] <span class="op">==</span> <span class="dv">100</span>) <span class="op">&amp;</span></span>
<span id="cb23-4"><a href="#cb23-4" aria-hidden="true" tabindex="-1"></a> (df[<span class="st">&#39;CHANNEL&#39;</span>] <span class="op">==</span> <span class="dv">100</span>) <span class="op">&amp;</span></span>
<span id="cb23-5"><a href="#cb23-5" aria-hidden="true" tabindex="-1"></a> (df[<span class="st">&#39;AMOUNTTYPE&#39;</span>] <span class="op">==</span> <span class="st">&#39;D&#39;</span>) <span class="op">&amp;</span></span>
<span id="cb23-6"><a href="#cb23-6" aria-hidden="true" tabindex="-1"></a> (df[<span class="st">&#39;FLOWTYPE&#39;</span>] <span class="op">==</span> <span class="dv">112</span>) <span class="op">&amp;</span></span>
<span id="cb23-7"><a href="#cb23-7" aria-hidden="true" tabindex="-1"></a> (df[<span class="st">&#39;AIDTYPE&#39;</span>] <span class="op">==</span> <span class="st">&quot;100&quot;</span>) <span class="co"># contains mixed int and string representations</span></span>
<span id="cb23-8"><a href="#cb23-8" aria-hidden="true" tabindex="-1"></a> ]</span>
<span id="cb23-9"><a href="#cb23-9" aria-hidden="true" tabindex="-1"></a>donortotals <span class="op">=</span> totals.copy()</span>
<span id="cb23-10"><a href="#cb23-10" aria-hidden="true" tabindex="-1"></a>donortotals[<span class="st">&quot;Donortype&quot;</span>] <span class="op">=</span> donortotals[<span class="st">&quot;DONOR&quot;</span>].<span class="bu">map</span>(donortypes)</span>
<span id="cb23-11"><a href="#cb23-11" aria-hidden="true" tabindex="-1"></a>donortotals <span class="op">=</span> donortotals[(donortotals[<span class="st">&quot;Donortype&quot;</span>] <span class="op">!=</span> <span class="st">&quot;nondac&quot;</span>)]</span>
<span id="cb23-12"><a href="#cb23-12" aria-hidden="true" tabindex="-1"></a></span>
<span id="cb23-13"><a href="#cb23-13" aria-hidden="true" tabindex="-1"></a>donortotals_grouped <span class="op">=</span> donortotals.groupby([<span class="st">&#39;Donortype&#39;</span>, <span class="st">&#39;Year&#39;</span>]).agg({<span class="st">&#39;Value&#39;</span>: [<span class="st">&#39;sum&#39;</span>]})</span>
<span id="cb23-14"><a href="#cb23-14" aria-hidden="true" tabindex="-1"></a>donortotals_grouped <span class="op">=</span> donortotals_grouped.reset_index([<span class="st">&#39;Donortype&#39;</span>, <span class="st">&#39;Year&#39;</span>])</span>
<span id="cb23-15"><a href="#cb23-15" aria-hidden="true" tabindex="-1"></a>donortotals_grouped.columns <span class="op">=</span> donortotals_grouped.columns.to_flat_index()</span>
<span id="cb23-16"><a href="#cb23-16" aria-hidden="true" tabindex="-1"></a>donortotals_grouped.columns <span class="op">=</span> [<span class="st">&#39;Donortype&#39;</span>, <span class="st">&#39;Year&#39;</span>, <span class="st">&#39;Value&#39;</span>]</span>
<span id="cb23-17"><a href="#cb23-17" aria-hidden="true" tabindex="-1"></a>fig <span class="op">=</span> px.line(donortotals_grouped, x<span class="op">=</span><span class="st">&#39;Year&#39;</span>, y<span class="op">=</span><span class="st">&#39;Value&#39;</span>, color<span class="op">=</span><span class="st">&#39;Donortype&#39;</span>, labels<span class="op">=</span>{<span class="st">&quot;Value&quot;</span>: <span class="st">&quot;Development aid, in millions&quot;</span>}, markers<span class="op">=</span><span class="va">True</span>, template<span class="op">=</span><span class="st">&quot;seaborn&quot;</span>)</span>
<span id="cb23-18"><a href="#cb23-18" aria-hidden="true" tabindex="-1"></a>fig.show()</span></code><button title="Copy to Clipboard" class="code-copy-button"><i class="bi"></i></button></pre></div>
</details>
<div class="cell-output cell-output-display column-page">
<div id="fig-dji-aid-donortype" class="quarto-figure quarto-figure-center anchored">
<figure class="figure">
<p><img src="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAArwAAAH0CAYAAADfWf7fAAAgAElEQVR4XuydB3gVxf6Gv/QOISR0EJSiNOmCAoIginBtWBG96B/FCngtWK5YEGygUgQLTUARFBQUrlJEeg29B6T3mpCenJz/MxsTEyHknPPb2Zw9fOPjQzk738y+s8CbyeyMn9PpdIKFBEiABEiABEiABEiABHyUgB+F10dHlrdFAiRAAiRAAiRAAiRgEKDw8kEgARIgARIgARIgARLwaQIUXp8eXt4cCZAACZAACZAACZAAhZfPAAmQAAmQAAmQAAmQgE8ToPD69PDy5kiABEiABEiABEiABCi8fAZIgARIgARIgARIgAR8mgCF16eHlzdHAiRAAiRAAiRAAiRA4eUzQAIkQAIkQAIkQAIk4NMEKLw+Pby8ORIgARIgARIgARIgAQovnwESIAESIAESIAESIAGfJkDh9enh5c2RAAmQAAmQAAmQAAlQePkMkAAJkAAJkAAJkAAJ+DQBCq9PDy9vjgRIgARIgARIgARIgMLLZ4AESIAESIAESIAESMCnCVB4fXp4eXMkQAIkQAIkQAIkQAIUXj4DJEACJEACJEACJEACPk2AwuvTw8ubIwESIAESIAESIAESoPDyGSABEiABEiABEiABEvBpAhRenx5e3hwJkAAJkAAJkAAJkACFl88ACZAACZAACZAACZCATxOg8Pr08PLmSIAESIAESIAESIAEKLx8BkiABEiABEiABEiABHyaAIXXp4eXN0cCJEACJEACJEACJEDh5TNAAiRAAiRAAiRAAiTg0wQovD49vLw5EiABEiABEiABEiABCi+fARIgARIgARIgARIgAZ8mQOH16eHlzZEACZAACZAACZAACVB4+QyQAAmQAAmQAAmQAAn4NAEKr08PL2+OBEiABEiABEiABEiAwstngARIgARIgARIgARIwKcJUHh9enh5cyRAAiRAAiRAAiRAAhRePgMkQAIkQAIkQAIkQAI+TYDC69PDy5sjARIgARIgARIgARKg8PIZIAESIAESIAESIAES8GkCFF6fHl7eHAmQAAmQAAmQAAmQAIWXzwAJkAAJkAAJkAAJkIBPE6Dw+vTw8uZIgARIgARIgARIgAQovHwGSIAESIAESIAESIAEfJoAhdenh5c3RwIkQAIkQAIkQAIkQOHlM0ACJEACJEAC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
<p></p><figcaption class="figure-caption">Figure 12: Total ODA for Djibouti per year, separated by donor type</figcaption><p></p>
</figure>
</div>
</div>
</div>
2022-09-08 15:30:55 +00:00
<div data-custom-style="caption">
<p>Note: Values shown are for all Official Development Assistance flows valid under the OECD ODA data, split into bilateral development donor countries (dac) and multilateral donors (mlt), as constant currency (2020 corrected) USD millions. Source: Authors elaboration based on OECD ODA CRS (2022).</p>
2022-09-08 15:30:55 +00:00
</div>
<p>The primary donor type of development assistance to Djibouti has been through bilateral donors for the majority of time between 2011 and 2020, see <a href="#fig-dji-aid-donortype">Figure 12</a>. While bilateral contributions have been consistently around 100m USD, multilateral contributions slowly increased from 45m USD in 2011 to just under 70m USD 2016. This situation changed, however, with both types of contributions increasing more significantly in 2018 and 2019. The multilateral contribution of 108m USD in 2019 is larger than the previous years bilateral contributions (104m USD), though those equally rose significantly to almost 160m USD in 2019. While the bilateral contributions spiked in 2019 before falling to 130m USD the following year, multilateral contributions kept increasing significantly to over 170m USD in 2020. For the first time in 2020, then, multilateral contributions provided a significantly larger share of development assistance to Djibouti than bilateral contributions, a trend which may move even further apart if bilateral contributions keep decreasing while multilateral ones increase.</p>
2022-09-08 15:30:55 +00:00
<div class="cell page-columns page-full" data-execution_count="27">
<details>
<summary>Code</summary>
<div class="sourceCode cell-code" id="cb24"><pre class="sourceCode python code-with-copy"><code class="sourceCode python"><span id="cb24-1"><a href="#cb24-1" aria-hidden="true" tabindex="-1"></a>totals <span class="op">=</span> df.loc[</span>
<span id="cb24-2"><a href="#cb24-2" aria-hidden="true" tabindex="-1"></a> (</span>
<span id="cb24-3"><a href="#cb24-3" aria-hidden="true" tabindex="-1"></a> (df[<span class="st">&#39;SECTOR&#39;</span>] <span class="op">==</span> <span class="dv">15170</span>) <span class="op">|</span></span>
<span id="cb24-4"><a href="#cb24-4" aria-hidden="true" tabindex="-1"></a> (df[<span class="st">&#39;SECTOR&#39;</span>] <span class="op">==</span> <span class="dv">15180</span>) <span class="op">|</span></span>
<span id="cb24-5"><a href="#cb24-5" aria-hidden="true" tabindex="-1"></a> (df[<span class="st">&#39;SECTOR&#39;</span>] <span class="op">==</span> <span class="dv">25010</span>) <span class="op">|</span></span>
<span id="cb24-6"><a href="#cb24-6" aria-hidden="true" tabindex="-1"></a> (df[<span class="st">&#39;SECTOR&#39;</span>] <span class="op">==</span> <span class="dv">25020</span>) <span class="op">|</span></span>
<span id="cb24-7"><a href="#cb24-7" aria-hidden="true" tabindex="-1"></a> (df[<span class="st">&#39;SECTOR&#39;</span>] <span class="op">==</span> <span class="dv">25030</span>) <span class="op">|</span></span>
<span id="cb24-8"><a href="#cb24-8" aria-hidden="true" tabindex="-1"></a> (df[<span class="st">&#39;SECTOR&#39;</span>] <span class="op">==</span> <span class="dv">25040</span>) <span class="op">|</span></span>
<span id="cb24-9"><a href="#cb24-9" aria-hidden="true" tabindex="-1"></a> (df[<span class="st">&#39;SECTOR&#39;</span>] <span class="op">==</span> <span class="dv">33110</span>) <span class="op">|</span></span>
<span id="cb24-10"><a href="#cb24-10" aria-hidden="true" tabindex="-1"></a> (df[<span class="st">&#39;SECTOR&#39;</span>] <span class="op">==</span> <span class="dv">33120</span>) <span class="op">|</span></span>
<span id="cb24-11"><a href="#cb24-11" aria-hidden="true" tabindex="-1"></a> (df[<span class="st">&#39;SECTOR&#39;</span>] <span class="op">==</span> <span class="dv">33130</span>) <span class="op">|</span></span>
<span id="cb24-12"><a href="#cb24-12" aria-hidden="true" tabindex="-1"></a> (df[<span class="st">&#39;SECTOR&#39;</span>] <span class="op">==</span> <span class="dv">33140</span>) <span class="op">|</span></span>
<span id="cb24-13"><a href="#cb24-13" aria-hidden="true" tabindex="-1"></a> (df[<span class="st">&#39;SECTOR&#39;</span>] <span class="op">==</span> <span class="dv">33150</span>) <span class="op">|</span></span>
<span id="cb24-14"><a href="#cb24-14" aria-hidden="true" tabindex="-1"></a> (df[<span class="st">&#39;SECTOR&#39;</span>] <span class="op">==</span> <span class="dv">33181</span>) <span class="op">|</span></span>
<span id="cb24-15"><a href="#cb24-15" aria-hidden="true" tabindex="-1"></a> (df[<span class="st">&#39;SECTOR&#39;</span>] <span class="op">==</span> <span class="dv">43071</span>) <span class="op">|</span></span>
<span id="cb24-16"><a href="#cb24-16" aria-hidden="true" tabindex="-1"></a> (df[<span class="st">&#39;SECTOR&#39;</span>] <span class="op">==</span> <span class="dv">43072</span>)</span>
<span id="cb24-17"><a href="#cb24-17" aria-hidden="true" tabindex="-1"></a> ) <span class="op">&amp;</span></span>
<span id="cb24-18"><a href="#cb24-18" aria-hidden="true" tabindex="-1"></a> (df[<span class="st">&#39;CHANNEL&#39;</span>] <span class="op">==</span> <span class="dv">100</span>) <span class="op">&amp;</span></span>
<span id="cb24-19"><a href="#cb24-19" aria-hidden="true" tabindex="-1"></a> (df[<span class="st">&#39;AMOUNTTYPE&#39;</span>] <span class="op">==</span> <span class="st">&#39;D&#39;</span>) <span class="op">&amp;</span></span>
<span id="cb24-20"><a href="#cb24-20" aria-hidden="true" tabindex="-1"></a> ((df[<span class="st">&#39;FLOW&#39;</span>] <span class="op">==</span> <span class="dv">11</span>) <span class="op">|</span> (df[<span class="st">&#39;FLOW&#39;</span>] <span class="op">==</span> <span class="dv">13</span>)) <span class="op">&amp;</span> <span class="co"># Total</span></span>
<span id="cb24-21"><a href="#cb24-21" aria-hidden="true" tabindex="-1"></a> (df[<span class="st">&#39;FLOWTYPE&#39;</span>] <span class="op">==</span> <span class="dv">112</span>) <span class="op">&amp;</span></span>
<span id="cb24-22"><a href="#cb24-22" aria-hidden="true" tabindex="-1"></a> (df[<span class="st">&#39;AIDTYPE&#39;</span>] <span class="op">==</span> <span class="st">&quot;100&quot;</span>) <span class="co"># contains mixed int and string representations</span></span>
<span id="cb24-23"><a href="#cb24-23" aria-hidden="true" tabindex="-1"></a> ]</span>
<span id="cb24-24"><a href="#cb24-24" aria-hidden="true" tabindex="-1"></a>aid <span class="op">=</span> totals[totals[<span class="st">&#39;DONOR&#39;</span>] <span class="op">&lt;</span> <span class="dv">20000</span>] <span class="co"># drop all &#39;total&#39; aggregations</span></span>
<span id="cb24-25"><a href="#cb24-25" aria-hidden="true" tabindex="-1"></a></span>
<span id="cb24-26"><a href="#cb24-26" aria-hidden="true" tabindex="-1"></a><span class="co"># Aggregate different measures of topics</span></span>
<span id="cb24-27"><a href="#cb24-27" aria-hidden="true" tabindex="-1"></a>aid.loc[aid[(aid[<span class="st">&#39;SECTOR&#39;</span>] <span class="op">==</span> <span class="dv">15170</span>) <span class="op">|</span> (aid[<span class="st">&#39;SECTOR&#39;</span>] <span class="op">==</span> <span class="dv">15180</span>)].index, <span class="st">&#39;SECTOR&#39;</span>] <span class="op">=</span> <span class="dv">15170</span></span>
<span id="cb24-28"><a href="#cb24-28" aria-hidden="true" tabindex="-1"></a>aid.loc[aid[(aid[<span class="st">&#39;SECTOR&#39;</span>] <span class="op">==</span> <span class="dv">15170</span>)].index, <span class="st">&#39;Sector&#39;</span>] <span class="op">=</span> <span class="st">&quot;Women&#39;s rights support&quot;</span></span>
<span id="cb24-29"><a href="#cb24-29" aria-hidden="true" tabindex="-1"></a></span>
<span id="cb24-30"><a href="#cb24-30" aria-hidden="true" tabindex="-1"></a>aid.loc[aid[(aid[<span class="st">&#39;SECTOR&#39;</span>] <span class="op">==</span> <span class="dv">25010</span>) <span class="op">|</span> (aid[<span class="st">&#39;SECTOR&#39;</span>] <span class="op">==</span> <span class="dv">25020</span>) <span class="op">|</span> (aid[<span class="st">&#39;SECTOR&#39;</span>] <span class="op">==</span> <span class="dv">25030</span>) <span class="op">|</span> (aid[<span class="st">&#39;SECTOR&#39;</span>] <span class="op">==</span> <span class="dv">25040</span>)].index, <span class="st">&#39;SECTOR&#39;</span>] <span class="op">=</span> <span class="dv">25010</span></span>
<span id="cb24-31"><a href="#cb24-31" aria-hidden="true" tabindex="-1"></a>aid.loc[aid[(aid[<span class="st">&#39;SECTOR&#39;</span>] <span class="op">==</span> <span class="dv">25010</span>)].index, <span class="st">&#39;Sector&#39;</span>] <span class="op">=</span> <span class="st">&quot;Business growth&quot;</span></span>
<span id="cb24-32"><a href="#cb24-32" aria-hidden="true" tabindex="-1"></a></span>
<span id="cb24-33"><a href="#cb24-33" aria-hidden="true" tabindex="-1"></a>aid.loc[aid[(aid[<span class="st">&#39;SECTOR&#39;</span>] <span class="op">==</span> <span class="dv">33110</span>) <span class="op">|</span> (aid[<span class="st">&#39;SECTOR&#39;</span>] <span class="op">==</span> <span class="dv">33120</span>) <span class="op">|</span> (aid[<span class="st">&#39;SECTOR&#39;</span>] <span class="op">==</span> <span class="dv">33130</span>) <span class="op">|</span> (aid[<span class="st">&#39;SECTOR&#39;</span>] <span class="op">==</span> <span class="dv">33140</span>) <span class="op">|</span> (aid[<span class="st">&#39;SECTOR&#39;</span>] <span class="op">==</span> <span class="dv">33150</span>) <span class="op">|</span> (aid[<span class="st">&#39;SECTOR&#39;</span>] <span class="op">==</span> <span class="dv">33181</span>)].index, <span class="st">&#39;SECTOR&#39;</span>] <span class="op">=</span> <span class="dv">33110</span></span>
<span id="cb24-34"><a href="#cb24-34" aria-hidden="true" tabindex="-1"></a>aid.loc[aid[(aid[<span class="st">&#39;SECTOR&#39;</span>] <span class="op">==</span> <span class="dv">33110</span>)].index, <span class="st">&#39;Sector&#39;</span>] <span class="op">=</span> <span class="st">&quot;Trade development&quot;</span></span>
<span id="cb24-35"><a href="#cb24-35" aria-hidden="true" tabindex="-1"></a></span>
<span id="cb24-36"><a href="#cb24-36" aria-hidden="true" tabindex="-1"></a>aid.loc[aid[(aid[<span class="st">&#39;SECTOR&#39;</span>] <span class="op">==</span> <span class="dv">43071</span>) <span class="op">|</span> (aid[<span class="st">&#39;SECTOR&#39;</span>] <span class="op">==</span> <span class="dv">43072</span>)].index, <span class="st">&#39;SECTOR&#39;</span>] <span class="op">=</span> <span class="dv">43071</span></span>
<span id="cb24-37"><a href="#cb24-37" aria-hidden="true" tabindex="-1"></a>aid.loc[aid[(aid[<span class="st">&#39;SECTOR&#39;</span>] <span class="op">==</span> <span class="dv">43071</span>)].index, <span class="st">&#39;Sector&#39;</span>] <span class="op">=</span> <span class="st">&quot;Food security&quot;</span></span>
<span id="cb24-38"><a href="#cb24-38" aria-hidden="true" tabindex="-1"></a></span>
<span id="cb24-39"><a href="#cb24-39" aria-hidden="true" tabindex="-1"></a><span class="co"># Group by sector per year and sum all values</span></span>
<span id="cb24-40"><a href="#cb24-40" aria-hidden="true" tabindex="-1"></a>aid_grouped <span class="op">=</span> aid.groupby([<span class="st">&#39;Year&#39;</span>, <span class="st">&#39;Sector&#39;</span>]).agg({<span class="st">&#39;Value&#39;</span>: [<span class="st">&#39;sum&#39;</span>]})</span>
<span id="cb24-41"><a href="#cb24-41" aria-hidden="true" tabindex="-1"></a>aid_grouped <span class="op">=</span> aid_grouped.reset_index([<span class="st">&#39;Year&#39;</span>, <span class="st">&#39;Sector&#39;</span>])</span>
<span id="cb24-42"><a href="#cb24-42" aria-hidden="true" tabindex="-1"></a>aid_grouped.columns <span class="op">=</span> aid_grouped.columns.to_flat_index()</span>
<span id="cb24-43"><a href="#cb24-43" aria-hidden="true" tabindex="-1"></a>aid_grouped.columns <span class="op">=</span> [<span class="st">&#39;Year&#39;</span>, <span class="st">&#39;Sector&#39;</span>, <span class="st">&#39;Value&#39;</span>]</span>
<span id="cb24-44"><a href="#cb24-44" aria-hidden="true" tabindex="-1"></a></span>
<span id="cb24-45"><a href="#cb24-45" aria-hidden="true" tabindex="-1"></a>crosstab <span class="op">=</span> pd.crosstab(aid_grouped[<span class="st">&#39;Year&#39;</span>], aid_grouped[<span class="st">&#39;Sector&#39;</span>], margins<span class="op">=</span><span class="va">True</span>, values<span class="op">=</span>aid_grouped[<span class="st">&#39;Value&#39;</span>], aggfunc<span class="op">=</span><span class="st">&#39;sum&#39;</span>)</span>
<span id="cb24-46"><a href="#cb24-46" aria-hidden="true" tabindex="-1"></a></span>
<span id="cb24-47"><a href="#cb24-47" aria-hidden="true" tabindex="-1"></a><span class="co"># Rename and reorder columns</span></span>
<span id="cb24-48"><a href="#cb24-48" aria-hidden="true" tabindex="-1"></a>crosstab <span class="op">=</span> crosstab[[<span class="st">&#39;Trade development&#39;</span>, <span class="st">&#39;Business growth&#39;</span>, <span class="st">&quot;Women&#39;s rights support&quot;</span>, <span class="st">&#39;Food security&#39;</span>, <span class="st">&#39;All&#39;</span>]]</span>
<span id="cb24-49"><a href="#cb24-49" aria-hidden="true" tabindex="-1"></a></span>
<span id="cb24-50"><a href="#cb24-50" aria-hidden="true" tabindex="-1"></a>Markdown(tabulate(crosstab.fillna(<span class="st">&quot;0.00&quot;</span>), headers<span class="op">=</span><span class="st">&quot;keys&quot;</span>, tablefmt<span class="op">=</span><span class="st">&quot;github&quot;</span>, floatfmt<span class="op">=</span><span class="st">&quot;.2f&quot;</span>))</span></code><button title="Copy to Clipboard" class="code-copy-button"><i class="bi"></i></button></pre></div>
</details>
<div class="cell-output cell-output-display column-page" data-execution_count="27">
<div id="tbl-dji-aid-projects" class="anchored">
<table class="table table-sm table-striped">
<caption>Table 4: ODA projects of advancing inclusive growth, separated by project type</caption>
<colgroup>
<col style="width: 8%">
<col style="width: 21%">
<col style="width: 19%">
<col style="width: 26%">
<col style="width: 17%">
<col style="width: 7%">
</colgroup>
<thead>
<tr class="header">
<th>Year</th>
<th>Trade development</th>
<th>Business growth</th>
<th>Womens rights support</th>
<th>Food security</th>
<th>All</th>
</tr>
</thead>
<tbody>
<tr class="odd">
<td>2011</td>
<td>0.12</td>
<td>0.30</td>
<td>0.08</td>
<td>0.00</td>
<td>0.49</td>
</tr>
<tr class="even">
<td>2012</td>
<td>0.02</td>
<td>0.54</td>
<td>0.09</td>
<td>0.00</td>
<td>0.65</td>
</tr>
<tr class="odd">
<td>2013</td>
<td>0.06</td>
<td>0.41</td>
<td>0.09</td>
<td>0.00</td>
<td>0.56</td>
</tr>
<tr class="even">
<td>2014</td>
<td>0.13</td>
<td>0.42</td>
<td>0.06</td>
<td>0.00</td>
<td>0.61</td>
</tr>
<tr class="odd">
<td>2015</td>
<td>0.07</td>
<td>0.58</td>
<td>0.13</td>
<td>0.00</td>
<td>0.78</td>
</tr>
<tr class="even">
<td>2016</td>
<td>0.00</td>
<td>0.82</td>
<td>0.77</td>
<td>0.00</td>
<td>1.59</td>
</tr>
<tr class="odd">
<td>2017</td>
<td>0.30</td>
<td>1.26</td>
<td>0.22</td>
<td>0.00</td>
<td>1.78</td>
</tr>
<tr class="even">
<td>2018</td>
<td>0.28</td>
<td>1.14</td>
<td>0.22</td>
<td>0.03</td>
<td>1.67</td>
</tr>
<tr class="odd">
<td>2019</td>
<td>0.52</td>
<td>1.92</td>
<td>0.28</td>
<td>0.06</td>
<td>2.78</td>
</tr>
<tr class="even">
<td>2020</td>
<td>7.72</td>
<td>1.73</td>
<td>0.26</td>
<td>0.00</td>
<td>9.71</td>
</tr>
<tr class="odd">
<td>All</td>
<td>9.22</td>
<td>9.13</td>
<td>2.19</td>
<td>0.08</td>
<td>20.62</td>
</tr>
</tbody>
</table>
</div>
</div>
</div>
<div data-custom-style="caption">
<p>Note: Values shown are for all Official Development Assistance flows valid under the OECD CRS data, calculated as constant currency (2020 corrected) USD millions. Source: Authors elaboration based on OECD ODA CRS (2022).</p>
</div>
<p>The sector-based breakdown of aid contributions for inclusive business growth in Djibouti can be seen in <a href="#tbl-dji-aid-projects">Table 4</a>. It shows that overall development assistance to the necessary inclusive growth sectors in Djibouti is still small in absolute terms, especially for those in vulnerable positions. The table is broken down into four sectors of development aid which drive the potential for inclusive growth in trade and business:</p>
2022-09-29 12:09:20 +00:00
<p>First, trade development encompasses trade policy and administrative management, trade facilitation, regional trade agreements, multilateral trade negotiations, trade-related adjustments and trade education and training. Second, business growth is the combination of business policy and administrative management, privatization, business development services as well responsible business conduct — meaning the establishing of policy reform and implementation and enforcement of responsible business conduct, including, among others, implementation of guidelines for human rights support. Third, and specifically aimed at the inclusion of women in economic activities, is the support for womens rights which includes the establishment of, and assistance for, womens rights organizations and institutions to enhance their effectiveness, influence and sustainability. And last, the provision for and protection of food security for those in vulnerable positions, through capacity strengthening and household-level food security programmes, short- or long-term, excluding emergency food assistance measures (such as for disaster crisis affected households).</p>
<p>The amount of aid contributions into these sectors of inclusive growth in Djibouti is small in comparison with development assistance to the other countries analyzed. The absolute amount of contributions has consistently kept under 10m USD per year for all four sectors combined, though an overall growth trend is visible from 0.5m USD in 2011 to 1.6m USD in 2016 and more rapid growth in 2020 to just under 10m USD. Most of this recent growth in 2020 is driven by contributions to trade development with 7.7m USD, while business growth and womens rights support are seeing much smaller contributions yet. The business growth sector, though seeing small contributions in absolute terms, has seen a continued increase in contributions from 0.3m USD in 2011 to 1.7m USD in 2020, with almost 2m USD at its peak in 2019. Womens rights support, on the other hand, has seen some increase from its small contributions of not even 0.1m USD in 2011 to almost 0.8m USD in 2016, but overall assistance to the sector stays stagnant at only around 0.25m USD in recent years. Lastly, food security remains almost completely without Official Development Assistance contributions, with barely 0.05m USD being contributed at its peak in 2019. Thus, development contributions to Djiboutis trade sector itself are increasing, though at the same time contributions to inclusive growth specifically, aimed at vulnerable populations and an inclusive business environment, are growing slowly at best and stagnant for protection measures for those in vulnerable groups.</p>
2022-08-19 16:58:20 +00:00
<div style="page-break-after: always;"></div>
</section>
</section>
2022-08-19 16:58:20 +00:00
<section id="references" class="level2">
2022-08-19 12:02:37 +00:00
<!-- -->
</section>
2022-08-19 16:58:20 +00:00
2022-08-19 12:02:37 +00:00
<div id="quarto-appendix" class="default"><section class="quarto-appendix-contents" role="doc-bibliography"><h2 class="anchored quarto-appendix-heading">References</h2><div id="refs" class="references csl-bib-body hanging-indent" data-line-spacing="2" role="doc-bibliography">
<div id="ref-Alia2017" class="csl-entry" role="doc-biblioentry">
Alia, D. Y. (2017). Progress <span>Toward The Sustainable Development Goal</span> on <span>Poverty</span> : <span>Assessing The Effect</span> of <span>Income Growth</span> on <span>The Exit Time</span> from <span>Poverty</span> in <span>Benin</span>: <span>Exit Time Out</span> of <span>Poverty</span> in <span>Benin</span>. <em>Sustainable Development</em>, <em>25</em>(6), 495503. <a href="https://doi.org/10.1002/sd.1674">https://doi.org/10.1002/sd.1674</a>
2022-08-19 12:02:37 +00:00
</div>
<div id="ref-Barry2020" class="csl-entry" role="doc-biblioentry">
Barry, M. S., &amp; Creti, A. (2020). Pay-as-you-go contracts for electricity access: <span>Bridging</span> the <span>“last mile”</span> gap? <span>A</span> case study in <span>Benin</span>. <em>Energy Economics</em>, <em>90</em>, 104843. <a href="https://doi.org/10.1016/j.eneco.2020.104843">https://doi.org/10.1016/j.eneco.2020.104843</a>
</div>
<div id="ref-Baulch2012" class="csl-entry" role="doc-biblioentry">
Baulch, B., Pham, H. T., &amp; Reilly, B. (2012). Decomposing the <span>Ethnic Gap</span> in <span>Rural Vietnam</span>, 19932004. <em>Oxford Development Studies</em>, <em>40</em>(1), 87117. <a href="https://doi.org/10.1080/13600818.2011.646441">https://doi.org/10.1080/13600818.2011.646441</a>
</div>
<div id="ref-Benjamin2004" class="csl-entry" role="doc-biblioentry">
2022-09-29 11:28:32 +00:00
Benjamin, D., &amp; Brandt, L. (2004). Agriculture and income distribution in rural <span>Vietnam</span> under economic reforms: <span>A</span> tale of two regions. In P. Glewwe, N. Agrawal, &amp; D. Dollar (Eds.), <em>Economic <span>Growth</span>, <span>Poverty</span> and <span>Household Welfare</span> in <span>Vietnam</span></em> (pp. 133186). <span>World Bank</span>.
2022-08-19 12:02:37 +00:00
</div>
<div id="ref-Benjamin2017" class="csl-entry" role="doc-biblioentry">
Benjamin, D., Brandt, L., &amp; McCaig, B. (2017). Growth with equity: Income inequality in <span>Vietnam</span>, 200214. <em>The Journal of Economic Inequality</em>, <em>15</em>(1), 2546. <a href="https://doi.org/10.1007/s10888-016-9341-7">https://doi.org/10.1007/s10888-016-9341-7</a>
</div>
<div id="ref-Brass2008" class="csl-entry" role="doc-biblioentry">
Brass, J. N. (2008). Djiboutis unusual resource curse. <em>The Journal of Modern African Studies</em>, <em>46</em>(4), 523545. <a href="https://doi.org/10.1017/S0022278X08003479">https://doi.org/10.1017/S0022278X08003479</a>
</div>
<div id="ref-Bui2019" class="csl-entry" role="doc-biblioentry">
Bui, T. P., &amp; Imai, K. S. (2019). Determinants of <span>Rural-Urban Inequality</span> in <span>Vietnam</span>: <span> Detailed Decomposition Analyses Based</span> on <span>Unconditional Quantile Regressions</span>. <em>The Journal of Development Studies</em>, <em>55</em>(12), 26102625. <a href="https://doi.org/10.1080/00220388.2018.1536265">https://doi.org/10.1080/00220388.2018.1536265</a>
</div>
<div id="ref-Calderon-Villarreal2022" class="csl-entry" role="doc-biblioentry">
Calderón-Villarreal, A., Schweitzer, R., &amp; Kayser, G. (2022). Social and geographic inequalities in water, sanitation and hygiene access in 21 refugee camps and settlements in <span>Bangladesh</span>, <span> Kenya</span>, <span>Uganda</span>, <span>South Sudan</span>, and <span>Zimbabwe</span>. <em>International Journal for Equity in Health</em>, <em>21</em>(1), 27. <a href="https://doi.org/10.1186/s12939-022-01626-3">https://doi.org/10.1186/s12939-022-01626-3</a>
2022-08-19 12:02:37 +00:00
</div>
<div id="ref-Cali2014" class="csl-entry" role="doc-biblioentry">
Cali, M. (2014). Trade boom and wage inequality: Evidence from <span>Ugandan</span> districts. <em>Journal of Economic Geography</em>, <em>14</em>(6), 11411174. <a href="https://doi.org/10.1093/jeg/lbu001">https://doi.org/10.1093/jeg/lbu001</a>
</div>
<div id="ref-Cao2008" class="csl-entry" role="doc-biblioentry">
2022-09-29 11:28:32 +00:00
Cao, T. C. V., &amp; Akita, T. (2008). <em>Urban and rural dimensions of income inequality in <span>Vietnam</span></em> (Economic <span>Development</span> &amp; <span>Policy Series</span>). <span>GSIR</span>.
2022-08-19 12:02:37 +00:00
</div>
<div id="ref-Cooper2016" class="csl-entry" role="doc-biblioentry">
Cooper, S. J., &amp; Wheeler, T. (2016). Rural household vulnerability to climate risk in <span>Uganda</span>. <em>Regional Environmental Change</em>, <em>17</em>(3), 649663. <a href="https://doi.org/10.1007/s10113-016-1049-5">https://doi.org/10.1007/s10113-016-1049-5</a>
</div>
<div id="ref-Datzberger2018" class="csl-entry" role="doc-biblioentry">
Datzberger, S. (2018). Why education is not helping the poor. <span>Findings</span> from <span>Uganda</span>. <em>World Development</em>, <em>110</em>, 124139. <a href="https://doi.org/10.1016/j.worlddev.2018.05.022">https://doi.org/10.1016/j.worlddev.2018.05.022</a>
</div>
<div id="ref-Djossou2017" class="csl-entry" role="doc-biblioentry">
Djossou, G. N., Kane, G. Q., &amp; Novignon, J. (2017). Is <span>Growth Pro-Poor</span> in <span>Benin</span>? <span>Evidence Using</span> a <span> Multidimensional Measure</span> of <span>Poverty</span>: <span>Is Growth Pro-Poor</span> in <span>Benin</span>? <em>Poverty &amp; Public Policy</em>, <em>9</em>(4), 426443. <a href="https://doi.org/10.1002/pop4.199">https://doi.org/10.1002/pop4.199</a>
2022-08-19 12:02:37 +00:00
</div>
<div id="ref-Ebrahim2021" class="csl-entry" role="doc-biblioentry">
Ebrahim, C., Jack, A., &amp; Jones, L. (2021). Womens economic empowerment and <span>COVID-19</span>: The case of vulnerable women with intersectional identities in <span>Indonesia</span> and <span>Vietnam</span>. <em>Enterprise Development and Microfinance</em>, <em>32</em>(1), 4456. <a href="https://doi.org/10.3362/1755-1986.21-00007">https://doi.org/10.3362/1755-1986.21-00007</a>
</div>
2022-08-19 16:58:20 +00:00
<div id="ref-ElKhamlichi2022" class="csl-entry" role="doc-biblioentry">
El Khamlichi, S., Maurady, A., &amp; Sedqui, A. (2022). Comparative study of <span>COVID-19</span> situation between lower-middle-income countries in the eastern <span>Mediterranean</span> region. <em>Journal of Oral Biology and Craniofacial Research</em>, <em>12</em>(1), 165176. <a href="https://doi.org/10.1016/j.jobcr.2021.10.004">https://doi.org/10.1016/j.jobcr.2021.10.004</a>
</div>
<div id="ref-Emara2020" class="csl-entry" role="doc-biblioentry">
Emara, N., &amp; Mohieldin, M. (2020). Financial inclusion and extreme poverty in the <span>MENA</span> region: A gap analysis approach. <em>Review of Economics and Political Science</em>, <em>5</em>(3), 207230. <a href="https://doi.org/10.1108/REPS-03-2020-0041">https://doi.org/10.1108/REPS-03-2020-0041</a>
</div>
2022-08-19 12:02:37 +00:00
<div id="ref-Esaku2021a" class="csl-entry" role="doc-biblioentry">
Esaku, S. (2021a). Does income inequality increase the shadow economy? <span>Empirical</span> evidence from <span>Uganda</span>. <em>Development Studies Research</em>, <em>8</em>(1), 147160. <a href="https://doi.org/10.1080/21665095.2021.1939082">https://doi.org/10.1080/21665095.2021.1939082</a>
2022-08-19 12:02:37 +00:00
</div>
<div id="ref-Esaku2021" class="csl-entry" role="doc-biblioentry">
Esaku, S. (2021b). Does the shadow economy increase income inequality in the short- and long-run? <span>Empirical</span> evidence from <span>Uganda</span>. <em>Cogent Economics &amp; Finance</em>, <em>9</em>(1). <a href="https://doi.org/10.1080/23322039.2021.1912896">https://doi.org/10.1080/23322039.2021.1912896</a>
2022-08-19 12:02:37 +00:00
</div>
<div id="ref-Fesselmeyer2010" class="csl-entry" role="doc-biblioentry">
2022-09-29 11:28:32 +00:00
Fesselmeyer, E., &amp; Le, K. T. (2010). Urban-biased <span>Policies</span> and the <span>Increasing Rural-Urban Expenditure Gap</span> in <span>Vietnam</span> in the 1990s: <span class="nocase">Urban-biased</span> policies in <span>Vietnam</span> in the 1990s. <em>Asian Economic Journal</em>, <em>24</em>(2), 161178. <a href="https://doi.org/10.1111/j.1467-8381.2010.02034.x">https://doi.org/10.1111/j.1467-8381.2010.02034.x</a>
2022-08-19 12:02:37 +00:00
</div>
<div id="ref-Fritzen2005" class="csl-entry" role="doc-biblioentry">
Fritzen, S., Brassard, C., &amp; Bui, T. M. T. (2005). <em>Vietnam inequality report 2005: <span>Assessment</span> and policy choices</em>. <span>DFID Vietnam</span>.
</div>
<div id="ref-Golumbeanu2013" class="csl-entry" role="doc-biblioentry">
Golumbeanu, R., &amp; Barnes, D. (2013). <em>Connection <span>Charges</span> and <span>Electricity Access</span> in <span>Sub-Saharan Africa</span></em> (No. 6511; Policy <span>Research Working Paper</span>). <span>World Bank</span>. <a href="https://openknowledge.worldbank.org/handle/10986/15871">https://openknowledge.worldbank.org/handle/10986/15871</a>
</div>
<div id="ref-Gruijters2020" class="csl-entry" role="doc-biblioentry">
Gruijters, R. J., &amp; Behrman, J. A. (2020). Learning <span>Inequality</span> in <span>Francophone Africa</span>: <span>School Quality </span> and the <span>Educational Achievement</span> of <span>Rich</span> and <span>Poor Children</span>. <em>Sociology of Education</em>, <em>93</em>(3), 256276. <a href="https://doi.org/10.1177/0038040720919379">https://doi.org/10.1177/0038040720919379</a>
2022-08-19 12:02:37 +00:00
</div>
<div id="ref-Hudson2021" class="csl-entry" role="doc-biblioentry">
Hudson, P., Pham, M., Hagedoorn, L., Thieken, A. H., Lasage, R., &amp; Bubeck, P. (2021). Self-stated recovery from flooding: <span>Empirical</span> results from a survey in <span>Central Vietnam</span>. <em>Journal of Flood Risk Management</em>, <em>14</em>(1), 115.
</div>
<div id="ref-Jafino2021" class="csl-entry" role="doc-biblioentry">
2022-09-29 11:28:32 +00:00
Jafino, B. A., Kwakkel, J. H., Klijn, F., Dung, N. V., van Delden, H., Haasnoot, M., &amp; Sutanudjaja, E. H. (2021). Accounting for multisectoral dynamics in supporting equitable adaptation planning: <span>A</span> case study on the rice agriculture in the <span>Vietnam Mekong</span> delta. <em>Earths Future</em>, <em>9</em>(5).
2022-08-19 12:02:37 +00:00
</div>
<div id="ref-Jaglin2019" class="csl-entry" role="doc-biblioentry">
Jaglin, S. (2019). Electricity autonomy and power grids in <span>Africa</span>: From rural experiments to urban hybridizations. In F. Lopez, M. Pellgrino, &amp; O. Coutard (Eds.), <em>Local <span>Energy Autonomy</span>: <span>Spaces</span>, <span>Scales</span>, <span>Politics</span></em> (pp. 291310). <span>Wiley</span>.
</div>
<div id="ref-Karpouzoglou2019" class="csl-entry" role="doc-biblioentry">
Karpouzoglou, T., Dang Tri, V. P., Ahmed, F., Warner, J., Hoang, L., Nguyen, T. B., &amp; Dewulf, A. (2019). Unearthing the ripple effects of power and resilience in large river deltas. <em>Environmental Science &amp; Policy</em>, <em>98</em>, 110. <a href="https://doi.org/10.1016/j.envsci.2019.04.011">https://doi.org/10.1016/j.envsci.2019.04.011</a>
</div>
<div id="ref-Kozel2014" class="csl-entry" role="doc-biblioentry">
Kozel, V. J. (2014). <em>Well <span>Begun</span> but <span>Not Yet Done</span>: <span>Progress</span> and <span>Emerging Challenges</span> for <span>Poverty Reduction</span> in <span>Vietnam</span></em> (Equity and <span>Development</span>). <span>World Bank</span>. <a href="https://openknowledge.worldbank.org/handle/10986/20074">https://openknowledge.worldbank.org/handle/10986/20074</a>
</div>
<div id="ref-Le2022" class="csl-entry" role="doc-biblioentry">
Le, N. V. T., Hoang, T. X., &amp; Tran, T. Q. (2022). Growth, inequality and poverty in <span>Vietnam</span>: <span>How</span> did trade liberalisation help the poor, 20022008. <em>International Journal of Social Welfare</em>, <em>31</em>(1), 8699. <a href="https://doi.org/10.1111/ijsw.12482">https://doi.org/10.1111/ijsw.12482</a>
</div>
<div id="ref-Le2021" class="csl-entry" role="doc-biblioentry">
Le, Q. H., Do, Q. A., Pham, H. C., &amp; Nguyen, T. D. (2021). The <span>Impact</span> of <span>Foreign Direct Investment</span> on <span>Income Inequality</span> in <span>Vietnam</span>. <em>Economies</em>, <em>9</em>(1), 27. <a href="https://doi.org/10.3390/economies9010027">https://doi.org/10.3390/economies9010027</a>
</div>
<div id="ref-Logie2021" class="csl-entry" role="doc-biblioentry">
Logie, C. H., Okumu, M., Latif, M., Musoke, D. K., Odong Lukone, S., Mwima, S., &amp; Kyambadde, P. (2021). Exploring resource scarcity and contextual influences on wellbeing among young refugees in <span>Bidi Bidi</span> refugee settlement, <span>Uganda</span> : Findings from a qualitative study. <em>Conflict and Health</em>, <em>15</em>(1), 3. <a href="https://doi.org/10.1186/s13031-020-00336-3">https://doi.org/10.1186/s13031-020-00336-3</a>
</div>
2022-08-19 12:02:37 +00:00
<div id="ref-Lwanga-Ntale2014" class="csl-entry" role="doc-biblioentry">
Lwanga-Ntale, C. (2014). Inequality in <span>Uganda</span>: <span>Issues</span> for discussion and further research. <em>Development</em>, <em>57</em>(3-4), 601617. <a href="https://doi.org/10.1057/dev.2015.44">https://doi.org/10.1057/dev.2015.44</a>
</div>
<div id="ref-McCaig2011" class="csl-entry" role="doc-biblioentry">
McCaig, B. (2011). Exporting out of poverty: <span>Provincial</span> poverty in <span>Vietnam</span> and <span>U</span>.<span>S</span>. Market access. <em>Journal of International Economics</em>, <em>85</em>(1), 102113. <a href="https://doi.org/10.1016/j.jinteco.2011.05.007">https://doi.org/10.1016/j.jinteco.2011.05.007</a>
</div>
<div id="ref-McNabb2018" class="csl-entry" role="doc-biblioentry">
McNabb, K. (2018). Exploring regional and gender disparities in <span>Beninese</span> primary school attendance: A multilevel approach. <em>Education Economics</em>, <em>26</em>(5), 534556. <a href="https://doi.org/10.1080/09645292.2018.1426732">https://doi.org/10.1080/09645292.2018.1426732</a>
</div>
<div id="ref-Monje2020" class="csl-entry" role="doc-biblioentry">
Monje, F., Ario, A. R., Musewa, A., Bainomugisha, K., Mirembe, B. B., Aliddeki, D. M., Eurien, D., Nsereko, G., Nanziri, C., Kisaakye, E., Ntono, V., Kwesiga, B., Kadobera, D., Bulage, L., Bwire, G., Tusiime, P., Harris, J., &amp; Zhu, B.-P. (2020). A prolonged cholera outbreak caused by drinking contaminated stream water, <span>Kyangwali</span> refugee settlement, <span>Hoima District</span>, <span> Western Uganda</span>: 2018. <em>Infectious Diseases of Poverty</em>, <em>9</em>(1), 154. <a href="https://doi.org/10.1186/s40249-020-00761-9">https://doi.org/10.1186/s40249-020-00761-9</a>
</div>
2022-08-19 12:02:37 +00:00
<div id="ref-Mottet2009" class="csl-entry" role="doc-biblioentry">
Mottet, É., &amp; Roche, Y. (2009). Lurbanisation de la ville de Ninh Binh dans le delta du fleuve rouge (Vietnam) : mise en perspective des forces et faiblesses de la gestion du risque dinondation. <em>VertigO</em>. <a href="https://doi.org/10.4000/vertigo.7782">https://doi.org/10.4000/vertigo.7782</a>
</div>
<div id="ref-Mulogo2018" class="csl-entry" role="doc-biblioentry">
Mulogo, E. M., Matte, M., Wesuta, A., Bagenda, F., Apecu, R., &amp; Ntaro, M. (2018). Water, sanitation, and hygiene service availability at rural health care facilities in southwestern <span>Uganda</span>. <em>Journal of Environmental and Public Health</em>, <em>2018</em>.
</div>
<div id="ref-Nagasha2019" class="csl-entry" role="doc-biblioentry">
Nagasha, J. I., Mugisha, L., Kaase-Bwanga, E., Onyuth, H., &amp; Ocaido, M. (2019). Effect of climate variability on gender roles among communities surrounding <span>Lake Mburo National Park</span>, <span>Uganda</span>. <em>Emerald Open Research</em>, <em>1</em>, 7. <a href="https://doi.org/10.12688/emeraldopenres.12953.1">https://doi.org/10.12688/emeraldopenres.12953.1</a>
</div>
<div id="ref-Naiga2018" class="csl-entry" role="doc-biblioentry">
Naiga, R. (2018). Conditions for successful community-based water management: Perspectives from rural <span>Uganda</span>. <em>International Journal of Rural Management</em>, <em>14</em>(2), 110135.
</div>
<div id="ref-Naiga2015" class="csl-entry" role="doc-biblioentry">
Naiga, R., Penker, M., &amp; Hogl, K. (2015). Challenging pathways to safe water access in rural <span>Uganda</span>: <span> From</span> supply to demand-driven water governance. <em>International Journal of the Commons</em>, <em>9</em>(1).
2022-08-19 12:02:37 +00:00
</div>
<div id="ref-Nguyen2007" class="csl-entry" role="doc-biblioentry">
Nguyen, B. T., Albrecht, J. W., Vroman, S. B., &amp; Westbrook, M. D. (2007). A quantile regression decomposition of urbanrural inequality in <span> Vietnam</span>. <em>Journal of Development Economics</em>, <em>83</em>(2), 466490. <a href="https://doi.org/10.1016/j.jdeveco.2006.04.006">https://doi.org/10.1016/j.jdeveco.2006.04.006</a>
</div>
<div id="ref-OECD2022" class="csl-entry" role="doc-biblioentry">
OECD. (2022). <em>Creditor <span>Reporting System</span> <span>Version</span> 13 <span>July</span> 2022</em> [Data set]. <span>OECD</span>. <a href="https://doi.org/10.35188/UNU-WIDER/WIID-300622">https://doi.org/10.35188/UNU-WIDER/WIID-300622</a>
2022-08-19 12:02:37 +00:00
</div>
<div id="ref-Rateau2022" class="csl-entry" role="doc-biblioentry">
Rateau, M., &amp; Choplin, A. (2022). Electrifying urban <span>Africa</span>: Energy access, city-making and globalisation in <span>Nigeria</span> and <span>Benin</span>. <em>International Development Planning Review</em>, <em>44</em>(1), 5580. <a href="https://doi.org/10.3828/idpr.2021.4">https://doi.org/10.3828/idpr.2021.4</a>
</div>
<div id="ref-Sempewo2021" class="csl-entry" role="doc-biblioentry">
Sempewo, J. I., Kisaakye, P., Mushomi, J., Tumutungire, M. D., &amp; Ekyalimpa, R. (2021). Assessing willingness to pay for water during the <span>COVID-19</span> crisis in <span>Ugandan</span> households. <em>Social Sciences &amp; Humanities Open</em>, <em>4</em>(1), 100230.
</div>
<div id="ref-Sempewo2021a" class="csl-entry" role="doc-biblioentry">
Sempewo, J. I., Mushomi, J., Tumutungire, M. D., Ekyalimpa, R., &amp; Kisaakye, P. (2021). The impact of <span>COVID-19</span> on households water use in <span>Uganda</span>. <em>Water Supply</em>, <em>21</em>(5), 24892504.
</div>
<div id="ref-Sen2021" class="csl-entry" role="doc-biblioentry">
Sen, L. T. H., Bond, J., Dung, N. T., Hung, H. G., Mai, N. T. H., &amp; Phuong, H. T. A. (2021). Farmers barriers to the access and use of climate information in the mountainous regions of <span>Thừa Thiên Huế</span> province, <span>Vietnam</span>. <em>Climate Services</em>, <em>24</em>, 100267100267. <a href="https://doi.org/10.1016/j.cliser.2021.100267">https://doi.org/10.1016/j.cliser.2021.100267</a>
</div>
<div id="ref-Son2020" class="csl-entry" role="doc-biblioentry">
Son, H., &amp; Kingsbury, A. (2020). Community adaptation and climate change in the <span>Northern Mountainous Region</span> of <span>Vietnam</span>: <span>A</span> case study of ethnic minority people in <span>Bac Kan Province</span>. <em>Asian Geographer</em>, <em>37</em>(1), 3351. <a href="https://doi.org/10.1080/10225706.2019.1701507">https://doi.org/10.1080/10225706.2019.1701507</a>
</div>
<div id="ref-Ssewanyana2012" class="csl-entry" role="doc-biblioentry">
2022-09-29 11:28:32 +00:00
Ssewanyana, S., &amp; Kasirye, I. (2012). <em>Poverty and inequality dynamics in <span>Uganda</span>: <span>Insights</span> from the <span>Uganda</span> national <span>Panel Surveys</span> 2005/6 and 2009/10</em>. <span>EPRC - Economic Policy Research Centre</span>. <a href="https://ageconsearch.umn.edu/record/148953">https://ageconsearch.umn.edu/record/148953</a>
2022-08-19 12:02:37 +00:00
</div>
<div id="ref-ThuLe2014" class="csl-entry" role="doc-biblioentry">
Thu Le, H., &amp; Booth, A. L. (2014). Inequality in <span>Vietnamese Urban-Rural Living Standards</span>, 1993-2006. <em>Review of Income and Wealth</em>, <em>60</em>(4). <a href="https://doi.org/10.1111/roiw.12051">https://doi.org/10.1111/roiw.12051</a>
</div>
<div id="ref-Twongyirwe2019" class="csl-entry" role="doc-biblioentry">
Twongyirwe, R., Mfitumukiza, D., Barasa, B., Naggayi, B. R., Odongo, H., Nyakato, V., &amp; Mutoni, G. (2019). Perceived effects of drought on household food security in <span class="nocase"> South-western Uganda</span>: <span>Coping</span> responses and determinants. <em>Weather and Climate Extremes</em>, <em>24</em>, 100201. <a href="https://doi.org/10.1016/j.wace.2019.100201">https://doi.org/10.1016/j.wace.2019.100201</a>
</div>
<div id="ref-UNHCR2022" class="csl-entry" role="doc-biblioentry">
UNHCR. (2022). <em>Uganda refugee emergency: <span>Situation</span> report</em> (Inter-<span>Agency Situation Report</span>). <span>United Nations High Commissioner For Refugees</span>.
</div>
<div id="ref-UNHCR2020" class="csl-entry" role="doc-biblioentry">
UNHCR. (2020). <em>Nakivale <span>Settlement</span> profile</em> (No. HS/029/20E). <span>United Nations High Commissioner For Refugees</span>.
2022-08-20 14:45:26 +00:00
</div>
<div id="ref-UNU-WIDER2022a" class="csl-entry" role="doc-biblioentry">
UNU-WIDER. (2022a). <em>World <span>Income Inequality Database</span> (<span>WIID</span>) <span>Version</span> 30 <span> June</span> 2022</em> [Data set]. <span>United Nations University World Institute for Development Economics Research</span>. <a href="https://doi.org/10.35188/UNU-WIDER/WIID-300622">https://doi.org/10.35188/UNU-WIDER/WIID-300622</a>
2022-08-20 14:45:26 +00:00
</div>
<div id="ref-UNU-WIDER2022" class="csl-entry" role="doc-biblioentry">
UNU-WIDER. (2022b). <em>World <span>Income Inequality Database</span> (<span>WIID</span>) <span>Companion</span> <span> Version</span> 30 <span>June</span> 2022</em> [Data set]. <span>United Nations University World Institute for Development Economics Research</span>. <a href="https://doi.org/10.35188/UNU-WIDER/WIIDcomp-300622">https://doi.org/10.35188/UNU-WIDER/WIIDcomp-300622</a>
2022-08-19 12:02:37 +00:00
</div>
<div id="ref-VanDePoel2009" class="csl-entry" role="doc-biblioentry">
Van De Poel, E., Odonnell, O., &amp; Van Doorslaer, E. (2009). What explains the rural-urban gap in infant mortality: <span><span>Household</span> </span> or community characteristics? <em>Demography</em>, <em>46</em>(4), 827850. <a href="https://doi.org/10.1353/dem.0.0074">https://doi.org/10.1353/dem.0.0074</a>
2022-08-19 12:02:37 +00:00
</div>
<div id="ref-vandeVen2021" class="csl-entry" role="doc-biblioentry">
van de Ven, G. W. J., de Valenca, A., Marinus, W., de Jager, I., Descheemaeker, K. K. E., Hekman, W., Mellisse, B. T., Baijukya, F., Omari, M., &amp; Giller, K. E. (2021). Living income benchmarking of rural households in low-income countries. <em>FOOD SECURITY</em>, <em>13</em>(3), 729749. <a href="https://doi.org/10.1007/s12571-020-01099-8">https://doi.org/10.1007/s12571-020-01099-8</a>
</div>
<div id="ref-vandeWalle2001" class="csl-entry" role="doc-biblioentry">
van de Walle, D., &amp; Gunewardena, D. (2001). Sources of ethnic inequality in <span>Viet Nam</span>. <em>Journal of Development Economics</em>, <em>65</em>(1), 177207. <a href="https://doi.org/10.1016/S0304-3878(01)00133-X">https://doi.org/10.1016/S0304-3878(01)00133-X</a>
</div>
<div id="ref-VASS2006" class="csl-entry" role="doc-biblioentry">
VASS. (2006). <em>Vietnam <span>Poverty Update Report</span> 2006: <span>Poverty</span> and <span>Poverty Reduction</span> in <span>Vietnam</span> 1993-2004</em>. <span>Vietnam Academy of Social Sciences</span>.
</div>
<div id="ref-VASS2011" class="csl-entry" role="doc-biblioentry">
VASS. (2011). <em>Poverty <span>Reduction</span> in <span>Vietnam</span>: <span>Achievements</span> and <span> Challenges</span></em>. <span>Vietnam Academy of Social Sciences</span>.
2022-08-19 12:02:37 +00:00
</div>
2022-09-29 11:28:32 +00:00
<div id="ref-WorldBank2022g" class="csl-entry" role="doc-biblioentry">
World Bank. (2022a). <em>Gender <span>Statistics</span> <span>Version</span> 23 <span>June</span> 2022</em> [Data set]. <span>World Bank</span>. <a href="https://doi.org/10.35188/UNU-WIDER/WIID-300622">https://doi.org/10.35188/UNU-WIDER/WIID-300622</a>
</div>
2022-08-19 16:58:20 +00:00
<div id="ref-Mendiratta2019" class="csl-entry" role="doc-biblioentry">
World Bank. (2019). <em>Challenges to <span>Inclusive Growth</span>: <span>A Poverty</span> and <span>Equity Assessment</span> of <span>Djibouti</span></em> (No. 18; Poverty and <span>Equity Note</span>). <span>World Bank</span>.<a href="
http://documents.worldbank.org/curated/en/449741576097502078/Challenges-to-Inclusive-Growth-A-Poverty-and-Equity-Assessment-of-Djibouti
"> http://documents.worldbank.org/curated/en/449741576097502078/Challenges-to-Inclusive-Growth-A-Poverty-and-Equity-Assessment-of-Djibouti </a>
2022-08-19 16:58:20 +00:00
</div>
2022-08-19 12:02:37 +00:00
<div id="ref-WorldBank2012" class="csl-entry" role="doc-biblioentry">
World Bank. (2012). <em>Vietnam poverty assessment: Well begun, not yet done - <span>Vietnam</span> s remarkable progress on poverty reduction and the emerging challenges</em>. <span>World Bank</span>.<a href="
http://documents.worldbank.org/curated/en/563561468329654096/2012-Vietnam-poverty-assessment-well-begun-not-yet-done-Vietnams-remarkable-progress-on-poverty-reduction-and-the-emerging-challenges
"> http://documents.worldbank.org/curated/en/563561468329654096/2012-Vietnam-poverty-assessment-well-begun-not-yet-done-Vietnams-remarkable-progress-on-poverty-reduction-and-the-emerging-challenges </a>
2022-08-19 12:02:37 +00:00
</div>
2022-09-29 11:28:32 +00:00
<div id="ref-WorldBank2020" class="csl-entry" role="doc-biblioentry">
World Bank. (2020a). <em>Doing <span>Business</span></em>. <span>World Bank</span>. <a href="https://doingbusiness.org/">https://doingbusiness.org/</a>
</div>
2022-08-19 16:58:20 +00:00
<div id="ref-Ibarra2020" class="csl-entry" role="doc-biblioentry">
2022-09-29 11:28:32 +00:00
World Bank. (2020b). <em>Location <span>Matters</span>: <span>Welfare Among Urban</span> and <span>Rural Poor</span> in <span>Djibouti</span></em> (No. 18; Poverty and <span>Equity Note</span>). <span>World Bank</span>.<a href="
http://documents.worldbank.org/curated/en/203361579888116251/Location-Matters-Welfare-Among-Urban-and-Rural-Poor-in-Djibouti
"> http://documents.worldbank.org/curated/en/203361579888116251/Location-Matters-Welfare-Among-Urban-and-Rural-Poor-in-Djibouti </a>
</div>
<div id="ref-Mendiratta2020" class="csl-entry" role="doc-biblioentry">
2022-09-29 11:28:32 +00:00
World Bank. (2020c). <em>The <span>Multi-Dimensional Nature</span> of <span>Poverty</span> in <span>Djibouti</span></em> (No. 30; Poverty and <span>Equity Note</span>). <span>World Bank</span>.<a href="
http://documents.worldbank.org/curated/en/272691596006234817/The-Multi-Dimensional-Nature-of-Poverty-in-Djibouti
"> http://documents.worldbank.org/curated/en/272691596006234817/The-Multi-Dimensional-Nature-of-Poverty-in-Djibouti </a>
2022-08-19 16:58:20 +00:00
</div>
2022-09-29 11:28:32 +00:00
<div id="ref-WorldBank2021a" class="csl-entry" role="doc-biblioentry">
World Bank. (2021a). <em>Global <span>Findex Database</span></em>. <span>World Bank</span>. <a href="https://www.worldbank.org/en/publication/globalfindex/">https://www.worldbank.org/en/publication/globalfindex/</a>
</div>
2022-08-19 12:02:37 +00:00
<div id="ref-WorldBank2021" class="csl-entry" role="doc-biblioentry">
2022-09-29 11:28:32 +00:00
World Bank. (2021b). <em>Tracking <span>SDG</span> 7: <span>The Energy Progress</span> <span>Report</span></em>. <span>World Bank</span>.
2022-08-19 12:02:37 +00:00
</div>
<div id="ref-WorldBank2022a" class="csl-entry" role="doc-biblioentry">
2022-09-29 11:28:32 +00:00
World Bank. (2022b). <em>Benin - <span>Learning Poverty Brief</span></em>. <span>World Bank</span>.<a href="
http://documents.worldbank.org/curated/en/099021407212243534/IDU01dbf45100704f046410bb6f03c4c1cb85588
"> http://documents.worldbank.org/curated/en/099021407212243534/IDU01dbf45100704f046410bb6f03c4c1cb85588 </a>
</div>
2022-08-19 16:58:20 +00:00
<div id="ref-WorldBank2022d" class="csl-entry" role="doc-biblioentry">
2022-09-29 11:28:32 +00:00
World Bank. (2022c). <em>Djibouti <span>Gender Landscape</span></em> (Country <span>Gender Landscape</span>). <span>World Bank</span>.<a href="
http://documents.worldbank.org/curated/en/099929206302212659/IDU068dce0c7003280435b099f8040232925d37f
"> http://documents.worldbank.org/curated/en/099929206302212659/IDU068dce0c7003280435b099f8040232925d37f </a>
2022-08-19 16:58:20 +00:00
</div>
2022-09-29 11:28:32 +00:00
<div id="ref-WorldBank2022e" class="csl-entry" role="doc-biblioentry">
World Bank. (2022d). <em>Global <span>Database</span> of <span>Shared Prosperity</span> (9th edition, circa 201419)</em>. <span>World Bank</span>.<a href="
https://www.worldbank.org/en/topic/poverty/brief/global-database-of-shared-prosperity
"> https://www.worldbank.org/en/topic/poverty/brief/global-database-of-shared-prosperity </a>
</div>
2022-08-19 12:02:37 +00:00
<div id="ref-WorldBank2022b" class="csl-entry" role="doc-biblioentry">
2022-09-29 11:28:32 +00:00
World Bank. (2022e). <em>Macro <span>Poverty Outlook</span> for <span>Benin</span> : <span>April</span> 2022</em>. <span>World Bank</span>.<a href="
http://documents.worldbank.org/curated/en/099930404182210208/IDU0ef8057e509b5f0432c0b50d00f85b54deb33
"> http://documents.worldbank.org/curated/en/099930404182210208/IDU0ef8057e509b5f0432c0b50d00f85b54deb33 </a>
2022-08-19 16:58:20 +00:00
</div>
<div id="ref-WorldBank2022c" class="csl-entry" role="doc-biblioentry">
2022-09-29 11:28:32 +00:00
World Bank. (2022f). <em>Macro <span>Poverty Outlook</span> for <span>Djibouti</span> : <span>April</span> 2022</em>. <span>World Bank</span>.<a href="
https://documents.worldbank.org/en/publication/documents-reports/documentdetail/099310104232265208/idu08979c8f809e1604dc70be93050dce6a02a23
"> https://documents.worldbank.org/en/publication/documents-reports/documentdetail/099310104232265208/idu08979c8f809e1604dc70be93050dce6a02a23 </a>
2022-08-19 12:02:37 +00:00
</div>
<div id="ref-WorldBank2022" class="csl-entry" role="doc-biblioentry">
2022-09-29 11:28:32 +00:00
World Bank. (2022g). <em>Uganda - <span>Learning Poverty Brief</span></em>. <span>World Bank</span>.<a href="
http://documents.worldbank.org/curated/en/099021407212243534/IDU01dbf45100704f046410bb6f03c4c1cb85588
"> http://documents.worldbank.org/curated/en/099021407212243534/IDU01dbf45100704f046410bb6f03c4c1cb85588 </a>
2022-08-19 12:02:37 +00:00
</div>
<div id="ref-Atamanov2022" class="csl-entry" role="doc-biblioentry">
2022-09-29 11:28:32 +00:00
World Bank. (2022h). <em>Uganda <span>Poverty Assessment</span>: <span>Strengthening Resilience</span> to <span> Accelerate Poverty Reduction</span></em>. <span>World Bank</span>.<a href="
http://documents.worldbank.org/curated/en/099135006292235162/P17761605286900b10899b0798dcd703d85
"> http://documents.worldbank.org/curated/en/099135006292235162/P17761605286900b10899b0798dcd703d85 </a>
2022-08-19 12:02:37 +00:00
</div>
2022-09-29 11:28:32 +00:00
<div id="ref-WorldBank2022f" class="csl-entry" role="doc-biblioentry">
World Bank. (2022i). <em>Women, <span>Business</span> and the <span>Law</span> 1971-2022</em>. <span>World Bank</span>. <a href="https://wbl.worldbank.org/">https://wbl.worldbank.org/</a>
</div>
2022-08-19 12:02:37 +00:00
<div id="ref-Yikii2017" class="csl-entry" role="doc-biblioentry">
Yikii, F., Turyahabwe, N., &amp; Bashaasha, B. (2017). Prevalence of household food insecurity in wetland adjacent areas of <span>Uganda</span>. <em>Agriculture &amp; Food Security</em>, <em>6</em>(1), 112.
</div>
<div id="ref-Ylipaa2019" class="csl-entry" role="doc-biblioentry">
Ylipaa, J., Gabrielsson, S., &amp; Jerneck, A. (2019). Climate change adaptation and gender inequality: <span>Insights</span> from rural vietnam. <em>Sustainability (Basel, Switzerland)</em>, <em>11</em>(10), 28052805. <a href="https://doi.org/10.3390/su11102805">https://doi.org/10.3390/su11102805</a>
</div>
</div></section><section id="footnotes" class="footnotes footnotes-end-of-document" role="doc-endnotes"><h2 class="anchored quarto-appendix-heading">Footnotes</h2>
2022-08-19 16:58:20 +00:00
<ol>
2022-09-08 15:30:55 +00:00
<li id="fn1"><p>Other official flows, per OECD CRS definition, describe contributions that do not meet the ODA criteria. These can include grants for primarily representational or commercial purposes, contributions having a grant element under the required share of 25% or primarily export-facilitating contributions. See https://doi.org/10.1787/6afef3df-en for a full definition.<a href="#fnref1" class="footnote-back" role="doc-backlink">↩︎</a></p></li>
<li id="fn2"><p>The Balbala area comprises the 4th and 5th district out of the five districts of Djibouti city.<a href="#fnref2" class="footnote-back" role="doc-backlink">↩︎</a></p></li>
2022-08-19 16:58:20 +00:00
</ol>
</section></div></main>
2022-08-19 12:02:37 +00:00
<!-- /main column -->
<script id="quarto-html-after-body" type="application/javascript">
window.document.addEventListener("DOMContentLoaded", function (event) {
const toggleBodyColorMode = (bsSheetEl) => {
const mode = bsSheetEl.getAttribute("data-mode");
const bodyEl = window.document.querySelector("body");
if (mode === "dark") {
bodyEl.classList.add("quarto-dark");
bodyEl.classList.remove("quarto-light");
} else {
bodyEl.classList.add("quarto-light");
bodyEl.classList.remove("quarto-dark");
}
}
const toggleBodyColorPrimary = () => {
const bsSheetEl = window.document.querySelector("link#quarto-bootstrap");
if (bsSheetEl) {
toggleBodyColorMode(bsSheetEl);
}
}
toggleBodyColorPrimary();
const icon = "";
const anchorJS = new window.AnchorJS();
anchorJS.options = {
placement: 'right',
icon: icon
};
anchorJS.add('.anchored');
const clipboard = new window.ClipboardJS('.code-copy-button', {
target: function(trigger) {
return trigger.previousElementSibling;
}
});
clipboard.on('success', function(e) {
// button target
const button = e.trigger;
// don't keep focus
button.blur();
// flash "checked"
button.classList.add('code-copy-button-checked');
var currentTitle = button.getAttribute("title");
button.setAttribute("title", "Copied!");
setTimeout(function() {
button.setAttribute("title", currentTitle);
button.classList.remove('code-copy-button-checked');
}, 1000);
// clear code selection
e.clearSelection();
});
const viewSource = window.document.getElementById('quarto-view-source') ||
window.document.getElementById('quarto-code-tools-source');
if (viewSource) {
const sourceUrl = viewSource.getAttribute("data-quarto-source-url");
viewSource.addEventListener("click", function(e) {
if (sourceUrl) {
// rstudio viewer pane
if (/\bcapabilities=\b/.test(window.location)) {
window.open(sourceUrl);
} else {
window.location.href = sourceUrl;
}
} else {
const modal = new bootstrap.Modal(document.getElementById('quarto-embedded-source-code-modal'));
modal.show();
}
return false;
});
}
function toggleCodeHandler(show) {
return function(e) {
const detailsSrc = window.document.querySelectorAll(".cell > details > .sourceCode");
for (let i=0; i<detailsSrc.length; i++) {
const details = detailsSrc[i].parentElement;
if (show) {
details.open = true;
} else {
details.removeAttribute("open");
}
}
const cellCodeDivs = window.document.querySelectorAll(".cell > .sourceCode");
const fromCls = show ? "hidden" : "unhidden";
const toCls = show ? "unhidden" : "hidden";
for (let i=0; i<cellCodeDivs.length; i++) {
const codeDiv = cellCodeDivs[i];
if (codeDiv.classList.contains(fromCls)) {
codeDiv.classList.remove(fromCls);
codeDiv.classList.add(toCls);
}
}
return false;
}
}
const hideAllCode = window.document.getElementById("quarto-hide-all-code");
if (hideAllCode) {
hideAllCode.addEventListener("click", toggleCodeHandler(false));
}
const showAllCode = window.document.getElementById("quarto-show-all-code");
if (showAllCode) {
showAllCode.addEventListener("click", toggleCodeHandler(true));
}
function tippyHover(el, contentFn) {
const config = {
allowHTML: true,
content: contentFn,
maxWidth: 500,
delay: 100,
arrow: false,
appendTo: function(el) {
return el.parentElement;
},
interactive: true,
interactiveBorder: 10,
theme: 'quarto',
placement: 'bottom-start'
};
window.tippy(el, config);
}
const noterefs = window.document.querySelectorAll('a[role="doc-noteref"]');
for (var i=0; i<noterefs.length; i++) {
const ref = noterefs[i];
tippyHover(ref, function() {
// use id or data attribute instead here
let href = ref.getAttribute('data-footnote-href') || ref.getAttribute('href');
2022-08-19 12:02:37 +00:00
try { href = new URL(href).hash; } catch {}
const id = href.replace(/^#\/?/, "");
const note = window.document.getElementById(id);
return note.innerHTML;
});
}
var bibliorefs = window.document.querySelectorAll('a[role="doc-biblioref"]');
for (var i=0; i<bibliorefs.length; i++) {
const ref = bibliorefs[i];
const cites = ref.parentNode.getAttribute('data-cites').split(' ');
tippyHover(ref, function() {
var popup = window.document.createElement('div');
cites.forEach(function(cite) {
var citeDiv = window.document.createElement('div');
citeDiv.classList.add('hanging-indent');
citeDiv.classList.add('csl-entry');
var biblioDiv = window.document.getElementById('ref-' + cite);
if (biblioDiv) {
citeDiv.innerHTML = biblioDiv.innerHTML;
}
popup.appendChild(citeDiv);
});
return popup.innerHTML;
});
}
});
</script><div class="modal fade" id="quarto-embedded-source-code-modal" tabindex="-1" aria-labelledby="quarto-embedded-source-code-modal-label" aria-hidden="true"><div class="modal-dialog modal-dialog-scrollable"><div class="modal-content"><div class="modal-header"><h5 class="modal-title" id="quarto-embedded-source-code-modal-label">Source Code</h5><button class="btn-close" data-bs-dismiss="modal"></button></div><div class="modal-body"><div class>
2022-09-08 15:30:55 +00:00
<div class="sourceCode" id="cb25" data-shortcodes="false"><pre class="sourceCode markdown code-with-copy"><code class="sourceCode markdown"><span id="cb25-1"><a href="#cb25-1" aria-hidden="true" tabindex="-1"></a><span class="co">---</span></span>
<span id="cb25-2"><a href="#cb25-2" aria-hidden="true" tabindex="-1"></a><span class="an">nocite:</span><span class="co"> |</span></span>
<span id="cb25-3"><a href="#cb25-3" aria-hidden="true" tabindex="-1"></a><span class="co"> | @UNU-WIDER2022a</span></span>
<span id="cb25-4"><a href="#cb25-4" aria-hidden="true" tabindex="-1"></a><span class="co"> | @UNU-WIDER2022</span></span>
<span id="cb25-5"><a href="#cb25-5" aria-hidden="true" tabindex="-1"></a><span class="co"> | @OECD2022</span></span>
<span id="cb25-6"><a href="#cb25-6" aria-hidden="true" tabindex="-1"></a><span class="co">---</span></span>
<span id="cb25-7"><a href="#cb25-7" aria-hidden="true" tabindex="-1"></a></span>
<span id="cb25-8"><a href="#cb25-8" aria-hidden="true" tabindex="-1"></a>{{&lt; include data-prep.qmd &gt;}}</span>
<span id="cb25-9"><a href="#cb25-9" aria-hidden="true" tabindex="-1"></a></span>
<span id="cb25-12"><a href="#cb25-12" aria-hidden="true" tabindex="-1"></a><span class="in">```{python}</span></span>
<span id="cb25-13"><a href="#cb25-13" aria-hidden="true" tabindex="-1"></a>svg_render <span class="op">=</span> <span class="va">True</span></span>
<span id="cb25-14"><a href="#cb25-14" aria-hidden="true" tabindex="-1"></a>pd.options.display.float_format <span class="op">=</span> <span class="st">&quot;</span><span class="sc">{:.2f}</span><span class="st">&quot;</span>.<span class="bu">format</span></span>
<span id="cb25-15"><a href="#cb25-15" aria-hidden="true" tabindex="-1"></a><span class="in">```</span></span>
<span id="cb25-16"><a href="#cb25-16" aria-hidden="true" tabindex="-1"></a></span>
<span id="cb25-17"><a href="#cb25-17" aria-hidden="true" tabindex="-1"></a>{{&lt; include _drivers-of-inequality-vietnam.qmd &gt;}}</span>
<span id="cb25-18"><a href="#cb25-18" aria-hidden="true" tabindex="-1"></a></span>
<span id="cb25-19"><a href="#cb25-19" aria-hidden="true" tabindex="-1"></a>{{&lt; pagebreak &gt;}}</span>
<span id="cb25-20"><a href="#cb25-20" aria-hidden="true" tabindex="-1"></a></span>
<span id="cb25-21"><a href="#cb25-21" aria-hidden="true" tabindex="-1"></a>{{&lt; include _drivers-of-inequality-uganda.qmd &gt;}}</span>
<span id="cb25-22"><a href="#cb25-22" aria-hidden="true" tabindex="-1"></a></span>
<span id="cb25-23"><a href="#cb25-23" aria-hidden="true" tabindex="-1"></a>{{&lt; pagebreak &gt;}}</span>
<span id="cb25-24"><a href="#cb25-24" aria-hidden="true" tabindex="-1"></a></span>
<span id="cb25-25"><a href="#cb25-25" aria-hidden="true" tabindex="-1"></a>{{&lt; include _drivers-of-inequality-benin.qmd &gt;}}</span>
<span id="cb25-26"><a href="#cb25-26" aria-hidden="true" tabindex="-1"></a></span>
<span id="cb25-27"><a href="#cb25-27" aria-hidden="true" tabindex="-1"></a>{{&lt; pagebreak &gt;}}</span>
<span id="cb25-28"><a href="#cb25-28" aria-hidden="true" tabindex="-1"></a></span>
<span id="cb25-29"><a href="#cb25-29" aria-hidden="true" tabindex="-1"></a>{{&lt; include _drivers-of-inequality-djibouti.qmd &gt;}}</span>
<span id="cb25-30"><a href="#cb25-30" aria-hidden="true" tabindex="-1"></a></span>
<span id="cb25-31"><a href="#cb25-31" aria-hidden="true" tabindex="-1"></a>{{&lt; pagebreak &gt;}}</span>
<span id="cb25-32"><a href="#cb25-32" aria-hidden="true" tabindex="-1"></a></span>
<span id="cb25-33"><a href="#cb25-33" aria-hidden="true" tabindex="-1"></a><span class="fu">## References</span></span>
<span id="cb25-34"><a href="#cb25-34" aria-hidden="true" tabindex="-1"></a></span>
2022-08-20 14:45:26 +00:00
</code><button title="Copy to Clipboard" class="code-copy-button"><i class="bi"></i></button></pre></div>
2022-08-19 12:02:37 +00:00
</div></div></div></div></div>
</div> <!-- /content -->
</body></html>