switch to new theme due to old theme not liking newer versions. New theme seems kick-arse, however

This commit is contained in:
Don Harper 2019-08-17 19:36:46 -05:00
parent 1909ea34ea
commit e3ac8b96f5
531 changed files with 147790 additions and 66 deletions

View file

@ -0,0 +1,5 @@
/*
X-Frame-Options: SAMEORIGIN
X-XSS-Protection: 1; mode=block
Referrer-Policy: no-referrer
X-Content-Type-Options: nosniff

Binary file not shown.

After

Width:  |  Height:  |  Size: 4.1 KiB

View file

@ -0,0 +1,98 @@
.remark-slide-content {
font-family: 'Quattrocento Sans', -apple-system, BlinkMacSystemFont, 'avenir next', avenir, 'helvetica neue', helvetica, arial, sans-serif;
}
.remark-slide-content pre,
.remark-slide-content code,
.remark-slide-content kbd,
.remark-slide-content tt,
.remark-slide-content samp {
font-family: Monaco, "Lucida Sans Typewriter", "Lucida Console", "Andale Mono", "Consolas", monospace;
}
.remark-slide-content h1,
.remark-slide-content h2,
.remark-slide-content h3 {
font-family: Quattrocento, "Goudy Old Style", "Big Caslon", Palatino, serif;
font-weight: bold;
}
.remark-slide-content table {
border-spacing: 0;
border-collapse: collapse;
display: block;
width: 100%;
overflow: auto;
}
.remark-slide-content table tr:nth-child(2n) {
background-color: #f6f8fa;
}
.remark-slide-content table th,
.remark-slide-content table td {
display: table-cell;
vertical-align: inherit;
padding: 0.15em 0.3em;
border: 1px solid #dfe2e5;
}
.remark-slide-content table th {
font-weight: bold;
}
.remark-slide-content pre {
overflow: auto;
}
.remark-slide-content pre > code {
border-radius: 0.4em;
padding: 0.5em;
background-color: #f6f8fa;
}
.remark-slide-content p > code,
.remark-slide-content li > code,
.remark-slide-content a > code {
background-color: #f6f8fa;
margin: 0;
border-radius: 0.2em;
padding: 0.15em 0.25em;
}
.remark-slide-content blockquote {
margin: 0;
padding: 0 0.5em;
color: #6a737d;
border-left: 0.125em solid #dfe2e5;
}
.remark-slide-content .remark-slide-number,
.remark-slide-content .footer li {
background-color: rgba(255, 255, 255, 0.5);
opacity: 0.5;
}
.remark-slide-content.smokescreen > h1,
.remark-slide-content img[src~=smokescreen] {
background-color: rgba(0, 0, 0, 0.7);
}
.remark-slide-content.smokescreen > h1,
.remark-slide-content.smokescreen > h2,
.remark-slide-content.smokescreen > h3 {
color: white;
text-shadow: 4px 4px 12px rgba(0, 0, 0, 0.8), 8px 8px 20px rgba(0, 0, 0, 0.9);
}
@media print {
.remark-slide-content.smokescreen {
-webkit-print-color-adjust: exact;
-webkit-filter: opacity(1);
}
}
.remark-slide-content.fogscreen > h1 {
background-color: rgba(255, 255, 255, 0.7);
}
.remark-slide-content.fogscreen > h1,
.remark-slide-content.fogscreen > h2,
.remark-slide-content.fogscreen > h3 {
color: black;
text-shadow: 4px 4px 12px rgba(0, 0, 0, 0.5), 8px 8px 20px rgba(0, 0, 0, 0.2);
}
@media print {
.remark-slide-content.fogscreen {
-webkit-print-color-adjust: exact;
-webkit-filter: opacity(1);
}
}
.remark-slide-content.fit-h1 h1 {
height: 1.25em;
overflow: hidden;
}

View file

@ -0,0 +1,98 @@
@adirondack-colors: {
muted-text: #6a737d;
shaded-bg: #f6f8fa;
border: #dfe2e5;
}
.remark-slide-content {
font-family: 'Quattrocento Sans',-apple-system, BlinkMacSystemFont,
'avenir next', avenir, 'helvetica neue', helvetica,
arial, sans-serif;
pre, code, kbd, tt, samp {
font-family: Monaco, "Lucida Sans Typewriter", "Lucida Console",
"Andale Mono", "Consolas", monospace;
}
h1, h2, h3 {
font-family: Quattrocento, "Goudy Old Style", "Big Caslon", Palatino, serif;
font-weight: bold;
}
table {
border-spacing: 0;
border-collapse: collapse;
display: block;
width: 100%;
overflow: auto;
}
table tr:nth-child(2n) {
background-color: @adirondack-colors[shaded-bg];
}
table th, table td {
display: table-cell;
vertical-align: inherit;
padding: 0.15em 0.30em;
border: 1px solid @adirondack-colors[border];
}
table th {
font-weight: bold;
}
pre {
overflow: auto;
}
pre > code {
border-radius: 0.4em;
padding: 0.5em;
background-color: @adirondack-colors[shaded-bg];
}
p>code, li>code, a>code {
background-color: @adirondack-colors[shaded-bg];
margin: 0;
border-radius: 0.2em;
padding: 0.15em 0.25em;
}
blockquote {
margin: 0;
padding: 0 0.5em;
color: @adirondack-colors[muted-text];
border-left: 0.125em solid @adirondack-colors[border];
}
.remark-slide-number, .footer li {
background-color: rgba(255, 255, 255, .5);
opacity: .5;
}
// Smokescreen and fogscreen for the title layout
&.smokescreen>h1, img[src~=smokescreen] {
background-color: rgba(0, 0, 0, 0.7);
}
&.smokescreen {
>h1, >h2, >h3 {
color: white;
text-shadow: 4px 4px 12px rgba(0, 0, 0, 0.8),
8px 8px 20px rgba(0, 0, 0, 0.9);
}
@media print {
-webkit-print-color-adjust: exact;
-webkit-filter: opacity(1);
}
}
&.fogscreen {
>h1 {
background-color: rgba(255, 255, 255, 0.7);
}
>h1, >h2, >h3 {
color: black;
text-shadow: 4px 4px 12px rgba(0, 0, 0, 0.5),
8px 8px 20px rgba(0, 0, 0, 0.2);
}
@media print {
-webkit-print-color-adjust: exact;
-webkit-filter: opacity(1);
}
}
&.fit-h1 h1 {
height: 1.25em;
overflow: hidden;
}
}

View file

@ -0,0 +1,354 @@
html {
font-size: 16px;
}
.remark-slide {
display: block;
box-sizing: border-box;
margin: 0px;
padding: 0px;
}
@media print {
.remark-slide-scaler {
width: 100% !important;
height: 100% !important;
transform: scale(1) !important;
top: 0 !important;
left: 0 !important;
}
}
.remark-slide-content {
display: block;
box-sizing: border-box;
height: 100%;
line-height: 1.25;
padding: 20px 80px 0 80px;
font-size: 2rem;
}
.remark-slide-content * {
box-sizing: border-box;
}
.remark-slide-content.debug * {
outline: 1px solid gold;
}
.remark-slide-content.debug-white * {
outline: 1px solid white;
}
.remark-slide-content.debug-black * {
outline: 1px solid black;
}
.remark-slide-content.debug-grid {
background: transparent url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAgAAAAICAYAAADED76LAAAAFElEQVR4AWPAC97/9x0eCsAEPgwAVLshdpENIxcAAAAASUVORK5CYII= ) repeat top left;
}
.remark-slide-content.debug-grid-16 {
background: transparent url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAMklEQVR4AWOgCLz/b0epAa6UGuBOqQHOQHLUgFEDnAbcBZ4UGwDOkiCnkIhdgNgNxAYAiYlD+8sEuo8AAAAASUVORK5CYII= ) repeat top left;
}
.remark-slide-content.debug-grid-8-solid {
background: white url(data:image/gif;base64,R0lGODdhCAAIAPEAAADw/wDx/////wAAACwAAAAACAAIAAACDZQvgaeb/lxbAIKA8y0AOw== ) repeat top left;
}
.remark-slide-content.debug-grid-16-solid {
background: white url(data:image/gif;base64,R0lGODdhEAAQAPEAAADw/wDx/xXy/////ywAAAAAEAAQAAACIZyPKckYDQFsb6ZqD85jZ2+BkwiRFKehhqQCQgDHcgwEBQA7 ) repeat top left;
}
.remark-slide-content h1 {
font-size: 3rem;
}
.remark-slide-content h2 {
font-size: 2.75rem;
}
.remark-slide-content h3 {
font-size: 2.5rem;
}
.remark-slide-content pre,
.remark-slide-content code,
.remark-slide-content kbd,
.remark-slide-content tt,
.remark-slide-content samp {
font-size: 1.5rem;
line-height: 1.5;
}
.remark-slide-content.compact {
padding: 20px 40px 0 40px;
font-size: 1.75rem;
}
.remark-slide-content.compact h1 {
font-size: 2.75rem;
}
.remark-slide-content.compact h2 {
font-size: 2.5rem;
}
.remark-slide-content.compact h3 {
font-size: 2.25rem;
}
.remark-slide-content.compact pre,
.remark-slide-content.compact code,
.remark-slide-content.compact kbd,
.remark-slide-content.compact tt,
.remark-slide-content.compact samp {
font-size: 1.25rem;
}
.remark-slide-content.roomy {
padding: 20px 80px 0 80px;
font-size: 2.25rem;
}
.remark-slide-content.roomy h1 {
font-size: 4rem;
}
.remark-slide-content.roomy h2 {
font-size: 3rem;
}
.remark-slide-content.roomy h3 {
font-size: 2.75rem;
}
.remark-slide-content.roomy pre,
.remark-slide-content.roomy code,
.remark-slide-content.roomy kbd,
.remark-slide-content.roomy tt,
.remark-slide-content.roomy samp {
font-size: 1.75rem;
}
.remark-slide-content.title h1 {
font-size: 4rem;
}
.remark-slide-content.title h2 {
font-size: 3rem;
}
.remark-slide-content.title h3 {
font-size: 2.25rem;
}
.remark-slide-content img {
max-width: 100%;
}
.remark-slide-content h1,
.remark-slide-content h2,
.remark-slide-content h3 {
margin-top: 0.5em;
margin-bottom: 0.5em;
}
.remark-slide-content table,
.remark-slide-content .katex {
font-size: 85%;
}
.remark-slide-content.fullbleed,
.remark-slide-content.fullbleed > p {
margin: 0;
padding: 0;
}
.remark-slide-content.title {
text-align: center;
background-size: cover;
}
.remark-slide-content.title h1,
.remark-slide-content.title h2,
.remark-slide-content.title h3 {
position: absolute;
width: 100%;
left: 0;
margin: 0;
padding: 1em 0;
font-weight: normal;
}
.remark-slide-content.title h1 {
top: calc(50% - 2.5em);
}
.remark-slide-content.title h2 {
top: calc(50% - 1em);
}
.remark-slide-content.title h3 {
top: calc(50% - 0.5em);
}
.remark-slide-content.title.top h1 {
top: calc(681px * 0.3 - 2.5em);
}
.remark-slide-content.title.top h2 {
top: calc(681px * 0.3 - 1em);
}
.remark-slide-content.title.top h3 {
top: calc(681px * 0.3 - 0.5em);
}
.remark-slide-content.title.bottom h1 {
top: calc(681px * 3/4 - 2.5em);
}
.remark-slide-content.title.bottom h2 {
top: calc(681px * 3/4 - 1em);
}
.remark-slide-content.title.bottom h3 {
top: calc(681px * 3/4 - 0.5em);
}
.remark-slide-content.title.shelf > h1 {
padding-bottom: 2.25em;
margin-bottom: -1.75em;
}
.remark-slide-content.img-caption {
text-align: center;
padding-top: 544.8px;
}
.remark-slide-content.img-caption > p:first-of-type {
padding: 0px;
margin: 0px;
}
.remark-slide-content.img-caption > p:first-of-type > img {
position: absolute;
top: 0px;
left: 0px;
width: 100%;
height: 80%;
object-fit: cover;
}
.remark-slide-content.img-right > p:first-of-type {
height: 100%;
float: right;
width: calc(50% - 1rem);
margin-left: 2rem;
margin-top: 0px;
padding: 0px;
}
.remark-slide-content.img-left > p:first-of-type {
height: 100%;
float: left;
width: calc(50% - 1rem);
margin-right: 2rem;
margin-top: 0px;
padding: 0px;
}
.remark-slide-content.img-left > ul,
.remark-slide-content.img-left > ol,
.remark-slide-content.img-left > blockquote {
overflow: auto;
}
.remark-slide-content.img-right-full {
padding-right: calc(40% + 2rem);
}
.remark-slide-content.img-right-full > p:first-of-type {
margin: 0px;
padding: 0px;
}
.remark-slide-content.img-right-full > p:first-of-type > img {
position: absolute;
top: 0px;
right: 0px;
height: 100%;
width: 40%;
object-fit: cover;
object-position: left;
}
.remark-slide-content.img-left-full {
padding-left: calc(40% + 2rem);
}
.remark-slide-content.img-left-full > p:first-of-type {
margin: 0px;
padding: 0px;
}
.remark-slide-content.img-left-full > p:first-of-type > img {
position: absolute;
top: 0px;
left: 0px;
height: 100%;
width: 40%;
object-fit: cover;
object-position: right;
}
.remark-slide-content.col-2 {
columns: 2;
padding-top: 136px;
column-gap: 1.5em;
}
.remark-slide-content.col-2 > h1:first-of-type {
position: absolute;
margin-top: 0px;
top: 44px;
left: 80px;
}
.remark-slide-content.col-2.compact {
padding-top: 136px;
}
.remark-slide-content.col-2.compact > h1:first-of-type {
top: 42px;
left: 40px;
}
.remark-slide-content.col-2.roomy {
padding-top: 168px;
}
.remark-slide-content.col-2.roomy > h1:first-of-type {
top: 52px;
left: 80px;
}
.remark-slide-content.col-2 *:nth-child(2) {
margin-top: 0px;
}
.remark-slide-content.col-2 > ul,
.remark-slide-content.col-2 > ol {
break-inside: avoid;
page-break-inside: avoid;
}
.remark-slide-content.col-3 {
columns: 3;
padding-top: 136px;
column-gap: 1.5em;
}
.remark-slide-content.col-3 > h1:first-of-type {
position: absolute;
margin-top: 0px;
top: 44px;
left: 80px;
}
.remark-slide-content.col-3.compact {
padding-top: 136px;
}
.remark-slide-content.col-3.compact > h1:first-of-type {
top: 42px;
left: 40px;
}
.remark-slide-content.col-3.roomy {
padding-top: 168px;
}
.remark-slide-content.col-3.roomy > h1:first-of-type {
top: 52px;
left: 80px;
}
.remark-slide-content.col-3 *:nth-child(2) {
margin-top: 0px;
}
.remark-slide-content.col-3 > ul,
.remark-slide-content.col-3 > ol {
break-inside: avoid;
page-break-inside: avoid;
}
.remark-slide-content .remark-slide-number,
.remark-slide-content .footer li {
font-size: 1.25rem;
display: block;
list-style: none;
position: absolute;
bottom: 12px;
height: 30px;
margin: 0px;
padding: 2px 5px;
border-radius: 3px;
border: 1px solid rgba(0, 0, 0, 0);
}
.remark-slide-content .footer,
.remark-slide-content .footer ul {
position: absolute;
bottom: 0px;
right: 0px;
left: 0px;
height: 50px;
margin: 0px;
padding: 0px;
}
.remark-slide-content .footer li:nth-child(1) {
left: 20px;
}
.remark-slide-content .footer li:nth-child(2) {
left: 50%;
margin-left: -50px;
}
.remark-slide-content .footer li img {
display: block;
max-height: 100%;
margin-left: auto;
margin-right: auto;
}
.remark-slide-content.no-footer .remark-slide-number,
.remark-slide-content.no-footer .footer {
display: none;
}

View file

@ -0,0 +1,378 @@
// Global variables.
@slide-height: 681px;
@abs-offsets: {
@default: {
left: 80px;
top: 20px;
header-top: 44px;
content-top: 136px;
}
@compact: {
left: 40px;
top: 20px;
header-top: 42px;
content-top: 136px;
}
@roomy: {
left: 80px;
top: 20px;
header-top: 52px;
content-top: 168px;
}
}
@type-scale: {
@default: {
h1: 3rem;
h2: 2.75rem;
h3: 2.5rem;
default: 2rem;
code: 1.5rem;
}
@compact: {
h1: 2.75rem;
h2: 2.5rem;
h3: 2.25rem;
default: 1.75rem;
code: 1.25rem;
}
@roomy: {
h1: 4rem;
h2: 3rem;
h3: 2.75rem;
default: 2.25rem;
code: 1.75rem;
}
@title: {
h1: 4rem;
h2: 3rem;
h3: 2.25rem;
}
}
// Counters the user's possible changes to default font sizes.
html {
font-size: 16px;
}
// Globals, resets, and fixes. Remark sets display:table and display:table-cell,
// apparently to make things like vertical-align:middle work. But those
// mess with a bunch of other things, and make them hard/impossible. An example
// is using column-count, which won't work except inside a display:block
// element. So I reset these things to undo what I consider Remark's hacks.
.remark-slide {
display: block;
box-sizing: border-box;
margin: 0px;
padding: 0px;
}
// This fixes a RemarkJS print-to-pdf bug
@media print {
.remark-slide-scaler {
width: 100% !important;
height: 100% !important;
transform: scale(1) !important;
top: 0 !important;
left: 0 !important;
}
}
.remark-slide-content {
display: block;
box-sizing: border-box;
height: 100%;
* {
box-sizing: border-box;
}
// Debug and debug grid, for help figuring out layouts and bugs.
&.debug * {
outline: 1px solid gold;
}
&.debug-white * {
outline: 1px solid white;
}
&.debug-black * {
outline: 1px solid black;
}
&.debug-grid {
background: transparent url( data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAgAAAAICAYAAADED76LAAAAFElEQVR4AWPAC97/9x0eCsAEPgwAVLshdpENIxcAAAAASUVORK5CYII= ) repeat top left;
}
&.debug-grid-16 {
background: transparent url( data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAMklEQVR4AWOgCLz/b0epAa6UGuBOqQHOQHLUgFEDnAbcBZ4UGwDOkiCnkIhdgNgNxAYAiYlD+8sEuo8AAAAASUVORK5CYII= ) repeat top left;
}
&.debug-grid-8-solid {
background: white url( data:image/gif;base64,R0lGODdhCAAIAPEAAADw/wDx/////wAAACwAAAAACAAIAAACDZQvgaeb/lxbAIKA8y0AOw== ) repeat top left;
}
&.debug-grid-16-solid {
background: white url( data:image/gif;base64,R0lGODdhEAAQAPEAAADw/wDx/xXy/////ywAAAAAEAAQAAACIZyPKckYDQFsb6ZqD85jZ2+BkwiRFKehhqQCQgDHcgwEBQA7 ) repeat top left;
}
// Type scale (font-size, line-height, etc) and slide sizing.
line-height: 1.25;
padding: @abs-offsets[@default][top] @abs-offsets[@default][left] 0 @abs-offsets[@default][left];
font-size: @type-scale[@default][default];
h1 { font-size: @type-scale[@default][h1]; }
h2 { font-size: @type-scale[@default][h2]; }
h3 { font-size: @type-scale[@default][h3]; }
pre, code, kbd, tt, samp {
font-size: @type-scale[@default][code];
line-height: 1.5;
}
&.compact {
padding: @abs-offsets[@compact][top] @abs-offsets[@compact][left] 0 @abs-offsets[@compact][left];
font-size: @type-scale[@compact][default];
h1 { font-size: @type-scale[@compact][h1]; }
h2 { font-size: @type-scale[@compact][h2]; }
h3 { font-size: @type-scale[@compact][h3]; }
pre, code, kbd, tt, samp {
font-size: @type-scale[@compact][code];
}
}
&.roomy {
padding: @abs-offsets[@roomy][top] @abs-offsets[@roomy][left] 0 @abs-offsets[@roomy][left];
font-size: @type-scale[@roomy][default];
h1 { font-size: @type-scale[@roomy][h1]; }
h2 { font-size: @type-scale[@roomy][h2]; }
h3 { font-size: @type-scale[@roomy][h3]; }
pre, code, kbd, tt, samp {
font-size: @type-scale[@roomy][code];
}
}
&.title {
h1 { font-size: @type-scale[@title][h1]; }
h2 { font-size: @type-scale[@title][h2]; }
h3 { font-size: @type-scale[@title][h3]; }
}
// Element styling
img {
max-width: 100%; // Images should never be bigger than their container.
}
h1, h2, h3 {
margin-top: 0.5em;
margin-bottom: 0.5em;
}
table, .katex {
font-size: 85%;
}
// Layout Classes
// Layout: fullbleed. Simply removes Remark's built-in padding and margins.
&.fullbleed, &.fullbleed>p {
margin: 0;
padding: 0;
}
// Layout: title, plus top/bottom variations, and shelf sizing.
// Designed for H1, plus optional H2 or H3 (but not both).
&.title {
text-align: center;
background-size: cover;
h1, h2, h3 {
position: absolute;
width: 100%;
left: 0;
margin: 0;
padding: 1em 0;
font-weight: normal;
}
h1 { top: calc(50% - 2.5em); }
h2 { top: calc(50% - 1.0em); }
h3 { top: calc(50% - 0.5em); }
&.top {
h1 { top: calc(@slide-height * 0.3 - 2.5em); }
h2 { top: calc(@slide-height * 0.3 - 1.0em); }
h3 { top: calc(@slide-height * 0.3 - 0.5em); }
}
&.bottom {
h1 { top: calc(@slide-height * 3/4 - 2.5em); }
h2 { top: calc(@slide-height * 3/4 - 1.0em); }
h3 { top: calc(@slide-height * 3/4 - 0.5em); }
}
&.shelf>h1 {
// The "shelf" class makes the H1 extend down far enough to form the background for
// the H2 or H3, with a negative bottom margin to extend beneath the H2/H3. This is
// better than giving each element a background color and placing them next to each
// other; that will let a thin slice of the slide background show through.
padding-bottom: 2.25em;
margin-bottom: -1.75em;
}
}
// Layout: img-caption. Content must begin with an image.
&.img-caption {
text-align: center;
padding-top: @slide-height * 0.8;
&>p:first-of-type {
padding: 0px;
margin: 0px;
&>img {
position: absolute;
top: 0px;
left: 0px;
width: 100%;
height: 80%;
object-fit: cover;
}
}
}
// Layout: img-right. The first image begins "columns."
&.img-right>p:first-of-type {
height: 100%;
float: right;
width: calc(50% - 1rem);
margin-left: 2rem;
margin-top: 0px;
padding: 0px;
}
// Layout: img-left. The first image begins "columns."
&.img-left {
&>p:first-of-type {
height: 100%;
float: left;
width: calc(50% - 1rem);
margin-right: 2rem;
margin-top: 0px;
padding: 0px;
}
&>ul, &>ol, &>blockquote {
// Ensures bullets are indented.
overflow: auto;
}
}
// Layout: img-right-full. The first p>img fills the side of the slide.
// If you have "layout" content, ensure it has no <p> elements.
&.img-right-full {
padding-right: calc(40% + 2rem);
&>p:first-of-type {
margin: 0px;
padding: 0px;
&>img {
position: absolute;
top: 0px;
right: 0px;
height: 100%;
width: 40%;
object-fit: cover;
object-position: left;
}
}
}
// Layout: img-left-full. The first p>img fills the side of the slide.
// If you have "layout" content, ensure it has no <p> elements.
&.img-left-full {
padding-left: calc(40% + 2rem);
&>p:first-of-type {
margin: 0px;
padding: 0px;
&>img {
position: absolute;
top: 0px;
left: 0px;
height: 100%;
width: 40%;
object-fit: cover;
object-position: right;
}
}
}
// Layout: col-2 and col-3. Designed for use with an H1 heading.
.col() {
// If Firefox supported column-span: all I'd use that for the heading H1.
// I use a workaround instead: push the content down and put the H1 above it.
padding-top: @abs-offsets[@default][content-top];
&>h1:first-of-type {
position: absolute;
margin-top: 0px;
top: @abs-offsets[@default][header-top];
left: @abs-offsets[@default][left];
}
&.compact {
padding-top: @abs-offsets[@compact][content-top];
}
&.compact>h1:first-of-type {
top: @abs-offsets[@compact][header-top];
left: @abs-offsets[@compact][left];
}
&.roomy {
padding-top: @abs-offsets[@roomy][content-top];
}
&.roomy>h1:first-of-type {
top: @abs-offsets[@roomy][header-top];
left: @abs-offsets[@roomy][left];
}
// If the first columnized content has margin-top, vertical alignment is messy.
*:nth-child(2) {
margin-top: 0px;
}
&>ul, &>ol {
break-inside: avoid;
page-break-inside: avoid;
}
column-gap: 1.5em; // Deliberately a relative measure
}
&.col-2 {
columns: 2;
.col();
}
&.col-3 {
columns: 3;
.col();
}
// Footer layout and positioning. TODO make the UL full width so it can have border.
// TODO make the UL possible to place at the top of the slide.
.remark-slide-number, .footer li {
font-size: 1.25rem;
display: block;
list-style: none;
position: absolute;
bottom: 12px;
height: 30px;
margin: 0px;
padding: 2px 5px;
border-radius: 3px;
border: 1px solid rgba(0, 0, 0, 0);
}
.footer {
&, & ul {
position: absolute;
bottom: 0px;
right: 0px;
left: 0px;
height: 50px;
margin: 0px;
padding: 0px;
}
li:nth-child(1) {
left: 20px;
}
li:nth-child(2) {
left: 50%;
margin-left: -50px; // assume the logo/content is about 100px
}
li img {
display: block;
max-height: 100%;
margin-left: auto;
margin-right: auto;
}
}
&.no-footer {
.remark-slide-number, .footer {
display: none;
}
}
}

File diff suppressed because it is too large Load diff

View file

@ -0,0 +1,355 @@
@sides: {
t: -top;
r: -right;
b: -bottom;
l: -left;
}
@border-lengths: {
-0: 0;
-1: .125rem;
-2: .25rem;
-3: .5rem;
-4: 1rem;
-5: 2rem;
-100pct: 100%;
}
@box-lengths: {
-0: 0;
-1: 1rem;
-2: 2rem;
-3: 4rem;
-4: 8rem;
-5: 16rem;
-6: 32rem;
-7: 48rem;
-8: 64rem;
-9: 96rem;
-10pct: 10%;
-20pct: 20%;
-30pct: 30%;
-33pct: 33%;
-34pct: 34%;
-40pct: 40%;
-50pct: 50%;
-60pct: 60%;
-70pct: 70%;
-75pct: 75%;
-80pct: 80%;
-90pct: 90%;
-100pct: 100%;
-1-12th: 100%/12;
-2-12th: 200%/12;
-3-12th: 300%/12;
-4-12th: 400%/12;
-5-12th: 500%/12;
-6-12th: 600%/12;
-7-12th: 700%/12;
-8-12th: 800%/12;
-9-12th: 900%/12;
-10-12th: 1000%/12;
-11-12th: 1100%/12;
-third: 100%/3;
-two-thirds: 200%/3;
}
@spacing-lengths: {
-0: 0;
-1: .25rem;
-2: .5rem;
-3: 1rem;
-4: 2rem;
-5: 4rem;
-6: 8rem;
-7: 16rem;
-8: 32rem;
-9: 64rem;
}
// https://drafts.csswg.org/css-color/#named-colors
@named-colors: {
aliceblue: #F0F8FF;
antiquewhite: #FAEBD7;
aqua: #00FFFF;
aquamarine: #7FFFD4;
azure: #F0FFFF;
beige: #F5F5DC;
bisque: #FFE4C4;
black: #000000;
blanchedalmond: #FFEBCD;
blue: #0000FF;
blueviolet: #8A2BE2;
brown: #A52A2A;
burlywood: #DEB887;
cadetblue: #5F9EA0;
chartreuse: #7FFF00;
chocolate: #D2691E;
coral: #FF7F50;
cornflowerblue: #6495ED;
cornsilk: #FFF8DC;
crimson: #DC143C;
cyan: #00FFFF;
darkblue: #00008B;
darkcyan: #008B8B;
darkgoldenrod: #B8860B;
darkgray: #A9A9A9;
darkgreen: #006400;
darkgrey: #A9A9A9;
darkkhaki: #BDB76B;
darkmagenta: #8B008B;
darkolivegreen: #556B2F;
darkorange: #FF8C00;
darkorchid: #9932CC;
darkred: #8B0000;
darksalmon: #E9967A;
darkseagreen: #8FBC8F;
darkslateblue: #483D8B;
darkslategray: #2F4F4F;
darkslategrey: #2F4F4F;
darkturquoise: #00CED1;
darkviolet: #9400D3;
deeppink: #FF1493;
deepskyblue: #00BFFF;
dimgray: #696969;
dimgrey: #696969;
dodgerblue: #1E90FF;
firebrick: #B22222;
floralwhite: #FFFAF0;
forestgreen: #228B22;
fuchsia: #FF00FF;
gainsboro: #DCDCDC;
ghostwhite: #F8F8FF;
gold: #FFD700;
goldenrod: #DAA520;
gray: #808080;
green: #008000;
greenyellow: #ADFF2F;
grey: #808080;
honeydew: #F0FFF0;
hotpink: #FF69B4;
indianred: #CD5C5C;
indigo: #4B0082;
ivory: #FFFFF0;
khaki: #F0E68C;
lavender: #E6E6FA;
lavenderblush: #FFF0F5;
lawngreen: #7CFC00;
lemonchiffon: #FFFACD;
lightblue: #ADD8E6;
lightcoral: #F08080;
lightcyan: #E0FFFF;
lightgoldenrodyellow: #FAFAD2;
lightgray: #D3D3D3;
lightgreen: #90EE90;
lightgrey: #D3D3D3;
lightpink: #FFB6C1;
lightsalmon: #FFA07A;
lightseagreen: #20B2AA;
lightskyblue: #87CEFA;
lightslategray: #778899;
lightslategrey: #778899;
lightsteelblue: #B0C4DE;
lightyellow: #FFFFE0;
lime: #00FF00;
limegreen: #32CD32;
linen: #FAF0E6;
magenta: #FF00FF;
maroon: #800000;
mediumaquamarine: #66CDAA;
mediumblue: #0000CD;
mediumorchid: #BA55D3;
mediumpurple: #9370DB;
mediumseagreen: #3CB371;
mediumslateblue: #7B68EE;
mediumspringgreen: #00FA9A;
mediumturquoise: #48D1CC;
mediumvioletred: #C71585;
midnightblue: #191970;
mintcream: #F5FFFA;
mistyrose: #FFE4E1;
moccasin: #FFE4B5;
navajowhite: #FFDEAD;
navy: #000080;
oldlace: #FDF5E6;
olive: #808000;
olivedrab: #6B8E23;
orange: #FFA500;
orangered: #FF4500;
orchid: #DA70D6;
palegoldenrod: #EEE8AA;
palegreen: #98FB98;
paleturquoise: #AFEEEE;
palevioletred: #DB7093;
papayawhip: #FFEFD5;
peachpuff: #FFDAB9;
peru: #CD853F;
pink: #FFC0CB;
plum: #DDA0DD;
powderblue: #B0E0E6;
purple: #800080;
rebeccapurple: #663399;
red: #FF0000;
rosybrown: #BC8F8F;
royalblue: #4169E1;
saddlebrown: #8B4513;
salmon: #FA8072;
sandybrown: #F4A460;
seagreen: #2E8B57;
seashell: #FFF5EE;
sienna: #A0522D;
silver: #C0C0C0;
skyblue: #87CEEB;
slateblue: #6A5ACD;
slategray: #708090;
slategrey: #708090;
snow: #FFFAFA;
springgreen: #00FF7F;
steelblue: #4682B4;
tan: #D2B48C;
teal: #008080;
thistle: #D8BFD8;
tomato: #FF6347;
turquoise: #40E0D0;
violet: #EE82EE;
wheat: #F5DEB3;
white: #FFFFFF;
whitesmoke: #F5F5F5;
yellow: #FFFF00;
yellowgreen: #9ACD32;
}
@fifths: {
-20pct: 80%;
-40pct: 60%;
-60pct: 40%;
-80pct: 20%;
}
// Text color, border color, background color, opacity
.color-transparent, img[src~=color-transparent] { color: transparent; }
.bg-transparent, img[src~=bg-transparent] { background-color: transparent; }
.bc-transparent, img[src~=bc-transparent] { border-color: transparent; }
.color(@name, @color) {
.color-@{name}, img[src~="color-@{name}"] { color: @value; }
each(@fifths, {
.color-@{name}@{key}, img[src~="color-@{name}"] { color: fadeout(@color, @value); }
});
}
.background-color(@name, @color) {
.bg-@{name}, img[src~="bg-@{name}"] { background-color: @value; }
each(@fifths, {
.bg-@{name}@{key}, img[src~="bg-@{name}"] { background-color: fadeout(@color, @value); }
});
}
.border-color(@name, @color) {
.bc-@{name}, img[src~="bc-@{name}"] { border-color: @value; }
each(@fifths, {
.bc-@{name}@{key}, img[src~="bc-@{name}"] { border-color: fadeout(@color, @value); }
});
}
each(@named-colors, {
.color(@key, @value);
.background-color(@key, @value);
.border-color(@key, @value);
});
each(@fifths, {
.opacity@{key}, img[src~="opacity-@{key}"] { opacity: 100%-@value; }
});
// Border styles, widths, and radiuses
.ba, img[src~=ba] { border: 1px solid; }
.bn, img[src~=bn] { border: 0px none; }
each(@sides, {
.b@{key}, img[src~="b@{key}"] { border@{value}: 1px solid; }
});
each(@border-lengths, {
.br@{key}, img[src~="br@{key}"] { border-radius: @value; }
.bw@{key}, img[src~="bw@{key}"] { border-width: @value; }
});
// Padding and margins
each(@spacing-lengths, {
.pa@{key}, img[src~="pa@{key}"] { padding: @value; }
.pv@{key}, img[src~="pv@{key}"] { padding-top: @value; padding-bottom: @value; }
.ph@{key}, img[src~="ph@{key}"] { padding-left: @value; padding-right: @value; }
.ma@{key}, img[src~="ma@{key}"] { margin: @value; }
.mv@{key}, img[src~="mv@{key}"] { margin-top: @value; margin-bottom: @value; }
.mh@{key}, img[src~="mh@{key}"] { margin-left: @value; margin-right: @value; }
});
.spacing(@name, @side) {
each(@spacing-lengths, {
.p@{name}@{key}, img[src~="p@{name}@{key}"] { padding@{side}: @value; }
.m@{name}@{key}, img[src~="m@{name}@{key}"] { margin@{side}: @value; }
});
}
each(@sides, {
.spacing(@key, @value);
});
// Element widths, heights, and coordinates
// Idle thought: combine with the inverse golden ratio, 2/(1+sqrt(5))
each(@box-lengths, {
.w@{key}, img[src~="w@{key}"] { width: @value; }
.maxw@{key}, img[src~="maxw@{key}"] { max-width: @value; }
.minw@{key}, img[src~="minw@{key}"] { min-width: @value; }
.h@{key}, img[src~="h@{key}"] { height: @value; }
.maxh@{key}, img[src~="maxh@{key}"] { max-height: @value; }
.minh@{key}, img[src~="minh@{key}"] { min-height: @value; }
.t@{key}, img[src~="t@{key}"] { top: @value; }
.r@{key}, img[src~="r@{key}"] { right: @value; }
.b@{key}, img[src~="b@{key}"] { bottom: @value; }
.l@{key}, img[src~="l@{key}"] { left: @value; }
// https://www.sitepoint.com/css-center-position-absolute-div/
.w@{key}.center, img[src~="w@{key}"][src~=center] {
left: 50%;
margin-left: @value/-2;
}
});
// Element display styles, positioning, floating, etc
.dn, img[src~=dn] { display: none; }
.di, img[src~=di] { display: inline; }
.db, img[src~=db] { display: block; }
.dib, img[src~=dib] { display: inline-block; }
.fl, img[src~=fl] { float: left; }
.fr, img[src~=fr] { float: right; }
.fn, img[src~=fn] { float: none; }
img[src~=cf]:before,
img[src~=cf]:after { content: " "; display: table; }
img[src~=cf]:after { clear: both; }
.cf, img[src~=cf] { *zoom: 1; }
.static, img[src~=static] { position: static; }
.relative, img[src~=relative] { position: relative; }
.absolute, img[src~=absolute] { position: absolute; }
.fixed, img[src~=fixed] { position: fixed; }
.center, img[src~=center] { display: block; margin-left: auto; margin-right: auto; }
// Object-fitting and covering
.ofc, img[src~=ofc] { object-fit: contain; }
.ofv, img[src~=ofv] { object-fit: cover; }
.opl, img[src~=opl] { object-position: left !important; }
.opc, img[src~=opc] { object-position: center !important; }
.opr, img[src~=opr] { object-position: right !important; }
.opt, img[src~=opt] { object-position: top !important; }
.opb, img[src~=opb] { object-position: bottom !important; }
.oplt, img[src~=oplt] { object-position: left top !important; }
.oplc, img[src~=oplc] { object-position: left center !important; }
.oplb, img[src~=oplb] { object-position: left bottom !important; }
.opct, img[src~=opct] { object-position: center top !important; }
.opcc, img[src~=opcc] { object-position: center center !important; }
.opcb, img[src~=opcb] { object-position: center bottom !important; }
.oprt, img[src~=oprt] { object-position: right top !important; }
.oprc, img[src~=oprc] { object-position: right center !important; }
.oprb, img[src~=oprb] { object-position: right bottom !important; }
// Box shadows
.shadow-1, img[src~=shadow-1] { box-shadow: 0 0 4px 2px rgba( 0, 0, 0, .2 ); }
.shadow-2, img[src~=shadow-2] { box-shadow: 0 0 8px 2px rgba( 0, 0, 0, .2 ); }
.shadow-3, img[src~=shadow-3] { box-shadow: 2px 2px 4px 2px rgba( 0, 0, 0, .2 ); }
.shadow-4, img[src~=shadow-4] { box-shadow: 2px 2px 8px 0 rgba( 0, 0, 0, .2 ); }
.shadow-5, img[src~=shadow-5] { box-shadow: 4px 4px 8px 0 rgba( 0, 0, 0, .2 ); }

View file

@ -0,0 +1,149 @@
@import url('https://fonts.googleapis.com/css?family=Heebo:300,400,500,700|Inconsolata');
/* Global Styles */
body {
font-family: Heebo, "Helvetica Neue", Helvetica, Arial, sans-serif;
}
.remark-slide-content h1, .remark-slide-content h2 {
font-weight: 500;
}
.remark-slide-content p, .remark-slide-content li, .remark-slide-content td, .remark-slide-content th {
font-size: 24pt;
line-height: 1.6;
}
.remark-code, .remark-inline-code {
font-family: Inconsolata, monospace;
}
th {
border-bottom: 1px solid black;
}
td, th {
padding: 8px;
}
img {
display: block;
max-width:100%;
max-height:100%;
width: auto;
height: auto;
}
.center img {
margin-right: auto;
margin-left: auto;
}
.smaller p, .smaller div, .smaller li, .smaller th, .smaller td {
font-size: 18pt;
}
.footnote p {
position: absolute;
bottom: 3em;
font-size: 8pt !important;
}
.remark-slide-number {
background-color: white;
padding: 0 5px;
border-radius: 5px;
font-size: 20px !important;
}
.no-number .remark-slide-number {
display: none;
}
#qrcode {
width: 384px;
height: 384px;
}
/* Title Slide Layout. Use .smokescreen[...] to contain the h1/h2. */
.remark-slide-content.title h1, .remark-slide-content.title h2, .remark-slide-content.title h3 {
color: white;
font-size: 50pt;
margin: 30pt;
font-weight: 300;
}
.remark-slide-content.title h2 {
font-size: 30pt;
}
.remark-slide-content.title h3 {
font-size: 22pt;
}
.smokescreen {
width: 100%;
position: absolute;
left: 0px;
top: 33%;
background-color: rgba(0,0,0,.7);
vertical-align: middle;
text-align: center;
}
/* Columnar Layouts. Two- and three-column layouts use .col classnames and float
* next to each other. The img-right uses .col and .rc (for right-column) and
* they're not equal-width or height. For convenience, two-column layouts also
* allow you to name the right column with .rc classname, so you can switch
* between layouts without changing the markup, just the slide's class.
*/
/* Two-Column Layout */
.two-column .rc, .two-column .col {
width: 48%;
float: left;
margin-right: 1%;
}
.two-column .rc img, .two-column .col img, .three-column .col img, .three-column .rc img {
display: block;
min-width: 100%;
min-height: 100%;
max-width: 100%;
max-height: 100%;
width: auto;
height: auto;
margin: 0;
padding: 0;
}
/* Two-Column Layout, Text Left, Image Right */
.img-right .col {
width: 62.5%;
padding-right: 1em;
}
.img-right .rc {
position: absolute;
top: 0;
left: 62.5%;
width: 37.5%;
height: 100%;
margin: 0;
padding: 0;
}
.img-right .rc p { /* Remove empty line above image wrapped in <p> */
padding: 0;
margin: 0;
}
/* Three-Column Layout */
.three-column .col, .three-column .rc {
width: 32%;
float: left;
}
/* Shrink Images To Fit In A Vertical Space */
.img-450h img {
display: block;
max-height: 450px !important;
width: auto;
margin: 0;
padding: 0;
}
.img-300h img {
display: block;
max-height: 300px !important;
width: auto;
margin: 0;
padding: 0;
}
.center img, .img-center img {
display: block;
margin-left: auto;
margin-right: auto;
}

