Improve TOC headline detection

This commit is contained in:
Johannes Zillmann 2021-04-27 08:24:47 +02:00
parent 94a7405671
commit e261583c65
72 changed files with 766 additions and 510 deletions

View File

@ -11,6 +11,7 @@ The interesting thing is that rendering with pdfjs (online) looks good. So maybe
- items in wrong lines + numbers are not numbers [Life-Of-God-In-Soul-Of-Man](examples/Life-Of-God-In-Soul-Of-Man.pdf) - items in wrong lines + numbers are not numbers [Life-Of-God-In-Soul-Of-Man](examples/Life-Of-God-In-Soul-Of-Man.pdf)
- CC-NC_Leitfaden.pdf: un-verified toc entries (and/und/&... etc...) - CC-NC_Leitfaden.pdf: un-verified toc entries (and/und/&... etc...)
- Closed-Syllables.pdf: unverified toc entries - Closed-Syllables.pdf: unverified toc entries
- Safe-Communication.pdf: One toc element is one page off (8=>9)
## Not yet reviewed test PDFS ## Not yet reviewed test PDFS

14
core/package-lock.json generated
View File

@ -11,6 +11,7 @@
"license": "AGPL-3.0", "license": "AGPL-3.0",
"dependencies": { "dependencies": {
"@types/string-similarity": "^4.0.0", "@types/string-similarity": "^4.0.0",
"simple-statistics": "^7.7.0",
"string-similarity": "^4.0.4" "string-similarity": "^4.0.4"
}, },
"devDependencies": { "devDependencies": {
@ -5463,6 +5464,14 @@
"integrity": "sha512-VUJ49FC8U1OxwZLxIbTTrDvLnf/6TDgxZcK8wxR8zs13xpx7xbG60ndBlhNrFi2EMuFRoeDoJO7wthSLq42EjA==", "integrity": "sha512-VUJ49FC8U1OxwZLxIbTTrDvLnf/6TDgxZcK8wxR8zs13xpx7xbG60ndBlhNrFi2EMuFRoeDoJO7wthSLq42EjA==",
"dev": true "dev": true
}, },
"node_modules/simple-statistics": {
"version": "7.7.0",
"resolved": "https://registry.npmjs.org/simple-statistics/-/simple-statistics-7.7.0.tgz",
"integrity": "sha512-TAsZRUJ7FD/yCnm5UBgyWU7bP1gOPsw9n/dVrE8hQ+BF1zJPgDJ5X/MOnxG+HE/7nejSpJLJLdmTh7bkfsFkRw==",
"engines": {
"node": "*"
}
},
"node_modules/sisteransi": { "node_modules/sisteransi": {
"version": "1.0.5", "version": "1.0.5",
"resolved": "https://registry.npmjs.org/sisteransi/-/sisteransi-1.0.5.tgz", "resolved": "https://registry.npmjs.org/sisteransi/-/sisteransi-1.0.5.tgz",
@ -11172,6 +11181,11 @@
"integrity": "sha512-VUJ49FC8U1OxwZLxIbTTrDvLnf/6TDgxZcK8wxR8zs13xpx7xbG60ndBlhNrFi2EMuFRoeDoJO7wthSLq42EjA==", "integrity": "sha512-VUJ49FC8U1OxwZLxIbTTrDvLnf/6TDgxZcK8wxR8zs13xpx7xbG60ndBlhNrFi2EMuFRoeDoJO7wthSLq42EjA==",
"dev": true "dev": true
}, },
"simple-statistics": {
"version": "7.7.0",
"resolved": "https://registry.npmjs.org/simple-statistics/-/simple-statistics-7.7.0.tgz",
"integrity": "sha512-TAsZRUJ7FD/yCnm5UBgyWU7bP1gOPsw9n/dVrE8hQ+BF1zJPgDJ5X/MOnxG+HE/7nejSpJLJLdmTh7bkfsFkRw=="
},
"sisteransi": { "sisteransi": {
"version": "1.0.5", "version": "1.0.5",
"resolved": "https://registry.npmjs.org/sisteransi/-/sisteransi-1.0.5.tgz", "resolved": "https://registry.npmjs.org/sisteransi/-/sisteransi-1.0.5.tgz",

View File

@ -45,6 +45,7 @@
}, },
"dependencies": { "dependencies": {
"@types/string-similarity": "^4.0.0", "@types/string-similarity": "^4.0.0",
"simple-statistics": "^7.7.0",
"string-similarity": "^4.0.4" "string-similarity": "^4.0.4"
} }
} }

View File

