Update pointer, logos, etc.

This commit is contained in:
2025-06-08 11:30:43 +02:00
parent 25e935661f
commit 8df71ce1d3
17 changed files with 1500 additions and 272 deletions

1382
assets/hecf_logo.svg Normal file

File diff suppressed because one or more lines are too long

After

Width:  |  Height:  |  Size: 64 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 193 KiB

Binary file not shown.

View File

@@ -0,0 +1,209 @@
---
title: "Knots-Demo"
date: 2025-07-10
format:
revealjs:
embed-resources: true
execute:
daemon: false
highlight-style: github
---
```{ojs}
d3 = require("d3@7")
```
```{ojs}
bsplineData = FileAttachment("basis_functions.csv").csv({ typed: true })
```
```{ojs}
function updateChartInner(g, x, y, linesGroup, color, line, data) {
// Update axes with transitions
x.domain([0, d3.max(data, d => d.x)]);
g.select(".x-axis").transition().duration(1500).call(d3.axisBottom(x).ticks(10));
y.domain([0, d3.max(data, d => d.y)]);
g.select(".y-axis").transition().duration(1500).call(d3.axisLeft(y).ticks(5));
// Group data by basis function
const dataByFunction = Array.from(d3.group(data, d => d.b));
const keyFn = d => d[0];
// Update basis function lines
const u = linesGroup.selectAll("path").data(dataByFunction, keyFn);
u.join(
enter => enter.append("path").attr("fill","none").attr("stroke-width",3)
.attr("stroke", (_, i) => color(i)).attr("d", d => line(d[1].map(pt => ({x: pt.x, y: 0}))))
.style("opacity",0),
update => update,
exit => exit.transition().duration(1000).style("opacity",0).remove()
)
.transition().duration(1000)
.attr("d", d => line(d[1]))
.attr("stroke", (_, i) => color(i))
.style("opacity",1);
}
chart = {
// State variables for selected parameters
let selectedMu = 0.5;
let selectedSig = 1;
let selectedNonc = 0;
let selectedTailw = 1;
const filteredData = () => bsplineData.filter(d =>
Math.abs(selectedMu - d.mu) < 0.001 &&
d.sig === selectedSig &&
d.nonc === selectedNonc &&
d.tailw === selectedTailw
);
const container = d3.create("div")
.style("max-width", "none")
.style("width", "100%");;
const controlsContainer = container.append("div")
.style("display", "flex")
.style("gap", "20px");
// slider controls
const sliders = [
{ label: 'Mu', get: () => selectedMu, set: v => selectedMu = v, min: 0.1, max: 0.9, step: 0.2 },
{ label: 'Sigma', get: () => Math.log2(selectedSig), set: v => selectedSig = 2 ** v, min: -2, max: 2, step: 1 },
{ label: 'Noncentrality', get: () => selectedNonc, set: v => selectedNonc = v, min: -4, max: 4, step: 2 },
{ label: 'Tailweight', get: () => Math.log2(selectedTailw), set: v => selectedTailw = 2 ** v, min: -2, max: 2, step: 1 }
];
// Build slider controls with D3 data join
const sliderCont = controlsContainer.selectAll('div').data(sliders).join('div')
.style('display','flex').style('align-items','center').style('gap','10px')
.style('flex','1').style('min-width','0px');
sliderCont.append('label').text(d => d.label + ':').style('font-size','20px');
sliderCont.append('input')
.attr('type','range').attr('min', d => d.min).attr('max', d => d.max).attr('step', d => d.step)
.property('value', d => d.get())
.on('input', function(event, d) {
const val = +this.value; d.set(val);
d3.select(this.parentNode).select('span').text(d.label.match(/Sigma|Tailweight/) ? 2**val : val);
updateChart(filteredData());
})
.style('width', '100%');
sliderCont.append('span').text(d => (d.label.match(/Sigma|Tailweight/) ? d.get() : d.get()))
.style('font-size','20px');
// Add Reset button to clear all sliders to their defaults
controlsContainer.append('button')
.text('Reset')
.style('font-size', '20px')
.style('align-self', 'center')
.style('margin-left', 'auto')
.on('click', () => {
// reset state vars
selectedMu = 0.5;
selectedSig = 1;
selectedNonc = 0;
selectedTailw = 1;
// update input positions
sliderCont.selectAll('input').property('value', d => d.get());
// update displayed labels
sliderCont.selectAll('span')
.text(d => d.label.match(/Sigma|Tailweight/) ? (2**d.get()) : d.get());
// redraw chart
updateChart(filteredData());
});
// Build SVG
const width = 1200;
const height = 450;
const margin = {top: 40, right: 20, bottom: 40, left: 40};
const innerWidth = width - margin.left - margin.right;
const innerHeight = height - margin.top - margin.bottom;
// Set controls container width to match SVG plot width
controlsContainer.style("max-width", "none").style("width", "100%");
// Distribute each control evenly and make sliders full-width
controlsContainer.selectAll("div").style("flex", "1").style("min-width", "0px");
controlsContainer.selectAll("input").style("width", "100%").style("box-sizing", "border-box");
// Create scales
const x = d3.scaleLinear()
.domain([0, 1])
.range([0, innerWidth]);
const y = d3.scaleLinear()
.domain([0, 1])
.range([innerHeight, 0]);
// Create a color scale for the basis functions
const color = d3.scaleOrdinal(d3.schemeCategory10);
// Create SVG
const svg = d3.create("svg")
.attr("width", "100%")
.attr("height", "auto")
.attr("viewBox", [0, 0, width, height])
.attr("preserveAspectRatio", "xMidYMid meet")
.attr("style", "max-width: 100%; height: auto;");
// Create the chart group
const g = svg.append("g")
.attr("transform", `translate(${margin.left},${margin.top})`);
// Add axes
const xAxis = g.append("g")
.attr("transform", `translate(0,${innerHeight})`)
.attr("class", "x-axis")
.call(d3.axisBottom(x).ticks(10))
.style("font-size", "20px");
const yAxis = g.append("g")
.attr("class", "y-axis")
.call(d3.axisLeft(y).ticks(5))
.style("font-size", "20px");
// Add a horizontal line at y = 0
g.append("line")
.attr("x1", 0)
.attr("x2", innerWidth)
.attr("y1", y(0))
.attr("y2", y(0))
.attr("stroke", "#000")
.attr("stroke-opacity", 0.2);
// Add gridlines
g.append("g")
.attr("class", "grid-lines")
.selectAll("line")
.data(y.ticks(5))
.join("line")
.attr("x1", 0)
.attr("x2", innerWidth)
.attr("y1", d => y(d))
.attr("y2", d => y(d))
.attr("stroke", "#ccc")
.attr("stroke-opacity", 0.5);
// Create a line generator
const line = d3.line()
.x(d => x(d.x))
.y(d => y(d.y))
.curve(d3.curveBasis);
// Group to contain the basis function lines
const linesGroup = g.append("g")
.attr("class", "basis-functions");
// Store the current basis functions for transition
let currentBasisFunctions = new Map();
// Function to update the chart with new data
function updateChart(data) {
updateChartInner(g, x, y, linesGroup, color, line, data);
}
// Store the update function
svg.node().update = updateChart;
// Initial render
updateChart(filteredData());
container.node().appendChild(svg.node());
return container.node();
}
```

View File