View file

@ -0,0 +1,419 @@
h1,
h2,
h3,
h4,
.sans-serif {
font-family: 'Quattrocento Sans', -apple-system, BlinkMacSystemFont, 'avenir next', avenir, 'helvetica neue', helvetica, ubuntu, roboto, noto, 'segoe ui', arial, sans-serif;
}
body article {
font-family: 'Spectral', Georgia, Times, serif;
}
@media only screen and (max-width: 30em) {
body article p,
body article li {
font-family: 'Quattrocento Sans', -apple-system, BlinkMacSystemFont, 'avenir next', avenir, 'helvetica neue', helvetica, ubuntu, roboto, noto, 'segoe ui', arial, sans-serif;
}
}
@media only screen and (min-width: 50em) {
body.is-page-true.feature-depth:not(.feature-nodepth):not(.feature-nohdr) article {
margin-top: -2em;
box-shadow: rgba(0, 0, 0, 0.2) 0px 0px 0.5em 0.125em;
}
}
@media screen only {
header h1,
header h2 {
text-shadow: 0.1em 0.1em 0.3em rgba(0, 0, 0, 0.3);
}
}
blockquote {
margin: 0;
padding: 0 1rem;
color: #6a737d;
border-left: 0.25rem solid #dfe2e5;
}
pre {
border: 1px solid #dfe2e5;
border-radius: 3px;
font-size: 75%;
line-height: 1.4;
padding: 1em;
background: #f6f8fa;
overflow: auto;
}
p > code,
li > code,
a > code,
td > code {
font-size: 80%;
background: #f6f8fa;
margin: 0;
border-radius: 3px;
padding: 0.15em 0.25em;
}
article img {
max-width: 100%;
}
hr {
height: 0px;
border-style: none none solid none;
border-bottom-color: #dfe2e5;
}
table caption {
text-align: left;
font-family: 'Spectral', Georgia, Times, serif;
font-style: italic;
padding: 0px 0.5rem;
}
body.feature-hyphenate:not(.feature-nohyphenate) article p,
body.feature-hyphenate:not(.feature-nohyphenate) article li,
body.feature-hyphenate:not(.feature-nohyphenate) article td,
body.feature-hyphenate:not(.feature-nohyphenate) article caption,
body.feature-hyphenate:not(.feature-nohyphenate) article figcaption,
body.feature-hyphenate:not(.feature-nohyphenate) article th {
word-wrap: break-word;
overflow-wrap: break-word;
-webkit-hyphens: auto;
-moz-hyphens: auto;
-ms-hyphens: auto;
hyphens: auto;
}
body.feature-hyphenate:not(.feature-nohyphenate) article pre,
body.feature-hyphenate:not(.feature-nohyphenate) article code {
-webkit-hyphens: none;
-moz-hyphens: none;
-ms-hyphens: none;
hyphens: none;
}
body.feature-justify:not(.feature-nojustify) article p,
body.feature-justify:not(.feature-nojustify) article li {
text-align: justify;
}
body.feature-hrfleuron:not(.feature-nohrfleuron) article > hr {
border-style: none;
width: 0px;
text-align: center;
margin-top: 0px;
margin-bottom: 3rem;
}
body.feature-hrfleuron:not(.feature-nohrfleuron) article > hr:before {
content: "\002766";
}
body.feature-hrdinkus:not(.feature-nohrdinkus) article > hr {
border-style: none;
width: 0px;
text-align: center;
margin-top: 0px;
margin-bottom: 3rem;
}
body.feature-hrdinkus:not(.feature-nohrdinkus) article > hr:before {
content: "*\000A0\000A0*\000A0\000A0*";
}
figure {
margin: 0px;
padding: 0px;
}
figure img {
display: block;
}
@media screen {
body.feature-figcaption-hidden:not(.feature-figcaption-visible) figure {
position: relative;
}
body.feature-figcaption-hidden:not(.feature-figcaption-visible) figcaption {
position: absolute;
bottom: 0px;
display: block;
width: 100%;
color: white;
background-color: rgba(0, 0, 0, 0.75);
padding: 1rem;
visibility: hidden;
}
body.feature-figcaption-hidden figure:hover figcaption {
visibility: visible;
}
}
body:not(.feature-tablefig) table {
border-spacing: 0;
border-collapse: collapse;
display: block;
width: 100%;
overflow: auto;
font-size: 85%;
font-family: 'Quattrocento Sans', -apple-system, BlinkMacSystemFont, 'avenir next', avenir, 'helvetica neue', helvetica, ubuntu, roboto, noto, 'segoe ui', arial, sans-serif;
}
body:not(.feature-tablefig) table tr:nth-child(2n) {
background-color: #f6f8fa;
}
body:not(.feature-tablefig) table th,
body:not(.feature-tablefig) table td {
display: table-cell;
vertical-align: inherit;
padding: 0.25rem 0.5rem;
border: 1px solid #dfe2e5;
}
body:not(.feature-tablefig) table th {
font-weight: 600;
}
body.feature-tablefw:not(.feature-tablefig) td {
font-family: arial;
}
body.feature-tablefig:not(.feature-notablefig) table {
border-spacing: 0;
border-collapse: collapse;
overflow: auto;
font-size: 85%;
font-family: inherit;
border-top: 2px solid black;
}
body.feature-tablefig:not(.feature-notablefig) table thead,
body.feature-tablefig:not(.feature-notablefig) table tbody {
border-bottom: 1px solid black;
}
body.feature-tablefig:not(.feature-notablefig) table th,
body.feature-tablefig:not(.feature-notablefig) table td {
display: table-cell;
vertical-align: bottom;
padding: 0 0.5rem;
}
body.feature-tablefig:not(.feature-notablefig) table th {
font-weight: 600;
padding-top: 0.5rem;
}
body {
counter-reset: figure-counter table-counter;
}
body.feature-fignum figure figcaption::before {
counter-increment: figure-counter;
content: "Figure " counter(figure-counter) ". ";
}
body.feature-fignum table caption::before {
counter-increment: table-counter;
content: "Table " counter(table-counter) ". ";
}
.feature-h3-cl h3 {
clear: left;
}
.feature-h3-cr h3 {
clear: right;
}
.feature-h3-cb h3 {
clear: both;
}
.feature-nosubtitle h2 {
display: none;
}
.footnotes {
font-size: 80%;
}
.math {
font-size: 1rem;
}
.about-the-author img {
float: left;
max-width: 100px;
border: 1px solid rgba(0, 0, 0, 0.3);
border-radius: 100%;
margin: 0 1rem 1rem 0;
}
blockquote.tweet {
border: 1px solid #dfe2e5;
border-radius: 5px;
padding: 4px 20px;
color: black;
}
.pagination li {
display: inline-block;
}
.pagination li a {
padding: 0.5rem 0.625rem;
background-color: white;
color: #333;
border: 1px solid #ddd;
border-radius: 3px;
text-decoration: none;
}
.pagination li.disabled {
display: none;
}
.pagination li.active a:link,
.pagination li.active a:active,
.pagination li.active a:visited {
background-color: #ddd;
}
img[src~="3dbook"] {
max-width: 120px;
}
@media screen {
.book {
display: inline-block;
box-shadow: 5px 5px 20px #333;
margin: 1rem;
}
.book img {
vertical-align: middle;
}
.books {
-moz-perspective: 100px;
-moz-transform-style: preserve-3d;
-webkit-transform-style: preserve-3d;
display: inline-block;
float: right;
margin: 0px 0px 1rem 1rem;
}
.book {
position: relative;
-moz-perspective: 100px;
-moz-transform: rotateY(-3deg);
-webkit-transform: perspective(100) rotateY(-3deg);
outline: 1px solid transparent;
box-shadow: none;
margin: 0;
}
.book img {
position: relative !important;
}
.book:before,
.book:after {
position: absolute;
top: 2%;
height: 96%;
content: ' ';
z-index: -1;
}
.book:before {
width: 100%;
left: 6.5%;
background-color: #484848;
box-shadow: 0px 3px 20px 2px #333;
}
.book:after {
width: 5%;
left: 100%;
background-color: #EFEFEF;
box-shadow: inset 0px 0px 5px #aaa;
-moz-transform: rotateY(20deg);
-webkit-transform: perspective(100) rotateY(20deg);
}
}
.display-print {
display: none;
}
@media print {
* {
color: black !important;
}
pre,
code {
font-size: 0.85rem;
background: white !important;
padding: 3px !important;
}
img[src~="3dbook"] {
border: 1px solid black;
float: right;
margin: 0px 0px 1rem 1rem;
}
.footnote-return {
display: none;
}
a,
a:link,
a:visited,
a:hover {
text-decoration: underline black;
}
.footnote-ref a,
.category a {
text-decoration: none !important;
}
#hdr {
padding-top: 0px !important;
padding-bottom: 0px !important;
}
h2 {
margin-top: 1rem !important;
margin-bottom: 1rem !important;
font-style: italic;
}
h3 a:link,
h3 a:visited {
text-decoration: none;
}
.hide-print {
display: none !important;
}
.display-print {
display: inline !important;
}
.f4 {
font-size: 1rem !important;
}
.measure-wide {
max-width: 45em !important;
}
main {
padding-bottom: 0 !important;
}
.math {
font-size: 0.85rem !important;
}
article {
border-bottom-style: none !important;
}
}
.hljs {
display: block;
color: #333333;
overflow-x: auto;
}
.hljs-comment,
.hljs-meta {
color: #969896;
}
.hljs-string,
.hljs-variable,
.hljs-template-variable,
.hljs-strong,
.hljs-emphasis,
.hljs-quote {
color: #df5000;
}
.hljs-keyword,
.hljs-selector-tag,
.hljs-type {
color: #a71d5d;
}
.hljs-literal,
.hljs-symbol,
.hljs-bullet,
.hljs-attribute {
color: #0086b3;
}
.hljs-section,
.hljs-name {
color: #63a35c;
}
.hljs-tag {
color: #333333;
}
.hljs-title,
.hljs-attr,
.hljs-selector-id,
.hljs-selector-class,
.hljs-selector-attr,
.hljs-selector-pseudo {
color: #795da3;
}
.hljs-addition {
color: #55a532;
background-color: #eaffea;
}
.hljs-deletion {
color: #bd2c00;
background-color: #ffecec;
}
.hljs-link {
text-decoration: underline;
}