@ -5,18 +5,132 @@ enum FontType {
BOLD_OBLIQUE = 'BOLD_OBLIQUE', BOLD_OBLIQUE = 'BOLD_OBLIQUE',
} }
//TODO math & quoted http://mirrors.ibiblio.org/CTAN/systems/win32/bakoma/fonts/fonts.html
// Math Italic cmmi 5 6 7 8 9 10 12
// Math Bold Italic cmmib 5 6 7 8 9 10
// Math Symbols cmsy 5 6 7 8 9 10
// Math Bold Symbols cmbsy 5 6 7 8 9 10
// Math Extension cmex 7 8 9 10
// SansSerif Quoted cmssq 8
// SansSerif Quoted Italic cmssqi 8
//TODO slanted ?
export default FontType; export default FontType;
const boldTypeFragments = [
'bold',
'heavy',
'cmb',
'cmbx',
'cmbsy',
'cmssbx',
'logobf',
'lcmssb',
'eufb',
'eurb',
'eusb',
'cmcbx',
'cmcb',
'cmcbxsl',
'cmcssbx',
'ecbl',
'tcbl',
'ecbx',
'tcbx',
'ecrb',
'tcrb',
'ecxc',
'ecoc',
'ecsx',
'tcsx',
'labl',
'labx',
'larb',
'laxc',
'laoc',
'lasx',
't1bx',
't1b',
't1bxsl',
't1ssbx',
't2bx',
't2b',
't2ssbx',
];
const obliqueTypeFragments = [
'oblique',
'italic',
'cmti',
'cmmi',
'cmu',
'cmitt',
'cmssi',
'cmssqi',
'cmfi',
'lcmssi',
'cmcti',
'cmcbxti',
'cmcitt',
'cmcssi',
'cmcssqi',
'ccti',
'eoti',
'toti',
'ecti',
'tcti',
'ecci',
'tcci',
'ecui',
'tcui',
'ecit',
'tcit',
'ecvi',
'tcvi',
'lati',
'laci',
'laui',
'lait',
'lavi',
't1ti',
't1itt',
't1ssi',
't2ti',
't2itt',
't2ssi',
];
const boldAndObliqueTypeFragments = [
'cmmib',
'cmbxti',
'ecbi',
'tcbi',
'ecso',
'tcso',
'labi',
'laso',
't1bxti',
't2bxti',
];
namespace FontType { namespace FontType {
export function declaredFontTypes(fontName: string): FontType[] { export function declaredFontTypes(fontName: string): FontType[] {
const fontNameLowerCase = fontName.toLowerCase(); const fontNameLowerCase = fontName.toLowerCase();
const bold = fontNameLowerCase.includes('bold') || fontNameLowerCase.includes('heavy'); const boldAndOblique = boldAndObliqueTypeFragments.find((fragment) => fontNameLowerCase.includes(fragment));
const italic = fontNameLowerCase.includes('oblique') || fontNameLowerCase.includes('italic'); let bold: boolean;
let oblique: boolean;
if (boldAndOblique) {
bold = true;
oblique = true;
} else {
bold = !!boldTypeFragments.find((fragment) => fontNameLowerCase.includes(fragment));
oblique = !!obliqueTypeFragments.find((fragment) => fontNameLowerCase.includes(fragment));
}
const fontTypes: FontType[] = []; const fontTypes: FontType[] = [];
if (bold) { if (bold) {
fontTypes.push(FontType.BOLD); fontTypes.push(FontType.BOLD);
} }
if (italic) { if (oblique) {
fontTypes.push(FontType.OBLIQUE); fontTypes.push(FontType.OBLIQUE);
} }
return fontTypes; return fontTypes;

View File

@ -16,6 +16,10 @@ export function getText(item: Item): string {
return get(item, 'str'); return get(item, 'str');
} }
export function joinText(items: Item[], joinCharacter: string): string {
return items.map((item) => getText(item)).join(joinCharacter);
}
export function getFontName(fontMap: Map<string, object>, item: Item): string { export function getFontName(fontMap: Map<string, object>, item: Item): string {
const fontId = item.data['fontName']; const fontId = item.data['fontName'];
const fontObject = fontMap.get(fontId); const fontObject = fontMap.get(fontId);

View File

@ -1,9 +1,11 @@
import { assert } from '../assert'; import { assert } from '../assert';
const TAB_CHAR_CODE = 9; export const TAB_CHAR_CODE = 9;
const WHITESPACE_CHAR_CODE = 32; export const WHITESPACE_CHAR_CODE = 32;
const MIN_DIGIT_CHAR_CODE = 48; export const MIN_DIGIT_CHAR_CODE = 48;
const MAX_DIGIT_CHAR_CODE = 57; export const MAX_DIGIT_CHAR_CODE = 57;
export const PERIOD_CHAR_CODES = [46, 190];
export const DASHS_CHAR_CODES = [45, 189, 8211];
export function isDigit(charCode: number): boolean { export function isDigit(charCode: number): boolean {
return charCode >= MIN_DIGIT_CHAR_CODE && charCode <= MAX_DIGIT_CHAR_CODE; return charCode >= MIN_DIGIT_CHAR_CODE && charCode <= MAX_DIGIT_CHAR_CODE;
@ -22,9 +24,11 @@ export function filterOutDigits(text: string): string {
} }
export function filterOutWhitespaces(text: string): string { export function filterOutWhitespaces(text: string): string {
return String.fromCharCode( return filterOut(text, [TAB_CHAR_CODE, WHITESPACE_CHAR_CODE]);
...toCharcodes(text).filter((code) => code != TAB_CHAR_CODE && code != WHITESPACE_CHAR_CODE), }
);
export function filterOut(text: string, codes: number[]): string {
return String.fromCharCode(...toCharcodes(text).filter((code) => !codes.includes(code)));
} }
export function extractNumbers(text: string): number[] { export function extractNumbers(text: string): number[] {

View File

@ -10,6 +10,8 @@ import { groupByPage, onlyUniques } from '../support/groupingUtils';
import { flatten } from '../support/functional'; import { flatten } from '../support/functional';
import { extractNumbers } from '../support/stringFunctions'; import { extractNumbers } from '../support/stringFunctions';
import { median } from 'simple-statistics';
export const MIN_X = new GlobalDefinition<number>('minX'); export const MIN_X = new GlobalDefinition<number>('minX');
export const MAX_X = new GlobalDefinition<number>('maxX'); export const MAX_X = new GlobalDefinition<number>('maxX');
export const MIN_Y = new GlobalDefinition<number>('minY'); export const MIN_Y = new GlobalDefinition<number>('minY');
@ -42,6 +44,8 @@ export default class CalculateStatistics extends ItemTransformer {
} }
transform(context: TransformContext, items: Item[]): ItemResult { transform(context: TransformContext, items: Item[]): ItemResult {
const heights = items.map((item) => item.data['height'] as number);
const mostUsedByMedian = median(heights);
// const heightToOccurrence: { [key: string]: number } = {}; // const heightToOccurrence: { [key: string]: number } = {};
const heightToOccurrence = {}; const heightToOccurrence = {};
const fontToOccurrence = {}; const fontToOccurrence = {};
@ -116,7 +120,7 @@ export default class CalculateStatistics extends ItemTransformer {
items: items, items: items,
globals: [ globals: [
MAX_HEIGHT.value(maxHeight), MAX_HEIGHT.value(maxHeight),
MOST_USED_HEIGHT.value(mostUsedHeight), MOST_USED_HEIGHT.value(mostUsedByMedian),
MIN_X.value(minX), MIN_X.value(minX),
MAX_X.value(maxX), MAX_X.value(maxX),
MIN_Y.value(minY), MIN_Y.value(minY),

View File

@ -1,3 +1,5 @@
import { compareTwoStrings } from 'string-similarity';
import ItemTransformer from './ItemTransformer'; import ItemTransformer from './ItemTransformer';
import GlobalDefinition from '../GlobalDefinition'; import GlobalDefinition from '../GlobalDefinition';
import Item from '../Item'; import Item from '../Item';
@ -6,17 +8,28 @@ import TransformContext from './TransformContext';
import LineItemMerger from '../debug/LineItemMerger'; import LineItemMerger from '../debug/LineItemMerger';
import { groupByLine, groupByPage, onlyUniques, transformGroupedByPage } from '../support/groupingUtils'; import { groupByLine, groupByPage, onlyUniques, transformGroupedByPage } from '../support/groupingUtils';
import { MOST_USED_HEIGHT, PAGE_MAPPING } from './CacluclateStatistics'; import { MOST_USED_HEIGHT, PAGE_MAPPING } from './CacluclateStatistics';
import { extractEndingNumber, filterOutWhitespaces } from '../support/stringFunctions'; import {
extractEndingNumber,
filterOut,
filterOutWhitespaces,
DASHS_CHAR_CODES,
TAB_CHAR_CODE,
WHITESPACE_CHAR_CODE,
PERIOD_CHAR_CODES,
} from '../support/stringFunctions';
import ItemType from '../ItemType'; import ItemType from '../ItemType';
import { numbersAreConsecutive } from '../support/numberFunctions'; import { numbersAreConsecutive } from '../support/numberFunctions';
import TOC, { TocEntry } from '../TOC'; import TOC, { TocEntry } from '../TOC';
import FontType from '../FontType'; import FontType from '../FontType';
import { flatten, groupBy } from '../support/functional'; import { flatten, groupBy } from '../support/functional';
import { getHeight, getText, getFontName, itemWithType } from '../support/items'; import { getHeight, getText, getFontName, itemWithType, joinText } from '../support/items';
const config = { const config = {
// How many characters a line with a ending number needs to have minimally to be a valid link // How many characters a line with a ending number needs to have minimally to be a valid link
linkMinLength: 5, linkMinLength: 4,
// How much bigger (height) then a 'normal' text a headline must be
minHeadlineDistance: 1.5,
}; };
export const TOC_GLOBAL = new GlobalDefinition<TOC>('toc'); export const TOC_GLOBAL = new GlobalDefinition<TOC>('toc');
@ -66,6 +79,7 @@ export default class DetectToc extends ItemTransformer {
context.fontMap, context.fontMap,
inputItems, inputItems,
mostUsedHeight, mostUsedHeight,
rawEntry.linkedPage,
rawEntry.linkedPage - pageMapping.pageFactor, rawEntry.linkedPage - pageMapping.pageFactor,
rawEntry.entryLines, rawEntry.entryLines,
); );
@ -90,7 +104,10 @@ export default class DetectToc extends ItemTransformer {
} }
return item; return item;
}), }),
messages: [`Detected ${tocEntries.length} TOC entries`], messages: [
`Detected ${tocEntries.length} TOC entries`,
`Verified ${tocEntries.filter((entry) => entry.verified).length} / ${tocEntries.length}`,
],
globals: [TOC_GLOBAL.value(new TOC(tocArea.pages, tocEntries))], globals: [TOC_GLOBAL.value(new TOC(tocArea.pages, tocEntries))],
}; };
} }
@ -250,33 +267,87 @@ function findHeadline(
items: Item[], items: Item[],
mostUsedHeight: number, mostUsedHeight: number,
targetPage: number, targetPage: number,
targetPageIndex: number,
entryLines: Item[][], entryLines: Item[][],
): string | undefined { ): string | undefined {
const tocEntryText = normalizeHeadlineChars( const tocEntryText = normalizeHeadlineChars(entryLines)
entryLines.map((lineItems) => lineItems.map((item) => getText(item)).join('')).join(''), .replace(new RegExp(targetPage + '$', 'g'), '')
); .replace(new RegExp('\\.\\.*$', 'g'), '');
const pageItems = items.filter((item) => item.page == targetPage); const pageItems = items.filter((item) => item.page == targetPageIndex);
const possibleHeadlines = pageItems.filter(
(item) =>
getHeight(item) > mostUsedHeight + config.minHeadlineDistance ||
FontType.declaredFontTypes(getFontName(fontMap, item)).includes(FontType.BOLD),
);
let hits = possibleHeadlines.filter((item) => {
return tocEntryText.includes(normalizeHeadlineChars(getText(item)));
});
if (hits.length > 0) { const canditate = fineMatchingHeadlineCanditate(tocEntryText, pageItems, fontMap, mostUsedHeight);
return hits if (canditate.length > 0) {
.map((hit) => getText(hit)) return joinText(flatten(canditate), ' ').replace(/\s+/g, ' ').trim();
.join('')
.trim();
} }
return undefined; return undefined;
} }
function normalizeHeadlineChars(text: string) { function fineMatchingHeadlineCanditate(
return filterOutWhitespaces(text).toLowerCase(); tocEntryText: string,
pageItems: Item[],
fontMap: Map<string, object>,
mostUsedHeight: number,
): Item[][] {
const itemsByLine = groupByLine(pageItems);
let headlineCanditates: { score: number; lines: Item[][] }[] = [];
let currentLines: Item[][] = [];
let currentScore = 0;
let currentText = '';
for (let lineIdx = 0; lineIdx < itemsByLine.length; lineIdx++) {
const lineItems = itemsByLine[lineIdx];
const lineText = normalizeHeadlineChars([lineItems]);
const lineInLink = tocEntryText.includes(lineText);
const headlineSymptoms =
getHeight(lineItems[0]) >= mostUsedHeight + config.minHeadlineDistance ||
FontType.declaredFontTypes(getFontName(fontMap, lineItems[0])).includes(FontType.BOLD);
if (lineInLink && headlineSymptoms) {
const newText = currentText + lineText;
const newScore = compareTwoStrings(newText, tocEntryText);
if (newScore > currentScore) {
currentScore = newScore;
currentText = newText;
currentLines.push(lineItems);
if (newScore == 1) {
return currentLines;
}
} else if (currentScore > 0.95) {
return currentLines;
}
} else {
if (currentLines.length > 0) {
headlineCanditates.push({ score: currentScore, lines: currentLines });
currentLines = [];
currentScore = 0;
currentText = '';
}
}
}
// console.log(
// 'headlineCanditates',
// tocEntryText,
// pageItems[0].page,
// headlineCanditates
// .sort((a, b) => a.score - b.score)
// .map((canditate) => canditate.score + ': ' + joinText(flatten(canditate.lines), '')),
// );
headlineCanditates = headlineCanditates.filter((candidate) => candidate.score > 0.5);
if (headlineCanditates.length == 0) {
return [];
}
return headlineCanditates.sort((a, b) => a.score - b.score)[0].lines;
}
function normalizeHeadlineChars(lines: Item[][]) {
const text = flatten(lines)
.map((item) => getText(item))
.join('');
return filterOut(text, [
WHITESPACE_CHAR_CODE,
TAB_CHAR_CODE,
...DASHS_CHAR_CODES,
...PERIOD_CHAR_CODES,
]).toLowerCase();
} }
/** /**

View File

@ -0,0 +1,28 @@
import FontType from 'src/FontType';
test('descriptive names', async () => {
expect(FontType.declaredFontTypes('')).toEqual([]);
expect(FontType.declaredFontTypes('JBRMKS+Helvetica')).toEqual([]);
expect(FontType.declaredFontTypes('OMUGKQ+Helvetica-Bold')).toEqual([FontType.BOLD]);
expect(FontType.declaredFontTypes('SVUOCV+Helvetica-Oblique')).toEqual([FontType.OBLIQUE]);
expect(FontType.declaredFontTypes('JUJONH+Helvetica-BoldOblique')).toEqual([FontType.BOLD, FontType.OBLIQUE]);
});
// See http://mirrors.ibiblio.org/CTAN/systems/win32/bakoma/fonts/fonts.html
test('ATM Compatible Postscript Type 1', async () => {
expect(FontType.declaredFontTypes('')).toEqual([]);
expect(FontType.declaredFontTypes('BBXMCN+CMR9')).toEqual([]);
expect(FontType.declaredFontTypes('EFUEQI+CMR10')).toEqual([]);
expect(FontType.declaredFontTypes('JZXNAL+CMCSC10')).toEqual([]);
expect(FontType.declaredFontTypes('ZYSMDY+CMBX10')).toEqual([FontType.BOLD]);
expect(FontType.declaredFontTypes('AENRCE+CMBX12')).toEqual([FontType.BOLD]);
expect(FontType.declaredFontTypes('HENPPA+BitstreamCyberbit-Roman')).toEqual([]);
expect(FontType.declaredFontTypes('GHPDYG+CMSY10')).toEqual([]);
expect(FontType.declaredFontTypes('VKLUIG+CMTT9')).toEqual([]);
expect(FontType.declaredFontTypes('KSVJZ+CMTI10')).toEqual([FontType.OBLIQUE]);
expect(FontType.declaredFontTypes('QCQOVJ+CMTT10')).toEqual([]);
expect(FontType.declaredFontTypes('ASZLVZ+BitstreamCyberbit-Roman')).toEqual([]);
expect(FontType.declaredFontTypes('KFYFQJ+CMMI10')).toEqual([FontType.OBLIQUE]);
expect(FontType.declaredFontTypes('GYUWCJ+CMMIB10')).toEqual([FontType.BOLD, FontType.OBLIQUE]);
expect(FontType.declaredFontTypes('OUVHFK+CMR8')).toEqual([]);
});

View File

@ -28,7 +28,7 @@
], ],
"globals": { "globals": {
"maxHeight": 66, "maxHeight": 66,
"mostUsedHeight": 8, "mostUsedHeight": 8.5,
"minX": 41.38153078000005, "minX": 41.38153078000005,
"maxX": 400.56930541, "maxX": 400.56930541,
"minY": 36.71720123, "minY": 36.71720123,

View File

@ -32,7 +32,7 @@
], ],
"globals": { "globals": {
"maxHeight": 66, "maxHeight": 66,
"mostUsedHeight": 8, "mostUsedHeight": 8.5,
"minX": 41.38153078000005, "minX": 41.38153078000005,
"maxX": 400.56930541, "maxX": 400.56930541,
"minY": 36.71720123, "minY": 36.71720123,

View File

@ -35,7 +35,7 @@
], ],
"globals": { "globals": {
"maxHeight": 66, "maxHeight": 66,
"mostUsedHeight": 8, "mostUsedHeight": 8.5,
"minX": 41.38153078000005, "minX": 41.38153078000005,
"maxX": 400.56930541, "maxX": 400.56930541,
"minY": 36.71720123, "minY": 36.71720123,
@ -85,8 +85,8 @@
}, },
{ {
"level": 0, "level": 0,
"text": "2", "text": "Fig. 4.2Land-use-related CO2 emission and sequestration rates",
"verified": true, "verified": false,
"linkedPage": 82 "linkedPage": 82
}, },
{ {
@ -163,8 +163,8 @@
}, },
{ {
"level": 0, "level": 0,
"text": "erahsnoitarenegreoplabolgegareva", "text": "Fig. 5.5Development of the average global RES shares of future heat generation options in Industry in the 2.0 °C scenario",
"verified": true, "verified": false,
"linkedPage": 124 "linkedPage": 124
}, },
{ {
@ -175,8 +175,8 @@
}, },
{ {
"level": 0, "level": 0,
"text": "6.1", "text": "Fig. 6.1World final energy use by transport mode in 2015",
"verified": true, "verified": false,
"linkedPage": 133 "linkedPage": 133
}, },
{ {
@ -211,20 +211,20 @@
}, },
{ {
"level": 0, "level": 0,
"text": "The 2.0 °C Scenario", "text": "Fig. 6.7Battery and trolley electric bus share of total bus pkm in the 2.0 °C Scenario (left) and fuel-cell electric bus share of total bus pkm in the 2.0 °C Scenario (right)",
"verified": true, "verified": false,
"linkedPage": 138 "linkedPage": 138
}, },
{ {
"level": 0, "level": 0,
"text": "The 2.0 °C Scenario", "text": "Fig. 6.8Electrification of passenger rail (left) and freight rail (right) under the 2.0 °C Scenario (in PJ of final energy demand)",
"verified": true, "verified": false,
"linkedPage": 138 "linkedPage": 138
}, },
{ {
"level": 0, "level": 0,
"text": "0", "text": "Fig. 6.9Electricity-performed pkm in domestic aviation under the 2.0 °C Scenario",
"verified": true, "verified": false,
"linkedPage": 139 "linkedPage": 139
}, },
{ {
@ -313,8 +313,8 @@
}, },
{ {
"level": 0, "level": 0,
"text": "2.0°°C", "text": "Fig. 6.24World pkm development in the 2.0 °C Scenario",
"verified": true, "verified": false,
"linkedPage": 152 "linkedPage": 152
}, },
{ {
@ -325,26 +325,26 @@
}, },
{ {
"level": 0, "level": 0,
"text": "mm", "text": "Fig. 6.26World tkm development in all scenarios",
"verified": true, "verified": false,
"linkedPage": 154 "linkedPage": 154
}, },
{ {
"level": 0, "level": 0,
"text": "mm", "text": "Fig. 6.27Regional tkm development",
"verified": true, "verified": false,
"linkedPage": 154 "linkedPage": 154
}, },
{ {
"level": 0, "level": 0,
"text": "tkm", "text": "Fig. 6.28World tkm development in the 5.0 °C, 2.0 °C, and 1.5 °C Scenarios",
"verified": true, "verified": false,
"linkedPage": 156 "linkedPage": 156
}, },
{ {
"level": 0, "level": 0,
"text": "tkm", "text": "Fig. 6.29Road tkm in the 2.0 °C Scenario",
"verified": true, "verified": false,
"linkedPage": 156 "linkedPage": 156
}, },
{ {
@ -361,8 +361,8 @@
}, },
{ {
"level": 0, "level": 0,
"text": "Plants", "text": "Fig. 7.1Electricity infrastructure in Africa—power plants (over 1 MW) and high-voltage transmission lines",
"verified": true, "verified": false,
"linkedPage": 166 "linkedPage": 166
}, },
{ {
@ -391,637 +391,637 @@
}, },
{ {
"level": 0, "level": 0,
"text": "8.1CCCFig. 8.1", "text": "Fig. 8.1 Global: projection of final energy (per $ GDP) intensity by scenario",
"verified": true, "verified": true,
"linkedPage": 176 "linkedPage": 176
}, },
{ {
"level": 0, "level": 0,
"text": "Fig. 8.2", "text": "Fig. 8.2 Global: projection of total final energy demand by sector in the scenarios (without non-",
"verified": true, "verified": true,
"linkedPage": 177 "linkedPage": 177
}, },
{ {
"level": 0, "level": 0,
"text": "Fig. 8.3", "text": "Fig. 8.3 Global: development of gross electricity demand by sector in the scenarios",
"verified": true, "verified": true,
"linkedPage": 178 "linkedPage": 178
}, },
{ {
"level": 0, "level": 0,
"text": "Fig. 8.4", "text": "Fig. 8.4 Global: development of final energy demand for transport by mode in the scenarios",
"verified": true, "verified": true,
"linkedPage": 179 "linkedPage": 179
}, },
{ {
"level": 0, "level": 0,
"text": "Fig. 8.5", "text": "Fig. 8.5 Global: development of heat demand by sector in the scenarios",
"verified": true, "verified": true,
"linkedPage": 179 "linkedPage": 179
}, },
{ {
"level": 0, "level": 0,
"text": "0 0Fig. 8.6", "text": "Fig. 8.6 Global: development of the final energy demand by sector in the scenarios",
"verified": true, "verified": true,
"linkedPage": 180 "linkedPage": 180
}, },
{ {
"level": 0, "level": 0,
"text": "yFig. 8.7", "text": "Fig. 8.7 Global: development of electricity-generation structure in the scenarios",
"verified": true, "verified": true,
"linkedPage": 181 "linkedPage": 181
}, },
{ {
"level": 0, "level": 0,
"text": "Fig. 8.8", "text": "Fig. 8.8 Global: development of total electricity supply costs and specific electricity generation",
"verified": true, "verified": true,
"linkedPage": 182 "linkedPage": 182
}, },
{ {
"level": 0, "level": 0,
"text": "Fig. 8.9", "text": "Fig. 8.9 Global: investment shares for power generation in the scenarios",
"verified": true, "verified": true,
"linkedPage": 183 "linkedPage": 183
}, },
{ {
"level": 0, "level": 0,
"text": "0CCCCCCCCCCrdEl heatingr heatingsFig. 8.10", "text": "Fig. 8.10 Global: development of heat supply by energy carrier in the scenarios",
"verified": true, "verified": true,
"linkedPage": 184 "linkedPage": 184
}, },
{ {
"level": 0, "level": 0,
"text": "Fig. 8.11", "text": "Fig. 8.11 Global: development of investment in renewable heat-generation technologies in the",
"verified": true, "verified": true,
"linkedPage": 186 "linkedPage": 186
}, },
{ {
"level": 0, "level": 0,
"text": "2CCCCCCCCCCrNaral sFig. 8.12", "text": "Fig. 8.12 Global: final energy consumption by transport in the scenarios",
"verified": true, "verified": true,
"linkedPage": 187 "linkedPage": 187
}, },
{ {
"level": 0, "level": 0,
"text": "0 02015CO2SavingsFig. 8.13", "text": "Fig. 8.13 Global: development of CO 2 emissions by sector and cumulative CO 2 emissions (since",
"verified": true, "verified": true,
"linkedPage": 188 "linkedPage": 188
}, },
{ {
"level": 0, "level": 0,
"text": "Fig. 8.14", "text": "Fig. 8.14 Global: projection of total primary energy demand (PED) by energy carrier in the",
"verified": true, "verified": true,
"linkedPage": 189 "linkedPage": 189
}, },
{ {
"level": 0, "level": 0,
"text": "00Fig. 8.15", "text": "Fig. 8.15 Global: scenario of bunker fuel demand for aviation and navigation and the resulting",
"verified": true, "verified": true,
"linkedPage": 190 "linkedPage": 190
}, },
{ {
"level": 0, "level": 0,
"text": "Fig. 8.16", "text": "Fig. 8.16 Development of maximum load in 10 world regions in 2020, 2030, and 2050 in the",
"verified": true, "verified": true,
"linkedPage": 202 "linkedPage": 202
}, },
{ {
"level": 0, "level": 0,
"text": "rFig. 8.17", "text": "Fig. 8.17 OECD North America: development of final energy demand by sector in the scenarios",
"verified": true, "verified": true,
"linkedPage": 210 "linkedPage": 210
}, },
{ {
"level": 0, "level": 0,
"text": "Fig. 8.18", "text": "Fig. 8.18 OECD North America: development of electricity-generation structure in the scenarios",
"verified": true, "verified": true,
"linkedPage": 212 "linkedPage": 212
}, },
{ {
"level": 0, "level": 0,
"text": "Fig. 8.19", "text": "Fig. 8.19 OECD North America: development of total electricity supply costs and specific",
"verified": true, "verified": true,
"linkedPage": 213 "linkedPage": 213
}, },
{ {
"level": 0, "level": 0,
"text": "Fig. 8.20", "text": "Fig. 8.20 OECD North America: investment shares for power generation in the scenarios",
"verified": true, "verified": true,
"linkedPage": 214 "linkedPage": 214
}, },
{ {
"level": 0, "level": 0,
"text": "dFig. 8.21", "text": "Fig. 8.21 OECD North America: development of heat supply by energy carrier in the scenarios",
"verified": true, "verified": true,
"linkedPage": 215 "linkedPage": 215
}, },
{ {
"level": 0, "level": 0,
"text": "Fig. 8.22", "text": "Fig. 8.22 OECD North America: development of investments in renewable heat generation tech -",
"verified": true, "verified": true,
"linkedPage": 216 "linkedPage": 216
}, },
{ {
"level": 0, "level": 0,
"text": "2Fig. 8.23", "text": "Fig. 8.23 OECD North America: final energy consumption by transport in the scenarios",
"verified": true, "verified": true,
"linkedPage": 218 "linkedPage": 218
}, },
{ {
"level": 0, "level": 0,
"text": "00150200000000000CCCCCCCCCC2015CO2 SavingsFig. 8.24", "text": "Fig. 8.24OECD North America: development of CO2 emissions by sector and cumulative CO2 emissions (after 2015) in the scenarios (Savings = reduction compared with the 5.0 °C Scenario)",
"verified": true, "verified": false,
"linkedPage": 219 "linkedPage": 219
}, },
{ {
"level": 0, "level": 0,
"text": "0Fig. 8.25", "text": "Fig. 8.25 OECD North America: projection of total primary energy demand (PED) by energy",
"verified": true, "verified": true,
"linkedPage": 220 "linkedPage": 220
}, },
{ {
"level": 0, "level": 0,
"text": "CCCCCCCCCCryFig. 8.26", "text": "Fig. 8.26 Latin America: development of final energy demand by sector in the scenarios",
"verified": true, "verified": true,
"linkedPage": 231 "linkedPage": 231
}, },
{ {
"level": 0, "level": 0,
"text": "Fig. 8.27", "text": "Fig. 8.27 Latin America: development of electricity-generation structure in the scenarios",
"verified": true, "verified": true,
"linkedPage": 232 "linkedPage": 232
}, },
{ {
"level": 0, "level": 0,
"text": "238cton Fig. 8.28", "text": "Fig. 8.28 Latin America: development of total electricity supply costs and specific electricity-",
"verified": true, "verified": true,
"linkedPage": 233 "linkedPage": 233
}, },
{ {
"level": 0, "level": 0,
"text": "Fig. 8.29", "text": "Fig. 8.29 Latin America: investment shares for power generation in the scenarios",
"verified": true, "verified": true,
"linkedPage": 235 "linkedPage": 235
}, },
{ {
"level": 0, "level": 0,
"text": "00000000CCCCCCCCCC0rdElicheatinglar heatingsFig. 8.30", "text": "Fig. 8.30 Latin America: development of heat supply by energy carrier in the scenarios",
"verified": true, "verified": true,
"linkedPage": 236 "linkedPage": 236
}, },
{ {
"level": 0, "level": 0,
"text": "Fig. 8.31", "text": "Fig. 8.31 Latin America: development of investments for renewable heat generation technologies",
"verified": true, "verified": true,
"linkedPage": 237 "linkedPage": 237
}, },
{ {
"level": 0, "level": 0,
"text": "rFig. 8.32", "text": "Fig. 8.32 Latin America: final energy consumption by transport in the scenarios",
"verified": true, "verified": true,
"linkedPage": 239 "linkedPage": 239
}, },
{ {
"level": 0, "level": 0,
"text": "0204002015cumulated emissions COemi2 ssions SavingsFig. 8.33", "text": "Fig. 8.33 Latin America: development of CO 2 emissions by sector and cumulative CO 2 emissions",
"verified": true, "verified": true,
"linkedPage": 240 "linkedPage": 240
}, },
{ {
"level": 0, "level": 0,
"text": "Fig. 8.34", "text": "Fig. 8.34 Latin America: projection of total primary energy demand (PED) by energy carrier in",
"verified": true, "verified": true,
"linkedPage": 241 "linkedPage": 241
}, },
{ {
"level": 0, "level": 0,
"text": "CCCCCCCCCCrssFig. 8.35", "text": "Fig. 8.35OECD Europe: development in the scenarios",
"verified": true, "verified": false,
"linkedPage": 251 "linkedPage": 251
}, },
{ {
"level": 0, "level": 0,
"text": "Fig. 8.36268", "text": "Fig. 8.36 OECD Europe: development of electricity-generation structure in the scenarios",
"verified": true, "verified": true,
"linkedPage": 253 "linkedPage": 253
}, },
{ {
"level": 0, "level": 0,
"text": "28Fig. 8.37", "text": "Fig. 8.37 OECD Europe: development of total electricity supply costs and specific electricity-",
"verified": true, "verified": true,
"linkedPage": 253 "linkedPage": 253
}, },
{ {
"level": 0, "level": 0,
"text": "Fig. 8.38", "text": "Fig. 8.38 OECD Europe: investment shares for power generation in the scenarios",
"verified": true, "verified": true,
"linkedPage": 255 "linkedPage": 255
}, },
{ {
"level": 0, "level": 0,
"text": "CCCCCCCCCCggsFig. 8.39", "text": "Fig. 8.39 OECD Europe: development of heat supply by energy carrier in the scenarios",
"verified": true, "verified": true,
"linkedPage": 256 "linkedPage": 256
}, },
{ {
"level": 0, "level": 0,
"text": "Fig. 8.40", "text": "Fig. 8.40 OECD Europe: development of investments for renewable heat-generation technologies",
"verified": true, "verified": true,
"linkedPage": 257 "linkedPage": 257
}, },
{ {
"level": 0, "level": 0,
"text": "CCCCCCCCCCsFig. 8.41", "text": "Fig. 8.41 OECD Europe: final energy consumption by transport in the scenarios",
"verified": true, "verified": true,
"linkedPage": 259 "linkedPage": 259
}, },
{ {
"level": 0, "level": 0,
"text": "02060 00000000CCCCCCCCCC20150emissions COemissions 2 SavingsCCFig. 8.42", "text": "Fig. 8.42 OECD Europe: development of CO 2 emissions by sector and cumulative CO 2 emissions",
"verified": true, "verified": true,
"linkedPage": 260 "linkedPage": 260
}, },
{ {
"level": 0, "level": 0,
"text": "CCCCCCCCCCdsrFig. 8.43", "text": "Fig. 8.43 OECD Europe: projection of total primary energy demand (PED) by energy carrier in",
"verified": true, "verified": true,
"linkedPage": 261 "linkedPage": 261
}, },
{ {
"level": 0, "level": 0,
"text": "AfricaCCCCCCCCCCyFig. 8.44", "text": "Fig. 8.44 Africa: development of final energy demand by sector in the scenarios",
"verified": true, "verified": true,
"linkedPage": 269 "linkedPage": 269
}, },
{ {
"level": 0, "level": 0,
"text": "CCCCCCCCCCPolFig. 8.45", "text": "Fig. 8.45 Africa: development of electricity-generation structure in the scenarios",
"verified": true, "verified": true,
"linkedPage": 271 "linkedPage": 271
}, },
{ {
"level": 0, "level": 0,
"text": "Fig. 8.46", "text": "Fig. 8.46 Africa: development of total electricity supply costs and specific electricity-generation",
"verified": true, "verified": true,
"linkedPage": 272 "linkedPage": 272
}, },
{ {
"level": 0, "level": 0,
"text": "CCCCCCCCCCgsgsFig. 8.47", "text": "Fig. 8.47 Africa: investment shares for power generation in the scenarios",
"verified": true, "verified": true,
"linkedPage": 274 "linkedPage": 274
}, },
{ {
"level": 0, "level": 0,
"text": "CCCCCCCCCCgsgsFig. 8.48", "text": "Fig. 8.48 Africa: development of heat supply by energy carrier in the scenarios",
"verified": true, "verified": true,
"linkedPage": 274 "linkedPage": 274
}, },
{ {
"level": 0, "level": 0,
"text": "Fig. 8.49", "text": "Fig. 8.49 Africa: development of investments for renewable heat-generation technologies in the",
"verified": true, "verified": true,
"linkedPage": 276 "linkedPage": 276
}, },
{ {
"level": 0, "level": 0,
"text": "0000000CCCCCCCCCC0nsFig. 8.50", "text": "Fig. 8.50 Africa: final energy consumption by transport in the scenarios",
"verified": true, "verified": true,
"linkedPage": 278 "linkedPage": 278
}, },
{ {
"level": 0, "level": 0,
"text": "020 0CCCCCCCCCC2010emissions COemissions 2 SavingsCFig. 8.51 00CCCCCCCCCC20150s", "text": "Fig. 8.51 Africa: development of CO 2 emissions by sector and cumulative CO 2 emissions (after",
"verified": true, "verified": true,
"linkedPage": 279 "linkedPage": 279
}, },
{ {
"level": 0, "level": 0,
"text": "CCCCCCCCCC522 sCCCCCCCCCCCsFig. 8.52", "text": "Fig. 8.52 Africa: projection of total primary energy demand (PED) by energy carrier in the sce -",
"verified": true, "verified": true,
"linkedPage": 279 "linkedPage": 279
}, },
{ {
"level": 0, "level": 0,
"text": "CCCCCCCCCCsTyFig. 8.53", "text": "Fig. 8.53 Middle East: development of the final energy demand by sector in the scenarios",
"verified": true, "verified": true,
"linkedPage": 287 "linkedPage": 287
}, },
{ {
"level": 0, "level": 0,
"text": "CCCCCCCCCCPsolFig. 8.54", "text": "Fig. 8.54 Middle East: development of electricity-generation structure in the scenarios",
"verified": true, "verified": true,
"linkedPage": 289 "linkedPage": 289
}, },
{ {
"level": 0, "level": 0,
"text": "Fig. 8.55", "text": "Fig. 8.55 Middle East: development of total electricity supply costs and specific electricity-",
"verified": true, "verified": true,
"linkedPage": 290 "linkedPage": 290
}, },
{ {
"level": 0, "level": 0,
"text": "CCCCCCCCCCsslFig. 8.56", "text": "Fig. 8.56 Middle East: investment shares for power generation in the scenarios",
"verified": true, "verified": true,
"linkedPage": 292 "linkedPage": 292
}, },
{ {
"level": 0, "level": 0,
"text": "CCCCCCCCCCysslFig. 8.57", "text": "Fig. 8.57 Middle East: development of heat supply by energy carrier in the scenarios",
"verified": true, "verified": true,
"linkedPage": 292 "linkedPage": 292
}, },
{ {
"level": 0, "level": 0,
"text": "Fig. 8.58", "text": "Fig. 8.58 Middle East: development of investments for renewable heat-generation technologies in",
"verified": true, "verified": true,
"linkedPage": 294 "linkedPage": 294
}, },
{ {
"level": 0, "level": 0,
"text": "2CCCCCCCCCCsFig. 8.59", "text": "Fig. 8.59 Middle East: final energy consumption by transport in the scenarios",
"verified": true, "verified": true,
"linkedPage": 296 "linkedPage": 296
}, },
{ {
"level": 0, "level": 0,
"text": "02060 0CCCCCCCCCC2010emissions COemissions 2 SavingsCCFig. 8.60000000CCCCCCCCCC20150sr", "text": "Fig. 8.60 Middle East: development of CO 2 emissions by sector and cumulative CO 2 emissions",
"verified": true, "verified": true,
"linkedPage": 297 "linkedPage": 297
}, },
{ {
"level": 0, "level": 0,
"text": "CCCCCCCCCC2 CCCCCCCCCCCCsrFig. 8.61", "text": "Fig. 8.61 Middle East: projection of total primary energy demand (PED) by energy carrier in the",
"verified": true, "verified": true,
"linkedPage": 297 "linkedPage": 297
}, },
{ {
"level": 0, "level": 0,
"text": "Eastern Europe/Eurasia 0 00TFig. 8.62", "text": "Fig. 8.62 Eastern Europe/Eurasia: development of the final energy demand by sector in the",
"verified": true, "verified": true,
"linkedPage": 306 "linkedPage": 306
}, },
{ {
"level": 0, "level": 0,
"text": "0000000CCCCCCCCCC0rPsorleFig. 8.63", "text": "Fig. 8.63 Eastern Europe/Eurasia: development of electricity-generation structure in the",
"verified": true, "verified": true,
"linkedPage": 309 "linkedPage": 309
}, },
{ {
"level": 0, "level": 0,
"text": "0000000CCCCCCCCCC0rPsorleFig. 8.64", "text": "Fig. 8.64 Eastern Europe/Eurasia: development of total electricity supply costs and specific",
"verified": true, "verified": true,
"linkedPage": 309 "linkedPage": 309
}, },
{ {
"level": 0, "level": 0,
"text": "Fig. 8.65", "text": "Fig. 8.65 Eastern Europe/Eurasia: investment shares for power generation in the scenarios",
"verified": true, "verified": true,
"linkedPage": 311 "linkedPage": 311
}, },
{ {
"level": 0, "level": 0,
"text": "CCCCCCCCCCnsgsFig. 8.66", "text": "Fig. 8.66 Eastern Europe/Eurasia: development of heat supply by energy carrier in the scenarios",
"verified": true, "verified": true,
"linkedPage": 312 "linkedPage": 312
}, },
{ {
"level": 0, "level": 0,
"text": "Fig. 8.67", "text": "Fig. 8.67 Eastern Europe/Eurasia: development of investments for renewable heat-generation",
"verified": true, "verified": true,
"linkedPage": 314 "linkedPage": 314
}, },
{ {
"level": 0, "level": 0,
"text": "CCCCCCCCCCysFig. 8.68", "text": "Fig. 8.68 Eastern Europe/Eurasia: final energy consumption by transport in the scenarios",
"verified": true, "verified": true,
"linkedPage": 315 "linkedPage": 315
}, },
{ {
"level": 0, "level": 0,
"text": "020 000000CCCCCCCCCC20150emissions COemissions 2 SavingsCCFig. 8.69", "text": "List of FiguresxlviiiFig. 8.69Eastern Europe/Eurasia: development of CO2 emissions by sector and cumulative CO2 emissions (after 2015) in the scenarios (Savings = reduction compared with the 5.0 °C Scenario)",
"verified": true, "verified": false,
"linkedPage": 316 "linkedPage": 316
}, },
{ {
"level": 0, "level": 0,
"text": "0CCCCCCCCCC0dsrFig. 8.70Scenario", "text": "Fig. 8.70 Eastern Europe/Eurasia: projection of total primary energy demand (PED) by energy",
"verified": true, "verified": true,
"linkedPage": 317 "linkedPage": 317
}, },
{ {
"level": 0, "level": 0,
"text": "CCCCCCCCCCrsIyyFig. 8.71Non-OECD Asia", "text": "Fig. 8.71 Non-OECD Asia: development of the final energy demand by sector in the scenarios",
"verified": true, "verified": true,
"linkedPage": 325 "linkedPage": 325
}, },
{ {
"level": 0, "level": 0,
"text": "yeFig. 8.72", "text": "Fig. 8.72 Non-OECD Asia: development of electricity-generation structure in the scenarios",
"verified": true, "verified": true,
"linkedPage": 327 "linkedPage": 327
}, },
{ {
"level": 0, "level": 0,
"text": "Fig. 8.73", "text": "Fig. 8.73 Non-OECD Asia: development of total electricity supply costs and specific electricity",
"verified": true, "verified": true,
"linkedPage": 328 "linkedPage": 328
}, },
{ {
"level": 0, "level": 0,
"text": "Fig. 8.74", "text": "Fig. 8.74 Non-OECD Asia: investment shares for power generation in the scenarios",
"verified": true, "verified": true,
"linkedPage": 329 "linkedPage": 329
}, },
{ {
"level": 0, "level": 0,
"text": "00000CCCCCCCCCC0ngsslFig. 8.75", "text": "Fig. 8.75 Non-OECD Asia: development of heat supply by energy carrier in the scenarios",
"verified": true, "verified": true,
"linkedPage": 330 "linkedPage": 330
}, },
{ {
"level": 0, "level": 0,
"text": "Fig. 8.76", "text": "Fig. 8.76 Non-OECD Asia: development of investments for renewable heat-generation technolo -",
"verified": true, "verified": true,
"linkedPage": 332 "linkedPage": 332
}, },
{ {
"level": 0, "level": 0,
"text": "CCCCCCCCCCsFig. 8.77", "text": "Fig. 8.77 Non-OECD Asia: final energy consumption by transport in the scenarios",
"verified": true, "verified": true,
"linkedPage": 333 "linkedPage": 333
}, },
{ {
"level": 0, "level": 0,
"text": "2 Emissions020 0000000CCCCCCCCCC2010emissions COemissions 2 SavingsCCFig. 8.78", "text": "Fig. 8.78 Non-OECD Asia: development of CO 2 emissions by sector and cumulative CO 2 emis -",
"verified": true, "verified": true,
"linkedPage": 334 "linkedPage": 334
}, },
{ {
"level": 0, "level": 0,
"text": "CCCCCCCCCCsFig. 8.79", "text": "Fig. 8.79 Non-OECD Asia: projection of total primary energy demand (PED) by energy carrier in",
"verified": true, "verified": true,
"linkedPage": 335 "linkedPage": 335
}, },
{ {
"level": 0, "level": 0,
"text": "India 0000000000 000000000CCCCCCCCCC0y 0Fig. 8.80", "text": "Fig. 8.80 India: development of final energy demand by sector in the scenarios",
"verified": true, "verified": true,
"linkedPage": 345 "linkedPage": 345
}, },
{ {
"level": 0, "level": 0,
"text": "eFig. 8.81", "text": "Fig. 8.81 India: development of electricity-generation structure in the scenarios",
"verified": true, "verified": true,
"linkedPage": 347 "linkedPage": 347
}, },
{ {
"level": 0, "level": 0,
"text": "Fig. 8.82", "text": "Fig. 8.82 India: development of total electricity supply costs and specific electricity generation",
"verified": true, "verified": true,
"linkedPage": 348 "linkedPage": 348
}, },
{ {
"level": 0, "level": 0,
"text": "Fig. 8.83", "text": "Fig. 8.83 India: investment shares for power generation in the scenarios",
"verified": true, "verified": true,
"linkedPage": 349 "linkedPage": 349
}, },
{ {
"level": 0, "level": 0,
"text": "00CCCCCCCCCC0gsgsFig. 8.84", "text": "Fig. 8.84 India: development of heat supply by energy carrier in the scenarios",
"verified": true, "verified": true,
"linkedPage": 350 "linkedPage": 350
}, },
{ {
"level": 0, "level": 0,
"text": "2Fig. 8.85", "text": "Fig. 8.85 India: development of investments for renewable heat-generation technologies in the",
"verified": true, "verified": true,
"linkedPage": 352 "linkedPage": 352
}, },
{ {
"level": 0, "level": 0,
"text": "Fig. 8.86", "text": "Fig. 8.86 India: final energy consumption by transport in the scenarios",
"verified": true, "verified": true,
"linkedPage": 353 "linkedPage": 353
}, },
{ {
"level": 0, "level": 0,
"text": "020 02015CO2SavingsFig. 8.87", "text": "Fig. 8.87 India: development of CO 2 emissions by sector and cumulative CO 2 emissions (after",
"verified": true, "verified": true,
"linkedPage": 354 "linkedPage": 354
}, },
{ {
"level": 0, "level": 0,
"text": "CCCCCCCCCCsrFig. 8.88", "text": "Fig. 8.88 India: projection of total primary energy demand (PED) by energy carrier in the sce -",
"verified": true, "verified": true,
"linkedPage": 355 "linkedPage": 355
}, },
{ {
"level": 0, "level": 0,
"text": "ChinaFig. 8.89", "text": "Fig. 8.89 China: development of final energy demand by sector in the scenarios",
"verified": true, "verified": true,
"linkedPage": 361 "linkedPage": 361
}, },
{ {
"level": 0, "level": 0,
"text": "0lFig. 8.90", "text": "Fig. 8.90 China: development of electricity-generation structure in the scenarios",
"verified": true, "verified": true,
"linkedPage": 363 "linkedPage": 363
}, },
{ {
"level": 0, "level": 0,
"text": "Fig. 8.91", "text": "Fig. 8.91 China: development of total electricity supply costs and specific electricity-generation",
"verified": true, "verified": true,
"linkedPage": 364 "linkedPage": 364
}, },
{ {
"level": 0, "level": 0,
"text": "Fig. 8.92", "text": "Fig. 8.92 China: investment shares for power generation in the scenarios",
"verified": true, "verified": true,
"linkedPage": 366 "linkedPage": 366
}, },
{ {
"level": 0, "level": 0,
"text": "Fig. 8.93", "text": "Fig. 8.93 China: development of heat supply by energy carrier in the scenarios",
"verified": true, "verified": true,
"linkedPage": 366 "linkedPage": 366
}, },
{ {
"level": 0, "level": 0,
"text": "Fig. 8.94", "text": "Fig. 8.94 China: development of investments for renewable heat-generation technologies in the",
"verified": true, "verified": true,
"linkedPage": 369 "linkedPage": 369
}, },
{ {
"level": 0, "level": 0,
"text": "0Fig. 8.95", "text": "Fig. 8.95 China: final energy consumption by transport in the scenarios",
"verified": true, "verified": true,
"linkedPage": 370 "linkedPage": 370
}, },
{ {
"level": 0, "level": 0,
"text": "0 02015CO2 SavingsFig. 8.96 0000000CCCCCCCCCC2015sr", "text": "Fig. 8.96 China: development of CO 2 emissions by sector and cumulative CO 2 emissions (after",
"verified": true, "verified": true,
"linkedPage": 371 "linkedPage": 371
}, },
{ {
"level": 0, "level": 0,
"text": "CCCCCCCCCCsrFig. 8.97", "text": "Fig. 8.97 China: projection of total primary energy demand (PED) by energy carrier in the sce -",
"verified": true, "verified": true,
"linkedPage": 371 "linkedPage": 371
}, },
{ {
"level": 0, "level": 0,
"text": "OECD PacificCCCCCCCCCCsyyFig. 8.98", "text": "Fig. 8.98 OECD Pacific: development of final energy demand by sector in the scenarios",
"verified": true, "verified": true,
"linkedPage": 381 "linkedPage": 381
}, },
{ {
"level": 0, "level": 0,
"text": "CCCCCCCCCCrPolleFig. 8.99", "text": "Fig. 8.99 OECD Pacific: development of electricity-generation structure in the scenarios",
"verified": true, "verified": true,
"linkedPage": 383 "linkedPage": 383
}, },
{ {
"level": 0, "level": 0,
"text": "Fig. 8.100", "text": "Fig. 8.100 OECD Pacific: development of total electricity supply costs and specific electricity-",
"verified": true, "verified": true,
"linkedPage": 384 "linkedPage": 384
}, },
{ {
"level": 0, "level": 0,
"text": "Fig. 8.101", "text": "Fig. 8.101 OECD Pacific: investment shares for power generation in the scenarios",
"verified": true, "verified": true,
"linkedPage": 385 "linkedPage": 385
}, },
{ {
"level": 0, "level": 0,
"text": "0Fig. 8.102", "text": "Fig. 8.102 OECD Pacific: development of heat supply by energy carrier in the scenarios",
"verified": true, "verified": true,
"linkedPage": 386 "linkedPage": 386
}, },
{ {
"level": 0, "level": 0,
"text": "Fig. 8.103", "text": "Fig. 8.103 OECD Pacific: development of investments for renewable heat-generation technolo -",
"verified": true, "verified": true,
"linkedPage": 388 "linkedPage": 388
}, },
{ {
"level": 0, "level": 0,
"text": "00000000CCCCCCCCCCysFig. 8.104", "text": "Fig. 8.104 OECD Pacific: final energy consumption by transport in the scenarios",
"verified": true, "verified": true,
"linkedPage": 389 "linkedPage": 389
}, },
{ {
"level": 0, "level": 0,
"text": "2 Emissions01020 02015CO2 SavingsFig. 8.105", "text": "Fig. 8.105 OECD Pacific: development of CO 2 emissions by sector and cumulative CO 2 emis -",
"verified": true, "verified": true,
"linkedPage": 390 "linkedPage": 390
}, },
{ {
"level": 0, "level": 0,
"text": "00CCCCCCCCCCsrFig. 8.106", "text": "Fig. 8.106 OECD Pacific: projection of total primary energy demand (PED) by energy carrier in",
"verified": true, "verified": true,
"linkedPage": 391 "linkedPage": 391
}, },
@ -1051,8 +1051,8 @@
}, },
{ {
"level": 0, "level": 0,
"text": "9.5", "text": "Fig. 9.5Global gas production in 19702017 (BP 2018—Statistical Review)",
"verified": true, "verified": false,
"linkedPage": 408 "linkedPage": 408
}, },
{ {
@ -1087,8 +1087,8 @@
}, },
{ {
"level": 0, "level": 0,
"text": "......", "text": "Fig. 10.5Employment changes between 2015 and 2025 by occupational breakdown under the 2.0 °C Scenario",
"verified": true, "verified": false,
"linkedPage": 433 "linkedPage": 433
}, },
{ {

View File

@ -31,7 +31,7 @@
], ],
"globals": { "globals": {
"maxHeight": 66, "maxHeight": 66,
"mostUsedHeight": 8, "mostUsedHeight": 8.5,
"minX": 41.38153078000005, "minX": 41.38153078000005,
"maxX": 400.56930541, "maxX": 400.56930541,
"minY": 36.71720123, "minY": 36.71720123,

View File

@ -31,7 +31,7 @@
], ],
"globals": { "globals": {
"maxHeight": 66, "maxHeight": 66,
"mostUsedHeight": 8, "mostUsedHeight": 8.5,
"minX": 41.38153078000005, "minX": 41.38153078000005,
"maxX": 400.56930541, "maxX": 400.56930541,
"minY": 36.71720123, "minY": 36.71720123,

View File

@ -28,7 +28,7 @@
], ],
"globals": { "globals": {
"maxHeight": 59.7758, "maxHeight": 59.7758,
"mostUsedHeight": 10, "mostUsedHeight": 10.9091,
"minX": 117.8279999999999, "minX": 117.8279999999999,
"maxX": 471.0319307, "maxX": 471.0319307,
"minY": 95.28300000000016, "minY": 95.28300000000016,

View File

@ -32,7 +32,7 @@
], ],
"globals": { "globals": {
"maxHeight": 59.7758, "maxHeight": 59.7758,
"mostUsedHeight": 10, "mostUsedHeight": 10.9091,
"minX": 117.8279999999999, "minX": 117.8279999999999,
"maxX": 471.0319307, "maxX": 471.0319307,
"minY": 95.28300000000016, "minY": 95.28300000000016,

View File

@ -35,7 +35,7 @@
], ],
"globals": { "globals": {
"maxHeight": 59.7758, "maxHeight": 59.7758,
"mostUsedHeight": 10, "mostUsedHeight": 10.9091,
"minX": 117.8279999999999, "minX": 117.8279999999999,
"maxX": 471.0319307, "maxX": 471.0319307,
"minY": 95.28300000000016, "minY": 95.28300000000016,
@ -51,7 +51,7 @@
"entries": [ "entries": [
{ {
"level": 0, "level": 0,
"text": "A Scandal In BohemiaI", "text": "A Scandal In Bohemia",
"verified": true, "verified": true,
"linkedPage": 3 "linkedPage": 3
}, },
@ -81,7 +81,7 @@
}, },
{ {
"level": 0, "level": 0,
"text": "The Man With The Twisted LipI", "text": "The Man With The Twisted Lip",
"verified": true, "verified": true,
"linkedPage": 83 "linkedPage": 83
}, },
@ -93,31 +93,31 @@
}, },
{ {
"level": 0, "level": 0,
"text": "The Adventure Of The SpeckledBandO", "text": "The Adventure Of The Speckled Band",
"verified": true, "verified": true,
"linkedPage": 115 "linkedPage": 115
}, },
{ {
"level": 0, "level": 0,
"text": "The Adventure Of TheEngineers ThumbO", "text": "The Adventure Of The Engineers Thumb",
"verified": true, "verified": true,
"linkedPage": 133 "linkedPage": 133
}, },
{ {
"level": 0, "level": 0,
"text": "The Adventure Of The NobleBachelorT", "text": "The Adventure Of The Noble Bachelor",
"verified": true, "verified": true,
"linkedPage": 148 "linkedPage": 148
}, },
{ {
"level": 0, "level": 0,
"text": "The Adventure Of The BerylCoronetH", "text": "The Adventure Of The Beryl Coronet",
"verified": true, "verified": true,
"linkedPage": 164 "linkedPage": 164
}, },
{ {
"level": 0, "level": 0,
"text": "The Adventure Of The CopperBeechesT", "text": "The Adventure Of The Copper Beeches",
"verified": true, "verified": true,
"linkedPage": 182 "linkedPage": 182
} }

View File

@ -31,7 +31,7 @@
], ],
"globals": { "globals": {
"maxHeight": 59.7758, "maxHeight": 59.7758,
"mostUsedHeight": 10, "mostUsedHeight": 10.9091,
"minX": 117.8279999999999, "minX": 117.8279999999999,
"maxX": 471.0319307, "maxX": 471.0319307,
"minY": 95.28300000000016, "minY": 95.28300000000016,

View File

@ -31,7 +31,7 @@
], ],
"globals": { "globals": {
"maxHeight": 59.7758, "maxHeight": 59.7758,
"mostUsedHeight": 10, "mostUsedHeight": 10.9091,
"minX": 117.8279999999999, "minX": 117.8279999999999,
"maxX": 471.0319307, "maxX": 471.0319307,
"minY": 95.28300000000016, "minY": 95.28300000000016,

View File

@ -28,7 +28,7 @@
], ],
"globals": { "globals": {
"maxHeight": 24.787, "maxHeight": 24.787,
"mostUsedHeight": 11, "mostUsedHeight": 11.955,
"minX": 102.88399999999984, "minX": 102.88399999999984,
"maxX": 488.43800000000005, "maxX": 488.43800000000005,
"minY": 95.545, "minY": 95.545,

View File

@ -32,7 +32,7 @@
], ],
"globals": { "globals": {
"maxHeight": 24.787, "maxHeight": 24.787,
"mostUsedHeight": 11, "mostUsedHeight": 11.955,
"minX": 102.88399999999984, "minX": 102.88399999999984,
"maxX": 488.43800000000005, "maxX": 488.43800000000005,
"minY": 95.545, "minY": 95.545,

View File

@ -35,7 +35,7 @@
], ],
"globals": { "globals": {
"maxHeight": 24.787, "maxHeight": 24.787,
"mostUsedHeight": 11, "mostUsedHeight": 11.955,
"minX": 102.88399999999984, "minX": 102.88399999999984,
"maxX": 488.43800000000005, "maxX": 488.43800000000005,
"minY": 95.545, "minY": 95.545,
@ -51,8 +51,8 @@
"entries": [ "entries": [
{ {
"level": 0, "level": 0,
"text": "Poem", "text": "Poem. All in the golden afternoon",
"verified": true, "verified": false,
"linkedPage": 3 "linkedPage": 3
}, },
{ {

View File

@ -31,7 +31,7 @@
], ],
"globals": { "globals": {
"maxHeight": 24.787, "maxHeight": 24.787,
"mostUsedHeight": 11, "mostUsedHeight": 11.955,
"minX": 102.88399999999984, "minX": 102.88399999999984,
"maxX": 488.43800000000005, "maxX": 488.43800000000005,
"minY": 95.545, "minY": 95.545,

View File

@ -31,7 +31,7 @@
], ],
"globals": { "globals": {
"maxHeight": 24.787, "maxHeight": 24.787,
"mostUsedHeight": 11, "mostUsedHeight": 11.955,
"minX": 102.88399999999984, "minX": 102.88399999999984,
"maxX": 488.43800000000005, "maxX": 488.43800000000005,
"minY": 95.545, "minY": 95.545,

View File

@ -63,55 +63,55 @@
}, },
{ {
"level": 0, "level": 0,
"text": "1Was versteht man unter Open COntent?", "text": "Was versteht man unter Open COntent?",
"verified": true, "verified": true,
"linkedPage": 6 "linkedPage": 6
}, },
{ {
"level": 0, "level": 0,
"text": "2Warum Werden Inhalte unter eIneCC-lIzenz gestellt?", "text": "Warum Werden Inhalte unter eIne CC-lIzenz gestellt?",
"verified": true, "verified": true,
"linkedPage": 8 "linkedPage": 8
}, },
{ {
"level": 0, "level": 0,
"text": "3sChIedlIChe CC-lIzenzen?", "text": "Warum gIbt es unter- sChIedlIChe CC-lIzenzen?",
"verified": true, "verified": true,
"linkedPage": 9 "linkedPage": 9
}, },
{ {
"level": 0, "level": 0,
"text": "4WIe WIrkt sICh das nC-mOdul darauf aus, WIe Inhalte verbreItet Werden?", "text": "WIe WIrkt sICh das nC-mOdul darauf aus, WIe Inhalte verbreItet Werden?",
"verified": true, "verified": true,
"linkedPage": 10 "linkedPage": 10
}, },
{ {
"level": 0, "level": 0,
"text": "5Was Ist kOmmerzIell?", "text": "Was Ist kOmmerzIell?",
"verified": true, "verified": true,
"linkedPage": 11 "linkedPage": 11
}, },
{ {
"level": 0, "level": 0,
"text": "6kann eIne CC-lIzenz mIt nC-mOdul verhIndern, dass meIne Inhalte durCh reChtsradIkale Oder andere extremIsten genutzt Werden?", "text": "kann eIne CC-lIzenz mIt nC-mOdul verhIndern, dass meIne Inhalte durCh reChtsradIkale Oder andere extremIsten genutzt Werden?",
"verified": true, "verified": true,
"linkedPage": 12 "linkedPage": 12
}, },
{ {
"level": 0, "level": 0,
"text": "7ICh WIll, dass meIn Inhalt unter eIner CC-lIzenz freIzugänglICh bleIbt. Ist das lIChkeIt, eIner aneIgnung merzIelle unternehmen vOrzubeugen?", "text": "ICh WIll, dass meIn Inhalt unter eIner CC-lIzenz freI zugänglICh bleIbt. Ist das nC-mOdul dIe eInzIge mög- lIChkeIt, eIner aneIgnung vOn Inhalten durCh kOm- merzIelle unternehmen vOrzubeugen?",
"verified": true, "verified": true,
"linkedPage": 13 "linkedPage": 13
}, },
{ {
"level": 0, "level": 0,
"text": "8kann eIn CC-nC lIzenzIerter gestellt Werden?", "text": "kann eIn CC-nC lIzenzIerter Inhalt In dIe WIkIpedIa eIn- gestellt Werden?",
"verified": true, "verified": true,
"linkedPage": 14 "linkedPage": 14
}, },
{ {
"level": 0, "level": 0,
"text": "9kann man eInen nC-lIzenzIerten Inhalt kung gesOndert für WIkI pedIa freIgeben?", "text": "kann man eInen nC-lIzenzIerten Inhalt trOtz dIeser eInsChrän- kung gesOndert für WIkI pedIa freIgeben?",
"verified": true, "verified": true,
"linkedPage": 15 "linkedPage": 15
}, },
@ -123,7 +123,7 @@
}, },
{ {
"level": 0, "level": 0,
"text": "11bIn ICh bereIt, gegen eIne ner Inhalte vOrzugehen?", "text": "11 bIn ICh bereIt, gegen eIne kOmmerzIelle nutzung meI- ner Inhalte vOrzugehen?",
"verified": true, "verified": true,
"linkedPage": 16 "linkedPage": 16
}, },
@ -135,13 +135,13 @@
}, },
{ {
"level": 0, "level": 0,
"text": "13Inhalte In allen sChulen, sItäten genutzt Werden?", "text": "13 können nC-lIzenzIerte Inhalte In allen sChulen, berufssChulen und unIver- sItäten genutzt Werden?",
"verified": true, "verified": true,
"linkedPage": 17 "linkedPage": 17
}, },
{ {
"level": 0, "level": 0,
"text": "14WIe Ist es zu beWerten, te zunäChst In der sChule verWendet, dann aber auCh nutzt Werden sOllen?", "text": "14 WIe Ist es zu beWerten, Wenn nC-lIzenzIerte Inhal- te zunäChst In der sChule verWendet, dann aber auCh",
"verified": true, "verified": true,
"linkedPage": 17 "linkedPage": 17
}, },
@ -153,7 +153,7 @@
}, },
{ {
"level": 0, "level": 0,
"text": "16darf ICh als gema-mItglIed ter eIne CC-lIzenz mIt nC-mOdul stellen?", "text": "16 darf ICh als gema-mItglIed meIne musIk zumIndest un- ter eIne CC-lIzenz mIt nC- mOdul stellen?",
"verified": true, "verified": true,
"linkedPage": 19 "linkedPage": 19
}, },
@ -165,7 +165,7 @@
}, },
{ {
"level": 0, "level": 0,
"text": "18darf eIn nutzer vOn CC-lIzenzIerten Inhalten den eIndruCk erWeCken, der urheber Würde dIe lICh unterstützen?", "text": "18 darf eIn nutzer vOn CC-lIzenzIerten Inhalten den eIndruCk erWeCken, der urheber Würde dIe jeWeIlIge nutzung persön- lICh unterstützen?",
"verified": true, "verified": true,
"linkedPage": 20 "linkedPage": 20
}, },

View File

@ -28,7 +28,7 @@
], ],
"globals": { "globals": {
"maxHeight": 16.02, "maxHeight": 16.02,
"mostUsedHeight": 13, "mostUsedHeight": 13.02,
"minX": 25.86, "minX": 25.86,
"maxX": 535.44, "maxX": 535.44,
"minY": 38.1, "minY": 38.1,

View File

@ -32,7 +32,7 @@
], ],
"globals": { "globals": {
"maxHeight": 16.02, "maxHeight": 16.02,
"mostUsedHeight": 13, "mostUsedHeight": 13.02,
"minX": 25.86, "minX": 25.86,
"maxX": 535.44, "maxX": 535.44,
"minY": 38.1, "minY": 38.1,

View File

@ -35,7 +35,7 @@
], ],
"globals": { "globals": {
"maxHeight": 16.02, "maxHeight": 16.02,
"mostUsedHeight": 13, "mostUsedHeight": 13.02,
"minX": 25.86, "minX": 25.86,
"maxX": 535.44, "maxX": 535.44,
"minY": 38.1, "minY": 38.1,

View File

@ -31,7 +31,7 @@
], ],
"globals": { "globals": {
"maxHeight": 16.02, "maxHeight": 16.02,
"mostUsedHeight": 13, "mostUsedHeight": 13.02,
"minX": 25.86, "minX": 25.86,
"maxX": 535.44, "maxX": 535.44,
"minY": 38.1, "minY": 38.1,

View File

@ -31,7 +31,7 @@
], ],
"globals": { "globals": {
"maxHeight": 16.02, "maxHeight": 16.02,
"mostUsedHeight": 13, "mostUsedHeight": 13.02,
"minX": 25.86, "minX": 25.86,
"maxX": 535.44, "maxX": 535.44,
"minY": 38.1, "minY": 38.1,

View File

@ -28,7 +28,7 @@
], ],
"globals": { "globals": {
"maxHeight": 18, "maxHeight": 18,
"mostUsedHeight": 11, "mostUsedHeight": 11.04,
"minX": 72.024, "minX": 72.024,
"maxX": 534.58, "maxX": 534.58,
"minY": 63.144, "minY": 63.144,

View File

@ -32,7 +32,7 @@
], ],
"globals": { "globals": {
"maxHeight": 18, "maxHeight": 18,
"mostUsedHeight": 11, "mostUsedHeight": 11.04,
"minX": 72.024, "minX": 72.024,
"maxX": 534.58, "maxX": 534.58,
"minY": 63.144, "minY": 63.144,

View File

@ -35,7 +35,7 @@
], ],
"globals": { "globals": {
"maxHeight": 18, "maxHeight": 18,
"mostUsedHeight": 11, "mostUsedHeight": 11.04,
"minX": 72.024, "minX": 72.024,
"maxX": 534.58, "maxX": 534.58,
"minY": 63.144, "minY": 63.144,

View File

@ -31,7 +31,7 @@
], ],
"globals": { "globals": {
"maxHeight": 18, "maxHeight": 18,
"mostUsedHeight": 11, "mostUsedHeight": 11.04,
"minX": 72.024, "minX": 72.024,
"maxX": 534.58, "maxX": 534.58,
"minY": 63.144, "minY": 63.144,

View File

@ -31,7 +31,7 @@
], ],
"globals": { "globals": {
"maxHeight": 18, "maxHeight": 18,
"mostUsedHeight": 11, "mostUsedHeight": 11.04,
"minX": 72.024, "minX": 72.024,
"maxX": 534.58, "maxX": 534.58,
"minY": 63.144, "minY": 63.144,

View File

@ -28,7 +28,7 @@
], ],
"globals": { "globals": {
"maxHeight": 45.974399999999996, "maxHeight": 45.974399999999996,
"mostUsedHeight": 7, "mostUsedHeight": 7.7826039,
"minX": 26.29161, "minX": 26.29161,
"maxX": 273.69135, "maxX": 273.69135,
"minY": 15.08535, "minY": 15.08535,

View File

@ -32,7 +32,7 @@
], ],
"globals": { "globals": {
"maxHeight": 45.974399999999996, "maxHeight": 45.974399999999996,
"mostUsedHeight": 7, "mostUsedHeight": 7.7826039,
"minX": 26.29161, "minX": 26.29161,
"maxX": 273.69135, "maxX": 273.69135,
"minY": 15.08535, "minY": 15.08535,

View File

@ -35,7 +35,7 @@
], ],
"globals": { "globals": {
"maxHeight": 45.974399999999996, "maxHeight": 45.974399999999996,
"mostUsedHeight": 7, "mostUsedHeight": 7.7826039,
"minX": 26.29161, "minX": 26.29161,
"maxX": 273.69135, "maxX": 273.69135,
"minY": 15.08535, "minY": 15.08535,
@ -53,223 +53,223 @@
"entries": [ "entries": [
{ {
"level": 0, "level": 0,
"text": "THEOFOF", "text": "TheOccasionofthisDiscourse3",
"verified": true, "verified": false,
"linkedPage": 3 "linkedPage": 3
}, },
{ {
"level": 0, "level": 0,
"text": "MISTAKESABOUTT", "text": "MISTAKES ABOUT RELIGION.",
"verified": true, "verified": true,
"linkedPage": 4 "linkedPage": 4
}, },
{ {
"level": 0, "level": 0,
"text": "WHATRELIGION", "text": "WHAT RELIGION IS.",
"verified": true, "verified": true,
"linkedPage": 6 "linkedPage": 6
}, },
{ {
"level": 0, "level": 0,
"text": "AndTHEPERMANENCYANDOFTpermanencyandmanand", "text": "THE PERMANENCY AND STABILITY OF",
"verified": true, "verified": true,
"linkedPage": 7 "linkedPage": 7
}, },
{ {
"level": 0, "level": 0,
"text": "RELIGIONAandandAndandmanand", "text": "TheP'reedomandUnconstrainednessofReligion",
"verified": true, "verified": false,
"linkedPage": 13 "linkedPage": 13
}, },
{ {
"level": 0, "level": 0,
"text": "WHATTHENATURALThe", "text": "WHAT THE NATURAL LIFE IS.",
"verified": true, "verified": true,
"linkedPage": 14 "linkedPage": 14
}, },
{ {
"level": 0, "level": 0,
"text": "ofTHEDIFFERENTOFTHERAL", "text": "ThedifferentTendenciesoftheNaturalLife",
"verified": true, "verified": false,
"linkedPage": 15 "linkedPage": 15
}, },
{ {
"level": 0, "level": 0,
"text": "THEDOTH", "text": "WhereintheDivineLifedothconsist20",
"verified": true, "verified": false,
"linkedPage": 20 "linkedPage": 20
}, },
{ {
"level": 0, "level": 0,
"text": "RELIGIONBETTERUNDERSTOODBYACTIONSTHANBYby", "text": "ReligionbetterunderstoodbyActionsthanbyWords24",
"verified": true, "verified": false,
"linkedPage": 24 "linkedPage": 24
}, },
{ {
"level": 0, "level": 0,
"text": "LOVEEXEMPLIFIEDOUR", "text": "DivineLoveexemplifiedinourSaviour26",
"verified": true, "verified": false,
"linkedPage": 26 "linkedPage": 26
}, },
{ {
"level": 0, "level": 0,
"text": "IOURCONSTANTA", "text": "OUR SAVIOUR'S CONSTANT DEVOTION.",
"verified": true, "verified": true,
"linkedPage": 28 "linkedPage": 28
}, },
{ {
"level": 0, "level": 0,
"text": "OURCHARITYTO", "text": "OUR SAVIOUR'S CHARITY TO MEN.",
"verified": true, "verified": true,
"linkedPage": 29 "linkedPage": 29
}, },
{ {
"level": 0, "level": 0,
"text": "TOUR", "text": "OUR SAVIOUR'S PURITY.",
"verified": true, "verified": true,
"linkedPage": 31 "linkedPage": 31
}, },
{ {
"level": 0, "level": 0,
"text": "andandTHEANDADVANTAGEOFAND", "text": "AOurPrayerSaviour'sHumility3437TheExcellencyandAdvantageofReligion",
"verified": true, "verified": false,
"linkedPage": 38 "linkedPage": 38
}, },
{ {
"level": 0, "level": 0,
"text": "TheLTHEEXCELLENCYOF", "text": "THE EXCELLENCY OF DIVINE LOVE.",
"verified": true, "verified": true,
"linkedPage": 39 "linkedPage": 39
}, },
{ {
"level": 0, "level": 0,
"text": "THEADVANTAGESOFThe", "text": "THE ADVANTAGES OF DIVINE LOVE.",
"verified": true, "verified": true,
"linkedPage": 44 "linkedPage": 44
}, },
{ {
"level": 0, "level": 0,
"text": "THEWORTHOFTHE", "text": "THE WORTH OF THE OBJECT.",
"verified": true, "verified": true,
"linkedPage": 45 "linkedPage": 45
}, },
{ {
"level": 0, "level": 0,
"text": "THECERTAINTYTOBELOVEDA", "text": "THE CERTAINTY TO BE BELOVED AGAIN.",
"verified": true, "verified": true,
"linkedPage": 46 "linkedPage": 46
}, },
{ {
"level": 0, "level": 0,
"text": "HeLoveTHEOFTHEBELOVED", "text": "ThePresenceoftheBelovedPerson48",
"verified": true, "verified": false,
"linkedPage": 48 "linkedPage": 48
}, },
{ {
"level": 0, "level": 0,
"text": "makesTHELOVEMAKESUSPARTAKEOFANmakes", "text": "THE DIVINE LOVE MAKES US PARTAKE OF AN INFINITE HAPPINESS.",
"verified": true, "verified": true,
"linkedPage": 49 "linkedPage": 49
}, },
{ {
"level": 0, "level": 0,
"text": "HETHATLOVETHGODSWEETNESSEVERYNeverI", "text": "HE THAT LOVETH GOD FINDS SWEETNESS IN EVERY DISPENSATION.",
"verified": true, "verified": true,
"linkedPage": 51 "linkedPage": 51
}, },
{ {
"level": 0, "level": 0,
"text": "himTHEDUTIESOFRELIGIONAREDELIGHTFULTOof", "text": "THE DUTIES OF RELIGION ARE DELIGHTFUL TO HIM.",
"verified": true, "verified": true,
"linkedPage": 52 "linkedPage": 52
}, },
{ {
"level": 0, "level": 0,
"text": "THEOFThe", "text": "TheExcellencyofCharity54",
"verified": true, "verified": false,
"linkedPage": 54 "linkedPage": 54
}, },
{ {
"level": 0, "level": 0,
"text": "THEPLEASURETHATATTENDSA", "text": "THE PLEASURE THAT ATTENDS CHARITY.",
"verified": true, "verified": true,
"linkedPage": 56 "linkedPage": 56
}, },
{ {
"level": 0, "level": 0,
"text": "THEEXCELLENCYOF", "text": "THE EXCELLENCY OF PURITY.",
"verified": true, "verified": true,
"linkedPage": 58 "linkedPage": 58
}, },
{ {
"level": 0, "level": 0,
"text": "THEDELIGHTAFFORDEDBYA", "text": "THE DELIGHT AFFORDED BY PURITY.",
"verified": true, "verified": true,
"linkedPage": 59 "linkedPage": 59
}, },
{ {
"level": 0, "level": 0,
"text": "THEEXCELLENCYOF", "text": "THE EXCELLENCY OF HUMILITY.",
"verified": true, "verified": true,
"linkedPage": 60 "linkedPage": 60
}, },
{ {
"level": 0, "level": 0,
"text": "THEPLEASUREANDSWEETNESSOFANHUMBLETEMPER.AandandandHeTheandandhumbleAnd", "text": "THE PLEASURE AND SWEETNESS OF AN HUMBLE TEMPER.",
"verified": true, "verified": true,
"linkedPage": 62 "linkedPage": 62
}, },
{ {
"level": 0, "level": 0,
"text": "A", "text": "A PRAYER.",
"verified": true, "verified": true,
"linkedPage": 65 "linkedPage": 65
}, },
{ {
"level": 0, "level": 0,
"text": "mememememeOOTHEDESPONDENTTHOUGHTSOFSOMELYAWAKENEDTOARIGHTSENSEOFT", "text": "THE DESPONDENT THOUGHTS OF SOME NEW- LY AWAKENED TO A RIGHT SENSE OF",
"verified": true, "verified": true,
"linkedPage": 66 "linkedPage": 66
}, },
{ {
"level": 0, "level": 0,
"text": "THEUNREASONABLENESSOFTHESE", "text": "THE UNREASONABLENESS OF THESE FEARS.",
"verified": true, "verified": true,
"linkedPage": 69 "linkedPage": 69
}, },
{ {
"level": 0, "level": 0,
"text": "weandTheAndandandAndweandMUSTDOWHATWEANDDEPENDONTHEASSISTANCEandand", "text": "ON THE DIVINE ASSISTANCE",
"verified": true, "verified": true,
"linkedPage": 74 "linkedPage": 74
}, },
{ {
"level": 0, "level": 0,
"text": "weWEMUSTSHUNALLMANNEROFwewewewewewe", "text": "WeWemustmustknowshunallwhatMannerThingsofareSinSinfulSo78",
"verified": true, "verified": false,
"linkedPage": 78 "linkedPage": 78
}, },
{ {
"level": 0, "level": 0,
"text": "weweweWEMUSTTHETEMPTATIONSOFBYTHETHEYWILLDRAWONweweweWewe", "text": "BY CONSIDERING THE EVILS THEY WILL DRAW ON US.",
"verified": true, "verified": true,
"linkedPage": 82 "linkedPage": 82
}, },
{ {
"level": 0, "level": 0,
"text": "weweTORESTRAINOURSELVESMANYLAWFULweweweweWemany", "text": "WeWemustmustkeepoftenaexamineConstantourWatchActionsoverOurselves..8789ItisfittorestrainOurselvesinManyLawfulThings",
"verified": true, "verified": false,
"linkedPage": 91 "linkedPage": 91
}, },
{ {
"level": 0, "level": 0,
"text": "MUSTTOPUTOURSELVESOUTOFLOVEWITHTHE", "text": "\\\\'emuststrivetoputOurselvesoutofLovewiththeWorld93",
"verified": true, "verified": false,
"linkedPage": 93 "linkedPage": 93
}, },
{ {
"level": 0, "level": 0,
"text": "WEMUSTDOTHOSEOUTWARDACTIONSTHATAREweweweweandwewe", "text": "WE MUST DO THOSE OUTWARD ACTIONS THAT",
"verified": true, "verified": true,
"linkedPage": 98 "linkedPage": 98
}, },
@ -281,67 +281,67 @@
}, },
{ {
"level": 0, "level": 0,
"text": "TOBEGETWEMUSTCONSIDERTHEOFTHE", "text": "TO BEGET DIVINE LOVE, WE MUST CONSIDER THE EXCELLENCY OF THE DIVINE NATURE.",
"verified": true, "verified": true,
"linkedPage": 104 "linkedPage": 104
}, },
{ {
"level": 0, "level": 0,
"text": "GodweweandandweWESHOULDMEDITATEONGOODNESSANDwewe", "text": "WE SHOULD MEDITATE ON GOD'S GOODNESS AND LOVE.",
"verified": true, "verified": true,
"linkedPage": 108 "linkedPage": 108
}, },
{ {
"level": 0, "level": 0,
"text": "TOBEGETCHARITYWEMUSTREMEMBERTHATALLMENARENEARLYRELATEDUNTOweGod", "text": "THAT ALL MEN ARE NEARLY RELATED UNTO GOD.",
"verified": true, "verified": true,
"linkedPage": 113 "linkedPage": 113
}, },
{ {
"level": 0, "level": 0,
"text": "GodTHATTHEYCARRYIMAGEUPONAimageuponthemimage", "text": "THAT THEY CARRY GOD'S IMAGE UPON THEM.",
"verified": true, "verified": true,
"linkedPage": 114 "linkedPage": 114
}, },
{ {
"level": 0, "level": 0,
"text": "TOBEGETWESHOULDCONSIDERTHEDIGNITYOFOURwewewe", "text": "TO BEGET PURITY, WE SHOULD CONSIDER THE DIGNITY OF OUR NATURE.",
"verified": true, "verified": true,
"linkedPage": 116 "linkedPage": 116
}, },
{ {
"level": 0, "level": 0,
"text": "WESHOULDMEDITATEOFTENONTHEJOYSOFHEAVEN.wewewewewe", "text": "WE SHOULD MEDITATE OFTEN ON THE JOYS OF HEAVEN.",
"verified": true, "verified": true,
"linkedPage": 117 "linkedPage": 117
}, },
{ {
"level": 0, "level": 0,
"text": "HUMILITYFROMTHECONSIDERATIONOFOUR", "text": "HUMILITY ARISES FROM THE CONSIDERATION OF OUR FAILINGS.",
"verified": true, "verified": true,
"linkedPage": 118 "linkedPage": 118
}, },
{ {
"level": 0, "level": 0,
"text": "THOUGHTSOFGODUSTHELOWESTTHOUGHTSOFOurwewewewe", "text": "THOUGHTS OF GOD GIVE US THE LOWEST THOUGHTS OF OURSELVES.",
"verified": true, "verified": true,
"linkedPage": 120 "linkedPage": 120
}, },
{ {
"level": 0, "level": 0,
"text": "PRAYER,ANOTHEROFANDTHEADVANTAGESOFMENTALandand", "text": "AND THE ADVANTAGES OF MENTAL PRAYER.",
"verified": true, "verified": true,
"linkedPage": 121 "linkedPage": 121
}, },
{ {
"level": 0, "level": 0,
"text": "RELIGIONTOBYTHESAMEMEANSBYWHICHBEGUN;ANDTHEUSEOFTHEHOLYTOWARDSwhichandsamemeanswhichwhichwhichand", "text": "ReligionistobeAdvancedbythesameMeansbywhichitisBegun;andtheUseoftheHolySacrainenttowardsit124",
"verified": true, "verified": false,
"linkedPage": 124 "linkedPage": 124
}, },
{ {
"level": 0, "level": 0,
"text": "AA", "text": "A PRAYER.",
"verified": true, "verified": true,
"linkedPage": 126 "linkedPage": 126
} }

View File

@ -31,7 +31,7 @@
], ],
"globals": { "globals": {
"maxHeight": 45.974399999999996, "maxHeight": 45.974399999999996,
"mostUsedHeight": 7, "mostUsedHeight": 7.7826039,
"minX": 26.29161, "minX": 26.29161,
"maxX": 273.69135, "maxX": 273.69135,
"minY": 15.08535, "minY": 15.08535,

View File

@ -31,7 +31,7 @@
], ],
"globals": { "globals": {
"maxHeight": 45.974399999999996, "maxHeight": 45.974399999999996,
"mostUsedHeight": 7, "mostUsedHeight": 7.7826039,
"minX": 26.29161, "minX": 26.29161,
"maxX": 273.69135, "maxX": 273.69135,
"minY": 15.08535, "minY": 15.08535,

View File

@ -28,7 +28,7 @@
], ],
"globals": { "globals": {
"maxHeight": 36, "maxHeight": 36,
"mostUsedHeight": 11, "mostUsedHeight": 11.04,
"minX": 53.88, "minX": 53.88,
"maxX": 797.38, "maxX": 797.38,
"minY": 23.04, "minY": 23.04,

View File

@ -32,7 +32,7 @@
], ],
"globals": { "globals": {
"maxHeight": 36, "maxHeight": 36,
"mostUsedHeight": 11, "mostUsedHeight": 11.04,
"minX": 53.88, "minX": 53.88,
"maxX": 797.38, "maxX": 797.38,
"minY": 23.04, "minY": 23.04,

View File

@ -35,7 +35,7 @@
], ],
"globals": { "globals": {
"maxHeight": 36, "maxHeight": 36,
"mostUsedHeight": 11, "mostUsedHeight": 11.04,
"minX": 53.88, "minX": 53.88,
"maxX": 797.38, "maxX": 797.38,
"minY": 23.04, "minY": 23.04,
@ -87,8 +87,8 @@
}, },
{ {
"level": 0, "level": 0,
"text": "P", "text": "How do you achieve it? (The six step improvement process)page",
"verified": true, "verified": false,
"linkedPage": 8 "linkedPage": 8
}, },
{ {

View File

@ -31,7 +31,7 @@
], ],
"globals": { "globals": {
"maxHeight": 36, "maxHeight": 36,
"mostUsedHeight": 11, "mostUsedHeight": 11.04,
"minX": 53.88, "minX": 53.88,
"maxX": 797.38, "maxX": 797.38,
"minY": 23.04, "minY": 23.04,

View File

@ -31,7 +31,7 @@
], ],
"globals": { "globals": {
"maxHeight": 36, "maxHeight": 36,
"mostUsedHeight": 11, "mostUsedHeight": 11.04,
"minX": 53.88, "minX": 53.88,
"maxX": 797.38, "maxX": 797.38,
"minY": 23.04, "minY": 23.04,

View File

@ -28,7 +28,7 @@
], ],
"globals": { "globals": {
"maxHeight": 28.799999999999997, "maxHeight": 28.799999999999997,
"mostUsedHeight": 14, "mostUsedHeight": 14.399999999999999,
"minX": 72, "minX": 72,
"maxX": 537.4124748000004, "maxX": 537.4124748000004,
"minY": 75.60000000000002, "minY": 75.60000000000002,

View File

@ -32,7 +32,7 @@
], ],
"globals": { "globals": {
"maxHeight": 28.799999999999997, "maxHeight": 28.799999999999997,
"mostUsedHeight": 14, "mostUsedHeight": 14.399999999999999,
"minX": 72, "minX": 72,
"maxX": 537.4124748000004, "maxX": 537.4124748000004,
"minY": 75.60000000000002, "minY": 75.60000000000002,

View File

@ -35,7 +35,7 @@
], ],
"globals": { "globals": {
"maxHeight": 28.799999999999997, "maxHeight": 28.799999999999997,
"mostUsedHeight": 14, "mostUsedHeight": 14.399999999999999,
"minX": 72, "minX": 72,
"maxX": 537.4124748000004, "maxX": 537.4124748000004,
"minY": 75.60000000000002, "minY": 75.60000000000002,

View File

@ -31,7 +31,7 @@
], ],
"globals": { "globals": {
"maxHeight": 28.799999999999997, "maxHeight": 28.799999999999997,
"mostUsedHeight": 14, "mostUsedHeight": 14.399999999999999,
"minX": 72, "minX": 72,
"maxX": 537.4124748000004, "maxX": 537.4124748000004,
"minY": 75.60000000000002, "minY": 75.60000000000002,

View File

@ -31,7 +31,7 @@
], ],
"globals": { "globals": {
"maxHeight": 28.799999999999997, "maxHeight": 28.799999999999997,
"mostUsedHeight": 14, "mostUsedHeight": 14.399999999999999,
"minX": 72, "minX": 72,
"maxX": 537.4124748000004, "maxX": 537.4124748000004,
"minY": 75.60000000000002, "minY": 75.60000000000002,

View File

@ -28,7 +28,7 @@
], ],
"globals": { "globals": {
"maxHeight": 36, "maxHeight": 36,
"mostUsedHeight": 11, "mostUsedHeight": 11.04,
"minX": 74.904, "minX": 74.904,
"maxX": 518.5, "maxX": 518.5,
"minY": 99.864, "minY": 99.864,

View File

@ -32,7 +32,7 @@
], ],
"globals": { "globals": {
"maxHeight": 36, "maxHeight": 36,
"mostUsedHeight": 11, "mostUsedHeight": 11.04,
"minX": 74.904, "minX": 74.904,
"maxX": 518.5, "maxX": 518.5,
"minY": 99.864, "minY": 99.864,

View File

@ -35,7 +35,7 @@
], ],
"globals": { "globals": {
"maxHeight": 36, "maxHeight": 36,
"mostUsedHeight": 11, "mostUsedHeight": 11.04,
"minX": 74.904, "minX": 74.904,
"maxX": 518.5, "maxX": 518.5,
"minY": 99.864, "minY": 99.864,

View File

@ -31,7 +31,7 @@
], ],
"globals": { "globals": {
"maxHeight": 36, "maxHeight": 36,
"mostUsedHeight": 11, "mostUsedHeight": 11.04,
"minX": 74.904, "minX": 74.904,
"maxX": 518.5, "maxX": 518.5,
"minY": 99.864, "minY": 99.864,

View File

@ -31,7 +31,7 @@
], ],
"globals": { "globals": {
"maxHeight": 36, "maxHeight": 36,
"mostUsedHeight": 11, "mostUsedHeight": 11.04,
"minX": 74.904, "minX": 74.904,
"maxX": 518.5, "maxX": 518.5,
"minY": 99.864, "minY": 99.864,

View File

@ -28,7 +28,7 @@
], ],
"globals": { "globals": {
"maxHeight": 22.5, "maxHeight": 22.5,
"mostUsedHeight": 11, "mostUsedHeight": 11.4,
"minX": 13.799999999999926, "minX": 13.799999999999926,
"maxX": 550.2000000000003, "maxX": 550.2000000000003,
"minY": 1.4400099999998357, "minY": 1.4400099999998357,

View File

@ -32,7 +32,7 @@
], ],
"globals": { "globals": {
"maxHeight": 22.5, "maxHeight": 22.5,
"mostUsedHeight": 11, "mostUsedHeight": 11.4,
"minX": 13.799999999999926, "minX": 13.799999999999926,
"maxX": 550.2000000000003, "maxX": 550.2000000000003,
"minY": 1.4400099999998357, "minY": 1.4400099999998357,

View File

@ -35,7 +35,7 @@
], ],
"globals": { "globals": {
"maxHeight": 22.5, "maxHeight": 22.5,
"mostUsedHeight": 11, "mostUsedHeight": 11.4,
"minX": 13.799999999999926, "minX": 13.799999999999926,
"maxX": 550.2000000000003, "maxX": 550.2000000000003,
"minY": 1.4400099999998357, "minY": 1.4400099999998357,

View File

@ -31,7 +31,7 @@
], ],
"globals": { "globals": {
"maxHeight": 22.5, "maxHeight": 22.5,
"mostUsedHeight": 11, "mostUsedHeight": 11.4,
"minX": 13.799999999999926, "minX": 13.799999999999926,
"maxX": 550.2000000000003, "maxX": 550.2000000000003,
"minY": 1.4400099999998357, "minY": 1.4400099999998357,

View File

@ -31,7 +31,7 @@
], ],
"globals": { "globals": {
"maxHeight": 22.5, "maxHeight": 22.5,
"mostUsedHeight": 11, "mostUsedHeight": 11.4,
"minX": 13.799999999999926, "minX": 13.799999999999926,
"maxX": 550.2000000000003, "maxX": 550.2000000000003,
"minY": 1.4400099999998357, "minY": 1.4400099999998357,

View File

@ -28,7 +28,7 @@
], ],
"globals": { "globals": {
"maxHeight": 24.7871, "maxHeight": 24.7871,
"mostUsedHeight": 9, "mostUsedHeight": 9.9626,
"minX": 35.99999999999977, "minX": 35.99999999999977,
"maxX": 1433.711, "maxX": 1433.711,
"minY": 39.59999999999997, "minY": 39.59999999999997,

View File

@ -32,7 +32,7 @@
], ],
"globals": { "globals": {
"maxHeight": 24.7871, "maxHeight": 24.7871,
"mostUsedHeight": 9, "mostUsedHeight": 9.9626,
"minX": 35.99999999999977, "minX": 35.99999999999977,
"maxX": 1433.711, "maxX": 1433.711,
"minY": 39.59999999999997, "minY": 39.59999999999997,

File diff suppressed because it is too large Load Diff

View File

@ -31,7 +31,7 @@
], ],
"globals": { "globals": {
"maxHeight": 24.7871, "maxHeight": 24.7871,
"mostUsedHeight": 9, "mostUsedHeight": 9.9626,
"minX": 35.99999999999977, "minX": 35.99999999999977,
"maxX": 1433.711, "maxX": 1433.711,
"minY": 39.59999999999997, "minY": 39.59999999999997,

View File

@ -31,7 +31,7 @@
], ],
"globals": { "globals": {
"maxHeight": 24.7871, "maxHeight": 24.7871,
"mostUsedHeight": 9, "mostUsedHeight": 9.9626,
"minX": 35.99999999999977, "minX": 35.99999999999977,
"maxX": 1433.711, "maxX": 1433.711,
"minY": 39.59999999999997, "minY": 39.59999999999997,

View File

@ -75,19 +75,19 @@
}, },
{ {
"level": 0, "level": 0,
"text": "Auswirkungen der Einbringung von Biochar in den Boden auf Ertrag und Qualität von Reb-und Obst-anlagen in SüdtirolLösch", "text": "Auswirkungen der Einbringung von Biochar in den Boden auf Ertrag und Qualität von Reb - und Obst - anlagen in Südtirol",
"verified": true, "verified": true,
"linkedPage": 95 "linkedPage": 95
}, },
{ {
"level": 0, "level": 0,
"text": "Anwendung von Biochar als Bodenverbesserungsmittel: Wirkungen auf den Stickstoffzyklus und die Trockenstresstoleranz beiim Topf angebauten Weinpflanzenanotelli", "text": "Anwendung von Biochar als B odenverbesserungs mittel: Wirkungen auf den Stickstoffzyklus und die Trockenstresstoleranz bei im Topf angebauten Weinpflanzen",
"verified": true, "verified": true,
"linkedPage": 143 "linkedPage": 143
}, },
{ {
"level": 0, "level": 0,
"text": "Wirkung des Zusatzes von Biochar zum Boden auf Treibhausgas-Emissionen und Kohlenstoffbestand----ch", "text": "Wirkung des Zusatzes von Biochar zum Boden auf Treibhausgas - Emissionen und Kohlenstoffbestand",
"verified": true, "verified": true,
"linkedPage": 173 "linkedPage": 173
}, },

View File

@ -35,7 +35,7 @@
], ],
"globals": { "globals": {
"maxHeight": 17.9328, "maxHeight": 17.9328,
"mostUsedHeight": 8, "mostUsedHeight": 8.9664,
"minX": 53.99990000000005, "minX": 53.99990000000005,
"maxX": 553.8755000000001, "maxX": 553.8755000000001,
"minY": 68.44329999999982, "minY": 68.44329999999982,

View File

@ -31,7 +31,7 @@
], ],
"globals": { "globals": {
"maxHeight": 17.9328, "maxHeight": 17.9328,
"mostUsedHeight": 8, "mostUsedHeight": 8.9664,
"minX": 53.99990000000005, "minX": 53.99990000000005,
"maxX": 553.8755000000001, "maxX": 553.8755000000001,
"minY": 68.44329999999982, "minY": 68.44329999999982,

View File

@ -35,7 +35,7 @@
], ],
"globals": { "globals": {
"maxHeight": 24.7871, "maxHeight": 24.7871,
"mostUsedHeight": 11, "mostUsedHeight": 11.9551,
"minX": 52.262, "minX": 52.262,
"maxX": 571.0594300000001, "maxX": 571.0594300000001,
"minY": 76.19790000000002, "minY": 76.19790000000002,
@ -401,7 +401,7 @@
}, },
{ {
"level": 0, "level": 0,
"text": "modity flows", "text": "9.6. A column generation technique for multicom- modity flows",
"verified": true, "verified": true,
"linkedPage": 168 "linkedPage": 168
}, },

View File

@ -31,7 +31,7 @@
], ],
"globals": { "globals": {
"maxHeight": 24.7871, "maxHeight": 24.7871,
"mostUsedHeight": 11, "mostUsedHeight": 11.9551,
"minX": 52.262, "minX": 52.262,
"maxX": 571.0594300000001, "maxX": 571.0594300000001,
"minY": 76.19790000000002, "minY": 76.19790000000002,

14
ui/package-lock.json generated
View File

@ -11,6 +11,7 @@
"dependencies": { "dependencies": {
"@fortawesome/free-solid-svg-icons": "5.15.2", "@fortawesome/free-solid-svg-icons": "5.15.2",
"pdfjs-dist": "2.6.347", "pdfjs-dist": "2.6.347",
"simple-statistics": "^7.7.0",
"string-similarity": "4.0.4", "string-similarity": "4.0.4",
"svelte-file-dropzone": "0.0.15", "svelte-file-dropzone": "0.0.15",
"uuid": "^8.3.2" "uuid": "^8.3.2"
@ -4657,6 +4658,14 @@
"integrity": "sha512-VUJ49FC8U1OxwZLxIbTTrDvLnf/6TDgxZcK8wxR8zs13xpx7xbG60ndBlhNrFi2EMuFRoeDoJO7wthSLq42EjA==", "integrity": "sha512-VUJ49FC8U1OxwZLxIbTTrDvLnf/6TDgxZcK8wxR8zs13xpx7xbG60ndBlhNrFi2EMuFRoeDoJO7wthSLq42EjA==",
"dev": true "dev": true
}, },
"node_modules/simple-statistics": {
"version": "7.7.0",
"resolved": "https://registry.npmjs.org/simple-statistics/-/simple-statistics-7.7.0.tgz",
"integrity": "sha512-TAsZRUJ7FD/yCnm5UBgyWU7bP1gOPsw9n/dVrE8hQ+BF1zJPgDJ5X/MOnxG+HE/7nejSpJLJLdmTh7bkfsFkRw==",
"engines": {
"node": "*"
}
},
"node_modules/simple-swizzle": { "node_modules/simple-swizzle": {
"version": "0.2.2", "version": "0.2.2",
"resolved": "https://registry.npmjs.org/simple-swizzle/-/simple-swizzle-0.2.2.tgz", "resolved": "https://registry.npmjs.org/simple-swizzle/-/simple-swizzle-0.2.2.tgz",
@ -9029,6 +9038,11 @@
"integrity": "sha512-VUJ49FC8U1OxwZLxIbTTrDvLnf/6TDgxZcK8wxR8zs13xpx7xbG60ndBlhNrFi2EMuFRoeDoJO7wthSLq42EjA==", "integrity": "sha512-VUJ49FC8U1OxwZLxIbTTrDvLnf/6TDgxZcK8wxR8zs13xpx7xbG60ndBlhNrFi2EMuFRoeDoJO7wthSLq42EjA==",
"dev": true "dev": true
}, },
"simple-statistics": {
"version": "7.7.0",
"resolved": "https://registry.npmjs.org/simple-statistics/-/simple-statistics-7.7.0.tgz",
"integrity": "sha512-TAsZRUJ7FD/yCnm5UBgyWU7bP1gOPsw9n/dVrE8hQ+BF1zJPgDJ5X/MOnxG+HE/7nejSpJLJLdmTh7bkfsFkRw=="
},
"simple-swizzle": { "simple-swizzle": {
"version": "0.2.2", "version": "0.2.2",
"resolved": "https://registry.npmjs.org/simple-swizzle/-/simple-swizzle-0.2.2.tgz", "resolved": "https://registry.npmjs.org/simple-swizzle/-/simple-swizzle-0.2.2.tgz",

View File

@ -22,6 +22,7 @@
"dependencies": { "dependencies": {
"@fortawesome/free-solid-svg-icons": "5.15.2", "@fortawesome/free-solid-svg-icons": "5.15.2",
"pdfjs-dist": "2.6.347", "pdfjs-dist": "2.6.347",
"simple-statistics": "^7.7.0",
"string-similarity": "4.0.4", "string-similarity": "4.0.4",
"svelte-file-dropzone": "0.0.15", "svelte-file-dropzone": "0.0.15",
"uuid": "^8.3.2" "uuid": "^8.3.2"