@@ -0,0 +1,687 @@
<?xml version="1.0" encoding="utf-8"?>
<style xmlns="http://purl.org/net/xbiblio/csl" class="in-text" version="1.0" demote-non-dropping-particle="never">
<info>
<title>American Psychological Association 6th edition ("DOI:" DOI prefix)</title>
<title-short>APA</title-short>
<id>http://www.zotero.org/styles/apa-old-doi-prefix</id>
<link href="http://www.zotero.org/styles/apa-old-doi-prefix" rel="self"/>
<link href="http://owl.english.purdue.edu/owl/resource/560/01/" rel="documentation"/>
<author>
<name>Simon Kornblith</name>
<email>simon@simonster.com</email>
</author>
<contributor>
<name>Bruce D'Arcus</name>
</contributor>
<contributor>
<name>Curtis M. Humphrey</name>
</contributor>
<contributor>
<name>Richard Karnesky</name>
<email>karnesky+zotero@gmail.com</email>
<uri>http://arc.nucapt.northwestern.edu/Richard_Karnesky</uri>
</contributor>
<contributor>
<name>Sebastian Karcher</name>
</contributor>
<contributor>
<name> Brenton M. Wiernik</name>
<email>zotero@wiernik.org</email>
</contributor>
<category citation-format="author-date"/>
<category field="psychology"/>
<category field="generic-base"/>
<updated>2017-09-05T01:06:39+00:00</updated>
<rights license="http://creativecommons.org/licenses/by-sa/3.0/">This work is licensed under a Creative Commons Attribution-ShareAlike 3.0 License</rights>
</info>
<locale xml:lang="en">
<terms>
<term name="editortranslator" form="short">
<single>ed. &amp; trans.</single>
<multiple>eds. &amp; trans.</multiple>
</term>
<term name="translator" form="short">
<single>trans.</single>
<multiple>trans.</multiple>
</term>
</terms>
</locale>
<macro name="container-contributors">
<choose>
<if type="chapter paper-conference entry-dictionary entry-encyclopedia" match="any">
<group delimiter=", ">
<names variable="container-author" delimiter=", ">
<name and="symbol" initialize-with=". " delimiter=", "/>
<label form="short" prefix=" (" text-case="title" suffix=")"/>
</names>
<names variable="editor translator" delimiter=", ">
<name and="symbol" initialize-with=". " delimiter=", "/>
<label form="short" prefix=" (" text-case="title" suffix=")"/>
</names>
</group>
</if>
</choose>
</macro>
<macro name="secondary-contributors">
<choose>
<if type="article-journal chapter paper-conference entry-dictionary entry-encyclopedia" match="none">
<group delimiter=", " prefix=" (" suffix=")">
<names variable="container-author" delimiter=", ">
<name and="symbol" initialize-with=". " delimiter=", "/>
<label form="short" prefix=", " text-case="title"/>
</names>
<names variable="editor translator" delimiter=", ">
<name and="symbol" initialize-with=". " delimiter=", "/>
<label form="short" prefix=", " text-case="title"/>
</names>
</group>
</if>
</choose>
</macro>
<macro name="author">
<names variable="author">
<name name-as-sort-order="all" and="symbol" sort-separator=", " initialize-with="." delimiter=", " delimiter-precedes-last="always"/>
<label form="short" prefix=" (" suffix=")" text-case="capitalize-first"/>
<substitute>
<names variable="editor"/>
<names variable="translator"/>
<choose>
<if type="report">
<text variable="publisher"/>
<text macro="title"/>
</if>
<else>
<text macro="title"/>
</else>
</choose>
</substitute>
</names>
</macro>
<macro name="author-short">
<choose>
<if type="patent" variable="number" match="all">
<text macro="patent-number"/>
</if>
<else>
<names variable="author">
<name form="short" and="symbol" delimiter=", " initialize-with=". "/>
<substitute>
<names variable="editor"/>
<names variable="translator"/>
<choose>
<if type="report">
<text variable="publisher"/>
<text variable="title" form="short" font-style="italic"/>
</if>
<else-if type="legal_case">
<text variable="title" font-style="italic"/>
</else-if>
<else-if type="book graphic motion_picture song" match="any">
<text variable="title" form="short" font-style="italic"/>
</else-if>
<else-if type="bill legislation" match="any">
<text variable="title" form="short"/>
</else-if>
<else-if variable="reviewed-author">
<choose>
<if variable="reviewed-title" match="none">
<text variable="title" form="short" font-style="italic" prefix="Review of "/>
</if>
<else>
<text variable="title" form="short" quotes="true"/>
</else>
</choose>
</else-if>
<else>
<text variable="title" form="short" quotes="true"/>
</else>
</choose>
</substitute>
</names>
</else>
</choose>
</macro>
<macro name="patent-number">
<!-- genre: U.S. Patent number: 123,445-->
<group delimiter=" ">
<group delimiter=" ">
<text variable="genre"/>
<text term="issue" form="short" text-case="capitalize-first"/>
</group>
<text variable="number"/>
</group>
</macro>
<macro name="access">
<choose>
<if type="thesis report" match="any">
<choose>
<if variable="DOI" match="any">
<text variable="DOI" prefix="DOI: /"/>
</if>
<else-if variable="URL" match="any">
<group>
<text variable="URL"/>
</group>
</else-if>
<else-if variable="archive" match="any">
<group>
<text term="retrieved" text-case="capitalize-first" suffix=" "/>
<text term="from" suffix=" "/>
<text variable="archive" suffix="."/>
<text variable="archive_location" prefix=" (" suffix=")"/>
</group>
</else-if>
</choose>
</if>
<else>
<choose>
<if variable="DOI">
<text variable="DOI" prefix="DOI: "/>
</if>
<else>
<choose>
<if type="post post-weblog webpage" match="any">
<group delimiter=" ">
<text term="retrieved" text-case="capitalize-first" suffix=" "/>
<group>
<date variable="accessed" form="text" suffix=", "/>
</group>
<text term="from"/>
<text variable="URL"/>
</group>
</if>
<else>
<group>
<text variable="URL"/>
</group>
</else>
</choose>
</else>
</choose>
</else>
</choose>
</macro>
<macro name="title">
<choose>
<if type="book graphic manuscript motion_picture report song speech thesis" match="any">
<choose>
<if variable="version" type="book" match="all">
<!---This is a hack until we have a computer program type -->
<text variable="title"/>
</if>
<else>
<text variable="title" font-style="italic"/>
</else>
</choose>
</if>
<else-if variable="reviewed-author">
<choose>
<if variable="reviewed-title">
<group delimiter=" ">
<text variable="title"/>
<group delimiter=", " prefix="[" suffix="]">
<text variable="reviewed-title" font-style="italic" prefix="Review of "/>
<names variable="reviewed-author" delimiter=", ">
<label form="verb-short" suffix=" "/>
<name and="symbol" initialize-with=". " delimiter=", "/>
</names>
</group>
</group>
</if>
<else>
<!-- assume `title` is title of reviewed work -->
<group delimiter=", " prefix="[" suffix="]">
<text variable="title" font-style="italic" prefix="Review of "/>
<names variable="reviewed-author" delimiter=", ">
<label form="verb-short" suffix=" "/>
<name and="symbol" initialize-with=". " delimiter=", "/>
</names>
</group>
</else>
</choose>
</else-if>
<else-if type="patent" variable="number" match="all">
<text macro="patent-number" font-style="italic"/>
</else-if>
<else>
<text variable="title"/>
</else>
</choose>
</macro>
<macro name="title-plus-extra">
<text macro="title"/>
<choose>
<if type="report thesis" match="any">
<group prefix=" (" suffix=")" delimiter=", ">
<group delimiter=" ">
<choose>
<if variable="genre" match="any">
<text variable="genre"/>
</if>
<else>
<text variable="collection-title"/>
</else>
</choose>
<text variable="number" prefix="No. "/>
</group>
<group delimiter=" ">
<text term="version" text-case="capitalize-first"/>
<text variable="version"/>
</group>
<text macro="edition"/>
</group>
</if>
<else-if type="post-weblog webpage" match="any">
<text variable="genre" prefix=" [" suffix="]"/>
</else-if>
<else-if variable="version">
<group delimiter=" " prefix=" (" suffix=")">
<text term="version" text-case="capitalize-first"/>
<text variable="version"/>
</group>
</else-if>
</choose>
<text macro="format" prefix=" [" suffix="]"/>
</macro>
<macro name="format">
<choose>
<if match="any" variable="medium">
<text variable="medium" text-case="capitalize-first"/>
</if>
<else-if type="dataset" match="any">
<text value="Data set"/>
</else-if>
</choose>
</macro>
<macro name="publisher">
<choose>
<if type="report" match="any">
<group delimiter=": ">
<text variable="publisher-place"/>
<text variable="publisher"/>
</group>
</if>
<else-if type="thesis" match="any">
<group delimiter=", ">
<text variable="publisher"/>
<text variable="publisher-place"/>
</group>
</else-if>
<else-if type="patent">
<group delimiter=": ">
<text variable="publisher-place"/>
<choose>
<if variable="publisher">
<text variable="publisher"/>
</if>
<else>
<text variable="authority"/>
</else>
</choose>
</group>
</else-if>
<else-if type="post-weblog webpage" match="none">
<group delimiter=", ">
<choose>
<if variable="event version" type="speech motion_picture" match="none">
<!-- Including version is to avoid printing the programming language for computerProgram /-->
<text variable="genre"/>
</if>
</choose>
<choose>
<if type="article-journal article-magazine article-newspaper" match="none">
<group delimiter=": ">
<choose>
<if variable="publisher-place">
<text variable="publisher-place"/>
</if>
<else>
<text variable="event-place"/>
</else>
</choose>
<text variable="publisher"/>
</group>
</if>
</choose>
</group>
</else-if>
</choose>
</macro>
<macro name="event">
<choose>
<if variable="container-title" match="none">
<choose>
<if variable="event">
<choose>
<if variable="genre" match="none">
<text term="presented at" text-case="capitalize-first" suffix=" "/>
<text variable="event"/>
</if>
<else>
<group delimiter=" ">
<text variable="genre" text-case="capitalize-first"/>
<text term="presented at"/>
<text variable="event"/>
</group>
</else>
</choose>
</if>
<else-if type="speech">
<text variable="genre" text-case="capitalize-first"/>
</else-if>
</choose>
</if>
</choose>
</macro>
<macro name="issued">
<choose>
<if type="bill legal_case legislation" match="none">
<choose>
<if variable="issued">
<group prefix=" (" suffix=")">
<date variable="issued">
<date-part name="year"/>
</date>
<text variable="year-suffix"/>
<choose>
<if type="speech" match="any">
<date variable="issued">
<date-part prefix=", " name="month"/>
</date>
</if>
<else-if type="article-journal bill book chapter graphic legal_case legislation motion_picture paper-conference report song dataset" match="none">
<date variable="issued">
<date-part prefix=", " name="month"/>
<date-part prefix=" " name="day"/>
</date>
</else-if>
</choose>
</group>
</if>
<else-if variable="status">
<group prefix=" (" suffix=")">
<text variable="status"/>
<text variable="year-suffix" prefix="-"/>
</group>
</else-if>
<else>
<group prefix=" (" suffix=")">
<text term="no date" form="short"/>
<text variable="year-suffix" prefix="-"/>
</group>
</else>
</choose>
</if>
</choose>
</macro>
<macro name="issued-sort">
<choose>
<if type="article-journal bill book chapter graphic legal_case legislation motion_picture paper-conference report song dataset" match="none">
<date variable="issued">
<date-part name="year"/>
<date-part name="month"/>
<date-part name="day"/>
</date>
</if>
<else>
<date variable="issued">
<date-part name="year"/>
</date>
</else>
</choose>
</macro>
<macro name="issued-year">
<choose>
<if variable="issued">
<group delimiter="/">
<date variable="original-date" form="text"/>
<group>
<date variable="issued">
<date-part name="year"/>
</date>
<text variable="year-suffix"/>
</group>
</group>
</if>
<else-if variable="status">
<text variable="status"/>
<text variable="year-suffix" prefix="-"/>
</else-if>
<else>
<text term="no date" form="short"/>
<text variable="year-suffix" prefix="-"/>
</else>
</choose>
</macro>
<macro name="edition">
<choose>
<if is-numeric="edition">
<group delimiter=" ">
<number variable="edition" form="ordinal"/>
<text term="edition" form="short"/>
</group>
</if>
<else>
<text variable="edition"/>
</else>
</choose>
</macro>
<macro name="locators">
<choose>
<if type="article-journal article-magazine" match="any">
<group prefix=", " delimiter=", ">
<group>
<text variable="volume" font-style="bold"/>
<text variable="issue" prefix="(" suffix=")"/>
</group>
<text variable="page"/>
</group>
<choose>
<!--for advanced online publication-->
<if variable="issued">
<choose>
<if variable="page issue" match="none">
<text variable="status" prefix=". "/>
</if>
</choose>
</if>
</choose>
</if>
<else-if type="article-newspaper">
<group delimiter=" " prefix=", ">
<label variable="page" form="short"/>
<text variable="page"/>
</group>
</else-if>
<else-if type="book graphic motion_picture report song chapter paper-conference entry-encyclopedia entry-dictionary" match="any">
<group prefix=" (" suffix=")" delimiter=", ">
<choose>
<if type="report" match="none">
<!-- edition for report is included in title-plus-extra /-->
<text macro="edition"/>
</if>
</choose>
<choose>
<if variable="volume" match="any">
<group>
<text term="volume" form="short" text-case="capitalize-first" suffix=" "/>
<number variable="volume" form="numeric"/>
</group>
</if>
<else>
<group>
<text term="volume" form="short" plural="true" text-case="capitalize-first" suffix=" "/>
<number variable="number-of-volumes" form="numeric" prefix="1&#8211;"/>
</group>
</else>
</choose>
<group>
<label variable="page" form="short" suffix=" "/>
<text variable="page"/>
</group>
</group>
</else-if>
<else-if type="legal_case">
<group prefix=" (" suffix=")" delimiter=" ">
<text variable="authority"/>
<choose>
<if variable="container-title" match="any">
<!--Only print year for cases published in reporters-->
<date variable="issued" form="numeric" date-parts="year"/>
</if>
<else>
<date variable="issued" form="text"/>
</else>
</choose>
</group>
</else-if>
<else-if type="bill legislation" match="any">
<date variable="issued" prefix=" (" suffix=")">
<date-part name="year"/>
</date>
</else-if>
</choose>
</macro>
<macro name="citation-locator">
<group>
<choose>
<if locator="chapter">
<label variable="locator" form="long" text-case="capitalize-first"/>
</if>
<else>
<label variable="locator" form="short"/>
</else>
</choose>
<text variable="locator" prefix=" "/>
</group>
</macro>
<macro name="container">
<choose>
<if type="post-weblog webpage" match="none">
<group>
<choose>
<if type="chapter paper-conference entry-encyclopedia" match="any">
<text term="in" text-case="capitalize-first" suffix=" "/>
</if>
</choose>
<group delimiter=", ">
<text macro="container-contributors"/>
<text macro="secondary-contributors"/>
<text macro="container-title"/>
</group>
</group>
</if>
</choose>
</macro>
<macro name="container-title">
<choose>
<if type="article article-journal article-magazine article-newspaper" match="any">
<text variable="container-title" font-style="italic" text-case="title"/>
</if>
<else-if type="bill legal_case legislation" match="none">
<text variable="container-title" font-style="italic"/>
</else-if>
</choose>
</macro>
<macro name="legal-cites">
<choose>
<if type="legal_case" match="any">
<group prefix=", " delimiter=" ">
<choose>
<if variable="container-title">
<text variable="volume"/>
<text variable="container-title"/>
<group delimiter=" ">
<!--change to label variable="section" as that becomes available -->
<text term="section" form="symbol"/>
<text variable="section"/>
</group>
<text variable="page"/>
</if>
<else>
<text variable="number" prefix="No. "/>
</else>
</choose>
</group>
</if>
<else-if type="bill legislation" match="any">
<group delimiter=", " prefix=", ">
<choose>
<if variable="number">
<!--There's a public law number-->
<text variable="number" prefix="Pub. L. No. "/>
<group delimiter=" ">
<!--change to label variable="section" as that becomes available -->
<text term="section" form="symbol"/>
<text variable="section"/>
</group>
<group delimiter=" ">
<text variable="volume"/>
<text variable="container-title"/>
<text variable="page-first"/>
</group>
</if>
<else>
<group delimiter=" ">
<text variable="volume"/>
<text variable="container-title"/>
<!--change to label variable="section" as that becomes available -->
<text term="section" form="symbol"/>
<text variable="section"/>
</group>
</else>
</choose>
</group>
</else-if>
</choose>
</macro>
<macro name="original-date">
<choose>
<if variable="original-date">
<group prefix="(" suffix=")" delimiter=" ">
<!---This should be localized-->
<text value="Original work published"/>
<date variable="original-date" form="text"/>
</group>
</if>
</choose>
</macro>
<citation et-al-min="3" et-al-use-first="1" et-al-subsequent-min="3" et-al-subsequent-use-first="1" disambiguate-add-year-suffix="true" disambiguate-add-names="true" disambiguate-add-givenname="true" collapse="year" givenname-disambiguation-rule="primary-name">
<sort>
<key macro="author"/>
<key macro="issued-sort"/>
</sort>
<layout prefix="(" suffix=")" delimiter="; ">
<group delimiter=", ">
<text macro="author-short"/>
<text macro="issued-year"/>
<text macro="citation-locator"/>
</group>
</layout>
</citation>
<bibliography hanging-indent="true" et-al-min="8" et-al-use-first="6" et-al-use-last="true" entry-spacing="0" line-spacing="2">
<sort>
<key macro="author"/>
<key macro="issued-sort" sort="ascending"/>
<key macro="title"/>
</sort>
<layout>
<group suffix=".">
<group delimiter=". ">
<text macro="author"/>
<text macro="issued"/>
<text macro="title-plus-extra"/>
<text macro="container"/>
</group>
<text macro="legal-cites"/>
<text macro="locators"/>
<group delimiter=", " prefix=". ">
<text macro="event"/>
<text macro="publisher"/>
</group>
</group>
<text macro="access" prefix=" "/>
<text macro="original-date" prefix=" "/>
</layout>
</bibliography>
</style>