View file

@ -0,0 +1,413 @@
@font-sans: 'Quattrocento Sans',-apple-system, BlinkMacSystemFont, 'avenir next', avenir, 'helvetica neue', helvetica, ubuntu, roboto, noto, 'segoe ui', arial, sans-serif;
@font-serif: 'Spectral', Georgia, Times, serif;
@shaded-bg: #f6f8fa;
@border: #dfe2e5;
@muted-text: #6a737d;
// Typography designed for clarity and elegance on a large, modern (hi-res)
// display. But when reading on an cellphone, a sans-serif font family is much
// nicer, so apply serif fonts to the article only at larger sizes or in print.
h1, h2, h3, h4, .sans-serif {
font-family: @font-sans;
}
body {
article {
font-family: @font-serif;
@media only screen and (max-width: 30em) {
p, li {
font-family: @font-sans;
}
}
}
@media only screen and (min-width: 50em) {
&.is-page-true.feature-depth:not(.feature-nodepth):not(.feature-nohdr) article {
margin-top: -2em;
box-shadow: rgba(0, 0, 0, 0.2) 0px 0px 0.5em 0.125em;
}
}
}
header {
h1, h2 {
@media screen only {
text-shadow: 0.1em 0.1em 0.3em rgba(0, 0, 0, 0.3);
}
}
}
// General element styling
blockquote {
margin: 0;
padding: 0 1rem;
color: @muted-text;
border-left: 0.25rem solid @border;
}
pre {
border: 1px solid @border;
border-radius: 3px;
font-size: 75%;
line-height: 1.4;
padding: 1em;
background: @shaded-bg;
overflow: auto;
}
p>code, li>code, a>code, td>code {
font-size: 80%;
background: @shaded-bg;
margin: 0;
border-radius: 3px;
padding: 0.15em 0.25em;
}
article img {
max-width: 100%;
}
hr {
height: 0px;
border-style: none none solid none;
border-bottom-color: @border;
}
table caption {
text-align: left;
font-family: @font-serif;
font-style: italic;
padding: 0px 0.5rem;
}
// Story uses feature-X and feature-noX classes to enable/disable a lot of
// typography and other features.
body.feature-hyphenate:not(.feature-nohyphenate) article {
p, li, td, caption, figcaption, th {
word-wrap: break-word;
overflow-wrap: break-word;
-webkit-hyphens: auto;
-moz-hyphens: auto;
-ms-hyphens: auto;
hyphens: auto;
}
pre, code {
-webkit-hyphens: none;
-moz-hyphens: none;
-ms-hyphens: none;
hyphens: none;
}
}
body.feature-justify:not(.feature-nojustify) article {
p, li {
text-align: justify;
}
}
body.feature-hrfleuron:not(.feature-nohrfleuron) article > hr {
border-style: none;
width: 0px;
text-align: center;
margin-top: 0px;
margin-bottom: 3rem;
&:before {
content: "\002766";
}
}
body.feature-hrdinkus:not(.feature-nohrdinkus) article > hr {
border-style: none;
width: 0px;
text-align: center;
margin-top: 0px;
margin-bottom: 3rem;
&:before {
content: "*\000A0\000A0*\000A0\000A0*";
}
}
figure {
margin: 0px;
padding: 0px;
img {
display: block;
}
}
@media screen {
// Image captions should only be "hidden" overlays on the images in screen
// mode. Even if feature-figcaption-hidden is defined, if
// feature-figcaption-visible is set, this all should be disabled.
body.feature-figcaption-hidden:not(.feature-figcaption-visible) figure {
position: relative;
}
body.feature-figcaption-hidden:not(.feature-figcaption-visible) figcaption {
position: absolute;
bottom: 0px;
display: block;
width: 100%;
color: white;
background-color: rgba(0, 0, 0, 0.75);
padding: 1rem;
visibility: hidden;
}
body.feature-figcaption-hidden figure:hover figcaption {
visibility: visible;
}
}
// Default table styling is GitHub-inspired. It's overridden by
// .feature-tablefig below, so it applies only if that class isn't active.
body:not(.feature-tablefig) table {
border-spacing: 0;
border-collapse: collapse;
display: block;
width: 100%;
overflow: auto;
font-size: 85%;
font-family: @font-sans;
tr:nth-child(2n) {
background-color: @shaded-bg;
}
th, td {
display: table-cell;
vertical-align: inherit;
padding: .25rem .5rem;
border: 1px solid @border;
}
th {
font-weight: 600;
}
}
// A typeface with fixed-width numerals is nice if there are many cells filled
// with numbers.
body.feature-tablefw:not(.feature-tablefig) td {
font-family: arial;
}
// This table style is more of an academic paper look.
body.feature-tablefig:not(.feature-notablefig) table {
border-spacing: 0;
border-collapse: collapse;
overflow: auto;
font-size: 85%;
font-family: inherit;
border-top: 2px solid black;
thead, tbody {
border-bottom: 1px solid black;
}
th, td {
display: table-cell;
vertical-align: bottom;
padding: 0 .5rem;
}
th {
font-weight: 600;
padding-top: .5rem;
}
}
// Add labels and counters to table and figure captions.
body {
counter-reset: figure-counter table-counter;
&.feature-fignum {
figure figcaption::before {
counter-increment: figure-counter;
content: "Figure " counter(figure-counter) ". ";
}
table caption::before {
counter-increment: table-counter;
content: "Table " counter(table-counter) ". ";
}
}
}
// Use front matter in the blog post to add CSS class names to the <body> tag.
.feature-h3-cl h3 { clear: left; }
.feature-h3-cr h3 { clear: right; }
.feature-h3-cb h3 { clear: both; }
.feature-nosubtitle h2 {
display: none;
}
// Hugo creates a div.footnotes around an <ol> for footnotes
.footnotes {
font-size: 80%;
}
// For KaTeX's rendered elements, the font-size tends to be mismatched. Reset.
.math {
font-size: 1rem;
}
.about-the-author img {
float: left;
max-width: 100px;
border: 1px solid rgba(0,0,0,.3);
border-radius: 100%;
margin: 0 1rem 1rem 0;
}
blockquote.tweet {
border: 1px solid @border;
border-radius: 5px;
padding: 4px 20px;
color: black;
}
.pagination li {
display: inline-block;
a {
padding: .5rem .625rem;
background-color: white;
color: #333;
border: 1px solid #ddd;
border-radius: 3px;
text-decoration: none;
}
&.disabled {
display: none;
}
&.active {
a:link, a:active, a:visited {
background-color: #ddd;
}
}
}
img[src~="3dbook"] {
max-width: 120px;
}
@media screen {
// Pseudo-3d book covers via http://srobbin.com/blog/3d-css-book-covers/
// The images should be 400x525px but displayed at smaller size.
// Give the book images a 3dbook pseudo-class in the URL fragment.
// [![img](/img.jpg# 3dbook)](http://example.com/)
// There's some JS that runs from story.js that will find the img,
// and give its wrapper <a> the right classes, and the containing <p> still
// more classes:
// <p class="books"><a class="book"><img></a></p>
// Fallback book cover styles
.book {
display: inline-block;
box-shadow: 5px 5px 20px #333;
margin: 1rem;
}
.book img { vertical-align: middle; }
.books {
-moz-perspective: 100px;
-moz-transform-style: preserve-3d;
-webkit-transform-style: preserve-3d;
display: inline-block;
float: right;
margin: 0px 0px 1rem 1rem;
}
.book {
position: relative;
-moz-perspective: 100px;
-moz-transform: rotateY(-3deg);
-webkit-transform: perspective(100) rotateY(-3deg);
outline: 1px solid transparent; // Helps smooth jagged edges in Firefox
box-shadow: none;
margin: 0;
}
.book img {
position: relative !important;
}
.book:before,
.book:after {
position: absolute;
top: 2%;
height: 96%;
content: ' ';
z-index: -1;
}
.book:before {
width: 100%;
left: 6.5%;
background-color: #484848;
box-shadow: 0px 3px 20px 2px #333;
}
.book:after {
width: 5%;
left: 100%;
background-color: #EFEFEF;
box-shadow: inset 0px 0px 5px #aaa;
-moz-transform: rotateY(20deg);
-webkit-transform: perspective(100) rotateY(20deg);
}
}
// These will be hidden in screen media, but visible in print
.display-print {
display: none;
}
@media print {
* {
color: black !important;
}
pre, code {
font-size: .85rem;
background: white !important;
padding: 3px !important;
}
img[src~="3dbook"] {
border: 1px solid black;
float: right;
margin: 0px 0px 1rem 1rem;
}
.footnote-return {
display: none;
}
a, a:link, a:visited, a:hover {
text-decoration: underline black;
}
.footnote-ref a, .category a {
text-decoration: none !important;
}
#hdr {
padding-top: 0px !important;
padding-bottom: 0px !important;
}
h2 {
margin-top: 1rem !important;
margin-bottom: 1rem !important;
font-style: italic;
}
h3 a:link, h3 a:visited {
text-decoration: none;
}
.hide-print {
display: none !important;
}
.display-print {
display: inline !important;
}
.f4 {
font-size: 1rem !important;
}
.measure-wide { // increase line width to compensate for the decrease in font size
max-width: 45em !important;
}
main { // don't waste paper on extra blank pages
padding-bottom: 0 !important;
}
.math {
font-size: .85rem !important;
}
article {
border-bottom-style: none !important;
}
}
.hljs{display:block;color:#333333;overflow-x:auto}.hljs-comment,.hljs-meta{color:#969896}.hljs-string,.hljs-variable,.hljs-template-variable,.hljs-strong,.hljs-emphasis,.hljs-quote{color:#df5000}.hljs-keyword,.hljs-selector-tag,.hljs-type{color:#a71d5d}.hljs-literal,.hljs-symbol,.hljs-bullet,.hljs-attribute{color:#0086b3}.hljs-section,.hljs-name{color:#63a35c}.hljs-tag{color:#333333}.hljs-title,.hljs-attr,.hljs-selector-id,.hljs-selector-class,.hljs-selector-attr,.hljs-selector-pseudo{color:#795da3}.hljs-addition{color:#55a532;background-color:#eaffea}.hljs-deletion{color:#bd2c00;background-color:#ffecec}.hljs-link{text-decoration:underline}

File diff suppressed because one or more lines are too long

Binary file not shown.

After

Width:  |  Height:  |  Size: 726 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 159 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 48 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 14 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 726 KiB

View file

@ -0,0 +1,10 @@
<?xml version="1.0" encoding="utf-8"?>
<svg viewBox="0 0 256 256" height="256px" width="256px" id="svg2" version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:bx="https://boxy-svg.com">
<rect width="256" height="256" style="fill: white;" bx:origin="0 0"/>
<path style="fill: none; stroke: black; stroke-linecap: butt; stroke-linejoin: miter; stroke-miterlimit: 4; stroke-width: 8px;" d="M 100.4 36.878 L 157.448 36.878 C 174.796 36.878 183.606 36.878 192.962 39.844 C 203.201 43.57 211.267 51.636 214.992 61.875 C 217.958 71.232 217.958 80.041 217.958 97.657 L 217.958 154.436 C 217.958 171.784 217.958 180.594 214.992 189.95 C 211.267 200.189 203.201 208.256 192.962 211.982 C 183.606 214.948 174.796 214.948 157.18 214.948 L 100.4 214.948 C 83.052 214.948 74.243 214.948 64.887 211.982 C 54.647 208.256 46.581 200.189 42.856 189.95 C 39.89 180.594 39.89 171.784 39.89 154.169 L 39.89 97.389 C 39.89 80.041 39.89 71.232 42.856 61.875 C 46.581 51.636 54.647 43.57 64.887 39.844 C 74.243 36.878 83.052 36.878 100.668 36.878 Z">
<title>RoundedSquare</title>
</path>
<path d="M 177.471 129.914 C 177.471 144.467 171.889 157.827 160.723 169.988 C 168.898 180.754 172.985 192.119 172.985 204.082 C 172.985 218.837 168.148 231.197 158.474 241.166 C 148.808 251.136 136.798 256.119 122.443 256.119 C 110.679 256.119 101.01 252.881 93.434 246.405 C 85.857 239.921 82.068 231.795 82.068 222.025 C 82.068 215.447 83.863 210.21 87.452 206.318 C 91.04 202.434 95.826 200.492 101.807 200.492 C 106.194 200.492 110.034 201.988 113.328 204.979 C 116.614 207.97 118.256 211.458 118.256 215.447 C 118.256 223.222 111.377 227.509 97.62 228.306 C 93.235 228.505 91.04 229.502 91.04 231.297 C 91.04 236.281 94.282 240.815 100.767 244.898 C 107.243 248.991 114.468 251.035 122.443 251.035 C 141.782 251.035 151.452 239.969 151.452 217.839 C 151.452 207.869 149.358 199.496 145.172 192.718 C 140.985 185.939 133.208 178.362 121.845 169.988 C 104.698 157.228 93.931 148.056 89.545 142.474 C 83.564 134.898 80.573 125.626 80.573 114.661 C 80.573 101.304 86.356 87.645 97.92 73.689 C 91.141 64.718 87.752 55.247 87.752 45.277 C 87.752 31.72 92.09 20.806 100.767 12.536 C 109.436 4.257 120.846 0.119 135.003 0.119 C 146.568 0.119 155.99 3.162 163.271 9.247 C 170.544 15.323 174.181 23.247 174.181 33.016 C 174.181 45.178 168.698 51.259 157.732 51.259 C 147.365 51.259 142.181 46.773 142.181 37.801 C 142.181 33.215 143.478 30.025 146.069 28.231 C 148.66 26.436 153.745 25.34 161.321 24.941 C 163.116 24.941 164.013 24.145 164.013 22.549 C 164.013 18.163 161.122 14.227 155.34 10.742 C 149.558 7.247 143.078 5.502 135.9 5.502 C 127.527 5.502 120.846 7.995 115.863 12.978 C 110.879 17.962 108.386 24.642 108.386 33.016 C 108.386 40.991 110.679 48.116 115.265 54.393 C 119.851 60.677 128.324 68.306 140.686 77.278 C 154.642 87.446 163.913 96.218 168.499 103.595 C 174.48 112.967 177.471 121.738 177.471 129.914 Z M 166.405 146.063 C 166.405 134.698 156.536 121.54 136.798 106.586 C 133.01 103.595 127.329 99.21 119.751 93.428 C 119.153 93.028 117.558 91.732 114.967 89.54 L 101.807 77.876 L 100.612 79.371 C 95.826 85.352 93.434 92.13 93.434 99.709 C 93.434 108.481 98.517 117.453 108.686 126.624 C 113.271 130.81 124.038 139.583 140.985 152.941 C 143.377 154.736 148.562 159.122 156.536 166.101 C 163.116 158.524 166.405 151.845 166.405 146.063 Z" bx:origin="0.489453 0.499535">
<title>Section</title>
</path>
</svg>

After

Width:  |  Height:  |  Size: 3.3 KiB

View file

@ -0,0 +1,10 @@
<?xml version="1.0" encoding="utf-8"?>
<svg viewBox="0 0 256 256" height="256px" width="256px" id="svg2" version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:bx="https://boxy-svg.com">
<rect width="256" height="256" style="fill: black;" bx:origin="0 0"/>
<path style="fill: none; stroke: white; stroke-linecap: butt; stroke-linejoin: miter; stroke-miterlimit: 4; stroke-width: 8px;" d="M 100.4 36.878 L 157.448 36.878 C 174.796 36.878 183.606 36.878 192.962 39.844 C 203.201 43.57 211.267 51.636 214.992 61.875 C 217.958 71.232 217.958 80.041 217.958 97.657 L 217.958 154.436 C 217.958 171.784 217.958 180.594 214.992 189.95 C 211.267 200.189 203.201 208.256 192.962 211.982 C 183.606 214.948 174.796 214.948 157.18 214.948 L 100.4 214.948 C 83.052 214.948 74.243 214.948 64.887 211.982 C 54.647 208.256 46.581 200.189 42.856 189.95 C 39.89 180.594 39.89 171.784 39.89 154.169 L 39.89 97.389 C 39.89 80.041 39.89 71.232 42.856 61.875 C 46.581 51.636 54.647 43.57 64.887 39.844 C 74.243 36.878 83.052 36.878 100.668 36.878 Z">
<title>RoundedSquare</title>
</path>
<path d="M 177.471 129.914 C 177.471 144.467 171.889 157.827 160.723 169.988 C 168.898 180.754 172.985 192.119 172.985 204.082 C 172.985 218.837 168.148 231.197 158.474 241.166 C 148.808 251.136 136.798 256.119 122.443 256.119 C 110.679 256.119 101.01 252.881 93.434 246.405 C 85.857 239.921 82.068 231.795 82.068 222.025 C 82.068 215.447 83.863 210.21 87.452 206.318 C 91.04 202.434 95.826 200.492 101.807 200.492 C 106.194 200.492 110.034 201.988 113.328 204.979 C 116.614 207.97 118.256 211.458 118.256 215.447 C 118.256 223.222 111.377 227.509 97.62 228.306 C 93.235 228.505 91.04 229.502 91.04 231.297 C 91.04 236.281 94.282 240.815 100.767 244.898 C 107.243 248.991 114.468 251.035 122.443 251.035 C 141.782 251.035 151.452 239.969 151.452 217.839 C 151.452 207.869 149.358 199.496 145.172 192.718 C 140.985 185.939 133.208 178.362 121.845 169.988 C 104.698 157.228 93.931 148.056 89.545 142.474 C 83.564 134.898 80.573 125.626 80.573 114.661 C 80.573 101.304 86.356 87.645 97.92 73.689 C 91.141 64.718 87.752 55.247 87.752 45.277 C 87.752 31.72 92.09 20.806 100.767 12.536 C 109.436 4.257 120.846 0.119 135.003 0.119 C 146.568 0.119 155.99 3.162 163.271 9.247 C 170.544 15.323 174.181 23.247 174.181 33.016 C 174.181 45.178 168.698 51.259 157.732 51.259 C 147.365 51.259 142.181 46.773 142.181 37.801 C 142.181 33.215 143.478 30.025 146.069 28.231 C 148.66 26.436 153.745 25.34 161.321 24.941 C 163.116 24.941 164.013 24.145 164.013 22.549 C 164.013 18.163 161.122 14.227 155.34 10.742 C 149.558 7.247 143.078 5.502 135.9 5.502 C 127.527 5.502 120.846 7.995 115.863 12.978 C 110.879 17.962 108.386 24.642 108.386 33.016 C 108.386 40.991 110.679 48.116 115.265 54.393 C 119.851 60.677 128.324 68.306 140.686 77.278 C 154.642 87.446 163.913 96.218 168.499 103.595 C 174.48 112.967 177.471 121.738 177.471 129.914 Z M 166.405 146.063 C 166.405 134.698 156.536 121.54 136.798 106.586 C 133.01 103.595 127.329 99.21 119.751 93.428 C 119.153 93.028 117.558 91.732 114.967 89.54 L 101.807 77.876 L 100.612 79.371 C 95.826 85.352 93.434 92.13 93.434 99.709 C 93.434 108.481 98.517 117.453 108.686 126.624 C 113.271 130.81 124.038 139.583 140.985 152.941 C 143.377 154.736 148.562 159.122 156.536 166.101 C 163.116 158.524 166.405 151.845 166.405 146.063 Z" style="fill: white;" bx:origin="0.489453 0.499535">
<title>Section</title>
</path>
</svg>

After

Width:  |  Height:  |  Size: 3.3 KiB

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

18
themes/story/static/js/less.min.js vendored Normal file

File diff suppressed because one or more lines are too long

View file

@ -0,0 +1,177 @@
Apache License
Version 2.0, January 2004
http://www.apache.org/licenses/
TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION
1. Definitions.
"License" shall mean the terms and conditions for use, reproduction,
and distribution as defined by Sections 1 through 9 of this document.
"Licensor" shall mean the copyright owner or entity authorized by
the copyright owner that is granting the License.
"Legal Entity" shall mean the union of the acting entity and all
other entities that control, are controlled by, or are under common
control with that entity. For the purposes of this definition,
"control" means (i) the power, direct or indirect, to cause the
direction or management of such entity, whether by contract or
otherwise, or (ii) ownership of fifty percent (50%) or more of the
outstanding shares, or (iii) beneficial ownership of such entity.
"You" (or "Your") shall mean an individual or Legal Entity
exercising permissions granted by this License.
"Source" form shall mean the preferred form for making modifications,
including but not limited to software source code, documentation
source, and configuration files.
"Object" form shall mean any form resulting from mechanical
transformation or translation of a Source form, including but
not limited to compiled object code, generated documentation,
and conversions to other media types.
"Work" shall mean the work of authorship, whether in Source or
Object form, made available under the License, as indicated by a
copyright notice that is included in or attached to the work
(an example is provided in the Appendix below).
"Derivative Works" shall mean any work, whether in Source or Object
form, that is based on (or derived from) the Work and for which the
editorial revisions, annotations, elaborations, or other modifications
represent, as a whole, an original work of authorship. For the purposes
of this License, Derivative Works shall not include works that remain
separable from, or merely link (or bind by name) to the interfaces of,
the Work and Derivative Works thereof.
"Contribution" shall mean any work of authorship, including
the original version of the Work and any modifications or additions
to that Work or Derivative Works thereof, that is intentionally
submitted to Licensor for inclusion in the Work by the copyright owner
or by an individual or Legal Entity authorized to submit on behalf of
the copyright owner. For the purposes of this definition, "submitted"
means any form of electronic, verbal, or written communication sent
to the Licensor or its representatives, including but not limited to
communication on electronic mailing lists, source code control systems,
and issue tracking systems that are managed by, or on behalf of, the
Licensor for the purpose of discussing and improving the Work, but
excluding communication that is conspicuously marked or otherwise
designated in writing by the copyright owner as "Not a Contribution."
"Contributor" shall mean Licensor and any individual or Legal Entity
on behalf of whom a Contribution has been received by Licensor and
subsequently incorporated within the Work.
2. Grant of Copyright License. Subject to the terms and conditions of
this License, each Contributor hereby grants to You a perpetual,
worldwide, non-exclusive, no-charge, royalty-free, irrevocable
copyright license to reproduce, prepare Derivative Works of,
publicly display, publicly perform, sublicense, and distribute the
Work and such Derivative Works in Source or Object form.
3. Grant of Patent License. Subject to the terms and conditions of
this License, each Contributor hereby grants to You a perpetual,
worldwide, non-exclusive, no-charge, royalty-free, irrevocable
(except as stated in this section) patent license to make, have made,
use, offer to sell, sell, import, and otherwise transfer the Work,
where such license applies only to those patent claims licensable
by such Contributor that are necessarily infringed by their
Contribution(s) alone or by combination of their Contribution(s)
with the Work to which such Contribution(s) was submitted. If You
institute patent litigation against any entity (including a
cross-claim or counterclaim in a lawsuit) alleging that the Work
or a Contribution incorporated within the Work constitutes direct
or contributory patent infringement, then any patent licenses
granted to You under this License for that Work shall terminate
as of the date such litigation is filed.
4. Redistribution. You may reproduce and distribute copies of the
Work or Derivative Works thereof in any medium, with or without
modifications, and in Source or Object form, provided that You
meet the following conditions:
(a) You must give any other recipients of the Work or
Derivative Works a copy of this License; and
(b) You must cause any modified files to carry prominent notices
stating that You changed the files; and
(c) You must retain, in the Source form of any Derivative Works
that You distribute, all copyright, patent, trademark, and
attribution notices from the Source form of the Work,
excluding those notices that do not pertain to any part of
the Derivative Works; and
(d) If the Work includes a "NOTICE" text file as part of its
distribution, then any Derivative Works that You distribute must
include a readable copy of the attribution notices contained
within such NOTICE file, excluding those notices that do not
pertain to any part of the Derivative Works, in at least one
of the following places: within a NOTICE text file distributed
as part of the Derivative Works; within the Source form or
documentation, if provided along with the Derivative Works; or,
within a display generated by the Derivative Works, if and
wherever such third-party notices normally appear. The contents
of the NOTICE file are for informational purposes only and
do not modify the License. You may add Your own attribution
notices within Derivative Works that You distribute, alongside
or as an addendum to the NOTICE text from the Work, provided
that such additional attribution notices cannot be construed
as modifying the License.
You may add Your own copyright statement to Your modifications and
may provide additional or different license terms and conditions
for use, reproduction, or distribution of Your modifications, or
for any such Derivative Works as a whole, provided Your use,
reproduction, and distribution of the Work otherwise complies with
the conditions stated in this License.
5. Submission of Contributions. Unless You explicitly state otherwise,
any Contribution intentionally submitted for inclusion in the Work
by You to the Licensor shall be under the terms and conditions of
this License, without any additional terms or conditions.
Notwithstanding the above, nothing herein shall supersede or modify
the terms of any separate license agreement you may have executed
with Licensor regarding such Contributions.
6. Trademarks. This License does not grant permission to use the trade
names, trademarks, service marks, or product names of the Licensor,
except as required for reasonable and customary use in describing the
origin of the Work and reproducing the content of the NOTICE file.
7. Disclaimer of Warranty. Unless required by applicable law or
agreed to in writing, Licensor provides the Work (and each
Contributor provides its Contributions) on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
implied, including, without limitation, any warranties or conditions
of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A
PARTICULAR PURPOSE. You are solely responsible for determining the
appropriateness of using or redistributing the Work and assume any
risks associated with Your exercise of permissions under this License.
8. Limitation of Liability. In no event and under no legal theory,
whether in tort (including negligence), contract, or otherwise,
unless required by applicable law (such as deliberate and grossly
negligent acts) or agreed to in writing, shall any Contributor be
liable to You for damages, including any direct, indirect, special,
incidental, or consequential damages of any character arising as a
result of this License or out of the use or inability to use the
Work (including but not limited to damages for loss of goodwill,
work stoppage, computer failure or malfunction, or any and all
other commercial damages or losses), even if such Contributor
has been advised of the possibility of such damages.
9. Accepting Warranty or Additional Liability. While redistributing
the Work or Derivative Works thereof, You may choose to offer,
and charge a fee for, acceptance of support, warranty, indemnity,
or other liability obligations and/or rights consistent with this
License. However, in accepting such obligations, You may act only
on Your own behalf and on Your sole responsibility, not on behalf
of any other Contributor, and only if You agree to indemnify,
defend, and hold each Contributor harmless for any liability
incurred by, or claims asserted against, such Contributor by reason
of your accepting any such warranty or additional liability.
END OF TERMS AND CONDITIONS

File diff suppressed because it is too large Load diff

File diff suppressed because one or more lines are too long

File diff suppressed because it is too large Load diff

File diff suppressed because one or more lines are too long

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

View file

@ -0,0 +1,3 @@
àRCopyright 1990-2009 Adobe Systems Incorporated.
All rights reserved.
See ./LICENSEáCNS2-H

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

View file

@ -0,0 +1,3 @@
àRCopyright 1990-2009 Adobe Systems Incorporated.
All rights reserved.
See ./LICENSEá ETen-B5-H` ^

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

View file

@ -0,0 +1,4 @@
àRCopyright 1990-2009 Adobe Systems Incorporated.
All rights reserved.
See ./LICENSE!!<21>º]aX!!]`<60>21<32>> <09>p <0B>z<EFBFBD>$]<06>"Rd<E2809A>-Uƒ7<C692>*4„%<25>+ „Z „{<7B>/%…<<3C>9K…b<E280A6>1]†.<2E>" ‰`]‡,<2C>"]ˆ
<EFBFBD>"]ˆh<CB86>"]‰F<E280B0>"]Š$<24>"]<02>"]`<60>"]Œ><3E>"]<5D><1C>"]<5D>z<EFBFBD>"]ŽX<C5BD>"]<5D>6<EFBFBD>"]<5D><14>"]<5D>r<EFBFBD>"]P<E28098>"].<2E>"]“ <0C>"]“j<E2809C>"]”H<E2809D>"]•&<26>"]<04>"]b<E28093>"]—@<40>"]˜<1E>"]˜|<7C>"]™Z<E284A2>"]š8<C5A1>"]<16>"]t<E280BA>"]œR<C593>"]<5D>0<EFBFBD>"]ž<0E>"]žl<C5BE>"]ŸJ<C5B8>"] (<28>"]¡<06>"]¡d<C2A1>"]¢B<C2A2>"]£ <20>"X£~<7E>']¤W<C2A4>"]¥5<C2A5>"]¦<13>"]¦q<C2A6>"]§O<C2A7>"]¨-<2D>"]© <0B>"]©i<C2A9>"]ªG<C2AA>"]«%<25>"]¬<03>"]¬a<C2AC>"]­?<3F>"]®<1D>"]®{<7B>"]¯Y<C2AF>"]°7<C2B0>"]±<15>"]±s<C2B1>"]²Q<C2B2>"]³/<2F>"]´ <0A>"]´k<C2B4>"]µI<C2B5>"]¶'<27>"]·<05>"]·c<C2B7>"]¸A<C2B8>"]¹<1F>"]¹}<7D>"]º[<5B>"]»9

Binary file not shown.

Binary file not shown.

Some files were not shown because too many files have changed in this diff Show more