View File

@@ -0,0 +1,7 @@
window.MathJax = {
tex: {
tags: 'ams'
},
displayAlign: "left",
displayIndent: "0em",
};

254
assets/revealjs/custom.scss Normal file
View File

@@ -0,0 +1,254 @@
:root {
--col_lightgray: #e7e7e7;
--col_blue: #000088;
--col_smooth_expost: #a7008b;
--col_constant: #dd9002;
--col_optimum: #666666;
--col_smooth: #187a00;
--col_pointwise: #008790;
--col_green: #61B94C;
--col_orange: #ffa600;
--col_yellow: #FCE135;
--col_amber_1: #FFF8E0FF;
--col_amber_2: #FFEBB2FF;
--col_amber_3: #FFDF81FF;
--col_amber_4: #FFD44EFF;
--col_amber_5: #FFCA27FF;
--col_amber_6: #FFC006FF;
--col_amber_7: #FFB200FF;
--col_amber_8: #FF9F00FF;
--col_amber_9: #FF8E00FF;
--col_amber_10: #FF6E00FF;
--col_blue_1: #E3F2FDFF;
--col_blue_2: #BADEFAFF;
--col_blue_3: #90CAF8FF;
--col_blue_4: #64B4F6FF;
--col_blue_5: #41A5F4FF;
--col_blue_6: #2096F2FF;
--col_blue_7: #1E87E5FF;
--col_blue_8: #1976D2FF;
--col_blue_9: #1465BFFF;
--col_blue_10: #0C46A0FF;
--col_blue-grey_1: #EBEEF1FF;
--col_blue-grey_2: #CED8DCFF;
--col_blue-grey_3: #B0BEC5FF;
--col_blue-grey_4: #90A4ADFF;
--col_blue-grey_5: #78909BFF;
--col_blue-grey_6: #5F7D8BFF;
--col_blue-grey_7: #536D79FF;
--col_blue-grey_8: #455964FF;
--col_blue-grey_9: #37464EFF;
--col_blue-grey_10: #263238FF;
--col_brown_1: #EEEBE9FF;
--col_brown_2: #D7CCC7FF;
--col_brown_3: #BBAAA4FF;
--col_brown_4: #A0877FFF;
--col_brown_5: #8C6D63FF;
--col_brown_6: #795447FF;
--col_brown_7: #6C4C40FF;
--col_brown_8: #5D3F37FF;
--col_brown_9: #4D332DFF;
--col_brown_10: #3E2622FF;
--col_cyan_1: #DFF7F9FF;
--col_cyan_2: #B2EBF2FF;
--col_cyan_3: #7FDEEAFF;
--col_cyan_4: #4CD0E0FF;
--col_cyan_5: #26C5D9FF;
--col_cyan_6: #00BBD3FF;
--col_cyan_7: #00ACC0FF;
--col_cyan_8: #0097A6FF;
--col_cyan_9: #00838EFF;
--col_cyan_10: #005F64FF;
--col_deep-orange_1: #FAE9E6FF;
--col_deep-orange_2: #FFCCBBFF;
--col_deep-orange_3: #FFAB91FF;
--col_deep-orange_4: #FF8A65FF;
--col_deep-orange_5: #FF7043FF;
--col_deep-orange_6: #FF5721FF;
--col_deep-orange_7: #F3511EFF;
--col_deep-orange_8: #E54A19FF;
--col_deep-orange_9: #D84314FF;
--col_deep-orange_10: #BF350CFF;
--col_deep-purple_1: #ECE6F6FF;
--col_deep-purple_2: #D1C4E9FF;
--col_deep-purple_3: #B29DDAFF;
--col_deep-purple_4: #9474CCFF;
--col_deep-purple_5: #7E57C1FF;
--col_deep-purple_6: #6639B7FF;
--col_deep-purple_7: #5E34B1FF;
--col_deep-purple_8: #512CA7FF;
--col_deep-purple_9: #45269FFF;
--col_deep-purple_10: #311A92FF;
--col_green_1: #E7F4E9FF;
--col_green_2: #C7E5C9FF;
--col_green_3: #A5D6A6FF;
--col_green_4: #80C684FF;
--col_green_5: #66BA6AFF;
--col_green_6: #4CAE50FF;
--col_green_7: #439F46FF;
--col_green_8: #388D3BFF;
--col_green_9: #2D7D32FF;
--col_green_10: #1A5E1FFF;
--col_grey_1: #F9F9F9FF;
--col_grey_2: #F4F4F4FF;
--col_grey_3: #EDEDEDFF;
--col_grey_4: #DFDFDFFF;
--col_grey_5: #BDBDBDFF;
--col_grey_6: #9E9E9EFF;
--col_grey_7: #747474FF;
--col_grey_8: #606060FF;
--col_grey_9: #414141FF;
--col_grey_10: #202020FF;
--col_indigo_1: #E7EAF6FF;
--col_indigo_2: #C5CAE9FF;
--col_indigo_3: #9FA7D9FF;
--col_indigo_4: #7985CBFF;
--col_indigo_5: #5B6BBFFF;
--col_indigo_6: #3F51B4FF;
--col_indigo_7: #3948ABFF;
--col_indigo_8: #303F9FFF;
--col_indigo_9: #273492FF;
--col_indigo_10: #19227EFF;
--col_light-blue_1: #E0F4FEFF;
--col_light-blue_2: #B2E5FCFF;
--col_light-blue_3: #80D3F9FF;
--col_light-blue_4: #4EC3F7FF;
--col_light-blue_5: #28B6F6FF;
--col_light-blue_6: #02A9F3FF;
--col_light-blue_7: #029AE5FF;
--col_light-blue_8: #0187D1FF;
--col_light-blue_9: #0177BDFF;
--col_light-blue_10: #00579AFF;
--col_light-green_1: #F1F8E9FF;
--col_light-green_2: #DCECC7FF;
--col_light-green_3: #C5E0A5FF;
--col_light-green_4: #ADD480FF;
--col_light-green_5: #9BCC65FF;
--col_light-green_6: #8BC34AFF;
--col_light-green_7: #7BB241FF;
--col_light-green_8: #679F38FF;
--col_light-green_9: #548B2EFF;
--col_light-green_10: #33681EFF;
--col_lime_1: #F8FAE6FF;
--col_lime_2: #F0F3C3FF;
--col_lime_3: #E5ED9BFF;
--col_lime_4: #DCE674FF;
--col_lime_5: #D3E057FF;
--col_lime_6: #CCDC39FF;
--col_lime_7: #BFCA33FF;
--col_lime_8: #AEB32BFF;
--col_lime_9: #9E9D24FF;
--col_lime_10: #817717FF;
--col_orange_1: #FFF2DFFF;
--col_orange_2: #FFDFB2FF;
--col_orange_3: #FFCC7FFF;
--col_orange_4: #FFB74CFF;
--col_orange_5: #FFA626FF;
--col_orange_6: #FF9800FF;
--col_orange_7: #FA8C00FF;
--col_orange_8: #F47B00FF;
--col_orange_9: #EE6C00FF;
--col_orange_10: #E55100FF;
--col_pink_1: #FCE4EBFF;
--col_pink_2: #F8BAD0FF;
--col_pink_3: #F38EB1FF;
--col_pink_4: #F06192FF;
--col_pink_5: #EB3F79FF;
--col_pink_6: #E91E63FF;
--col_pink_7: #D81A5FFF;
--col_pink_8: #C1185AFF;
--col_pink_9: #AC1357FF;
--col_pink_10: #870D4EFF;
--col_purple_1: #F2E5F4FF;
--col_purple_2: #E0BEE6FF;
--col_purple_3: #CD92D8FF;
--col_purple_4: #B967C7FF;
--col_purple_5: #AB46BBFF;
--col_purple_6: #9B26B0FF;
--col_purple_7: #8D24AAFF;
--col_purple_8: #7A1FA1FF;
--col_purple_9: #6A1A99FF;
--col_purple_10: #4A138CFF;
--col_red_1: #FFEBEDFF;
--col_red_2: #FFCCD2FF;
--col_red_3: #EE9999FF;
--col_red_4: #E57272FF;
--col_red_5: #EE5250FF;
--col_red_6: #F34335FF;
--col_red_7: #E53934FF;
--col_red_8: #D22E2EFF;
--col_red_9: #C52727FF;
--col_red_10: #B71B1BFF;
--col_teal_1: #DFF2F1FF;
--col_teal_2: #B2DFDAFF;
--col_teal_3: #7FCBC4FF;
--col_teal_4: #4CB6ACFF;
--col_teal_5: #26A599FF;
--col_teal_6: #009687FF;
--col_teal_7: #00887AFF;
--col_teal_8: #00796BFF;
--col_teal_9: #00685BFF;
--col_teal_10: #004C3FFF;
--col_yellow_1: #FFFDE6FF;
--col_yellow_2: #FFF8C4FF;
--col_yellow_3: #FFF49DFF;
--col_yellow_4: #FFF176FF;
--col_yellow_5: #FFED58FF;
--col_yellow_6: #FFEB3AFF;
--col_yellow_7: #FDD834FF;
--col_yellow_8: #FABF2CFF;
--col_yellow_9: #F8A725FF;
--col_yellow_10: #F47F17FF;
}
/*-- scss:defaults --*/
// $body-bg: #ffffff;
// $body-color: #7a6f69;
// $link-color: #005088;
// $selection-color: #00b0dc;
// $presentation-heading-color: $selection-color;
// $tabset-border-color: #bbb3b0;
/*-- scss:rules --*/
.slide-number,
.reveal.has-logo .slide-number {
bottom: 14px !important;
left: 50px !important;
top: unset !important;
color: #777777 !important;
}
// Alternatively center the slide numbers
// .slide-number,
// .reveal.has-logo .slide-number {
// bottom: 10px !important;
// left: 50% !important;
// top: unset !important;
// color: #777777 !important;
// }
.sup-zero-width {
display: inline-block;
vertical-align: super;
font-size: smaller;
width: 0px;
}
.zero-width {
display: inline-block;
width: 0px;
}
.fa {
width: 1.25em;
text-align: center;
}
/* Grey out links inside a row with class "greyed-out" */
tr.greyed-out,
tr.greyed-out a {
color: var(--col_grey_3) !important;
text-decoration: none !important;
}

172
assets/revealjs/sydney.scss Normal file
View File

@@ -0,0 +1,172 @@
// See https://quarto.org/docs/presentations/revealjs/themes.html#saas-variables
$brand-red: #004c93;
$brand-blue: #efe4bf;
$brand-yellow: #ec7206;
$brand-charcoal: #424242;
$brand-gray: #F1F1F1;
$brand-grey: #F1F1F1;
/*-- scss:defaults --*/
// icons
@import url("https://cdn.jsdelivr.net/npm/bootstrap-icons@1.8.1/font/bootstrap-icons.css");
// fonts
@import url('https://fonts.googleapis.com/css2?family=Roboto');
@import url(https://fonts.googleapis.com/css?family=Roboto+Condensed);
@import url(https://fonts.googleapis.com/css?family=Source+Code+Pro);
@import url('https://fonts.googleapis.com/css2?family=Patrick+Hand&display=swap');
$roboto: 'Roboto', Arial, sans-serif;
$roboto-cond: 'Roboto Condensed', Arial, sans-serif;
$code-font: 'Source Code Pro', 'Lucida Console', Monaco, monospace;
$blockquote-font: 'Patrick Hand', cursive;
// colors
$body-bg: #fff;
$body-color: #222;
$link-color: #2a76dd;
$selection-bg: lighten($link-color, 25%);
// website
$font-family-sans-serif: $roboto !default;
$font-family-monospace: $code-font !default;
$body-color: $brand-charcoal;
$navbar-bg: #333333;
//$navbar-color: #0F2E3D;
$link-color: $brand-red;
// headings
$presentation-heading-font: $roboto-cond !default;
$presentation-heading-color: #383d3d !default;
// title slide
$presentation-title-slide-text-align: left;
// body
$presentation-font-size-root: 28px; // default is 40px
$presentation-font-smaller: 0.9 !default;
$presentation-line-height: 1.3; // default is 1.3
// code blocks
$code-block-bg: $brand-grey;
// $code-block-border-color: lighten($body-color, 60%);
$code-block-font-size: 0.75em;
// $code-color: $brand-charcoal; // var(quarto-hl-fu-color);
// $code-bg: transparent;
/*-- scss:rules --*/
// .reveal .slide-background:first-child {
// background-image: url("https://raw.githubusercontent.com/DATA2002/data/master/usydlogo-white.svg");
// background-repeat: no-repeat;
// background-position: 95% 95%;
// background-size: 15%;
// background-color: $brand-red;
// }
.reveal .slide aside,
.reveal .slide div.aside {
position: absolute;
bottom: 20px;
font-size: 0.6em;
color: #8f8f8f;
}
.red {
color: $brand-red;
}
.blue {
color: $brand-blue;
}
.slide smaller {
font-size: $presentation-font-smaller;
}
.blockquote,
.reveal .slide blockquote {
/* border-left: 3px solid $text-muted; */
/* padding-left: 0.5em; */
display: block;
position: relative;
font-family: $blockquote-font;
font-size: 1.2em;
/* font-style: italic; */
color: $brand-charcoal;
margin-top: 0.1em;
margin-bottom: 0.2em;
border-left: solid 0.3rem $brand-blue;
/* matches with .callouts */
border-top: solid 1px silver;
border-bottom: solid 1px silver;
border-right: solid 1px silver;
/* box-shadow: 0 0 6px rgba(0,0,0,0.5); */
/* background-color: #e64626; */
/* padding: 0.5em; */
-moz-border-radius: 5px;
-webkit-border-radius: 5px;
width: unset;
margin: var(--r-block-margin) auto;
padding: 0.625rem 1.75rem;
}
.reveal .slides section .callout {
font-size: inherit;
}
.reveal .callout.callout-style-simple .callout-body,
.reveal .callout.callout-style-default .callout-body,
.reveal .callout.callout-style-simple div.callout-caption,
.reveal .callout.callout-style-default div.callout-caption {
font-size: inherit;
}
.reveal .callout.callout-style-default .callout-icon::before,
.reveal .callout.callout-style-simple .callout-icon::before {
height: 2rem;
width: 2rem;
background-size: 2rem 2rem;
}
.reveal .title-slide {
background-color: $brand-blue;
}
// customisations for printing to pdf
.print-pdf .reveal .title-slide {
background-color: #FFFFFF;
}
.print-pdf {
section.has-dark-background,
section.has-dark-background h1,
section.has-dark-background h2,
section.has-dark-background h3,
section.has-dark-background h4,
section.has-dark-background h5,
section.has-dark-background h6 {
color: #000000 !important;
}
}
.print-pdf .reveal .slide-background {
background-color: #FFFFFF !important;
}
.print-pdf .reveal .has-dark-background {
color: #222 !important;
}

66
assets/ude_logo.svg Normal file
View File

@@ -0,0 +1,66 @@
<?xml version="1.0" encoding="utf-8"?>
<svg version="1.2" viewBox="0 0 1052.3625 414.5675" height="414.5675" width="1052.3625" id="ude-logo" preserveAspectRatio="none" xmlns="http://www.w3.org/2000/svg">
<style type="text/css">
path { fill:#003B7A;fill-opacity:1;fill-rule:nonzero;stroke:none }
</style>
<defs id="defs6">
<clipPath id="clipPath16" clipPathUnits="userSpaceOnUse">
<path id="path18" d="m 0,331.654 841.89,0 L 841.89,0 0,0 0,331.654 Z"/>
</clipPath>
</defs>
<g transform="matrix(1.25,0,0,-1.25,0,414.5675)">
<g>
<g clip-path="url(#clipPath16)">
<g transform="translate(59.0718,56.833)">
<path d="m 0,0 c 0,5.246 -1.094,7.721 -4.588,7.721 -8.666,0 -13.325,-17.549 -13.325,-29.418 0,-5.17 1.093,-7.645 4.659,-7.645 C -4.588,-29.342 0,-11.869 0,0 m -14.271,-36.988 c -8.595,0 -13.474,5.24 -13.474,15.074 0,17.035 7.501,37.279 24.249,37.279 8.446,0 13.324,-5.314 13.324,-15.146 0,-16.963 -7.426,-37.207 -24.099,-37.207"/>
</g>
<g transform="translate(82.8135,20.5752)">
<path d="m 0,0 c -1.384,-6.846 -4.079,-14.199 -13.98,-14.199 -3.352,0 -6.482,0.437 -6.482,1.238 0,0.287 0.072,0.506 0.145,0.799 l 1.529,5.099 c 0.147,0.36 0.294,0.508 0.512,0.508 0.216,0 1.455,-0.365 2.984,-0.365 4.951,0 5.825,3.348 6.772,8.008 l 5.68,28.836 -5.172,0 c -0.436,0 -1.018,0.074 -1.018,0.73 0,0.291 0.075,0.58 0.144,0.871 l 0.874,4.082 c 0.075,0.651 0.219,0.87 1.021,0.87 l 5.388,0 0.875,4.589 c 1.092,5.897 2.985,11.651 12.959,11.651 3.058,0 7.355,-0.949 7.355,-2.041 0,-0.221 -0.074,-0.363 -0.146,-0.582 L 17.694,44.996 C 17.475,44.559 17.256,44.49 17.11,44.49 c -0.728,0 -2.184,0.944 -4.369,0.944 -3.786,0 -4.296,-2.838 -4.951,-5.825 l -0.654,-3.132 8.3,0 c 0.655,0 0.874,-0.364 0.874,-0.653 0,-0.293 -0.146,-0.586 -0.219,-0.875 L 14.78,30.727 c -0.219,-0.655 -0.291,-0.803 -1.019,-0.803 l -7.864,0 L 0,0 Z"/>
</g>
<g transform="translate(108.4463,20.5752)">
<path d="m 0,0 c -1.384,-6.846 -4.079,-14.199 -13.98,-14.199 -3.35,0 -6.482,0.437 -6.482,1.238 0,0.287 0.072,0.506 0.147,0.799 l 1.528,5.099 c 0.146,0.36 0.29,0.508 0.509,0.508 0.218,0 1.456,-0.365 2.986,-0.365 4.954,0 5.825,3.348 6.772,8.008 l 5.679,28.836 -5.169,0 c -0.437,0 -1.021,0.074 -1.021,0.73 0,0.291 0.073,0.58 0.148,0.871 l 0.873,4.082 c 0.071,0.651 0.219,0.87 1.019,0.87 l 5.388,0 0.873,4.589 c 1.092,5.897 2.986,11.651 12.962,11.651 3.059,0 7.354,-0.949 7.354,-2.041 0,-0.221 -0.072,-0.363 -0.146,-0.582 L 17.691,44.996 C 17.475,44.559 17.257,44.49 17.11,44.49 c -0.728,0 -2.184,0.944 -4.367,0.944 -3.788,0 -4.298,-2.838 -4.953,-5.825 l -0.656,-3.132 8.301,0 c 0.656,0 0.875,-0.364 0.875,-0.653 0,-0.293 -0.146,-0.586 -0.219,-0.875 L 14.78,30.727 c -0.218,-0.655 -0.291,-0.803 -1.019,-0.803 l -7.865,0 L 0,0 Z"/>
</g>
<g transform="translate(132.6211,41.4697)">
<path d="m 0,0 c 3.132,0 12.889,0 12.889,6.697 0,1.893 -1.165,3.573 -3.351,3.573 C 2.694,10.27 0.655,2.693 0,0 m 16.893,-16.453 c 0.073,-0.219 0.219,-0.438 0.219,-0.656 0,-0.95 -6.772,-4.516 -14.199,-4.516 -8.736,0 -12.67,5.459 -12.67,13.543 0,14.562 9.394,24.906 20.607,24.906 6.846,0 10.776,-3.793 10.776,-9.615 0,-13.76 -18.494,-13.76 -22.645,-13.76 0,-2.185 -0.582,-7.791 6.262,-7.791 4.295,0 8.155,2.91 9.248,2.91 0.363,0 0.438,-0.216 0.582,-0.509 l 1.82,-4.512 z"/>
</g>
<g transform="translate(183.5234,21.9561)" id="g36">
<path d="m 0,0 c -0.145,-0.801 -0.291,-0.873 -1.019,-0.873 l -6.771,0 c -0.582,0 -0.947,0.148 -0.947,0.728 0,0.219 0.072,0.508 0.072,0.801 l 4.805,20.752 c 0.365,1.455 0.656,2.91 0.656,4.442 0,1.673 -0.656,2.841 -2.185,2.841 -6.698,0 -9.101,-9.031 -10.266,-14.273 L -18.785,0 c -0.146,-0.801 -0.293,-0.873 -1.021,-0.873 l -6.771,0 c -0.584,0 -0.946,0.148 -0.946,0.728 0,0.219 0.074,0.508 0.074,0.801 l 4.948,21.918 c 0.438,1.819 0.875,3.637 0.875,5.969 0,2.186 -0.656,3.203 -0.656,4.516 0,0.509 0.511,0.656 0.874,0.798 l 5.827,2.26 c 0.219,0.071 0.363,0.221 0.727,0.221 0.802,0 1.457,-3.279 1.457,-7.359 1.965,2.33 6.116,7.359 12.085,7.359 4.734,0 7.355,-3.643 7.355,-7.647 0,-1.892 -0.29,-3.859 -0.727,-5.683 L 0,0 Z"/>
</g>
<g transform="translate(230.2773,65.1338)" id="g40">
<path id="path42" d="m 0,0 c -2.257,0 -4.079,1.822 -4.079,4.078 0,2.186 1.822,4.08 4.079,4.08 2.184,0 4.077,-1.894 4.077,-4.08 C 4.077,1.822 2.184,0 0,0 m -6.917,-42.594 c -0.148,-0.658 -0.22,-1.457 -0.947,-1.457 l -3.861,0 c -0.437,0 -0.728,0.149 -0.728,0.367 0,0.288 0.073,0.649 0.147,0.87 l 6.262,29.49 -5.752,0 c -0.51,0 -0.584,0.219 -0.584,0.511 0,0.145 0,0.288 0.074,0.583 l 0.51,2.328 c 0.146,0.511 0.365,0.8 0.874,0.8 l 9.685,0 c 1.017,0 1.162,-0.07 1.162,-0.582 0,-0.435 -0.218,-1.017 -0.362,-1.818 l -6.48,-31.092 z"/>
</g>
<g transform="translate(275.9316,46.1318)">
<path id="path46" d="m 0,0 c 0.219,0.949 0.438,1.967 0.438,2.912 0,2.041 -1.092,3.129 -3.277,3.129 -7.646,0 -9.902,-7.643 -11.65,-15.506 l -3.277,-14.855 c -0.147,-0.512 -0.29,-0.729 -0.875,-0.729 l -3.786,0 c -0.364,0 -0.582,0.149 -0.582,0.436 0,0.144 0,0.363 0.074,0.511 L -17.838,0 c 0.218,0.949 0.437,1.967 0.437,2.912 0,2.041 -1.093,3.129 -3.279,3.129 -7.645,0 -10.483,-9.684 -11.503,-14.488 l -3.352,-15.873 c -0.144,-0.512 -0.287,-0.729 -0.871,-0.729 l -3.788,0 c -0.363,0 -0.582,0.149 -0.582,0.436 0,0.144 0,0.363 0.075,0.511 l 5.166,24.463 c 0.294,1.532 0.513,3.131 0.513,4.155 0,1.453 -0.293,2.91 -0.582,4.367 0,0.291 0.363,0.51 0.654,0.582 l 2.476,1.092 c 0.437,0.144 0.728,0.363 1.018,0.363 0.8,0 1.312,-1.82 1.312,-3.637 0,-1.461 -0.147,-2.33 -0.147,-3.279 l 0.147,0 c 2.402,3.496 5.898,6.916 11.65,6.916 3.495,0 6.116,-1.963 6.116,-6.916 l 0.145,0 C -9.685,7.5 -6.188,10.92 -0.654,10.92 3.132,10.92 5.972,8.957 5.972,5.098 5.972,3.348 5.607,1.674 5.244,0 L 0.072,-24.32 c -0.143,-0.512 -0.29,-0.729 -0.871,-0.729 l -3.788,0 c -0.364,0 -0.581,0.149 -0.581,0.436 0,0.144 0,0.363 0.073,0.511 L 0,0 Z"/>
</g>
<g transform="translate(320.9395,25.9619)" id="g48">
<path id="path50" d="m 0,0 c 4.441,0 8.301,1.891 10.776,5.02 4.732,5.466 7.572,19.009 7.572,26 0,8.519 -4.661,9.099 -9.611,9.099 l -4.66,0 L -4.369,0 0,0 Z m 7.427,45 c 8.372,0 16.892,-0.293 16.892,-14.055 0,-7.134 -2.186,-17.256 -6.481,-25.486 C 13.687,-2.402 6.844,-4.879 -1.821,-4.879 l -8.667,0 c -0.362,0 -0.581,0.149 -0.581,0.512 L -0.729,44.27 C -0.583,44.852 -0.293,45 0.145,45 l 7.282,0 z"/>
</g>
<g transform="translate(371.4771,47.5127)" id="g52">
<path id="path54" d="m 0,0 c 0,3.061 -1.749,5.027 -5.316,5.027 -8.299,0 -10.63,-9.468 -11.431,-13.037 C -12.743,-8.01 0,-8.01 0,0 m 2.184,-21.916 c 0.074,-0.143 0.146,-0.217 0.146,-0.361 0,-0.875 -6.408,-5.172 -13.471,-5.172 -8.227,0 -11.795,5.24 -11.795,13.324 0,12.381 7.572,23.664 18.422,23.664 6.479,0 9.609,-3.932 9.609,-9.32 0,-12.668 -16.017,-12.668 -22.426,-12.74 0,-0.657 -0.072,-1.241 -0.072,-1.823 0,-5.166 2.039,-8.008 6.771,-8.008 6.481,0 9.392,3.493 10.414,3.493 0.29,0 0.509,-0.215 0.653,-0.432 l 1.749,-2.625 z"/>
</g>
<g transform="translate(385.9688,46.4932)" id="g56">
<path id="path58" d="m 0,0 c 0.291,1.531 0.509,3.131 0.509,4.154 0,1.453 -0.29,2.91 -0.581,4.367 0,0.292 0.363,0.51 0.655,0.583 l 2.622,1.091 c 0.437,0.145 0.728,0.364 1.021,0.364 0.581,0 1.38,-2.182 1.38,-4.444 0,-1.453 -0.218,-2.617 -0.218,-3.273 l 0.147,0 c 2.694,3.785 6.698,7.717 13.177,7.717 3.789,0 6.628,-1.963 6.628,-5.823 0,-1.75 -0.362,-3.423 -0.727,-5.097 l -5.169,-24.321 c -0.148,-0.511 -0.294,-0.728 -0.876,-0.728 l -3.785,0 c -0.365,0 -0.584,0.148 -0.584,0.435 0,0.145 0,0.364 0.072,0.512 l 5.097,24.102 c 0.219,0.949 0.438,1.966 0.438,2.912 0,2.041 -1.094,3.129 -3.277,3.129 C 8.667,5.68 4.37,-4.004 3.351,-8.809 L 0,-24.682 c -0.147,-0.511 -0.291,-0.728 -0.872,-0.728 l -3.788,0 c -0.365,0 -0.584,0.148 -0.584,0.435 0,0.145 0,0.364 0.075,0.512 L 0,0 Z"/>
</g>
<g transform="translate(421.8706,21.8115)" id="g60">
<path id="path62" d="m 0,0 c -0.145,-0.512 -0.291,-0.729 -0.872,-0.729 l -3.788,0 c -0.363,0 -0.583,0.149 -0.583,0.436 0,0.145 0,0.363 0.076,0.512 L 5.388,49.805 c 0.073,0.437 0.219,1.019 0.73,1.164 l 3.642,0.873 c 0.144,0 0.363,0.144 0.653,0.144 0.509,0 0.584,-0.216 0.509,-0.58 L 4.151,19.805 4.297,19.658 21.917,35.314 c 0.146,0.073 0.365,0.293 0.583,0.293 0.148,0 0.438,-0.22 0.584,-0.293 l 2.474,-2.037 c 0.147,-0.15 0.293,-0.293 0.293,-0.437 0,-0.295 -0.146,-0.438 -0.293,-0.512 L 9.466,18.859 20.389,1.383 c 0.072,-0.145 0.219,-0.289 0.219,-0.438 0,-0.216 -0.291,-0.507 -0.509,-0.582 l -3.205,-1.967 c -0.219,-0.144 -0.437,-0.218 -0.582,-0.218 -0.218,0 -0.437,0.218 -0.511,0.367 L 3.932,18.641 0,0 Z"/>
</g>
<g transform="translate(470.0039,47.5127)" id="g64">
<path id="path66" d="m 0,0 c 0,3.061 -1.746,5.027 -5.316,5.027 -8.299,0 -10.629,-9.468 -11.433,-13.037 C -12.743,-8.01 0,-8.01 0,0 m 2.185,-21.916 c 0.073,-0.143 0.145,-0.217 0.145,-0.361 0,-0.875 -6.406,-5.172 -13.469,-5.172 -8.228,0 -11.798,5.24 -11.798,13.324 0,12.381 7.575,23.664 18.422,23.664 6.482,0 9.612,-3.932 9.612,-9.32 0,-12.668 -16.017,-12.668 -22.426,-12.74 0,-0.657 -0.074,-1.241 -0.074,-1.823 0,-5.166 2.041,-8.008 6.77,-8.008 6.485,0 9.396,3.493 10.415,3.493 0.292,0 0.51,-0.215 0.656,-0.432 l 1.747,-2.625 z"/>
</g>
<g transform="translate(484.498,46.4932)" id="g68">
<path id="path70" d="m 0,0 c 0.291,1.531 0.509,3.131 0.509,4.154 0,1.453 -0.29,2.91 -0.581,4.367 0,0.292 0.363,0.51 0.655,0.583 l 2.621,1.091 c 0.438,0.145 0.728,0.364 1.021,0.364 0.582,0 1.38,-2.182 1.38,-4.444 0,-1.453 -0.217,-2.617 -0.217,-3.273 l 0.145,0 c 2.696,3.785 6.7,7.717 13.179,7.717 3.788,0 6.628,-1.963 6.628,-5.823 0,-1.75 -0.363,-3.423 -0.729,-5.097 l -5.169,-24.321 c -0.146,-0.511 -0.294,-0.728 -0.874,-0.728 l -3.786,0 c -0.366,0 -0.584,0.148 -0.584,0.435 0,0.145 0,0.364 0.073,0.512 l 5.098,24.102 c 0.218,0.949 0.436,1.966 0.436,2.912 0,2.041 -1.093,3.129 -3.277,3.129 C 8.667,5.68 4.369,-4.004 3.351,-8.809 L 0,-24.682 c -0.146,-0.511 -0.291,-0.728 -0.872,-0.728 l -3.789,0 c -0.364,0 -0.583,0.148 -0.583,0.435 0,0.145 0,0.364 0.074,0.512 L 0,0 Z"/>
</g>
<path id="path72" d="m 0,122.181 841.89,0 0,209.473 -841.89,0 0,-209.473 z"/>
<g transform="translate(57.2827,204.4829)" id="g74">
<path id="path76" d="m 0,0 c -2.759,-1.852 -6.607,-2.191 -11.827,-2.191 l -12.117,0 0,41.984 12.117,0 c 5.22,0 9.018,-0.238 11.827,-2.127 3.386,-2.296 5.401,-6.66 5.401,-12.4 l 0,-12.867 C 5.401,6.658 3.386,2.236 0,0 m -4.02,23.254 c 0,6.09 -2.347,8.438 -8.438,8.438 l -2.184,0 0,-25.788 2.184,0 c 6.025,0 8.438,2.415 8.438,8.506 l 0,8.844 z M 51.456,-3.225 c -10.17,0 -15.049,4.829 -15.049,14.653 l 0,28.365 9.307,0 0,-26.246 c 0,-6.084 0.918,-8.668 5.742,-8.668 4.877,0 5.74,2.636 5.74,8.668 l 0,26.246 9.301,0 0,-28.365 c 0,-9.882 -4.825,-14.653 -15.041,-14.653 m 48.232,1.034 -0.06,41.984 9.307,0 0.053,-41.984 -9.3,0 z m 53.46,35.615 c -2.873,0 -4.648,-1.611 -4.648,-3.853 0,-2.128 1.667,-3.681 5.05,-5.169 4.251,-1.838 7.987,-3.043 10.509,-5.052 2.811,-2.244 4.422,-5.633 4.422,-9.708 0,-7.644 -5.735,-12.915 -14.47,-12.915 -6.605,0 -11.653,2.873 -15.165,8.492 l 7.241,5.117 c 2.413,-3.969 4.772,-5.799 8.158,-5.799 3.216,0 5.281,1.889 5.281,4.412 0,2.296 -1.493,4.024 -4.647,5.346 -4.137,1.719 -7.757,2.934 -10.396,4.987 -2.93,2.31 -4.423,5.517 -4.423,9.417 0,7.412 5.221,12.184 13.609,12.184 6.083,0 10.74,-2.52 13.724,-7.408 l -6.663,-4.776 c -2.242,3.172 -4.71,4.725 -7.582,4.725 m 67.077,-13.509 c 4.477,-1.431 6.713,-4.757 6.713,-10.048 0,-8.212 -4.82,-12.058 -14.7,-12.058 l -14.181,0 0,41.984 13.897,0 c 9.473,0 14.125,-3.398 14.125,-10.687 0,-4.538 -1.775,-7.346 -5.854,-9.191 m -9.189,13.388 -3.676,0 0,-10.399 3.676,0 c 3.79,0 5.624,1.73 5.624,5.223 0,3.621 -1.782,5.176 -5.624,5.176 m 0.346,-16.934 -4.022,0 0,-11.715 4.022,0 c 4.187,0 6.203,1.836 6.203,5.845 0,4.022 -2.016,5.87 -6.203,5.87 m 61.044,-19.594 c -10.173,0 -15.051,4.829 -15.051,14.653 l 0,28.365 9.3,0 0,-26.246 c 0,-6.084 0.925,-8.668 5.751,-8.668 4.874,0 5.741,2.636 5.741,8.668 l 0,26.246 9.297,0 0,-28.365 c 0,-9.882 -4.824,-14.653 -15.038,-14.653 m 68.678,19.239 9.18,-18.205 -10.268,0 -8.158,17.111 -3.104,0 0,-17.111 -9.298,0 0,41.984 10.557,0 c 5.631,0 9.882,-0.174 12.924,-1.787 3.788,-2.004 5.857,-5.742 5.857,-10.613 0,-5.633 -2.702,-9.655 -7.69,-11.379 m -9.769,16.656 -2.581,0 0,-11.024 2.581,0 c 5.631,0 8.151,0.801 8.151,5.508 0,4.717 -2.52,5.516 -8.151,5.516 m 61.037,-19.807 0,7.174 14.303,0 0,-22.746 -4.131,0 -1.329,3.398 c -2.466,-2.766 -5.219,-3.962 -9.066,-3.962 -4.242,0 -7.87,1.421 -10.224,3.906 -3.438,3.549 -3.722,7.97 -3.722,14.462 l 0,7.412 c 0,6.427 0.284,10.917 3.722,14.471 2.415,2.525 6.033,3.905 10.504,3.905 8.511,0 13.845,-4.822 14.246,-12.918 l -9.417,0 c -0.226,3.15 -1.901,4.814 -4.829,4.814 -4.591,0 -4.816,-2.918 -4.816,-8.661 l 0,-10.571 c 0,-5.685 0.225,-8.668 4.816,-8.668 3.396,0 4.829,2.004 4.829,6.366 l 0,1.618 -4.886,0 z" style="fill:white !important;"/>
</g>
<g transform="translate(91.1489,168.4702)" id="g78">
<path id="path80" d="m 0,0 0,-8.094 -29.519,0 0,41.98 28.315,0 0,-8.104 -19.012,0 0,-7.527 12.98,0 0,-8.09 -12.98,0 L -20.216,0 0,0 Z m 39.045,27.509 c -2.87,0 -4.647,-1.61 -4.647,-3.852 0,-2.123 1.662,-3.668 5.052,-5.171 4.251,-1.831 7.985,-3.034 10.509,-5.052 2.809,-2.23 4.421,-5.627 4.421,-9.695 0,-7.644 -5.743,-12.921 -14.474,-12.921 -6.598,0 -11.654,2.861 -15.16,8.495 l 7.239,5.111 c 2.413,-3.958 4.767,-5.802 8.158,-5.802 3.209,0 5.28,1.893 5.28,4.42 0,2.295 -1.497,4.021 -4.651,5.338 -4.139,1.726 -7.759,2.927 -10.391,5.002 -2.928,2.295 -4.429,5.512 -4.429,9.415 0,7.413 5.229,12.171 13.609,12.171 6.091,0 10.739,-2.52 13.731,-7.406 L 46.63,22.797 c -2.243,3.161 -4.713,4.712 -7.585,4.712 m 54.037,0 c -2.872,0 -4.655,-1.61 -4.655,-3.852 0,-2.123 1.674,-3.668 5.058,-5.171 4.249,-1.831 7.985,-3.034 10.514,-5.052 2.81,-2.23 4.414,-5.627 4.414,-9.695 0,-7.644 -5.742,-12.921 -14.464,-12.921 -6.611,0 -11.657,2.861 -15.164,8.495 l 7.235,5.111 c 2.407,-3.958 4.768,-5.802 8.151,-5.802 3.222,0 5.287,1.893 5.287,4.42 0,2.295 -1.493,4.021 -4.653,5.338 -4.138,1.726 -7.751,2.927 -10.395,5.002 -2.926,2.295 -4.416,5.512 -4.416,9.415 0,7.413 5.22,12.171 13.604,12.171 6.09,0 10.736,-2.52 13.721,-7.406 l -6.657,-4.765 c -2.242,3.161 -4.709,4.712 -7.58,4.712 M 165.266,0 l 0,-8.094 -29.513,0 0,41.98 28.304,0 0,-8.104 -19.008,0 0,-7.527 12.987,0 0,-8.09 -12.987,0 0,-10.165 20.217,0 z m 50.588,-8.094 -14.754,28.365 0.17,-28.365 -8.091,0 0,41.98 8.952,0 13.44,-25.506 -0.172,25.506 8.095,0 0,-41.98 -7.64,0 z" style="fill:white !important;"/>
</g>
<g transform="translate(44.564,269.7212)" id="g82">
<path id="path84" d="m 0,0 c -7.519,0 -11.122,3.566 -11.122,10.835 l 0,20.974 6.877,0 0,-19.414 c 0,-4.499 0.673,-6.408 4.245,-6.408 3.616,0 4.249,1.955 4.249,6.408 l 0,19.414 6.876,0 0,-20.974 C 11.125,3.527 7.563,0 0,0 m 36.652,0.756 -10.913,20.985 0.125,-20.985 -5.985,0 0,31.053 6.621,0 9.944,-18.86 -0.132,18.86 5.994,0 0,-31.053 -5.654,0 z m 15.033,0 -0.039,31.053 6.883,0 0.039,-31.053 -6.883,0 z m 29.858,0 -7.262,0 -9.509,31.053 6.878,0 6.282,-21.704 6.242,21.704 6.886,0 -9.517,-31.053 z m 36.735,5.993 0,-5.993 -21.824,0 0,31.053 20.933,0 0,-5.988 -14.049,0 0,-5.562 9.593,0 0,-5.989 -9.593,0 0,-7.521 14.94,0 z m 22.898,7.477 6.795,-13.47 -7.602,0 -6.033,12.664 -2.297,0 0,-12.664 -6.878,0 0,31.053 7.814,0 c 4.166,0 7.307,-0.129 9.561,-1.317 2.797,-1.488 4.327,-4.246 4.327,-7.854 0,-4.165 -1.998,-7.128 -5.687,-8.412 m -7.222,12.316 -1.915,0 0,-8.151 1.915,0 c 4.167,0 6.032,0.591 6.032,4.07 0,3.494 -1.865,4.081 -6.032,4.081 m 28.326,0.555 c -2.123,0 -3.439,-1.193 -3.439,-2.849 0,-1.566 1.234,-2.719 3.744,-3.816 3.133,-1.354 5.897,-2.256 7.767,-3.739 2.08,-1.656 3.27,-4.164 3.27,-7.179 0,-5.654 -4.245,-9.559 -10.702,-9.559 -4.883,0 -8.625,2.126 -11.22,6.29 l 5.353,3.777 c 1.788,-2.932 3.532,-4.286 6.033,-4.286 2.381,0 3.915,1.399 3.915,3.262 0,1.703 -1.103,2.984 -3.445,3.951 -3.058,1.277 -5.738,2.166 -7.683,3.698 -2.166,1.704 -3.274,4.082 -3.274,6.968 0,5.479 3.868,9.004 10.063,9.004 4.503,0 7.943,-1.869 10.153,-5.477 l -4.925,-3.527 c -1.663,2.34 -3.484,3.482 -5.61,3.482 m 18.861,-26.341 -0.044,31.053 6.877,0 0.047,-31.053 -6.88,0 z m 27.44,25.065 0,-25.065 -6.886,0 0,25.065 -7.859,0 0,5.988 22.592,0 0,-5.988 -7.847,0 z m 24.161,13.584 5.222,0 0,-5.599 -5.222,0 0,5.599 z m -7.518,0 5.183,0 0,-5.599 -5.183,0 0,5.599 z m 10.403,-7.596 8.923,-31.053 -6.666,0 -1.664,6.203 -9.34,0 -1.616,-6.203 -6.672,0 8.925,31.053 8.11,0 z m -0.719,-19.538 -3.314,14.02 -3.353,-14.02 6.667,0 z m 26.585,13.55 0,-25.065 -6.877,0 0,25.065 -7.861,0 0,5.988 22.597,0 0,-5.988 -7.859,0 z" style="fill:white !important;"/>
</g>
</g>
</g>
</g>
</svg>

After

Width:  |  Height:  |  Size: 16 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 1.9 KiB