diff -Nru calligra-2.3.86/active/calligraactive.desktop calligra-2.3.87/active/calligraactive.desktop --- calligra-2.3.86/active/calligraactive.desktop 2012-01-07 03:25:00.000000000 +0000 +++ calligra-2.3.87/active/calligraactive.desktop 2012-01-28 07:04:47.000000000 +0000 @@ -3,15 +3,18 @@ Type=Application Name=Calligra Active Name[ca]=Calligra Actiu +Name[ca@valencia]=Calligra Actiu Name[cs]=Calligra Active Name[da]=Calligra Active +Name[el]=Calligra Active Name[es]=Calligra Active Name[et]=Calligra Active +Name[fi]=Calligra Active Name[hu]=Calligra Active Name[it]=Calligra Active Name[kk]=Calligra Active Name[nb]=Calligra Active -Name[nl]=Calligra-actief +Name[nl]=Calligra is actief Name[pl]=Calligra Aktywna Name[pt]=Calligra Active Name[pt_BR]=Calligra Active diff -Nru calligra-2.3.86/active/calligra_active_global.h.in calligra-2.3.87/active/calligra_active_global.h.in --- calligra-2.3.86/active/calligra_active_global.h.in 2012-01-07 03:25:00.000000000 +0000 +++ calligra-2.3.87/active/calligra_active_global.h.in 2012-01-28 07:04:47.000000000 +0000 @@ -1,5 +1,5 @@ /* This file is part of the KDE project - Copyright (C) 2011 Shantanu Tushar + Copyright (C) 2011 Shantanu Tushar This library is free software; you can redistribute it and/or modify it under the terms of the GNU Library General Public diff -Nru calligra-2.3.86/active/CMakeLists.txt calligra-2.3.87/active/CMakeLists.txt --- calligra-2.3.86/active/CMakeLists.txt 2012-01-07 03:25:00.000000000 +0000 +++ calligra-2.3.87/active/CMakeLists.txt 2012-01-28 07:04:47.000000000 +0000 @@ -2,6 +2,8 @@ project(calligra-active) find_package(Qt4 4.7.0 REQUIRED) +find_package(KDE4 REQUIRED) + add_definitions(${QT_DEFINITIONS} ${KDE4_DEFINITIONS}) include_directories(${QT_INCLUDES} ${KDE4_INCLUDES} @@ -21,9 +23,14 @@ configure_file(${CMAKE_CURRENT_SOURCE_DIR}/calligra_active_global.h.in ${CMAKE_CURRENT_BINARY_DIR}/calligra_active_global.h) set(calligra-active_SRCS + src/CAPresentationHandler.cpp + src/CASpreadsheetHandler.cpp + src/CATextDocumentHandler.cpp + src/CAAbstractDocumentHandler.cpp + src/CADocumentController.cpp src/CADocumentInfo.cpp - src/PAView.cpp - src/CanvasController.cpp + src/CAPAView.cpp + src/CACanvasController.cpp src/MainWindow.cpp main.cpp ${calligra-active_RCC_SRCS} @@ -36,6 +43,7 @@ target_link_libraries(calligraactive ${QT_QTDECLARATIVE_LIBRARY} ${QT_LIBRARIES} + kdeclarative komain wordsprivate calligratablescommon @@ -45,4 +53,3 @@ install(TARGETS calligraactive RUNTIME DESTINATION bin) install(FILES calligraactive.desktop DESTINATION share/applications) install(DIRECTORY qml DESTINATION share/calligraactive) -install(DIRECTORY templates DESTINATION share/calligraactive) diff -Nru calligra-2.3.86/active/main.cpp calligra-2.3.87/active/main.cpp --- calligra-2.3.86/active/main.cpp 2012-01-07 03:25:00.000000000 +0000 +++ calligra-2.3.87/active/main.cpp 2012-01-28 07:04:47.000000000 +0000 @@ -1,7 +1,7 @@ /* * This file is part of the KDE project * - * Copyright (C) 2011 Shantanu Tushar + * Copyright (C) 2011 Shantanu Tushar * * This program is free software; you can redistribute it and/or * modify it under the terms of the GNU General Public License as diff -Nru calligra-2.3.86/active/qml/AboutCalligraActive.qml calligra-2.3.87/active/qml/AboutCalligraActive.qml --- calligra-2.3.86/active/qml/AboutCalligraActive.qml 2012-01-07 03:25:00.000000000 +0000 +++ calligra-2.3.87/active/qml/AboutCalligraActive.qml 2012-01-28 07:04:47.000000000 +0000 @@ -1,6 +1,6 @@ /* * Copyright 2011 Sebastian Kügler - * Copyright 2011 Shantanu Tushar + * Copyright 2011 Shantanu Tushar * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU Library General Public License as @@ -22,6 +22,7 @@ import org.kde.plasma.graphicswidgets 0.1 as PlasmaWidgets import org.kde.plasma.core 0.1 as PlasmaCore import org.kde.plasma.graphicslayouts 4.7 as GraphicsLayouts +import org.kde.plasma.components 0.1 as PlasmaComponents Rectangle { PlasmaCore.Theme { @@ -30,10 +31,9 @@ color: "white" - Button { + PlasmaComponents.Button { id: back - drawBackground: false - imageSource: "qrc:///images/go-previous.png" + iconSource: "go-previous" anchors.left: parent.left anchors.top: parent.top height: 64 diff -Nru calligra-2.3.86/active/qml/Button.qml calligra-2.3.87/active/qml/Button.qml --- calligra-2.3.86/active/qml/Button.qml 2012-01-07 03:25:00.000000000 +0000 +++ calligra-2.3.87/active/qml/Button.qml 2012-01-28 07:04:47.000000000 +0000 @@ -1,7 +1,7 @@ /* * This file is part of the KDE project * - * Copyright (C) 2011 Shantanu Tushar + * Copyright (C) 2011 Shantanu Tushar * * This program is free software; you can redistribute it and/or * modify it under the terms of the GNU General Public License as diff -Nru calligra-2.3.86/active/qml/Doc.qml calligra-2.3.87/active/qml/Doc.qml --- calligra-2.3.86/active/qml/Doc.qml 2012-01-07 03:25:00.000000000 +0000 +++ calligra-2.3.87/active/qml/Doc.qml 2012-01-28 14:26:27.000000000 +0000 @@ -1,7 +1,7 @@ /* * This file is part of the KDE project * - * Copyright (C) 2011 Shantanu Tushar + * Copyright (C) 2011 Shantanu Tushar * * This program is free software; you can redistribute it and/or * modify it under the terms of the GNU General Public License as @@ -19,119 +19,61 @@ * 02110-1301 USA */ -import QtQuick 1.0 +import QtQuick 1.1 import CalligraActive 1.0 Item { id: docRootRect signal documentLoaded - property alias loadProgress: canvas.loadProgress - clip: true - function openDocument(path) { - canvas.openDocument(path); - } + clip: true - function initToolbar() { - if (canvas.documentType == CADocumentInfo.Spreadsheet) { - toolbarLoader.source = "SpreadsheetToolbar.qml"; - } else if (canvas.documentType == CADocumentInfo.TextDocument) { - toolbarLoader.source = "WordsToolbar.qml"; - } else if (canvas.documentType == CADocumentInfo.Presentation) { - toolbarLoader.source = "PresentationToolbar.qml"; + CADocumentController { + id: docDocumentController + canvasController: canvas + onDocumentOpened: { + docRootRect.documentLoaded(); + docToolbars.initToolbars(); } } -// function toggleEdit() { -// if (docFlickable.visible) { -// docFlickable.visible = false; -// canvas.z = 1 -// } else { -// docFlickable.visible = true; -// canvas.z = -1 -// } -// } - CanvasController { id: canvas - anchors.fill: parent - z: -1 cameraX: docFlickable.contentX cameraY: docFlickable.contentY - Component.onCompleted: documentLoaded.connect(initToolbar) - onDocumentLoaded: docRootRect.documentLoaded() - - //searchString: findToolbar.searchString - } - -// Button { -// id: editModeButton -// drawBackground: false -// imageSource: "qrc:///images/document-edit.png" -// anchors.left: parent.left -// anchors.bottom: parent.bottom -// height: 64 -// width: 64 -// z: 30 -// -// onClicked: toggleEdit(); -// } -// -// FindToolbar { -// id: findToolbar -// height: 32 -// -// anchors.left: parent.left -// anchors.right: parent.right -// anchors.bottom: parent.bottom -// } - - MouseArea { - id: flickableMouseArea - anchors.fill: parent - drag.filterChildren: true - Flickable { id: docFlickable - x: canvas.x; y: canvas.y; width: canvas.width; height: canvas.height; + anchors.fill: parent + z: 1 contentWidth: canvas.docWidth; contentHeight: canvas.docHeight; - } - Loader { - id: toolbarLoader - property bool containsMouse: false + MouseArea { + anchors.fill: parent + z: 1 - anchors.fill: parent - opacity: 0 + onClicked: docToolbars.toggle() + } } + } - Connections { - target: toolbarLoader.item - onContainsMouseChanged: toolbarLoader.containsMouse = toolbarLoader.item.containsMouse - } + Toolbars { + id: docToolbars + anchors.fill: parent + + documentController: docDocumentController + docRootItem: docRootRect } - states : [ - State { - name: "toolbarShown"; - when: (flickableMouseArea.pressed || toolbarLoader.containsMouse) && !docFlickable.moving - PropertyChanges { target: toolbarLoader; opacity: 1 } - } - ] + function openDocument(path) { + docDocumentController.documentUri = path; + docDocumentController.loadDocument(); + } - transitions : [ - Transition { - from: "toolbarShown" - SequentialAnimation { - PauseAnimation { duration: 2000 } - NumberAnimation { - target: toolbarLoader; properties: "opacity"; duration: 3000 - } - } - } - ] + function toggleEditing() { + docFlickable.visible = docFlickable.visible ? false : true + } } diff -Nru calligra-2.3.86/active/qml/DocumentTypeSelector.qml calligra-2.3.87/active/qml/DocumentTypeSelector.qml --- calligra-2.3.86/active/qml/DocumentTypeSelector.qml 2012-01-07 03:25:00.000000000 +0000 +++ calligra-2.3.87/active/qml/DocumentTypeSelector.qml 2012-01-28 07:04:47.000000000 +0000 @@ -2,6 +2,7 @@ * This file is part of the KDE project * * Copyright (C) 2011 Shantanu Tushar + * Copyright (C) 2012 Sujith H * * This program is free software; you can redistribute it and/or * modify it under the terms of the GNU General Public License as @@ -20,6 +21,7 @@ */ import QtQuick 1.0 as QML +import org.kde.plasma.components 0.1 as PlasmaComponents QML.Item { id: container @@ -35,32 +37,29 @@ anchors.fill: parent spacing: 10 - Button { + PlasmaComponents.Button { id: button1 - textPosition: "right" - imageSource: "qrc:///images/words.png" + iconSource: "words" text: "Text Document" width: buttonWidth; height: buttonHeight onClicked: homeScreen.state = "showTextDocs"; } - Button { + PlasmaComponents.Button { id: button2 - textPosition: "right" - imageSource: "qrc:///images/tables.png" + iconSource: "kspread" text: "Spreadsheet" width: buttonWidth; height: buttonHeight onClicked: homeScreen.state = "showSpreadsheets"; } - Button { + PlasmaComponents.Button { id: button3 - textPosition: "right" - imageSource: "qrc:///images/stage.png" + iconSource: "stage" text: "Presentation" width: buttonWidth; height: buttonHeight diff -Nru calligra-2.3.86/active/qml/FindToolbar.qml calligra-2.3.87/active/qml/FindToolbar.qml --- calligra-2.3.86/active/qml/FindToolbar.qml 2012-01-07 03:25:00.000000000 +0000 +++ calligra-2.3.87/active/qml/FindToolbar.qml 1970-01-01 00:00:00.000000000 +0000 @@ -1,47 +0,0 @@ -/* - * This file is part of the KDE project - * - * Copyright (C) 2011 Shantanu Tushar - * - * This program is free software; you can redistribute it and/or - * modify it under the terms of the GNU General Public License as - * published by the Free Software Foundation; either version 2 of - * the License, or (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with this program; if not, write to the Free Software - * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA - * 02110-1301 USA - */ - -import QtQuick 1.0 -import org.kde.plasma.graphicswidgets 0.1 as PlasmaWidgets - -Item { - property string searchString: findToolbarSearchString.text - - id: findToolbarRootItem - focus: true - - Row { - id: row - anchors.fill: parent - - PlasmaWidgets.LineEdit { - id: findToolbarSearchString - height: parent.height - width: parent.width - findButton.width - } - - PlasmaWidgets.PushButton { - id: findButton - height: parent.height - width: 128 - } - } -} diff -Nru calligra-2.3.86/active/qml/HomeScreen.qml calligra-2.3.87/active/qml/HomeScreen.qml --- calligra-2.3.86/active/qml/HomeScreen.qml 2012-01-07 03:25:00.000000000 +0000 +++ calligra-2.3.87/active/qml/HomeScreen.qml 2012-01-28 07:04:47.000000000 +0000 @@ -1,7 +1,8 @@ /* * This file is part of the KDE project * - * Copyright (C) 2011 Shantanu Tushar + * Copyright (C) 2011 Shantanu Tushar + * Copyright (C) 2012 Sujith H * * This program is free software; you can redistribute it and/or * modify it under the terms of the GNU General Public License as @@ -21,6 +22,7 @@ import QtQuick 1.0 import CalligraActive 1.0 +import org.kde.plasma.components 0.1 as PlasmaComponents Image { id: homeScreen @@ -54,11 +56,10 @@ anchors.margins: 10 } - Button { + PlasmaComponents.Button { id: openFileDialogButton - imageSource: "qrc:///images/words.png" - textPosition: "right" + iconSource: "document-open" text: "Open File" width: homeScreen.width/2.1; height: 100; @@ -71,11 +72,10 @@ onClicked: mainwindow.openFileDialog() } - Button { + PlasmaComponents.Button { id: aboutCalligraButton - imageSource: "qrc:///images/active-about.png" - textPosition: "right" + iconSource: "active-about" text: "About Calligra Active" width: homeScreen.width/2.1; height: 100; @@ -92,7 +92,8 @@ id: progressBar color: "blue" - width: parent.width/100*doc.loadProgress; height: 32; + //DISABLED + //width: parent.width/100*doc.loadProgress; height: 32; anchors.bottom: parent.bottom } diff -Nru calligra-2.3.86/active/qml/PresentationLeftToolbar.qml calligra-2.3.87/active/qml/PresentationLeftToolbar.qml --- calligra-2.3.86/active/qml/PresentationLeftToolbar.qml 1970-01-01 00:00:00.000000000 +0000 +++ calligra-2.3.87/active/qml/PresentationLeftToolbar.qml 2012-01-28 14:26:27.000000000 +0000 @@ -0,0 +1,38 @@ +/* + * This file is part of the KDE project + * + * Copyright (C) 2011 Shantanu Tushar + * + * This program is free software; you can redistribute it and/or + * modify it under the terms of the GNU General Public License as + * published by the Free Software Foundation; either version 2 of + * the License, or (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program; if not, write to the Free Software + * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA + * 02110-1301 USA + */ + +import QtQuick 1.1 +import org.kde.plasma.components 0.1 as PlasmaComponents + +Item +{ + id: root + property QtObject documentController + + PlasmaComponents.ToolButton { + iconSource: "arrow-left" + anchors.centerIn: parent + height: width + width: parent.width + + onClicked: root.documentController.documentHandler().previousSlide() + } +} diff -Nru calligra-2.3.86/active/qml/PresentationRightToolbar.qml calligra-2.3.87/active/qml/PresentationRightToolbar.qml --- calligra-2.3.86/active/qml/PresentationRightToolbar.qml 1970-01-01 00:00:00.000000000 +0000 +++ calligra-2.3.87/active/qml/PresentationRightToolbar.qml 2012-01-28 14:26:27.000000000 +0000 @@ -0,0 +1,38 @@ +/* + * This file is part of the KDE project + * + * Copyright (C) 2011 Shantanu Tushar + * + * This program is free software; you can redistribute it and/or + * modify it under the terms of the GNU General Public License as + * published by the Free Software Foundation; either version 2 of + * the License, or (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program; if not, write to the Free Software + * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA + * 02110-1301 USA + */ + +import QtQuick 1.1 +import org.kde.plasma.components 0.1 as PlasmaComponents + +Item +{ + id: root + property QtObject documentController + + PlasmaComponents.ToolButton { + iconSource: "arrow-right" + anchors.centerIn: parent + height: width + width: parent.width + + onClicked: root.documentController.documentHandler().nextSlide() + } +} diff -Nru calligra-2.3.86/active/qml/PresentationTemplatesModel.qml calligra-2.3.87/active/qml/PresentationTemplatesModel.qml --- calligra-2.3.86/active/qml/PresentationTemplatesModel.qml 2012-01-07 03:25:00.000000000 +0000 +++ calligra-2.3.87/active/qml/PresentationTemplatesModel.qml 1970-01-01 00:00:00.000000000 +0000 @@ -1,42 +0,0 @@ -/* - * This file is part of the KDE project - * - * Copyright (C) 2011 Shantanu Tushar - * - * This program is free software; you can redistribute it and/or - * modify it under the terms of the GNU General Public License as - * published by the Free Software Foundation; either version 2 of - * the License, or (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with this program; if not, write to the Free Software - * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA - * 02110-1301 USA - */ - -///*************UNUSED************* - -import QtQuick 1.0 as QML - -QML.ListModel { - QML.ListElement { - name: "Text_Only.odp" - } - QML.ListElement { - name: "Text_With_Chart.odp" - } - QML.ListElement { - name: "Text_With_Header.odp" - } - QML.ListElement { - name: "Text_With_Image.odp" - } - QML.ListElement { - name: "Text_With_Outline.odp" - } -} diff -Nru calligra-2.3.86/active/qml/PresentationTemplatesView.qml calligra-2.3.87/active/qml/PresentationTemplatesView.qml --- calligra-2.3.86/active/qml/PresentationTemplatesView.qml 2012-01-07 03:25:00.000000000 +0000 +++ calligra-2.3.87/active/qml/PresentationTemplatesView.qml 1970-01-01 00:00:00.000000000 +0000 @@ -1,37 +0,0 @@ -/* - * This file is part of the KDE project - * - * Copyright (C) 2011 Shantanu Tushar - * - * This program is free software; you can redistribute it and/or - * modify it under the terms of the GNU General Public License as - * published by the Free Software Foundation; either version 2 of - * the License, or (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with this program; if not, write to the Free Software - * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA - * 02110-1301 USA - */ - -///*************UNUSED************* - -import QtQuick 1.0 as QML - -QML.ListView { - model: PresentationTemplatesModel { } - orientation: QML.ListView.Horizontal - focus: true - spacing: 20 - - delegate: Button { - height: 400; width: 400; - text: name - imageSource: "../templates/stage/" + name + ".png" - } -} diff -Nru calligra-2.3.86/active/qml/PresentationToolbar.qml calligra-2.3.87/active/qml/PresentationToolbar.qml --- calligra-2.3.86/active/qml/PresentationToolbar.qml 2012-01-07 03:25:00.000000000 +0000 +++ calligra-2.3.87/active/qml/PresentationToolbar.qml 1970-01-01 00:00:00.000000000 +0000 @@ -1,56 +0,0 @@ -/* - * This file is part of the KDE project - * - * Copyright (C) 2011 Shantanu Tushar - * - * This program is free software; you can redistribute it and/or - * modify it under the terms of the GNU General Public License as - * published by the Free Software Foundation; either version 2 of - * the License, or (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with this program; if not, write to the Free Software - * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA - * 02110-1301 USA - */ - -import QtQuick 1.0 - -Item -{ - id: presentationToolbarRootItem - property bool containsMouse: previousSlide.containsMouse || nextSlide.containsMouse - signal editTriggered - anchors.fill: parent - - Button { - id: previousSlide - drawBackground: false - imageSource: "qrc:///images/arrow-left.png" - anchors.left: parent.left - anchors.verticalCenter: parent.verticalCenter - height: 64 - width: 64 - z: 2 - - onClicked: canvas.previousSlide() - } - - Button { - id: nextSlide - drawBackground: false - imageSource: "qrc:///images/arrow-right.png" - anchors.right: parent.right - anchors.verticalCenter: parent.verticalCenter - height: 64 - width: 64 - z: 2 - - onClicked: canvas.nextSlide() - } -} diff -Nru calligra-2.3.86/active/qml/RecentFiles.qml calligra-2.3.87/active/qml/RecentFiles.qml --- calligra-2.3.86/active/qml/RecentFiles.qml 2012-01-07 03:25:00.000000000 +0000 +++ calligra-2.3.87/active/qml/RecentFiles.qml 2012-01-28 07:04:47.000000000 +0000 @@ -1,7 +1,7 @@ /* * This file is part of the KDE project * - * Copyright (C) 2011 Shantanu Tushar + * Copyright (C) 2011 Shantanu Tushar * * This program is free software; you can redistribute it and/or * modify it under the terms of the GNU General Public License as @@ -23,6 +23,7 @@ import CalligraActive 1.0 import org.kde.plasma.core 0.1 as PlasmaCore import org.kde.metadatamodels 0.1 as MetadataModels +import org.kde.plasma.components 0.1 as PlasmaComponents ListView { id: recentFilesListView @@ -53,29 +54,25 @@ } model: metadataModel - delegate: Button { - textPosition: "right" - - text: label - width: buttonWidth; height: buttonHeight; - imageSource: { - switch(typeFilter) { - case "PaginatedTextDocument": - "qrc:///images/words.png" - break; - case "Spreadsheet": - "qrc:///images/tables.png" - break; - case "Presentation": - "qrc:///images/stage.png" - break; + delegate: + PlasmaComponents.Button { + text: label + width: buttonWidth; height: buttonHeight; + iconSource: { + switch(typeFilter) { + case "PaginatedTextDocument": + "words" + break; + case "Spreadsheet": + "kspread" + break; + case "Presentation": + "stage" + break; + } } - } - MouseArea { - anchors.fill: parent onClicked: homeScreen.openDocument(model["url"]); } - } } diff -Nru calligra-2.3.86/active/qml/SpreadsheetLeftToolbar.qml calligra-2.3.87/active/qml/SpreadsheetLeftToolbar.qml --- calligra-2.3.86/active/qml/SpreadsheetLeftToolbar.qml 1970-01-01 00:00:00.000000000 +0000 +++ calligra-2.3.87/active/qml/SpreadsheetLeftToolbar.qml 2012-01-28 14:26:27.000000000 +0000 @@ -0,0 +1,38 @@ +/* + * This file is part of the KDE project + * + * Copyright (C) 2011 Shantanu Tushar + * + * This program is free software; you can redistribute it and/or + * modify it under the terms of the GNU General Public License as + * published by the Free Software Foundation; either version 2 of + * the License, or (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program; if not, write to the Free Software + * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA + * 02110-1301 USA + */ + +import QtQuick 1.1 +import org.kde.plasma.components 0.1 as PlasmaComponents + +Item +{ + id: root + property QtObject documentController + + PlasmaComponents.ToolButton { + iconSource: "arrow-left" + anchors.centerIn: parent + height: width + width: parent.width + + onClicked: root.documentController.documentHandler().previousSheet() + } +} diff -Nru calligra-2.3.86/active/qml/SpreadsheetRightToolbar.qml calligra-2.3.87/active/qml/SpreadsheetRightToolbar.qml --- calligra-2.3.86/active/qml/SpreadsheetRightToolbar.qml 1970-01-01 00:00:00.000000000 +0000 +++ calligra-2.3.87/active/qml/SpreadsheetRightToolbar.qml 2012-01-28 14:26:27.000000000 +0000 @@ -0,0 +1,38 @@ +/* + * This file is part of the KDE project + * + * Copyright (C) 2011 Shantanu Tushar + * + * This program is free software; you can redistribute it and/or + * modify it under the terms of the GNU General Public License as + * published by the Free Software Foundation; either version 2 of + * the License, or (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program; if not, write to the Free Software + * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA + * 02110-1301 USA + */ + +import QtQuick 1.1 +import org.kde.plasma.components 0.1 as PlasmaComponents + +Item +{ + id: root + property QtObject documentController + + PlasmaComponents.ToolButton { + iconSource: "arrow-right" + anchors.centerIn: parent + height: width + width: parent.width + + onClicked: root.documentController.documentHandler().nextSheet() + } +} diff -Nru calligra-2.3.86/active/qml/SpreadsheetToolbar.qml calligra-2.3.87/active/qml/SpreadsheetToolbar.qml --- calligra-2.3.86/active/qml/SpreadsheetToolbar.qml 2012-01-07 03:25:00.000000000 +0000 +++ calligra-2.3.87/active/qml/SpreadsheetToolbar.qml 1970-01-01 00:00:00.000000000 +0000 @@ -1,54 +0,0 @@ -/* - * This file is part of the KDE project - * - * Copyright (C) 2011 Shantanu Tushar - * - * This program is free software; you can redistribute it and/or - * modify it under the terms of the GNU General Public License as - * published by the Free Software Foundation; either version 2 of - * the License, or (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with this program; if not, write to the Free Software - * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA - * 02110-1301 USA - */ - -import QtQuick 1.0 - -Item -{ - property bool containsMouse: previousSheet.containsMouse || nextSheet.containsMouse - anchors.fill: parent - - Button { - id: previousSheet - drawBackground: false - imageSource: "qrc:///images/arrow-left.png" - anchors.left: parent.left - anchors.verticalCenter: parent.verticalCenter - height: 64 - width: 64 - z: 1 - - onClicked: canvas.previousSheet() - } - - Button { - id: nextSheet - drawBackground: false - imageSource: "qrc:///images/arrow-right.png" - anchors.right: parent.right - anchors.verticalCenter: parent.verticalCenter - height: 64 - width: 64 - z: 1 - - onClicked: canvas.nextSheet() - } -} diff -Nru calligra-2.3.86/active/qml/TextDocumentEditingToolbar.qml calligra-2.3.87/active/qml/TextDocumentEditingToolbar.qml --- calligra-2.3.86/active/qml/TextDocumentEditingToolbar.qml 1970-01-01 00:00:00.000000000 +0000 +++ calligra-2.3.87/active/qml/TextDocumentEditingToolbar.qml 2012-01-28 14:26:27.000000000 +0000 @@ -0,0 +1,40 @@ +/* + * This file is part of the KDE project + * + * Copyright (C) 2011 Shantanu Tushar + * + * This program is free software; you can redistribute it and/or + * modify it under the terms of the GNU General Public License as + * published by the Free Software Foundation; either version 2 of + * the License, or (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program; if not, write to the Free Software + * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA + * 02110-1301 USA + */ + +import QtQuick 1.1 +import org.kde.plasma.components 0.1 as PlasmaComponents + +Item +{ + id: root + property QtObject documentController + property Item docRootItem + + PlasmaComponents.ToolButton { + iconSource: "document-edit" + anchors.centerIn: parent + height: parent.height + width: height + checkable: true + + onClicked: docRootItem.toggleEditing() + } +} \ No newline at end of file diff -Nru calligra-2.3.86/active/qml/TextDocumentFindToolbar.qml calligra-2.3.87/active/qml/TextDocumentFindToolbar.qml --- calligra-2.3.86/active/qml/TextDocumentFindToolbar.qml 1970-01-01 00:00:00.000000000 +0000 +++ calligra-2.3.87/active/qml/TextDocumentFindToolbar.qml 2012-01-28 14:26:27.000000000 +0000 @@ -0,0 +1,69 @@ +/* + * This file is part of the KDE project + * + * Copyright (C) 2011 Shantanu Tushar + * + * This program is free software; you can redistribute it and/or + * modify it under the terms of the GNU General Public License as + * published by the Free Software Foundation; either version 2 of + * the License, or (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program; if not, write to the Free Software + * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA + * 02110-1301 USA + */ + +import QtQuick 1.0 +import org.kde.metadatamodels 0.1 as MetadataModels +import org.kde.plasma.components 0.1 as PlasmaComponents +import org.kde.plasma.core 0.1 as PlasmaCore +import org.kde.plasma.mobilecomponents 0.1 as MobileComponents +import org.kde.qtextracomponents 0.1 + +Item { + id: findToolbarRootItem + property QtObject documentController + + Row { + id: row + anchors.fill: parent + + PlasmaComponents.TextField { + id: findToolbarSearchString + focus: true + height: parent.height + width: parent.width - findNextButton.width - findPreviousButton.width + + MouseArea { + anchors.fill: parent + onClicked: findToolbarSearchString.forceActiveFocus() + } + + onTextChanged: findToolbarRootItem.documentController.documentHandler().searchString = text + } + + PlasmaComponents.Button { + id: findPreviousButton + height: parent.height + width: 128 + text: "Find Previous" + + onClicked: findToolbarRootItem.documentController.documentHandler().findPrevious() + } + + PlasmaComponents.Button { + id: findNextButton + height: parent.height + width: 128 + text: "Find Next" + + onClicked: findToolbarRootItem.documentController.documentHandler().findNext() + } + } +} diff -Nru calligra-2.3.86/active/qml/Toolbars.qml calligra-2.3.87/active/qml/Toolbars.qml --- calligra-2.3.86/active/qml/Toolbars.qml 1970-01-01 00:00:00.000000000 +0000 +++ calligra-2.3.87/active/qml/Toolbars.qml 2012-01-28 14:26:27.000000000 +0000 @@ -0,0 +1,181 @@ +/* + * This file is part of the KDE project + * + * Copyright (C) 2011 Shantanu Tushar + * + * This program is free software; you can redistribute it and/or + * modify it under the terms of the GNU General Public License as + * published by the Free Software Foundation; either version 2 of + * the License, or (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program; if not, write to the Free Software + * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA + * 02110-1301 USA + */ + +import QtQuick 1.1 + +Item { + id: root + property QtObject documentController + property Item docRootItem + property int animationDuration: 200 + property int commonHeight: 48 + property int commonWidth: 48 + + Loader { + id: topToolbarLoader + height: root.commonHeight + z: 1 + + anchors.left: leftToolbarLoader.right + anchors.right: rightToolbarLoader.left + anchors.bottom: parent.top + + onSourceChanged: { + if (source) { + item.documentController = root.documentController + item.docRootItem = root.docRootItem + } + } + + states: State { + name: "shown" + + AnchorChanges { + target: topToolbarLoader + anchors.bottom: undefined + anchors.top: parent.top + } + } + + transitions: Transition { + AnchorAnimation { duration: root.animationDuration } + } + } + + Loader { + id: rightToolbarLoader + width: root.commonWidth + z: 1 + + anchors.left: parent.right + anchors.top: parent.top + anchors.bottom: parent.bottom + + onSourceChanged: { + if (source) { + item.documentController = root.documentController + item.docRootItem = root.docRootItem + } + } + + states: State { + name: "shown" + + AnchorChanges { + target: rightToolbarLoader + anchors.left: undefined + anchors.right: parent.right + } + } + + transitions: Transition { + AnchorAnimation { duration: root.animationDuration } + } + } + + Loader { + id: bottomToolbarLoader + height: root.commonHeight + z: 1 + + anchors.left: leftToolbarLoader.right + anchors.right: rightToolbarLoader.left + anchors.top: parent.bottom + + onSourceChanged: { + if (source) { + item.documentController = root.documentController + item.docRootItem = root.docRootItem + } + } + + states: State { + name: "shown" + + AnchorChanges { + target: bottomToolbarLoader + anchors.top: undefined + anchors.bottom: parent.bottom + } + } + + transitions: Transition { + AnchorAnimation { duration: root.animationDuration } + } + } + + Loader { + id: leftToolbarLoader + width: root.commonWidth + z: 1 + + anchors.right: parent.left + anchors.top: parent.top + anchors.bottom: parent.bottom + + onSourceChanged: { + if (source) { + item.documentController = root.documentController + item.docRootItem = root.docRootItem + } + } + + states: State { + name: "shown" + + AnchorChanges { + target: leftToolbarLoader + anchors.right: undefined + anchors.left: parent.left + } + } + + transitions: Transition { + AnchorAnimation { duration: root.animationDuration } + } + } + + states: [ + State { + name: "shown" + PropertyChanges { target: topToolbarLoader; state: "shown" } + PropertyChanges { target: rightToolbarLoader; state: "shown" } + PropertyChanges { target: bottomToolbarLoader; state: "shown" } + PropertyChanges { target: leftToolbarLoader; state: "shown" } + }, + State { + name: "hidden" + PropertyChanges { target: topToolbarLoader; state: "" } + PropertyChanges { target: rightToolbarLoader; state: "" } + PropertyChanges { target: bottomToolbarLoader; state: "" } + PropertyChanges { target: leftToolbarLoader; state: "" } + } + ] + + function toggle() { state = (state == "shown" ? "hidden" : "shown") } + + function initToolbars() { + topToolbarLoader.source = root.documentController.documentHandler().topToolbarSource + rightToolbarLoader.source = root.documentController.documentHandler().rightToolbarSource + bottomToolbarLoader.source = root.documentController.documentHandler().bottomToolbarSource + leftToolbarLoader.source = root.documentController.documentHandler().leftToolbarSource + } +} \ No newline at end of file diff -Nru calligra-2.3.86/active/qml/WordsToolbar.qml calligra-2.3.87/active/qml/WordsToolbar.qml --- calligra-2.3.86/active/qml/WordsToolbar.qml 2012-01-07 03:25:00.000000000 +0000 +++ calligra-2.3.87/active/qml/WordsToolbar.qml 2012-01-28 07:04:47.000000000 +0000 @@ -1,7 +1,7 @@ /* * This file is part of the KDE project * - * Copyright (C) 2011 Shantanu Tushar + * Copyright (C) 2011 Shantanu Tushar * * This program is free software; you can redistribute it and/or * modify it under the terms of the GNU General Public License as diff -Nru calligra-2.3.86/active/README calligra-2.3.87/active/README --- calligra-2.3.86/active/README 2012-01-07 03:25:00.000000000 +0000 +++ calligra-2.3.87/active/README 2012-01-28 07:04:47.000000000 +0000 @@ -1,10 +1,4 @@ -Calligra Mobile - -Visit http://community.kde.org/Calligra/Calligra_Mobile for more information. - -NOTES - -* The thumbnail PNGs are temporary, TODO: generate thumbnail on the fly -* Make a C++ plugin for PresentationTemplatesModel so it can dynamically generate - plugins list +Calligra Active +Part of the Calligra Project http://www.calligra.org +and the Plasma Active Project http://plasma-active.org/ diff -Nru calligra-2.3.86/active/src/CAAbstractDocumentHandler.cpp calligra-2.3.87/active/src/CAAbstractDocumentHandler.cpp --- calligra-2.3.86/active/src/CAAbstractDocumentHandler.cpp 1970-01-01 00:00:00.000000000 +0000 +++ calligra-2.3.87/active/src/CAAbstractDocumentHandler.cpp 2012-01-28 14:26:27.000000000 +0000 @@ -0,0 +1,93 @@ +/* + * This file is part of the KDE project + * + * Copyright (C) 2011 Shantanu Tushar + * + * This program is free software; you can redistribute it and/or + * modify it under the terms of the GNU General Public License as + * published by the Free Software Foundation; either version 2 of + * the License, or (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program; if not, write to the Free Software + * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA + * 02110-1301 USA + */ + +#include "CAAbstractDocumentHandler.h" +#include "CADocumentController.h" +#include "CACanvasController.h" + +#include +#include + +#include + +class CAAbstractDocumentHandler::Private +{ +public: + Private() + { + documentController = 0; + } + CADocumentController *documentController; +}; + +CAAbstractDocumentHandler::CAAbstractDocumentHandler (CADocumentController* documentController) + : QObject (documentController) + , d (new Private()) +{ + d->documentController = documentController; +} + +CADocumentController* CAAbstractDocumentHandler::documentController() const +{ + return d->documentController; +} + +CAAbstractDocumentHandler::~CAAbstractDocumentHandler() +{ + delete d; +} + +KoCanvasBase* CAAbstractDocumentHandler::canvas() const +{ + return documentController()->canvasController()->canvas(); +} + +void CAAbstractDocumentHandler::setCanvas (KoCanvasBase* canvas) +{ + documentController()->canvasController()->setCanvas (canvas); +} + +bool CAAbstractDocumentHandler::canOpenDocument (const QString& uri) +{ + return supportedMimetypes().contains (KMimeType::findByUrl (uri)->name()); +} + +QString CAAbstractDocumentHandler::bottomToolbarSource() const +{ + return QString(); +} + +QString CAAbstractDocumentHandler::leftToolbarSource() const +{ + return QString(); +} + +QString CAAbstractDocumentHandler::rightToolbarSource() const +{ + return QString(); +} + +QString CAAbstractDocumentHandler::topToolbarSource() const +{ + return QString(); +} + +#include "CAAbstractDocumentHandler.moc" diff -Nru calligra-2.3.86/active/src/CAAbstractDocumentHandler.h calligra-2.3.87/active/src/CAAbstractDocumentHandler.h --- calligra-2.3.86/active/src/CAAbstractDocumentHandler.h 1970-01-01 00:00:00.000000000 +0000 +++ calligra-2.3.87/active/src/CAAbstractDocumentHandler.h 2012-01-28 14:26:27.000000000 +0000 @@ -0,0 +1,67 @@ +/* + * This file is part of the KDE project + * + * Copyright (C) 2011 Shantanu Tushar + * + * This program is free software; you can redistribute it and/or + * modify it under the terms of the GNU General Public License as + * published by the Free Software Foundation; either version 2 of + * the License, or (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program; if not, write to the Free Software + * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA + * 02110-1301 USA + */ + +#ifndef CAABSTRACTDOCUMENTHANDLER_H +#define CAABSTRACTDOCUMENTHANDLER_H + +#include +#include + +class KoDocument; +class QGraphicsItem; +class KoCanvasController; +class KoCanvasBase; +class CADocumentController; + +class CAAbstractDocumentHandler : public QObject +{ + Q_OBJECT + Q_PROPERTY(QString topToolbarSource READ topToolbarSource CONSTANT) + Q_PROPERTY(QString rightToolbarSource READ rightToolbarSource CONSTANT) + Q_PROPERTY(QString bottomToolbarSource READ bottomToolbarSource CONSTANT) + Q_PROPERTY(QString leftToolbarSource READ leftToolbarSource CONSTANT) + +public: + explicit CAAbstractDocumentHandler (CADocumentController* documentController); + virtual ~CAAbstractDocumentHandler(); + + virtual QStringList supportedMimetypes() = 0; + virtual bool openDocument (const QString& uri) = 0; + virtual QString documentTypeName() = 0; + + bool canOpenDocument (const QString& uri); + KoCanvasBase* canvas() const; + + virtual QString topToolbarSource() const; + virtual QString rightToolbarSource() const; + virtual QString bottomToolbarSource() const; + virtual QString leftToolbarSource() const; + +protected: + class Private; + Private* const d; + + virtual KoDocument* document() = 0; + void setCanvas (KoCanvasBase* canvas); + CADocumentController* documentController() const; +}; + +#endif // CAABSTRACTDOCUMENTHANDLER_H diff -Nru calligra-2.3.86/active/src/CACanvasController.cpp calligra-2.3.87/active/src/CACanvasController.cpp --- calligra-2.3.86/active/src/CACanvasController.cpp 1970-01-01 00:00:00.000000000 +0000 +++ calligra-2.3.87/active/src/CACanvasController.cpp 2012-01-28 14:26:27.000000000 +0000 @@ -0,0 +1,293 @@ +/* + * This file is part of the KDE project + * + * Copyright (C) 2009 Nokia Corporation and/or its subsidiary(-ies). + * Copyright (C) 2010 Boudewijn Rempt + * Copyright (C) 2010-2011 Jarosław Staniek + * Copyright (C) 2011 Shantanu Tushar + * + * This program is free software; you can redistribute it and/or + * modify it under the terms of the GNU General Public License as + * published by the Free Software Foundation; either version 2 of + * the License, or (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program; if not, write to the Free Software + * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA + * 02110-1301 USA + */ + + +#include "CACanvasController.h" + +#include +#include +#include +#include + +#include + +#include +#include +#include + +CACanvasController::CACanvasController (QDeclarativeItem* parent) + : QDeclarativeItem (parent), KoCanvasController (0), m_zoomHandler (0), m_zoomController (0), + m_canvas (0), m_currentPoint (QPoint (0, 0)), m_documentSize (QSizeF (0, 0)) +{ + setFlag (QGraphicsItem::ItemHasNoContents, false); + setClip (true); +} + +void CACanvasController::setVastScrolling (qreal factor) +{ + //kDebug() << factor; +} + +void CACanvasController::setZoomWithWheel (bool zoom) +{ + //kDebug() << zoom; +} + +void CACanvasController::updateDocumentSize (const QSize& sz, bool recalculateCenter) +{ + m_documentSize = sz; + emit docHeightChanged(); + emit docWidthChanged(); +} + +void CACanvasController::setScrollBarValue (const QPoint& value) +{ + //kDebug() << value; +} + +QPoint CACanvasController::scrollBarValue() const +{ + return QPoint(); +} + +void CACanvasController::pan (const QPoint& distance) +{ + //kDebug() << distance; +} + +QPoint CACanvasController::preferredCenter() const +{ + return QPoint(); +} + +void CACanvasController::setPreferredCenter (const QPoint& viewPoint) +{ + //kDebug() << viewPoint; +} + +void CACanvasController::recenterPreferred() +{ +} + +void CACanvasController::zoomTo (const QRect& rect) +{ + //kDebug() << rect; +} + +void CACanvasController::zoomBy (const QPoint& center, qreal zoom) +{ + //kDebug() << center << zoom; +} + +void CACanvasController::zoomOut (const QPoint& center) +{ + //kDebug() << center; +} + +void CACanvasController::zoomIn (const QPoint& center) +{ + //kDebug() << center; +} + +void CACanvasController::ensureVisible (KoShape* shape) +{ + setCameraX (shape->position().x()); + setCameraY (shape->position().y()); +} + +void CACanvasController::ensureVisible (const QRectF& rect, bool smooth) +{ + int y = rect.center().y() - height()/2; + if (y<0) { + y = 0; + } + setCameraY(y); +} + +int CACanvasController::canvasOffsetY() const +{ + return 0; +} + +int CACanvasController::canvasOffsetX() const +{ + return 0; +} + +int CACanvasController::visibleWidth() const +{ + return 0; +} + +int CACanvasController::visibleHeight() const +{ + return 0; +} + +KoCanvasBase* CACanvasController::canvas() const +{ + return m_canvas; +} + +KoCanvasControllerProxyObject* CACanvasController::canvasControllerProxyObject() +{ + return proxyObject; +} + +void CACanvasController::setCanvas (KoCanvasBase* canvas) +{ + QGraphicsWidget* widget = canvas->canvasItem(); + widget->setParentItem (this); + canvas->setCanvasController (this); + widget->setVisible (true); + m_canvas = canvas; + + zoomToFit(); +} + +void CACanvasController::setDrawShadow (bool drawShadow) +{ + //kDebug() << drawShadow; +} + +QSize CACanvasController::viewportSize() const +{ + return QSize(); +} + +void CACanvasController::scrollContentsBy (int dx, int dy) +{ + //kDebug() << dx << dy; +} + +qreal CACanvasController::docHeight() const +{ + return m_documentSize.height(); +} + +qreal CACanvasController::docWidth() const +{ + return m_documentSize.width(); +} + +int CACanvasController::cameraX() const +{ + return m_currentPoint.x(); +} + +int CACanvasController::cameraY() const +{ + return m_currentPoint.y(); +} + +void CACanvasController::setCameraX (int cameraX) +{ + m_currentPoint.setX (cameraX); + emit cameraXChanged(); + centerToCamera(); +} + +void CACanvasController::setCameraY (int cameraY) +{ + m_currentPoint.setY (cameraY); + emit cameraYChanged(); + centerToCamera(); +} + +void CACanvasController::centerToCamera() +{ + if (proxyObject) { + proxyObject->emitMoveDocumentOffset (m_currentPoint); + } + updateCanvas(); +} + +CACanvasController::~CACanvasController() +{ +} + +void CACanvasController::zoomToFit() +{ + emit needsCanvasResize(QSizeF(width(), height())); + emit docHeightChanged(); + emit docWidthChanged(); +} + +void CACanvasController::updateCanvas() +{ + emit needCanvasUpdate(); +} + +void CACanvasController::geometryChanged (const QRectF& newGeometry, const QRectF& oldGeometry) +{ + if (m_canvas) { + QGraphicsWidget* widget = m_canvas->canvasItem(); + widget->setParentItem (this); + widget->setVisible (true); + widget->setGeometry (newGeometry); + + zoomToFit(); + } + QDeclarativeItem::geometryChanged (newGeometry, oldGeometry); +} + +KoZoomController* CACanvasController::zoomController() +{ + return m_zoomController; +} + +KoZoomHandler* CACanvasController::zoomHandler() +{ + return m_zoomHandler; +} + +void CACanvasController::setZoomController (KoZoomController* zoomController) +{ + m_zoomController = zoomController; + connect(m_zoomController, SIGNAL(zoomChanged(KoZoomMode::Mode,qreal)), SLOT(updateZoomValue(KoZoomMode::Mode,qreal))); +} + +void CACanvasController::setZoomHandler (KoZoomHandler* zoomHandler) +{ + m_zoomHandler = zoomHandler; +} + +void CACanvasController::setZoom(qreal zoom) +{ + m_zoomController->setZoom(KoZoomMode::ZOOM_CONSTANT, zoom); + emit zoomChanged(); +} + +qreal CACanvasController::zoom() const +{ + return m_zoom; +} + +void CACanvasController::updateZoomValue(KoZoomMode::Mode mode, qreal zoom) +{ + m_zoom = zoom; +} + +#include "CACanvasController.moc" + diff -Nru calligra-2.3.86/active/src/CACanvasController.h calligra-2.3.87/active/src/CACanvasController.h --- calligra-2.3.86/active/src/CACanvasController.h 1970-01-01 00:00:00.000000000 +0000 +++ calligra-2.3.87/active/src/CACanvasController.h 2012-01-28 07:04:47.000000000 +0000 @@ -0,0 +1,119 @@ +/* + * This file is part of the KDE project + * + * Copyright (C) 2011 Shantanu Tushar + * + * This program is free software; you can redistribute it and/or + * modify it under the terms of the GNU General Public License as + * published by the Free Software Foundation; either version 2 of + * the License, or (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program; if not, write to the Free Software + * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA + * 02110-1301 USA + */ + + +#ifndef CACANVASCONTROLLER_H +#define CACANVASCONTROLLER_H + +#include "KoCanvasController.h" +#include "CADocumentInfo.h" + +#include +#include + +#include + +class KoCanvasBase; +class KoZoomController; +class KoZoomHandler; + +class CACanvasController : public QDeclarativeItem, public KoCanvasController +{ + Q_OBJECT + + Q_PROPERTY (qreal docHeight READ docHeight NOTIFY docHeightChanged) + Q_PROPERTY (qreal docWidth READ docWidth NOTIFY docWidthChanged) + Q_PROPERTY (int cameraX READ cameraX WRITE setCameraX NOTIFY cameraXChanged) + Q_PROPERTY (int cameraY READ cameraY WRITE setCameraY NOTIFY cameraYChanged) + Q_PROPERTY (qreal zoom READ zoom WRITE setZoom NOTIFY zoomChanged) + +public: + explicit CACanvasController (QDeclarativeItem* parent = 0); + virtual ~CACanvasController(); + virtual void setVastScrolling (qreal factor); + virtual void setZoomWithWheel (bool zoom); + virtual void updateDocumentSize (const QSize& sz, bool recalculateCenter); + virtual void setScrollBarValue (const QPoint& value); + virtual QPoint scrollBarValue() const; + virtual void pan (const QPoint& distance); + virtual QPoint preferredCenter() const; + virtual void setPreferredCenter (const QPoint& viewPoint); + virtual void recenterPreferred(); + virtual void zoomTo (const QRect& rect); + virtual void zoomBy (const QPoint& center, qreal zoom); + virtual void zoomOut (const QPoint& center); + virtual void zoomIn (const QPoint& center); + virtual void ensureVisible (KoShape* shape); + virtual void ensureVisible (const QRectF& rect, bool smooth = false); + virtual int canvasOffsetY() const; + virtual int canvasOffsetX() const; + virtual int visibleWidth() const; + virtual int visibleHeight() const; + virtual KoCanvasBase* canvas() const; + virtual void setCanvas (KoCanvasBase* canvas); + virtual void setDrawShadow (bool drawShadow); + virtual QSize viewportSize() const; + virtual void scrollContentsBy (int dx, int dy); + + qreal docWidth() const; + qreal docHeight() const; + int cameraX() const; + int cameraY() const; + void setCameraX (int cameraX); + void setCameraY (int cameraY); + qreal zoom() const; + void setZoom(qreal zoom); + + KoCanvasControllerProxyObject* canvasControllerProxyObject(); + KoZoomHandler* zoomHandler(); + KoZoomController* zoomController(); + void setZoomHandler (KoZoomHandler* zoomHandler); + void setZoomController (KoZoomController* zoomController); + +public slots: + void centerToCamera(); + void zoomToFit(); + void updateCanvas(); + void updateZoomValue(KoZoomMode::Mode mode, qreal zoom); + +private: + KoZoomHandler* m_zoomHandler; + KoZoomController* m_zoomController; + KoCanvasBase* m_canvas; + QPoint m_currentPoint; + QSizeF m_documentSize; + QList m_recentFiles; + qreal m_zoom; + +protected: + virtual void geometryChanged (const QRectF& newGeometry, const QRectF& oldGeometry); + +signals: + void docHeightChanged(); + void docWidthChanged(); + void cameraXChanged(); + void cameraYChanged(); + void needCanvasUpdate(); + void needsCanvasResize(const QSizeF canvasSize); + void zoomChanged(); +}; + +#endif // CACANVASCONTROLLER_H diff -Nru calligra-2.3.86/active/src/CADocumentController.cpp calligra-2.3.87/active/src/CADocumentController.cpp --- calligra-2.3.86/active/src/CADocumentController.cpp 1970-01-01 00:00:00.000000000 +0000 +++ calligra-2.3.87/active/src/CADocumentController.cpp 2012-01-28 07:04:47.000000000 +0000 @@ -0,0 +1,108 @@ +/* + * This file is part of the KDE project + * + * Copyright (C) 2011 Shantanu Tushar + * + * This program is free software; you can redistribute it and/or + * modify it under the terms of the GNU General Public License as + * published by the Free Software Foundation; either version 2 of + * the License, or (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program; if not, write to the Free Software + * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA + * 02110-1301 USA + */ + +#include "CADocumentController.h" + +#include "CACanvasController.h" +#include "CATextDocumentHandler.h" +#include "CASpreadsheetHandler.h" +#include "CAPresentationHandler.h" + +class CADocumentController::Private +{ +public: + Private() + { + canvasController = 0; + currentDocumentHandler = 0; + } + QString documentUri; + CACanvasController* canvasController; + QList documentHandlers; + CAAbstractDocumentHandler* currentDocumentHandler; +}; + +CADocumentController::CADocumentController (QObject* parent) + : QObject (parent) + , d (new Private()) +{ + d->documentHandlers.append (new CATextDocumentHandler (this)); + d->documentHandlers.append (new CASpreadsheetHandler (this)); + d->documentHandlers.append (new CAPresentationHandler (this)); +} + +CADocumentController::~CADocumentController() +{ + +} + +QString CADocumentController::documentUri() const +{ + return d->documentUri; +} + +void CADocumentController::setDocumentUri (const QString& uri) +{ + d->documentUri = uri; + emit documentUriChanged(); +} + +CACanvasController* CADocumentController::canvasController() const +{ + return d->canvasController; +} + +void CADocumentController::setCanvasController (CACanvasController* canvasController) +{ + d->canvasController = canvasController; + emit canvasControllerChanged(); +} + +void CADocumentController::loadDocument() +{ + Q_FOREACH (CAAbstractDocumentHandler * handler, d->documentHandlers) { + if (handler->canOpenDocument (documentUri())) { + if (handler->openDocument (documentUri())) { + d->currentDocumentHandler = handler; + emit documentTypeNameChanged(); + emit documentOpened(); + return; + } + } + } + + emit failedToOpenDocument(); +} + +QString CADocumentController::documentTypeName() const +{ + if (!d->currentDocumentHandler) { + return QString(); + } + return d->currentDocumentHandler->documentTypeName(); +} + +QObject* CADocumentController::documentHandler() +{ + return d->currentDocumentHandler; +} + +#include "CADocumentController.moc" diff -Nru calligra-2.3.86/active/src/CADocumentController.h calligra-2.3.87/active/src/CADocumentController.h --- calligra-2.3.86/active/src/CADocumentController.h 1970-01-01 00:00:00.000000000 +0000 +++ calligra-2.3.87/active/src/CADocumentController.h 2012-01-28 07:04:47.000000000 +0000 @@ -0,0 +1,65 @@ +/* + * This file is part of the KDE project + * + * Copyright (C) 2011 Shantanu Tushar + * + * This program is free software; you can redistribute it and/or + * modify it under the terms of the GNU General Public License as + * published by the Free Software Foundation; either version 2 of + * the License, or (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program; if not, write to the Free Software + * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA + * 02110-1301 USA + */ + +#ifndef CADOCUMENTCONTROLLER_H +#define CADOCUMENTCONTROLLER_H + +#include + +class CAAbstractDocumentHandler; +class CACanvasController; + +class CADocumentController : public QObject +{ + Q_OBJECT + Q_PROPERTY (QString documentUri READ documentUri WRITE setDocumentUri NOTIFY documentUriChanged) + Q_PROPERTY (CACanvasController* canvasController READ canvasController WRITE setCanvasController NOTIFY canvasControllerChanged) + Q_PROPERTY (QString documentTypeName READ documentTypeName NOTIFY documentTypeNameChanged) + +public: + explicit CADocumentController (QObject* parent = 0); + virtual ~CADocumentController(); + + void setDocumentUri (const QString& uri); + QString documentUri() const; + + CACanvasController* canvasController() const; + void setCanvasController (CACanvasController* canvasController); + + QString documentTypeName() const; + Q_INVOKABLE QObject* documentHandler(); + +signals: + void documentUriChanged(); + void canvasControllerChanged(); + void documentOpened(); + void documentTypeNameChanged(); + void failedToOpenDocument(); + +public slots: + void loadDocument(); + +private: + class Private; + Private* const d; +}; + +#endif // CADOCUMENTCONTROLLER_H diff -Nru calligra-2.3.86/active/src/CADocumentInfo.cpp calligra-2.3.87/active/src/CADocumentInfo.cpp --- calligra-2.3.86/active/src/CADocumentInfo.cpp 2012-01-07 03:25:00.000000000 +0000 +++ calligra-2.3.87/active/src/CADocumentInfo.cpp 2012-01-28 07:04:47.000000000 +0000 @@ -1,7 +1,7 @@ /* * This file is part of the KDE project * - * Copyright (C) 2011 Shantanu Tushar + * Copyright (C) 2011 Shantanu Tushar * * This program is free software; you can redistribute it and/or * modify it under the terms of the GNU General Public License as @@ -24,13 +24,13 @@ #include #include -CADocumentInfo::CADocumentInfo(QObject* parent): QObject(parent) +CADocumentInfo::CADocumentInfo (QObject* parent) : QObject (parent) { } -CADocumentInfo::CADocumentInfo(CADocumentInfo::DocumentType type, QString name, QString path, QObject* parent) - : QObject(parent), m_type(type), m_name(name), m_path(path) +CADocumentInfo::CADocumentInfo (CADocumentInfo::DocumentType type, QString name, QString path, QObject* parent) + : QObject (parent), m_type (type), m_name (name), m_path (path) { } @@ -50,25 +50,25 @@ return m_type; } -CADocumentInfo::DocumentType CADocumentInfo::documentTypeFromString(QString type) +CADocumentInfo::DocumentType CADocumentInfo::documentTypeFromString (QString type) { - return typeNameHash().key(type); + return typeNameHash().key (type); } -QString CADocumentInfo::stringFromDocumentType(CADocumentInfo::DocumentType type) +QString CADocumentInfo::stringFromDocumentType (CADocumentInfo::DocumentType type) { - return typeNameHash()[type]; + return typeNameHash() [type]; } -CADocumentInfo* CADocumentInfo::fromStringList(QStringList list) +CADocumentInfo* CADocumentInfo::fromStringList (QStringList list) { - return new CADocumentInfo(documentTypeFromString(list.at(0)), list.at(1), list.at(2)); + return new CADocumentInfo (documentTypeFromString (list.at (0)), list.at (1), list.at (2)); } QStringList CADocumentInfo::toStringList() const { QStringList list; - list << stringFromDocumentType(type()) << name() << path(); + list << stringFromDocumentType (type()) << name() << path(); return list; } @@ -82,7 +82,7 @@ return hash; } -bool CADocumentInfo::operator==(const CADocumentInfo& docInfo) +bool CADocumentInfo::operator== (const CADocumentInfo& docInfo) { return (docInfo.path() == m_path); } diff -Nru calligra-2.3.86/active/src/CADocumentInfo.h calligra-2.3.87/active/src/CADocumentInfo.h --- calligra-2.3.86/active/src/CADocumentInfo.h 2012-01-07 03:25:00.000000000 +0000 +++ calligra-2.3.87/active/src/CADocumentInfo.h 2012-01-28 07:04:47.000000000 +0000 @@ -1,7 +1,7 @@ /* * This file is part of the KDE project * - * Copyright (C) 2011 Shantanu Tushar + * Copyright (C) 2011 Shantanu Tushar * * This program is free software; you can redistribute it and/or * modify it under the terms of the GNU General Public License as @@ -30,31 +30,31 @@ class CADocumentInfo : public QObject { Q_OBJECT - Q_ENUMS(DocumentType) - Q_PROPERTY(DocumentType type READ type NOTIFY typeChanged) - Q_PROPERTY(QString name READ name NOTIFY nameChanged) - Q_PROPERTY(QString path READ path NOTIFY pathChanged) + Q_ENUMS (DocumentType) + Q_PROPERTY (DocumentType type READ type NOTIFY typeChanged) + Q_PROPERTY (QString name READ name NOTIFY nameChanged) + Q_PROPERTY (QString path READ path NOTIFY pathChanged) public: enum DocumentType { Undefined, TextDocument, Spreadsheet, Presentation }; - explicit CADocumentInfo(QObject* parent = 0); - explicit CADocumentInfo(DocumentType type, QString name, QString path, QObject* parent = 0); + explicit CADocumentInfo (QObject* parent = 0); + explicit CADocumentInfo (DocumentType type, QString name, QString path, QObject* parent = 0); DocumentType type() const; QString name() const; QString path() const; QStringList toStringList() const; - static CADocumentInfo *fromStringList(QStringList list); + static CADocumentInfo* fromStringList (QStringList list); - bool operator==(const CADocumentInfo &docInfo); + bool operator== (const CADocumentInfo& docInfo); private: DocumentType m_type; QString m_name; QString m_path; - static QString stringFromDocumentType(DocumentType type); - static DocumentType documentTypeFromString(QString type); + static QString stringFromDocumentType (DocumentType type); + static DocumentType documentTypeFromString (QString type); static QHash typeNameHash(); signals: diff -Nru calligra-2.3.86/active/src/CanvasController.cpp calligra-2.3.87/active/src/CanvasController.cpp --- calligra-2.3.86/active/src/CanvasController.cpp 2012-01-07 03:25:00.000000000 +0000 +++ calligra-2.3.87/active/src/CanvasController.cpp 1970-01-01 00:00:00.000000000 +0000 @@ -1,705 +0,0 @@ -/* - * This file is part of the KDE project - * - * Copyright (C) 2009 Nokia Corporation and/or its subsidiary(-ies). - * Copyright (C) 2010 Boudewijn Rempt - * Copyright (C) 2010-2011 Jarosław Staniek - * Copyright (C) 2011 Shantanu Tushar - * - * This program is free software; you can redistribute it and/or - * modify it under the terms of the GNU General Public License as - * published by the Free Software Foundation; either version 2 of - * the License, or (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with this program; if not, write to the Free Software - * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA - * 02110-1301 USA - */ - - -#include "CanvasController.h" - -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include "PAView.h" -#include -#include - -#include -#include -#include -#include -#include -#include -#include - -/*! -* extensions -*/ -const QString EXT_PPS("pps"); -const QString EXT_PPSX("ppsx"); -const QString EXT_PPT("ppt"); -const QString EXT_PPTX("pptx"); -const QString EXT_ODP("odp"); -const QString EXT_DOC("doc"); -const QString EXT_DOCX("docx"); -const QString EXT_ODT("odt"); -const QString EXT_TXT("txt"); -const QString EXT_RTF("rtf"); -const QString EXT_ODS("ods"); -const QString EXT_XLS("xls"); -const QString EXT_XLSX("xlsx"); - -CanvasController::CanvasController(QDeclarativeItem* parent) - : QDeclarativeItem(parent), KoCanvasController(0), m_zoomHandler(0), m_zoomController(0), - m_canvasItem(0), m_currentPoint(QPoint(0,0)), m_documentType(CADocumentInfo::Undefined), - m_documentSize(QSizeF(0,0)), m_doc(0), m_currentSlideNum(-1), m_paView(0), m_loadProgress(0) -{ - setFlag(QGraphicsItem::ItemHasNoContents, false); - setClip(true); - loadSettings(); - - QList texts; - m_find = new KoFindText(texts, this); - connect(m_find, SIGNAL(updateCanvas()), SLOT(updateCanvasItem())); - connect(m_find, SIGNAL(matchFound(KoFindMatch)), SLOT(findMatchFound(KoFindMatch))); - connect(m_find, SIGNAL(noMatchFound()), SLOT(findNoMatchFound())); -} - -void CanvasController::openDocument(const QString& path) -{ - QString error; - QString mimetype = KMimeType::findByPath(path)->name(); - m_doc = KMimeTypeTrader::createPartInstanceFromQuery(mimetype, 0, 0, QString(), - QVariantList(), &error); - if (!m_doc) { - kDebug() << "Doc can't be openend" << error; - return; - } - - QString fname(path); - QString ext = KMimeType::extractKnownExtension(fname); - - if (!ext.isEmpty()) { - fname.chop(ext.length() + 1); - } else { - kDebug() << "Extension detection failed. This is bad."; - } - - if (isPresentationDocumentExtension(ext)) { - m_documentType = CADocumentInfo::Presentation; - emit documentTypeChanged(); - - KPrDocument *prDocument = static_cast(m_doc); - prDocument->openUrl(KUrl(path)); - - m_canvasItem = dynamic_cast(prDocument->canvasItem()); - if (!m_canvasItem) { - kDebug() << "Failed to fetch a canvas item"; - return; - } - - KoToolManager::instance()->addController(this); - KoPACanvasItem *paCanvasItem = dynamic_cast(m_canvasItem); - - if (paCanvasItem) { - m_paView = new PAView(this, dynamic_cast(m_canvasItem), prDocument); - paCanvasItem->setView(m_paView); - - m_zoomController = m_paView->zoomController(); - m_zoomHandler = static_cast(paCanvasItem->viewConverter()); - - m_currentSlideNum = -1; - nextSlide(); - - // update the canvas whenever we scroll, the canvas controller must emit this signal on scrolling/panning - connect(proxyObject, SIGNAL(moveDocumentOffset(const QPoint&)), paCanvasItem, SLOT(slotSetDocumentOffset(QPoint))); - // whenever the size of the document viewed in the canvas changes, inform the zoom controller - connect(paCanvasItem, SIGNAL(documentSize(QSize)), this, SLOT(tellZoomControllerToSetDocumentSize(QSize))); - connect(paCanvasItem, SIGNAL(documentSize(QSize)), proxyObject, SLOT(updateDocumentSize(QSize))); - paCanvasItem->update(); - } - - setCanvas(m_canvasItem); - } else if (isSpreadsheetDocumentExtension(ext)) { - m_documentType = CADocumentInfo::Spreadsheet; - emit documentTypeChanged(); - - Calligra::Tables::Doc *tablesDoc = static_cast(m_doc); - tablesDoc->openUrl(KUrl(path)); - - m_canvasItem = dynamic_cast(m_doc->canvasItem()); - if (!m_canvasItem) { - kDebug() << "Failed to fetch a canvas item"; - return; - } - - KoToolManager::instance()->addController(this); - Calligra::Tables::CanvasItem *canvasItem = dynamic_cast(m_canvasItem); - - m_zoomHandler = new KoZoomHandler(); - m_zoomController = new KoZoomController(this, m_zoomHandler, tablesDoc->actionCollection()); - m_zoomController->setZoom(KoZoomMode::ZOOM_CONSTANT, 1.0); - - setCanvasMode(KoCanvasController::Spreadsheet); - - if (canvasItem) { - // update the canvas whenever we scroll, the canvas controller must emit this signal on scrolling/panning - connect(proxyObject, SIGNAL(moveDocumentOffset(const QPoint&)), canvasItem, SLOT(setDocumentOffset(QPoint))); - // whenever the size of the document viewed in the canvas changes, inform the zoom controller - connect(canvasItem, SIGNAL(documentSizeChanged(QSize)), this, SLOT(tellZoomControllerToSetDocumentSize(QSize))); - //connect(canvasItem, SIGNAL(documentSizeChanged(QSize)), - //proxyObject, SLOT(updateDocumentSize(QSize))); - canvasItem->update(); - } - - setCanvas(m_canvasItem); - } else { - m_documentType = CADocumentInfo::TextDocument; - emit documentTypeChanged(); - - kDebug() << "Trying to open the document"; - KWDocument *kwDoc = static_cast(m_doc); - kwDoc->openUrl(KUrl(path)); - - m_canvasItem = dynamic_cast(m_doc->canvasItem()); - if (!m_canvasItem) { - kDebug() << "Failed to fetch a canvas item"; - return; - } - - kDebug() << "Will now attempt to typecast"; - KoToolManager::instance()->addController(this); - KWCanvasItem *canvasItem = dynamic_cast(m_canvasItem); - - if (!canvasItem) { - kDebug() << "Failed to get KWCanvasItem"; - } - - m_zoomHandler = static_cast(m_canvasItem->viewConverter()); - m_zoomController = new KoZoomController(this, m_zoomHandler, m_doc->actionCollection()); - m_currentTextDocPage = kwDoc->pageManager()->begin(); - m_zoomController->setPageSize(m_currentTextDocPage.rect().size()); - m_zoomController->setZoom(KoZoomMode::ZOOM_CONSTANT, 1.0); - - if (canvasItem) { - canvasItem->updateSize(); - - // whenever the size of the document viewed in the canvas changes, inform the zoom controller - connect(canvasItem, SIGNAL(documentSize(QSizeF)), m_zoomController, SLOT(setDocumentSize(QSizeF))); - // update the canvas whenever we scroll, the canvas controller must emit this signal on scrolling/panning - connect(proxyObject, SIGNAL(moveDocumentOffset(const QPoint&)), canvasItem, SLOT(setDocumentOffset(QPoint))); - canvasItem->updateSize(); - } - - setCanvas(m_canvasItem); - - QList texts; - KoFindText::findTextInShapes(m_canvasItem->shapeManager()->shapes(), texts); - m_find->addDocuments(texts); - } - - kDebug() << "Requesting tool activation"; - KoToolManager::instance()->requestToolActivation(this); - //FIXME: doesn't work, no emits - connect(m_doc, SIGNAL(sigProgress(int)), SLOT(processLoadProgress(int))); - - kDebug() << "Trying to add to recent files"; - - bool recentFileAlreadyExists = false; - foreach(CADocumentInfo *docInfo, m_recentFiles) { - if (docInfo->path() == path) { - recentFileAlreadyExists = true; - break; - } - } - if (!recentFileAlreadyExists) { - m_recentFiles << new CADocumentInfo(m_documentType, QFileInfo(path).fileName(), path); - } - - emit sheetCountChanged(); - emit documentLoaded(); - kDebug() << "Everything done loading"; -} - -void CanvasController::setVastScrolling(qreal factor) -{ - kDebug() << factor; -} - -void CanvasController::setZoomWithWheel(bool zoom) -{ - kDebug() << zoom; -} - -void CanvasController::updateDocumentSize(const QSize& sz, bool recalculateCenter) -{ - m_documentSize = sz; - emit docHeightChanged(); - emit docWidthChanged(); - - qDebug() << sz << recalculateCenter; -} - -void CanvasController::setScrollBarValue(const QPoint& value) -{ - kDebug() << value; -} - -QPoint CanvasController::scrollBarValue() const -{ - return QPoint(); -} - -void CanvasController::pan(const QPoint& distance) -{ - kDebug() << distance; -} - -QPoint CanvasController::preferredCenter() const -{ - return QPoint(); -} - -void CanvasController::setPreferredCenter(const QPoint& viewPoint) -{ - kDebug() << viewPoint; -} - -void CanvasController::recenterPreferred() -{ -} - -void CanvasController::zoomTo(const QRect& rect) -{ - kDebug() << rect; -} - -void CanvasController::zoomBy(const QPoint& center, qreal zoom) -{ - kDebug() << center << zoom; -} - -void CanvasController::zoomOut(const QPoint& center) -{ - kDebug() << center; -} - -void CanvasController::zoomIn(const QPoint& center) -{ - kDebug() << center; -} - -void CanvasController::ensureVisible(KoShape* shape) -{ - setCameraX(shape->position().x()); - setCameraY(shape->position().y()); -} - -void CanvasController::ensureVisible(const QRectF& rect, bool smooth) -{ - kDebug() << rect << smooth; -} - -int CanvasController::canvasOffsetY() const -{ - ////kDebug() << "ASKING"; - return 0; -} - -int CanvasController::canvasOffsetX() const -{ - return 0; -} - -int CanvasController::visibleWidth() const -{ - ////kDebug() << "ASKING"; - return 0; -} - -int CanvasController::visibleHeight() const -{ - //kDebug() << "ASKING"; - return 0; -} - -KoCanvasBase* CanvasController::canvas() const -{ - ////kDebug() << "ASKING"; - return m_canvasItem; -} - -void CanvasController::setCanvas(KoCanvasBase* canvas) -{ - QGraphicsWidget *widget = canvas->canvasItem(); - widget->setParentItem(this); - canvas->setCanvasController(this); - widget->setVisible(true); - - zoomToFit(); -} - -void CanvasController::setDrawShadow(bool drawShadow) -{ - //kDebug() << "ASKING"; - kDebug() << drawShadow; -} - -QSize CanvasController::viewportSize() const -{ - //kDebug() << "ASKING"; - return QSize(); -} - -void CanvasController::scrollContentsBy(int dx, int dy) -{ - kDebug() << dx << dy; -} - -void CanvasController::scrollDown() -{ - return; - m_currentPoint.ry()+=50; - proxyObject->emitMoveDocumentOffset(m_currentPoint); - dynamic_cast(m_canvasItem)->update(); -} - -void CanvasController::scrollUp() -{ - return; - m_currentPoint.ry()-=50; - proxyObject->emitMoveDocumentOffset(m_currentPoint); - dynamic_cast(m_canvasItem)->update(); - -} - -bool CanvasController::isPresentationDocumentExtension(const QString& extension) const -{ - return 0 == QString::compare(extension, EXT_ODP, Qt::CaseInsensitive) - || 0 == QString::compare(extension, EXT_PPS, Qt::CaseInsensitive) - || 0 == QString::compare(extension, EXT_PPSX, Qt::CaseInsensitive) - || 0 == QString::compare(extension, EXT_PPT, Qt::CaseInsensitive) - || 0 == QString::compare(extension, EXT_PPTX, Qt::CaseInsensitive); -} - -bool CanvasController::isSpreadsheetDocumentExtension(const QString& extension) const -{ - return 0 == QString::compare(extension, EXT_ODS, Qt::CaseInsensitive) - || 0 == QString::compare(extension, EXT_XLS, Qt::CaseInsensitive) - || 0 == QString::compare(extension, EXT_XLSX, Qt::CaseInsensitive); -} - -int CanvasController::sheetCount() const -{ - if (m_canvasItem && m_documentType == CADocumentInfo::Spreadsheet) { - Calligra::Tables::CanvasItem *canvas = dynamic_cast(m_canvasItem); - return canvas->activeSheet()->map()->count(); - } else { - return 0; - } -} - -void CanvasController::tellZoomControllerToSetDocumentSize(QSize size) -{ - m_zoomController->setDocumentSize(size); - setDocumentSize(size); -} - -CADocumentInfo::DocumentType CanvasController::documentType() const -{ - return m_documentType; -} - -qreal CanvasController::docHeight() const -{ - if (m_zoomHandler) { - return m_documentSize.height()*m_zoomHandler->zoomFactorY(); - } else { - return m_documentSize.height(); - } -} - -qreal CanvasController::docWidth() const -{ - if (m_zoomHandler) { - return m_documentSize.width()*m_zoomHandler->zoomFactorX(); - } else { - return m_documentSize.width(); - } -} - -int CanvasController::cameraX() const -{ - return m_currentPoint.x(); -} - -int CanvasController::cameraY() const -{ - return m_currentPoint.y(); -} - -void CanvasController::setCameraX(int cameraX) -{ - m_currentPoint.setX(cameraX); - emit cameraXChanged(); - centerToCamera(); -} - -void CanvasController::setCameraY(int cameraY) -{ - m_currentPoint.setY(cameraY); - emit cameraYChanged(); - centerToCamera(); -} - -void CanvasController::centerToCamera() -{ - if (proxyObject) { - proxyObject->emitMoveDocumentOffset(m_currentPoint); - } - - updateCanvasItem(); -} - - -void CanvasController::nextSheet() -{ - Calligra::Tables::CanvasItem *canvasItem = dynamic_cast(m_canvasItem); - if (!canvasItem) - return; - Calligra::Tables::Sheet *sheet = canvasItem->activeSheet(); - if (!sheet) - return; - Calligra::Tables::DocBase *kspreadDoc = qobject_cast(m_doc); - if (!kspreadDoc) - return; - sheet = kspreadDoc->map()->nextSheet(sheet); - if (!sheet) - return; - canvasItem->setActiveSheet(sheet); - updateDocumentSize(sheet->cellCoordinatesToDocument(sheet->usedArea(false)).toRect().size(), false); -} - -void CanvasController::previousSheet() -{ - Calligra::Tables::CanvasItem *canvasItem = dynamic_cast(m_canvasItem); - if (!canvasItem) - return; - Calligra::Tables::Sheet *sheet = canvasItem->activeSheet(); - if (!sheet) - return; - Calligra::Tables::DocBase *kspreadDoc = dynamic_cast(m_doc); - if (!kspreadDoc) - return; - sheet = kspreadDoc->map()->previousSheet(sheet); - if (!sheet) - return; - canvasItem->setActiveSheet(sheet); - updateDocumentSize(sheet->cellCoordinatesToDocument(sheet->usedArea(false)).toRect().size(), false); -} - -void CanvasController::loadSettings() -{ - QSettings settings; - foreach(QString string, settings.value("recentFiles").toStringList()) { - m_recentFiles.append(CADocumentInfo::fromStringList(string.split(";"))); - } -} - -void CanvasController::saveSettings() -{ - QSettings settings; - QStringList list; - foreach(CADocumentInfo *docInfo, m_recentFiles) { - list << docInfo->toStringList().join(";"); - } - settings.setValue("recentFiles", list); -} - -CanvasController::~CanvasController() -{ - saveSettings(); -} - -void CanvasController::nextSlide() -{ - if (m_documentType != CADocumentInfo::Presentation) - return; - m_currentSlideNum++; - KPrDocument *prDocument = static_cast(m_doc); - if (m_currentSlideNum >= prDocument->pageCount()) - m_currentSlideNum = prDocument->pageCount()-1; - m_paView->doUpdateActivePage(prDocument->pageByIndex(m_currentSlideNum, false)); - zoomToFit(); -} - -void CanvasController::previousSlide() -{ - if (m_documentType != Presentation) - return; - m_currentSlideNum--; - KPrDocument *prDocument = static_cast(m_doc); - if (m_currentSlideNum < 0) - m_currentSlideNum = 0; - m_paView->doUpdateActivePage(prDocument->pageByIndex(m_currentSlideNum, false)); - zoomToFit(); -} - -void CanvasController::zoomToFit() -{ - QSizeF canvasSize(width(), height()); - - switch (documentType()) { - case CADocumentInfo::Presentation: { - QSizeF pageSize = m_paView->activePage()->boundingRect().size(); - QGraphicsWidget *canvasItem = m_canvasItem->canvasItem(); - QSizeF newSize(pageSize); - newSize.scale(canvasSize, Qt::KeepAspectRatio); - - if (canvasSize.width() < canvasSize.height()) { - canvasItem->setGeometry(0, (canvasSize.height()-newSize.height())/2, - newSize.width(), newSize.height()); - m_zoomHandler->setZoom(canvasSize.width()/pageSize.width()*0.75); - } else { - canvasItem->setGeometry((canvasSize.width()-newSize.width())/2, 0, - newSize.width(), newSize.height()); - m_zoomHandler->setZoom(canvasSize.height()/pageSize.height()*0.75); - } - - break; - } - case CADocumentInfo::TextDocument: { - KWDocument *doc = static_cast(m_doc); - KWPage currentPage = doc->pageManager()->page(qreal(cameraY())); - if (currentPage.isValid()) { - m_zoomHandler->setZoom(canvasSize.width()/currentPage.width()*0.75); - } - } - m_canvasItem->canvasItem()->setGeometry(0,0,width(),height()); - break; - case CADocumentInfo::Spreadsheet: - default: - m_canvasItem->canvasItem()->setGeometry(0,0,width(),height()); - } - - emit docHeightChanged(); - emit docWidthChanged(); -} - -void CanvasController::updateCanvasItem() -{ - if (m_canvasItem) { - switch (m_documentType) { - case CADocumentInfo::TextDocument: - dynamic_cast(m_canvasItem)->update(); - break; - case CADocumentInfo::Spreadsheet: - dynamic_cast(m_canvasItem)->update(); - updateDocumentSizeForActiveSheet(); - break; - case CADocumentInfo::Presentation: - dynamic_cast(m_canvasItem)->update(); - break; - } - } -} - -void CanvasController::processLoadProgress (int value) -{ - m_loadProgress = value; - emit loadProgressChanged(); - if (value == 100) { - switch (m_documentType) { - case CADocumentInfo::Presentation: - updateDocumentSizeForActiveSheet(); - break; - } - } -} - -int CanvasController::loadProgress() const -{ - return m_loadProgress; -} - -void CanvasController::updateDocumentSizeForActiveSheet() -{ - if (m_documentType != CADocumentInfo::Spreadsheet) - return; - Calligra::Tables::Sheet *sheet = dynamic_cast(m_canvasItem)->activeSheet(); - updateDocumentSize(sheet->cellCoordinatesToDocument(sheet->usedArea(false)).toRect().size(), false); -} - -void CanvasController::geometryChanged (const QRectF& newGeometry, const QRectF& oldGeometry) -{ - if (m_canvasItem) { - QGraphicsWidget *widget = m_canvasItem->canvasItem(); - widget->setParentItem(this); - widget->setVisible(true); - widget->setGeometry(newGeometry); - - zoomToFit(); - } - QDeclarativeItem::geometryChanged (newGeometry, oldGeometry); -} - -QString CanvasController::searchString() const -{ - return m_searchString; -} - -void CanvasController::setSearchString(const QString& string) -{ - m_searchString = string; - - if (m_documentType == CADocumentInfo::TextDocument) { - if (m_find) { - m_find->find(m_searchString); - } - } - - emit searchStringChanged(); -} - -void CanvasController::findMatchFound(const KoFindMatch &match) -{ - if (m_documentType != CADocumentInfo::TextDocument) { - return; - } - QTextCursor cursor = match.location().value(); - cursor.position(); - KWDocument *doc = qobject_cast(m_doc); - doc; -} - -void CanvasController::findNoMatchFound() -{ - kDebug() << "FIND NO MATCH"; -} - -#include "CanvasController.moc" diff -Nru calligra-2.3.86/active/src/CanvasController.h calligra-2.3.87/active/src/CanvasController.h --- calligra-2.3.86/active/src/CanvasController.h 2012-01-07 03:25:00.000000000 +0000 +++ calligra-2.3.87/active/src/CanvasController.h 1970-01-01 00:00:00.000000000 +0000 @@ -1,150 +0,0 @@ -/* - * This file is part of the KDE project - * - * Copyright (C) 2011 Shantanu Tushar - * - * This program is free software; you can redistribute it and/or - * modify it under the terms of the GNU General Public License as - * published by the Free Software Foundation; either version 2 of - * the License, or (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with this program; if not, write to the Free Software - * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA - * 02110-1301 USA - */ - - -#ifndef CANVASCONTROLLER_H -#define CANVASCONTROLLER_H - -#include "KoCanvasController.h" -#include "CADocumentInfo.h" - -#include -#include - -class KoFindText; -class KWPage; -class PAView; -class KoDocument; -class KoCanvasBase; -class KoZoomController; -class KoZoomHandler; -class KoFindMatch; - -class CanvasController : public QDeclarativeItem, KoCanvasController -{ - Q_OBJECT - - Q_PROPERTY(int sheetCount READ sheetCount NOTIFY sheetCountChanged) - Q_PROPERTY(qreal docHeight READ docHeight NOTIFY docHeightChanged) - Q_PROPERTY(qreal docWidth READ docWidth NOTIFY docWidthChanged) - Q_PROPERTY(int cameraX READ cameraX WRITE setCameraX NOTIFY cameraXChanged) - Q_PROPERTY(int cameraY READ cameraY WRITE setCameraY NOTIFY cameraYChanged) - Q_PROPERTY(CADocumentInfo::DocumentType documentType READ documentType NOTIFY documentTypeChanged) - Q_PROPERTY(int loadProgress READ loadProgress NOTIFY loadProgressChanged) - Q_PROPERTY(QString searchString READ searchString WRITE setSearchString NOTIFY searchStringChanged) - -public: - - explicit CanvasController(QDeclarativeItem *parent = 0); - virtual ~CanvasController(); - virtual void setVastScrolling(qreal factor); - virtual void setZoomWithWheel(bool zoom); - virtual void updateDocumentSize(const QSize& sz, bool recalculateCenter); - virtual void setScrollBarValue(const QPoint& value); - virtual QPoint scrollBarValue() const; - virtual void pan(const QPoint& distance); - virtual QPoint preferredCenter() const; - virtual void setPreferredCenter(const QPoint& viewPoint); - virtual void recenterPreferred(); - virtual void zoomTo(const QRect& rect); - virtual void zoomBy(const QPoint& center, qreal zoom); - virtual void zoomOut(const QPoint& center); - virtual void zoomIn(const QPoint& center); - virtual void ensureVisible(KoShape* shape); - virtual void ensureVisible(const QRectF& rect, bool smooth = false); - virtual int canvasOffsetY() const; - virtual int canvasOffsetX() const; - virtual int visibleWidth() const; - virtual int visibleHeight() const; - virtual KoCanvasBase* canvas() const; - virtual void setCanvas(KoCanvasBase* canvas); - virtual void setDrawShadow(bool drawShadow); - virtual QSize viewportSize() const; - virtual void scrollContentsBy(int dx, int dy); - - int sheetCount() const; - CADocumentInfo::DocumentType documentType() const; - qreal docWidth() const; - qreal docHeight() const; - int cameraX() const; - int cameraY() const; - void setCameraX(int cameraX); - void setCameraY(int cameraY); - int loadProgress() const; - QString searchString() const; - void setSearchString(const QString &string); - -public slots: - void openDocument(const QString &path); - void scrollDown(); - void scrollUp(); - void tellZoomControllerToSetDocumentSize(QSize size); - void centerToCamera(); - void nextSheet(); - void previousSheet(); - void nextSlide(); - void previousSlide(); - void zoomToFit(); - -private slots: - void processLoadProgress(int value); - void updateCanvasItem(); - void findMatchFound(const KoFindMatch& match); - void findNoMatchFound(); - -private: - KoZoomHandler *m_zoomHandler; - KoZoomController *m_zoomController; - KoCanvasBase * m_canvasItem; - QPoint m_currentPoint; - CADocumentInfo::DocumentType m_documentType; - QSizeF m_documentSize; - KoDocument *m_doc; - QList m_recentFiles; - int m_currentSlideNum; - PAView *m_paView; - KWPage m_currentTextDocPage; - int m_loadProgress; - QString m_searchString; - KoFindText *m_find; - - void loadSettings(); - void saveSettings(); - inline void updateDocumentSizeForActiveSheet(); - -protected: - bool isPresentationDocumentExtension(const QString& extension) const; - bool isSpreadsheetDocumentExtension(const QString& extension) const; - virtual void geometryChanged (const QRectF& newGeometry, const QRectF& oldGeometry); - -signals: - void sheetCountChanged(); - void docHeightChanged(); - void docWidthChanged(); - void cameraXChanged(); - void cameraYChanged(); - void documentTypeChanged(); - void documentLoaded(); - void loadProgressChanged(); - void searchStringChanged(); -}; - -#endif // CANVASCONTROLLER_H diff -Nru calligra-2.3.86/active/src/CAPAView.cpp calligra-2.3.87/active/src/CAPAView.cpp --- calligra-2.3.86/active/src/CAPAView.cpp 1970-01-01 00:00:00.000000000 +0000 +++ calligra-2.3.87/active/src/CAPAView.cpp 2012-01-28 07:04:47.000000000 +0000 @@ -0,0 +1,194 @@ +/* + * This file is part of the KDE project + * + * Copyright (C) 2006-2009 Thorsten Zachmann + * Copyright (C) 2007 Thomas Zander + * Copyright (C) 2009 Inge Wallin + * Copyright (C) 2010 Boudewijn Rempt + * Copyright (C) 2011 Shantanu Tushar + * + * This program is free software; you can redistribute it and/or + * modify it under the terms of the GNU General Public License as + * published by the Free Software Foundation; either version 2 of + * the License, or (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program; if not, write to the Free Software + * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA + * 02110-1301 USA + */ + +#include "CAPAView.h" +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include + +CAPAView::CAPAView (KoCanvasController* canvasController, KoPACanvasBase* canvas, KPrDocument* prDocument) + : m_canvasController (canvasController), m_paCanvas (canvas), m_prDocument (prDocument), m_page (0) +{ + KoPAViewModeNormal* mode = new KoPAViewModeNormal (this, m_paCanvas); + setViewMode (mode); + m_zoomController = new KoZoomController (canvasController, static_cast (viewConverter()), + prDocument->actionCollection()); + connect (m_zoomController, SIGNAL (zoomChanged (KoZoomMode::Mode, qreal)), SLOT (slotZoomChanged (KoZoomMode::Mode, qreal))); +} + +CAPAView::~CAPAView() +{ + +} + +void CAPAView::setShowRulers (bool show) +{ + +} + +void CAPAView::editPaste() +{ + +} + +void CAPAView::pagePaste() +{ + +} + +void CAPAView::insertPage() +{ + +} + +void CAPAView::updatePageNavigationActions() +{ + +} + +void CAPAView::setActionEnabled (int actions, bool enable) +{ + +} + +void CAPAView::navigatePage (KoPageApp::PageNavigation pageNavigation) +{ + +} + +KoPAPageBase* CAPAView::activePage() const +{ + return m_page; +} + +void CAPAView::setActivePage (KoPAPageBase* page) +{ + KoShapeManager* shapeManager = m_paCanvas->shapeManager(); + KoShapeManager* masterShapeManager = m_paCanvas->masterShapeManager(); + shapeManager->removeAdditional (m_page); + m_page = page; + shapeManager->addAdditional (page); + QList shapes = page->shapes(); + shapeManager->setShapes (shapes, KoShapeManager::AddWithoutRepaint); + //Make the top most layer active + if (!shapes.isEmpty()) { + KoShapeLayer* layer = dynamic_cast (shapes.last()); + shapeManager->selection()->setActiveLayer (layer); + } + + // if the page is not a master page itself set shapes of the master page + KoPAPage* paPage = dynamic_cast (page); + if (paPage) { + KoPAMasterPage* masterPage = paPage->masterPage(); + QList masterShapes = masterPage->shapes(); + masterShapeManager->setShapes (masterShapes, KoShapeManager::AddWithoutRepaint); + //Make the top most layer active + if (!masterShapes.isEmpty()) { + KoShapeLayer* layer = dynamic_cast (masterShapes.last()); + masterShapeManager->selection()->setActiveLayer (layer); + } + } else { + // if the page is a master page no shapes are in the masterShapeManager + masterShapeManager->setShapes (QList()); + } + + // Set the current page number in the canvas resource provider + m_paCanvas->resourceManager()->setResource (KoCanvasResourceManager::CurrentPage, m_prDocument->pageIndex (page) + 1); +} + +void CAPAView::doUpdateActivePage (KoPAPageBase* page) +{ + // save the old offset into the page so we can use it also on the new page + setActivePage (page); + + m_paCanvas->updateSize(); + KoPageLayout& layout = page->pageLayout(); + + QSizeF pageSize (layout.width, layout.height); + //m_paCanvas->setDocumentOrigin(QPointF(layout.width, layout.height)); + m_paCanvas->setDocumentOrigin (QPointF (0, 0)); + // the page is in the center of the canvas + m_zoomController->setDocumentSize (pageSize * 3); + m_zoomController->setPageSize (pageSize); + m_paCanvas->resourceManager()->setResource (KoCanvasResourceManager::PageSize, pageSize); + QGraphicsItem* item = dynamic_cast (m_paCanvas); + item->update(); + + proxyObject->emitActivePageChanged(); +} + +KoZoomController* CAPAView::zoomController() const +{ + return m_zoomController; +} + +KoPADocument* CAPAView::kopaDocument() const +{ + return m_prDocument; +} + +KoPACanvasBase* CAPAView::kopaCanvas() const +{ + return m_paCanvas; +} + +void CAPAView::slotZoomChanged (KoZoomMode::Mode mode, qreal zoom) +{ + Q_UNUSED (zoom); + if (m_page) { + if (mode == KoZoomMode::ZOOM_PAGE) { + KoPageLayout& layout = m_page->pageLayout(); + QRectF pageRect (0, 0, layout.width, layout.height); + m_canvasController->ensureVisible (m_paCanvas->viewConverter()->documentToView (pageRect)); + } else if (mode == KoZoomMode::ZOOM_WIDTH) { + // horizontally center the page + KoPageLayout& layout = m_page->pageLayout(); + QRectF pageRect (0, 0, layout.width, layout.height); + QRect viewRect = m_paCanvas->viewConverter()->documentToView (pageRect).toRect(); + viewRect.translate (m_paCanvas->documentOrigin()); + QRect currentVisible (qMax (0, -m_canvasController->canvasOffsetX()), + qMax (0, -m_canvasController->canvasOffsetY()), + m_canvasController->visibleWidth(), + m_canvasController->visibleHeight()); + int horizontalMove = viewRect.center().x() - currentVisible.center().x(); + m_canvasController->pan (QPoint (horizontalMove, 0)); + } + dynamic_cast (m_paCanvas)->update(); + } +} + +#include "CAPAView.moc" diff -Nru calligra-2.3.86/active/src/CAPAView.h calligra-2.3.87/active/src/CAPAView.h --- calligra-2.3.86/active/src/CAPAView.h 1970-01-01 00:00:00.000000000 +0000 +++ calligra-2.3.87/active/src/CAPAView.h 2012-01-28 07:04:47.000000000 +0000 @@ -0,0 +1,64 @@ +/* + * This file is part of the KDE project + * + * Copyright (C) 2011 Shantanu Tushar + * + * This program is free software; you can redistribute it and/or + * modify it under the terms of the GNU General Public License as + * published by the Free Software Foundation; either version 2 of + * the License, or (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program; if not, write to the Free Software + * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA + * 02110-1301 USA + */ + +#ifndef CAPAVIEW_H +#define CAPAVIEW_H + +#include +#include + +class KoCanvasController; +class KoZoomMode; +class KPrDocument; +class KoPACanvasBase; + +class CAPAView : public QObject, public KoPAViewBase +{ + Q_OBJECT +public: + CAPAView (KoCanvasController* canvasController, KoPACanvasBase* canvas, KPrDocument* prDocument); + virtual ~CAPAView(); + virtual void setShowRulers (bool show); + virtual void editPaste(); + virtual void pagePaste(); + virtual void insertPage(); + virtual void updatePageNavigationActions(); + virtual void setActionEnabled (int actions, bool enable); + virtual void navigatePage (KoPageApp::PageNavigation pageNavigation); + virtual KoPAPageBase* activePage() const; + virtual void setActivePage (KoPAPageBase* page); + virtual void doUpdateActivePage (KoPAPageBase* page); + virtual KoZoomController* zoomController() const; + virtual KoPADocument* kopaDocument() const; + virtual KoPACanvasBase* kopaCanvas() const; + +private: + KoCanvasController* m_canvasController; + KoPACanvasBase* m_paCanvas; + KPrDocument* m_prDocument; + KoZoomController* m_zoomController; + KoPAPageBase* m_page; + +private slots: + void slotZoomChanged (KoZoomMode::Mode mode, qreal zoom); +}; + +#endif // CAPAVIEW_H diff -Nru calligra-2.3.86/active/src/CAPresentationHandler.cpp calligra-2.3.87/active/src/CAPresentationHandler.cpp --- calligra-2.3.86/active/src/CAPresentationHandler.cpp 1970-01-01 00:00:00.000000000 +0000 +++ calligra-2.3.87/active/src/CAPresentationHandler.cpp 2012-01-28 14:26:27.000000000 +0000 @@ -0,0 +1,215 @@ +/* + * This file is part of the KDE project + * + * Copyright (C) 2011 Shantanu Tushar + * + * This program is free software; you can redistribute it and/or + * modify it under the terms of the GNU General Public License as + * published by the Free Software Foundation; either version 2 of + * the License, or (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program; if not, write to the Free Software + * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA + * 02110-1301 USA + */ + +#include "CAPresentationHandler.h" +#include "CAPAView.h" +#include "CADocumentController.h" +#include "CACanvasController.h" + +#include + +#include +#include + +#include +#include +#include +#include +#include + +#include +#include +#include + +#include + +class CAPresentationHandler::Private +{ +public: + KPrDocument* document; + CAPAView* paView; + int currentSlideNum; +}; + +CAPresentationHandler::CAPresentationHandler (CADocumentController* documentController) + : CAAbstractDocumentHandler (documentController) + , d (new Private()) +{ +} + +CAPresentationHandler::~CAPresentationHandler() +{ + delete d; +} + +KoDocument* CAPresentationHandler::document() +{ + return d->document; +} + +bool CAPresentationHandler::openDocument (const QString& uri) +{ + QString error; + QString mimetype = KMimeType::findByPath (uri)->name(); + KoDocument* doc = KMimeTypeTrader::createPartInstanceFromQuery (mimetype, 0, 0, QString(), + QVariantList(), &error); + + if (!doc) { + kDebug() << "Doc can't be openend" << error; + return false; + } + + d->document = static_cast (doc); + d->document->openUrl (KUrl (uri)); + + KoCanvasBase* paCanvas = dynamic_cast (d->document->canvasItem()); + KoPACanvasItem* paCanvasItem = dynamic_cast (paCanvas); + if (!paCanvasItem) { + kDebug() << "Failed to fetch a canvas item"; + return false; + } + + if (paCanvasItem) { + d->paView = new CAPAView (documentController()->canvasController(), dynamic_cast (paCanvas), + d->document); + paCanvasItem->setView (d->paView); + + documentController()->canvasController()->setZoomController (d->paView->zoomController()); + documentController()->canvasController()->setZoomHandler (static_cast (paCanvasItem->viewConverter())); + + // update the canvas whenever we scroll, the canvas controller must emit this signal on scrolling/panning + connect (documentController()->canvasController()->canvasControllerProxyObject(), + SIGNAL (moveDocumentOffset (const QPoint&)), paCanvasItem, SLOT (slotSetDocumentOffset (QPoint))); + // whenever the size of the document viewed in the canvas changes, inform the zoom controller + connect (paCanvasItem, SIGNAL (documentSize (QSize)), this, SLOT (tellZoomControllerToSetDocumentSize (QSize))); + connect (paCanvasItem, SIGNAL (documentSize (QSize)), + documentController()->canvasController()->canvasControllerProxyObject(), + SLOT (updateDocumentSize (QSize))); + + paCanvasItem->update(); + } + + setCanvas (paCanvas); + KoToolManager::instance()->addController (documentController()->canvasController()); + + connect(documentController()->canvasController(), SIGNAL(needsCanvasResize(QSizeF)), SLOT(resizeCanvas(QSizeF))); + connect (documentController()->canvasController(), SIGNAL (needCanvasUpdate()), SLOT (updateCanvas())); + + d->currentSlideNum = -1; + nextSlide(); + + return true; +} + +QStringList CAPresentationHandler::supportedMimetypes() +{ + QStringList supportedTypes; + supportedTypes << "application/vnd.oasis.opendocument.presentation" << "application/vnd.ms-powerpoint"; + return supportedTypes; +} + +void CAPresentationHandler::nextSlide() +{ + d->currentSlideNum++; + + if (d->currentSlideNum >= d->document->pageCount()) + d->currentSlideNum = d->document->pageCount() - 1; + d->paView->doUpdateActivePage (d->document->pageByIndex (d->currentSlideNum, false)); + zoomToFit(); +} + +void CAPresentationHandler::previousSlide() +{ + d->currentSlideNum--; + + if (d->currentSlideNum < 0) + d->currentSlideNum = 0; + d->paView->doUpdateActivePage (d->document->pageByIndex (d->currentSlideNum, false)); + zoomToFit(); +} + +void CAPresentationHandler::zoomToFit() +{ + QSizeF canvasSize (documentController()->canvasController()->width(), + documentController()->canvasController()->height()); + + QSizeF pageSize = d->paView->activePage()->boundingRect().size(); + QGraphicsWidget* canvasItem = canvas()->canvasItem(); + QSizeF newSize (pageSize); + newSize.scale (canvasSize, Qt::KeepAspectRatio); + + KoZoomHandler* zoomHandler = documentController()->canvasController()->zoomHandler(); + + if (canvasSize.width() < canvasSize.height()) { + canvasItem->setGeometry (0, (canvasSize.height() - newSize.height()) / 2, + newSize.width(), newSize.height()); + zoomHandler->setZoom (canvasSize.width() / pageSize.width() * 0.75); + } else { + canvasItem->setGeometry ( (canvasSize.width() - newSize.width()) / 2, 0, + newSize.width(), newSize.height()); + zoomHandler->setZoom (canvasSize.height() / pageSize.height() * 0.75); + } +} + +void CAPresentationHandler::tellZoomControllerToSetDocumentSize (const QSize& size) +{ + documentController()->canvasController()->zoomController()->setDocumentSize (size); +} + +void CAPresentationHandler::updateCanvas() +{ + dynamic_cast (canvas())->update(); +} + +QString CAPresentationHandler::documentTypeName() +{ + return "presentation"; +} + +void CAPresentationHandler::resizeCanvas (const QSizeF& canvasSize) +{ + QSizeF pageSize = d->paView->activePage()->boundingRect().size(); + QGraphicsWidget* canvasItem = canvas()->canvasItem(); + QSizeF newSize (pageSize); + newSize.scale (canvasSize, Qt::KeepAspectRatio); + + if (canvasSize.width() < canvasSize.height()) { + canvasItem->setGeometry (0, (canvasSize.height() - newSize.height()) / 2, + newSize.width(), newSize.height()); + documentController()->canvasController()->zoomHandler()->setZoom (canvasSize.width() / pageSize.width() * 0.75); + } else { + canvasItem->setGeometry ( (canvasSize.width() - newSize.width()) / 2, 0, + newSize.width(), newSize.height()); + documentController()->canvasController()->zoomHandler()->setZoom (canvasSize.height() / pageSize.height() * 0.75); + } +} + +QString CAPresentationHandler::leftToolbarSource() const +{ + return "PresentationLeftToolbar.qml"; +} + +QString CAPresentationHandler::rightToolbarSource() const +{ + return "PresentationRightToolbar.qml"; +} + +#include "CAPresentationHandler.moc" diff -Nru calligra-2.3.86/active/src/CAPresentationHandler.h calligra-2.3.87/active/src/CAPresentationHandler.h --- calligra-2.3.86/active/src/CAPresentationHandler.h 1970-01-01 00:00:00.000000000 +0000 +++ calligra-2.3.87/active/src/CAPresentationHandler.h 2012-01-28 14:26:27.000000000 +0000 @@ -0,0 +1,60 @@ +/* + * This file is part of the KDE project + * + * Copyright (C) 2011 Shantanu Tushar + * + * This program is free software; you can redistribute it and/or + * modify it under the terms of the GNU General Public License as + * published by the Free Software Foundation; either version 2 of + * the License, or (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program; if not, write to the Free Software + * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA + * 02110-1301 USA + */ + +#ifndef CAPRESENTATIONHANDLER_H +#define CAPRESENTATIONHANDLER_H + +#include "CAAbstractDocumentHandler.h" + +class QSize; +class QSizeF; + +class CAPresentationHandler : public CAAbstractDocumentHandler +{ + Q_OBJECT +public: + explicit CAPresentationHandler (CADocumentController* documentController); + virtual ~CAPresentationHandler(); + virtual bool openDocument (const QString& uri); + virtual QStringList supportedMimetypes(); + virtual QString documentTypeName(); + + virtual QString rightToolbarSource() const; + virtual QString leftToolbarSource() const; + +public slots: + void tellZoomControllerToSetDocumentSize(const QSize &size); + + void nextSlide(); + void previousSlide(); + void zoomToFit(); + void updateCanvas(); + void resizeCanvas(const QSizeF &canvasSize); + +protected: + virtual KoDocument* document(); + +private: + class Private; + Private * const d; +}; + +#endif // CAPRESENTATIONHANDLER_H diff -Nru calligra-2.3.86/active/src/CASpreadsheetHandler.cpp calligra-2.3.87/active/src/CASpreadsheetHandler.cpp --- calligra-2.3.86/active/src/CASpreadsheetHandler.cpp 1970-01-01 00:00:00.000000000 +0000 +++ calligra-2.3.87/active/src/CASpreadsheetHandler.cpp 2012-01-28 14:26:27.000000000 +0000 @@ -0,0 +1,201 @@ +/* + * This file is part of the KDE project + * + * Copyright (C) 2011 Shantanu Tushar + * + * This program is free software; you can redistribute it and/or + * modify it under the terms of the GNU General Public License as + * published by the Free Software Foundation; either version 2 of + * the License, or (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program; if not, write to the Free Software + * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA + * 02110-1301 USA + */ + +#include "CASpreadsheetHandler.h" +#include "CADocumentController.h" +#include "CACanvasController.h" + +#include +#include +#include +#include +#include + +#include +#include +#include +#include +#include + +#include +#include + +class CASpreadsheetHandler::Private +{ +public: + Calligra::Tables::Doc* document; +}; + +CASpreadsheetHandler::CASpreadsheetHandler (CADocumentController* documentController) + : CAAbstractDocumentHandler (documentController) + , d (new Private()) +{ +} + +CASpreadsheetHandler::~CASpreadsheetHandler() +{ + delete d; +} + +KoDocument* CASpreadsheetHandler::document() +{ + return d->document; +} + +bool CASpreadsheetHandler::openDocument (const QString& uri) +{ + QString error; + QString mimetype = KMimeType::findByPath (uri)->name(); + KoDocument* doc = KMimeTypeTrader::createPartInstanceFromQuery (mimetype, 0, 0, QString(), + QVariantList(), &error); + + if (!doc) { + kDebug() << "Doc can't be openend" << error; + return false; + } + + d->document = static_cast (doc); + d->document->openUrl (KUrl (uri)); + + setCanvas (dynamic_cast (doc->canvasItem())); + KoToolManager::instance()->addController (documentController()->canvasController()); + Calligra::Tables::CanvasItem* canvasItem = dynamic_cast (canvas()); + + if (!canvasItem) { + kDebug() << "Failed to fetch a canvas item"; + return false; + } + + KoZoomHandler* zoomHandler = new KoZoomHandler(); + documentController()->canvasController()->setZoomHandler (zoomHandler); + KoZoomController* zoomController = new KoZoomController (dynamic_cast (documentController()->canvasController()), + zoomHandler, d->document->actionCollection()); + documentController()->canvasController()->setZoomController (zoomController); + zoomController->setZoom (KoZoomMode::ZOOM_CONSTANT, 1.0); + + documentController()->canvasController()->setCanvasMode (KoCanvasController::Spreadsheet); + + if (canvasItem) { + // update the canvas whenever we scroll, the canvas controller must emit this signal on scrolling/panning + connect (documentController()->canvasController()->canvasControllerProxyObject(), + SIGNAL (moveDocumentOffset (const QPoint&)), canvasItem, SLOT (setDocumentOffset (QPoint))); + // whenever the size of the document viewed in the canvas changes, inform the zoom controller + connect (canvasItem, SIGNAL (documentSizeChanged (QSize)), this, SLOT (tellZoomControllerToSetDocumentSize (QSize))); + canvasItem->update(); + } + + connect (documentController()->canvasController(), SIGNAL (needsCanvasResize (QSizeF)), SLOT (resizeCanvas (QSizeF))); + connect (documentController()->canvasController(), SIGNAL (needCanvasUpdate()), SLOT (updateCanvas())); + + updateCanvas(); + documentController()->canvasController()->zoomToFit(); + + return true; +} + +QStringList CASpreadsheetHandler::supportedMimetypes() +{ + QStringList supportedTypes; + supportedTypes << "application/vnd.oasis.opendocument.spreadsheet" << "application/vnd.ms-excel"; + return supportedTypes; +} + +void CASpreadsheetHandler::tellZoomControllerToSetDocumentSize (QSize size) +{ + documentController()->canvasController()->zoomController()->setDocumentSize (size); +} + +void CASpreadsheetHandler::updateCanvas() +{ + dynamic_cast (canvas())->update(); + updateDocumentSizeForActiveSheet(); +} + +void CASpreadsheetHandler::updateDocumentSizeForActiveSheet() +{ + Calligra::Tables::Sheet* sheet = dynamic_cast (canvas())->activeSheet(); + //FIXME 1.5 is a hack to "fix" the wrong values below. Why is it wrong? + documentController()->canvasController()->updateDocumentSize ( + sheet->cellCoordinatesToDocument (sheet->usedArea (false)).toRect().size()*1.5, false); +} + +QString CASpreadsheetHandler::documentTypeName() +{ + return "spreadsheet"; +} + +void CASpreadsheetHandler::nextSheet() +{ + Calligra::Tables::CanvasItem* canvasItem = dynamic_cast (canvas()); + if (!canvasItem) + return; + Calligra::Tables::Sheet* sheet = canvasItem->activeSheet(); + if (!sheet) + return; + Calligra::Tables::DocBase* kspreadDoc = qobject_cast (document()); + if (!kspreadDoc) + return; + sheet = kspreadDoc->map()->nextSheet (sheet); + if (!sheet) + return; + canvasItem->setActiveSheet (sheet); + documentController()->canvasController()->updateDocumentSize (sheet->cellCoordinatesToDocument (sheet->usedArea (false)).toRect().size(), false); +} + +void CASpreadsheetHandler::previousSheet() +{ + Calligra::Tables::CanvasItem* canvasItem = dynamic_cast (canvas()); + if (!canvasItem) + return; + Calligra::Tables::Sheet* sheet = canvasItem->activeSheet(); + if (!sheet) + return; + Calligra::Tables::DocBase* kspreadDoc = dynamic_cast (document()); + if (!kspreadDoc) + return; + sheet = kspreadDoc->map()->previousSheet (sheet); + if (!sheet) + return; + canvasItem->setActiveSheet (sheet); + documentController()->canvasController()->updateDocumentSize (sheet->cellCoordinatesToDocument (sheet->usedArea (false)).toRect().size(), false); +} + +void CASpreadsheetHandler::resizeCanvas (const QSizeF& canvasSize) +{ + canvas()->canvasItem()->setGeometry (QRectF (QPointF (0, 0), canvasSize)); +} + +int CASpreadsheetHandler::sheetCount() const +{ + return dynamic_cast (canvas())->activeSheet()->map()->count(); +} + +QString CASpreadsheetHandler::leftToolbarSource() const +{ + return "SpreadsheetLeftToolbar.qml"; +} + +QString CASpreadsheetHandler::rightToolbarSource() const +{ + return "SpreadsheetRightToolbar.qml"; +} + +#include "CASpreadsheetHandler.moc" diff -Nru calligra-2.3.86/active/src/CASpreadsheetHandler.h calligra-2.3.87/active/src/CASpreadsheetHandler.h --- calligra-2.3.86/active/src/CASpreadsheetHandler.h 1970-01-01 00:00:00.000000000 +0000 +++ calligra-2.3.87/active/src/CASpreadsheetHandler.h 2012-01-28 14:26:27.000000000 +0000 @@ -0,0 +1,62 @@ +/* + * This file is part of the KDE project + * + * Copyright (C) 2011 Shantanu Tushar + * + * This program is free software; you can redistribute it and/or + * modify it under the terms of the GNU General Public License as + * published by the Free Software Foundation; either version 2 of + * the License, or (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program; if not, write to the Free Software + * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA + * 02110-1301 USA + */ + +#ifndef CASPREADSHEETHANDLER_H +#define CASPREADSHEETHANDLER_H + +#include "CAAbstractDocumentHandler.h" + +#include + +class CASpreadsheetHandler : public CAAbstractDocumentHandler +{ + Q_OBJECT +protected: + virtual KoDocument* document(); + +public: + explicit CASpreadsheetHandler (CADocumentController* documentController); + virtual ~CASpreadsheetHandler(); + + virtual bool openDocument (const QString& uri); + virtual QStringList supportedMimetypes(); + virtual QString documentTypeName(); + Q_INVOKABLE int sheetCount() const; + + virtual QString rightToolbarSource() const; + virtual QString leftToolbarSource() const; + +public slots: + void tellZoomControllerToSetDocumentSize(QSize size); + void updateCanvas(); + void resizeCanvas(const QSizeF &canvasSize); + + void nextSheet(); + void previousSheet(); + +private: + class Private; + Private * const d; + + void updateDocumentSizeForActiveSheet(); +}; + +#endif // CASPREADSHEETHANDLER_H diff -Nru calligra-2.3.86/active/src/CATextDocumentHandler.cpp calligra-2.3.87/active/src/CATextDocumentHandler.cpp --- calligra-2.3.86/active/src/CATextDocumentHandler.cpp 1970-01-01 00:00:00.000000000 +0000 +++ calligra-2.3.87/active/src/CATextDocumentHandler.cpp 2012-01-28 14:26:27.000000000 +0000 @@ -0,0 +1,224 @@ +/* + * This file is part of the KDE project + * + * Copyright (C) 2011 Shantanu Tushar + * + * This program is free software; you can redistribute it and/or + * modify it under the terms of the GNU General Public License as + * published by the Free Software Foundation; either version 2 of + * the License, or (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program; if not, write to the Free Software + * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA + * 02110-1301 USA + */ + +#include "CATextDocumentHandler.h" +#include "CADocumentController.h" +#include "CACanvasController.h" + +#include +#include +#include + +#include +#include +#include +#include +#include +#include + +#include +#include +#include +#include + +#include + +class CATextDocumentHandler::Private +{ +public: + Private() { + document = 0; + findText = 0; + } + KWDocument* document; + KWPage currentTextDocPage; + QString searchString; + KoFindText* findText; +}; + +CATextDocumentHandler::CATextDocumentHandler (CADocumentController* documentController) + : CAAbstractDocumentHandler (documentController) + , d (new Private()) +{ + QList texts; + d->findText = new KoFindText (texts, this); + connect (d->findText, SIGNAL (updateCanvas()), SLOT (updateCanvas())); + connect (d->findText, SIGNAL (matchFound (KoFindMatch)), SLOT (findMatchFound (KoFindMatch))); + connect (d->findText, SIGNAL (noMatchFound()), SLOT (findNoMatchFound())); +} + +CATextDocumentHandler::~CATextDocumentHandler() +{ + delete d; +} + +QStringList CATextDocumentHandler::supportedMimetypes() +{ + QStringList supportedTypes; + supportedTypes << "application/vnd.oasis.opendocument.text" << "application/msword"; + return supportedTypes; +} + +bool CATextDocumentHandler::openDocument (const QString& uri) +{ + QString error; + QString mimetype = KMimeType::findByPath (uri)->name(); + KoDocument* doc = KMimeTypeTrader::createPartInstanceFromQuery (mimetype, 0, 0, QString(), + QVariantList(), &error); + + if (!doc) { + kDebug() << "Doc can't be openend" << error; + return false; + } + + d->document = static_cast (doc); + d->document->openUrl (KUrl (uri)); + + setCanvas (dynamic_cast (doc->canvasItem())); + KoToolManager::instance()->addController (dynamic_cast (documentController()->canvasController())); + KoSelection *sel = canvas()->shapeManager()->selection(); + + KoShape *textShape = 0; + foreach (KoShape *shape, canvas()->shapeManager()->shapes()) { + if (shape->shapeId() == "TextShapeID") { + textShape = shape; + } + } + if (textShape) { + sel->select(textShape); + KoToolManager::instance()->switchToolRequested("TextToolFactory_ID"); + } + + KWCanvasItem* kwCanvasItem = dynamic_cast (canvas()); + + if (!kwCanvasItem) { + kDebug() << "Failed to get KWCanvasItem"; + return false; + } + + KoZoomHandler* zoomHandler = static_cast (kwCanvasItem->viewConverter()); + documentController()->canvasController()->setZoomHandler (zoomHandler); + KoZoomController* zoomController = + new KoZoomController (dynamic_cast (documentController()->canvasController()), + zoomHandler, doc->actionCollection()); + documentController()->canvasController()->setZoomController (zoomController); + d->currentTextDocPage = d->document->pageManager()->begin(); + zoomController->setPageSize (d->currentTextDocPage.rect().size()); + zoomController->setZoom (KoZoomMode::ZOOM_CONSTANT, 1.0); + + if (kwCanvasItem) { + kwCanvasItem->updateSize(); + + // whenever the size of the document viewed in the canvas changes, inform the zoom controller + connect (kwCanvasItem, SIGNAL (documentSize (QSizeF)), zoomController, SLOT (setDocumentSize (QSizeF))); + // update the canvas whenever we scroll, the canvas controller must emit this signal on scrolling/panning + connect (documentController()->canvasController()->canvasControllerProxyObject(), SIGNAL (moveDocumentOffset (const QPoint&)), + kwCanvasItem, SLOT (setDocumentOffset (QPoint))); + kwCanvasItem->updateSize(); + } + + connect (documentController()->canvasController(), SIGNAL (needsCanvasResize (QSizeF)), SLOT (resizeCanvas (QSizeF))); + connect (documentController()->canvasController(), SIGNAL (needCanvasUpdate()), SLOT (updateCanvas())); + + documentController()->canvasController()->zoomToFit(); + + QList texts; + KoFindText::findTextInShapes(kwCanvasItem->shapeManager()->shapes(), texts); + d->findText->addDocuments(texts); + + return true; +} + +KoDocument* CATextDocumentHandler::document() +{ + return d->document; +} + +void CATextDocumentHandler::updateCanvas() +{ + KWCanvasItem* kwCanvasItem = dynamic_cast (canvas()); + kwCanvasItem->update(); +} + +QString CATextDocumentHandler::documentTypeName() +{ + return "textdocument"; +} + +void CATextDocumentHandler::resizeCanvas (const QSizeF& canvasSize) +{ + qreal width = documentController()->canvasController()->width(); + qreal height = documentController()->canvasController()->height(); + KWPage currentPage = d->document->pageManager()->page (qreal (documentController()->canvasController()->cameraY())); + if (currentPage.isValid()) { + documentController()->canvasController()->zoomHandler()->setZoom (canvasSize.width() / currentPage.width() * 0.75); + } + canvas()->canvasItem()->setGeometry (0, 0, width, height); +} + +QString CATextDocumentHandler::searchString() const +{ + return d->searchString; +} + +void CATextDocumentHandler::setSearchString (const QString& searchString) +{ + d->searchString = searchString; + d->findText->find(searchString); + + emit searchStringChanged(); +} + +void CATextDocumentHandler::findNext() +{ + d->findText->findNext(); +} + +void CATextDocumentHandler::findPrevious() +{ + d->findText->findPrevious(); +} + +void CATextDocumentHandler::findMatchFound (const KoFindMatch& match) +{ + QTextCursor cursor = match.location().value(); + canvas()->canvasItem()->update(); + + canvas()->resourceManager()->setResource (KoText::CurrentTextAnchor, cursor.anchor()); + canvas()->resourceManager()->setResource (KoText::CurrentTextPosition, cursor.position()); +} + +void CATextDocumentHandler::findNoMatchFound() +{ + kDebug() << "Match for " << searchString() << " not found"; +} + +QString CATextDocumentHandler::bottomToolbarSource() const +{ + return "TextDocumentFindToolbar.qml"; +} + +QString CATextDocumentHandler::topToolbarSource() const +{ + return "TextDocumentEditingToolbar.qml"; +} + +#include "CATextDocumentHandler.moc" diff -Nru calligra-2.3.86/active/src/CATextDocumentHandler.h calligra-2.3.87/active/src/CATextDocumentHandler.h --- calligra-2.3.86/active/src/CATextDocumentHandler.h 1970-01-01 00:00:00.000000000 +0000 +++ calligra-2.3.87/active/src/CATextDocumentHandler.h 2012-01-28 14:26:27.000000000 +0000 @@ -0,0 +1,69 @@ +/* + * This file is part of the KDE project + * + * Copyright (C) 2011 Shantanu Tushar + * + * This program is free software; you can redistribute it and/or + * modify it under the terms of the GNU General Public License as + * published by the Free Software Foundation; either version 2 of + * the License, or (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program; if not, write to the Free Software + * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA + * 02110-1301 USA + */ + +#ifndef CATEXTDOCUMENTHANDLER_H +#define CATEXTDOCUMENTHANDLER_H + +#include "CAAbstractDocumentHandler.h" + +class QSizeF; +class KoFindMatch; + +class CATextDocumentHandler : public CAAbstractDocumentHandler +{ + Q_OBJECT + Q_PROPERTY (QString searchString READ searchString WRITE setSearchString NOTIFY searchStringChanged) + +public: + explicit CATextDocumentHandler (CADocumentController* documentController); + virtual ~CATextDocumentHandler(); + + virtual QStringList supportedMimetypes(); + virtual bool openDocument (const QString& uri); + virtual KoDocument* document(); + virtual QString documentTypeName(); + + QString searchString() const; + void setSearchString (const QString& searchString); + + virtual QString bottomToolbarSource() const; + virtual QString topToolbarSource() const; + +public slots: + void updateCanvas(); + void resizeCanvas (const QSizeF& canvasSize); + + void findNext(); + void findPrevious(); + +signals: + void searchStringChanged(); + +private slots: + void findMatchFound(const KoFindMatch& match); + void findNoMatchFound(); + +private: + class Private; + Private* const d; +}; + +#endif // CATEXTDOCUMENTHANDLER_H diff -Nru calligra-2.3.86/active/src/MainWindow.cpp calligra-2.3.87/active/src/MainWindow.cpp --- calligra-2.3.86/active/src/MainWindow.cpp 2012-01-07 03:25:00.000000000 +0000 +++ calligra-2.3.87/active/src/MainWindow.cpp 2012-01-28 07:04:47.000000000 +0000 @@ -1,7 +1,7 @@ /* * This file is part of the KDE project * - * Copyright (C) 2011 Shantanu Tushar + * Copyright (C) 2011 Shantanu Tushar * * This program is free software; you can redistribute it and/or * modify it under the terms of the GNU General Public License as @@ -20,8 +20,9 @@ */ #include "MainWindow.h" -#include "CanvasController.h" +#include "CACanvasController.h" #include "CADocumentInfo.h" +#include "CADocumentController.h" #include "calligra_active_global.h" #include @@ -34,75 +35,82 @@ #include #include -MainWindow::MainWindow(QWidget *parent) +MainWindow::MainWindow (QWidget* parent) { - qmlRegisterType("CalligraActive", 1, 0, "CanvasController"); - qmlRegisterType("CalligraActive", 1, 0, "CADocumentInfo"); - - m_view = new QDeclarativeView(this); + qmlRegisterType ("CalligraActive", 1, 0, "CanvasController"); + qmlRegisterType ("CalligraActive", 1, 0, "CADocumentInfo"); + qmlRegisterType ("CalligraActive", 1, 0, "CADocumentController"); + qmlRegisterInterface ("KoCanvasController"); + + m_view = new QDeclarativeView (this); + + kdeclarative.setDeclarativeEngine(m_view->engine()); + kdeclarative.initialize(); + kdeclarative.setupBindings(); QList recentFiles; QList recentTextDocs; QList recentSpreadsheets; QList recentPresentations; QSettings settings; - foreach(QString string, settings.value("recentFiles").toStringList()) { - CADocumentInfo *docInfo = CADocumentInfo::fromStringList(string.split(";")); - recentFiles.append(docInfo); + foreach (QString string, settings.value ("recentFiles").toStringList()) { + CADocumentInfo* docInfo = CADocumentInfo::fromStringList (string.split (";")); + recentFiles.append (docInfo); switch (docInfo->type()) { - case CADocumentInfo::TextDocument: - recentTextDocs.append(docInfo); - break; - case CADocumentInfo::Spreadsheet: - recentSpreadsheets.append(docInfo); - break; - case CADocumentInfo::Presentation: - recentPresentations.append(docInfo); - break; + case CADocumentInfo::TextDocument: + recentTextDocs.append (docInfo); + break; + case CADocumentInfo::Spreadsheet: + recentSpreadsheets.append (docInfo); + break; + case CADocumentInfo::Presentation: + recentPresentations.append (docInfo); + break; } } - foreach(const QString &importPath, KGlobal::dirs()->findDirs("module", "imports")) { - m_view->engine()->addImportPath(importPath); + foreach (const QString & importPath, KGlobal::dirs()->findDirs ("module", "imports")) { + m_view->engine()->addImportPath (importPath); } - m_view->rootContext()->setContextProperty("recentFilesModel", QVariant::fromValue(recentFiles)); - m_view->rootContext()->setContextProperty("recentTextDocsModel", QVariant::fromValue(recentTextDocs)); - m_view->rootContext()->setContextProperty("recentSpreadsheetsModel", QVariant::fromValue(recentSpreadsheets)); - m_view->rootContext()->setContextProperty("recentPresentationsModel", QVariant::fromValue(recentPresentations)); - m_view->rootContext()->setContextProperty("mainwindow",this); - - m_view->setSource(QUrl::fromLocalFile(CalligraActive::Global::installPrefix() - + "/share/calligraactive/qml/HomeScreen.qml")); - m_view->setResizeMode(QDeclarativeView::SizeRootObjectToView); - - setCentralWidget(m_view); - connect(m_view, SIGNAL(sceneResized(QSize)), SLOT(adjustWindowSize(QSize))); - resize(800, 600); + m_view->rootContext()->setContextProperty ("recentFilesModel", QVariant::fromValue (recentFiles)); + m_view->rootContext()->setContextProperty ("recentTextDocsModel", QVariant::fromValue (recentTextDocs)); + m_view->rootContext()->setContextProperty ("recentSpreadsheetsModel", QVariant::fromValue (recentSpreadsheets)); + m_view->rootContext()->setContextProperty ("recentPresentationsModel", QVariant::fromValue (recentPresentations)); + m_view->rootContext()->setContextProperty ("mainwindow", this); + + m_view->setSource (QUrl::fromLocalFile (CalligraActive::Global::installPrefix() + + "/share/calligraactive/qml/HomeScreen.qml")); + m_view->setResizeMode (QDeclarativeView::SizeRootObjectToView); + + setCentralWidget (m_view); + connect (m_view, SIGNAL (sceneResized (QSize)), SLOT (adjustWindowSize (QSize))); + resize (800, 600); } -void MainWindow::openFile(const QString &path) +void MainWindow::openFile (const QString& path) { if (path.isEmpty()) return; - QObject *object = m_view->rootObject(); - QMetaObject::invokeMethod(object, "openDocument", Q_ARG(QVariant, QVariant(path))); + QObject* object = m_view->rootObject(); + QMetaObject::invokeMethod (object, "openDocument", Q_ARG (QVariant, QVariant (path))); } void MainWindow::adjustWindowSize (QSize size) { - resize(size); + resize (size); } -void MainWindow::openFileDialog() { - const QString path = QFileDialog::getOpenFileName(this,"Open File", QDesktopServices::storageLocation(QDesktopServices::DocumentsLocation)); - if(!path.isEmpty()) { - QObject *object = m_view->rootObject(); - Q_ASSERT(object); - QMetaObject::invokeMethod(object, "openDocument", Q_ARG(QVariant, QVariant(path))); - } +void MainWindow::openFileDialog() +{ + const QString path = QFileDialog::getOpenFileName (this, "Open File", QDesktopServices::storageLocation (QDesktopServices::DocumentsLocation)); + if (!path.isEmpty()) { + QObject* object = m_view->rootObject(); + Q_ASSERT (object); + QMetaObject::invokeMethod (object, "openDocument", Q_ARG (QVariant, QVariant (path))); + } } diff -Nru calligra-2.3.86/active/src/MainWindow.h calligra-2.3.87/active/src/MainWindow.h --- calligra-2.3.86/active/src/MainWindow.h 2012-01-07 03:25:00.000000000 +0000 +++ calligra-2.3.87/active/src/MainWindow.h 2012-01-28 07:04:47.000000000 +0000 @@ -1,7 +1,7 @@ /* * This file is part of the KDE project * - * Copyright (C) 2011 Shantanu Tushar + * Copyright (C) 2011 Shantanu Tushar * * This program is free software; you can redistribute it and/or * modify it under the terms of the GNU General Public License as @@ -24,21 +24,24 @@ #include +#include + class QDeclarativeView; class MainWindow : public QMainWindow { Q_OBJECT public: - MainWindow(QWidget *parent = 0); + MainWindow (QWidget* parent = 0); ~MainWindow(); - void openFile(const QString &path); + void openFile (const QString& path); private: - QDeclarativeView *m_view; + QDeclarativeView* m_view; + KDeclarative kdeclarative; private slots: - void adjustWindowSize(QSize size); + void adjustWindowSize (QSize size); public Q_SLOTS: void openFileDialog(); }; diff -Nru calligra-2.3.86/active/src/PAView.cpp calligra-2.3.87/active/src/PAView.cpp --- calligra-2.3.86/active/src/PAView.cpp 2012-01-07 03:25:00.000000000 +0000 +++ calligra-2.3.87/active/src/PAView.cpp 1970-01-01 00:00:00.000000000 +0000 @@ -1,195 +0,0 @@ -/* - * This file is part of the KDE project - * - * Copyright (C) 2006-2009 Thorsten Zachmann - * Copyright (C) 2007 Thomas Zander - * Copyright (C) 2009 Inge Wallin - * Copyright (C) 2010 Boudewijn Rempt - * Copyright (C) 2011 Shantanu Tushar - * - * This program is free software; you can redistribute it and/or - * modify it under the terms of the GNU General Public License as - * published by the Free Software Foundation; either version 2 of - * the License, or (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with this program; if not, write to the Free Software - * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA - * 02110-1301 USA - */ - -#include "PAView.h" -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include - -PAView::PAView(KoCanvasController* canvasController, KoPACanvasBase* canvas, KPrDocument* prDocument) - : m_canvasController(canvasController), m_paCanvas(canvas), m_prDocument(prDocument), m_page(0) -{ - KoPAViewModeNormal *mode = new KoPAViewModeNormal(this, m_paCanvas); - setViewMode(mode); - m_zoomController = new KoZoomController(canvasController, static_cast(viewConverter()), - prDocument->actionCollection()); - connect(m_zoomController, SIGNAL(zoomChanged(KoZoomMode::Mode,qreal)), SLOT(slotZoomChanged(KoZoomMode::Mode,qreal))); -} - -PAView::~PAView() -{ - -} - -void PAView::setShowRulers(bool show) -{ - -} - -void PAView::editPaste() -{ - -} - -void PAView::pagePaste() -{ - -} - -void PAView::insertPage() -{ - -} - -void PAView::updatePageNavigationActions() -{ - -} - -void PAView::setActionEnabled(int actions, bool enable) -{ - -} - -void PAView::navigatePage(KoPageApp::PageNavigation pageNavigation) -{ - -} - -KoPAPageBase* PAView::activePage() const -{ - return m_page; -} - -void PAView::setActivePage(KoPAPageBase* page) -{ - KoShapeManager *shapeManager = m_paCanvas->shapeManager(); - KoShapeManager *masterShapeManager = m_paCanvas->masterShapeManager(); - shapeManager->removeAdditional( m_page ); - m_page = page; - shapeManager->addAdditional( page ); - QList shapes = page->shapes(); - shapeManager->setShapes(shapes, KoShapeManager::AddWithoutRepaint); - //Make the top most layer active - if ( !shapes.isEmpty() ) { - KoShapeLayer* layer = dynamic_cast( shapes.last() ); - shapeManager->selection()->setActiveLayer( layer ); - } - - // if the page is not a master page itself set shapes of the master page - KoPAPage * paPage = dynamic_cast( page ); - if ( paPage ) { - KoPAMasterPage * masterPage = paPage->masterPage(); - QList masterShapes = masterPage->shapes(); - masterShapeManager->setShapes(masterShapes, KoShapeManager::AddWithoutRepaint); - //Make the top most layer active - if ( !masterShapes.isEmpty() ) { - KoShapeLayer* layer = dynamic_cast( masterShapes.last() ); - masterShapeManager->selection()->setActiveLayer( layer ); - } - } - else { - // if the page is a master page no shapes are in the masterShapeManager - masterShapeManager->setShapes( QList() ); - } - - // Set the current page number in the canvas resource provider - m_paCanvas->resourceManager()->setResource( KoCanvasResourceManager::CurrentPage, m_prDocument->pageIndex(page)+1 ); -} - -void PAView::doUpdateActivePage(KoPAPageBase* page) -{ - // save the old offset into the page so we can use it also on the new page - setActivePage( page ); - - m_paCanvas->updateSize(); - KoPageLayout &layout = page->pageLayout(); - - QSizeF pageSize( layout.width, layout.height ); - //m_paCanvas->setDocumentOrigin(QPointF(layout.width, layout.height)); - m_paCanvas->setDocumentOrigin(QPointF(0, 0)); - // the page is in the center of the canvas - m_zoomController->setDocumentSize(pageSize * 3); - m_zoomController->setPageSize(pageSize); - m_paCanvas->resourceManager()->setResource( KoCanvasResourceManager::PageSize, pageSize ); - QGraphicsItem *item = dynamic_cast(m_paCanvas); - item->update(); - - proxyObject->emitActivePageChanged(); -} - -KoZoomController* PAView::zoomController() const -{ - return m_zoomController; -} - -KoPADocument* PAView::kopaDocument() const -{ - return m_prDocument; -} - -KoPACanvasBase* PAView::kopaCanvas() const -{ - return m_paCanvas; -} - -void PAView::slotZoomChanged( KoZoomMode::Mode mode, qreal zoom ) -{ - Q_UNUSED(zoom); - if (m_page) { - if (mode == KoZoomMode::ZOOM_PAGE) { - KoPageLayout &layout = m_page->pageLayout(); - QRectF pageRect( 0, 0, layout.width, layout.height ); - m_canvasController->ensureVisible(m_paCanvas->viewConverter()->documentToView(pageRect)); - } else if (mode == KoZoomMode::ZOOM_WIDTH) { - // horizontally center the page - KoPageLayout &layout = m_page->pageLayout(); - QRectF pageRect( 0, 0, layout.width, layout.height ); - QRect viewRect = m_paCanvas->viewConverter()->documentToView(pageRect).toRect(); - viewRect.translate(m_paCanvas->documentOrigin()); - QRect currentVisible(qMax(0, -m_canvasController->canvasOffsetX()), - qMax(0, -m_canvasController->canvasOffsetY()), - m_canvasController->visibleWidth(), - m_canvasController->visibleHeight()); - int horizontalMove = viewRect.center().x() - currentVisible.center().x(); - m_canvasController->pan(QPoint(horizontalMove, 0)); - } - dynamic_cast(m_paCanvas)->update(); - } -} - -#include "PAView.moc" diff -Nru calligra-2.3.86/active/src/PAView.h calligra-2.3.87/active/src/PAView.h --- calligra-2.3.86/active/src/PAView.h 2012-01-07 03:25:00.000000000 +0000 +++ calligra-2.3.87/active/src/PAView.h 1970-01-01 00:00:00.000000000 +0000 @@ -1,64 +0,0 @@ -/* - * This file is part of the KDE project - * - * Copyright (C) 2011 Shantanu Tushar - * - * This program is free software; you can redistribute it and/or - * modify it under the terms of the GNU General Public License as - * published by the Free Software Foundation; either version 2 of - * the License, or (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with this program; if not, write to the Free Software - * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA - * 02110-1301 USA - */ - -#ifndef PAVIEW_H -#define PAVIEW_H - -#include -#include - -class KoCanvasController; -class KoZoomMode; -class KPrDocument; -class KoPACanvasBase; - -class PAView : public QObject, public KoPAViewBase -{ -Q_OBJECT -public: - PAView(KoCanvasController *canvasController, KoPACanvasBase *canvas, KPrDocument *prDocument); - virtual ~PAView(); - virtual void setShowRulers(bool show); - virtual void editPaste(); - virtual void pagePaste(); - virtual void insertPage(); - virtual void updatePageNavigationActions(); - virtual void setActionEnabled(int actions, bool enable); - virtual void navigatePage(KoPageApp::PageNavigation pageNavigation); - virtual KoPAPageBase* activePage() const; - virtual void setActivePage(KoPAPageBase* page); - virtual void doUpdateActivePage(KoPAPageBase* page); - virtual KoZoomController* zoomController() const; - virtual KoPADocument* kopaDocument() const; - virtual KoPACanvasBase* kopaCanvas() const; - -private: - KoCanvasController *m_canvasController; - KoPACanvasBase *m_paCanvas; - KPrDocument *m_prDocument; - KoZoomController *m_zoomController; - KoPAPageBase *m_page; - -private slots: - void slotZoomChanged( KoZoomMode::Mode mode, qreal zoom ); -}; - -#endif // PAVIEW_H Binary files /tmp/zZ3vRDbxE1/calligra-2.3.86/active/templates/stage/Text_Only.odp and /tmp/BxERTtUs6S/calligra-2.3.87/active/templates/stage/Text_Only.odp differ Binary files /tmp/zZ3vRDbxE1/calligra-2.3.86/active/templates/stage/Text_Only.odp.png and /tmp/BxERTtUs6S/calligra-2.3.87/active/templates/stage/Text_Only.odp.png differ Binary files /tmp/zZ3vRDbxE1/calligra-2.3.86/active/templates/stage/Text_With_Chart.odp and /tmp/BxERTtUs6S/calligra-2.3.87/active/templates/stage/Text_With_Chart.odp differ Binary files /tmp/zZ3vRDbxE1/calligra-2.3.86/active/templates/stage/Text_With_Chart.odp.png and /tmp/BxERTtUs6S/calligra-2.3.87/active/templates/stage/Text_With_Chart.odp.png differ Binary files /tmp/zZ3vRDbxE1/calligra-2.3.86/active/templates/stage/Text_With_Header.odp and /tmp/BxERTtUs6S/calligra-2.3.87/active/templates/stage/Text_With_Header.odp differ Binary files /tmp/zZ3vRDbxE1/calligra-2.3.86/active/templates/stage/Text_With_Header.odp.png and /tmp/BxERTtUs6S/calligra-2.3.87/active/templates/stage/Text_With_Header.odp.png differ Binary files /tmp/zZ3vRDbxE1/calligra-2.3.86/active/templates/stage/Text_With_Image.odp and /tmp/BxERTtUs6S/calligra-2.3.87/active/templates/stage/Text_With_Image.odp differ Binary files /tmp/zZ3vRDbxE1/calligra-2.3.86/active/templates/stage/Text_With_Image.odp.png and /tmp/BxERTtUs6S/calligra-2.3.87/active/templates/stage/Text_With_Image.odp.png differ Binary files /tmp/zZ3vRDbxE1/calligra-2.3.86/active/templates/stage/Text_With_Outline.odp and /tmp/BxERTtUs6S/calligra-2.3.87/active/templates/stage/Text_With_Outline.odp differ Binary files /tmp/zZ3vRDbxE1/calligra-2.3.86/active/templates/stage/Text_With_Outline.odp.png and /tmp/BxERTtUs6S/calligra-2.3.87/active/templates/stage/Text_With_Outline.odp.png differ Binary files /tmp/zZ3vRDbxE1/calligra-2.3.86/active/templates/tables/NewSpread.ods and /tmp/BxERTtUs6S/calligra-2.3.87/active/templates/tables/NewSpread.ods differ Binary files /tmp/zZ3vRDbxE1/calligra-2.3.86/active/templates/words/NewDocument.odt and /tmp/BxERTtUs6S/calligra-2.3.87/active/templates/words/NewDocument.odt differ diff -Nru calligra-2.3.86/braindump/data/braindump.desktop calligra-2.3.87/braindump/data/braindump.desktop --- calligra-2.3.86/braindump/data/braindump.desktop 2012-01-07 03:25:00.000000000 +0000 +++ calligra-2.3.87/braindump/data/braindump.desktop 2012-01-28 07:04:47.000000000 +0000 @@ -5,6 +5,7 @@ GenericName=Notes and idea gathering. GenericName[bs]=Napomene i sakupljanje ideja. GenericName[ca]=Notes i recull d'idees. +GenericName[ca@valencia]=Notes i recull d'idees. GenericName[cs]=Poznámky a shromažďování nápadů. GenericName[da]=Noter og idesamling GenericName[de]=Notizen und Ideen sammeln. @@ -12,10 +13,11 @@ GenericName[en_GB]=Notes and idea gathering. GenericName[es]=Notas y recolección de ideas. GenericName[et]=Märkmed ja ajurünnakud +GenericName[hu]=Jegyzetek és ötletgyűjtés. GenericName[it]=Note e raccolta di idee GenericName[kk]=Ойларды түртіп қою құралы GenericName[nb]=Samling av notater og idéer. -GenericName[nl]=Opmerkingen en ideeën verzamelen. +GenericName[nl]=Notities en ideeën verzamelen. GenericName[pl]=Zbiór uwag i pomysłów. GenericName[pt]=Notas e recolha de ideias. GenericName[pt_BR]=Notas e coleção de ideias. @@ -29,6 +31,7 @@ MimeType=application/x-braindump; Name=Braindump Name[ca]=Memoràndum +Name[ca@valencia]=Memoràndum Name[cs]=Braindump Name[da]=Braindump Name[de]=Braindump @@ -36,6 +39,8 @@ Name[en_GB]=Braindump Name[es]=Braindump Name[et]=Braindump +Name[fi]=Braindump +Name[hu]=Braindump Name[it]=Braindump Name[kk]=Braindump Name[nb]=Braindump diff -Nru calligra-2.3.86/braindump/data/braindump_extensions.desktop calligra-2.3.87/braindump/data/braindump_extensions.desktop --- calligra-2.3.86/braindump/data/braindump_extensions.desktop 2012-01-07 03:25:00.000000000 +0000 +++ calligra-2.3.87/braindump/data/braindump_extensions.desktop 2012-01-28 07:04:47.000000000 +0000 @@ -3,6 +3,7 @@ X-KDE-ServiceType=Braindump/Extensions Comment=Extensions for Braindump Comment[ca]=Extensions per a Braindump +Comment[ca@valencia]=Extensions per a Braindump Comment[cs]=Rozšíření pro Braindump Comment[da]=Udvidelser til Braindump Comment[de]=Erweiterungen für Braindump @@ -10,6 +11,7 @@ Comment[en_GB]=Extensions for Braindump Comment[es]=Extensión para Braindump Comment[et]=Braindumpi laiendused +Comment[hu]=Braindump kiterjesztések Comment[it]=Estensioni per Braindump Comment[kk]=Braindump кеңейтулері Comment[nb]=Utvidelser for Braindump diff -Nru calligra-2.3.86/braindump/plugins/quickstates/braindumpquickstates.desktop calligra-2.3.87/braindump/plugins/quickstates/braindumpquickstates.desktop --- calligra-2.3.86/braindump/plugins/quickstates/braindumpquickstates.desktop 2012-01-07 03:25:00.000000000 +0000 +++ calligra-2.3.87/braindump/plugins/quickstates/braindumpquickstates.desktop 2012-01-28 07:04:47.000000000 +0000 @@ -1,11 +1,13 @@ [Desktop Entry] Name=Quickstates Plugin Name[ca]=Connector Quickstates +Name[ca@valencia]=Connector Quickstates Name[da]=Quickstates-plugin Name[el]=Πρόσθετο Quickstates Name[en_GB]=Quickstates Plugin Name[es]=Complemento de estados rápidos Name[et]=Olekuplugin +Name[hu]=Quickstates bővítmény Name[it]=Estensione per stati veloci Name[kk]=Quickstates плагині Name[nb]=Quickstates programtillegg diff -Nru calligra-2.3.86/braindump/plugins/stateshape/stateshape.desktop calligra-2.3.87/braindump/plugins/stateshape/stateshape.desktop --- calligra-2.3.86/braindump/plugins/stateshape/stateshape.desktop 2012-01-07 03:25:00.000000000 +0000 +++ calligra-2.3.87/braindump/plugins/stateshape/stateshape.desktop 2012-01-28 07:04:47.000000000 +0000 @@ -2,12 +2,15 @@ Name=State Shape Name[bg]=Форма за състояние Name[ca]=Forma d'estat +Name[ca@valencia]=Forma d'estat Name[cs]=Stavový tvar Name[da]=Tilstand-form Name[el]=Σχήμα κατάστασης Name[en_GB]=State Shape Name[es]=Forma de estado Name[et]=Olekukujund +Name[fi]=Tilamuoto +Name[hu]=Állapotalakzat Name[it]=Forma di stato Name[kk]=Күй-жай қалыпы Name[nb]=Statisk form diff -Nru calligra-2.3.86/braindump/plugins/webshape/webshape.desktop calligra-2.3.87/braindump/plugins/webshape/webshape.desktop --- calligra-2.3.86/braindump/plugins/webshape/webshape.desktop 2012-01-07 03:25:00.000000000 +0000 +++ calligra-2.3.87/braindump/plugins/webshape/webshape.desktop 2012-01-28 07:04:47.000000000 +0000 @@ -2,6 +2,7 @@ Name=Web Shape Name[bg]=Форма за уеб Name[ca]=Forma de web +Name[ca@valencia]=Forma de web Name[cs]=Tvar webu Name[da]=Web-form Name[de]=Web-Objekt @@ -9,6 +10,8 @@ Name[en_GB]=Web Shape Name[es]=Forma web Name[et]=Veebikujund +Name[fi]=Webmuoto +Name[hu]=Webes alakzat Name[it]=Forma Web Name[kk]=Веб қалыпы Name[nb]=Web-form diff -Nru calligra-2.3.86/cmake/modules/FindOpenCTL.cmake calligra-2.3.87/cmake/modules/FindOpenCTL.cmake --- calligra-2.3.86/cmake/modules/FindOpenCTL.cmake 2012-01-07 03:25:00.000000000 +0000 +++ calligra-2.3.87/cmake/modules/FindOpenCTL.cmake 2012-01-28 07:04:47.000000000 +0000 @@ -1,17 +1,11 @@ INCLUDE(FindPkgConfig) -pkg_check_modules(OPENCTL OpenCTL>=0.9.13) -pkg_check_modules(OPENCTL_913 OpenCTL>=0.9.13) +pkg_check_modules(OPENCTL OpenCTL>=0.9.16) if (OPENCTL_FOUND) set(HAVE_OPENCTL TRUE) message(STATUS "OpenCTL Found Version: " ${OPENCTL_VERSION}) - if (OPENCTL_913_FOUND) - set(HAVE_OPENCTL_913 TRUE) - else() - set(HAVE_OPENCTL_913 FALSE) - endif() if (NOT OpenCTL_FIND_QUIETLY ) message(STATUS "Found OPENCTL: ${OPENCTL_LIBRARIES}") diff -Nru calligra-2.3.86/cmake/modules/FindOpenShiva.cmake calligra-2.3.87/cmake/modules/FindOpenShiva.cmake --- calligra-2.3.86/cmake/modules/FindOpenShiva.cmake 2012-01-07 03:25:00.000000000 +0000 +++ calligra-2.3.87/cmake/modules/FindOpenShiva.cmake 2012-01-28 07:04:47.000000000 +0000 @@ -1,15 +1,13 @@ INCLUDE(FindPkgConfig) -pkg_check_modules(OPENSHIVA OpenShiva>=0.9.13) +pkg_check_modules(OPENSHIVA OpenShiva>=0.9.16) if (OPENSHIVA_FOUND) set(HAVE_OPENSHIVA TRUE) - set(OPENSHIVA_912_FOUND TRUE) - set(HAVE_OPENSHIVA_912 TRUE) - message(STATUS "OpenShiva >= 0.9.12 was found") + message(STATUS "OpenShiva >= 0.9.16 was found") if (NOT OPENSHIVA_FIND_QUIETLY) - message(STATUS "Found OpenShiva: ${OPENSHIVA_LIBRARIES}") + message(STATUS "Found OpenShiva: ${OPENSHIVA_LIBRARIES}") endif () else () if (NOT OPENSHIVA_FIND_QUIETLY) diff -Nru calligra-2.3.86/cmake/modules/FindQtShiva.cmake calligra-2.3.87/cmake/modules/FindQtShiva.cmake --- calligra-2.3.86/cmake/modules/FindQtShiva.cmake 2012-01-07 03:25:00.000000000 +0000 +++ calligra-2.3.87/cmake/modules/FindQtShiva.cmake 2012-01-28 07:04:47.000000000 +0000 @@ -1,13 +1,13 @@ INCLUDE(FindPkgConfig) -pkg_check_modules(QTSHIVA QtShiva>=0.9.0) +pkg_check_modules(QTSHIVA QtShiva>=0.9.2) if (QTSHIVA_FOUND) - message(STATUS "QtShiva >= 0.9.0 was found") + message(STATUS "QtShiva >= 0.9.2 was found") set(HAVE_QTSHIVA TRUE) if (NOT QTSHIVA_FIND_QUIETLY) - message(STATUS "Found QtShiva: ${QTSHIVA_LIBRARIES}") + message(STATUS "Found QtShiva: ${QTSHIVA_LIBRARIES}") endif () else () if (NOT QtShiva_FIND_QUIETLY) diff -Nru calligra-2.3.86/CMakeLists.txt calligra-2.3.87/CMakeLists.txt --- calligra-2.3.86/CMakeLists.txt 2012-01-07 03:25:00.000000000 +0000 +++ calligra-2.3.87/CMakeLists.txt 2012-01-28 14:26:27.000000000 +0000 @@ -96,6 +96,10 @@ set(SHOULD_BUILD_ACTIVE TRUE) ENDIF() +# HACK Active requires kdeclartive.h but the cmake test fails for olde kdelibs versions +# diabling until it's fixed + set(SHOULD_BUILD_ACTIVE FALSE) + if(KDE4_BUILD_TESTS) # only with this definition will the FOO_TEST_EXPORT macro do something add_definitions(-DCOMPILING_TESTS) @@ -260,9 +264,12 @@ ## find_file(MARBLECONTROLBOX_H MarbleControlBox.h ${MARBLE_INCLUDE_DIR}) if( MARBLECONTROLBOX_H ) - execute_process(COMMAND grep -m 1 -e "setMarbleWidget" ${MARBLECONTROLBOX_H} - OUTPUT_VARIABLE SETMARBLEWIDGET - ) + INCLUDE(CheckCXXSourceCompiles) + set(CMAKE_REQUIRED_LIBRARIES_SWAP ${CMAKE_REQUIRED_LIBRARIES}) + set(CMAKE_REQUIRED_LIBRARIES ${CMAKE_REQUIRED_LIBRARIES} ${QT_QTCORE_LIBRARY} ${QT_QTGUI_LIBRARY} ${MARBLE_LIBRARIES}) + CHECK_CXX_SOURCE_COMPILES ( "#include <${MARBLECONTROLBOX_H}>\nint main(){Marble::MarbleControlBox*p; p->setMarbleWidget(0); return 0;}" SETMARBLEWIDGET) + # subsequent tests will fail if this is not set back. + set(CMAKE_REQUIRED_LIBRARIES ${CMAKE_REQUIRED_LIBRARIES_SWAP}) if( SETMARBLEWIDGET ) add_definitions(-DHAVE_SETMARBLEWIDGET) endif( SETMARBLEWIDGET) diff -Nru calligra-2.3.86/debian/changelog calligra-2.3.87/debian/changelog --- calligra-2.3.86/debian/changelog 2012-01-25 20:42:18.000000000 +0000 +++ calligra-2.3.87/debian/changelog 2012-02-13 15:09:34.000000000 +0000 @@ -1,3 +1,13 @@ +calligra (1:2.3.87-0ubuntu1) precise; urgency=low + + * New upstream beta release + * Remove kubuntu_01_arm_fixes.diff all upstreamed + * Add kubuntu_03_cmakelists_update.diff from upstream + * Add kdelibs5-experimental-dev build-dep + * TODO: review optional build-depends to ensure up to date + + -- Jonathan Riddell Mon, 13 Feb 2012 11:01:53 +0000 + calligra (1:2.3.86-0ubuntu9) precise; urgency=low * debian/patches/kubuntu_01_arm_fixes.diff: Modify patch to include diff -Nru calligra-2.3.86/debian/control calligra-2.3.87/debian/control --- calligra-2.3.86/debian/control 2012-01-17 15:06:51.000000000 +0000 +++ calligra-2.3.87/debian/control 2012-02-13 15:09:34.000000000 +0000 @@ -22,7 +22,8 @@ libmarble-dev, # no in koffice libgsf-1-dev, libspnav-dev, shared-desktop-ontologies, - opengtl-dev, libqtgtl-dev, libicu-dev, libattica-dev + opengtl-dev, libqtgtl-dev, libicu-dev, libattica-dev, + kdelibs5-experimental-dev Standards-Version: 3.9.2 Homepage: http://www.calligra-suite.org/ Vcs-Git: git://git.debian.org/pkg-kde/kde-std/calligra.git diff -Nru calligra-2.3.86/debian/kexi.install calligra-2.3.87/debian/kexi.install --- calligra-2.3.86/debian/kexi.install 2012-01-17 17:03:10.000000000 +0000 +++ calligra-2.3.87/debian/kexi.install 2012-02-13 15:09:34.000000000 +0000 @@ -54,3 +54,4 @@ usr/share/kde4/servicetypes/kexihandler.desktop usr/share/kde4/servicetypes/keximigration_driver.desktop usr/share/kde4/servicetypes/widgetfactory.desktop +usr/share/doc/kde/HTML/en/kexi/ diff -Nru calligra-2.3.86/debian/krita-data.install calligra-2.3.87/debian/krita-data.install --- calligra-2.3.86/debian/krita-data.install 2012-01-13 17:34:52.000000000 +0000 +++ calligra-2.3.87/debian/krita-data.install 2012-02-13 15:09:34.000000000 +0000 @@ -13,27 +13,27 @@ usr/share/kde4/config/kritapresets.knsrc usr/share/kde4/config/kritarc usr/share/kde4/config/kritaiccprofiles.knsrc -usr/share/kde4/apps/pigmentcms/ctlmodules/pigmentutils.ctl -usr/share/kde4/apps/pigmentcms/ctlcompositeops/alphadarken.ctlt -usr/share/kde4/apps/pigmentcms/ctlcompositeops/over.ctlt -usr/share/kde4/apps/pigmentcms/ctlcolortransformations/BurnMidtones.ctlt -usr/share/kde4/apps/pigmentcms/ctlcolortransformations/DodgeShadows.ctlt -usr/share/kde4/apps/pigmentcms/ctlcolortransformations/DodgeMidtones.ctlt -usr/share/kde4/apps/pigmentcms/ctlcolortransformations/DodgeHighlights.ctlt -usr/share/kde4/apps/pigmentcms/ctlcolortransformations/BurnHighlights.ctlt -usr/share/kde4/apps/pigmentcms/ctlcolortransformations/BurnShadows.ctlt -usr/share/kde4/apps/pigmentcms/ctltemplates/alphabase.ctlt -usr/share/kde4/apps/pigmentcms/ctlcolorspaces/gray32f.ctlcs -usr/share/kde4/apps/pigmentcms/ctlcolorspaces/xyza32f.ctlcs -usr/share/kde4/apps/pigmentcms/ctlcolorspaces/rgba32f.ctlcs -usr/share/kde4/apps/pigmentcms/ctlcolorspaces/ycbcr8u.ctlcs -usr/share/kde4/apps/pigmentcms/ctlcolorspaces/xyza16f.ctlcs -usr/share/kde4/apps/pigmentcms/ctlcolorspaces/ycbcr16u.ctlcs -usr/share/kde4/apps/pigmentcms/ctlcolorspaces/rgba16f.ctlcs -usr/share/kde4/apps/pigmentcms/ctlprofiles/scgrayf.ctlp -usr/share/kde4/apps/pigmentcms/ctlprofiles/srgbaf.ctlp -usr/share/kde4/apps/pigmentcms/ctlprofiles/ycbcr_8.ctlp -usr/share/kde4/apps/pigmentcms/ctlprofiles/lmsaf32.ctlp -usr/share/kde4/apps/pigmentcms/ctlprofiles/ycbcr_16.ctlp -usr/share/kde4/apps/pigmentcms/ctlprofiles/xyzaf32.ctlp -usr/share/kde4/apps/pigmentcms/ctlprofiles/scrgbaf.ctlp +#usr/share/kde4/apps/pigmentcms/ctlmodules/pigmentutils.ctl +#usr/share/kde4/apps/pigmentcms/ctlcompositeops/alphadarken.ctlt +#usr/share/kde4/apps/pigmentcms/ctlcompositeops/over.ctlt +#usr/share/kde4/apps/pigmentcms/ctlcolortransformations/BurnMidtones.ctlt +#usr/share/kde4/apps/pigmentcms/ctlcolortransformations/DodgeShadows.ctlt +#usr/share/kde4/apps/pigmentcms/ctlcolortransformations/DodgeMidtones.ctlt +#usr/share/kde4/apps/pigmentcms/ctlcolortransformations/DodgeHighlights.ctlt +#usr/share/kde4/apps/pigmentcms/ctlcolortransformations/BurnHighlights.ctlt +#usr/share/kde4/apps/pigmentcms/ctlcolortransformations/BurnShadows.ctlt +#usr/share/kde4/apps/pigmentcms/ctltemplates/alphabase.ctlt +#usr/share/kde4/apps/pigmentcms/ctlcolorspaces/gray32f.ctlcs +#usr/share/kde4/apps/pigmentcms/ctlcolorspaces/xyza32f.ctlcs +#usr/share/kde4/apps/pigmentcms/ctlcolorspaces/rgba32f.ctlcs +#usr/share/kde4/apps/pigmentcms/ctlcolorspaces/ycbcr8u.ctlcs +#usr/share/kde4/apps/pigmentcms/ctlcolorspaces/xyza16f.ctlcs +#usr/share/kde4/apps/pigmentcms/ctlcolorspaces/ycbcr16u.ctlcs +#usr/share/kde4/apps/pigmentcms/ctlcolorspaces/rgba16f.ctlcs +#usr/share/kde4/apps/pigmentcms/ctlprofiles/scgrayf.ctlp +#usr/share/kde4/apps/pigmentcms/ctlprofiles/srgbaf.ctlp +#usr/share/kde4/apps/pigmentcms/ctlprofiles/ycbcr_8.ctlp +#usr/share/kde4/apps/pigmentcms/ctlprofiles/lmsaf32.ctlp +#usr/share/kde4/apps/pigmentcms/ctlprofiles/ycbcr_16.ctlp +#usr/share/kde4/apps/pigmentcms/ctlprofiles/xyzaf32.ctlp +#usr/share/kde4/apps/pigmentcms/ctlprofiles/scrgbaf.ctlp diff -Nru calligra-2.3.86/debian/krita.install calligra-2.3.87/debian/krita.install --- calligra-2.3.86/debian/krita.install 2012-01-17 16:58:21.000000000 +0000 +++ calligra-2.3.87/debian/krita.install 2012-02-13 15:09:34.000000000 +0000 @@ -224,16 +224,16 @@ usr/share/kde4/servicetypes/krita_paintop.desktop usr/share/kde4/servicetypes/krita_plugin.desktop usr/share/kde4/servicetypes/krita_tool.desktop -usr/lib/kde4/kritashivagenerators.so -usr/lib/kde4/kritakscolorspacesplugin.so -usr/lib/kde4/kritaexrimport.so -usr/lib/kde4/kritashivafilters.so -usr/lib/kde4/kritaexrexport.so -usr/lib/kde4/krita_ctlcs_plugin.so -usr/share/applications/kde4/krita_exr.desktop -usr/share/kde4/services/krita_exr_import.desktop -usr/share/kde4/services/kritakscolorspacesplugin.desktop -usr/share/kde4/services/krita_exr_export.desktop -usr/share/kde4/services/krita_ctlcs_plugin.desktop -usr/share/kde4/services/kritashivafilters.desktop -usr/share/kde4/services/kritashivagenerators.desktop +#usr/lib/kde4/kritashivagenerators.so +#usr/lib/kde4/kritakscolorspacesplugin.so +#usr/lib/kde4/kritaexrimport.so +#usr/lib/kde4/kritashivafilters.so +#usr/lib/kde4/kritaexrexport.so +#usr/lib/kde4/krita_ctlcs_plugin.so +#usr/share/applications/kde4/krita_exr.desktop +#usr/share/kde4/services/krita_exr_import.desktop +#usr/share/kde4/services/kritakscolorspacesplugin.desktop +#usr/share/kde4/services/krita_exr_export.desktop +#usr/share/kde4/services/krita_ctlcs_plugin.desktop +#usr/share/kde4/services/kritashivafilters.desktop +#usr/share/kde4/services/kritashivagenerators.desktop diff -Nru calligra-2.3.86/debian/patches/kubuntu_01_arm_fixes.diff calligra-2.3.87/debian/patches/kubuntu_01_arm_fixes.diff --- calligra-2.3.86/debian/patches/kubuntu_01_arm_fixes.diff 2012-01-25 20:39:28.000000000 +0000 +++ calligra-2.3.87/debian/patches/kubuntu_01_arm_fixes.diff 1970-01-01 00:00:00.000000000 +0000 @@ -1,74 +0,0 @@ -## Description: add some description -## Origin/Author: add some origin or author -## Bug: bug URL -Index: calligra-2.3.86/krita/image/brushengine/kis_paint_information.cc -=================================================================== ---- calligra-2.3.86.orig/krita/image/brushengine/kis_paint_information.cc 2012-01-25 08:25:40.000000000 +0200 -+++ calligra-2.3.86/krita/image/brushengine/kis_paint_information.cc 2012-01-25 22:37:25.873890652 +0200 -@@ -211,20 +211,20 @@ - - qreal KisPaintInformation::declination(const KisPaintInformation& info, qreal maxTiltX, qreal maxTiltY, bool normalize) - { -- qreal xTilt = qBound(-1.0, info.xTilt() / maxTiltX , 1.0); -- qreal yTilt = qBound(-1.0, info.yTilt() / maxTiltY , 1.0); -+ qreal xTilt = qBound(qreal(-1.0), info.xTilt() / maxTiltX , qreal(1.0)); -+ qreal yTilt = qBound(qreal(-1.0), info.yTilt() / maxTiltY , qreal(1.0)); - - qreal e; - if (fabs(xTilt) > fabs(yTilt)) { -- e = sqrt(1.0 + yTilt*yTilt); -+ e = sqrt(qreal(1.0) + yTilt*yTilt); - } else { -- e = sqrt(1.0 + xTilt*xTilt); -+ e = sqrt(qreal(1.0) + xTilt*xTilt); - } - - qreal cosAlpha = sqrt(xTilt*xTilt + yTilt*yTilt)/e; - qreal declination = acos(cosAlpha); // in radians in [0, 0.5 * PI] - - // mapping to 0.0..1.0 if normalize is true -- return normalize ? (declination / (M_PI * 0.5)) : declination; -+ return normalize ? (declination / (M_PI * qreal(0.5))) : declination; - } - -Index: calligra-2.3.86/plugins/textshape/dialogs/QuickTableButton.cpp -=================================================================== ---- calligra-2.3.86.orig/plugins/textshape/dialogs/QuickTableButton.cpp 2012-01-25 08:25:40.000000000 +0200 -+++ calligra-2.3.86/plugins/textshape/dialogs/QuickTableButton.cpp 2012-01-25 22:37:25.885890712 +0200 -@@ -87,8 +87,8 @@ - - void SizeChooserGrid::mouseMoveEvent(QMouseEvent *ev) - { -- m_column = qMin(7.0, (ev->x()-m_leftMargin) / m_columnWidth); -- m_row = qMin(7.0, (ev->y()-m_topMargin) / m_rowHeight); -+ m_column = qMin(qreal(7.0), (ev->x()-m_leftMargin) / m_columnWidth); -+ m_row = qMin(qreal(7.0), (ev->y()-m_topMargin) / m_rowHeight); - repaint(); - } - -Index: calligra-2.3.86/filters/karbon/wmf/WmfImportParser.cpp -=================================================================== ---- calligra-2.3.86.orig/filters/karbon/wmf/WmfImportParser.cpp 2012-01-25 08:25:40.000000000 +0200 -+++ calligra-2.3.86/filters/karbon/wmf/WmfImportParser.cpp 2012-01-25 22:37:25.941890997 +0200 -@@ -531,7 +531,7 @@ - return "stroke:none;"; - } - -- const qreal width = context.pen.width() > 1.0 ? qMax(1.0, context.pen.width() * m_scaleX) : 1.0; -+ const qreal width = context.pen.width() > qreal(1.0) ? qMax(qreal(1.0), context.pen.width() * m_scaleX) : qreal(1.0); - - QString strokeStyle; - -Index: calligra-2.3.86/krita/plugins/paintops/curvebrush/kis_curves_opacity_option.cpp -=================================================================== ---- calligra-2.3.86.orig/krita/plugins/paintops/curvebrush/kis_curves_opacity_option.cpp 2012-01-07 05:25:02.000000000 +0200 -+++ calligra-2.3.86/krita/plugins/paintops/curvebrush/kis_curves_opacity_option.cpp 2012-01-25 22:38:36.874242726 +0200 -@@ -27,7 +27,7 @@ - } - - --double KisCurvesOpacityOption::apply(const KisPaintInformation & info, qreal opacity) const -+double KisCurvesOpacityOption::apply(const KisPaintInformation & info, double opacity) const - { - if (!isChecked()) { - return opacity; diff -Nru calligra-2.3.86/debian/patches/kubuntu_02_x11_link.patch calligra-2.3.87/debian/patches/kubuntu_02_x11_link.patch --- calligra-2.3.86/debian/patches/kubuntu_02_x11_link.patch 2012-01-25 06:23:08.000000000 +0000 +++ calligra-2.3.87/debian/patches/kubuntu_02_x11_link.patch 2012-02-13 15:09:34.000000000 +0000 @@ -1,11 +1,11 @@ ## Description: add some description ## Origin/Author: add some origin or author ## Bug: bug URL -Index: calligra-2.3.86/krita/ui/CMakeLists.txt +Index: calligra-2.3.87/krita/ui/CMakeLists.txt =================================================================== ---- calligra-2.3.86.orig/krita/ui/CMakeLists.txt 2012-01-07 05:25:02.000000000 +0200 -+++ calligra-2.3.86/krita/ui/CMakeLists.txt 2012-01-25 08:22:18.528347166 +0200 -@@ -254,6 +254,7 @@ +--- calligra-2.3.87.orig/krita/ui/CMakeLists.txt 2012-01-28 07:04:48.000000000 +0000 ++++ calligra-2.3.87/krita/ui/CMakeLists.txt 2012-02-13 11:01:05.204828588 +0000 +@@ -257,6 +257,7 @@ endif(HAVE_OPENGL) target_link_libraries(kritaui LINK_INTERFACE_LIBRARIES kritaimage komain ${GL_INTERFACE_LIBRARIES} ) diff -Nru calligra-2.3.86/debian/patches/kubuntu_03_cmakelists_update.diff calligra-2.3.87/debian/patches/kubuntu_03_cmakelists_update.diff --- calligra-2.3.86/debian/patches/kubuntu_03_cmakelists_update.diff 1970-01-01 00:00:00.000000000 +0000 +++ calligra-2.3.87/debian/patches/kubuntu_03_cmakelists_update.diff 2012-02-13 15:09:34.000000000 +0000 @@ -0,0 +1,61 @@ +Index: calligra-2.3.87/CMakeLists.txt +=================================================================== +--- calligra-2.3.87.orig/CMakeLists.txt 2012-01-28 14:26:27.000000000 +0000 ++++ calligra-2.3.87/CMakeLists.txt 2012-02-13 12:54:47.216763529 +0000 +@@ -96,10 +96,6 @@ + set(SHOULD_BUILD_ACTIVE TRUE) + ENDIF() + +-# HACK Active requires kdeclartive.h but the cmake test fails for olde kdelibs versions +-# diabling until it's fixed +- set(SHOULD_BUILD_ACTIVE FALSE) +- + if(KDE4_BUILD_TESTS) + # only with this definition will the FOO_TEST_EXPORT macro do something + add_definitions(-DCOMPILING_TESTS) +@@ -265,17 +261,22 @@ + find_file(MARBLECONTROLBOX_H MarbleControlBox.h ${MARBLE_INCLUDE_DIR}) + if( MARBLECONTROLBOX_H ) + INCLUDE(CheckCXXSourceCompiles) ++ set(CMAKE_REQUIRED_INCLUDES_SWAP ${CMAKE_REQUIRED_INCLUDES}) + set(CMAKE_REQUIRED_LIBRARIES_SWAP ${CMAKE_REQUIRED_LIBRARIES}) ++ set(CMAKE_REQUIRED_INCLUDES ${QT_INCLUDE_DIR}) + set(CMAKE_REQUIRED_LIBRARIES ${CMAKE_REQUIRED_LIBRARIES} ${QT_QTCORE_LIBRARY} ${QT_QTGUI_LIBRARY} ${MARBLE_LIBRARIES}) + CHECK_CXX_SOURCE_COMPILES ( "#include <${MARBLECONTROLBOX_H}>\nint main(){Marble::MarbleControlBox*p; p->setMarbleWidget(0); return 0;}" SETMARBLEWIDGET) + # subsequent tests will fail if this is not set back. + set(CMAKE_REQUIRED_LIBRARIES ${CMAKE_REQUIRED_LIBRARIES_SWAP}) ++ set(CMAKE_REQUIRED_INCLUDES ${CMAKE_REQUIRED_INCLUDES_SWAP}) + if( SETMARBLEWIDGET ) + add_definitions(-DHAVE_SETMARBLEWIDGET) + endif( SETMARBLEWIDGET) + endif( MARBLECONTROLBOX_H ) + endif( MARBLE_FOUND ) + ++#forced in kubuntu jriddell 2012-02-13 ++add_definitions(-DHAVE_SETMARBLEWIDGET) + + + ## +@@ -497,11 +498,6 @@ + set(SHOULD_BUILD_KRITA FALSE) + endif(NOT EIGEN2_FOUND OR NOT EXIV2_FOUND OR NOT HAVE_REQUIRED_LCMS_VERSION) + +-### Plan: kdepimlibs +-if(NOT KdepimLibs_FOUND) +- set(SHOULD_BUILD_PLAN FALSE) +-endif(NOT KdepimLibs_FOUND) +- + ### Active needs tables, stage and words + if (NOT SHOULD_BUILD_TABLES OR NOT SHOULD_BUILD_STAGE OR NOT SHOULD_BUILD_WORDS) + set(SHOULD_BUILD_ACTIVE FALSE) +@@ -517,6 +513,10 @@ + set(SHOULD_BUILD_ACTIVE FALSE) + endif (NOT QT_QTDECLARATIVE_FOUND) + ++if(${KDE_VERSION} VERSION_LESS 4.8.0) ++ set(SHOULD_BUILD_ACTIVE FALSE) ++endif(${KDE_VERSION} VERSION_LESS 4.8.0) ++ + #if(NOT QIMAGEBLITZ_FOUND) + # set (SHOULD_BUILD_KEXI FALSE) + #endif(NOT QIMAGEBLITZ_FOUND) diff -Nru calligra-2.3.86/debian/patches/series calligra-2.3.87/debian/patches/series --- calligra-2.3.86/debian/patches/series 2012-01-25 06:20:33.000000000 +0000 +++ calligra-2.3.87/debian/patches/series 2012-02-13 15:09:34.000000000 +0000 @@ -1,3 +1,3 @@ do_not_link_blas -kubuntu_01_arm_fixes.diff kubuntu_02_x11_link.patch +kubuntu_03_cmakelists_update.diff diff -Nru calligra-2.3.86/doc/calligra.desktop calligra-2.3.87/doc/calligra.desktop --- calligra-2.3.86/doc/calligra.desktop 2012-01-07 03:25:00.000000000 +0000 +++ calligra-2.3.87/doc/calligra.desktop 2012-01-28 07:04:47.000000000 +0000 @@ -3,11 +3,15 @@ Name=Calligra Name[bg]=Calligra Name[ca]=Calligra +Name[ca@valencia]=Calligra Name[cs]=Calligra Name[da]=Calligra Name[de]=Calligra +Name[el]=Calligra Name[es]=Calligra Name[et]=Calligra +Name[fi]=Calligra +Name[hu]=Calligra Name[it]=Calligra Name[kk]=Calligra Name[nb]=Calligra diff -Nru calligra-2.3.86/doc/CMakeLists.txt calligra-2.3.87/doc/CMakeLists.txt --- calligra-2.3.86/doc/CMakeLists.txt 2012-01-07 03:25:00.000000000 +0000 +++ calligra-2.3.87/doc/CMakeLists.txt 2012-01-28 07:04:47.000000000 +0000 @@ -1,4 +1,7 @@ add_subdirectory(calligra) +if(BUILD_kexi) + add_subdirectory(kexi) +endif(BUILD_kexi) if(BUILD_stage) add_subdirectory(stage) endif(BUILD_stage) diff -Nru calligra-2.3.86/doc/kexi/CMakeLists.txt calligra-2.3.87/doc/kexi/CMakeLists.txt --- calligra-2.3.86/doc/kexi/CMakeLists.txt 1970-01-01 00:00:00.000000000 +0000 +++ calligra-2.3.87/doc/kexi/CMakeLists.txt 2012-01-28 07:04:47.000000000 +0000 @@ -0,0 +1,4 @@ +########### install files ############### +# +# +kde4_create_handbook(index.docbook INSTALL_DESTINATION ${HTML_INSTALL_DIR}/en) diff -Nru calligra-2.3.86/doc/kexi/index.docbook calligra-2.3.87/doc/kexi/index.docbook --- calligra-2.3.86/doc/kexi/index.docbook 2012-01-07 03:25:00.000000000 +0000 +++ calligra-2.3.87/doc/kexi/index.docbook 2012-01-28 07:04:47.000000000 +0000 @@ -2,6 +2,7 @@ + ]> @@ -9,14 +10,20 @@ - This documentation was converted from the KDE UserBase Kexi/Handbook page. + This documentation was converted from the KDE UserBase Kexi/Handbook page at 2012-01-08. + + + Update to 2.4 by the &kde; Documentation Team + + + &FDLNotice; -2011-10-20 +2012-01-11 2.4 @@ -33,13 +40,13 @@ database - + -Introduction +Introduction &kexi; is a database management application. It can be used for creating databases, inserting data, performing queries, and processing data. Forms can be created to provide a custom interface to your data. All database objects - tables, queries and forms - are stored in the database, making it easy to share data and design. -&kexi; is part of the &calligra; productivity suite for the K Desktop Environment. +&kexi; is part of the &calligra; productivity suite for KDE. In addition to storing your &kexi; databases in files, &kexi; can also store your data on a database server. Using a database server allows you to share your database with other people, and also allows more than one person to use the database at one time. The following database servers are supported by &kexi;: @@ -47,29 +54,29 @@ MySQL PostgreSQL -More information about &kexi; can be found at the &kexi; page on the &calligra; website, and on the website for Kexi itself. +More information about &kexi; can be found at the &kexi; page on the Calligra website, and on the website for Kexi itself. If you have any questions about &kexi;, there are two mailing lists you can use. The &kexi; user mailing list can be used to ask questions about using &kexi; or about the &kexi; project. The &kexi; development mailing list can be used to ask questions about the development of &kexi;. Further information on how to subscribe to these lists, together with a few other ways of making contact with &kexi; developers, can be found here. -This handbook for &kexi; 2.4 is meant to be based on the &kexi; Handbook for Kexi 1.1.Please coordinate any effort with Jarosław Staniek, email: kexi at kde.org +This handbook for &kexi; 2.4 is meant to be based on the &kexi; Handbook for Kexi 1.1. Please coordinate any effort with Jarosław Staniek, email: kexi at kde.org -Kexi Basics +Kexi Basics -Kexi Databases -Creating a New Database File -The Kexi Main Window -Main application elements +Kexi Databases  +Creating a New Database File  +The Kexi Main Window  +Main application elements  -Opening an existing Kexi database file -Opening a database file in the Open Existing Project dialog -Opening an existing Kexi database file by clicking on .kexi file's icon +Opening an existing Kexi database file  +Opening a database file in the Open Project dialog  +Opening an existing Kexi database file by clicking on .kexi file's icon  -Using built-in help +Using built-in help  -Kexi Databases +Kexi Databases Many applications such as OpenOffice.org, LibreOffice or &Microsoft; Excel create files which are called documents. &kexi; creates files too, but we refer to them as &kexi; database files, or simple database files here. In addition to storing your databases in database files, &kexi; can also use databases on database servers, which is why we refer to them as database files, and not simply as databases. @@ -79,7 +86,7 @@ &kexi; database files usually have the extension .kexi -Creating a New Database File +Creating a New Database File @@ -129,7 +136,7 @@ -The Kexi Main Window +The Kexi Main Window @@ -145,11 +152,11 @@ The Tabbed Toolbar on the top gives access to common actions and commands. -The Project Navigator and Properties Editor are shown in panes on each side of the child window. These can be resized or hidden as required. A pane can be hidden by clicking the small cross at the top of the pane (just below the toolbar). +The Project Navigator and Property Editor are shown in panes on each side of the child window. These can be resized or hidden as required. A pane can be hidden by clicking the small cross at the top of the pane (just below the toolbar). -Database objects (tables, queries, &etc;) listed in the Project Navigator can opened by clicking (or double-clicking, depending upon your global KDE settings) on their names. +Database objects (tables, queries, &etc;) listed in the Project Navigator can be opened by clicking (or double-clicking, depending upon your global KDE settings) on their names. -Main application elements +Main application elements Main elements of &kexi; application's window are: @@ -175,7 +182,7 @@ -Tabbed Toolbar +Tabbed Toolbar @@ -201,7 +208,7 @@ Create widgets on your Reports -Project Navigator pane +Project Navigator pane @@ -226,7 +233,7 @@ Even though your operating system or window manager may be set up to handle single clicks instead of double clicks, &kexi; uses double clicks in Project Navigator to avoid accidentally opening large datasets or executing queries. -Opened database objects area / Tabbed Windows +Opened database objects area / Tabbed Windows @@ -247,7 +254,7 @@ Sometime later on there will be an option to detach tabs, creating somewhat something similar to an MDI interface. That could be useful for custom solutions or multiple displays. -Property Editor pane +Property Editor pane @@ -290,29 +297,39 @@ -Opening an existing Kexi database file -To open an existing &kexi; database file: +Opening an existing Kexi database file +There are two ways to open an existing &kexi; database file: +Opening a database file in the Open Project dialog -select it in the Open Existing Project dialog; or -open it by clicking on the .kexi file icon. - -Opening a database file in the Open Existing Project dialog - -Run &kexi;. You should see the Choose Project startup dialog. Choose Open Existing Project tab. You will see the following dialog: -From Current location drop down box, pick a folder containing a file you are looking for. -You can either pick a file or enter its name in the Location: box. -Click OK. +Run &kexi;. You should see the Welcome to Kexi startup dialog, which allows you select one of the recently used projects to open. +If the project is not on the page with recently used projects choose Open... (&Ctrl;O). You will see the following dialog: + + + + + + + + + + + + + + +From the location bar, pick a folder containing a file you are looking for. +You can either pick a file which is immediately opened. Alternatively you enter its name in the Name: box and click on Next. Notes -By default the Filter: drop down list has Kexi Database File-Based Project selected. In case the file you are looking for has an other extension, you can change the selection of the Filter: drop down list to All Files to display all available files (regardless of an extension). +By default the Filter: drop down list has All Supported Files (*.kexi, *.kexic, *.kexis, *.mdb) selected. In case the file you are looking for has an other extension, you can change the selection of the Filter: drop down list to All Files to display all available files (regardless of an extension). If you have selected a file of an external type, like a MS Access .mdb file, &kexi; will provide you with the option to import the file. If you have selected a connection data file (with .kexic extension) or a shortcut to a project on database server file (with .kexis extension), &kexi; will display appropriate dialogs. -Opening an existing Kexi database file by clicking on .kexi file's icon +Opening an existing Kexi database file by clicking on .kexi file's icon Click file's icon using your file manager or desktop. &kexi; will open this database project automatically. @@ -322,7 +339,7 @@ -Using built-in help +Using built-in help The following ways to get built-in help in &kexi; are available: @@ -339,32 +356,34 @@ -Building Simple Databases +Building Simple Databases -Introduction -Designing Database Tables -The Table Designer window + Introduction  +Designing Database Tables  +The Table Designer window  -Entering Data Into Tables -Designing Database Queries -Designing Forms -Most important terms -Forms versus tables -Working with form design -Using the Widgets tab -Inserting widgets - text fields -Assigning data sources -Inserting text labels -Actions -Widget layouts -Setting widgets size and position by hand -Setting the tab order +Entering Data Into Tables  +Designing Database Queries  +Designing Forms  +Most important terms  +Forms versus tables  +Working with form design  +Using the Widgets tab  +Inserting widgets - text fields  +Assigning data sources  +Inserting text labels  +Actions  +Widget layouts  + -Entering Data Using Forms +Entering Data Using Forms  -Introduction +Introduction To learn the basics of &kexi;, you could build a simple database utilizing most elementary &kexi;'s features. To make things simpler, advanced database design topics will not be covered here. Start by creating a new empty Phone Book. @@ -379,34 +398,35 @@ Use forms to enter data. Read the section called Entering Data Using Forms. -Designing Database Tables -First, there will be two tables added to your database: persons and phone_numbers. These are exactly the same tables as described in chapter Database and Spreadsheet. A layout for Persons can be found in section Data integrity and validity in that chapter. +Designing Database Tables + +First, there will be two tables added to your database: Persons and Phones. These are exactly the same tables as described in chapter Database and Spreadsheet. A layout for Persons can be found in section Data integrity and validity in that chapter. -Select InsertTable... from the menubar. You can also use the button Create object: table on the Project Navigator's toolbar. -The Table Designer's window will appear. Looking at the top of designer's window you will notice that &kexi; proposed you a generic name like template for the new table. The table design is not saved yet so you will be able to assign more proper name later. Moreover, because of the same reason, the table name is not yet visible in the Project Navigator. +Select Table from the toolbar. You can also use the Create object: table in the context menu of the Tables item in the Project Navigator. +The Table Designer's window will appear. Looking at the top of designer's window you will notice that &kexi; proposed you a generic name like Table1 for the new table. The table design is not saved yet so you will be able to assign more proper name later. Moreover, because of the same reason, the table name is not yet visible in the Project Navigator. -The Table Designer window -Table Designer window consists of following columns: +The Table Designer window +Table Designer window consists of following columns: -PK - Primary Key. +Information icon - Additional Information about the field Field Caption - caption of the field which will be displayed during data entering. Data Type - a combo box containing a list of data types, allowing to set a main rule for entered data for a given field. For example, when an integer number data type is set for a field, a database user will not able to enter letter characters into this field. Comments - you can enter here any information useful for understanding what the given field is provided for. This additional text will be saved within the table design and only visible in design mode. -In the Table designer window, every row corresponds to a single table field. You can recognize you are in design mode because the Switch to design view button is toggled on within the main &kexi; toolbar. +In the Table designer window, every row corresponds to a single table field. You can recognize you are in design mode because the Design button is toggled on within the Table designer window toolbar. -Procedure 3.3. Designing the Persons table +Designing the Persons table In the first row click on the cell in the Field Caption column and enter Name as field caption. -Notes about field names and captions +Notes about field names and captions Every table field must have a name and a caption, these cannot be empty. Field name is a word used by the database, usually not visible for users of the database application. The name may not contain special (national) characters (like ±, ¶, Ü) or space characters. The name must only contain roman letters, numbers and underscore sign _. Use the latter instead of spaces or dashes. Field names must be started with a letter or underscore sign _, never with a number. -It does not matter whether you are using small or capital letters. For &kexi; the database name Persons is the same as persons. +It does not matter whether you are using small or capital letters. For &kexi; the field name Persons is the same as persons. Field caption, on the other hand, allows you to enter any letters and special characters. It will be displayed for users of the database application. In a similar way, enter the following fields into the table design: @@ -417,11 +437,11 @@ house_number city -All the above fields, except house_number, are of type text. Change house_number field's type to integer number. To do this, click on a cell in the Data Type column, house_number row and then click on drop down list's button (you can also press F4 or &Alt;Down. The list of data types will appear. Select the Integer number type. +All the above fields, except house_number, are of type text. Change house_number field's type to integer number. To do this, click on a cell in the Data Type column, house_number row and then click on drop down list's button or press F4. The list of data types will appear. You can also use the arrow keys Up and Down to select another type. Select the Integer Number type. From now on, the house_number field only accepts numbers. -Persons table design is ready. Click Switch to data view button on the toolbar to finish designing and switch to Data View for the table. This allows you entering data into the table. +Persons table design is ready. Click Data button on the toolbar to finish designing and switch to Data View for the table. This allows you entering data into the table. As the design is not yet saved in the database, the Save Object As dialog window appears. You need to specify the name for the new table. @@ -432,17 +452,17 @@ You are asked about an agreement for automatic adding of primary key to the table. Click Add primary key button to continue. The Persons table has been created and opened in Data View. Its name appears in the Project Navigator pane. -Create the phone_numbers table, in a similar way as persons table. +Create the phone table, in a similar way as Persons table. Create a person field of type Integer number and phone of type Text. Do not use a number type here because phone numbers can have many different forms and prefixes. -Click Switch to data view button on the toolbar and enter Phones caption for the table. As for your previous table, allow &kexi; to automatically create a primary key. +Click Data button on the toolbar and enter Phones caption for the table. As for your previous table, allow &kexi; to automatically create a primary key. -Entering Data Into Tables -You have designed the two tables Persons and phone_numbers. None of them contain any data yet. You can enter some, and in this chapter you will learn how to do this fast and effectively. +Entering Data Into Tables +You have designed the two tables Persons and Phones. None of them contain any data yet. You can enter some, and in this chapter you will learn how to do this fast and effectively. -Start with the persons table. Open it in Data View using the Project Navigator's context menu. The current cell is marked with (usually black) thicker border, a cell cursor. The contents of the cell, if present, are highlighted with a different color. The current row, &ie; the one you have placed your rectangular cursor in, is marked on the left hand with an arrow symbol. +Start with the Persons table. Open it in Data View using Open in the Project Navigator's context menu or the toolbar button. The current cell is marked with (usually black) thicker border, a cell cursor. The contents of the cell, if present, are highlighted with a different color. The current row, &ie; the one you have placed your rectangular cursor in, is marked on the left hand with an arrow symbol. You can navigate through table cells using the arrow keys, Page Down, Page Down, Home, End keys; you can also click with the mouse in a cell to select it. @@ -450,49 +470,55 @@ Inserting new rows and entering data for them in &kexi; is different from the way of doing this in spreadsheets. To enter data for a new row, you need to use the arrow keys or mouse, to move your cursor to the special empty last row marked with a plus sign. Place your cursor in the (second) name column and enter a person's name. Also enter surname, street, house number and city. When done, move the cell cursor to the last empty row either by using the Down key or by clicking in the last row with the mouse to append a new row. -Details About Actions Available While Entering Data Into Tables +Details About Actions Available While Entering Data Into Tables As soon as you enter the first character, the current row is being edited. A pencil symbol appears on the left side of the data table. Double clicking a cell with the left mouse button or pressing &Enter; or the F2 key also starts editing of the current row. -Pressing the &Esc; key when the contents of a cell is edited cancels changes made to this cell. However, the pencil symbol will not disappear because you can still move to a different cell of the edited row to change its contents. To cancel changes made to the entire edited row, press the &Esc; key again. -Instead of pressing the &Esc; key, you can click the Cancel toolbar button or select DataCancel Row Changes from the menubar. -Click the &Shift;&Enter; keys to accept changes made to all cells in the currently edited row. You can also click OK toolbar button or select DataSave Row from the menubar. +Pressing the &Esc; key when the contents of a cell is edited cancels changes made to this cell. However, the pencil symbol will not disappear because you can still move to a different cell of the edited row to change its contents. To cancel changes made to the entire edited row, press the &Esc; key again. +Instead of pressing the &Esc; key, you can click the Cancel Record Changes toolbar button. +Press the &Shift;&Enter; keys to accept changes made to all cells in the currently edited row. -Fill the phone_numbers table with data. In the persons column you need to provide a number of the person existing in the persons table. +Fill the Phones table with data. In the persons column you need to provide a number of the person existing in the Persons table. -Designing Database Queries +Designing Database Queries A database's primary purpose is to store and help extract information you are looking for. Unlike databases written on a paper sheets, &kexi; database allows you to specify more search criteria. Results are returned faster even for large data sets. All this is a power of databases, however to be able to perform effective queries in your database, you need to learn how to tell the database what you are looking for. With database queries you can limit data coming from a table to a predefined set of rows and columns as well as dynamically join data coming from multiple tables. -To see how queries work in practice you will create a contacts query joining data from two tables: persons and phone_numbers (designed here and filled with data here). +To see how queries work in practice you will create a contacts query joining data from two tables: Persons and Phones (designed here and filled with data here). -Create a new empty query by selecting InsertQuery... from the menubar. The design window will appear. The window is split into two areas: query relationships at the top and query columns below. -Select the table persons in the drop down list Table: located at the top of the window and click the Add button. A graphical representation of the table will appear in the relations area. Do the same for the phone_numbers table to insert it too, as in the figure below. -Add query relationship using mouse drag & drop technique: click the field id in the table persons table, drag it and drop into the person field of the phone_numbers table. This will join both fields by creating a new relationship. -Double-click the name field in the persons table, to add the field as a query column. In a similar way, add surname, street, house_number, city fields from the persons table and phone from the phone_numbers table. -Query design is now ready for testing. Click the Switch to data view button on the toolbar, to switch from design to viewing the data provided as query results. -Save the query design for later use by clicking the Save button on the toolbar. You can also use FileSave from the menubar or press the &Ctrl;S keys. Because the query design has not been saved yet, you will be asked to specify a name for it. Enter Contacts text in the caption field and click the OK button. +Create a new empty query by selecting Query from the toolbar. The design window will appear. The window is split into two areas: query relationships at the top and query columns below. +Select the table Persons in the drop down list Table: located at the top of the window and click the Insert button. A graphical representation of the table will appear in the relations area. Do the same for the phone table to insert it too. +Add query relationship using mouse drag & drop technique: click the field id in the table persons table, drag it and drop into the person field of the phone table. This will join both fields by creating a new relationship. + + +Double-click the name field in the Persons table, to add the field as a query column. In a similar way, add surname, street, house_number, city fields from the Persons table and phone from the Phones table. +Query design is now ready for testing. Click the Data button on the toolbar, to switch from design to viewing the data provided as query results. +Save the query design for later use by clicking the Save button on the toolbar.Because the query design has not been saved yet, you will be asked to specify a name for it. Enter Contacts text in the caption field and click the OK button. -Designing Forms +Designing Forms -Most important terms -Forms versus tables -Working with form design -Using the Widgets tab -Inserting widgets - text fields -Assigning data sources -Inserting text labels -Actions -Widget layouts -Setting widgets size and position by hand -Setting the tab order +Most important terms  +Forms versus tables  +Working with form design  +Using the Widgets tab  +Inserting widgets - text fields  +Assigning data sources  +Inserting text labels  +Actions  +Widget layouts  + -Most important terms +Most important terms Widgets displaying information, ⪚ a text box or an image box. Each widget of this type can be bound to a data source field (a table or a query column). Therefore, such widgets are called in short form fields. Widgets able to perform a specified action, ⪚ a push button that can close the current form. Within other applications this widget type is sometimes called form control because it can perform previously defined action of controlling your database application's behavior. @@ -531,7 +557,7 @@ -Forms versus tables +Forms versus tables In chapter Entering Data Into Tables you learned about how to enter data directly into tables using their data sheet view. However, in many cases forms are better suited for data entry: @@ -542,14 +568,14 @@ In data sheet view displaying multi-row data text fields or images is as easy as within forms. -Working with form design +Working with form design As with table or query design, you are able to use Data View and Design View. Form designing is performed in Design View. We will often refer to the form design window as to Form Designer. -To create a new empty form, select InsertForm from the Menubar. Optionally, you can use New Form command from drop-down button on the Project Navigator's toolbar or Create Object: Form command from the context menu. +To create a new empty form, select Form from the toolbar. Optionally, you can use Create Object: Form command from the context menu of the Project Navigator. A new frame will appear, you can resize the form by moving the borders. The form is covered with a grid which simplifies accurate positioning of the widgets. -As with table design, Form Designer provides Property pane. To save some space on the screen, the pane has three tabs related to the currently selected form: +As with table design, Form Designer provides Property Editor pane. To save some space on the screen, the pane has three tabs related to the currently selected form: The Properties tab @@ -573,12 +599,13 @@ Additional toolbars are also available: -The Widgets toolbar used for inserting new widgets into the form. -The Format toolbar used to format form's elements (⪚ adjusting widget's size, grouping). Formatting commands are also available in the Format menu. +The Widgets toolbar used for inserting new widgets into the form. Select Form Design to display it. + -Using the Widgets tab -The Widgets tab in the Property pane provides a list of form widgets and their hierarchy. Each widget is presented within the hierarchy beside other widgets being on the same level (the same parent container). Child widgets (inside containers) are presented using indented names. +Using the Widgets tab +The Widgets tab in the Properties pane provides a list of form widgets and their hierarchy. Each widget is presented within the hierarchy beside other widgets being on the same level (the same parent container). Child widgets (inside containers) are presented using indented names. Each widget has displayed its name and type. The type has also an icon displayed - the same as the one displayed on the toolbar used while form designing is performed. @@ -591,7 +618,7 @@ Giving widgets reasonable names can be useful but is not mandatory. Note that widget's name is a property that is not visible to the user of your form. Users will only see a widget text, provided by Text property or similar. -Inserting widgets - text fields +Inserting widgets - text fields Let's create a form providing information about persons, &ie; a form connected it with Persons table. If the form being designed should present data obtained from the database, you need to place appropriate fields on it. To do this, use the buttons on the Widgets toolbar. Each button corresponds to a single widget type. @@ -604,86 +631,90 @@ -There is a context menu available in form's design mode, activated by a right mouse button click the desired widget or the form's surface. The menu offers commands like Cut, Copy, Paste, Delete and other, more complex. Many of the commands are also provided in the menubar, usually Edit. Keyboard shortcuts are also available for these commands. Some of the commands are only available for certain types of widgets. + There is a context menu available in form's design mode, activated by a right mouse button click the desired widget or the form's surface. The menu offers commands like Cut, Copy, Paste, Delete and other, more complex. Keyboard shortcuts are also available for these commands. Some of the commands are only available for certain types of widgets. The commands Cut, Copy and Paste makes it possible to move or copy widgets between forms, even between separate database projects. Holding the &Ctrl; key down while clicking a widget allows to select multiple widgets. -Instead of using Copy and Paste commands, to duplicate a widget within the same form you can hold down the &Ctrl; key while moving the widget. After the &Ctrl; key is released, the dragged widget will not be moved but copied in the new location. +Instead of using Copy and Paste commands, to duplicate a widget within the same form you can hold down the &Ctrl; key while moving the widget. After the mouse button is released, the dragged widget will not be moved but copied in the new location. -Assigning data sources -The fields you inserted have no data source assigned yet, so these are not able to display information from the database. To assign data source, use the Data Source tab of the Property pane. +Assigning data sources +The fields you inserted have no data source assigned yet, so these are not able to display information from the database. To assign data source, use the Data Source tab of the Property Editor pane. -The very first step is to specify the form's data source, &ie; a place the displayed data will be fetched from. As mentioned above, you will use table persons as a data source for your new form. +The very first step is to specify the form's data source, &ie; a place the displayed data will be fetched from. As mentioned above, you will use table Persons as a data source for your new form. Click on the form's surface, as you will alter its properties. -Switch to the Data Source tab and enter persons table name in the Form's data source drop down list. Alternatively, you can select this name from the drop down list. +Switch to the Data Source tab and enter persons table name in the Form's data source drop down list. Alternatively, you can select this name from the drop down list. You have assigned form's data source. Now you need to do specify widget's data source. Click the first text field widget at the top of the form. -In the Data Source tab of the property pane enter field name name in the Widget's data source drop down list. Alternatively, you can select this name from the drop down list. +In the Data Source tab of the property pane enter field name name in the Widget's data source drop down list. Alternatively, you can select this name from the drop down list. Click on next text field widget and enter surname as the data source. Enter data sources for street, house_number and city text fields in a similar way. -You can now save the form's design (this is not mandatory to test the form in action). To save, click the Save object changes toolbar button or use the FileSave (&Ctrl;S) menu command. Upon saving you will be asked for entering the form's name. Enter Persons as caption and click the OK button. The form's name will be filled automatically. +You can now save the form's design (this is not mandatory to test the form in action). To save, click the Save toolbar button. Upon saving you will be asked for entering the form's name. Enter Persons as caption and click the OK button. The form's name will be filled automatically. -This is the right moment for testing your form. Click the Switch to data view toolbar button. Unless you made a mistake while entering data sources, you should see form's fields filled with data from the persons table. +This is the right moment for testing your form. Click the Data toolbar button. Unless you made a mistake while entering data sources, you should see form's fields filled with data from the Persons table. -If you want to remove widget's data source assignment for a form widget, you can use Clear widget's data source button near the Widget's data source drop down list. Similarly, you can use the Clear form's data source button near the Form's data source drop down list. + If you want to remove widget's data source assignment for a form widget, you can use the little black icon with a +white cross at the right in the Widget's data source box. Use the Go to selected form's data source button to select appropriate table or query in the Project Navigator, so you can quickly open a table or query being the data source of the form. -Inserting text labels +Inserting text labels To make it easier for the form's user to identify the meaning of every field widget, these should have added text labels with appropriate titles. To create text labels the Label widget is used. -Insert three text label widgets onto the form, placing them on the left side of the text fields (or on the right hand if your operating system uses right-to-left layout). On inserting a new label, a text cursor appears at the location where you can enter the desired title. Enter consecutively: Name, Surname and Street. Additionally, on the top of the form insert another label displaying name of the form, &ie; Persons. Enlarge this label's size and and increase the font size using FormatFont... menu command. +Insert three text label widgets onto the form, placing them on the left side of the text fields (or on the right hand if your operating system uses right-to-left layout). On inserting a new label, a text cursor appears at the location where you can enter the desired title. Enter consecutively: Name, Surname and Street. Additionally, on the top of the form insert another label displaying name of the form, &ie; Persons. Enlarge this label's size and increase the font size using Font in the Properties tab. -Actions +Actions An Action is a single activity isolated in the application, available for the user to execute. It can also be executed automatically as a reaction for a given event (⪚ after opening a form). -Assigning actions to form buttons +Assigning actions to form buttons Many actions can be assigned to form button. The assigned action is executed after button is clicked. To assign action: -Switch to form's Design View if you have not done yet. +Switch to form's Design view if you have not done yet. Select the existing button widget by clicking on it or put a new button widget onto the form. If you inserted a new button, enter its title and press &Enter; key. Click the button widget with the right mouse button to display the context menu. From the context menu select Assign action... command. -An Assigning Action to Command Button dialog window will appear presenting a list of available actions. One of the actions is selected if the widget already has action assigned. Otherwise the Action type drop down list has the No type item selected. -From the Action type drop down list select Application item. Available application-wide actions will be listed. -Select one of the actions on the list (⪚ Delete Row). -Click the OK button or press the &Enter; key to accept your selection. +An Assigning Action to Button dialog window will appear presenting a list of available actions. One of the actions is selected if the widget already has action assigned. Otherwise the Action category list has the No action item selected. +From the Action type list select Application actions item. Available application-wide actions will be listed. +Select one of the actions on the list (⪚ Delete Selected object). + -After switching to the form's data view you can try whether the action works. For example, if you assigned Delete Row action, clicking the button, the current database row will be deleted, similarly to executing EditDelete Row (&Ctrl;Delete) menu command (depending on your settings you may be asked to confirm the removal). +After switching to the form's data view you can try whether the action works. -To remove an action assignment, select No type item from the Action type drop down list of the Assigning Action to Command Button dialog window. -Actions only work in the form's data view. Not every action's assignment is reasonable. For example, the Font... action is available in data view, but only if you have a widget selected in the Design View. If you make changes to the font settings the changes are applied to the text of that selected widget. +To remove an action assignment, select No action item from the Action category list of the Assigning Action to Button dialog window. +Actions only work in the form's data view. Not every action's assignment is reasonable. For example, the + +Font... action is available in data view, but only if you have a widget selected in the Design view. If you make changes to the font settings the changes are applied to the text of that selected widget. -Widget layouts +Widget layouts In most cases form widgets should be conveniently arranged and aligned. Positioning, aligning and resizing widgets by hand is not easy and these parameters are not adjusted when the user resizes the form. In fact the situation is even worse because you cannot assume a given form requires a given space because users have different font sizes and display resolutions. Using special tool called widget layouts can help to automatically lay out the form widgets. Widget layout is an action of grouping two or more widgets so these are well positioned and have appropriate sizes. Using layout in a form improves alignment. Moreover, its space is better used. Text fields are closer to each other, spacing is constant. + +Size policies for widgets within a layout Instead of setting a fixed size for your widgets, in &kexi; you can choose between various widget's size policies. A size policy is a flexible strategy for controlling how a widget is stretched (or shrunk) depending on other neighbouring widgets and space available within the form. After putting widgets into a layout, typically each widget gets a proportional (Preferred) size policy. These widgets will be automatically resized with preferred settings, depending on their type and size of the entire layout itself. For example, three buttons put into the horizontal layout will be resized to fit their visible text. @@ -758,8 +792,8 @@ -Values of size policies -The following values are available in the drop down list for Horizontal Size Policy and Vertical Size Policy properties visible in the Property Editor: +Values of size policies +The following values are available in the drop down list for Hor. Policy and Ver. Policy properties visible in the Property Editor: Fixed @@ -803,12 +837,13 @@ The most frequently used size policies are Preferred, Minimum and Maximum. -Vertical and horizontal stretch -The Vertical Stretch and Horizontal Stretch properties accept integer values greater than or equal to 0. These properties allow to fine-tune the behavior of size policies. The default value for the properties is 0. A higher value of the stretch means that the widget will be expanded more than widgets for which a lower stretch value is set. +Vertical and horizontal stretch +The Ver. Stretch and Hor. Stretch properties accept integer values greater than or equal to 0. These properties allow to fine-tune the behavior of size policies. The default value for the properties is 0. A higher value of the stretch means that the widget will be expanded more than widgets for which a lower stretch value is set. -Setting widgets size and position by hand + -Entering Data Using Forms +Entering Data Using Forms Data entering and editing is usually the task of the user of the database application. The designer of the database should check the form in terms of valid data entry, and see whether the form works as expected. To test your form, switch to its data view. A single database row (record) of data will be displayed and a text cursor will be set inside the first data field. You can move between fields using the left mouse button or the and &Shift; keys. While editing, there will be a pencil icon visible near the record navigator. After entering the row's (record) data you can press the &Shift;&Enter; keys or click the OK toolbar button to accept changes made to the current row. Clicking the Cancel toolbar button discards changes made to the current row and restores the contents of the data fields. You can use the record navigator's button to move to a new row. All the navigator's functions are also available in a similar way as in the data table view. -Configuring Kexi +Configuring Kexi -Docking and undocking side panels +Docking and undocking side panels  -Docking and undocking side panels -The Project Navigator and Properties Editor side panels may be undocked by either: +Docking and undocking side panels +The Project Navigator and Property Editor side panels may be undocked by either: Double-clicking on the 'grip' bar at the top of the panel; or @@ -930,17 +967,17 @@ -Command Reference +Command Reference -The Kexi Tab -The Create Tab -The Data Tab -The External Data Tab -The Tools Tab -The Form Design Tab -The Report Design Tab +The Kexi Tab  +The Create Tab  +The Data Tab  +The External Data Tab  +The Tools Tab  +The Form Design Tab  +The Report Design Tab  -The Kexi Tab +The Kexi Tab @@ -993,7 +1030,7 @@ -The Create Tab +The Create Tab @@ -1037,7 +1074,7 @@ -The Data Tab +The Data Tab @@ -1081,7 +1118,7 @@ -The External Data Tab +The External Data Tab @@ -1117,7 +1154,7 @@ The table has to be open, in order to be able to export data from it to a file. -The Tools Tab +The Tools Tab @@ -1148,7 +1185,7 @@ You should regularly compact your database to keep it in good shape, especially after extensive records operations (mass add, delete) -The Form Design Tab +The Form Design Tab @@ -1191,7 +1228,7 @@ Text Editor - A Text Box is a multiline container for data contained in your table. + A Text Editor is a multiline container for data contained in your table. Button @@ -1233,6 +1270,7 @@ A Web Browser is a widget that allows to display a web page inside the form. + Assign Action @@ -1241,7 +1279,7 @@ -The Report Design Tab +The Report Design Tab @@ -1288,11 +1326,13 @@ A Line is used as a logical separator between different parts of a form. + Chart A Chart widget is used to add a visual representation of your data presented on a graph. @@ -1300,8 +1340,9 @@ Web - A Web Widget is used to provide a minimal web browser component and print information from a local or web site on a report. + A Web widget is used to provide a minimal web browser component and print information from a local or web site on a report. + Barcode @@ -1311,15 +1352,15 @@ -Appendix A. Introduction to Databases +Appendix A. Introduction to Databases -What Is a Database? -Database and Spreadsheet -Database Design -Who Needs a Database? -Database Creation Software +What Is a Database?  +Database and Spreadsheet  +Database Design  +Who Needs a Database?  +Database Creation Software  -What Is a Database? +What Is a Database? You can define a database as a collection of data on one topic. It is organised in a way allowing to easily browse the information, make changes or add new items. Look at this diagram for one of the above examples: a simple phone book. @@ -1377,15 +1418,15 @@ To sum up, you have already got a simple database with one table Contacts. -Check content at https://www.zoho.com/creator/database-software-vs-spreadsheet.html +Check content at -Database and Spreadsheet -It is very likely that you have already used spreadsheet applications like Calligra Tables, LibreOffice Calc or &Microsoft; Excel. If so, you will probably wonder: since both spreadsheets and databases have tables, why should I use the latter? +Database and Spreadsheet +It is very likely that you have already used spreadsheet applications like Calligra Tables, LibreOffice Calc or &Microsoft; Excel. If so, you will probably wonder: since both spreadsheets and databases have tables, why should I use the latter? While comparing spreadsheets and databases you may encounter the following issues which you will later see in greater detail. -How Is a Database Different From a Spreadsheet? +How Is a Database Different From a Spreadsheet? Gradually exceeding the capacity of a mobile phone, expand your table Contacts adding a column (field) Address. Add more telephone numbers (office, home) for each person and add surnames to names. To make it simpler we assume the following: @@ -1465,16 +1506,16 @@ Such a table can be made both in a spreadsheet and in a database. Using a spreadsheet is very easy, of course. What problems do we encounter at this stage? -Referential data integrity +Referential data integrity Suppose you are using a spreadsheet and you need to change the address of at least one person. You have a small problem: you often have to change the address in many rows. For example, Joan takes three rows. A real problem will arise if you forget to change one of the rows - the address assigned to this person will be ambiguous, hence your data loses integrity. Moreover there is no simple way of deleting a chosen person from the table since you have to remember about deleting all rows related to him or her. -Data redundancy +Data redundancy This is directly connected to the previous problem. In fields Name and surname and Address the same data is entered many times. This is typical of a spreadsheets' ineffective way of storing data because the database grows unnecessarily, thus requiring more computer resources (larger size of data and slower access). -How can you solve these problems with a database? You can split information into smaller chunks by creating an additional table Persons with only two columns: Name and surname and Address: +How can you solve these problems with a database? You can split information into smaller chunks by creating an additional table Persons with only two columns: Name and surname and Address: @@ -1506,10 +1547,10 @@
-Each row in the table Persons corresponds to a single person. Table Contacts is from now on a relation to the table Persons. +Each row in the table Persons corresponds to a single person. Table Contacts is from now on a relation to the table Persons.
-Data integrity and validity +Data integrity and validity Note the way data is entered in the fields Name and surname and Address. People entering data can be fallible, sometimes even negligent. In our sample data we have both different sequence of entering name and surname (Joan Smith and Smith Joan; Adam and ADAM) and many more ways of entering the same address. Surely you can think of many other ways. The above problem shows that ⪚ when searching the telephone number of a person whose address is Western Gate 1, Warsaw you will not get a full result. You will get only one row instead of three. Moreover You will also not find all the telephone numbers searching for the value Joan Smith in the field Name and surname, because Smith Joan will not fit to Joan Smith. @@ -1599,14 +1640,14 @@ Thanks to introducing the condition required field we can be sure that the entered data is complete. In case of other tables you may of course allow omitting certain fields while entering data. -Limiting data view +Limiting data view A spreadsheet displays all rows and columns of the table which is bothersome in case of very large data sheets. You may of course filter and sort rows in spreadsheets, however you must be extra careful while doing so. Spreadsheet users are in risk of forgetting that their data view has been filtered what can lead to mistakes. For example, while calculating sums you may think you have 100 rows of data while in fact there are 20 rows more hidden. If you want to work on a small subset of data, ⪚ to send it for others to edit, you can copy and paste it to another spreadsheet and after editing paste the changed data back to the main spreadsheet. Such manual editing may cause data loss or incorrect calculations. To limit the data view database applications offer queries, forms and reports. -A very practical way of limiting is the following extended version of the previously described table Persons: +A very practical way of limiting is the following extended version of the previously described table Persons: @@ -1669,7 +1710,7 @@ Let's assume that the newly introduced column Income contains confidential data. How can you share ⪚ contact details of the persons with your coworkers but without revealing their income? It is possible if you share only a query and not the whole table. The query could select all columns except for the column Income. In database world such a query is often known as a view. -Performance and capacity +Performance and capacity Your computer is probably quite fast, however you will easily see that it doesn't help with slow, large spreadsheets. Their low efficiency is first of all due to lack of indexes accelerating the process of data search (databases do offer them). Moreover if you use things like system clipboard, even copying data may become troublesome with time. Spreadsheets containing large data sets may take ages to open. A spreadsheet loads lots of data to the computer's memory while opening. Most of the data loaded are probably useless/unnecessary for you at the moment. Databases unlike spreadsheets load data from computer storage only when needed. @@ -1683,23 +1724,23 @@ Together with Limiting data view described in the previous paragraph these qualities constitute the advantage of databases. -Data entry +Data entry The latest editions of applications for creating spreadsheets enable you to design data-entry forms. Such forms are most useful if your data cannot be conveniently displayed in tabular view, ⪚ if the text occupies too many rows or if all the columns do not fit on the screen. In this case the very way the spreadsheet works is problematic. Fields for data entry are placed loosely within the spreadsheet and very often are not secure against the user's (intentional or accidental) intervention. -Reports +Reports Databases enable grouping, limiting and summing up data in a form of a report. Spreadsheets are usually printed in a form of small tables without fully automatic control over page divisions and the layout of fields. -Programming +Programming Applications for creating databases often contain full programming languages. Newer spreadsheets have this capability too, however calculations come down to modifying the spreadsheet's fields and simple data copying, regardless of the relevance and integrity rules mentioned in previous paragraphs. Data processing within a spreadsheet is usually done via a graphical user's interface which may slow down the data processing speed. Databases are capable of working in background, outside of graphical interfaces. -Multiuse +Multiuse It is hard to imagine a multiuse of one spreadsheet. Even if it is technically possible in the case of the latest applications, it requires a lot of discipline, attention and knowledge from the users, and these cannot be guaranteed. A classical way to sharing data saved in a spreadsheet with other person is to send a file as a whole (usually using e-mail) or providing a spreadsheet file in a computer network. This way of work is ineffective for larger groups of people - data that could be needed in a particular time may be currently locked by another person. @@ -1707,7 +1748,7 @@ On the other hand, databases have been designed mainly with multiuser access in mind. Even for the simplest version locking at a particular table row's level is possible, which enables easy sharing of table data. -Security +Security Securing a spreadsheet or its particular sections with a password is only symbolic activity. After providing a spreadsheet file in a computer network, every person being able to copy the file can try to break the password. It is sometimes not so hard as the password is stored in the same file as the spreadsheet. Features for edit locking or copy locking of a spreadsheet (or its part) is equally easy to break. @@ -1718,21 +1759,21 @@ -Database Design +Database Design Database design needs careful planning. Note that Contacts table redesign proposed in section Data integrity and validity can generate problems when the table is filled with data. For example, renaming a field is a simple task, but splitting the Address field into separate fields requires careful and tedious work. To avoid such situations, rethink your database project before you create it in your computer, and before you and others will start to use it. Thus, by investing some time initially, you will most probably save your time on everyday use. -Who Needs a Database? -Stick to spreadsheets if: +Who Needs a Database? +Stick to spreadsheets if: Your needs are limited and your data will never grow to large volumes (can you actually forecast that now?) You are unable to acquire the methodology of database construction. You may however consider either outsourcing this task to someone else or using simpler tools. You use complicated spreadsheets and you lack time or money to switch to databases. Think or ask someone whether this does not lead down a blind alley. Don't count on magical tools that would change your spreadsheet (regardless how well made) into a database. -Consider using databases if: +Consider using databases if: Your data collection expands every week. You often create new spreadsheets, copy within these and you feel that this work is getting more and more tedious. In this case the effort of switching to databases easily pays off. @@ -1740,7 +1781,7 @@ -Database Creation Software +Database Creation Software So far you have learnt the general characteristics of databases without going into much detail about specific applications for designing them. The first databases were built together with large mainframe computers in the 60s, ⪚ IBM System/360. Those were not the days of PCs, therefore these databases required a highly specialized personnel. Although the old computers' hardware was unreliable, they were immeasurably slower and had less storage capacity, one feature of databases still remains most attractive: the data access by many users through a network. @@ -1753,23 +1794,23 @@ DBase - a tool for databases operation for DOS popular in the 80s. Files in DBase format are still used in some specific cases due to their simplicity. -FoxPro - an application similar to DBase (early 90s). After being taken over by Microsoft, graphic user interfaces were introduced and therefore it is used for creating databases on PCs. This product is still offered, though seems a bit obsolete. +FoxPro - an application similar to DBase (early 90s). After being taken over by Microsoft, graphic user interfaces were introduced and therefore it is used for creating databases on PCs. This product is still offered, though seems a bit obsolete. Microsoft Access - an application for databases (data and graphic interface design) with many simplifications, therefore suitable for beginners, designed in the late 80s, based on 16-Bit Architecture. This product is offered and widely used till today, especially by small companies, where efficiency and multiuser requirements are not very demanding. FileMaker - popular application similar to MS Access in simplicity, operating on Windows and Macintosh platforms, offered since 1985. -Kexi - a multiplatform application (&UNIX;/&Linux;, Windows, Mac OS X) designed in 2003, developed according to OpenSource principles, part of the global K Desktop Environment project, &ie; graphic environment for &UNIX;/&Linux; systems. A significant contributor to Kexi's development is the OpenOffice Poland company. +Kexi - a multiplatform application (&UNIX;/&Linux;, Windows, &MacOS; X) designed in 2003, developed according to OpenSource principles, part of the global K Desktop Environment project, &ie; graphic environment for &UNIX;/&Linux; systems. A significant contributor to Kexi's development is the OpenOffice Poland company. -Appendix B. Comparing Kexi to other database applications +Appendix B. Comparing Kexi to other database applications -Data types +Data types  -Data types +Data types Although different database applications tend to provide similar functionality, they often use different terminology. For your convenience, this appendix shows how the terminology used in &kexi; corresponds to that used by other database applications. Thus, this chapter may be useful when migrating databases from one application to another. The table below shows how the data types in &kexi; correspond to data types in other database applications. -Some of the data types listed here are sub-types of other types. For example, the Long text type is a sub-type of the Text type. To use a sub-type in &kexi;, you should select the corresponding basic type (in this case, Text) in the table designer, and then select the sub-type using the Subtype setting in the Properties Editor. +Some of the data types listed here are sub-types of other types. For example, the Long text type is a sub-type of the Text type. To use a sub-type in &kexi;, you should select the corresponding basic type (in this case, Text) in the table designer, and then select the sub-type using the Subtype setting in the Property Editor.
@@ -2544,177 +2585,177 @@ ADMIN +AFTER +ALLOCATE +ANALYZE +ARCHIVE +ARCHIVELOG +AUTHORIZATION +AVG +BACKUP +BECOME +BEFORE +BEGIN +BLOCK +BODY +CACHE +CANCEL +CASCADE +CHANGE +CHARACTER +CHECKPOINT +CLOSE +COBOL +COMMIT +COMPILE +CONSTRAINT +CONSTRAINTS +CONTENTS +CONTINUE +CONTROLFILE +COUNT CURSOR +CYCLE +DATABASE +DATAFILE DATE +DBA +DEC +DECLARE +DISABLE +DISMOUNT +DOUBLE +DUMP +EACH +ENABLE +END +ESCAPE +EVENTS +EXCEPT +EXCEPTIONS +EXEC +EXECUTE +EXPLAIN +EXTENT +EXTERNALLY +FETCH +FLUSH +FORCE +FOREIGN +FORTRAN FOUND -MOUNT -AFTER -CYCLE +FREELIST +FREELISTS FUNCTION -NEXT -ALLOCATE -DATABASE GO -NEW -ANALYZE -DATAFILE GOTO -NOARCHIVELOG -ARCHIVE -DBA GROUPS -NOCACHE -ARCHIVELOG -DEC INCLUDING -NOCYCLE -AUTHORIZATION -DECLARE INDICATOR -NOMAXVALUE -AVG -DISABLE INITRANS -NOMINVALUE -BACKUP -DISMOUNT INSTANCE -NONE -BEGIN -DOUBLE INT -NOORDER -BECOME -DUMP KEY -NORESETLOGS -BEFORE -EACH LANGUAGE -NORMAL -BLOCK -ENABLE LAYER -NOSORT -BODY -END LINK -NUMERIC -CACHE -ESCAPE LISTS -OFF -CANCEL -EVENTS LOGFILE -OLD -CASCADE -EXCEPT MANAGE -ONLY -CHANGE -EXCEPTIONS MANUAL -OPEN -CHARACTER -EXEC MAX -OPTIMAL -CHECKPOINT -EXPLAIN MAXDATAFILES -OWN -CLOSE -EXECUTE MAXINSTANCES -PACKAGE -COBOL -EXTENT MAXLOGFILES -PARALLEL -COMMIT -EXTERNALLY MAXLOGHISTORY -PCTINCREASE -COMPILE -FETCH MAXLOGMEMBERS -PCTUSED -CONSTRAINT -FLUSH MAXTRANS -PLAN -CONSTRAINTS -FREELIST MAXVALUE -PLI -CONTENTS -FREELISTS MIN -PRECISION -CONTINUE -FORCE MINEXTENTS -PRIMARY -CONTROLFILE -FOREIGN MINVALUE -PRIVATE -COUNT -FORTRAN MODULE +MOUNT +NEW +NEXT +NOARCHIVELOG +NOCACHE +NOCYCLE +NOMAXVALUE +NOMINVALUE +NONE +NOORDER +NORESETLOGS +NORMAL +NOSORT +NUMERIC +OFF +OLD +ONLY +OPEN +OPTIMAL +OWN +PACKAGE +PARALLEL +PCTINCREASE +PCTUSED +PLAN +PLI +PRECISION +PRIMARY +PRIVATE PROCEDURE PROFILE -SAVEPOINT -SQLSTATE -TRACING QUOTA -SCHEMA -STATEMENT_ID -TRANSACTION READ -SCN -STATISTICS -TRIGGERS REAL -SECTION -STOP -TRUNCATE RECOVER -SEGMENT -STORAGE -UNDER REFERENCES -SEQUENCE -SUM -UNLIMITED REFERENCING -SHARED -SWITCH -UNTIL RESETLOGS -SNAPSHOT -SYSTEM -USE RESTRICTED -SOME -TABLES -USING REUSE -SORT -TABLESPACE -WHEN ROLE -SQL -TEMPORARY -WRITE ROLES -SQLCODE -THREAD -WORK ROLLBACK +SAVEPOINT +SCHEMA +SCN +SECTION +SEGMENT +SEQUENCE +SHARED +SNAPSHOT +SOME +SORT +SQL +SQLCODE SQLERROR +SQLSTATE +STATEMENT_ID +STATISTICS +STOP +STORAGE +SUM +SWITCH +SYSTEM +TABLES +TABLESPACE +TEMPORARY +THREAD TIME +TRACING +TRANSACTION +TRIGGERS +TRUNCATE +UNDER +UNLIMITED +UNTIL +USE +USING +WHEN +WORK +WRITE Kexi Sybase Driver Reserved words @@ -3081,7 +3122,7 @@ -Credits and License +Credits and License &kexi; Copyright 2002-2011 The Kexi Team Kexi Developers: Binary files /tmp/zZ3vRDbxE1/calligra-2.3.86/doc/kexi/kexi_openproject.png and /tmp/BxERTtUs6S/calligra-2.3.87/doc/kexi/kexi_openproject.png differ Binary files /tmp/zZ3vRDbxE1/calligra-2.3.86/doc/stage/22x22-actions-format-text-color.png and /tmp/BxERTtUs6S/calligra-2.3.87/doc/stage/22x22-actions-format-text-color.png differ diff -Nru calligra-2.3.86/doc/stage/a11y.docbook calligra-2.3.87/doc/stage/a11y.docbook --- calligra-2.3.86/doc/stage/a11y.docbook 2012-01-07 03:25:00.000000000 +0000 +++ calligra-2.3.87/doc/stage/a11y.docbook 1970-01-01 00:00:00.000000000 +0000 @@ -1,321 +0,0 @@ - - - - -Gary -Cramblitt - - - - - -For Users with Disabilities -This section of the documentation discusses accessibility features in &kpresenter; -for users with disabilities. Some of these features apply to &kde; as a whole and are controlled from -&kcontrolcenter;. Some apply to all &koffice; applications, -and some are specific to &kpresenter;. - - -Installing the <command>kdeaccessibility</command> Module -kdeaccessibility - -Most of the features described in this chapter are enabled by installing the -kdeaccessibility module. -The kdeaccessibility module is part of the &kde; project -http://www.kde.org. The kdeaccessibility -package can be obtained from &kde-ftp;, the -main ftp site of the &kde; project. - - -Many distributions offer precompiled binaries on their ftp sites. Please check your distribution's web sites for more information. - -More information about &kde; accessibility can be obtained by -visiting http://accessibility.kde.org/. - - - - -Visual Impairments -Visual Impairments - -&kpresenter; is not usable by totally blind users. It is hoped that -a general screen reader for the blind will be available in future versions of &kde;. - - - -Theming -Theming -For low-sighted or light alergic users, several features are available from -K-Button&kcontrolcenter;. -Under Appearance & ThemesTheme Manager -, you may select from several themes. If you are light alergic, the -HighContrastDark or HighContrastLight themes -may be helpful. If you have difficulty reading small fonts or seeing small icons, the -HighContrastDark-Big or HighContrastLight-Big -themes will increase the size of text, buttons, and icons. You may also customize -background, colors, fonts, and icons from the same screen. A set of monochrome icons -is available. - - -If you choose one of the Big themes, you may discover that -some screens are too large to fit your monitor. Purchasing a larger monitor will be helpful. -You can drag the portions of the screen not visible into the visable area by -holding down the &Alt; key and dragging with the mouse anywhere -within the screen. If you have trouble operating a mouse, you can also move screens by pressing -&Alt;F3. In -the dropdown Windows Operations Menu, choose -Move. -Move the screen with the arrow keys and press &Esc;. - - - - - -&kmagnifier; -magnifier -The kdeaccessibility module includes a screen magnifier -application called &kmagnifier;. -If it is installed, you may run it from -K-ButtonUtilities -AccessibilityScreen Magnifier. - - - - -Text-to-Speech -Text-to-Speech -TTS -The kdeaccessibility module includes a Text-to-Speech -component called KTTS. If KTTS is installed, you can configure &kpresenter; to -speak the text that is under the mouse pointer or speak the text of each -screen widget as it receives focus. Before using this feature, first configure -KTTS. See The KTTS Handbook for details. -To turn on the TTS feature in &kpresenter;, -select SettingsConfigure -&kpresenter;... from the menubar. -This will display a dialog box. -Clicking TTS will allow you to change -the following. - - - - - - - - - -Speak widget under mouse pointer -When checked, &kpresenter; will speak the text of each widget -as the mouse pointer moves over the widget. - - - -Speak widget with focus -When checked, &kpresenter; will speak the text of each widget -as it receives focus. - - - -Speak tool tips -When checked, &kpresenter; will speak the popup tool tip -for each widget in addition to the text of the widget. - - - -Speak What's This? -When checked, &kpresenter; will speak the What's This? help -for each widget in addition to the text of the widget. - - - -Say whether disabled -When checked, &kpresenter; will speak the word "disabled" -if the widget is currently disabled (grayed). - - - -Speak accelerators -When checked, &kpresenter; will speak the accelerator -of the widget in addition to the text of the widget. -Accelerators are the underlined letters you see in the text of the -widget. For example, in the main menu, the -Quit menu item -has the "Q" underlined. You can choose it by pressing Q. -To speak the accelerator, check this option and enter the -word you want to speak before the accelerator in the -Prefaced by the word box. In this -example shown above, &kpresenter; will speak "Accelerator Q". - - - -Polling interval -This option determines how often &kpresenter; will -check for a change in the widget under the mouse pointer or -a new focused widget. You should leave this option on the -default setting. - - - - - -If the TTS option does not appear -on this screen, you do not have the KTTS component installed -in your system. - - -Not all widgets are spoken. For example, -the items on the main menubar are not spoken. - - - - - - - -Motor Impairments and Mouseless Operation -Motor Impairments -Mouseless Operation - - -&kmousetool; -If you can operate a mouse, but have trouble clicking, the -&kmousetool; application may help. Run it from -K-ButtonUtilities -KMouseTool (Automatik Mouse Click). - - - - -XAccess Features -XAccess -Sticky Keys -Slow Keys -Bounce Keys - -The &kcontrolcenter; offers several keyboard features collectively called XAccess. -They include: - - -Sticky Keys -This feature permits operation of meta keys, such as -&Alt;, &Ctrl;, and &Shift; without having to hold the keys down. It is useful -when you can only use one finger or one hand to operate the keyboard. -With Sticky Keys on, press and release a &Alt;, &Ctrl;, or &Shift; key, then -press another key. The result is as if you pressed both keys at once. -Press the &Alt;, &Ctrl;, or &Shift; key again to turn off the sticky key. -Activate this feature in -K-Button&kcontrolcenter; -Regional & AccessibilityModifier Keys. - - - -Slow Keys -This feature is useful if you have hand tremors or difficulty -accurately pressing keys. It prevents -inadvertent key presses by requiring that a key be held down for a minimum -time before it is accepted. Activate this feature in -K-Button&kcontrolcenter; -Regional & AccessibilityKeyboard Filters . - - - -Bounce Keys -This feature is also useful if you have hand tremors. It prevents -inadvertent repeated key presses by preventing another keystroke for -a certain amount of time. Activate this feature in -K-Button&kcontrolcenter; -Regional & AccessibilityKeyboard Filters. - - - - - - - -Mouse Emulation -Mouse Emulation -Mouse Emulation permits you to move and click the mouse using the keyboard. -Press &Alt;F12 to activate it. Use the arrow keys -to move the mouse pointer to the desired location, and press spacebar -to "click" the mouse. Unfortunately, you cannot use Mouse Emulation to perform -&RMB; clicks or dragging. - - - - -Mouse Navigation -Mouse Navigation -This feature permits you to emulate the mouse using the numeric keypad -of your keyboard. To activate it, go to -K-Button&kcontrolcenter; -PeripheralsMouse -Mouse Navigation. -Check the Move pointer with keyboard (using the num pad) box. When you do this, the other settings will become enabled, and you can customize the keyboard pointer behavior further, if required. - The various keys on the number pad move in the direction you would expect. Note that you can move diagonally as well as up, down, left and right. The 5 key emulates a click to a pointer button, typically &LMB;. You change which button is emulated by using the / key (which makes it &LMB;), -* key (which makes it middle mouse button) and - (which makes it &RMB;). - Using the + emulates a doubleclick to the selected pointer button. You can use the -0 key to emulate holding down the selected pointer button (for easy dragging), -and then use the . to emulate releasing the selected pointer button. - - - - - - - - - - - -Keyboard shortcuts - -Use the Menu key to pop up the context -menu. On most keyboards, the Menu key is on the righthand -side of the keyboard between the &Windows; and &Ctrl; -keys. It has a menu icon on it. - - - - - -Resizing panels - -You can move the sizing bar between the outline panel and the -slide panel, and between the slide panel and the notes panel -by pressing F8. A sizing icon appears -overtop the sizing bar. Pressing F8 again moves from one -sizing bar to the next. After the last sizing bar, pressing F8 -hides the sizing icon. Use the arrow keys to move the bar up or down, or left or right. -Press &Esc; when finished sizing. - - - - - -Setting focus to widgets - -Normally, one can use the and &Shift; -to move focus from one widget to the next in any application. However, when focus is -in the slide panel of &kpresenter;, pressing does not move the focus. -You can set focus to any widget that can receive focus by -pressing &Alt;F8. A small lettered box appears -overtop each widget on the screen that can receive focus. - - - - - - - - -Press the letter to move focus to the corresponding widget. Press -&Alt;F8 again or &Esc; -to abandon moving the focus. - - - - - - - Binary files /tmp/zZ3vRDbxE1/calligra-2.3.86/doc/stage/autocorrection1.png and /tmp/BxERTtUs6S/calligra-2.3.87/doc/stage/autocorrection1.png differ Binary files /tmp/zZ3vRDbxE1/calligra-2.3.86/doc/stage/autocorrection2.png and /tmp/BxERTtUs6S/calligra-2.3.87/doc/stage/autocorrection2.png differ Binary files /tmp/zZ3vRDbxE1/calligra-2.3.86/doc/stage/autocorrection3.png and /tmp/BxERTtUs6S/calligra-2.3.87/doc/stage/autocorrection3.png differ Binary files /tmp/zZ3vRDbxE1/calligra-2.3.86/doc/stage/autocorrection4.png and /tmp/BxERTtUs6S/calligra-2.3.87/doc/stage/autocorrection4.png differ Binary files /tmp/zZ3vRDbxE1/calligra-2.3.86/doc/stage/barstyle1.png and /tmp/BxERTtUs6S/calligra-2.3.87/doc/stage/barstyle1.png differ Binary files /tmp/zZ3vRDbxE1/calligra-2.3.86/doc/stage/barstyle3.png and /tmp/BxERTtUs6S/calligra-2.3.87/doc/stage/barstyle3.png differ Binary files /tmp/zZ3vRDbxE1/calligra-2.3.86/doc/stage/barstyle4.png and /tmp/BxERTtUs6S/calligra-2.3.87/doc/stage/barstyle4.png differ Binary files /tmp/zZ3vRDbxE1/calligra-2.3.86/doc/stage/barstyle5.png and /tmp/BxERTtUs6S/calligra-2.3.87/doc/stage/barstyle5.png differ Binary files /tmp/zZ3vRDbxE1/calligra-2.3.86/doc/stage/barstyle6.png and /tmp/BxERTtUs6S/calligra-2.3.87/doc/stage/barstyle6.png differ Binary files /tmp/zZ3vRDbxE1/calligra-2.3.86/doc/stage/barstyle7.png and /tmp/BxERTtUs6S/calligra-2.3.87/doc/stage/barstyle7.png differ Binary files /tmp/zZ3vRDbxE1/calligra-2.3.86/doc/stage/break.png and /tmp/BxERTtUs6S/calligra-2.3.87/doc/stage/break.png differ Binary files /tmp/zZ3vRDbxE1/calligra-2.3.86/doc/stage/changeformat.png and /tmp/BxERTtUs6S/calligra-2.3.87/doc/stage/changeformat.png differ Binary files /tmp/zZ3vRDbxE1/calligra-2.3.86/doc/stage/completion.png and /tmp/BxERTtUs6S/calligra-2.3.87/doc/stage/completion.png differ Binary files /tmp/zZ3vRDbxE1/calligra-2.3.86/doc/stage/configure1.png and /tmp/BxERTtUs6S/calligra-2.3.87/doc/stage/configure1.png differ Binary files /tmp/zZ3vRDbxE1/calligra-2.3.86/doc/stage/configure2.png and /tmp/BxERTtUs6S/calligra-2.3.87/doc/stage/configure2.png differ Binary files /tmp/zZ3vRDbxE1/calligra-2.3.86/doc/stage/configure3.png and /tmp/BxERTtUs6S/calligra-2.3.87/doc/stage/configure3.png differ Binary files /tmp/zZ3vRDbxE1/calligra-2.3.86/doc/stage/configure4a1.png and /tmp/BxERTtUs6S/calligra-2.3.87/doc/stage/configure4a1.png differ Binary files /tmp/zZ3vRDbxE1/calligra-2.3.86/doc/stage/configure4a.png and /tmp/BxERTtUs6S/calligra-2.3.87/doc/stage/configure4a.png differ Binary files /tmp/zZ3vRDbxE1/calligra-2.3.86/doc/stage/configure4b.png and /tmp/BxERTtUs6S/calligra-2.3.87/doc/stage/configure4b.png differ Binary files /tmp/zZ3vRDbxE1/calligra-2.3.86/doc/stage/configure4c.png and /tmp/BxERTtUs6S/calligra-2.3.87/doc/stage/configure4c.png differ Binary files /tmp/zZ3vRDbxE1/calligra-2.3.86/doc/stage/configure4.png and /tmp/BxERTtUs6S/calligra-2.3.87/doc/stage/configure4.png differ Binary files /tmp/zZ3vRDbxE1/calligra-2.3.86/doc/stage/configure5.png and /tmp/BxERTtUs6S/calligra-2.3.87/doc/stage/configure5.png differ Binary files /tmp/zZ3vRDbxE1/calligra-2.3.86/doc/stage/configure6b.png and /tmp/BxERTtUs6S/calligra-2.3.87/doc/stage/configure6b.png differ Binary files /tmp/zZ3vRDbxE1/calligra-2.3.86/doc/stage/configure6c.png and /tmp/BxERTtUs6S/calligra-2.3.87/doc/stage/configure6c.png differ Binary files /tmp/zZ3vRDbxE1/calligra-2.3.86/doc/stage/configure6d.png and /tmp/BxERTtUs6S/calligra-2.3.87/doc/stage/configure6d.png differ Binary files /tmp/zZ3vRDbxE1/calligra-2.3.86/doc/stage/configure6e.png and /tmp/BxERTtUs6S/calligra-2.3.87/doc/stage/configure6e.png differ Binary files /tmp/zZ3vRDbxE1/calligra-2.3.86/doc/stage/configure6.png and /tmp/BxERTtUs6S/calligra-2.3.87/doc/stage/configure6.png differ Binary files /tmp/zZ3vRDbxE1/calligra-2.3.86/doc/stage/configure7.png and /tmp/BxERTtUs6S/calligra-2.3.87/doc/stage/configure7.png differ Binary files /tmp/zZ3vRDbxE1/calligra-2.3.86/doc/stage/configure-document.png and /tmp/BxERTtUs6S/calligra-2.3.87/doc/stage/configure-document.png differ Binary files /tmp/zZ3vRDbxE1/calligra-2.3.86/doc/stage/configure-grid.png and /tmp/BxERTtUs6S/calligra-2.3.87/doc/stage/configure-grid.png differ Binary files /tmp/zZ3vRDbxE1/calligra-2.3.86/doc/stage/configure-misc.png and /tmp/BxERTtUs6S/calligra-2.3.87/doc/stage/configure-misc.png differ diff -Nru calligra-2.3.86/doc/stage/faq.docbook calligra-2.3.87/doc/stage/faq.docbook --- calligra-2.3.86/doc/stage/faq.docbook 2012-01-07 03:25:00.000000000 +0000 +++ calligra-2.3.87/doc/stage/faq.docbook 1970-01-01 00:00:00.000000000 +0000 @@ -1,53 +0,0 @@ - - - - -Neil -Lucock - -
neil@nlucock.freeserve.co.uk
-
-
- -Krishna -Tateneni - -
tateneni@pluto.njcc.com
-
-
- -
-
-Questions and Answers -&kpresenter; 1.6 - -Things you might like but &kpresenter; does not yet do (and what -to do about it) - - - -Powerpoint Files. &kpresenter; does -attempt to import &Microsoft; Powerpoint -files but it does not always work perfectly. It depends on the -Powerpoint file version and what is in the -file. You can always import pictures for the background image and -re-type any text. It's not the ideal solution, re-doing the entire -presentation. However, just bear in mind that -Powerpoint does not even attempt to read -&kpresenter; files. - -Taking notes or minutes. One piece of software allows you to -make notes during the meeting and puts them into a word -processor. If you are speaking, someone else should be taking notes. If -you really must do this sort of thing, take a note pad and pencil. - - - -
diff -Nru calligra-2.3.86/doc/stage/great-presentations.docbook calligra-2.3.87/doc/stage/great-presentations.docbook --- calligra-2.3.86/doc/stage/great-presentations.docbook 2012-01-07 03:25:00.000000000 +0000 +++ calligra-2.3.87/doc/stage/great-presentations.docbook 2012-01-28 07:04:47.000000000 +0000 @@ -27,7 +27,7 @@ General Hints and Tips for Great Presentations -Okay, you've decided to use &kpresenter; for your +Okay, you've decided to use &stage; for your presentation. Before you start making transparencies or animated slide shows, go and find a piece of paper and sit down at a desk away from the computer. It doesn't matter whether you are doing a teaching @@ -57,7 +57,7 @@ you will know what you are going to say next and how you are going to say it. -&kpresenter; does not produce Speaker's Notes at the time of +&stage; does not produce Speaker's Notes at the time of writing, but I am happy to just use ordinary slides. Produce some slides for yourself, printed on plain paper, and some for use with the Overhead Projector. Make the text on your slides nice and big, you @@ -82,7 +82,7 @@ if you want your audience to be able to see. I often project a picture onto a wipeboard and draw over the top of it. If you are using a PC with a digital projector you can draw over the top of your slides with -&kpresenter;'s pen tool. Remember, drawing freehand with a mouse is a +&stage;'s pen tool. Remember, drawing freehand with a mouse is a skill that needs practice. If you are using an Overhead projector, you can use transparent overlay slides and a pen over the top of your computer generated ones. @@ -139,7 +139,7 @@ that adds to what you are saying. Finally, relax and try not to rush through it all. Talk to them, not at them and remember that a presentation is about whatever message you are trying to get -across. &kpresenter; is a useful tool. It can help you to get that +across. &stage; is a useful tool. It can help you to get that message over, but it cannot do the job for you.
diff -Nru calligra-2.3.86/doc/stage/guides.docbook calligra-2.3.87/doc/stage/guides.docbook --- calligra-2.3.86/doc/stage/guides.docbook 2012-01-07 03:25:00.000000000 +0000 +++ calligra-2.3.87/doc/stage/guides.docbook 2012-01-28 07:04:47.000000000 +0000 @@ -43,204 +43,61 @@ Detailed Guides This chapter describes how to perform some common tasks in -&kpresenter;. +&stage;. -Create a <acronym>HTML</acronym> Slideshow +Create a &HTML; Slideshow -Turn an existing presentation into standard HTML +Turn an existing presentation into standard &HTML; pages with accompanying navigation aids. - - First, either make a new presentation, or open an existing one. Then, -click on FileCreate HTML -Slideshow... - - -File menu option to Create HTML -Slideshow... - - - - -File menu option to Create HTML -Slideshow... - - - - - -A dialog box asks if you want to use a previously saved -configuration: - - -Previous configuration dialog - - - - -Previous configuration dialog - - - -Click No if this is the first time that you have -used this feature, or if you want to alter specific options. The -Yes option allows you to use details that you have -previously entered for your HTML slideshow, so that you can -quickly create the slideshow without needing to adjust the options. - - - +click on FileExport as + HTML... You will then get a dialog box asking for a few details: -Fill in the details for your HTML +Fill in the details for your &HTML; slideshow -Fill in the details for your HTML -slideshow - - - -Fill in each field (the dialog takes the informations from &kcontrolcenter; if they exist) and ensure that the path details are correct, as this -is where &kpresenter; will save your new HTML files -and pictures. Click on the Next when you are -done. - -If the path you select at this stage does not exist, &kpresenter; will -ask if you would like to create it. - - -Now you can configure the specific HTML options: - - -Fill in additional details for your HTML -slideshow - - - - -Fill in additional details for your HTML -slideshow - - - -Here, the encoding and format details can be changed, along with -the zoom level of the slides. For example, if you originally designed your -slides to display full screen on a 1280 x 1024 resolution screen, you could -scale the slides to 50% to enable them to be easily viewed in a much smaller web -browser window. - -In most cases, the defaults will be fine, and you can safely press the -Next to continue to the next page. - - - -Now you can customize the colors of the web pages: - - -Setting up the display style for your HTML -slideshow - - - - -Setting up the display style for your -HTML +Fill in the details for your &HTML; slideshow -When &kpresenter; creates the web pages for you, the text colors -for the navigation aids will follow whatever you set here. To change any of -these colors, click the colored bar next to the corresponding text label. The -colors used in your actual slides will be unchanged. - -Choose colors that are complementary to the contents of your -presentation. - - -The Next button presents a dialog box -that allows you to change the name used on the HTML page for -each slide: +Fill in Title and Author fields. +Select the slides which should be exported. If you want to change a name +used on the &HTML; page for each slide double click on the name and edit it +inline. - -Setting the slide names - - - - -Setting the slide names - - - - - - -If your presentation was intended to be displayed in an unattended manner -(&ie; automatic advance to next slide, &etc;), you can also make your -HTML -presentation counterpart exhibit the same behavior: +In the Output preview +area the downsized slides are displayed and you can check the correct slide order +and browse the presentation with the < and > buttons. + - -Unattended presentations - - - - - -Unattended presentations - - +Now you can select a stylesheet with the configuration of the &HTML; options. -Here, you can force the slide to advance to the next after a specified -amount of time, and also make the presentation return to the start once it -reaches the end. - - - -Now it is time to actually produce your HTML -presentation, the progress of -which is shown in this dialog box: +To actually produce your &HTML; presentation, press the Export +button and select a folder. - -Saving your configuration - - - - - -Saving your configuration - - - -Finally, you can save the configuration you have just used before you -close the dialog box by pressing the Save -Configuration... button. - - - -What we now have are the newly-produced html/ +What we now have are the newly-produced html/ and pics/ folders, created where we earlier set the path: -The newly created HTML slideshow +The newly created &HTML; slideshow folders -The newly created HTML slideshow +The newly created &HTML; slideshow folders - - There is also an index.html file to launch your web slideshow. @@ -248,7 +105,7 @@ You can see how it works by using your file manager or web browser to open the index.html file. Click where prompted, and the first slide of your presentation is displayed. It will now behave as a -&kpresenter; slideshow. +&stage; slideshow. Each click on the arrow icons take you to the next or previous slide. To get back to the start of the slideshow click on the slide icon. @@ -258,184 +115,10 @@ remembering to keep the folder structure intact. - -Exporting &kpresenter; presentations to a <trademark>Memory -Stick</trademark> - -Some Sony projectors have the ability to run a presentation directly -from a Memory Stick, without needing to connect a -computer up to the projector. &kpresenter; can export presentations to the -format required by these projectors, and this tutorial will show you how to -export your presentation. - - - -Each exported slideshow consists of a series of image files (one for -each slide in the original presentation, plus two title slides) and an -index file. They are created in a fairly complex folder structure -that allows more than one presentation to be stored on a single memory -stick. A simple example is shown below, consisting of two -presentations. - - - - - - -Memory Stick folder -structure - - - - - - - -If the presentation that you want to export is not already open, go to -FileOpen... and select the -presentation that you want to export. - - - - - -Now, select the File menu and choose Create -Memory Stick Slideshow.... - - - -The &kpresenter; Create Memory Stick -Slideshow... menu selection. - - - - -The &kpresenter; Create Memory Stick -Slideshow... menu selection. - - - - - - -This will bring up the Create Memory Stick -Slideshow dialog. - - -The &kpresenter; Create Memory Stick -Slideshow dialog. - - - - -The &kpresenter; Create Memory Stick -Slideshow dialog. - - - - -The Path is the folder in which your presentation will -be exported to as folders (DCIM and -MSSONY, see the folder structure -diagram above) will be created. If you are able to, you may wish to export -directly -to the Memory Stick, in which case you would enter the -location of the medium here. - - - -The Title is used for both the name of the index -file, and as a text label on the title slide. Note that this title -does not affect the titles on any of the normal presentation slides - -the title slide is visible using the Sony projector setup prior to -starting the actual presentation display. - - -Select the Set Colors option to expand the -dialog: - - -The &kpresenter; Create Memory Stick -Slideshow dialog (extended). - - - - -The &kpresenter; Create Memory Stick -Slideshow dialog (extended). - - - - -These two color selectors are only used for the title slide. It -can be useful to change the title slides to make the presentations -easier to identify when working on the projector, though it is perfectly safe to -leave them as default. - - - -You can then press the OK button to proceed with the -actual export process. - - - - - - -Your presentation will now be exported into the correct format, with the -following dialog informing you of the progress of this process: - - - -The &kpresenter; Create Memory Stick -Slideshow progress dialog. - - - - -The &kpresenter; Create Memory Stick -Slideshow progress dialog. - - - - -When the export is complete, you can select the -Done button, and the dialog will close. - - - - - -If you did not export the slideshow directly onto a Memory -Stick, you will need to copy the correct files onto the -Memory -Stick before you can utilise the projector. As noted above, -you need to copy over the correct folders and files starting at -DCIM and MSSONY into the -"root", or / of the Memory Stick. It -is -critical that the folder structure is maintained, and you may -find it easier to copy the whole of DCIM and -MSSONY folders. - - - -If necessary, you can safely rename the index file (which is -Slideshow.SPP by default), however you cannot -rename the slide images, nor can you change the name of these folders, -as these are encoded into the index file. - - - - - - - -Creating &kpresenter; Templates +Creating &stage; Templates -It is very easy to add new templates to &kpresenter;'s library. +It is very easy to create a new template for &stage;. If you have made a presentation in a style that you would like to use again, you can save it as a template. @@ -443,33 +126,14 @@ This tutorial will show how we can make a new template and save it. - - -Open &kpresenter; and create a new document. - +Open &stage; and create a new document. - To add a little sparkle to the blank slide, we can change the slide -background - do this by either going to Format > -Slide Background..., or by selecting the same item -from the &RMB; menu: - - -The &kpresenter; Slide Background -dialog. - - - - -The &kpresenter; Slide Background -dialog. - - +background - do this by selecting the Background editing tool +in the Tools docker. -We want the background to look attractive, so let's add a background -gradient by using the drop-down menu, and then selecting the gradient colors by -clicking the colored boxes. Of course, you may choose to use an image as a -background by clicking the Picture tab: feel free to +We want the background to look attractive, so you may choose to use an image as a +background by clicking the Select background image button: feel free to experiment, but keep it beautiful! @@ -481,9 +145,7 @@ Choosing a slide background - - The page should now have the background you desire. Create a text box, and type a heading for your slide: @@ -498,58 +160,8 @@ When you are happy with your template, go to File -Template Manager: - - -FileTemplate -Manager - - - - -FileTemplate -Manager - - - -This dialog box allows you to select where you would like your template to -be saved: - - -Saving the new template - - - - -Saving the new template - - - -I highly recommend that you save the template in the Screen -Presentations group. You may call it whatever you wish, in this case, -my template is named Tutorial_Template. Once you are -happy with the settings, press OK to add your custom -template to the template collection. - - - -You can now close the document you have been working on (there is no need -to save it). The next time you are presented with the startup -dialog, your very own template will be available to select! - - -Your new template in the &kpresenter; startup -dialog. - - - - -Your new template in the &kpresenter; -startup dialog. - - - - +Save As and select Opendocument +Presentation Template filetype in the file dialog. Binary files /tmp/zZ3vRDbxE1/calligra-2.3.86/doc/stage/htmlshow1.png and /tmp/BxERTtUs6S/calligra-2.3.87/doc/stage/htmlshow1.png differ Binary files /tmp/zZ3vRDbxE1/calligra-2.3.86/doc/stage/htmlshow2.png and /tmp/BxERTtUs6S/calligra-2.3.87/doc/stage/htmlshow2.png differ Binary files /tmp/zZ3vRDbxE1/calligra-2.3.86/doc/stage/htmlshow3.png and /tmp/BxERTtUs6S/calligra-2.3.87/doc/stage/htmlshow3.png differ Binary files /tmp/zZ3vRDbxE1/calligra-2.3.86/doc/stage/htmlshow4.png and /tmp/BxERTtUs6S/calligra-2.3.87/doc/stage/htmlshow4.png differ Binary files /tmp/zZ3vRDbxE1/calligra-2.3.86/doc/stage/htmlshow5.png and /tmp/BxERTtUs6S/calligra-2.3.87/doc/stage/htmlshow5.png differ Binary files /tmp/zZ3vRDbxE1/calligra-2.3.86/doc/stage/htmlshow6.png and /tmp/BxERTtUs6S/calligra-2.3.87/doc/stage/htmlshow6.png differ Binary files /tmp/zZ3vRDbxE1/calligra-2.3.86/doc/stage/htmlshow7.png and /tmp/BxERTtUs6S/calligra-2.3.87/doc/stage/htmlshow7.png differ Binary files /tmp/zZ3vRDbxE1/calligra-2.3.86/doc/stage/htmlshow8.png and /tmp/BxERTtUs6S/calligra-2.3.87/doc/stage/htmlshow8.png differ Binary files /tmp/zZ3vRDbxE1/calligra-2.3.86/doc/stage/htmlshow9.png and /tmp/BxERTtUs6S/calligra-2.3.87/doc/stage/htmlshow9.png differ diff -Nru calligra-2.3.86/doc/stage/index.docbook calligra-2.3.87/doc/stage/index.docbook --- calligra-2.3.86/doc/stage/index.docbook 2012-01-07 03:25:00.000000000 +0000 +++ calligra-2.3.87/doc/stage/index.docbook 2012-01-28 07:04:47.000000000 +0000 @@ -1,23 +1,25 @@ - - + + Calligra Tables"> + Calligra Words"> + Calligra Stage"> + Calligra Flow"> + Calligra Plan"> + - - - ]> -The &kpresenter; Handbook +The &stage; Handbook @@ -43,8 +45,8 @@ -2006-11-22 -1.6 +2012-01-18 +2.4 19992000 @@ -70,15 +72,15 @@ -&kpresenter; is the presentations program in the &koffice; suite of +&stage; is the presentations program in the &calligra; suite of productivity applications. KDE -KPresenter -KOffice +Stage +Calligra Graphics Presentations @@ -89,60 +91,40 @@ Introduction Please check http://docs.kde.org +url="http://docs.kde.org/en/development/en/calligra/stage/index.html">http://docs.kde.org for updated versions of this document. -&kpresenter; is the presentations program in the &koffice; productivity -suite. Using &kpresenter;, you can prepare a set of slides for use in an +&stage; is the presentations program in the &calligra; productivity +suite. Using &stage;, you can prepare a set of slides for use in an on-screen slideshow or for printing. Your slides can include text and graphics in a variety of formats, and of course, you can embed all sorts of objects using KParts. -The &koffice; productivity suite consists of a number of applications +The &calligra; productivity suite consists of a number of applications which are designed to work together. Overview documentation for -&koffice; is available, as well as manuals for each component of the -suite. The components of &koffice; are: +&calligra; is available, as well as manuals for each component of the +suite. Other components of &calligra; are: -&kword; - a frames based wordprocessor. +&words; - a frames based wordprocessor. -&kspread; - a spreadsheet application. +&tables; - a spreadsheet application. - - -&kpresenter; - a presentations application. - - - - - - -&kformula; - an editor for mathematical formulae. - - - - - -&kchart; - an application to draw charts and diagrams. - - - - -&koffice; is a free (or open-source) software project which is +&calligra; is a free (or open-source) software project which is released under the terms of the &GNU; General Public License. @@ -151,8 +133,6 @@ &tutorial; -&screen; - &guides; &great; @@ -161,15 +141,11 @@ &options; -&a11y; - -&faq; - Credits and License -&kpresenter; +&stage; Binary files /tmp/zZ3vRDbxE1/calligra-2.3.86/doc/stage/kbd-focus-ext.png and /tmp/BxERTtUs6S/calligra-2.3.87/doc/stage/kbd-focus-ext.png differ Binary files /tmp/zZ3vRDbxE1/calligra-2.3.86/doc/stage/link.png and /tmp/BxERTtUs6S/calligra-2.3.87/doc/stage/link.png differ diff -Nru calligra-2.3.86/doc/stage/menus.docbook calligra-2.3.87/doc/stage/menus.docbook --- calligra-2.3.86/doc/stage/menus.docbook 2012-01-07 03:25:00.000000000 +0000 +++ calligra-2.3.87/doc/stage/menus.docbook 2012-01-28 07:04:47.000000000 +0000 @@ -34,9 +34,9 @@ The Menu and Toolbar Items -&kpresenter; presents different types of interfaces for you to interact +&stage; presents different types of interfaces for you to interact with the program. Perhaps the most familiar type of interface is the -menu which appears on the top of the &kpresenter; window. +menu which appears on the top of the &stage; window. Clicking on the menu items gives you a list of commands from which you can choose the one you want. Many of the commands can also be accessed @@ -50,133 +50,68 @@ Manipulating the Toolbars -In addition to the menus, &kpresenter; also has a set of toolbars. Each +In addition to the menus, &stage; also has a toolbar. The toolbar consists of a collection of icons. A toolbar icon often presents a convenient shortcut to a command that is found in one of the menus. - -The toolbars - - - - - -The toolbars - - - - -You can move the toolbar around by dragging the handle, shown here in red. Toolbars can -be docked or attached to any side of the &kpresenter; +You can move the unlocked toolbar around by dragging the handle at the left. The unlocked toolbar can +be docked or attached to any side of the &stage; window. If you like, you can also have the toolbar float in -its own window, separated from the main &kpresenter; window as shown in the -screenshot below: - - -Floating toolbar - - - - - -Floating toolbar - - - +its own window, separated from the main &stage; window. If you don't like dragging toolbars around, -right click on the handle and a menu pops up as shown -in the screenshot below: - - -Toolbar context menu - - - - - -Toolbar context menu - - - - - -The first few items in the popup menu have to do with the placement of -the toolbar. You can choose any of the four sides of the &kpresenter; -window, or have the toolbar float in a separate -window. Choosing Flat hides the toolbar. -To unflat a hidden toolbar, &LMB; click on its handle. - - +right click on the handle and a menu pops up. -Choosing the next item in the menu, Text Position, leads +Choosing the item Text Position leads to an additional menu which lets you control the appearance of the items in toolbar. This additional cascading menu is shown in the screenshot below: -The toolbar modes menu +Text Position - + -The toolbar modes menu +Text Position -The default view of the toolbar is icons only. In this view, if you +You can choose to display the toolbar items as text instead of icons, or +even to combine both icons and text. If you want both text and icons, +the cascading menu allows you to select whether the text appears beside +the icons or below them. + + + +In icons only view, if you don't know what a particular icon means, you can hold the mouse over the icon, and after a second or so, a little hint pops up in a highlighted -text box as shown in the screenshot below: +text box. - -Tooltips - - - - - -Tooltips - - - - -You can choose to display the toolbar items as text instead of icons, or -even to combine both icons and text. If you want both text and icons, -the cascading menu allows you to select whether the text appears beside -the icons or below them. All four styles of displaying toolbar items are -shown in the screenshot below: +The Orientation item in the popup menu has to do with +the placement of the toolbar. You can choose any of the four sides of the &stage; +window. - -The toolbar styles - - - - - -The toolbar styles - - - -The &kpresenter; menus are discussed in the following sections. +The &stage; menus are discussed in the following sections. -<guimenu>File</guimenu> Menu +File Menu @@ -276,6 +211,8 @@ + + File @@ -298,7 +235,7 @@ Export the currently open presentation to one of several common formats for use in another application, or for exchange with someone -who does not have access to &kpresenter;. +who does not have access to &stage;. @@ -310,7 +247,7 @@ -Open a new email message in your selected email client with the current &kpresenter; document attached. +Open a new email message in your selected email client with the current &stage; document attached. @@ -319,7 +256,7 @@ File -Create HTML Slideshow... +Export as HTML... @@ -330,21 +267,9 @@ - - - -File -Create Memory Stick Slideshow... - - - - -Starts the Memory Stick dialog, which is described in the -section . - - - + + @@ -397,11 +322,13 @@ -Displays the presentation with a &PostScript; viewer, +Displays the presentation with a viewer, exactly as it would look if printed. + + @@ -441,7 +368,7 @@ -Close &kpresenter;. You will be given an opportunity +Close &stage;. You will be given an opportunity to save all changes in all open presentations first. @@ -450,7 +377,7 @@ -<guimenu>Edit</guimenu> Menu +Edit Menu @@ -534,7 +461,7 @@ -&Ctrl;Delete +&Ctrl;Del Edit Delete @@ -635,18 +562,9 @@ - - - -Edit -Copy Slide - - - -Copy the current slide to the clipboard. - - + + -<guimenu>View</guimenu> Menu +View Menu @@ -706,7 +612,7 @@ so you can work on more than one slide at a time. - + +&Ctrl;F5 +View +Normal + + +&Ctrl;F6 +View +Notes + + +&Ctrl;F7 View -Show Notebar +Slides Sorter -Toggle the display of the notebar where you can -see an overview of all the notes in your presentation. +Switch with these actions between the view modes Normal, where you edit +slides, Notes, which shows a slide preview with a textbox for your annotations for the +actual slide and the Slides Sorter view, where you can rename, cut, copy and paste slides +and arrange them for your presentation. + +&Ctrl;F8 View -Slide Master +Show Master Slides Toggle the display of the slide master where you can put objects that you want to appear on each slide in your presentation. - + + + View -Guide Lines +Show Grid -When working in &kpresenter; you can drag a guide +If enabled, &stage; will display a grid of dots +representing the intersections of imaginary horizontal and vertical +lines. You can use these dots to precisely position objects on the +slide. + + + + +View +Snap to Grid + +If this is enabled, when dropping or moving objects on the +slide the top left corner of the object will snap or +move, to the nearest grid point. +This does reduce your freedom to freely position objects on the +slide, however it also helps to line up objects precisely. It is +easily disabled or enabled with this menu entry, allowing you the best +of both worlds. + + + + + + +View +Show Guides + + + +When working in &stage; you can drag a guide line from either the horizontal or vertical ruler onto your document. This guide-line will not print or display in the finished presentation, it is simply to help you align objects on screen. If @@ -841,7 +794,7 @@ will retain the guide lines you created. - + + @@ -897,9 +822,9 @@ This submenu allows you to zoom in or out of the slide. Several predefined zoom levels are available, including -Whole Slide to scale the entire slide so as +Fit Page to scale the entire slide so as to be visible in the size window you have open, and -Width to scale the slide so it fills the +Fit Page Width to scale the slide so it fills the entire width of the window, although you may now have to scroll vertically. There are also several other scaling choices, from 33% up to @@ -907,15 +832,17 @@ + + -<guimenu>Insert</guimenu> Menu +Insert Menu - + @@ -945,7 +872,7 @@ value that may be updated as you update the document. - + @@ -991,20 +917,35 @@ - +--> -InsertFile... +InsertImport Slideshow... Insert an already existing presentation. A standard &kde; file -open dialog will appear, allowing you to choose a &kpresenter; Document (.kpr) or a -OASIS OpenDocument Presentation (.odp), which will be inserted after the last slide in your current presentation. +open dialog will appear, allowing you to choose a +OpenDocument Presentation (.odp), which will be inserted after the last slide in your current presentation. + + + + + + +Insert +Picture... + + + +Use this menu item to insert one or more pictures, each +is inserted on a new slide. This is useful for the people who want to use +&stage; to make a slide show. + @@ -1065,8 +1003,6 @@ - - An object is an embeddable file, in one of many formats. A common use of this action is to insert scaleable clipart in @@ -1086,7 +1022,7 @@ Insert a raster image. These are not as easily -scaleable as vector images or clipart. &kpresenter; +scaleable as vector images or clipart. &stage; currently understands many formats, including .tiff, .jpg, You can insert several types of lines. Line drawing is described -further in the drawing tools section. +further in the drawing tools section. @@ -1121,7 +1057,7 @@ section. - +--> @@ -1131,23 +1067,81 @@ Scan an image with a scanner. This requires you have a -scanner installed. It opens the Acquire Image dialog to allow the use of the scanner. +scanner installed. It opens a scan dialog to allow the use of the scanner. + -<guimenu>Format</guimenu> Menu +Format Menu + Format +Font... + + + + +The Select Font dialog contains options for selected +segments of text. + +With this dialog, you can change the font, style and size of +selected text. The preview box at the bottom +allows you to approximate changes before you make them. + + + + + + + + + +&Ctrl;&Alt;P + + +Format +Paragraph... + + + + +The Paragraph Format dialog contains settings for +larger blocks of text, such as paragraphs. Using this dialog, you can set +indenting, line spacing, bullet/numbered list and border settings. + + + + + + + + +&Ctrl;&Alt;S + +Format +Style Manager + + + +The Style Manager allows you to create an entire set of +attributes that will be applied to selected text all at once. + + + + @@ -1341,7 +1335,7 @@ A4, US legal. - + - + - -<guimenu>Slide Show</guimenu> Menu + +Slide Menu - -Slide Show -Configure Slide Show... +Slide +Insert Slide - -You can set up the properties for the entire slide show here, -including whether to show the duration on screen, which of the slides -in a presentation to include, and several other global settings. - - +Insert a new slide after the current one. -Slide Show -Edit Object Effect... +Slide +Copy Slide -Choose what effect you want to apply for the highlighted object. This is where -you can set the order of appearance, how the object will appear, if you want a sound while the object appears and if you want some disappearance effects too. +Copy the current slide to the clipboard. -Slide Show -Edit Slide Transition... +Slide +Delete Slide + + +Delete the current page from the presentation. You +will be asked to confirm this action. + + + + + + +PageUp +Slide +Previous Slide -Apply transition effects to the currently open slide. This is where -you can choose how the transition from one slide to the next -will be handled. - -The transition effects you select here are applied on the -transition from this slide -to the next. - +Go back to the previous slide in the slide show. -F12 -Slide Show -Start +PageDown +Slide +Next Slide -Begin the slideshow from the current slide. +Go to the next slide in the slide show. -Slide Show -Start From First Slide +&Ctrl;Home +Slide +First Slide -Begin the slideshow from the first slide. +Go directly to the first slide in the slide show. -Slide Show -Custom Slide Show... +&Ctrl;End +Slide +Last Slide -Opens a dialog to Add..., Modify..., -Remove and Copy slides and -Test the slide show in full screen mode. +Go immediately to the final slide in the slide show. + + + + +Slide Show Menu + + -Home +&Shift;F5 Slide Show -Go to Start +Start Presentation +From Current Slide -Go directly to the first slide in the slide show. +Begin the slideshow from the current slide. -PageUp +F5 Slide Show -Previous Slide +Start Presentation +From First Slide -Go back to the previous slide in the slide show. +Begin the slideshow from the first slide. -PageDown Slide Show -Next Slide +Configure Slide Show... -Go to the next slide in the slide show. +You can set up the properties for the entire slide show here, +including whether to show the duration on screen, which of the slides +in a presentation to include, and several other global settings. - + + + -The ability to expand abbreviations can save you a lot of typing -time, if you often repeat text whether in the same presentation or in -multiple presentations. + -For instance, if you work for Company with a really really -long name Inc. then you might define an autocorrection entry so -that whenever you type myJob or some other piece -of unique text, it will be replaced with Company with a really -really long name Inc.. + +Settings Menu -Autocorrection can be applied automatically as you type, or only -on demand when you choose it from the Text -menu. +The Settings menu allows you to customize +&stage;. -Please see the Configure Autocorrection section for a complete explanation. - - + Settings -Configure Completion... +Show Toolbar -Autocompletion allows you to type the first few letters of a commonly used word (often technical or job specific), and tells &kpresenter; to finish typing the word for you. - -Please see the Configure Completion section for a complete explanation. +In this menu you can both enable and +disable the display of toolbar. + + + @@ -1963,7 +1884,7 @@ Configure Shortcuts allows you to -assign a keyboard shortcut to actions that &kpresenter; menus or icons +assign a keyboard shortcut to actions that &stage; menus or icons contain. @@ -2009,24 +1930,22 @@ the toolbars. -Configuring &kpresenter; toolbars +Configuring &stage; toolbars -Configuring &kpresenter; toolbars +Configuring &stage; toolbars - - At the top is a drop down box to enable you to choose which -toolbar you want to modify. In the picture the Format toolbar is -selected. If I want to add the Spelling icon to +toolbar you want to modify. In the picture the File toolbar is +selected. If I want to add the Dockers icon to that toolbar, I click the entry in the left window. The arrow pointing -right becomes available, if I click the arrow the Spelling +right becomes available, if I click the arrow the Dockers entry is added to the selected toolbar. The left arrow is available when you click in the right side window. It allows you to remove an icon from a toolbar. The up and down arrows become active @@ -2044,12 +1963,12 @@ Settings -Configure &kpresenter;... +Configure Stage... See the configure &kpresenter; section for a complete explanation of all &kpresenter; settings. +linkend="configure-dialog">Configure &stage; section for a complete explanation of all &stage; settings. @@ -2057,7 +1976,7 @@ -<guimenu>Help</guimenu> Menu +Help Menu &help.menu.documentation; Binary files /tmp/zZ3vRDbxE1/calligra-2.3.86/doc/stage/mousenav.png and /tmp/BxERTtUs6S/calligra-2.3.87/doc/stage/mousenav.png differ Binary files /tmp/zZ3vRDbxE1/calligra-2.3.86/doc/stage/msexport1.png and /tmp/BxERTtUs6S/calligra-2.3.87/doc/stage/msexport1.png differ Binary files /tmp/zZ3vRDbxE1/calligra-2.3.86/doc/stage/msexport2b.png and /tmp/BxERTtUs6S/calligra-2.3.87/doc/stage/msexport2b.png differ Binary files /tmp/zZ3vRDbxE1/calligra-2.3.86/doc/stage/msexport2.png and /tmp/BxERTtUs6S/calligra-2.3.87/doc/stage/msexport2.png differ Binary files /tmp/zZ3vRDbxE1/calligra-2.3.86/doc/stage/msexport3.png and /tmp/BxERTtUs6S/calligra-2.3.87/doc/stage/msexport3.png differ Binary files /tmp/zZ3vRDbxE1/calligra-2.3.86/doc/stage/msexport4.png and /tmp/BxERTtUs6S/calligra-2.3.87/doc/stage/msexport4.png differ diff -Nru calligra-2.3.86/doc/stage/options.docbook calligra-2.3.87/doc/stage/options.docbook --- calligra-2.3.86/doc/stage/options.docbook 2012-01-07 03:25:00.000000000 +0000 +++ calligra-2.3.87/doc/stage/options.docbook 2012-01-28 07:04:47.000000000 +0000 @@ -25,602 +25,95 @@ -Configuring &kpresenter; +Configuring &stage; - -The <guilabel>Configure Autocorrection...</guilabel> Dialog -Auto correction is a system for correcting common typing errors, converting abbreviations to their full spelling and adjusting capitalization. As you could guess from its name, this all occurs automatically, while you are editing your document. - - -Enabling/Disabling Autocorrection - -To toggle autocorrection on, select TextAutocorrectionEnable Autocorrection from the menubar. When enabled, autocorrection makes changes to your document as you type. You can determine which changes to make by configuring autocorrection, as explained below. - - -To toggle autocorrection off, select TextAutocorrectionDisable Autocorrection from the menubar. When disabled, autocorrection changes are not made. You can, however, apply autocorrection manually, using the TextAutocorrectionApply Autocorrection menu. - - -To adjust the options for autocorrection, select Settings -Configure Autocorrection... from the menubar. - -A dialog window appears to help you set your options, with four tabs: Simple Autocorrection, Custom Quotes, Advanced Autocorrection and Exceptions. - - - -<guilabel>Simple Autocorrection</guilabel> - - -Simple Autocorrection - - - - -Simple Autocorrection - - - - - -Convert first letter of a sentence automatically to uppercase -When selected, &kpresenter; will automatically capitalize the first letter after a period. You can tell &kpresenter; when not to alter capitalization in certain instances (&ie; “Sr.” or “Jr.”). For more details, see the section entitled Autocorrection Exceptions. - - - -Convert two uppercase characters to one uppercase and one lowercase character -When selected, &kpresenter; will automatically convert a double capital letter (a common typographical error), into a single capital letter. You can tell &kpresenter; when not to alter capitalization in certain instances. For more details, see the section entitled Autocorrection Exceptions. - - - -Autoformat URLs -When selected, &kpresenter; will scan text for patterns which suggest a certain section of text is a &URL; and automatically creates a link. - - - -Suppress double spaces -When checked, &kpresenter; will ignore the second space typed. This prevents users from adding double spaces between words or sentences - - - -Remove spaces at the beginning and end of paragraphs -When selected, &kpresenter; will automatically remove spaces at the beginning and/or the end of a line of text. - - - -Automatically do bold and underline formatting -When selected, &kpresenter; will look for words surrounded by asterisks ( * ). It will remove the asterisks and change the font of all words in between the two asterisks to bold face. -&kpresenter; will also look for words surrounded by underscores ( _ ). It will remove the underscores and underline all words in between the two underscores. - - - -Replace 1/2... with ½... -When selected, &kpresenter; will automatically change 1/2, 1/3 and 3/4 to their single character equivalents. - - - -Use autonumbering for numbered paragraphs -If you start a paragraph with a number and a symbol ( 1) for example), &kpresenter; will automatically convert that paragraph to a numbered paragraph. All future paragraphs will be consecutively numbered. - - - -Replace 1st with 1^st... -When selected, &kpresenter; will automatically change 1st to 1st. - - - -Capitalize name of days -Automatically capitalize the days of the week (Sunday, Monday, Tuesday, etc...). - - - -Use list-formatting for bulleted paragraphs -When selected, &kpresenter; will look for lines that begin with - , and automatically convert the paragraph style to a bulleted list. The bullet is selected with the left button below this option. - - - - - - -<guilabel>Custom Quotes</guilabel> - -Select the tab labeled Custom Quotes - - -Custom Quotes - - - - -Custom Quotes - - - - - -Replace double quotes with typographical quotes - -When selected, this option will replace the standard keyboard double -quotes, with typographical quotation marks. If you want to change the -quotation character, click on one of the buttons. Clicking on -Default, restores the default quotation marks. - - - - -Replace single quotes with typographical quotes - -When selected, this option will replace the standard keyboard single -quotes, with typographical quotation marks. If you want to change the -quotation character, click on one of the buttons. Clicking on -Default, restores the default quotation marks. - - - - - - -<guilabel>Advanced Autocorrection</guilabel> - -To switch to the Advanced Autocorrection, click on the tab labeled -Advanced Autocorrection. - - -Advanced Autocorrection - - - - -Advanced Autocorrection - - - -This allows you to automatically have &kpresenter; replace one string -of text with another. This can be useful for special symbols, commonly -used abbreviations that you want spelled out, or common typing errors. - -&kpresenter; uses different autocorrection strings depending on the language. -Set the correct language using the combo box labeled -Replacement and exceptions for language:. - -The check box labeled Enable word replacement is used to -toggle on and off the autoreplacement features of &kpresenter;. If there is no mark in the check box, -then &kpresenter; will not perform any autoreplacements from the list in this dialog. - -If there is a mark in the check box labeled Replace text with format -&kpresenter; will not only change the text when it finds a match, but it will change the formatting of the new text. -If there is no mark in this check box, then -&kpresenter; uses the same formatting options for the replaced text as it found in the search text. For more information -on setting the format options for replacement text, see the section on -Changing the format of the autocorrection string. - - -Adding an autocorrection string - -To add an autocorrection string, simply type the text you want &kpresenter; to -check for in the text box labeled -Find:, then enter the text you want &kpresenter; -to substitute in the text box labeled Replace:. - - -If you want to insert symbols or special characters not available on your -keyboard, you can click the -buttons with three periods on them and select a special character from the table provided. - -When these are entered, click Add.... Your text -strings are now added to the table. - - - -Editing an autocorrection string -Changing the text you want to find. -&kpresenter; does not allow you to change the text to search for. -This is to prevent disastrous mistakes. -Instead, you must delete the current autocorrection rule and -add a new text string with the corrected text to find. - -Changing the text you want to replace. -Begin by clicking once on the string you want to edit. It will be -highlighted and the find and replace text will be listed in the text boxes -above. You can alter the replacement text. When you -are done, simply click on the Modify button. - - - - -Deleting an autocorrection string - -Simply click on the string you want to delete. Now click the -Remove button. The string is removed. - - -Be aware that &kpresenter; does not give you a chance to back out once -you have deleted a string. Be sure you have selected the correct string -before you click the Remove -button. - - - - -Changing the format of the autocorrection string -Currently, you must create the autocorrection string before you can format it. -Once the autocorrection string has been created, simply click on it once with the &LMB;. -Now click on the Change Format... button. A small dialog will appear: - - - - - - - -You can use this dialog to select the format of the replaced text. -The left column consists of 13 check boxes. If there is a mark in the check box, then &kpresenter; will change -any replaced text to match the property selected. -If no mark is in the check box, &kpresenter; does not consider that property when replacing text. - - - - -Family: - -Use this combo box to select the font family you want your replacement text to use. - - - - -Size: - -Use this spin box to set the font size you want &kpresenter; to use for your replaced text. - - - - -Color: and Background color: - -Clicking on either of these two buttons allows you to select the font color and/or background color respectively, -you want &kpresenter; to use. - - - - -Bold: and Italic: - -Use these Yes/No radio buttons to determine whether you want &kpresenter; -to change the fonts to boldface or italicized fonts. - - - - -Strikeout: - -You can select None, Single, Double -or Simple Bold to use for the replacement text. - - - - -Underline: - -You can select None, Single, Double, -Simple Bold or Wave to use for the replacement text. - - - - -Vertical alignment: - -You can select Normal, Superscript or -Subscript to determine what font alignment you want &kpresenter; to use. - - - -Shadow: and Word by word: - -Use these Yes/No radio buttons to determine whether you want &kpresenter; -to use shadow text and/or word by word underlining and strikethrough in the replacement text. - - - - -Capitalization: - -You can select Normal, Uppercase, Lowercase, or -Small Caps to determine what capitalization to use for the replacement text. - - - - -Language: - -You can select the language of the text you will use to replace the found text. - - - - -Once you have selected your options, click OK to accept your text options. -Click Cancel to ignore all changes. -Click Reset to restore the options dialog box to the initial values prior to making any changes. -Click Clear to remove all marks from the checked options. - - - - -<guilabel>Exceptions</guilabel> - -There are instances where &kpresenter; will make autocorrection changes -that are inappropriate. You can use the fourth tab of this dialog to define -exceptions to the rules previously discussed. -The dialog for exceptions is shown below: - - -Exceptions - - - - -Exceptions - - - -To prevent &kpresenter; from deciding an abbreviation or other text is -the end of a sentence, simply enter the text fragment in the text box below -Do not treat as the end of a sentence:. Then click -Add. -As an example: Adding Jr. to this dialog prevents -Robert Jones Jr. is a friend of the family. -from being changed to: -Robert Jones Jr. Is a friend of the family. -To remove an erroneous entry, simply click once on the wrong entry with the &LMB; -and click on the Remove button. -The second set of boxes performs a similar function to the first except text entered in these boxes will allow two capital letters in a word if it -is entered in this text box. -Simply enter the word in the text box below -Accept two uppercase letters in:. Then click -Add. -As an example: Adding CD to this dialog prevents -CD -from being changed to: -Cd -To remove an erroneous entry, simply click once on the wrong entry with the &LMB; -and click on the Remove button. - - - -Manually applying autocorrection - -If autocorrection is turned off in your document, you can manually enable autocorrection. -To manually apply autocorrection, first configure your options by using the -autocorrection dialogs. -Then select -TextAutocorrectionApply Autocorrection -from the menubar. -&kpresenter; will start at the beginning of the document and apply all selected autocorrection options to the entire document. -When &kpresenter; is finished, it will return you to your document for further editing. -For more information on enabling and disabling autocorrection, -see Enabling/Disabling Autocorrection. - - - - - -The <guilabel>Configure Completion</guilabel> Dialog - -Autocompletion allows you to type the first few letters of a commonly -used word (often technical or job specific), and tells &kpresenter; to -finish typing the word for you. This is often very useful when you have lengthy technical words. - - -Using autocompletion -Using autocompletion could not be easier. Simply type the first few -letters of the word you want &kpresenter; to finish, and press -&Ctrl;E. &kpresenter; will look -through the list of autocompletion words and if it finds a word which begins -with those letters, it will finish entering the remainder of the word. - -Adding words to autocompletion -&kpresenter; maintains a list of words for each user that will be used for autocompletion. -You can add words to this list one of two ways: - -&kpresenter; can automatically add new words to the completion list for later approval. -This is selected using the dialog. -Individual words can be added to the list by using -the dialog. - - - + +The Configure - Stage Dialog - -Configuring autocomplete -To configure autocompletion, select -SettingsConfigure Completion... -from the menubar. This will bring up a dialog. + +Misc -Completion Dialog +Misc - + -Completion Dialog +Misc -Enable word completion -It is used to toggle autocompletion on and off. - - - -Add - -By clicking this button you can manually add -an individual word to the completion list. - - - - -Remove - -To remove words from the completion list, select the word with the &LMB; -from the list, then click this button. - +Units +Choose the default unit that will be used in your slides. -Automatically add new words to suggestion list - -This option will add any word equal to or longer than -the Characters needed: to the list of proposed -autocompletion words. -The large listbox in the center of the dialog contains the current -proposed list of autocompletion words. -Not all words listed in the list box will be immediatly affected by -autocompletion when entered into this dialog. - +Handle radius +If you select a shape with the default tool (arrow) you see the yellow and +red rectangles. These are called handles (used for resizing, rotation, ...). +The handle radius changes the size of the handles. If you make them bigger it +is easier to hit them. -Show words in tooltip - -If this option is enabled, a tooltip box will appear when you type the -beginning of a word that exists in the completion list. To complete the word, -press the key you set to accept suggestions in the Key to accept -suggestion: drop-down list. - - - - - -Characters needed: - -Use this spinbox/slider combination to prevent &kpresenter; -from automatically adding short words to the completion list. You can select -any value from 5-100 and the words will need to be at least the number of -characters set here to be added in the list. - - - - -Suggest words: - -This spinbox/slider combination can be adjusted to allow more or less -words into the autocompletion list. This option is most important when -Automatically add new words to suggestion list is enabled. -This option keeps the list from becoming too cumbersome. You can select any -value from 1 to 500. - +Grab sensitivity +This option defines how exactly you need to hit +a handle to select it. -Append space - -If checked, it adds a single space to the end of a word after -autocompletion, this means it is not necessary to add the space manually for the -next word. - +Paste offset +This is only active if Paste at Cursor is disabled. +If you copy a shape with the shortcut &Ctrl;C +and paste it with &Ctrl;V, +and do that at a place where already a shape is this offset is used to paste the +new shape to the bottom/right. -Key to accept suggestion: - -Set the key you want to use when an autocompleted word is suggested to you -and you want to accept it. You can choose -Enter, Tab, Space, -End or Right. - +Paste at Cursor +Disables the paste offset and insert a pasted shape at the mouse +cursor position. - -Make Default - -A word is not part of autocompletion until the list is -saved to disk. At that moment, &kpresenter; -will use that saved list for all autocompletion, until the list is replaced with -another saved list. -Some of the words in the autocompletion list may not have been saved -yet.To save the current list to disk and have &kpresenter; begin -using this new list for autocompletion, click this button. - - -Click OK to save your options. Click -Cancel to abort all changes. Click -Reset to reset to the state after you clicked on the -Make Default button. - - - - -The <guilabel>Configure &kpresenter;</guilabel> Dialog - - -<guilabel>Interface</guilabel> + +Grid -Configure Interface +Grid - + -Configure Interface +Grid +<guilabel>Grid</guilabel> -Show rulers -This is checked by default and both a vertical and horizontal -ruler are shown on &kpresenter; slides. When unchecked, the rulers are not shown -anymore on any slide. - - - -Show status bar -Toggle the status bar which is shown by default. +Show grid +If enabled, &stage; will display a grid of dots +representing the intersections of imaginary horizontal and vertical +lines. You can use these dots to precisely position objects on the +slide. -Number of recent files: -Set the number of recent files which will be opened using the -FileOpen -Recent menu. Default is to remember 10 filenames. The -maximum you can set is 20 and the minimum is 1. - - - -Text indentation depth: -This setting is used in the Text menu by Increase Depth and Decrease Depth menu items to change the indentation depth. Default is 1 centimeter. - - - - - - -<guilabel>Color</guilabel> - - -Color - - - - -Color - - - - - -Background object color: -It changes the background color of the text box. The Text boxes background is white by default. If you had a dark -background color and you wanted to put some white text over it, you -could color the text box so that you could see what you were -typing. When you have finished, the area around the text would revert -to whatever the background color was. The -Defaults button restores the original -settings. +Snap to grid +If this is enabled, when dropping or moving objects on the +slide the top left corner of the object will snap or +move, to the nearest grid point. +This does reduce your freedom to freely position objects on the +slide, however it also helps to line up objects precisely. It is +easily disabled or enabled with this option, allowing you the best +of both worlds. @@ -630,403 +123,53 @@ - - - -<guilabel>Spelling</guilabel> - -This tab defines the spellchecker behavior. - - -Spelling - - - - -Spelling - - - +<guilabel>Spacing</guilabel> +You can choose to keep the same ratio for the two settings below by having the + icon or to separate the two settings by using the + icon. -Default language: -You can choose here the language for the spellchecker. The languages listed come from aspell so if you want more spelling support languages, you should install the corresponding aspell-ISO packages. - - - -Enable background spellchecking -If it is checked, it will highlight in red mispelled words according to the dictionary selected above and it will spellcheck words as you type them. This is enabled by default. This option has the same effect as TextSpellcheckAutospellcheck and both are checked/unchecked at the same time. - - - -Skip all uppercase words -If this option is checked, the all uppercase words will not be checked for spelling. This option is also used when you choose the TextSpellcheckSpelling... menu option. -This is useful if the document you are working on uses a large number of acronyms. If this box is left unchecked, most of those acronyms will be incorrectly marked. By placing a mark in this checkbox, &kpresenter; will not mark the acronyms as misspelled. - - - -Skip run-together words -If checked, then concatenated words made of existing words are not spellchecked. This is useful in some languages. This option is also used when you choose the TextSpellcheckSpelling... menu option. -Examples of such words are shutout, -cannot and blackout. - -Checking this box will help prevent &kpresenter; from -flagging website and email addresses for spelling errors. These -addresses often contain words run together. - - - - - -Ignore These Words -You can have here a list of words you want to ignore in all spellchecking. - - - -Add -Write a word in the field then click on the Add button to add it in the list. Once the word is added in the list, even if you click the Cancel button of the configuration dialog, it will stay in the list. - - - -Remove -Highlight a word in the list then click on this button to remove it. - - - - - - -<guilabel>Misc</guilabel> - - -Misc - - - - -Misc - - - - -<guilabel>Misc</guilabel> - -Undo/Redo limit: -Set the number of actions you can undo and redo (how many actions &kpresenter; keeps in its Undo buffer). Default is 30. Maximum is 60 and minimum is 10. Any action that exceeds the number set will be forgotten. - - - -Display links -When you want to include a link in your slide, you will use the InsertLink... menu which allows you to insert &URL;, mail or file links. If the option Display links is checked, all links will be displayed in a different color. This makes document links visible. This is the default behavior. If the option is unchecked, the link will be the same color as the text color. The links are visible (or not) both in the edited slides and in the slide show. A displayed link: - A non displayed link: - - - - -Underline all links -If this is checked, all links will be underlined. The option is checked per default. If it is not checked, the link will not be underlined. A displayed and underlined link: - - - - -Display comments -Comments are inserted in the text at the cursor using the InsertComment... menu. Comments can only be viewed in editing mode and not in the slide show. If this option is checked (default) then each comment will be shown as a small yellow rectangle. You can then right click on it to edit it, remove it or copy its text. A displayed comment: - - - - - - -Display field code -In editor mode (not in slide show) this option will display all the variable codes. This is very useful to see what variable is displayed. Variables are inserted using the InsertVariable menu. - - - -Print slide notes -If checked, all notes will be printed on paper. The notes will all be printed on a separate last page, from slide one to the last slide and finishing with the Master Page Note. You can see the notes for each slide using the ViewShow Notebar menu. - - - - -<guilabel>Grid</guilabel> - -Horizontal grid size: +Horizontal: Set the space in centimeters between two points on an horizontal line on the grid. Default is 0.5 centimeter. -Vertical grid size: +Vertical: Set the space in centimeters between two points on a vertical line on the grid. Default is 0.5 centimeter. + -<guilabel>Document</guilabel> +Document Document - + Document -<guilabel>Document Defaults</guilabel> - -Default font: -Click on the Choose... button, and a new dialog will appear. Use this dialog to choose the default font. This setting determines the default font used by &kpresenter; until further formatting is done. You can revert any text to this default by selecting TextDefault Format from the menubar. - - - -Global language: -Use this drop down box to determine the default language for the document. This setting is used by the hyphenation and spelling tools. - - - -Automatic hyphenation -Check this box if you want &kpresenter; to automatically hyphenate long words when it determines the word wrap in text frames. This is not set as default. - - - - - <guilabel>Document Settings</guilabel> -Create backup file -If checked, this will create a .<name>.odp.autosave.odp in the dir where your file is. This backup file can then be used in case of a problem. The backup file is updated everytime you save your document or everytime there is an autosave. - - - Autosave (min): -You can use this to adjust how often &kpresenter; saves a temporary file. If you set this value to No autosave, &kpresenter; will not autosave. You can adjust the autosave from 1 minute to 60 minutes. - - - -Starting page number: -You can change here the number for the first page. It is set to 1 per default. -This is helpful if you have split a single document into multiple files. - - - -Tab stop: -Each &kpresenter; document has a default set of tab stops. If you add tab stops to your document, the newly added tab stops override the default tabstops. You can use this text box to define the spacing between default tab stops. -As an example, if you enter 1.5 in this text box, and the unit of measure is in centimeters, then the first default tab stop will be located 1.5 cm to the right of the left margin of the frame. The second default tab stop will be located at 3 cm from the left margin, etc. - - - - -<guilabel>Cursor</guilabel> - -Cursor in protected area -When this box is checked and you click in a protected frame of your document, a cursor appears. When the mark is removed from this check box, and you click in a protected frame, there is no cursor visible. +You can use this to adjust how often &stage; saves a temporary file. If you set this value to No auto save, &stage; will not autosave. You can adjust the autosave from 1 minute to 60 minutes. -Direct insert cursor - -When this box is checked then you can select a section of text using your mouse. Move the mouse to a new place in your document and click once with the middle mouse button and a copy of the selected text is copied and pasted to the new location in the document. -When there is no mark in this checkbox, in order to copy text from one section to another, you must select the text, manually copy the text in to the clipboard, then manually paste the text in the new location. - - - - - - -<guilabel>Tools</guilabel> - -This dialog sets the default tools settings. There are 5 tabs in this dialog. - - -<guilabel>Outline</guilabel> - - -The Outline tab - - - - -The Outline tab - - - -This is used in the InsertLine menu. - - - -Color: -Set the color of the line. Clicking on the color will bring the standard &kde; Select Color dialog. - - -Style: -Choose the line style from No Outline which will not draw any line to dotted lines and plain line. - - -Width: -Set the width of the line. - - -Arrow Style -Set the styles of the beginning and the end of your line for example you can choose an arrow at the end and a square dot at the beginning. - - -The last field displays a preview of your settings. - - - -<guilabel>Fill</guilabel> - - -The Fill tab - - - - -The Fill tab - - - - - -Type: -You can choose between Single Color, Gradient or Transparent as the type. - - -Style: -Choose the style or the pattern. - - -Color: -Choose the color. White is the default one. Clicking on the color will bring you the standard &kde; Select Color dialog. - - -The last field displays a preview of your settings, provided the color is not white! - - - -<guilabel>Rectangle</guilabel> - -This is used in the InsertShapeRectangle menu. - - -The Rectangle tab - - - - -The Rectangle tab - - - -You can choose to keep the same ratio for the two settings below by having the - icon or to separate the two settings by using the - icon. - - -Vertical declination: -Set the vertical declination. - - -Horizontal declination: -Set the horizontal declination. - - -The last field displays a preview of your settings. - - - -<guilabel>Polygon</guilabel> - -This is used in the InsertShapeConvex/Concave Polygon menu. - - -The Polygon tab - - - - -The Polygon tab - - - - - -Type: -You can choose Polygon or Convex/Concave. - - -Corners: -Set here the number of corners of the polygon. - - -Sharpness: -Increase or decrease the sharpness of the polygon. +Create backup file +If checked, this will create a .<name>.odp.autosave.odp in the folder where your file is. This backup file can then be used in case of a problem. The backup file is updated everytime you save your document or everytime there is an autosave. - -The last field displays a preview of your settings. - - - -<guilabel>Pie</guilabel> - -This is used in the InsertShapePie/Arc/Chord menu. - - -The Pie tab - - - - -The Pie tab - - - - -Type: -You can choose among three options in the dropdown box: Pie, Arc or Chord. - - -Start position: -Set here the start position. - - -Length: -Set the length of your pie. - -The last field displays a preview of your settings. - - - - -<guilabel>Paths</guilabel> - - -Paths - - - - -Paths - - -There are two paths that are set here, the Backup Path and the Picture Path. The Backup Path is the directory where your backup files are saved and the Picture Path is the directory where your pictures are saved. Highlight a path in order to modify it and click on Modify Path.... A small dialog appears and if you uncheck Default path, you will be able either to enter a path yourself or to choose one with the standard &kde; file dialog. - - - -TTS - -See the Text-to-Speech section -in the accessibility chapter for further details. - Binary files /tmp/zZ3vRDbxE1/calligra-2.3.86/doc/stage/properties.png and /tmp/BxERTtUs6S/calligra-2.3.87/doc/stage/properties.png differ diff -Nru calligra-2.3.86/doc/stage/screen.docbook calligra-2.3.87/doc/stage/screen.docbook --- calligra-2.3.86/doc/stage/screen.docbook 2012-01-07 03:25:00.000000000 +0000 +++ calligra-2.3.87/doc/stage/screen.docbook 1970-01-01 00:00:00.000000000 +0000 @@ -1,44 +0,0 @@ - - - - -Neil -Lucock - -
neil@nlucock.freeserve.co.uk
-
-
- -Krishna -Tateneni - -
tateneni@pluto.njcc.com
-
-
- -
-
-The &kpresenter; Screen - -Here is the default &kpresenter; Screen Layout. - -At the top there is the menubar. All &kpresenter; functions are -available from the menus, which are described in detail in . - -Below the menubar are the toolbars. There are several -toolbars. You may hide and show toolbars as you prefer. The toolbars -are described in detail in . - - -The Outline and -Preview panes give an overview of your entire -presentation. The Preview pane provides -thumbnails of each slide, and allows you to drag and drop to change -the order. The Outline pane provides a -hierarchal tree of each slide, and also the objects inside the slides. -As well as overview, this allows you to easily select objects which -may be covered by others, or are otherwise difficult to grab directly on -the slide. - -
Binary files /tmp/zZ3vRDbxE1/calligra-2.3.86/doc/stage/settings01.png and /tmp/BxERTtUs6S/calligra-2.3.87/doc/stage/settings01.png differ Binary files /tmp/zZ3vRDbxE1/calligra-2.3.86/doc/stage/settings03.png and /tmp/BxERTtUs6S/calligra-2.3.87/doc/stage/settings03.png differ Binary files /tmp/zZ3vRDbxE1/calligra-2.3.86/doc/stage/settings04.png and /tmp/BxERTtUs6S/calligra-2.3.87/doc/stage/settings04.png differ Binary files /tmp/zZ3vRDbxE1/calligra-2.3.86/doc/stage/template02.png and /tmp/BxERTtUs6S/calligra-2.3.87/doc/stage/template02.png differ Binary files /tmp/zZ3vRDbxE1/calligra-2.3.86/doc/stage/template03.png and /tmp/BxERTtUs6S/calligra-2.3.87/doc/stage/template03.png differ Binary files /tmp/zZ3vRDbxE1/calligra-2.3.86/doc/stage/template04.png and /tmp/BxERTtUs6S/calligra-2.3.87/doc/stage/template04.png differ Binary files /tmp/zZ3vRDbxE1/calligra-2.3.86/doc/stage/template05.png and /tmp/BxERTtUs6S/calligra-2.3.87/doc/stage/template05.png differ Binary files /tmp/zZ3vRDbxE1/calligra-2.3.86/doc/stage/template06.png and /tmp/BxERTtUs6S/calligra-2.3.87/doc/stage/template06.png differ Binary files /tmp/zZ3vRDbxE1/calligra-2.3.86/doc/stage/template07.png and /tmp/BxERTtUs6S/calligra-2.3.87/doc/stage/template07.png differ Binary files /tmp/zZ3vRDbxE1/calligra-2.3.86/doc/stage/textmenu1.png and /tmp/BxERTtUs6S/calligra-2.3.87/doc/stage/textmenu1.png differ Binary files /tmp/zZ3vRDbxE1/calligra-2.3.86/doc/stage/textmenu2.png and /tmp/BxERTtUs6S/calligra-2.3.87/doc/stage/textmenu2.png differ Binary files /tmp/zZ3vRDbxE1/calligra-2.3.86/doc/stage/toolsmenu01.png and /tmp/BxERTtUs6S/calligra-2.3.87/doc/stage/toolsmenu01.png differ Binary files /tmp/zZ3vRDbxE1/calligra-2.3.86/doc/stage/tts.png and /tmp/BxERTtUs6S/calligra-2.3.87/doc/stage/tts.png differ Binary files /tmp/zZ3vRDbxE1/calligra-2.3.86/doc/stage/tut01.png and /tmp/BxERTtUs6S/calligra-2.3.87/doc/stage/tut01.png differ Binary files /tmp/zZ3vRDbxE1/calligra-2.3.86/doc/stage/tut02.png and /tmp/BxERTtUs6S/calligra-2.3.87/doc/stage/tut02.png differ Binary files /tmp/zZ3vRDbxE1/calligra-2.3.86/doc/stage/tut03.png and /tmp/BxERTtUs6S/calligra-2.3.87/doc/stage/tut03.png differ Binary files /tmp/zZ3vRDbxE1/calligra-2.3.86/doc/stage/tut04.png and /tmp/BxERTtUs6S/calligra-2.3.87/doc/stage/tut04.png differ Binary files /tmp/zZ3vRDbxE1/calligra-2.3.86/doc/stage/tut05.png and /tmp/BxERTtUs6S/calligra-2.3.87/doc/stage/tut05.png differ Binary files /tmp/zZ3vRDbxE1/calligra-2.3.86/doc/stage/tut06.png and /tmp/BxERTtUs6S/calligra-2.3.87/doc/stage/tut06.png differ Binary files /tmp/zZ3vRDbxE1/calligra-2.3.86/doc/stage/tut07.png and /tmp/BxERTtUs6S/calligra-2.3.87/doc/stage/tut07.png differ Binary files /tmp/zZ3vRDbxE1/calligra-2.3.86/doc/stage/tut08.png and /tmp/BxERTtUs6S/calligra-2.3.87/doc/stage/tut08.png differ Binary files /tmp/zZ3vRDbxE1/calligra-2.3.86/doc/stage/tut09.png and /tmp/BxERTtUs6S/calligra-2.3.87/doc/stage/tut09.png differ Binary files /tmp/zZ3vRDbxE1/calligra-2.3.86/doc/stage/tut10.png and /tmp/BxERTtUs6S/calligra-2.3.87/doc/stage/tut10.png differ Binary files /tmp/zZ3vRDbxE1/calligra-2.3.86/doc/stage/tut11.png and /tmp/BxERTtUs6S/calligra-2.3.87/doc/stage/tut11.png differ Binary files /tmp/zZ3vRDbxE1/calligra-2.3.86/doc/stage/tut12.png and /tmp/BxERTtUs6S/calligra-2.3.87/doc/stage/tut12.png differ Binary files /tmp/zZ3vRDbxE1/calligra-2.3.86/doc/stage/tut13.png and /tmp/BxERTtUs6S/calligra-2.3.87/doc/stage/tut13.png differ Binary files /tmp/zZ3vRDbxE1/calligra-2.3.86/doc/stage/tut14.png and /tmp/BxERTtUs6S/calligra-2.3.87/doc/stage/tut14.png differ Binary files /tmp/zZ3vRDbxE1/calligra-2.3.86/doc/stage/tut15.png and /tmp/BxERTtUs6S/calligra-2.3.87/doc/stage/tut15.png differ Binary files /tmp/zZ3vRDbxE1/calligra-2.3.86/doc/stage/tut16.png and /tmp/BxERTtUs6S/calligra-2.3.87/doc/stage/tut16.png differ Binary files /tmp/zZ3vRDbxE1/calligra-2.3.86/doc/stage/tut17.png and /tmp/BxERTtUs6S/calligra-2.3.87/doc/stage/tut17.png differ Binary files /tmp/zZ3vRDbxE1/calligra-2.3.86/doc/stage/tut18.png and /tmp/BxERTtUs6S/calligra-2.3.87/doc/stage/tut18.png differ Binary files /tmp/zZ3vRDbxE1/calligra-2.3.86/doc/stage/tut19.png and /tmp/BxERTtUs6S/calligra-2.3.87/doc/stage/tut19.png differ Binary files /tmp/zZ3vRDbxE1/calligra-2.3.86/doc/stage/tut20.png and /tmp/BxERTtUs6S/calligra-2.3.87/doc/stage/tut20.png differ Binary files /tmp/zZ3vRDbxE1/calligra-2.3.86/doc/stage/tut21.png and /tmp/BxERTtUs6S/calligra-2.3.87/doc/stage/tut21.png differ Binary files /tmp/zZ3vRDbxE1/calligra-2.3.86/doc/stage/tut22.png and /tmp/BxERTtUs6S/calligra-2.3.87/doc/stage/tut22.png differ Binary files /tmp/zZ3vRDbxE1/calligra-2.3.86/doc/stage/tut23.png and /tmp/BxERTtUs6S/calligra-2.3.87/doc/stage/tut23.png differ Binary files /tmp/zZ3vRDbxE1/calligra-2.3.86/doc/stage/tut24.png and /tmp/BxERTtUs6S/calligra-2.3.87/doc/stage/tut24.png differ Binary files /tmp/zZ3vRDbxE1/calligra-2.3.86/doc/stage/tut25.png and /tmp/BxERTtUs6S/calligra-2.3.87/doc/stage/tut25.png differ Binary files /tmp/zZ3vRDbxE1/calligra-2.3.86/doc/stage/tut26.png and /tmp/BxERTtUs6S/calligra-2.3.87/doc/stage/tut26.png differ diff -Nru calligra-2.3.86/doc/stage/tutorial.docbook calligra-2.3.87/doc/stage/tutorial.docbook --- calligra-2.3.86/doc/stage/tutorial.docbook 2012-01-07 03:25:00.000000000 +0000 +++ calligra-2.3.87/doc/stage/tutorial.docbook 2012-01-28 07:04:47.000000000 +0000 @@ -34,7 +34,7 @@ A Step-By-Step Tutorial -In this chapter, &kpresenter; is introduced using a simple tutorial. We +In this chapter, &stage; is introduced using a simple tutorial. We shall walk through the most basic steps that are involved in creating a presentation, and adding some basic effects. @@ -43,22 +43,22 @@ Start a new document -When you start &kpresenter;, the usual &koffice; startup dialog appears. +When you start &stage;, the usual &calligra; startup dialog appears. -The &koffice; +The &calligra; startup dialog -The &koffice; startup dialog +The &calligra; startup dialog Select Screen on the left then select the template labeled -Title (highlighted in blue in the screenshot above) by +Empty (highlighted in blue in the screenshot above) by clicking on it. You can check Always use this template to make it the default template. @@ -66,22 +66,15 @@ Now click Use This Template. This brings up the slide editor window, where you can view and edit the slides (and objects contained in -them) in your document. At the moment, we just have one slide, with one -object on it, which is a text box. +them) in your document. - -The slide editor - - -The slide editor - - +At the moment, we just have one empty slide, so select the upper left slide +with the single text box from the Slide Layouts docker. Double-click the text box. The cursor changes to a vertical bar to show -that you can now type some text and the background of the edited area -becomes grey. +that you can now type some text. @@ -118,67 +111,30 @@ Let's now add a new slide to our document. To do so, click the -Insert menu, and then click on -Slide.... - - - -Inserting a slide from the menu - - - -Inserting a slide from the menu - - - - -This brings up the Insert Slide dialog. - - - -The Insert Slide dialog - - - -The Insert Slide -dialog - - - - -Select Choose different template and click OK to add a -new page after page 1. +Slide menu, and then click on +Insert Slide. -The startup dialog comes up so that we can decide -what the new slide should look like. This time, select Screen on the left and double click on the -One Column template (highlighted in blue.) +Now we can decide what the new slide should look like. This time, select +one column layout (highlighted in blue.) -Choosing a template for the new page +Choosing a layout for the new page -Choosing a template for the new +Choosing a layout for the new page -The new slide now appears in the editing window. To change between pages +The new slide layout now appears in the editing window. To change between pages of your presentation, you can select slides in the pane to the left (highlighted in blue for this screenshot). - -The slides list - - -The slides list - - - The newly inserted slide has two text boxes. There is one for a title, and another to contain a bulleted list of items. @@ -223,47 +179,33 @@ In this section, we'll liven our presentation up a bit by adding a nice -logo to the title page. To do so, the first step is to click on the -Insert menu item, and then on -Picture.... +logo to the title page. To do so, the first step is to enable the Add +Shape docker using Settings +Dockers from the menu. - -Using the menu to add an image - - -Using the menu to add an image - - +Now select Image in the Add Shape docker +and click with the &LMB; where you want to place the loge in it's original size or +draw a rectangle with the left mouse (click the &LMB; and keep the button pressed) +to specify the position and size for the logo. + -This brings up a file selection dialog. To learn about this or other +A file selection dialog appears. To learn about this or other standard &kde; dialog boxes in detail, please consult the &kde; documentation. You can browse by clicking on folder icons or by using the browser style buttons on the -toolbar (highlighted in red.) Clicking the up arrow +toolbar. Clicking the up arrow takes you up one folder level. -Find the file named koffice-logo.png, which may be -in a different folder than the one shown in the screenshot below. You -can also choose any other graphic file if you like! Select the file, and -click OK. +Select a file and click OK. - -Choosing a picture to add - - -Choosing a picture to add - - - -Click with the &LMB; where you want to place the loge in it's original size or -draw a rectangle with the left mouse (click the &LMB; and keep the button pressed) to specify the position and size for the logo. -There are selection handles (little squares) visible around the border of the graphic. +Now the image is inserted in the slide and there are selection handles +(little squares) visible around the border of the graphic. @@ -280,44 +222,25 @@ it correctly. - -Dragging and resizing the image - - -Dragging and resizing the image - - - That's it. Now you have a picture on the title page! - + -Insert a &koffice; object -Let's insert another &koffice; object under the picture, for example +Insert a &calligra; object +Let's insert another &calligra; object under the picture, for example a chart. -Every &koffice; supported document can be embedded in a &kpresenter; slide. -Let's choose a chart from &kchart;. To do so, the first step is to click on the -Insert menu item, and then -on Object. +Every &calligra; supported object can be embedded in a &stage; slide. +Let's choose a chart from the Add Shape docker. - -The Insert Object menu - - -The Insert Object menu - - - -A list of the &koffice; available components appears as submenu. Select Chart and then outline with your mouse the area you -want to put your chart in on the &kpresenter; slide. +want to put your chart in on the &stage; slide. @@ -328,38 +251,50 @@ - - -Once you release the mouse button, a blank chart is added on the slide. Whenever -you work in the chart, the toolbars and menubar in &kpresenter; main window are -replaced by those from &kchart;. +Once you release the mouse button, a template chart is added on the slide. Whenever +you work in the chart, its Tool Options appear in the docker. -&kchart; menus and toolbars embedded +&kchart; Tool Options -&kchart; menus and toolbars embedded +&kchart; Tool Options -While you are in the chart, clicking with the &RMB; will bring the -&kchart; settings menu which allows you to modify the parameters of the chart. -Please see the &kchart; user manual to get more information on how to use -&kchart;. +To move, resize or even delete the embedded chart switch to the +Basic shape manipulation tool and click anywhere +within the chart area. It should now appear with a green border +and with a small yellow square at each corner and in the middle of each edge. + +If you move the cursor over any of the squares it should change +to a double headed arrow. You can resize the chart by dragging one of these +squares with the left mouse button pressed. To +delete the chart right click on one of the +squares and select Delete. +To move the chart move the cursor into the chart. +The cursor should then change to a cross, press the +left mouse button and you will be able to drag the +chart to where you want it to be. +To restore the chart to its normal appearance simply click anywhere +outside of the chart area. +To change the format of the chart itself left +click twice within the chart area. The chart Tools Options +should appear in the docker. You can then +use these tools to edit the chart properties like chart type, labels, axis and data. Click anywhere with the &LMB; outside the chart to go back to -&kpresenter; slide. +&stage; slide. A single click on the chart will allow you to drag it to change its location and also to drag the borders to make it bigger as with any other -&kpresenter; object. Double click on the chart to get into &kchart; mode and +&stage; object. Double click on the chart to get into &kchart; mode and modify any of the chart property. - + Change the color of the title text @@ -431,39 +366,48 @@ Let's finish by changing the color of the title text from black to blue. To do so, select the title text by double-clicking the text box and select the text. - + -Open the Select Color dialog by clicking on the dark blue A -icon on the right side of the Text toolbar (this icon has -a Color... tooltip) or choose the Text menu and then click on -Color... and change the color to blue. +Open the color selector by clicking on the + + icon in the Text editing Tools Options (this icon has +a Text Color... tooltip). -The color palette +The color selector -The color palette +The color selector - -Click OK in the Select Color dialog. Changing the color of -the selected text to blue changes its appearance. The exact color that -highlighted text turns depends on your system color scheme. - - -Highlighted text +The color selector -Highlighted text +The color selector +
+Changing the color of +the selected text to blue changes its appearance. The exact color that +highlighted text turns depends on your system color scheme. + + + +Text color selection is also available on the Decorations +tab of the Select Font dialog. Open this dialog with +Font in the Format menu or context menu. + + + + Now click away from the text to de-select it. + The finished title @@ -474,35 +418,17 @@ Now that there are two slides, why not try a slide show! To start the -slide show, press the play button (the blue double arrow) on -the Slide Show toolbar. The first slide should appear on your screen. +slide show, press the Start Presentation button in +the toolbar. The first slide should appear on your screen. - -The first slide - - -The first slide - - - To advance from the first slide to the next, just click anywhere on the screen, or use the Page Down key. - -The second slide - - -The second slide - - - -To exit the slide show, right click, and then -select the End option from the -popup menu. +To exit the slide show, press the &Esc; key. Binary files /tmp/zZ3vRDbxE1/calligra-2.3.86/doc/stage/zoomfactor.png and /tmp/BxERTtUs6S/calligra-2.3.87/doc/stage/zoomfactor.png differ diff -Nru calligra-2.3.86/doc/tables/a11y.docbook calligra-2.3.87/doc/tables/a11y.docbook --- calligra-2.3.86/doc/tables/a11y.docbook 2012-01-07 03:25:00.000000000 +0000 +++ calligra-2.3.87/doc/tables/a11y.docbook 1970-01-01 00:00:00.000000000 +0000 @@ -1,320 +0,0 @@ - - - - -Gary -Cramblitt - - - - - -For Users with Disabilities -This section of the documentation discusses accessibility features in &kspread; -for users with disabilities. Some of these features apply to &kde; as a whole and are controlled from -&kcontrolcenter;. Some apply to all &koffice; applications, -and some are specific to &kspread;. - - -Installing the <command>kdeaccessibility</command> Module -kdeaccessibility - -Most of the features described in this chapter are enabled by installing the -kdeaccessibility module. -The kdeaccessibility module is part of the &kde; project -http://www.kde.org. The kdeaccessibility -package can be obtained from &kde-ftp;, the -main ftp site of the &kde; project. - - -Many distributions offer precompiled binaries on their ftp sites. Please check your distribution's web sites for more information. - -More information about &kde; accessibility can be obtained by -visiting http://accessibility.kde.org/. - - - - -Visual Impairments -Visual Impairments - -&kspread; is not usable by totally blind users. It is hoped that -a general screen reader for the blind will be available in future versions of &kde;. - - - -Theming -Theming -For low-sighted or light allergic users, several features are available in the &kcontrolcenter; -Appearance & ThemesTheme Manager, -like high contrast color themes. If you are light allergic, the -HighContrastDark or HighContrastLight themes -may be helpful. If you have difficulty reading small fonts or seeing small icons, the -HighContrastDark-big or HighContrastLight-big -themes will increase the size of text, buttons, and icons. You may also customize -background, colors, fonts, and icons from the same dialog. A set of monochrome icons -is available. - - -If you choose one of the Big themes, you may discover that -some windows are too large to fit your monitor. Purchasing a larger monitor will be helpful. -You can drag the portions of the window not visible into the visible area by -holding down the &Alt; key and dragging with the &LMB; anywhere -within the screen. If you have trouble operating a mouse, you can also move screens by pressing -&Alt;F3. In -the dropdown Windows Operations Menu, choose -Move. -Move the screen with the arrow keys and press &Esc; to finish the move. - - - - - -&kmagnifier; -magnifier -The kdeaccessibility module includes a screen magnifier -application called &kmagnifier;. -If it is installed, you can run it from -K-ButtonUtilities -KMag (Screen Magnifier). - - - - -Text-to-Speech -Text-to-Speech -TTS -The kdeaccessibility module includes a Text-to-Speech -component called KTTS. If KTTS is installed, you can configure &kspread; to -speak the text that is under the mouse pointer or speak the text of each -screen widget as it receives focus. Before using this feature, first configure -KTTS. See The KTTS Handbook for details. -To turn on the TTS feature in &kspread;, -select SettingsConfigure -&kspread;... from the menubar. -This will display a dialog box. -Clicking on TTS will allow you to change -the following. - - - - - - - - - -Speak widget under mouse pointer -When checked, &kspread; will speak the text of each widget -as the mouse pointer moves over the widget. - - - -Speak widget with focus -When checked, &kspread; will speak the text of each widget -as it receives focus. - - - -Speak tool tips -When checked, &kspread; will speak the popup tool tip -for each widget in addition to the text of the widget. - - - -Speak What's This -When checked, &kspread; will speak the What's This? help -for each widget in addition to the text of the widget. - - - -Say whether disabled -When checked, &kspread; will speak the word "disabled" -if the widget is currently disabled (grayed). - - - -Speak accelerators -When checked, &kspread; will speak the accelerator -of the widget in addition to the text of the widget. -Accelerators are the underlined letters you see in the text of the -widget. For example, in the main menu, the -Quit menu item -has the "Q" underlined. You can choose it by pressing Q. -To speak the accelerator, check this option and enter the -word you want to speak before the accelerator in the -Prefaced by the word box. In this -example shown above, &kspread; will speak "Accelerator Q". - - - -Polling interval -This option determines how often &kspread; will -check for a change in the widget under the mouse pointer or -a new focused widget. You should leave this option on the -default setting. - - - - - -If the TTS option does not appear -on this screen, you do not have the KTTS component installed -in your system. - - -Not all widgets are spoken. For example, -the items on the main menubar are not spoken. - - - - - - - -Motor Impairments and Mouseless Operation -Motor Impairments -Mouseless Operation - - -&kmousetool; -If you can operate a mouse, but have trouble clicking, the -&kmousetool; application may help. Run it from -K-ButtonUtilities -KMouseTool (Automatik Mouse Click). - - - - -XAccess Features -XAccess -Sticky Keys -Slow Keys -Bounce Keys - -The &kcontrolcenter; offers several keyboard features collectively called XAccess. -They include: - - -Sticky Keys -This feature permits operation of meta keys, such as -&Alt;, &Ctrl;, and &Shift; without having to hold the keys down. It is useful -when you can only use one finger or one hand to operate the keyboard. -With Sticky Keys on, press and release a &Alt;, &Ctrl;, or &Shift; key, then -press another key. The result is as if you pressed both keys at once. -Press the &Alt;, &Ctrl;, or &Shift; key again to turn off the sticky key. -Activate this feature in -K-Button&kcontrolcenter; -Regional & AccessibilityAccessibility -Modifier Keys. - - - -Slow Keys -This feature is useful if you have hand tremors or difficulty -accurately pressing keys. It prevents -inadvertent key presses by requiring that a key be held down for a minimum -time before it is accepted. Activate this feature in -K-Button&kcontrolcenter; -Regional & AccessibilityAccessibility -Keyboard Filters. - - - -Bounce Keys -This feature is also useful if you have hand tremors. It prevents -inadvertent repeated key presses by preventing another keystroke for -a certain amount of time. Activate this feature in -K-Button&kcontrolcenter; -Regional & AccessibilityAccessibility -Keyboard Filters. - - - - - - - -Mouse Emulation -Mouse Emulation -Mouse Emulation permits you to move and click the mouse using the keyboard. -Press &Alt;F12 to activate it. Use the arrow keys -to move the mouse pointer to the desired location, and press spacebar -to "click" the mouse. Unfortunately, you cannot use Mouse Emulation to perform -&RMB; clicks or dragging. - - - - -Mouse Navigation -Mouse Navigation -This feature permits you to emulate the mouse using the numeric keypad -of your keyboard. To activate it, go to -K-Button&kcontrolcenter; -PeripheralsMouse -Mouse Navigation. -Check the Move pointer with keyboard (using the num pad) box. When you do this, the other settings will become enabled, and you can customize the keyboard pointer behavior further, if required. - The various keys on the number pad move in the direction you would expect. Note that you can move diagonally as well as up, down, left and right. The 5 key emulates a click to a pointer button, typically &LMB;. You change which button is emulated by using the / key (which makes it &LMB;), -* key (which makes it middle mouse button) and - (which makes it &RMB;). - Using the + emulates a doubleclick to the selected pointer button. You can use the -0 key to emulate holding down the selected pointer button (for easy dragging), -and then use the . to emulate releasing the selected pointer button. - - - - - - - - - - - -Keyboard shortcuts - -Use the Menu key to pop up the context -menu. On most keyboards, the Menu key is on the righthand -side of the keyboard between the &Windows; and &Ctrl; -keys. It has a menu icon on it. - - - - - -Resizing panels - -If you have activated two or more views of a spreadsheet, -you can move the sizing bar between the views by pressing F8. A sizing icon appears -overtop the sizing bar. Use the arrow keys to move the bar up or down, or left or right. -Press F8 again or &Esc; when finished sizing. - - - - - -Setting focus to widgets - -Normally, one can use the and &Shift; -to move focus from one widget to the next in any application. However, in &kspread;, -pressing does not move the focus; instead it moves the cell selection forwards. -You can set focus to any widget that can receive focus by -pressing &Alt;F8. A small lettered box appears -overtop each widget on the screen that can receive focus. - - - - - - - - -Press the letter to move focus to the corresponding widget. Press -&Alt;F8 again or &Esc; -to abandon moving the focus. - - - - - - - diff -Nru calligra-2.3.86/doc/tables/advanced.docbook calligra-2.3.87/doc/tables/advanced.docbook --- calligra-2.3.86/doc/tables/advanced.docbook 2012-01-07 03:25:00.000000000 +0000 +++ calligra-2.3.87/doc/tables/advanced.docbook 2012-01-28 07:04:47.000000000 +0000 @@ -18,12 +18,12 @@ -Advanced &kspread; +Advanced &tables; Series When constructing a spreadsheet you often need to include a series of values, such as 10, 11, 12..., in a row or column. There are several ways you -can do this in &kspread;. +can do this in &tables;. For a simple short series such as 5, 6, 7, 8... the Drag and Copy method is the simplest. Enter the starting value into the starting cell and the next value of the series into an adjacent cell. @@ -43,15 +43,16 @@ start with 1, 3, 4, 6 Drag and Copy will extend it to 1, 3, 4, 6, 7, 9, 10, 12..., the step value in this example being the series 2, 1, 2, 1... -&kspread; also recognizes some special series such as + +&tables; also recognizes some special series such as the days of the week. Try entering Friday into a cell (note the capitalization) then Drag and Copy it down. To see what special series -are available, and perhaps create your own, select Tools -Custom Lists... . +are available, and perhaps create your own, select Tools +Custom Lists... If you select a cell and choose Series... -from the Insert menu you will see the Series - dialog box. This is useful for creating series that are too long +from the Insert menu you will see the Series +dialog box. This is useful for creating series that are too long to be conveniently constructed using the Drag and Copy method, or for creating geometric series such as 1, 1.5, 2.25, 3.375... where the step value, 1.5 in this case, is used as a multiplier. @@ -66,11 +67,12 @@ Formulae Built in Functions -&kspread; has a huge range of built in mathematical and other functions +&tables; has a huge range of built in mathematical and other +functions that can be used in a formula cell. They can be seen and accessed by selecting a cell then choosing Function... from the -Insert menu. This brings up the Function - dialog box. +Insert menu. This brings up the Function +dialog box. Select the function you want to use from the listbox at the left of the dialog box. The Help tab page will then display a description, the return type, Syntax, Parameters, and Examples for this function. @@ -94,8 +96,9 @@ function into the current cell and close the Function dialog. You can of course do without the Function -dialog and simply type the complete expression into the Formula toolbar's -main edit box. Function names are not case sensitive. Do not forget that all +dialog and simply type the complete expression into the main text entry box +in the Cell Editor tool options. +Function names are not case sensitive. Do not forget that all expressions must start with an = symbol. @@ -217,25 +220,25 @@ Operation section of the dialog box. You can also apply different modifier values to different rows or columns of the target area by copying an area containing the wanted modifiers -before selecting the target area and doing Special Paste... - . For example, if you enter 5 into cell +before selecting the target area and doing Special Paste... +For example, if you enter 5 into cell A1, 10 into B1, select both cells and do a Copy then Special Paste... Addition into cells A10 to D15, 5 will be added to A10:A15 and C10:C15, and 10 to B10:B15 and D10:D15. Note that a modifier value can be a formula as well as a simple numeric -value. If it is a formula then &kspread; will adjust the cell references as +value. If it is a formula then &tables; will adjust the cell references as for a normal Paste operation. Goal Seeking -&kspread; can be used to solve algebraic expressions such as +&tables; can be used to solve algebraic expressions such as x + x^2 = 4 or For what value of x does x + x squared equal 4 ? For this example you could enter =A2+A2*A2 into A1 then either try different values in A2 until the result in A1 is as -close as you wish to 4 or, preferably, use &kspread;'s +close as you wish to 4 or, preferably, use &tables;'s Goal Seek... feature which automatically adjusts the value in one cell to try to make the value in another cell as close as possible to a target value. @@ -248,7 +251,7 @@ (A2) into the By changing cell: box. Note that you need to have entered some initial value into the cell that is to be changed before starting Goal Seek. -Pressing the Start button will start the +Pressing the OK button will start the calculation. When it finishes and if it has found a solution press the OK button to accept the result or Cancel to keep the original value. @@ -257,31 +260,23 @@ Using more than one Worksheet -When you start a new, empty, document with &kspread; it will create a +When you start a new, empty, document with &tables; it will create a number of blank worksheets. The number of sheets it creates is determined -by the Number of sheets open at the beginning: setting in -the Interface page of &kspread;'s -configuration dialog box. +by the selected template. InsertSheet will add another sheet to the document. -If the Show tabs box in the Interface - page of &kspread;'s configuration dialog box is checked a small -tab will be shown near the bottom left of &kspread;'s window for each sheet. -Left click on one of these tabs to see that sheet. - You can also switch between worksheets by using the -&Ctrl;PageDown +&Ctrl;PgDown to move to the next sheet, -&Ctrl;PageUp to move to +&Ctrl;PgUp to move to the previous one. Worksheets are given the default names of Sheet1, Sheet2... You can give a sheet a different name by right clicking on the tab and selecting -Rename Sheet.... +Rename Sheet... To remove a sheet from the document use the Remove Sheet - option in the Format -Sheet submenu or in the little -menu that pops up when you right click on the tab + option in the context menu +that pops up when you right click on the tab for the sheet you want to remove. Other entries in the Format Sheet submenu allow you to show or hide a sheet in @@ -314,30 +309,32 @@ consolidated results to appear. Then choose the appropriate function from the Function: combo box and press the OK button. -If you check the Copy data box in the -Consolidate dialog the values resulting from the consolidation will +If you click the Details >> in the dialog and check +the Copy data box the values resulting from the consolidation will be placed into the target cells rather than the formulae to calculate them. - Inserting a Chart You can insert a chart into a sheet to give a graphical view of your data. -First select the area of cells containing the data and choose -InsertChart -. The cursor will change to a small cross shape which you -should drag across the sheet while holding the left - mouse button down to define the area where you want the +First enable Add Shape docker using the +SettingsDockers +. +Then select the area of cells containing the data and choose +Chart in the Add Shape. Drag the cursor across the sheet while holding the +left mouse button down to define the area where you want the chart to appear, there is no need to be too accurate at this stage as the chart size can easily be changed at any time. When you release the mouse -button a chart wizard dialog box will appear. -The wizard allows you to define the type of chart, labels and legend -that you need. You may wish to refer to the &kchart; Handbook at this stage, -but again if you make a wrong choice you can correct it later. -When you press the Finish button the wizard will -vanish and you will see the chart embedded into the worksheet. +button a Chart Options dialog box will appear. +The data area is already prefilled with the selected cell range. +Select the first row and column as labels, check Data set in rows +and click the OK button. The Dialog will vanish and you +will see the chart embedded into the worksheet. +Now select Chart Editing Tool from the Tools +docker and edit the chart properties like chart type, labels and axis in the +Tools Options. @@ -348,42 +345,41 @@ -To move, resize or even delete the embedded chart click anywhere -within the chart area. It should now appear with a diagonal hatch border -and with a small black square at each corner and in the middle of each edge. +To move, resize or even delete the embedded chart switch to the +Basic shape manipulation tool and click anywhere +within the chart area. It should now appear with a green border +and with a small yellow square at each corner and in the middle of each edge. -If you move the cursor over any of the black squares it should change +If you move the cursor over any of the squares it should change to a double headed arrow. You can resize the chart by dragging one of these squares with the left mouse button pressed. To delete the chart right click on one of the -squares and select Delete Embedded Document. -To move the chart move the cursor so that it is over one of the -hatched borders. The cursor should then change to a hand, press the +squares and select Delete. +To move the chart move the cursor into the chart. +The cursor should then change to a cross, press the left mouse button and you will be able to drag the chart to where you want it to be. To restore the chart to its normal appearance simply click anywhere outside of the chart area. To change the format of the chart itself left -click twice within the chart area. It should then appear with a diagonal -hatch border without any small black squares and &kchart;'s -Chart Toolbar should appear in &kspread;'s window. You can then -use these &kchart; tools or a selection from the menu that pops up when you -right click in the chart area to change the chart. +click twice within the chart area. The chart Tools Options +should appear in the docker. You can then +use these tools to change the chart. Inserting External Data You can insert data from a text file or from the clipboard into a worksheet by first selecting the cell where you want the top left item of the -inserted data to appear, then choosing From Text File... - or From Clipboard... from the +inserted data to appear, then choosing From Text File... +or From Clipboard... from the InsertExternal Data sub menu. -In both cases &kspread; will assume that the data is in +In both cases &tables; will assume that the data is in CSV form and will open a dialog box allowing you to control how the data is extracted from the file or clipboard and placed into the worksheet cells. -If support for it has been included in your system, &kspread; can also +If support for it has been included in your system, &tables; can also insert data from a SQL database into a worksheet. This is done by using the Insert External DataFrom Database... @@ -420,37 +416,36 @@ The Cell type of link cell holds a -&kspread; cell reference, entered in the Cell: text box. +&tables; cell reference, entered in the Cell or Named Area text box. Left clicking on this type of link cell causes -&kspread;'s focus to move to the target cell. +&tables;'s focus to move to the target cell. All four types of link cell need some suitable text to be entered into -the Comment: field of the Insert Link -dialog. This is the text that appears in the cell, you can set -its style to Bold or Italic if you -wish. +the Text to display field of the Insert Link +dialog. This is the text that appears in the cell. Validity Checking -&kspread; can automatically check the validity of entered data against +&tables; can automatically check the validity of entered data against a number of criteria, and pop up a message box if the data is invalid. To enable this feature, select the cell(s) to be monitored and choose -EditValidity... -. This will bring up &kspread;'s Validity -dialog box which has two tabbed pages. -In the Values page select what type of data is to +DataValidity... +. This will bring up &tables;'s Validity +dialog box which has three tabbed pages. +In the Criteria page select what type of data is to be considered valid from the Allow: combo box list then define the valid range of values by choosing one of the options in the Data: combo box and entering suitable value(s) into one or both of the edit box(es). When you have done this change to the Error Alert -tab page. Here you can choose the type of message box +tab. Here you can choose the type of message box (Stop, Warning or Information) that will appear when an invalid value is entered, and define the message box title and message text. + Note that this feature only checks data that you enter into the cell, for a way of checking the results from formulae cells see the Conditional Cell Attributes section of this @@ -465,7 +460,7 @@ Protecting the document means that without the password a user cannot add or delete sheets. Document protection does not protect cells. Select ToolsProtect -Document.... +Document... A dialog appears asking you for a password. The Password: strength meter indicates if your password is secure enough. The longer the indicator is, the more secure your password. @@ -717,11 +712,11 @@ Other Features - + Named Cells and Areas @@ -755,10 +750,10 @@ into the small text box at the left end of the Formula toolbar, overwriting the cell reference that normally appears here. If you enter a name that has already been used into this text box -&kspread;'s selection will change to show the named cell(s). -The DataShow Area... - option will give you a list of existing names -and let you change &kspread;'s focus to any of them or let you remove a name. +&tables;'s selection will change to show the named cell(s). +The DataNamed Areas... + option will give you a list of existing names +and let you change &tables;'s focus to any of them or let you remove a name. Named cells are particularly useful in formulae as an alternative to absolute cell references as the names can @@ -776,12 +771,11 @@ Cell Comments A cell can contain a text comment that can be viewed when working on the spreadsheet but which is not printed and not normally seen. -To add a comment select the cell and choose Add/Modify -Comment... from the right mouse -button menu or from the Insert -Cell Comment menu and type your comment into the +To add a comment select the cell and choose Comment... +from the right mouse +button menu or from the Insert menu and type your comment into the resulting Cell Comment dialog box. -To see the comment hover the mouse pointer over the top right corner of +To see the comment hover the mouse pointer over the cell. The comment will appear as if it were a Tooltip. If you check the Show comment indicator box of the @@ -793,8 +787,8 @@ Sheet Properties from the popup menu. Or select it from the FormatSheet menu. -To remove a comment from a cell, select Remove Comment - from the right mouse button menu or +To remove a comment from a cell, select Remove Comment +from the right mouse button menu or choose EditClear Comment. diff -Nru calligra-2.3.86/doc/tables/basics.docbook calligra-2.3.87/doc/tables/basics.docbook --- calligra-2.3.86/doc/tables/basics.docbook 2012-01-07 03:25:00.000000000 +0000 +++ calligra-2.3.87/doc/tables/basics.docbook 2012-01-28 07:04:47.000000000 +0000 @@ -11,38 +11,32 @@ -&kspread; Basics +&tables; Basics -Like the rest of &kde;, &kspread; is highly configurable, which can +Like the rest of &kde;, &tables; is highly configurable, which can cause problems for readers trying to compare the text in a document such as -this with what they see on the version of &kspread; running on their desktop. +this with what they see on the version of &tables; running on their desktop. To cut down on some of the possibilities for confusion, it it suggested that -when you first start to use &kspread; you set the default options in all pages -of the &kspread; configuration dialog (obtained by selecting +when you first start to use &tables; you set the default options in all pages +of the &tables; configuration dialog (obtained by selecting SettingsConfigure -&kspread;...) except for Completion mode: - in the Misc page, which should be set to -None. - -You may also find it helpful to globally Enable tooltips -in &kcontrolcenter; in Appearance & -ThemesStyle -on the Style page. +Tables...). + Spreadsheets for Beginners This section attempts to explain by example what a spreadsheet program -such as &kspread; actually does, and why it is such a useful tool in any +such as &tables; actually does, and why it is such a useful tool in any situation where you have to deal with numbers. If you have already used a spreadsheet program you may wish to skip to the next section. -The first thing to do is to start up &kspread;. You can do this by -left clicking on a &kspread; icon if there is one +The first thing to do is to start up &tables;. You can do this by +left clicking on a &tables; icon if there is one on your desktop or panel, or you can select -Office&kspread; +Office&tables; -from the K menu. +from the &kmenu;. @@ -50,7 +44,7 @@ -&kspread; at first run +&tables; at first run When it has started you will be given the choice of opening a recent @@ -59,7 +53,7 @@ on the left and choose the Blank Worksheet template. Then click the Use This Template button. -Looking at &kspread; once it has started up, you will see a sheet of +Looking at &tables; once it has started up, you will see a sheet of empty rectangular cells arranged in numbered rows and lettered columns. This is where you enter data or formula, text or charts. @@ -75,23 +69,23 @@ screenshot into the same cells of your spreadsheet. Ignore what is in row 7 for the moment. To enter anything into a cell first select the cell by left clicking inside it, then type whatever you -want, then press Enter or use the arrow keys to move the +want, then press &Enter; or use the arrow keys to move the selection point to another cell. What we have entered so far could be a simple budget for the next two months, listing how much we think we will be spending for Food, Shelter, Clothing and any Other expenditure. Now select cell B7 (column B, row 7), -type in =B2+B3+B4+B5 and press Enter. -Because it begins with a = symbol &kspread; sees this as a +type in =B2+B3+B4+B5 and press &Enter;. +Because it begins with a = symbol &tables; sees this as a formula, something it has to calculate, in this case by adding together the values in the 4 cells B2 to B5, and what is shown in the cell B7 is the result of that calculation. You could enter a similar formula into cell C7, except that in this case it would have to be =C2+C3+C4+C5, but there is an -easier way which is to Copy cell B7 and Paste it into C7. &kspread; will +easier way which is to Copy cell B7 and Paste it into C7. &tables; will automatically adjust the cell references from B.. to C.. when the Paste is done. -At this point you may think that &kspread; is doing no more than you +At this point you may think that &tables; is doing no more than you could manage with pencil, paper and a calculator, and you could be right, but remember that this is a very small example of a spreadsheet, doing simple calculations on only a few numbers. For any reasonably amount of values or data @@ -116,52 +110,54 @@ You can select a single cell in one of the following ways left click on it enter the cell reference (for example B5) -into the cell reference box at the left end of the Formula toolbar and press -Enter -use the ViewGoto +into the cell reference box at the left end of the Cell Editor +tool options and press &Enter; +use the GoGoto Cell... menu option You can also steer your way around with the arrow keys. -Pressing the Enter key will move the current selection one -position up, down, left or right depending on the setting in the Misc - page of &kspread;'s configuration dialog -box. If you hold the Interface page of &tables;'s configuration +dialog box. If you hold the &Shift; key down while using the arrow keys the selection will move to the start or end of the block of occupied cells. To select an area of contiguous cells drag the mouse cursor across the desired area with the left button held down, or enter the references of the top left and bottom right cells separated by a colon into -the Formula toolbar cell reference box (for example B7:C14 -) and press Enter, or enter these cell references +the Cell Editor cell reference box (for example +B7:C14) and press &Enter;, or enter these cell references in a similar format into the dialog box brought up by -ViewGoto Cell.... +GoGoto Cell.... You can also select an area of cells by selecting the cell in one corner of the wanted area then holding the &Shift; key down while using the left mouse button to select the cell in the opposite corner. +To select non-contiguous cells, click on the first cell you want to select +then hold the &Ctrl; key and select the other +cells. + To select a complete row or column of cells left click on the row number at the left of the worksheet or on the column letters at the top. To select adjacent rows or columns drag the mouse pointer over the appropriate row numbers or column letters with the left button held down. - -To select non-contiguous cells, click on the first cell you want to select -then hold the &Ctrl; key and select the other -cells. +To select non-contiguous rows or columns of cells, click on the first row number +or column letter then hold the &Ctrl; key and select +the other rows or columns of cells. Entering Data Entering data into a cell can be as simple as selecting the cell, typing -your data, then pressing Enter or moving the selection to +your data, then pressing &Enter; or moving the selection to another cell with one of the arrow keys. Depending on how you -enter the data, &kspread; will interpret it as a number, date, time or text: +enter the data, &tables; will interpret it as a number, date, time or text: Numbers are entered in the obvious way; 123, @@ -170,14 +166,13 @@ Dates should be entered in your System format, as defined in -the &kcontrolcenter; in -Regional & Accessibility -Country/Region & LanguageTime & Dates - dialog box. If, for example, you are using the DD/MM/YYYY form -you should enter 30/03/2002 for 30th March 2002. +the &systemsettings; in Locale +Country/Region & LanguageDate & Time + tab. If, for example, you are using the DD/MM/YYYY form +you should enter 30/03/2012 for 30th March 2012. Leading zeroes can be omitted from the day and month fields and only the last one or two digits of the year need to be entered if the date is in the current -century, for example 9/1/2 for 9th January 2002. +century, for example 9/1/9 for 9th January 2009. Times should also be entered using the System format. For @@ -186,18 +181,19 @@ 10:30:52 pm. -&kspread; defines any input data as text if it cannot +&tables; defines any input data as text if it cannot recognize the data as being a number, date or time. -By default, &kspread; right justifies numbers, dates and times +By default, &tables; right justifies numbers, dates and times within a cell and left justifies anything else. This can be a useful guide to whether you have entered a date or time in the correct format. But remember that how items are displayed can be changed by altering the cell format. -The main text entry box in the Formula toolbar provides an easy way of -editing the contents of a selected cell. Press Enter or +The main text entry box in the Cell Editor +tool options provides an easy way of +editing the contents of a selected cell. Press &Enter; or left click on the green tick mark when you are happy with what you have entered, or click on the red cross to cancel your edits. @@ -205,10 +201,10 @@ Generic Cell Format -&kspread; uses the Generic cell format as default. As long -as this format is used, &kspread; autodetects the actual data type depending +&tables; uses the Generic cell format as default. As long +as this format is used, &tables; autodetects the actual data type depending on the current cell data. For example if you enter some text into a cell and -later enter a number into the same cell, &kspread; automatically interprets +later enter a number into the same cell, &tables; automatically interprets the new data as a number. If you want to define the type of data yourself, you can explicitly set it in the cell format. You can change the format back to Generic at any time. @@ -220,7 +216,7 @@ Copy, Cut and Paste -At first glance, &kspread;'s Cut, +At first glance, &tables;'s Cut, Copy and Paste appear to be similar to these functions in other &kde; applications. Having selected a cell or cells, you can choose Copy or @@ -232,7 +228,7 @@ , then move the selection to the target cell and choose Paste or press &Ctrl;V. However there are some -subtleties associated with these functions in &kspread; and these are discussed +subtleties associated with these functions in &tables; and these are discussed below. If a cell contains a formula then the formula itself is copied rather @@ -250,7 +246,7 @@ =B2 * C2, D3 should be =B3 * C3, D4 should be =B4 * C4 and so on. Instead of having to enter a different formula in each cell, you can just enter the first formula -into D2 and then copy it into the cells below, letting &kspread; adjust the +into D2 and then copy it into the cells below, letting &tables; adjust the cell references to suit. @@ -272,7 +268,7 @@ If you cut or copy a rectangular area of cells, say B2:C3, and paste it into a larger area such as A10:D13 the original pattern of cells will be repeated to fill the target area. -&kspread; also provides a Drag and Copy method for +&tables; also provides a Drag and Copy method for copying cells down into other cells immediately below or to the right of the original cell(s). To use this method select the cell(s) to be copied then position the mouse pointer over the small black square at the @@ -287,16 +283,16 @@ Other Paste Modes A cell may contain text, a value, or a formula, and may also contain special font, border or background formatting -information. &kspread; has special versions of Paste that let +information. &tables; has special versions of Paste that let you handle these items in different ways. EditSpecial Paste...brings up the Special Paste dialog box. By selecting the appropriate item from -the top part of this dialog you can choose to paste just -Text , the cell Format, any -Comment in the cell(s) or Everything -without border. The items in the bottom part of this dialog +the left part of this dialog you can choose to paste Everything, just +Text, the cell Format, any +Comment in the cell(s) or Everything +without border. The items in the right part of this dialog box allow you to do simple arithmetic on an area of cells. @@ -308,18 +304,18 @@ - + Insert and Delete -Use the Delete key or Edit -ClearText +Use the Del key or Edit +ClearContents to remove the text, value or formula from selected cell(s), row(s) or column(s) without affecting anything else. To delete everything in the selected cell(s), row(s) or column(s), -including comments and special formatting, use -&Shift;Delete or choose the Delete - option from the Edit menu or from the pop +including comments and special formatting, choose the All +option from the EditClear +menu or from the pop up menu you get when you right click on a selection. To remove selected row(s) or column(s) completely, use the @@ -348,7 +344,7 @@ Simple Sums If the first character in a cell is an equals sign (=) -&kspread; will take the cell contents to be a formula which is to be +&tables; will take the cell contents to be a formula which is to be calculated. The result of the calculation will be displayed in the cell rather than the formula itself. For example, enter =2+3 into a cell and it should display 5. @@ -368,20 +364,20 @@ check box in the Format SheetSheet Properties dialog is checked. -&kspread; also includes a large number of built-in functions for +&tables; also includes a large number of built-in functions for applications such as statistical, trigonometrical and financial calculations. Their use will be examined in more depth in a later section of this manual, but if you are interested at this stage -choose Function... from the Insert - menu and take a look through the Function - dialog box that will be displayed.. +choose Function... from the Insert +menu and take a look through the Function dialog box +that will be displayed. For the time being, however, the SUM function may be of interest as it calculates the sum of all values in a specified area of cells. For example =SUM(B4:C10) calculates the sum of all values in the cell area B4 to C10. -If &kspread; displays a row of # symbols when you have +If &tables; displays #VALUE! when you have entered your formula this usually means that it cannot understand what -you have entered, but if the row of # symbols ends with a +you have entered, but if the row of symbols ends with a small red arrow this just means that the cell is not wide enough to display the complete result, in which case you should either make the cell(s) wider or change their format so that the result @@ -393,9 +389,10 @@ Format SheetSheet Properties dialog box is -checked, &kspread; will recalculate the values of cells whenever anything that +checked, &tables; will recalculate the values of cells whenever anything that affects them is changed in the sheet. -When Automatic recalculation is not checked for the current sheet, you can instruct &kspread; to perform a recalculation at any time by +When Automatic recalculation is not checked for the +current sheet, you can instruct &tables; to perform a recalculation at any time by using the Recalculate Sheet or Recalculate Document option in the Tools menu or their shortcuts &Shift;F9 @@ -407,7 +404,7 @@ Sorting Data In the simple example shown below, the data consist of the names and countries of a number of mountains together with their height above sea level. -&kspread; can sort data such as this in different ways. +&tables; can sort data such as this in different ways. @@ -421,7 +418,7 @@ We may want the data sorted so that the names are in alphabetical order. To do this select the area containing the data (A2:C7 in this case) and choose Sort... from the Data -menu. This opens the Sorting dialog box. +menu. This opens the Sort dialog box. Sorting is done alphanumerically, and the default is case sensitive, numbers coming before uppercase letters which come before lowercase letters, so that cells containing the entries Cat, bar, @@ -435,75 +432,86 @@ Sort... to bring up the Sort dialog box. --> -Using the Sort Criteria page of this dialog box -lets you Sort Rows or Sort Columns. -If you check the First row contains headers box data in the -first row will not be included in the sort operation. -You can choose which column or which row of the data is to be used as a primary sort key and, -if you wish, other columns or rows to be used as secondary and tertiary keys. Using -the example in the above screenshot, choosing column B as the first key and +In the Direction area of this dialog box +select to sort in rows or columns. +If you check the First row contains column headers or +First column contains row headers box data in the +first row or column will not be included in the sort operation. +The rows or columns are sorted in the specified order, which can be changed +using the Move Up and Move Down buttons. +Using the example in the above screenshot, choosing column B as the first key and column C as the second would sort the data by country and, for each country, by height. +Uncheck the option Case Sensitive to get a sort +not depending on capitalization and switch the sort order between Ascending +and Descending by clicking on the cells in the column +Sort Order. + -The Options page of the dialog allows you to sort using the +The Details >> extension of the dialog allows you to sort using the order of items in a custom list such as January, February... instead of alphanumerically. The cell format is moved with the cell content, if you select -Copy cell Formatting (Borders, Colors, Text Style) -Uncheck the option Case sensitive sort to get a sort -not depending on capitalization. +Copy cell formatting (Borders, Colors, Text Style). The Status bar Summary Calculator -The left hand end of the Status bar shows a summary of the values in -the selected cell(s). According to the setting of the Method of -calc: combo box in the Misc page of -&kspread;'s configuration dialog the summary can be: +The left hand end of the Status bar by default shows a summary of the values in +the selected cell(s). According to the setting of the Function shown in +status bar combo box in the Interface page of +&tables;'s configuration dialog the summary can be: -Sum -The value displayed is the sum of the values in the selected -cells. +None +No summary calculation is performed. -Min -The value displayed is the minimum of the values in the selected +Average +The value displayed is the average of the values in the selected cells. -Max -The value displayed is the maximum of the values in the selected -cells. +Count +The value displayed is the number of cells containing numeric +values. -Average -The value displayed is the average of the values in the selected +CountA +The value displayed is the number of non empty cells. + + + + +Max +The value displayed is the maximum of the values in the selected cells. -Count -The value displayed is the number of cells containing numeric -values. +Min +The value displayed is the minimum of the values in the selected +cells. -None -No summary calculation is performed. +Sum +The value displayed is the sum of the values in the selected +cells. + The method of calculation can also be changed by right clicking on the summary calculation result area of the @@ -513,41 +521,40 @@ Saving your Work -&kspread; saves the complete document, which may include more than one +&tables; saves the complete document, which may include more than one worksheet, as a single document file. If you have created a new document, or want to save an existing one under a different name, use File Save As.... This will bring up &kde;'s common Save Document As dialog box. Choose the folder where you want to save the document and enter a -suitable file name into the Location: text box. &kspread; +suitable file name into the Name text box. &tables; documents are normally automatically saved with a .ods extension, you do not need to add this to the filename but do make sure that -the Filter: selection is set to -OASIS OpenDocument SpreadSheet. +the Filter selection is set to +OpenDocument SpreadSheet. To save your document without changing its name, just use FileSave. -You can also save a &kspread; document in a foreign format: see - the Import/Export section for more information -about doing this. +You can also save a &tables; document in a foreign format selecting the +format from the Filter: combo box. When you save a modified version of an existing document -&kspread; will keep the previous version as a backup file, adding a +&tables; will keep the previous version as a backup file, adding a ~ to the end of the filename. -&kspread; can provide some protection against losing your work because -of a computer crash or because you have closed &kspread; without saving the +&tables; can provide some protection against losing your work because +of a computer crash or because you have closed &tables; without saving the current document. It does this by automatically saving the latest version of the document you are working on every few minutes using a modified file name. The autosaved version is normally removed when you next save your document, so that it will only exist if it is more up to date than the version that was saved manually. -When you open a document &kspread; checks to see if an autosaved +When you open a document &tables; checks to see if an autosaved version exists, and if it finds one it will offer to open that instead. Autosaved documents are saved with a file name of the form .yourfilename.autosave (note the leading period), so that spread1.ods would be autosaved as .spread1.ods.autosave. The autosave feature is -user configurable in the settings dialog. +user configurable in the settings dialog. Templates @@ -556,12 +563,12 @@ using that as the basis for the individual documents. To do this first create a document containing the common elements, then save it as a template by choosing File -Create Template From Document.... +Create Template From Document. Doing this opens the Create Template dialog box. Enter a name for your new template into the Name: text box and press OK. The next time you start a new -document by choosing FileNew - or when you next start &kspread; the +document by choosing File +New or when you next start &tables; the startup dialog window will give you the option of creating the new document from your template. The Create Template dialog box also lets you @@ -569,6 +576,9 @@ startup dialog window, and lets you save your templates under different group names, which will appear as different pages in the dialog. +Templates are stored as .kst files under +~/.kde/share/apps/tables/templates/. + @@ -580,16 +590,16 @@ brings up &kde;'s common Print dialog box where you can choose, among other options, the printer to be used, the number of copies and whether all or only selected pages are to be printed. -By default &kspread; will print all items in the current worksheet, but +By default &tables; will print all items in the current worksheet, but you can restrict this by first selecting the area that you want to be printed then choosing Define Print Range from the FormatPrint Range sub menu. -&kspread; will print as many pages as are necessary to include all +&tables; will print as many pages as are necessary to include all items in the current worksheet. You can quickly see how a worksheet will be -spilt into separate pages for printing by checking the -View -Show Page Borders box. The boundaries +split into separate pages for printing by checking the +View +Page Borders box. The boundaries of each printed page will then be marked by colored lines in the worksheet. @@ -608,17 +618,14 @@ Layout..., to change the orientation of the printed pages, the paper size (this should be suitable for your printer) and the size of the page borders. -The Header & Footer page of the -Page Layout dialog box also lets you add text, including items such -as the filename, date and page number to the header and footer, of each -printed page. -The Ranges section of the Options - page of the Page Layout dialog box provides +The Sheet provides more options. +The Print settings section lets you select whether or not to print the grid, +comment indicators and formula indicators, objects and charts. +The Ranges section provides an alternative way of restricting the printed output to just one part of the worksheet and allows you to repeat selected column(s) or row(s) on each printed -page. This page also lets you select whether or not to print the grid, -comment indicators and formula indicators, objects and charts. -In the section Scale Printout you can set a scalefactor +page. +In the section Scaling you can set a scalefactor or limit the number of pages for the print. Binary files /tmp/zZ3vRDbxE1/calligra-2.3.86/doc/tables/cellformat0.png and /tmp/BxERTtUs6S/calligra-2.3.87/doc/tables/cellformat0.png differ Binary files /tmp/zZ3vRDbxE1/calligra-2.3.86/doc/tables/cellformat1.png and /tmp/BxERTtUs6S/calligra-2.3.87/doc/tables/cellformat1.png differ Binary files /tmp/zZ3vRDbxE1/calligra-2.3.86/doc/tables/cellformat2.png and /tmp/BxERTtUs6S/calligra-2.3.87/doc/tables/cellformat2.png differ Binary files /tmp/zZ3vRDbxE1/calligra-2.3.86/doc/tables/cellformat3.png and /tmp/BxERTtUs6S/calligra-2.3.87/doc/tables/cellformat3.png differ Binary files /tmp/zZ3vRDbxE1/calligra-2.3.86/doc/tables/cellformat4.png and /tmp/BxERTtUs6S/calligra-2.3.87/doc/tables/cellformat4.png differ Binary files /tmp/zZ3vRDbxE1/calligra-2.3.86/doc/tables/cellformat5.png and /tmp/BxERTtUs6S/calligra-2.3.87/doc/tables/cellformat5.png differ Binary files /tmp/zZ3vRDbxE1/calligra-2.3.86/doc/tables/cellformat6.png and /tmp/BxERTtUs6S/calligra-2.3.87/doc/tables/cellformat6.png differ Binary files /tmp/zZ3vRDbxE1/calligra-2.3.86/doc/tables/cellformat7.png and /tmp/BxERTtUs6S/calligra-2.3.87/doc/tables/cellformat7.png differ Binary files /tmp/zZ3vRDbxE1/calligra-2.3.86/doc/tables/cellprotection1.png and /tmp/BxERTtUs6S/calligra-2.3.87/doc/tables/cellprotection1.png differ Binary files /tmp/zZ3vRDbxE1/calligra-2.3.86/doc/tables/cellprotection2.png and /tmp/BxERTtUs6S/calligra-2.3.87/doc/tables/cellprotection2.png differ Binary files /tmp/zZ3vRDbxE1/calligra-2.3.86/doc/tables/chart1.png and /tmp/BxERTtUs6S/calligra-2.3.87/doc/tables/chart1.png differ diff -Nru calligra-2.3.86/doc/tables/commands.docbook calligra-2.3.87/doc/tables/commands.docbook --- calligra-2.3.86/doc/tables/commands.docbook 2012-01-07 03:25:00.000000000 +0000 +++ calligra-2.3.87/doc/tables/commands.docbook 2012-01-28 07:04:47.000000000 +0000 @@ -14,7 +14,7 @@ Command Reference -The <guimenu>File</guimenu> Menu +The File Menu @@ -64,7 +64,8 @@ File Save As... -Save the document with a new name or format. +Save and change the current document to a new name or format. +If you want to keep the name and format of the document use Export... @@ -76,14 +77,36 @@ Reloads the document. - + File Import... Import other documents. - + +Tables of data are often held in text files with the values in a +line being separated by a comma, space, tab or other character, +for example 123, 456, 789, abcd, efgh. Such files +are commonly called CSV (Comma Separated +Values) files, even though the separating character may not be a comma. +If you ask &tables; to open a text file it assumes that the file is +in CSV format and launches a dialog box that allows you to +specify the delimiter (separating character) used by the file, and shows how +the data items will be placed into different spreadsheet cells. +Other options in this dialog box let you define the Format +of the spreadsheet cells, whether text quote characters should be +removed, and whether the first line(s) of the file should be ignored. + @@ -110,7 +133,7 @@ File Create Template From Document... -Create a &kspread; template +Create a &tables; template based on this document. @@ -134,7 +157,16 @@ View the document as it will be printed. - + File @@ -153,7 +185,7 @@ File Close -Close the current document but leave &kspread; running. +Close the current document but leave &tables; running. @@ -165,7 +197,7 @@ File Quit -Quit &kspread;. +Quit &tables;. @@ -173,7 +205,7 @@ -The <guimenu>Edit</guimenu> Menu +The Edit Menu @@ -274,7 +306,19 @@ selection. - + @@ -328,10 +372,9 @@ Edit Clear -Clear Text, -Comment, Validity or -Conditional Cell -Attributes from selected cell(s). +Clear All or Contents, +Comment, Conditional Styles, +Link or Validity from selected cell(s). @@ -340,19 +383,11 @@ Edit Delete -Delete everything from selected cell(s). +Delete Cells, Columns, +Rows or Sheet. - - - -Edit -Remove Link - -Remove the link while leave the displayed text. - - - + -&Ctrl;M +F2 Edit Modify Cell @@ -384,22 +409,13 @@ To modify selected cell in-situ. - + -The <guimenu>View</guimenu> Menu +The View Menu @@ -408,11 +424,11 @@ View New View -Open a new instance of &kspread; +Open a new instance of &tables; with the same document. - + View -Show/Hide Page Borders +Page Borders Toggle marking of printed page borders in the sheet with red lines. @@ -484,6 +500,7 @@ --> + View @@ -494,14 +511,21 @@ + + +The Go Menu +In this menu you find actions to navigate between the sheets of the currently +opened spreadsheet and the Goto Cell action to jump to a single +cell or to select a range of cells. + -The <guimenu>Insert</guimenu> Menu +The Insert Menu @@ -517,10 +541,9 @@ Insert -Cell Comment +Comment -Add/Modify Comment... or -Remove Comment. +Add or modify a comment. @@ -563,7 +586,8 @@ Insert a special character into the selected cell. - + + Insert @@ -610,7 +634,7 @@ -The <guimenu>Format</guimenu> Menu +The Format Menu @@ -630,58 +654,62 @@ Format -Properties +Style Manager -Opens a dialog to change the properties of -an inserted object or picture. +Create, Modify or delete cell format styles. Format -Change Angle... +Style -Change angle of displayed text in selected cell(s). - +Apply a style to selected cell(s). +To manage styles use +FormatStyle Manager... + Format -Decrease Indent +Create Style From Cell... -Move text in selected cell(s) to the left. +Create a new style from the format of the +selected cell. +To manage styles use +FormatStyle Manager... + - + Format -Increase Indent +AutoFormat... -Move text in selected cell(s) to the right. +Autoformat the selected cells: a dialog let you choose betwen two proposed formats. Format -Increase Precision +Merge Cells -Increase displayed precision of numbers in selected -cell(s). +Merge selected cells. Format -Decrease Precision +Dissociate Cells -Decrease displayed precision of numbers in selected -cell(s). +Dissociate (split apart) previously merged cells. + @@ -718,7 +746,7 @@ Format Sheet -Remove, hide, show worksheet or configure +Hide, show worksheet or configure advanced sheet properties. @@ -726,49 +754,6 @@ Format -AutoFormat... - -Autoformat the selected cells: a dialog let you choose betwen two proposed formats. - - - - - -Format -Style Manager - -Create, Modify or delete cell format styles. - - - - - -Format -Style - -Apply a style to selected cell(s). -To manage styles use -FormatStyle Manager... - - - - - - -Format -Create Style From Cell... - -Create a new style from the format of the -selected cell. -To manage styles use -FormatStyle Manager... - - - - - - -Format Page Layout... Format printed page layout. @@ -784,11 +769,12 @@ + -The <guimenu>Data</guimenu> Menu +The Data Menu @@ -800,7 +786,7 @@ Sorting Data for more details. - + Data @@ -814,87 +800,25 @@ + +&Ctrl;&Shift;G + Data -Insert Columns - -Insert new column(s) at left of selected column(s). - - - - - - -Data -Insert Rows - -Insert new row(s) above selected row(s). - - - - - - -Data -Delete Columns - -Delete selected column(s). - - - - - -Data -Delete Rows - -Delete selected row(s). - - - - - -Data -Insert Cells... - -Insert new cell(s). - - - - - -Data -Remove Cells... - -Remove selected cell(s). - - - - - -Data -Merge Cells - -Merge selected cells. - - - - - -Data -Dissociate Cells +Named Areas... -Dissociate (split apart) previously merged cells. - +Open the Named Areas dialog +to select, add, edit and remove named areas. See the section +Named Cells and Areas for further details. Data -Show Area... +Consolidate... -Change &kspread;'s focus to show a previously -named area. See the section Named Cells -and Areas for further details. +Consolidate data. See the section +Consolidating Data for more details. @@ -911,20 +835,21 @@ Data -Goal Seek... +Validity... -Open the Goal Seek dialog box. See -Goal Seeking for details. +Set or modify the error checking criteria and error +alert message for selected cell(s). See +Validity Checking for more details. Data -Consolidate... +Goal Seek... -Consolidate data. See the section -Consolidating Data for more details. +Open the Goal Seek dialog box. See +Goal Seeking for details. @@ -932,7 +857,7 @@ -The <guimenu>Tools</guimenu> Menu +The Tools Menu @@ -950,7 +875,7 @@ Custom Lists... View or amend the special series of words recognized -by &kspread;. +by &tables;. @@ -1001,7 +926,7 @@ Recalculate all sheets. - + + Tools -Script Manager... +Scripts -Opens the Scripts Manager dialog to execute, load, unload, install, uninstall and get more scripts. +Here you can execute the script Export to HTML File or start the Script Editor. Tools -Scripts +Script Manager... -Here you can execute the script Export to HTML File or start the Script Editor. +Opens the Scripts Manager dialog to execute, load, unload, install, uninstall and get more scripts. @@ -1034,48 +960,50 @@ -The <guimenu>Settings</guimenu> Menu +The Settings Menu Settings -Show/Hide Status Bar +Toolbars Shown -Show or hide the Status Bar. -The Status Bar shows additional information for selected items and -instant calculations of the selected cells. +Show or hide the toolbars: File, +Edit, Navigation, Font, +Format and Color/Border. - + + Settings -Show/Hide Formula Bar +Status Bar -Show or hide the Formula Bar. -The Formula Bar can be used to edit the content of the selected cell. +Show or hide the Status Bar. +The Status Bar shows additional information for selected items and +instant calculations of the selected cells. Settings -Toolbars +Tab Bar -Show or hide the toolbars: File, -Edit, Navigation, -Format and Color/Border. +Show or hide the Tab Bar. +All Sheets of the current Document can be accessed through the Tab Bar. @@ -1084,7 +1012,7 @@ Settings Configure Shortcuts... -Configure the keyboard shortcuts used by &kspread;. +Configure the keyboard shortcuts used by &tables;. See the section on configuring shortcuts for more details. @@ -1105,10 +1033,10 @@ Settings -Configure &kspread;... +Configure &tables;... -General &kspread; configuration. See the -section on &kspread; configuration for +General &tables; configuration. See the +section on &tables; configuration for more details. @@ -1118,7 +1046,7 @@ -The <guimenu>Help</guimenu> Menu +The Help Menu &help.menu.documentation; @@ -1135,7 +1063,7 @@ -&Alt;&Ctrl;F +&Ctrl;&Alt;F Cell Format... @@ -1203,7 +1131,7 @@ -Delete +All Delete contents of selected cell(s). @@ -1280,7 +1208,7 @@ -Remove Cells... +Delete Cells... Remove selected cell(s), moving other cell(s) to occupy the space left by the removed cell(s). @@ -1359,7 +1287,7 @@ -Add/Modify Comment... +Comment... Add or modify a comment to the selected cell. @@ -1373,7 +1301,7 @@ cell of the current selection of cells into the selected cell. - + Other Shortcuts -This section describes those &kspread; shortcut keys used for operations +This section describes those &tables; shortcut keys used for operations that do not appear in any of the menus. +&Ctrl;H + +Toggle the display of the dockers. + + + + &Ctrl;Arrow keys If the selected cell is occupied then move the @@ -1451,13 +1386,13 @@ -F4 +F4 Change cell reference between normal and absolute reference types. - + diff -Nru calligra-2.3.86/doc/tables/configdialog.docbook calligra-2.3.87/doc/tables/configdialog.docbook --- calligra-2.3.86/doc/tables/configdialog.docbook 2012-01-07 03:25:00.000000000 +0000 +++ calligra-2.3.87/doc/tables/configdialog.docbook 2012-01-28 07:04:47.000000000 +0000 @@ -11,34 +11,15 @@ -The &kspread; Configuration Dialog Box +The &tables; Configuration Dialog Box Selecting Settings -Configure &kspread;... opens a dialog box +Configure Tables... opens a dialog box with several pages, selected with the icons at the left of the dialog box, -which allow you to change many aspects of &kspread;'s operation. - - -<guilabel>Locale Settings</guilabel> - - - - - - - Locale Settings Configuration. - - - -This page of &kspread;'s configuration dialog box shows how items -such as numbers, date, time and money are displayed. -If you have loaded a spreadsheet that was generated using a different -locale, then pressing the Update Locale Settings -button on this page will update it to conform to your locale settings as they are fixed in &kcontrolcenter;. - +which allow you to change many aspects of &tables;'s operation. -<guilabel>Interface</guilabel> +Interface @@ -49,212 +30,156 @@ -This page of &kspread;'s configuration dialog box (obtained by selecting -Configure &kspread;... from the Settings - menu) controls some more &kspread; features: -Number of sheets open at the beginning: -Controls how many worksheets will be created if the -option Blank Worksheet is chosen when -&kspread; is started. +Cursor movement after pressing Enter: +Select whether pressing the &Enter; +key will move the cursor Down, Up, +Right, Left, Down, +First Column or None as determined by the setting in this drop down selection box. -Number of files to show in Recent Files list: -Controls the maximum number of filenames that are shown -when you select File -Open Recent. +Function shown in the status bar: +This drop down selection box can be used to choose the +calculation performed by the Statusbar Summary + function. -Autosave Delay (minutes): -Here you can select the time between autosaves, or disable -this feature altogether by choosing Do not save automatically -(drag the slider to the far left). +Unit: +Choose the default unit that will be used in your sheets. -Create backup files -Check this box if you want some backup files created. This is checked per default. - +Indentation step: +Set the amount of indent that will be used in the cell when you +choose the Increase Indent/Decrease Indent +actions from the toolbar. These actions are not enabled by default in the toolbar. + -Show vertical scrollbar -Check or uncheck this box to show or hide the vertical -scrollbar in all sheets. - +Capture all navigation keys while editing +Captures all navigation keys, &ie; the arrow keys, page up/down, tabulator +and backward tabulator key, while editing a cell with the embedded editor. +The embedded editor is the one appearing directly in the cell. If captured, +these keys are used for navigating in the editor. Otherwise, they are used +for cell navigation. + - -Show horizontal scrollbar -Check or uncheck this box to show or hide the horizontal -scrollbar in all sheets. - - + - -Show column header -Check this box to show the column letters across the top of each -worksheet. - - +The Colors section lets you choose the color of the +sheet grid. If you do not want the grid to appear at all, uncheck the +Show grid box in the Format +SheetSheet Properties dialog. - -Show row header -Check this box to show the row numbers down the left side. - - +This section also lets you select the color of the lines used to indicate +the printed page borders when the Page Borders +box in the View menu is checked. +Select Custom from the current color to display the +standard &kde; Select Color dialog. - -Show tabs -This check box controls whether the sheet tabs are shown -at the bottom of the worksheet. - - + -Show formula toolbar -Here is where you can choose to show or hide the Formula bar. +Grid +Click here to change the grid color &ie; the color of the borders of each cell. -Show status bar -Uncheck this box if you want to hide the status bar. +Page border +When the ViewShow Page Borders menu item is checked, the page borders are displayed. Click here to choose another color for the borders than the default red. - - -<guilabel>Misc</guilabel> + +Open/Save - Miscellaneous Configuration. + Open/Save Configuration. -The Misc page of &kspread;'s configuration -dialog box contains the following items; -Completion mode: -Lets you choose the (auto) text completion mode from a -range of options in the drop down selection box. - - - - -Pressing enter moves cell cursor: -Select whether pressing the Enter -key will move the cursor Down, Up, -Right, Left or Down, -First Column as determined by the setting in this drop down selection box. +Number of entries in Recent Files list: +Controls the maximum number of filenames that are shown +when you select File +Open Recent. -Method of calc: -This drop down selection box can be used to choose the -calculation performed by the Statusbar Summary - function. +Autosave delay (minutes): +Here you can select the time between autosaves, or disable +this feature altogether by choosing Do not save automatically. -Indentation step (cm): -Lets you define the amount of indenting used by the -Increase Indent option in the Format - menu. - -The unit taken here is the one you fixed in the Configure -&kspread; dialog, in the Page Layout tab in the Default page -unit: setting. - - - -Show error message for invalid formulae -If this box is checked a message box will pop up when what -you have entered into a cell cannot be understood by &kspread;. +Create backup files +Check this box if you want some backup files created. This is checked per default. - - - -<guilabel>Color</guilabel> - - - - - - - Color Configuration. - - - -This page of &kspread;'s configuration dialog box lets you choose the -color of the sheet grid. If you do not want the grid to appear at all, uncheck the Show grid box in -the FormatSheetSheet Properties dialog. + + + + -<guilabel>Spelling</guilabel> - - - - - - - Spelling Configuration. - - - -This page lets you configure the behavior of &kspread;'s spell +Spelling +This page lets you configure the behavior of &tables;'s spell checker. - - +For more information please refer to the +Spell Checker documentation. + + -Configuring &kspread; Shortcuts and Toolbars +Configuring &tables; Shortcuts and Toolbars Shortcuts -To change the shortcut key arrangements used by &kspread; select +To change the shortcut key arrangements used by &tables; select SettingsConfigure Shortcuts... . This will launch a dialog box as shown below. @@ -32,69 +32,22 @@ clicking on the name. By entering the name of the action in the search bar at the top you can quickly find the desired action. You will then be able to change the shortcut by selecting the None, Default or -Custom radio button or by clicking on the large button in -the Shortcut for Selected Action area. -The Configure Shortcut dialog box will then open. - - - - - - -Simple shortcut configuration - - +Custom radio button. You can now simply press the key combination you want to act as the shortcut, for example -&Ctrl;&Shift;S. The Configure -Shortcut dialog box will then close by itself as soon as the shortcut -is configured. - - - - - - -Advanced shortcut configuration - - - -You can also click on the Advanced >> button in the -Configure Shortcut dialog to get more options. -There you can configure a Primary shortcut: and a secondary -Alternate shortcut:. -You can even choose Multi-key mode, which lets you add additional -keys to the shortcut. - - -Configuring the shortcut with the simple dialog sets the primary -shortcut. - - - -User Defined Menus -You can add your own pop up menu to &kspread; so that pressing one key -combination will make the menu appear then pressing a second key, or using the -Up arrow and Down arrow keys and pressing -Enter, will select an item from it. -To do this add a Custom shortcut for each of the -actions you want to appear in the menu and in the Configure Shortcut - dialog check the Multi-key mode box, press the -key combination that you want to bring up your new menu then, separately, -press the key that will choose that item from the menu. - +&Ctrl;&Shift;S. Toolbars -&kspread; has five toolbars: File, +&tables; has six toolbars: File, Edit, Navigation, -Format and Color/Border. +Format, Font and Color/Border. each of which may or may not be shown depending on the choices made in the Settings menu. -You can choose whether a toolbar appears at the Top, +If the toolbars are unlocked, you can choose whether a toolbar appears at the Top, Left, Right or -Bottom of &kspread;'s window by right clicking on +Bottom of &tables;'s window by right clicking on the toolbar, which brings up the Toolbar Menu, and making a selection from the Orientation sub menu. This Toolbar Menu also has sub menus for choosing whether the @@ -104,24 +57,17 @@ the two vertical bars at the left end of each toolbar and holding the left mouse button down while you drag the toolbar to the wanted position. When you drag the toolbar in this way you can release -the mouse button when it is some distance from any of &kspread;'s window +the mouse button when it is some distance from any of &tables;'s window sides, and then you will get a floating toolbar, which is not locked to any -particular part of &kspread;'s window and can in fact be moved outside of +particular part of &tables;'s window and can in fact be moved outside of the window. To put a floating toolbar back into one of the traditional positions right click on its titlebar to bring up the Toolbar Menu then choose one of the options in the Orientation sub menu. -You can also flatten a toolbar by left - clicking on the two vertical bars at the left end of the -toolbar or by selecting Orientation -Flat from the Toolbar -Menu. A flattened toolbar appears as a small -rectangle containing two horizontal bars just under &kspread;'s Menubar. It -can be restored to normal by left clicking on it. - + Selecting Configure Toolbars... from the Settings menu will bring up a dialog box which lets you add -buttons to or remove them from &kspread;'s toolbars. +buttons to or remove them from &tables;'s toolbars. To use this Configure Toolbars dialog box first select a toolbar from the Toolbar: combo box. The right hand Current actions: window will then show the Binary files /tmp/zZ3vRDbxE1/calligra-2.3.86/doc/tables/configure1.png and /tmp/BxERTtUs6S/calligra-2.3.87/doc/tables/configure1.png differ Binary files /tmp/zZ3vRDbxE1/calligra-2.3.86/doc/tables/configure2.png and /tmp/BxERTtUs6S/calligra-2.3.87/doc/tables/configure2.png differ Binary files /tmp/zZ3vRDbxE1/calligra-2.3.86/doc/tables/configure3.png and /tmp/BxERTtUs6S/calligra-2.3.87/doc/tables/configure3.png differ Binary files /tmp/zZ3vRDbxE1/calligra-2.3.86/doc/tables/configure4.png and /tmp/BxERTtUs6S/calligra-2.3.87/doc/tables/configure4.png differ Binary files /tmp/zZ3vRDbxE1/calligra-2.3.86/doc/tables/configure5.png and /tmp/BxERTtUs6S/calligra-2.3.87/doc/tables/configure5.png differ Binary files /tmp/zZ3vRDbxE1/calligra-2.3.86/doc/tables/configure6.png and /tmp/BxERTtUs6S/calligra-2.3.87/doc/tables/configure6.png differ Binary files /tmp/zZ3vRDbxE1/calligra-2.3.86/doc/tables/copy1.png and /tmp/BxERTtUs6S/calligra-2.3.87/doc/tables/copy1.png differ Binary files /tmp/zZ3vRDbxE1/calligra-2.3.86/doc/tables/currency.png and /tmp/BxERTtUs6S/calligra-2.3.87/doc/tables/currency.png differ Binary files /tmp/zZ3vRDbxE1/calligra-2.3.86/doc/tables/decreasedecimal.png and /tmp/BxERTtUs6S/calligra-2.3.87/doc/tables/decreasedecimal.png differ diff -Nru calligra-2.3.86/doc/tables/faq.docbook calligra-2.3.87/doc/tables/faq.docbook --- calligra-2.3.86/doc/tables/faq.docbook 2012-01-07 03:25:00.000000000 +0000 +++ calligra-2.3.87/doc/tables/faq.docbook 1970-01-01 00:00:00.000000000 +0000 @@ -1,45 +0,0 @@ - - - - -Pamela -Robert - -
pamroberts@blueyonder.co.uk
-
-
- -
-
-Questions and Answers - - - - -How many rows and columns can I have in a sheet? - -Theoretically up to 32767 rows and 32767 columns. - - - -Where are the templates stored? - -As .kst files under -~/.kde/share/apps/kspread/templates/. - - - - -
- - - diff -Nru calligra-2.3.86/doc/tables/format.docbook calligra-2.3.87/doc/tables/format.docbook --- calligra-2.3.86/doc/tables/format.docbook 2012-01-07 03:25:00.000000000 +0000 +++ calligra-2.3.87/doc/tables/format.docbook 2012-01-28 07:04:47.000000000 +0000 @@ -31,8 +31,8 @@ Cell Format To change the format and appearance of selected cell(s), row(s) or column(s) use -the Cell Format... option from the Format - menu or from the right mouse button popup +the Cell Format... option from the Format +menu or from the right mouse button popup menu. @@ -69,13 +69,13 @@ row or column and calling the Cell Format dialog with the &RMB;. You can increase the precision decimal for any number in Generic, Number, Percent, Money or -Scientific formats using the Increase decimal +Scientific formats using the Increase precision icon in the Format toolbar: You can decrease the precision decimal for any number in Generic, Number, Percent, Money or -Scientific formats using the Decrease decimal precision icon +Scientific formats using the Decrease precision icon in the Format toolbar: @@ -83,9 +83,9 @@ Generic -This is the default format and &kspread; autodetects the +This is the default format and &tables; autodetects the actual -data type depending on the current cell data. By default, &kspread; right +data type depending on the current cell data. By default, &tables; right justifies numbers, dates and times within a cell and left justifies anything else. If the Generic format does not suit you, you can change to a specific @@ -95,8 +95,7 @@ Number The number notation uses the notation you globally choose in -&kcontrolcenter; in Regional & -AccessibilityCountry/Region & LanguageNumbers. +&systemsettings; in LocaleCountry/Region & LanguageNumbers. Numbers are right justified by default. @@ -104,7 +103,7 @@ Percent When you have a number in the current cell and you switch the cell format from Generic to Percent, the current cell number will be multiplied -by 100%. +by 100. For example if you enter 2 and set the cell format to Percent, the number will then be 200 %. Switching back to Generic cell format will bring it back to 2. @@ -117,14 +116,13 @@ Money The Money format converts your number into money notation using -the settings globally fixed in &kcontrolcenter; in Regional -& AccessibilityCountry/Region & LanguageMoney. The +the settings globally fixed in &systemsettings; in LocaleCountry/Region & LanguageMoney. The currency symbol will be displayed and the precision will be the one set in -&kcontrolcenter;. -You can also use the Currency icon in the Format toolbar to set the +&systemsettings;. +You can also use the Money Format icon in the Format toolbar to set the cell formatting to look like your current currency: - + @@ -152,39 +150,53 @@ -Date format +Date To enter a date, you should enter it in one of the formats set -in &kcontrolcenter; in Regional & -AccessibilityCountry/Region & LanguageTime & -Dates. There are two formats set here: the date format +in &systemsettings; in Locale +Country/Region & LanguageDate & +Time. There are two formats set here: the date format and the short date format. A random natural number NN will be transformed in the date from 30st December 1899 (which is 0) with the number of days NN added. For example if you -have a cell with 100 and you choose Date format, "1900-04-09" will be +have a cell with 100 and you choose Date format, "1900-04-09" will be displayed in the cell which is 100 days after 30st December 1899. This starting date is two days early as it was a bug in Lotus 123 and then it stayed that way in Excel in order to keep compatibility. Few people will need to calculate from 1st January 1900 anyway and adding 9 days to 1st November 2000 for example will give you 10th November 2000 so all normal calculations on dates are correct. -When a cell is in the Date format, you can drag this cell down as +When a cell is in the Date format, you can drag this cell down as you do with numbers and the next cells will also get dates, each date being increased by one day. -Time format +Time This formats your cell content as a time. To enter a time, you -should enter it in the Time format set in &kcontrolcenter; -in Regional & AccessibilityCountry/Region & -LanguageTime -& Dates. In the Cell Format +should enter it in the Time format set in &systemsettings; +in Locale +Country/Region & LanguageDate & +Time. In the Cell Format dialog box you can set how the time should be displayed by choosing one of the available time format options. The default format is the system format set in -&kcontrolcenter;. When the number in the cell does not make sense as a time, -&kspread; will display 00:00 in the global format you have in -&kcontrolcenter;. +&systemsettings;. When the number in the cell does not make sense as a time, +&tables; will display 00:00 in the global format you have in +&systemsettings;.
+ + + +Date and Time +This formats your cell content as date and time. To enter a date and a time, you +should enter it in the Time format set in &systemsettings; +in Locale +Country/Region & LanguageDate & +Time. In the Cell Format +dialog box you can set how the date and time should be displayed by choosing one of the +available date and time format options. The default format is the system format set in +&systemsettings;. When the number in the cell does not make sense as a date and time, +&tables; will display 00:00 in the global format you have in +&systemsettings;. @@ -349,23 +361,21 @@ Merge Cells When checked, this has the same effect -as DataMerge +as FormatMerge Cells. You need to have at least two consecutive cells selected. Those consecutive cells are then merged into a bigger one. When a merged cell is selected and when you uncheck this, then all cells come back to their original size as before the merging. It has the same effect -as DataDissociate +as FormatDissociate Cells. Indent Set the amount of indent that will be used in the cell when you -choose the FormatIncrease -Indent or -FormatDecrease -Indent menus. +choose the Increase Indent/Decrease Indent +actions from the toolbar. These actions are not enabled by default in the toolbar.
@@ -443,7 +453,7 @@ You can hide the cell content with Hide all and again this needs sheet protection. You can learn more about all these settings in the Advanced &kspread; chapter, Protection +linkend="protection">Advanced &tables; chapter, Protection section. @@ -452,16 +462,6 @@ protected which means that changing the Hide all attribute of a cell has no effect unless the sheet is protected. Whether the cell itself is protected or not does not matter. - - - - - - -Hide all. - - - When Hide all is selected, Protected and Hide formula are disabled as when the sheet is protected Hide all hides the cell content and the @@ -500,34 +500,34 @@ Conditional Cell Attributes You can make the appearance of a cell change according to the value it -contains, useful perhaps if you are using &kspread; to keep track of your +contains, useful perhaps if you are using &tables; to keep track of your household expenses and want to highlight any item greater than, say, one thousand dollars. -To do this select the cell(s) then choose Conditional Cell -Attributes... from the Edit menu. This will -bring up the Conditional Cell Attributes dialog box where +To do this select the cell(s) then choose Conditional +Styles... from the Format menu. This will +bring up the Conditional Styles dialog box where you can make the font type and color of a cell change when the value meets one or more conditions. Note that the second and third conditions only apply if the previous condition(s) are not met. Use ClearConditional -Cell Attributes from the Edit +Styles from the Edit menu to clear any conditional attributes from selected cells. Changing Cell Sizes -The Position page in the Cell Format - dialog lets you alter the size of the selected cell(s). Note that +The Position page in the Cell Format +dialog lets you alter the size of the selected cell(s). Note that changing the height of a single cell will change the height for all cells in that row, similarly changing the width will affect the entire column. You can also select the row(s) or column(s) to be changed then select -Resize Row... or Resize Column... - from the right mouse button pop up -menu or from the FormatRow - or Format +Resize Row... or Resize Column... +from the right mouse button pop up +menu or from the FormatRow + or Format Column menu. If you move the mouse cursor so that its tip is over the line between -two of the row numbers at the left of &kspread;'s window the cursor will +two of the row numbers at the left of &tables;'s window the cursor will change to show two parallel lines each with a short arrow headed line coming from it. When the cursor is in this state you can hold the left mouse button down and drag the border between the two rows, @@ -556,9 +556,9 @@ It is often convenient to have one cell that spreads across two or more columns or down more than one row. This can be done by merging two or more cells into one. Select the cells to be merged than choose -DataMerge Cells. +FormatMerge Cells. To reverse this process, select the merged cell then choose -Dissociate Cells from the Data menu. +Dissociate Cells from the Format menu. @@ -566,7 +566,7 @@ A finished spreadsheet can often be made to look more attractive by hiding the cells containing intermediate calculations so that only the important data input and result areas are shown. -In &kspread; you can hide selected rows or columns by +In &tables; you can hide selected rows or columns by using the Hide Rows and Hide Columns options from the Format Row, Format @@ -577,11 +577,10 @@ accidental change. To un-hide a row or column select Row Show Rows... or -ColumnShow Columns... - from the Format +ColumnShow Columns... + from the Format menu. In the dialog box which appears, you can select any number of -rows to show (use &Ctrl; + click to select -multiple rows or columns). +rows to show. @@ -660,13 +659,13 @@ Show formula -If this box is checked &kspread; will display the actual +If this box is checked &tables; will display the actual formulae in cells rather than the results. Show formula indicator -If this box is checked &kspread; will display a small blue +If this box is checked &tables; will display a small blue triangle at the bottom left corner of cells containing formulae. This is useful if you want to protect cells with formulae. diff -Nru calligra-2.3.86/doc/tables/functions.docbook calligra-2.3.87/doc/tables/functions.docbook --- calligra-2.3.86/doc/tables/functions.docbook 1970-01-01 00:00:00.000000000 +0000 +++ calligra-2.3.87/doc/tables/functions.docbook 2012-01-28 07:04:47.000000000 +0000 @@ -0,0 +1,9329 @@ + +Functions +&tables; has a huge range of built in mathematical and other functions that can be used in a formula cell. + +Supported Functions +This chapter holds a brief overview of all supported functions in the following groups: + +Bit Operations  +Engineering  +Lookup & Reference  +Financial  +Statistical  +Conversion  +Information  +Text  +Database  +Logical  +Trigonometric  +Date & Time  +Math  + + + +Bit Operations + + +BITAND +The BITAND() function performs a bit-wise AND operation for the two integer parameters. +Return type +Whole number (like 1, 132, 2344) + +Syntax +BITAND(value; value) + +Parameters +CommentType +First numberWhole number (like 1, 132, 2344) +Second numberWhole number (like 1, 132, 2344) + +Examples +BITAND(12;10) returns 8 (because decimal 12 is binary 1100, and decimal 10 is binary 1010; and 1100 "anded" with 1010 is 1000, which is integer 8). + +Related Functions +BITOR  + + + + + +BITLSHIFT +The BITLSHIFT() function performs a bit-wise left shift operation of the first parameter. The number of bits to shift by is specified by the second parameter. Note that a negative number of bits to left shift by becomes a right shift. +Return type +Whole number (like 1, 132, 2344) + +Syntax +BITLSHIFT(value; shift size) + +Parameters +CommentType +First numberWhole number (like 1, 132, 2344) +Amount to left shift byWhole number (like 1, 132, 2344) + +Related Functions +BITLSHIFT  + + + + + +BITRSHIFT +The BITRSHIFT() function performs a bit-wise right shift operation of the first parameter. The number of bits to shift by is specified by the second parameter. Note that a negative number of bits to right shift by becomes a left shift. +Return type +Whole number (like 1, 132, 2344) + +Syntax +BITRSHIFT(value; shift size) + +Parameters +CommentType +First numberWhole number (like 1, 132, 2344) +Amount to right shift byWhole number (like 1, 132, 2344) + +Related Functions +BITLSHIFT  + + + + + +BITOR +The BITOR() function performs a bit-wise OR operation for the two integer parameters. +Return type +Whole number (like 1, 132, 2344) + +Syntax +BITOR(value; value) + +Parameters +CommentType +First numberWhole number (like 1, 132, 2344) +Second numberWhole number (like 1, 132, 2344) + +Examples +BITOR(12;10) returns 14 (because decimal 12 is binary 1100, and decimal 10 is binary 1010; and 1100 "ored" with 1010 is 1110, which is integer 14). + +Related Functions +BITAND  + + + + + +BITXOR +The BITXOR() function performs a bit-wise exclusive-OR operation for the two integer parameters. +Return type +Whole number (like 1, 132, 2344) + +Syntax +BITXOR(value; value) + +Parameters +CommentType +First numberWhole number (like 1, 132, 2344) +Second numberWhole number (like 1, 132, 2344) + +Examples +BITXOR(12;10) returns 6 (because decimal 12 is binary 1100, and decimal 10 is binary 1010; and 1100 "xored" with 1010 is 0110, which is integer 6). + +Related Functions +BITAND  + + + + + +Engineering + + +BASE +The BASE() function converts a number from base-10 to a string value in a target base from 2 to 36. +Return type +Text + +Syntax +BASE(number;base;prec) + +Parameters +CommentType +NumberA floating point value (like 1.3, 0.343, 253 ) +BaseWhole number (like 1, 132, 2344) +MinLengthWhole number (like 1, 132, 2344) + +Examples +BASE(128;8) returns "200" + + + + + +BESSELI +The BESSELI() function returns the modified Bessel function In(x). +Return type +A floating point value (like 1.3, 0.343, 253 ) + +Syntax +BESSELI(X;N) + +Parameters +CommentType +Where the function is evaluatedA floating point value (like 1.3, 0.343, 253 ) +Order of the functionWhole number (like 1, 132, 2344) + +Examples +BESSELI(0.7;3) returns 0.007367374 + +Related Functions +BESSELJ  + + + + + +BESSELJ +The BESSELJ() function returns the Bessel function. +Return type +A floating point value (like 1.3, 0.343, 253 ) + +Syntax +BESSELJ(X;N) + +Parameters +CommentType +Where the function is evaluatedA floating point value (like 1.3, 0.343, 253 ) +Order of the functionWhole number (like 1, 132, 2344) + +Examples +BESSELJ(0.89;3) returns 0.013974004 + +Related Functions +BESSELI  + + + + + +BESSELK +The BESSELK() function returns the modified Bessel function, which is equivalent to the Bessel function evaluated for purely imaginary arguments. +Return type +A floating point value (like 1.3, 0.343, 253 ) + +Syntax +BESSELK(X;N) + +Parameters +CommentType +Where the function is evaluatedA floating point value (like 1.3, 0.343, 253 ) +Order of the functionWhole number (like 1, 132, 2344) + +Examples +BESSELK(3;9) returns 397.95880 + +Related Functions +BESSELI  + + + + + +BESSELY +The BESSELY() function returns the Bessel function, which is also called the Weber function or the Neumann function. +Return type +A floating point value (like 1.3, 0.343, 253 ) + +Syntax +BESSELY(X;N) + +Parameters +CommentType +Where the function is evaluatedA floating point value (like 1.3, 0.343, 253 ) +Order of the functionWhole number (like 1, 132, 2344) + +Examples +BESSELY(4;2) equals 0.215903595 + +Related Functions +BESSELI  + + + + + +CONVERT +The CONVERT() function returns a conversion from one measurement system to another. +Supported mass units: g (gram), sg (pieces), lbm (pound), u (atomic mass), ozm (ounce), stone, ton, grain, pweight (pennyweight), hweight (hundredweight). +Supported distance units: m (meter), in (inch), ft (feet), mi (mile), Nmi (nautical mile), ang (Angstrom), parsec, lightyear. +Supported pressure units: Pa (Pascal), atm (atmosphere), mmHg (mm of Mercury), psi, Torr. +Supported force units: N (Newton), dyn, pound. +Supported energy units: J (Joule), e (erg), c (Thermodynamic calorie), cal (IT calorie), eV (electronvolt), HPh (Horsepower-hour), Wh (Watt-hour), flb (foot-pound), BTU. +Supported power units: W (Watt), HP (horsepower), PS (Pferdestaerke). +Supported magnetism units: T (Tesla), ga (Gauss). +Supported temperature units: C (Celsius), F (Fahrenheit), K (Kelvin). +Supported volume units: l (liter), tsp (teaspoon), tbs (tablespoon), oz (ounce liquid), cup, pt (pint), qt (quart), gal (gallon), barrel, m3 (cubic meter), mi3 (cubic mile), Nmi3 (cubic Nautical mile), in3 (cubic inch), ft3 (cubic foot), yd3 (cubic yard), GRT or regton (gross register ton). +Supported area units: m2 (square meter), mi2 (square mile), Nmi2 (square Nautical mile), in2 (square inch), ft2 (square foot), yd2 (square yard), acre, ha (hectare). +Supported speed units: m/s (meters per second), m/h (meters per hour), mph (miles per hour), kn (knot). +For metric units any of the following prefixes can be used: E (exa, 1E+18), P (peta, 1E+15), T (tera, 1E+12), G (giga, 1E+09), M (mega, 1E+06), k (kilo, 1E+03), h (hecto, 1E+02), e (dekao, 1E+01), d (deci, 1E-01), c (centi, 1E-02), m (milli, 1E-03), u (micro, 1E-06), n (nano, 1E-09), p (pico, 1E-12), f (femto, 1E-15), a (atto, 1E-18). +Return type +A floating point value (like 1.3, 0.343, 253 ) + +Syntax +CONVERT(Number; From Unit; To Unit) + +Parameters +CommentType +NumberA floating point value (like 1.3, 0.343, 253 ) +From unitText +To unitText + +Examples +CONVERT(32;"C";"F") equals 89.6 + + + + + +ERF +The ERF() function returns the error function. With a single argument, ERF() returns the error function between 0 and that argument. +Return type +A floating point value (like 1.3, 0.343, 253 ) + +Syntax +ERF(Lower limit; Upper limit) + +Parameters +CommentType +Lower limitA floating point value (like 1.3, 0.343, 253 ) +Upper limitA floating point value (like 1.3, 0.343, 253 ) + +Examples +ERF(0.4) equals 0.42839236 + +Related Functions +ERFC  + + + + + +ERFC +The ERFC() function returns the complementary error function. +Return type +A floating point value (like 1.3, 0.343, 253 ) + +Syntax +ERFC(Lower limit; Upper limit) + +Parameters +CommentType +Lower limitA floating point value (like 1.3, 0.343, 253 ) +Upper limitA floating point value (like 1.3, 0.343, 253 ) + +Examples +ERFC(0.4) equals 0.57160764 + +Related Functions +ERF  + + + + + +DEC2BIN +The DEC2BIN() function returns the value formatted as a binary number. +Return type +Text + +Syntax +DEC2BIN(value) + +Parameters +CommentType +The value to convertWhole number (like 1, 132, 2344) +The minimum length of the outputWhole number (like 1, 132, 2344) + +Examples +DEC2BIN(12) returns "1100" + + + + + +DEC2HEX +The DEC2HEX() function returns the value formatted as a hexadecimal number. +Return type +Text + +Syntax +DEC2HEX(value) + +Parameters +CommentType +The value to convertWhole number (like 1, 132, 2344) +The minimum length of the outputWhole number (like 1, 132, 2344) + +Examples +DEC2HEX(12) returns "c" + + + + + +DEC2OCT +The DEC2OCT() function returns the value formatted as an octal number. +Return type +Text + +Syntax +DEC2OCT(value) + +Parameters +CommentType +The value to convertWhole number (like 1, 132, 2344) +The minimum length of the outputWhole number (like 1, 132, 2344) + +Examples +DEC2OCT(12) returns "14" + + + + + +OCT2BIN +The OCT2BIN() function returns the value formatted as a binary number. +Return type +Text + +Syntax +OCT2BIN(value) + +Parameters +CommentType +The value to convertText +The minimum length of the outputWhole number (like 1, 132, 2344) + +Examples +OCT2BIN("12") returns "1010" + + + + + +OCT2DEC +The OCT2DEC() function returns the value formatted as a decimal number. +Return type +Whole number (like 1, 132, 2344) + +Syntax +OCT2DEC(value) + +Parameters +CommentType +The value to convertText + +Examples +OCT2DEC("12") returns 10 + + + + + +OCT2HEX +The OCT2HEX() function returns the value formatted as a hexadecimal number. +Return type +Text + +Syntax +OCT2HEX(value) + +Parameters +CommentType +The value to convertText +The minimum length of the outputWhole number (like 1, 132, 2344) + +Examples +OCT2HEX("12") returns "A" + + + + + +BIN2DEC +The BIN2DEC() function returns the value formatted as a decimal number. +Return type +Whole number (like 1, 132, 2344) + +Syntax +BIN2DEC(value) + +Parameters +CommentType +The value to convertWhole number (like 1, 132, 2344) + +Examples +BIN2DEC("1010") returns 10 + + + + + +BIN2OCT +The BIN2OCT() function returns the value formatted as an octal number. +Return type +Text + +Syntax +BIN2OCT(value) + +Parameters +CommentType +The value to convertText +The minimum length of the outputWhole number (like 1, 132, 2344) + +Examples +BIN2OCT("1010") returns "12" + + + + + +BIN2HEX +The BIN2HEX() function returns the value formatted as a hexadecimal number. +Return type +Text + +Syntax +BIN2HEX(value) + +Parameters +CommentType +The value to convertText +The minimum length of the outputWhole number (like 1, 132, 2344) + +Examples +BIN2HEX("1010") returns "a" + + + + + +HEX2DEC + +The HEX2DEC() function returns the value formatted as a decimal number. +Return type +Whole number (like 1, 132, 2344) + +Syntax +HEX2DEC(value) + +Parameters +CommentType +The value to convertText + +Examples +HEX2DEC("a") returns 10 + + + + + +HEX2OCT +The HEX2OCT() function returns the value formatted as an octal number. +Return type +Text + +Syntax +HEX2OCT(value) + +Parameters +CommentType +The value to convertText + +Examples +HEX2OCT("a") returns "12" + + + + + +HEX2BIN +The HEX2BIN() function returns the value formatted as a binary number. +Return type +Text + +Syntax +HEX2BIN(value) + +Parameters +CommentType +The value to convertText + +Examples +HEX2BIN("a") returns "1010" + + + + + +COMPLEX +The COMPLEX(real;imag) returns a complex number of form x+yi. +Return type +Text + +Syntax +COMPLEX(real;imag) + +Parameters +CommentType +Real coefficientA floating point value (like 1.3, 0.343, 253 ) +Imaginary coefficientA floating point value (like 1.3, 0.343, 253 ) + +Examples +COMPLEX(1.2;3.4) returns "1.2+3.4i" + + + + + +IMAGINARY +The IMAGINARY(string) returns the imaginary coefficient of a complex. +Return type +Double + +Syntax +IMAGINARY(string) + +Parameters +CommentType +Complex numberText + +Examples +IMAGINARY("1.2+3.4i") returns 3.4 + + + + + +IMREAL +The IMREAL(string) returns the real coefficient of a complex. +Return type +Double + +Syntax +IMREAL(string) + +Parameters +CommentType +Complex numberText + +Examples +IMREAL("1.2+3.4i") returns 1.2 + + + + + +IMCOS +The IMCOS(string) returns the cosine of a complex number. +Return type +Text + +Syntax +IMCOS(string) + +Parameters +CommentType +Complex numberText + +Examples +IMCOS("1+i") returns "0.83373-0.988898i" + + + + + +IMCOSH +The IMCOSH(string) returns the hyperbolic cosine of a complex number. +Return type +Text + +Syntax +IMCOSH(string) + +Parameters +CommentType +Complex numberText + +Examples +IMCOSH("1+i") returns "0.83373+0.988898i" + + + + + +IMCOT +The IMCOT(string) returns the cotangent of a complex number. +Return type +Text + +Syntax +IMCOT(string) + +Parameters +CommentType +Complex numberText + +Examples +IMCOT("1+i") returns "0.21762-0.86801i" + + + + + +IMCSC +The IMCSC(string) returns the cosecant of a complex number. +Return type +Text + +Syntax +IMCSC(string) + +Parameters +CommentType +Complex numberText + +Examples +IMCSC("1+i") returns "0.62151-0.30393i" + + + + + +IMCSCH +The IMCSCH(string) returns the hyperbolic cosecant of a complex number. +Return type +Text + +Syntax +IMCSCH(string) + +Parameters +CommentType +Complex numberText + +Examples +IMCSCH("1+i") returns "0.30393-i0.62151" + + + + + +IMSEC +The IMSEC(string) returns the secant of a complex number. +Return type +Text + +Syntax +IMSEC(string) + +Parameters +CommentType +Complex numberText + +Examples +IMSEC("1+i") returns "0.49833+i0.59108" + + + + + +IMSECH +The IMSECH(string) returns the hyperbolic secant of a complex number. +Return type +Text + +Syntax +IMSECH(string) + +Parameters +CommentType +Complex numberText + +Examples +IMSECH("1+i") returns "0.49833-i0.59108" + + + + + +IMSIN +The IMSIN(string) function returns the sine of a complex number. +Return type +Text + +Syntax +IMSIN(string) + +Parameters +CommentType +Complex numberText + +Examples +IMSIN("1+i") returns "1.29846+0.634964i" + + + + + +IMSINH +The IMSINH(string) function returns the hyperbolic sine of a complex number. +Return type +Text + +Syntax +IMSINH(string) + +Parameters +CommentType +Complex numberText + +Examples +IMSINH("1+i") returns "0.63496+1.29846i" + + + + + +IMTAN +The IMTAN(string) function returns the tangent of a complex number. +Return type +Text + +Syntax +IMTAN(string) + +Parameters +CommentType +Complex numberText + +Examples +IMTAN("1+i") returns "0.27175+1.08392i" + + + + + +IMTANH +The IMTANH(string) function returns the hyperbolic tangent of a complex number. +Return type +Text + +Syntax +IMTANH(string) + +Parameters +CommentType +Complex numberText + +Examples +IMTANH("1+i") returns "1.08392+0.27175i" + + + + + +IMEXP +The IMEXP(string) returns the exponential of a complex number. +Return type +Text + +Syntax +IMEXP(string) + +Parameters +CommentType +Complex numberText + +Examples +IMEXP("2-i") returns "3.99232-6.21768i" + + + + + +IMLN +The IMLN(string) returns the natural logarithm of a complex number. +Return type +Text + +Syntax +IMLN(string) + +Parameters +CommentType +Complex numberText + +Examples +IMLN("3-i") returns "1.15129-0.321751i" + + + + + +IMLOG2 +The IMLOG2(string) returns the base-2 logarithm of a complex number. +Return type +Text + +Syntax +IMLOG2(string) + +Parameters +CommentType +Complex numberText + +Examples +IMLOG2("3+4i") returns "2.321928+1.337804i" + + + + + +IMLOG10 +The IMLOG10(string) returns the base-10 logarithm of a complex number. +Return type +Text + +Syntax +IMLOG10(string) + +Parameters +CommentType +Complex numberText + +Examples +IMLOG10("3+4i") returns "0.69897+0.402719i" + + + + + +IMSQRT +The IMSQRT(string) returns the square root of a complex number. +Return type +Text + +Syntax +IMSQRT(string) + +Parameters +CommentType +Complex numberText + +Examples +IMSQRT("1+i") returns "1.09868+0.45509i" + + + + + +IMPOWER +The IMPOWER(string) returns a complex number raised to a power. +Return type +Text + +Syntax +IMPOWER(string) + +Parameters +CommentType +Complex numberText +PowerWhole number (like 1, 132, 2344) + +Examples +IMPOWER("4-i";2) returns "15-8i" + + + + + +IMSUM +The IMSUM() returns the sum of several complex numbers of form x+yi. +Return type +Text + +Syntax +IMSUM(value;value;...) + +Parameters +CommentType +Complex numberA range of strings +Complex numberA range of strings +Complex numberA range of strings +Complex numberA range of strings +Complex numberA range of strings + +Examples +IMSUM(1.2;"3.4+5i") returns "4.6+5i" + + + + + +IMDIV +The IMDIV() returns the division of several complex numbers of form x+yi. +Return type +Text + +Syntax +IMDIV(value;value;...) + +Parameters +CommentType +Complex numberA range of strings +Complex numberA range of strings +Complex numberA range of strings +Complex numberA range of strings +Complex numberA range of strings + +Examples +IMDIV(1.2;"3.4+5i") returns "0.111597-0.164114i" + + + + + +IMSUB +The IMSUB() returns the difference of several complex numbers of form x+yi. +Return type +Text + +Syntax +IMSUB(value;value;...) + +Parameters +CommentType +Complex numberA range of strings +Complex numberA range of strings +Complex numberA range of strings +Complex numberA range of strings +Complex numberA range of strings + + +Examples +IMSUB(1.2;"3.4+5i") returns "-2.2-5i" + + + + + +IMPRODUCT +The IMPRODUCT() returns the product of several complex numbers of form x+yi. +Return type +Text + +Syntax +IMPRODUCT(value;value;...) + +Parameters +CommentType +Complex numberA range of strings +Complex numberA range of strings +Complex numberA range of strings +Complex numberA range of strings +Complex numberA range of strings + +Examples +IMPRODUCT(1.2;"3.4+5i") returns "4.08+6i" + + + + + +IMCONJUGATE +The IMCONJUGATE(complex number) returns the conjugate of a complex number of form x+yi. +Return type +Text + +Syntax +IMCONJUGATE(complex number) + +Parameters +CommentType +Complex numberText + +Examples +IMCONJUGATE("1.2+5i") returns "1.2-5i" + + + + + +IMARGUMENT +The IMARGUMENT(complex number) returns the argument of a complex number of form x+yi. +Return type +Text + +Syntax +IMARGUMENT(complex number) + +Parameters +CommentType +Complex numberText + +Examples +IMARGUMENT("1.2+5i") returns 0.6072 + + + + + +IMABS +The IMABS(complex number) returns the norm of a complex number of form x+yi. +Return type +A floating point value (like 1.3, 0.343, 253 ) + +Syntax +IMABS(complex number) + +Parameters +CommentType +Complex numberText + +Examples +IMABS("1.2+5i") returns 5.1419 + + + + + +DELTA +The DELTA() function returns 1 if x equals y, otherwise returns 0. y defaults to 0. +Return type +A floating point value (like 1.3, 0.343, 253 ) + +Syntax +DELTA(x; y) + +Parameters +CommentType +Floating point valueA floating point value (like 1.3, 0.343, 253 ) +Floating point valueA floating point value (like 1.3, 0.343, 253 ) + +Examples +DELTA(1.2; 3.4) returns 0 + + + + + +GESTEP +The GESTEP() function returns 1 if x greater or equals y, otherwise returns 0. y defaults to 0. +Return type +A floating point value (like 1.3, 0.343, 253 ) + +Syntax +GESTEP(x; y) + +Parameters +CommentType +Floating point valueA floating point value (like 1.3, 0.343, 253 ) +Floating point valueA floating point value (like 1.3, 0.343, 253 ) + +Examples +GESTEP(1.2; 3.4) returns 0 + + + + + +Lookup & Reference + + +ADDRESS +The ADDRESS creates a cell address. Parameter Row is the row number and Column is the column number. +Absolute number specifies the type of reference: 1 or omitted = Absolute, 2 = Absolute row, relative column, 3 = Relative row; absolute column and 4 = Relative. +A1 Style specifies the style of the address to return. If A1 is set to TRUE (default) the address is returned in A1 style if it is set to FALSE in R1C1 style. +Sheet name is the text specifying the name of the sheet. +Return type +Text + +Syntax +ADDRESS(row; col; absolute; style; sheet name) + +Parameters +CommentType +Row numberWhole number (like 1, 132, 2344) +Column numberWhole number (like 1, 132, 2344) +Absolute number (optional)Whole number (like 1, 132, 2344) +A1 style (optional)A truth value (TRUE or FALSE) +Sheet nameText + +Examples +ADDRESS(6; 4) returns $D$6 + + + + + +AREAS +Returns the number of areas in the reference string. An area can be asingle cell or a set of cells. +Return type +Whole number (like 1, 132, 2344) + +Syntax +AREAS(reference) + +Parameters +CommentType +ReferenceA range of strings + +Examples +AREAS(A1) returns 1 + + + + + +CHOOSE +Returns the parameter specified by the index. +Return type +Whole number (like 1, 132, 2344) + +Syntax +CHOOSE(index; parameter1; parameter2;...) + +Parameters +CommentType +IndexWhole number (like 1, 132, 2344) +Arguments + +Examples +CHOOSE(1; "1st"; "2nd") returns "1st" + + + + + +COLUMN +The COLUMN function returns the column of given cell reference. If no parameter is specified the column of the current cell gets returned. +Return type +Whole number (like 1, 132, 2344) + +Syntax +COLUMN(reference) + +Parameters +CommentType +ReferenceText + +Examples +COLUMN(A1) returns 1 + +Related Functions +COLUMNS  + + + + + +COLUMNS +The COLUMNS function returns the number of columns in a reference. +Return type +Whole number (like 1, 132, 2344) + +Syntax +COLUMNS(reference) + +Parameters +CommentType +ReferenceText + +Examples +COLUMNS(A1:C3) returns 3 + +Related Functions +COLUMN  + + + + + +INDEX +If a range is given, returns value stored in a given row/column. If one cell is given, which contains an array, then one element of the array is returned. +Return type +Whole number (like 1, 132, 2344) + +Syntax +INDEX(cell, row, column) + +Parameters +CommentType +ReferenceText +RowInteger +ColumnInteger + +Examples +INDEX(A1:C3;2;2), returns contents of B2 + + + + + +INDIRECT +Returns the content of the cell specified by the reference text. The second parameter is optional. +Return type +Whole number (like 1, 132, 2344) + +Syntax +INDIRECT(referenceText, a1 style) + +Parameters +CommentType +ReferenceText +A1 style (optional)A truth value (TRUE or FALSE) + +Examples +INDIRECT(A1), A1 contains "B1", and B1 1 => returns 1 + + + + + +ROW +The ROW function returns the row of given cell reference. If no parameter is specified the row of the current cell gets returned. +Return type +Whole number (like 1, 132, 2344) + +Syntax +ROW(reference) + +Parameters +CommentType +ReferenceText + +Examples +ROW(A1) returns 1 + +Related Functions +ROWS  + + + + + +ROWS +The ROWS function returns the number of rows in a reference. +Return type +Whole number (like 1, 132, 2344) + +Syntax +ROWS(reference) + +Parameters +CommentType +ReferenceText + +Examples +ROWS(A1:C3) returns 3 + +Related Functions +ROW  + + + + + +LOOKUP +The LOOKUP function looks up the first parameter in the lookup vector. It returns a value in the result Vector with the same index as the matching value in the lookup vector. If value is not in the lookup vector it takes the next lower one. If no value in the lookup vector matches an error is returned. The lookup vector must be in ascending order and lookup and result vector must have the same size. Numeric values, string and boolean values are recognized. Comparison between strings is case-insensitive. +Return type +Whole number (like 1, 132, 2344) + +Syntax +LOOKUP(value; lookup vector; result vector) + +Parameters +CommentType +Lookup valueString/Numeric +Lookup vectorString/Numeric +Result vectorString/Numeric + +Examples +LOOKUP(1.232; A1:A6; B1:B6) for A1 = 1, A2 = 2 returns the value of B1. + + + + + +HLOOKUP +Look for a matching value in the first row of the given table, and return the value of the indicated row. +Looks up the 'lookup value' in the first row of the 'data source'. If a value matches, the value in the 'row' and the column, the value was found in, is returned. If 'sorted' is true (default), the first row is assumed to be sorted. The search will end, if the 'lookup value' is lower than the value, currently compared to. +Return type +String/Numeric + +Syntax +HLOOKUP(Lookup value; data source; Row; Sorted) + +Parameters +CommentType +Lookup valueString/Numeric +Data sourceArray +RowWhole number (like 1, 132, 2344) +Sorted (optional)A truth value (TRUE or FALSE) + + + + + +VLOOKUP +Look for a matching value in the first column of the given table, and return the value of the indicated column. +Looks up the 'lookup value' in the first column of the 'data source'. If a value matches, the value in the 'column' and the row, the value was found in, is returned. If 'sorted' is true (default), the first column is assumed to be sorted. The search will end, if the 'lookup value' is lower than the value, currently compared to. +Return type +String/Numeric + +Syntax +VLOOKUP(Lookup value; data source; Column; Sorted) + +Parameters +CommentType +Lookup valueString/Numeric +Data sourceArray +ColumnWhole number (like 1, 132, 2344) +Sorted (optional)A truth value (TRUE or FALSE) + + + + + +MULTIPLE.OPERATIONS +MULTIPLE.OPERATIONS executes the formula expression pointed to by FormulaCell and all formula expressions it depends on while replacing all references to RowCell with references to RowReplacement respectively all references to ColumnCell with references to ColumnReplacement. The function may be used to easily create tables of expressions that depend on two input parameters. +Return type +String/Numeric + +Syntax +MULTIPLE.OPERATIONS(Formula cell; Row cell; Row replacement; Column cell; Column replacement) + +Parameters +CommentType +Formula cellReference +Row cellReference +Row replacementReference +Column cell (optional)Reference +Column replacement (optional)Reference + + + + + +MATCH +Finds a search value in a search region, and returns its position (starting from 1). Match type can be either -1, 0 or 1 and determines how is searched for the value. If match type is 0, the index of the first value that equals search value is returned. If match type is 1 (or omitted), the index of the first value that is less than or equal to the search value is returned and the values in the search region must be sorted in ascending order. If match type is -1, the smallest value that is greater than or equal to the search value is found, and the search region needs to be sorted in descending order. +Return type +Whole number (like 1, 132, 2344) + +Syntax +MATCH(Search value; Search region; Match type) + +Parameters +CommentType +Search valueString/Numeric +Search regionReference/Array +Match type (optional)Whole number (like 1, 132, 2344) + + + + + +Financial + + +ACCRINT +The ACCRINT function returns accrued interest for a security which pays periodic interest. Allowed frequencies are 1 - annual, 2 - semi-annual or 4 - quarterly. Basis is the type of day counting you want to use: 0: US 30/360 (default), 1: real days, 2: real days/360, 3: real days/365 or 4: European 30/365. +Return type +A floating point value (like 1.3, 0.343, 253 ) + +Syntax +ACCRINT(issue; first interest; settlement; rate; par; frequency; basis) + +Parameters +CommentType +Issue dateDate +First interestDate +SettlementDate +Annual rate of securityA floating point value (like 1.3, 0.343, 253 ) +Par valueA floating point value (like 1.3, 0.343, 253 ) +Number of payments per yearA floating point value (like 1.3, 0.343, 253 ) +Day counting basisWhole number (like 1, 132, 2344) + +Examples +ACCRINT("2/28/2001"; "8/31/2001"; "5/1/2001"; 0.1; 1000; 2; 0) returns 16,944 + +Related Functions +ACCRINTM  + + + + + +ACCRINTM +The ACCRINTM function returns accrued interest for a security which pays interests at maturity date. Basis is the type of day counting you want to use: 0: US 30/360 (default), 1: real days, 2: real days/360, 3: real days/365 or 4: European 30/365. +Return type +A floating point value (like 1.3, 0.343, 253 ) + +Syntax +ACCRINTM(issue; settlement; rate; par; basis) + +Parameters +CommentType +Issue dateDate +SettlementDate +Annual rate of securityA floating point value (like 1.3, 0.343, 253 ) +Par valueA floating point value (like 1.3, 0.343, 253 ) +Day counting basisWhole number (like 1, 132, 2344) + +Examples +ACCRINTM("2/28/2001"; "8/31/2001"; 0.1; 100) returns 5.0278 + +Related Functions +ACCRINT  + + + + + +AMORDEGRC +The AMORDEGRC function calculates the amortization value for the French accounting system using degressive depreciation. +Return type +A floating point value (like 1.3, 0.343, 253 ) + +Syntax +AMORDEGRC( Cost; purchaseDate; firstPeriodEndDate; salvage; period; rate; basis) + +Parameters + +CommentType +CostA floating point value (like 1.3, 0.343, 253 ) +PvA floating point value (like 1.3, 0.343, 253 ) +FvA floating point value (like 1.3, 0.343, 253 ) + +Examples +AMORDEGRC( 1000; "2006-02-01"; "2006-12-31"; 10; 0; 0.1; 1 ) returns 228 + +Related Functions +AMORLINC  + + + + + +AMORLINC +The AMORLINC function calculates the amortization value for the French accounting system using linear depreciation. +Return type +A floating point value (like 1.3, 0.343, 253 ) + +Syntax +AMORLINC( Cost; purchaseDate; firstPeriodEndDate; salvage; period; rate; basis) + +Parameters +CommentType +PWhole number (like 1, 132, 2344) +PvA floating point value (like 1.3, 0.343, 253 ) +FvA floating point value (like 1.3, 0.343, 253 ) + +Examples +AMORLINC( 1000; "2004-02-01"; "2004-12-31"; 10; 0; 0.1; 1 ) returns 91.256831 + +Related Functions +AMORDEGRC  + + + + + +COMPOUND +The COMPOUND() function returns the value of an investment, given the principal, nominal interest rate, compounding frequency and time. For example: $5000 at 12% interest compounded quarterly for 5 years will become COMPOUND(5000;0.12;4;5) or $9030.56. +Return type +A floating point value (like 1.3, 0.343, 253 ) + +Syntax +COMPOUND(initial;interest;periods;periods_per_year) + +Parameters +CommentType +PrincipalA floating point value (like 1.3, 0.343, 253 ) +Interest rateA floating point value (like 1.3, 0.343, 253 ) +Periods per yearA floating point value (like 1.3, 0.343, 253 ) +YearsA floating point value (like 1.3, 0.343, 253 ) + +Examples +COMPOUND(5000;0.12;4;5) equals 9030.56 + + + + + +CONTINUOUS +The CONTINUOUS() function calculates the return on continuously compounded interest, given the principal, nominal rate and time in years. For example: $1000 earning 10% for 1 year becomes CONTINUOUS(1000;.1;1) or $1105.17. +Return type +A floating point value (like 1.3, 0.343, 253 ) + +Syntax +CONTINOUS(principal;interest;years) + +Parameters +CommentType +PrincipalA floating point value (like 1.3, 0.343, 253 ) +Interest rateA floating point value (like 1.3, 0.343, 253 ) +YearsA floating point value (like 1.3, 0.343, 253 ) + +Examples +CONTINUOUS(1000;0.1;1) equals 1105.17 + + + + + +COUPNUM +The COUPNUM function returns the number of coupons to be paid between the settlement and the maturity. Basis is the type of day counting you want to use: 0: US 30/360 (default), 1: real days, 2: real days/360, 3: real days/365 or 4: European 30/365. +Return type +A floating point value (like 1.3, 0.343, 253 ) + +Syntax +COUPNUM(settlement; maturity; frequency; basis) + +Parameters +CommentType +SettlementDate +MaturityDate +FrequencyA floating point value (like 1.3, 0.343, 253 ) +Day counting basisWhole number (like 1, 132, 2344) + +Examples +COUPNUM("2/28/2001"; "8/31/2001"; 2; 0) returns 1 + + + + + +CUMIPMT +Calculates the cumulative interest payment. +Return type +A floating point value (like 1.3, 0.343, 253 ) + +Syntax +CUMIPMT(rate, periods, value, start, end, type) + +Parameters +CommentType +rateA floating point value (like 1.3, 0.343, 253 ) +periodsA floating point value (like 1.3, 0.343, 253 ) +valueA floating point value (like 1.3, 0.343, 253 ) +startWhole number (like 1, 132, 2344) +endWhole number (like 1, 132, 2344) +typeWhole number (like 1, 132, 2344) + +Examples +CUMIPMT( 0.06/12; 5*12; 100000; 5; 12; 0 ) equals -3562,187023 + +Related Functions +IPMT  + + + + + +CUMPRINC +Calculates the cumulative principal payment. +Return type +A floating point value (like 1.3, 0.343, 253 ) + +Syntax +CUMPRINC(rate, periods, value, start, end, type) + +Parameters +CommentType +rateA floating point value (like 1.3, 0.343, 253 ) +periodsA floating point value (like 1.3, 0.343, 253 ) +valueA floating point value (like 1.3, 0.343, 253 ) +startWhole number (like 1, 132, 2344) +endWhole number (like 1, 132, 2344) +typeWhole number (like 1, 132, 2344) + +Examples +CUMPRINC( 0.06/12; 5*12; 100000; 5; 12; 0 ) equals -11904.054201 + +Related Functions +PPMT  + + + + + +DB +The DB() function will calculate the depreciation of an asset for a given period using the fixed-declining balance method. Month is optional, if omitted it is assumed to be 12. +Return type +A floating point value (like 1.3, 0.343, 253 ) + +Syntax +DB(cost; salvage value; life; period [;month]) + +Parameters +CommentType +CostA floating point value (like 1.3, 0.343, 253 ) +SalvageA floating point value (like 1.3, 0.343, 253 ) +LifeA floating point value (like 1.3, 0.343, 253 ) +PeriodA floating point value (like 1.3, 0.343, 253 ) +MonthA floating point value (like 1.3, 0.343, 253 ) + +Examples +DB(8000;400;6;3) equals 1158.40 + +Related Functions +DDB  + + + + + +DDB +The DDB() function calculates the depreciation of an asset for a given period using the arithmetic-declining method. The factor is optional, if omitted it is assumed to be 2. All the parameter must be greater than zero. +Return type +A floating point value (like 1.3, 0.343, 253 ) + +Syntax +DDB(cost; salvage value; life; period [;factor]) + +Parameters +CommentType +CostA floating point value (like 1.3, 0.343, 253 ) +SalvageA floating point value (like 1.3, 0.343, 253 ) +LifeA floating point value (like 1.3, 0.343, 253 ) +PeriodA floating point value (like 1.3, 0.343, 253 ) +FactorA floating point value (like 1.3, 0.343, 253 ) + +Examples +DDB(75000;1;60;12;2) returns 1721.81 + +Related Functions +SLN  + + + + + +DISC +The DISC function returns the discount rate for a security. Basis is the type of day counting you want to use: 0: US 30/360 (default), 1: real days, 2: real days/360, 3: real days/365 or 4: European 30/365. +Return type +A floating point value (like 1.3, 0.343, 253 ) + +Syntax +DISC(settlement; maturity; par; redemption [; basis ] ) + +Parameters +CommentType +SettlementDate +MaturityDate +Price per $100 face valueA floating point value (like 1.3, 0.343, 253 ) +RedemptionA floating point value (like 1.3, 0.343, 253 ) +Day counting basisWhole number (like 1, 132, 2344) + +Examples +DISC("2/28/2001"; "8/31/2001"; 12; 14) returns 0.2841 + +Related Functions +YEARFRAC  + + + + + +DOLLARDE +The DOLLARDE() function returns a dollar price expressed as a decimal number. The fractional dollar is the number to be converted and the fraction is the denominator of the fraction +Return type +A floating point value (like 1.3, 0.343, 253 ) + +Syntax +DOLLARDE(fractional dollar; fraction) + +Parameters +CommentType +Fractional DollarA floating point value (like 1.3, 0.343, 253 ) +FractionWhole number (like 1, 132, 2344) + +Examples +DOLLARDE(1.02; 16) - stands for 1 and 2/16 - returns 1.125 + +Related Functions +DOLLARFR  + + + + + +DOLLARFR +The DOLLARFR() function returns a dollar price expressed as a fraction. The decimal dollar is the number to be converted and the fraction is the denominator of the fraction +Return type +A floating point value (like 1.3, 0.343, 253 ) + +Syntax +DOLLARFR(fractional dollar; fraction) + +Parameters +CommentType +Decimal DollarA floating point value (like 1.3, 0.343, 253 ) +FractionWhole number (like 1, 132, 2344) + +Examples +DOLLARFR(1.125; 16) returns 1.02. (1 + 2/16) + +Related Functions +DOLLARDE  + + + + + +DURATION +Returns the number of periods needed for an investment to retain a desired value. +Return type +A floating point value (like 1.3, 0.343, 253 ) + +Syntax +DURATION(rate; pv; fv) + +Parameters +CommentType +RateA floating point value (like 1.3, 0.343, 253 ) +Present value (PV)A floating point value (like 1.3, 0.343, 253 ) +Future value (FV)A floating point value (like 1.3, 0.343, 253 ) + +Examples +DURATION(0.1; 1000; 2000) returns 7.27 + +Related Functions +FV  + + + + + +DURATION_ADD +Returns the Macauley duration of a fixed interest security in years. +Return type +A floating point value (like 1.3, 0.343, 253 ) + +Syntax +DURATION_ADD(Settlement; Maturity; Coupon; Yield; Frequency; Basis) + +Parameters +CommentType +SettlementDate +MaturityDate +CouponA floating point value (like 1.3, 0.343, 253 ) +YieldA floating point value (like 1.3, 0.343, 253 ) +FrequencyA floating point value (like 1.3, 0.343, 253 ) +BasisInteger + +Examples +DURATION_ADD( "1998-01-01"; "2006-01-01"; 0.08; 0.09; 2; 1 ) returns 5.9937749555 + +Related Functions +MDURATION  + + + + + +EFFECT +The EFFECT() function calculates the effective yield for a nominal interest rate (annual rate or APR). For example: 8% interest compounded monthly provides an effective yield of EFFECT(.08;12) or 8.3%. +Return type +A floating point value (like 1.3, 0.343, 253 ) + +Syntax +EFFECT(nominal;periods) + +Parameters +CommentType +Nominal interest rateA floating point value (like 1.3, 0.343, 253 ) +PeriodsA floating point value (like 1.3, 0.343, 253 ) + +Examples +EFFECT(0.08;12) equals 0.083 + +Related Functions +EFFECTIVE  + + + + + +EFFECTIVE +The EFFECTIVE() function calculates the effective yield for a nominal interest rate (annual rate or APR). It is the same as the EFFECT function. +Return type +A floating point value (like 1.3, 0.343, 253 ) + +Syntax +EFFECTIVE(nominal;periods) + +Parameters +CommentType +Nominal interest rateA floating point value (like 1.3, 0.343, 253 ) +PeriodsA floating point value (like 1.3, 0.343, 253 ) + +Related Functions +EFFECT  + + + + + +EURO +The EURO() function converts one Euro to a given national currency in the European monetary union. Currency is one of the following: ATS (Austria), BEF (Belgium), DEM (Germany), ESP (Spain), EUR (Euro), FIM (Finland), FRF (France), GRD (Greece), IEP (Ireland), ITL (Italy), LUF (Luxembourg), NLG (Netherlands), or PTE (Portugal). +Return type +A floating point value (like 1.3, 0.343, 253 ) + +Syntax +EURO(currency) + +Parameters +CommentType +CurrencyText + +Examples +EURO("DEM") equals 1.95583 + +Related Functions +EUROCONVERT  + + + + + +EUROCONVERT +The EUROCONVERT() function converts a number from one national currency to another currency in the European monetary union by using EURO an intermediary. Currency is one of the following: ATS (Austria), BEF (Belgium), DEM (Germany), ESP (Spain), EUR (Euro), FIM (Finland), FRF (France), GRD (Greece), IEP (Ireland), ITL (Italy), LUF (Luxembourg), NLG (Netherlands), or PTE (Portugal). +Return type +A floating point value (like 1.3, 0.343, 253 ) + +Syntax +EUROCONVERT(number; source currency; target currency) + +Parameters +CommentType +NumberA floating point value (like 1.3, 0.343, 253 ) +Source currencyText +Target currencyText + +Examples +EUROCONVERT(1; "EUR"; "DEM") equals 1.95583 + +Related Functions +EURO  + + + + + +FV +The FV() function returns the future value of an investment, given the yield and the time elapsed. If you have $1000 in a bank account earning 8% interest, after two years you will have FV(1000;0.08;2) or $1166.40. +Return type +A floating point value (like 1.3, 0.343, 253 ) + +Syntax +FV(present value;yield;periods) + +Parameters +CommentType +Present valueA floating point value (like 1.3, 0.343, 253 ) +RateA floating point value (like 1.3, 0.343, 253 ) +PeriodsA floating point value (like 1.3, 0.343, 253 ) + +Examples +FV(1000;0.08;2) equals 1166.40 + +Related Functions +PV  + + + + + +FV_ANNUITY +The FV_ANNUITY() function returns the future value of a stream of payments given the amount of the payment, the interest rate and the number of periods. For example: If you receive $500 per year for 20 years, and invest it at 8%, the total after 20 years will be FV_annuity(500;0.08;20) or $22,880.98. This function assumes that payments are made at the end of each period. +Return type +A floating point value (like 1.3, 0.343, 253 ) + +Syntax +FV_ANNUITY(amount;interest;periods) + +Parameters +CommentType +Payment per periodA floating point value (like 1.3, 0.343, 253 ) +Interest rateA floating point value (like 1.3, 0.343, 253 ) +PeriodsA floating point value (like 1.3, 0.343, 253 ) + +Examples +FV_ANNUITY(1000;0.05;5) equals 5525.63 + + + + + +INTRATE +The INTRATE function returns the interest rate for a fully invested security. Basis is the type of day counting you want to use: 0: US 30/360 (default), 1: real days, 2: real days/360, 3: real days/365 or 4: European 30/365. +Return type +A floating point value (like 1.3, 0.343, 253 ) + +Syntax +INTRATE(settlement; maturity; investment; redemption; basis) + +Parameters +CommentType +SettlementDate +MaturityDate +InvestmentA floating point value (like 1.3, 0.343, 253 ) +RedemptionA floating point value (like 1.3, 0.343, 253 ) +Day counting basisWhole number (like 1, 132, 2344) + + +Examples +INTRATE("2/28/2001"; "8/31/2001"; 1000000; 2000000; 1) returns 1.98 + + + + + +IPMT +IPMT calculates the amount of a payment of an annuity going towards interest. +Rate is the periodic interest rate. +Period is the amortizement period. 1 for the first and NPER for the last period. +NPER is the total number of periods during which annuity is paid. +PV is the present value in the sequence of payments. +FV (optional) is the desired (future) value. default: 0. +Type (optional) defines the due date. 1 for payment at the beginning of a period and 0 (default) for payment at the end of a period. +The example shows the interest to pay in the last year of a three year loan. The interest rate is 10 percent. +Return type +A floating point value (like 1.3, 0.343, 253 ) + +Syntax +IPMT(Rate; Period; NPer; PV; FV; Type) + +Parameters +CommentType +RateA floating point value (like 1.3, 0.343, 253 ) +PeriodA floating point value (like 1.3, 0.343, 253 ) +Number of periodsA floating point value (like 1.3, 0.343, 253 ) +Present valuesA floating point value (like 1.3, 0.343, 253 ) +Future value (optional)A floating point value (like 1.3, 0.343, 253 ) +Type (optional)IntType + +Examples +IPMT(0.1;3;3;8000) equals -292.45 + +Related Functions +PPMT  + + + + + +IRR +The IRR function calculates the internal rate of return for a series of cash flows. +Return type +A floating point value (like 1.3, 0.343, 253 ) + +Syntax +IRR( Values[; Guess = 0.1 ] ) + +Parameters +CommentType +ValuesA floating point value (like 1.3, 0.343, 253 ) +GuessA floating point value (like 1.3, 0.343, 253 ) + +Related Functions +XIRR  + + + + + +ISPMT +Calculates the interest paid on a given period of an investment. +Rate is the periodic interest rate. +Period is the amortizement period. 1 for the first and NPer for the last period. +NPer is the total number of periods during which annuity is paid. +PV is the present value in the sequence of payments. +Return type +A floating point value (like 1.3, 0.343, 253 ) + +Syntax +ISPMT(Rate; Period; NPer; PV) + +Parameters +CommentType +RateA floating point value (like 1.3, 0.343, 253 ) +PeriodIntType +Number of periodsIntType +Present values (PV)A floating point value (like 1.3, 0.343, 253 ) + +Examples +ISPMT(0.1; 1; 3; 8000000) equals -533333 + +Related Functions +PV  + + + + + +LEVEL_COUPON +The LEVEL_COUPON() function calculates the value of a level-coupon bond. For example: if the interest rate is 10%, a $1000 bond with semi-annual coupons at a rate of 13% that matures in 4 years is worth LEVEL_COUPON(1000;.13;2;4;.1) or $1096.95. +Return type +A floating point value (like 1.3, 0.343, 253 ) + +Syntax +LEVEL_COUPON(face value;coupon rate;coupons per year;years;market rate) + +Parameters +CommentType +Face valueA floating point value (like 1.3, 0.343, 253 ) +Coupon rateA floating point value (like 1.3, 0.343, 253 ) +Coupons per yearA floating point value (like 1.3, 0.343, 253 ) +YearsA floating point value (like 1.3, 0.343, 253 ) +Market interest rateA floating point value (like 1.3, 0.343, 253 ) + +Examples +LEVEL_COUPON(1000;.13;2;4;.1) equals 1096.95 + + + + + +MDURATION +The MDURATION() function will calculate the modified Macauley duration of a fixed interest security in years. +Return type +A floating point value (like 1.3, 0.343, 253 ) + +Syntax +MDURATION( Settlement; Maturity; Coupon; Yield; Frequency; [ Basis=0 ]) + +Parameters +CommentType +SettlementA floating point value (like 1.3, 0.343, 253 ) +MaturityA floating point value (like 1.3, 0.343, 253 ) +CouponA floating point value (like 1.3, 0.343, 253 ) +YieldA floating point value (like 1.3, 0.343, 253 ) +FrequencyA floating point value (like 1.3, 0.343, 253 ) +BasisInteger + +Examples +MDURATION("2004-02-01"; "2004-05-31"; 0.08; 0.09; 2; 0) returns 0.316321106 + +Related Functions +DURATION  + + + + + +MIRR +The MIRR() function will calculate the modified internal rate of return (IRR) of a series of periodic investments. +Return type +A floating point value (like 1.3, 0.343, 253 ) + +Syntax +MIRR(values; investment; reinvestment) + +Parameters +CommentType +ValuesA floating point value (like 1.3, 0.343, 253 ) +InvestmentA floating point value (like 1.3, 0.343, 253 ) +ReinvestmentA floating point value (like 1.3, 0.343, 253 ) + +Examples +MIRR({100;200;-50;300;-200}, 5%, 6%) equals 34.2823387842% + +Related Functions +IRR  + + + + + +NOMINAL +The NOMINAL() function calculates the nominal (stated) interest rate for an effective (annualized) interest rate compounded at given intervals. For example: to earn 8% on an account compounded monthly, you need a return of NOMINAL(.08;12) or 7.72%. +Return type +A floating point value (like 1.3, 0.343, 253 ) + +Syntax +NOMINAL(effective;periods) + +Parameters +CommentType +Effective interest rateA floating point value (like 1.3, 0.343, 253 ) +PeriodsA floating point value (like 1.3, 0.343, 253 ) + +Examples +NOMINAL(0.08;12) equals 0.0772 + +Related Functions +EFFECT  + + + + + +NPER +Returns the number of periods of an investment. +Return type +A floating point value (like 1.3, 0.343, 253 ) + +Syntax +NPER(rate;payment;pv;fv;type) + +Parameters +CommentType +RateA floating point value (like 1.3, 0.343, 253 ) +PaymentA floating point value (like 1.3, 0.343, 253 ) +Present value (PV)A floating point value (like 1.3, 0.343, 253 ) +Future value (FV - optional)A floating point value (like 1.3, 0.343, 253 ) +Type (optional)IntType + +Examples +NPER(0.1; -100; 1000) equals 11 + +Related Functions +FV  + + + + + +NPV +The net present value (NPV) for a series of periodic cash flows. +Computes the net present value for a series of periodic cash flows with the + discount rate Rate. Values should be positive if they are received as income, and + negative if the amounts are expenditure. +Return type +A floating point value (like 1.3, 0.343, 253 ) + +Syntax +NPV(Rate; Values) + +Parameters +CommentType +RateA floating point value (like 1.3, 0.343, 253 ) +Values (array)A floating point value (like 1.3, 0.343, 253 ) + +Examples +NPV(100%;4;5;7) = 4.125 + +Related Functions +FV  + + + + + +ODDLPRICE +The ODDLPRICE function calculates the value of the security per 100 currency units of face value. The security has an irregular last interest date. +Return type +A floating point value (like 1.3, 0.343, 253 ) + +Syntax +ODDLPRICE( Settlement; Maturity; Last; Rate; AnnualYield; Redemption; Frequency [; Basis = 0 ] ) + +Parameters +CommentType +SettlementDate +MaturityDate +LastDate +RateA floating point value (like 1.3, 0.343, 253 ) +AnnualYieldA floating point value (like 1.3, 0.343, 253 ) +RedemptionA floating point value (like 1.3, 0.343, 253 ) +FrequencyA floating point value (like 1.3, 0.343, 253 ) +BasisWhole number (like 1, 132, 2344) + +Examples +ODDLPRICE(DATE(1990;6;1);DATE(1995;12;31);DATE(1990;1;1);3%;5%;100;2) returns 90.991042345 + + + + + +ODDLYIELD +The ODDLYIELD function calculates the yield of the security which has an irregular last interest date. +Return type +A floating point value (like 1.3, 0.343, 253 ) + +Syntax +ODDLYIELD( Settlement; Maturity; Last; Rate; Price; Redemption; Frequency [; Basis = 0 ] ) + +Parameters +CommentType +SettlementDate +MaturityDate +LastDate +RateA floating point value (like 1.3, 0.343, 253 ) +PriceA floating point value (like 1.3, 0.343, 253 ) +RedemptionA floating point value (like 1.3, 0.343, 253 ) +FrequencyA floating point value (like 1.3, 0.343, 253 ) +BasisWhole number (like 1, 132, 2344) + +Examples +ODDLYIELD(DATE(1990;6;1);DATE(1995;12;31);DATE(1990;1;1);3%;91;100;2) returns 4.997775351 + +Related Functions +ODDLPRICE  + + + + + +PMT +PMT returns the amount of payment for a loan based on a constant interest rate and constant payments (each payment is equal amount). +Return type +A floating point value (like 1.3, 0.343, 253 ) + +Syntax +PMT(rate; nper ; pv [; fv = 0 [; type = 0 ]] ) + +Parameters +CommentType +RateA floating point value (like 1.3, 0.343, 253 ) +Number of periods (NPer)A floating point value (like 1.3, 0.343, 253 ) +Present value (PV)A floating point value (like 1.3, 0.343, 253 ) +Future value (FV - optional)A floating point value (like 1.3, 0.343, 253 ) +Type (optional)IntType + +Examples +PMT(0.1; 4; 10000) equals -3154.71 + +Related Functions +NPER  + + + + + +PPMT +PPMT calculates the amount of a payment of an annuity going towards principal. +Rate is the periodic interest rate. +Period is the amortizement period. 1 for the first and NPER for the last period. +NPER is the total number of periods during which annuity is paid. +PV is the present value in the sequence of payments. +FV (optional) is the desired (future) value. default: 0. +Type (optional) defines the due date. 1 for payment at the beginning of a period and 0 (default) for payment at the end of a period. +Return type +A floating point value (like 1.3, 0.343, 253 ) + +Syntax +PPMT(Rate; Period; NPer; PV [; FV = 9 [; Type = 0 ]] ) + +Parameters +CommentType +RateA floating point value (like 1.3, 0.343, 253 ) +PeriodA floating point value (like 1.3, 0.343, 253 ) +Number of periodsA floating point value (like 1.3, 0.343, 253 ) +Present valueA floating point value (like 1.3, 0.343, 253 ) +Future value (optional)A floating point value (like 1.3, 0.343, 253 ) +Type (optional)IntType + +Examples +PPMT(0.0875;1;36;5000;8000;1) equals -18.48 + +Related Functions +IPMT  + + + + + +PRICEMAT +PRICEMAT Calculate the price per 100 currency units of face value of the security that pays interest on the maturity date. +Basis Calculation method + 0 US method, 12 months, each month with 30 days + 1 Actual number of days in year, actual number of days in months + 2 360 days in a year, actual number of days in months + 4 365 days in a year, actual number of days in months + 5 European method, 12 months, each month has 30 days +Return type +A floating point value (like 1.3, 0.343, 253 ) + +Syntax +PRICEMAT(settlement; maturity; issue; rate; yield [; basis = 0 ] ) + +Parameters +CommentType +SettlementDate +MaturityDate +IssueDate +Discount rateA floating point value (like 1.3, 0.343, 253 ) +YieldA floating point value (like 1.3, 0.343, 253 ) +BasisWhole number (like 1, 132, 2344) + +Examples +PRICEMAT(DATE(1990;6;1);DATE(1995;12;31);DATE(1990;1;1);6%;5%) returns 103.819218241 + + + + + +PV +The PV() function returns the present value of an investment -- the value today of a sum of money in the future, given the rate of interest or inflation. For example if you need $1166.40 for your new computer and you want to buy it in two years while earning 8% interest, you need to start with PV(1166.4;0.08;2) or $1000. +Return type +A floating point value (like 1.3, 0.343, 253 ) + +Syntax +PV(future value;rate;periods) + +Parameters +CommentType +Future valueA floating point value (like 1.3, 0.343, 253 ) +Interest rateA floating point value (like 1.3, 0.343, 253 ) +PeriodsA floating point value (like 1.3, 0.343, 253 ) + +Examples +PV(1166.4;0.08;2) equals 1000 + + + + + +PV_ANNUITY +The PV_ANNUITY() function returns the present value of an annuity or stream of payments. For example: a "million dollar" lottery ticket that pays $50,000 a year for 20 years, with an interest rate of 5%, is actually worth PV_ANNUITY(50000;0.05;20) or $623,111. This function assumes that payments are made at the end of each period. +Return type +A floating point value (like 1.3, 0.343, 253 ) + +Syntax +PV_ANNUITY(amount;interest;periods) + +Parameters +CommentType +Payment per periodA floating point value (like 1.3, 0.343, 253 ) +Interest rateA floating point value (like 1.3, 0.343, 253 ) +PeriodsA floating point value (like 1.3, 0.343, 253 ) + +Examples +PV_ANNUITY(1000;0.05;5) equals 4329.48 + + + + + +RECEIVED +The RECEIVED function returns the amount received at the maturity date for a invested security. Basis is the type of day counting you want to use: 0: US 30/360 (default), 1: real days, 2: real days/360, 3: real days/365 or 4: European 30/365. The settlement date must be before maturity date. +Return type +A floating point value (like 1.3, 0.343, 253 ) + +Syntax +RECEIVED(settlement; maturity; investment; discount; basis) + +Parameters +CommentType +SettlementDate +MaturityDate +InvestmentA floating point value (like 1.3, 0.343, 253 ) +Discount rateA floating point value (like 1.3, 0.343, 253 ) +BasisWhole number (like 1, 132, 2344) + +Examples +RECEIVED("2/28/2001"; "8/31/2001"; 1000; 0.05; 0) returns 1,025.787 + + + + + +RRI +The RRI function calculates the interest rate resulting from the profit (return) of an investment. +Return type +A floating point value (like 1.3, 0.343, 253 ) + +Syntax +RRI( P; Pv; Fv) + +Parameters +CommentType +PWhole number (like 1, 132, 2344) +PvA floating point value (like 1.3, 0.343, 253 ) +FvA floating point value (like 1.3, 0.343, 253 ) + +Examples +RRI(1;100;200) returns 1 + +Related Functions +FV  + + + + + +SLN +The SLN() function will determine the straight line depreciation of an asset for a single period. Cost is the amount you paid for the asset. Salvage is the value of the asset at the end of the period. Life is the number of periods over which the asset is depreciated. SLN divides the cost evenly over the life of an asset. +Return type +A floating point value (like 1.3, 0.343, 253 ) + +Syntax +SLN(cost; salvage value; life) + +Parameters +CommentType +CostA floating point value (like 1.3, 0.343, 253 ) +SalvageA floating point value (like 1.3, 0.343, 253 ) +LifeA floating point value (like 1.3, 0.343, 253 ) + +Examples +SLN(10000;700;10) equals 930 + + +Related Functions +SYD  + + + + + +SYD +The SYD() function will calculate the sum-of-years digits depreciation for an asset based on its cost, salvage value, anticipated life, and a particular period. This method accelerates the rate of the depreciation, so that more depreciation expense occurs in earlier periods than in later ones. The depreciable cost is the actual cost minus the salvage value. The useful life is the number of periods (typically years) over which the asset is depreciated. +Return type +A floating point value (like 1.3, 0.343, 253 ) + +Syntax +SYD(cost; salvage value; life; period) + +Parameters +CommentType +CostA floating point value (like 1.3, 0.343, 253 ) +SalvageA floating point value (like 1.3, 0.343, 253 ) +LifeA floating point value (like 1.3, 0.343, 253 ) +PeriodA floating point value (like 1.3, 0.343, 253 ) + +Examples +SYD(5000; 200; 5; 2) equals 1280 + +Related Functions +SLN  + + + + + +TBILLEQ +The TBILLEQ functions returns the bond equivalent for a treasury bill. The maturity date must be after the settlement date but within 365 days. +Return type +A floating point value (like 1.3, 0.343, 253 ) + +Syntax +TBILLEQ(settlement; maturity; discount) + +Parameters +CommentType +SettlementDate +MaturityDate +Discount rateA floating point value (like 1.3, 0.343, 253 ) + +Examples +TBILLEQ("2/28/2001"; "8/31/2001"; 0.1) returns 0.1068 + +Related Functions +TBILLPRICE  + + + + + +TBILLPRICE +The TBILLPRICE functions returns the price per $100 value for a treasury bill. The maturity date must be after the settlement date but within 365 days. The discount rate must be positive. +Return type +A floating point value (like 1.3, 0.343, 253 ) + +Syntax +TBILLPRICE(settlement; maturity; discount) + +Parameters +CommentType +SettlementDate +MaturityDate +Discount rateA floating point value (like 1.3, 0.343, 253 ) + +Examples +TBILLPRICE("2/28/2001"; "8/31/2001"; 0.05) returns 97.4444 + +Related Functions +TBILLEQ  + + + + + +TBILLYIELD +The TBILLYIELD functions returns the yield for a treasury bill. The maturity date must be after the settlement date but within 365 days. The price must be positive. +Return type +A floating point value (like 1.3, 0.343, 253 ) + +Syntax +TBILLYIELD(settlement; maturity; price) + +Parameters +CommentType +SettlementDate +MaturityDate +Price per $100 face valueA floating point value (like 1.3, 0.343, 253 ) + +Examples +TBILLYIELD("2/28/2001"; "8/31/2001"; 600) returns -1.63 + +Related Functions +TBILLEQ  + + + + + +VDB +VDB calculates the depreciation allowance of an asset with an initial value, an expected useful life, and a final value of salvage for a period specified, using the variable-rate declining balance method. +Return type +A floating point value (like 1.3, 0.343, 253 ) + +Syntax +VDB(cost; salvage; life; start-period; end-period; [; depreciation-factor = 2 [; switch = false ]] ) + +Parameters +CommentType +SettlementDate +MaturityDate +PriceA floating point value (like 1.3, 0.343, 253 ) +RedemptionA floating point value (like 1.3, 0.343, 253 ) +Basisint + +Examples +VDB(10000;600;10;0;0.875;1.5) returns 1312.5 + + + + + +XIRR +The XIRR function calculates the internal rate of return for a non-periodic series of cash flows. +Return type +A floating point value (like 1.3, 0.343, 253 ) + +Syntax +XIRR( Values; Dates[; Guess = 0.1 ] ) + +Parameters +CommentType +ValuesA floating point value (like 1.3, 0.343, 253 ) +DatesDate +GuessA floating point value (like 1.3, 0.343, 253 ) + +Examples +XIRR(B1:B4;C1:C4) Suppose B1:B4 contains -20000, 4000, 12000, 8000 while C1:C4 contains "=DATE(2000;1;1)", "=DATE(2000;6;1)", "=DATE(2000;12;30)", "=DATE(2001;3;1)" returns 0.2115964 + +Related Functions +IRR  + + + + + +XNPV +The XNPV function calculates the net present value of a series of cash flows. +Return type +A floating point value (like 1.3, 0.343, 253 ) + +Syntax +XNPV( Rate; Values; Dates ) + +Parameters +CommentType +RateA floating point value (like 1.3, 0.343, 253 ) +ValuesA floating point value (like 1.3, 0.343, 253 ) +DatesDate + +Examples +XNPV(5%;B1:B4;C1:C4) suppose B1:B4 contains -20000, 4000, 12000, 8000 while C1:C4 contains "=DATE(2000;1;1)", "=DATE(2000;6;1)", "=DATE(2000;12;30)", "=DATE(2001;3;1)" returns 2907.83187 + +Related Functions +NPV  + + + + + +YIELDDISC +YIELDDISC calculates the yield of a discounted security per 100 currency units of face value. +Return type +A floating point value (like 1.3, 0.343, 253 ) + +Syntax +YIELDDISC(settlement; maturity; price, redemp, basis) + +Parameters +CommentType +SettlementDate +MaturityDate +PriceA floating point value (like 1.3, 0.343, 253 ) +RedemptionA floating point value (like 1.3, 0.343, 253 ) +Basisint + +Examples +YIELDDISC(DATE(1990;6;1);DATE(1990;12;31);941.66667;1000) returns 0.106194684 + + + + + +YIELDMAT +The YIELDMAT function calculates the yield of the security that pays interest on the maturity date. +Return type +A floating point value (like 1.3, 0.343, 253 ) + +Syntax +YIELDMAT( Settlement; Maturity; Issue; Rate; Price; Basis ) + +Parameters +CommentType +SettlementDate +MaturityDate +IssueDate +Discount rateA floating point value (like 1.3, 0.343, 253 ) +PriceA floating point value (like 1.3, 0.343, 253 ) +BasisWhole number (like 1, 132, 2344) + +Examples +YIELDMAT(DATE(1990;6;1);DATE(1995;12;31);DATE(1990; 1; 1); 6%;103.819218241) returns 0.050000000 + + + + + +ZERO_COUPON +The ZERO_COUPON() function calculates the value of a zero-coupon (pure discount) bond. For example: if the interest rate is 10%, a $1000 bond that matures in 20 years is worth ZERO_COUPON(1000;.1;20) or $148.64. +Return type +A floating point value (like 1.3, 0.343, 253 ) + +Syntax +ZERO_COUPON(face value;rate;years) + +Parameters +CommentType +Face valueA floating point value (like 1.3, 0.343, 253 ) +Interest rateA floating point value (like 1.3, 0.343, 253 ) +YearsA floating point value (like 1.3, 0.343, 253 ) + +Examples +ZERO_COUPON(1000;.1;20) equals 148.64 + + + + + +Statistical + + +AVEDEV +The AVEDEV() function calculates the average of the absolute deviations of a data set from their mean. +Return type +A floating point value (like 1.3, 0.343, 253 ) + +Syntax +AVEDEV(value;value;...) + +Parameters +CommentType +Floating point valuesA range of floating point values (like 1.3, 0.343, 253 ) +Floating point valuesA range of floating point values (like 1.3, 0.343, 253 ) +Floating point valuesA range of floating point values (like 1.3, 0.343, 253 ) +Floating point valuesA range of floating point values (like 1.3, 0.343, 253 ) +Floating point valuesA range of floating point values (like 1.3, 0.343, 253 ) + +Examples +AVEDEV(11.4;17.3;21.3;25.9;40.1) returns 7.84 + + + + + +AVERAGE +The AVERAGE() function calculates the average of all the values given as parameters. You can calculate the average of a range AVERAGE(A1:B5) or a list of values like AVERAGE(12;5;12.5). +Return type +A floating point value (like 1.3, 0.343, 253 ) + +Syntax +AVERAGE(value;value;...) + +Parameters +CommentType +Floating point valuesA range of floating point values (like 1.3, 0.343, 253 ) +Floating point valuesA range of floating point values (like 1.3, 0.343, 253 ) +Floating point valuesA range of floating point values (like 1.3, 0.343, 253 ) +Floating point valuesA range of floating point values (like 1.3, 0.343, 253 ) +Floating point valuesA range of floating point values (like 1.3, 0.343, 253 ) + +Examples +AVERAGE(12;5;7) equals 8 + + + + + +AVERAGEA +The AVERAGEA() calculates the average of the given arguments. Numbers, text and logical values are included in the calculation too. If the cell contains text or the argument evaluates to FALSE, it is counted as value zero (0). If the argument evaluates to TRUE, it is counted as one (1). Note that empty cells are not counted. +Return type +A floating point value (like 1.3, 0.343, 253 ) + +Syntax +AVERAGEA(value;value;...) + +Parameters +CommentType +Floating point valuesA range of floating point values (like 1.3, 0.343, 253 ) +String valuesText + +Examples +AVERAGEA(11.4;17.3;"sometext";25.9;40.1) equals 18.94 + + + + + +BETADIST +The BETADIST() function returns the cumulative beta probability density function. +The third and fourth parameters are optional. They set the lower and upper bounds, otherwise defaulting to 0.0 and 1.0 respectively. +Return type +A floating point value (like 1.3, 0.343, 253 ) + +Syntax +BETADIST(number;alpha;beta;start;end;[cumulative=TRUE]) + +Parameters +CommentType +NumberA floating point value (like 1.3, 0.343, 253 ) +Alpha parameterA floating point value (like 1.3, 0.343, 253 ) +Beta parameterA floating point value (like 1.3, 0.343, 253 ) +StartA floating point value (like 1.3, 0.343, 253 ) +EndA floating point value (like 1.3, 0.343, 253 ) +CumulativeBool + +Examples +BETADIST(0.2859;0.2606;0.8105) equals 0.675444 + + + + + +BETAINV +The BETAINV() function returns the inverse of BETADIST(x;alpha;beta;a;b;TRUE()). +The start and end parameters are optional. They set the lower and upper bounds, otherwise defaulting to 0.0 and 1.0 respectively. +Return type +A floating point value (like 1.3, 0.343, 253 ) + +Syntax +BETAINV(number;alpha;beta [; start=0 [; end=1]]) + +Parameters +CommentType +NumberA floating point value (like 1.3, 0.343, 253 ) +Alpha parameterA floating point value (like 1.3, 0.343, 253 ) +Beta parameterA floating point value (like 1.3, 0.343, 253 ) +StartA floating point value (like 1.3, 0.343, 253 ) +EndA floating point value (like 1.3, 0.343, 253 ) + +Examples +BETADIST(BETAINV(0.1;3;4);3;4) equals 0.1 + + + + + +CHIDIST +The CHIDIST() function returns the probability value from the indicated Chi square that a hypothesis is confirmed. +CHIDIST compares the Chi square value to be given for a random sample that is calculated from the sum of (observed value-expected value)^2/expected value for all values with the theoretical Chi square distribution and determines from this the probability of error for the hypothesis to be tested. +Return type +A floating point value (like 1.3, 0.343, 253 ) + +Syntax +CHIDIST(number;degrees_freedom) + +Parameters +CommentType +NumberA floating point value (like 1.3, 0.343, 253 ) +Degrees of freedomWhole number (like 1, 132, 2344) + +Examples +CHIDIST(13.27;5) returns 0.021 + + + + + +COMBIN +The COMBIN() function calculates the count of possible combinations. The first parameter is the total count of elements. The second parameter is the count of elements to choose. Both parameters should be positive and the first parameter should not be less than the second. Otherwise the function returns an error. +Return type +Whole number (like 1, 132, 2344) + +Syntax +COMBIN(total;chosen) + +Parameters +CommentType +Total number of elementsWhole number (like 1, 132, 2344) +Number of elements to chooseWhole number (like 1, 132, 2344) + +Examples +COMBIN(12;5) returns 792 + + + + + +COMBINA +The COMBINA() function calculates the count of possible combinations. The first parameter is the total count of elements. The second parameter is the count of elements to choose. Both parameters should be positive and the first parameter should not be less than the second. Otherwise the function returns an error. +Return type +Whole number (like 1, 132, 2344) + +Syntax +COMBIN(total;chosen) + +Parameters +CommentType +Total number of elementsWhole number (like 1, 132, 2344) +Number of elements to chooseWhole number (like 1, 132, 2344) + +Examples +COMBIN(12;5) returns 792 + + + + + +CONFIDENCE +The CONFIDENCE() function returns the confidence interval for a population mean. +The alpha parameter must be between 0 and 1 (non-inclusive), stddev must be positive and size must be greater or equal to 1. +Return type +A floating point value (like 1.3, 0.343, 253 ) + +Syntax +CONFIDENCE(alpha;stddev;size) + +Parameters +CommentType +Level of the confidence intervalA floating point value (like 1.3, 0.343, 253 ) +Standard deviation for the total populationA floating point value (like 1.3, 0.343, 253 ) +Size of the total populationWhole number (like 1, 132, 2344) + +Examples +CONFIDENCE(0.05;1.5;100) equals 0.294059 + + + + + +CORREL +The CORREL() function calculates the correlation coefficient of two cell ranges. +Return type +A floating point value (like 1.3, 0.343, 253 ) + +Syntax +CORREL(range1; range2) + +Parameters +CommentType +Cell range of valuesDouble +Second cell range of valuesDouble + +Examples +CORREL(A1:A3; B1:B3) + +Related Functions +PEARSON  + + + + + +COVAR +The COVAR() function calculates the covariance of two cell ranges. +Return type +A floating point value (like 1.3, 0.343, 253 ) + +Syntax +COVAR(range1; range2) + +Parameters +CommentType +Cell range of valuesDouble +Second cell range of valuesDouble + +Examples +COVAR(A1:A3; B1:B3) + + + + + + +DEVSQ +The DEVSQ() function calculates the sum of squares of deviations. +Return type +A floating point value (like 1.3, 0.343, 253 ) + +Syntax +DEVSQ(value; value;...) + +Parameters +CommentType +Floating point valuesDouble +Floating point valuesDouble +Floating point valuesDouble +Floating point valuesDouble +Floating point valuesDouble + +Examples +DEVSQ(A1:A5) + + + + + +EXPONDIST +The EXPONDIST() function returns the exponential distribution. +The lambda parameter must be positive. +Cumulative = 0 calculates the density function; cumulative = 1 calculates the distribution. +Return type +A floating point value (like 1.3, 0.343, 253 ) + +Syntax +EXPONDIST(number;lambda;cumulative) + +Parameters +CommentType +NumberA floating point value (like 1.3, 0.343, 253 ) +Lambda parameterA floating point value (like 1.3, 0.343, 253 ) +0 = density, 1 = distributionWhole number (like 1, 132, 2344) + +Examples +EXPONDIST(3;0.5;0) equals 0.111565 + + + + + +FDIST +The FDIST() function returns the f-distribution. +Return type +A floating point value (like 1.3, 0.343, 253 ) + +Syntax +FDIST(number;degrees_freedom_1;degrees_freedom_2) + +Parameters +CommentType +NumberA floating point value (like 1.3, 0.343, 253 ) +Degrees of freedom 1Whole number (like 1, 132, 2344) +Degrees of freedom 2Whole number (like 1, 132, 2344) + +Examples +FDIST(0.8;8;12) yields 0.61 + + + + + +FINV +The FINV() function returns the unique non-negative number x such that FDIST(x;r1;r2) = p. +Return type +A floating point value (like 1.3, 0.343, 253 ) + +Syntax +FINV(number; r1; r2) + +Parameters +CommentType +NumberA floating point value (like 1.3, 0.343, 253 ) +Number r1Whole number (like 1, 132, 2344) +Number r2Whole number (like 1, 132, 2344) + +Examples +FDIST(FINV(0.1;3;4);3;4) equals 0.1 + + + + + +FISHER +The FISHER() function returns the Fisher transformation for x and creates a function close to a normal distribution. +Return type +A floating point value (like 1.3, 0.343, 253 ) + +Syntax +FISHER(number) + +Parameters +CommentType +NumberA floating point value (like 1.3, 0.343, 253 ) + +Examples +FISHER(0.2859) equals 0.294096 + + + + + +FISHERINV +The FISHERINV() function returns the inverse of the Fisher transformation for x and creates a function close to a normal distribution. +Return type +A floating point value (like 1.3, 0.343, 253 ) + +Syntax +FISHERINV(number) + +Parameters +CommentType +NumberA floating point value (like 1.3, 0.343, 253 ) + +Examples +FISHERINV(0.2859) equals 0.278357 + + + + + +FREQUENCY +Counts the number of values for each interval given by the border values in the second parameter. +The values in the second parameter determine the upper boundaries of the intervals. + The intervals include the upper boundaries. + The returned array is a column vector and has one more element than the second parameter; + the last element represents the number of all elements greater than the last value in second parameter. + If the second parameter is empty, all values in the first parameter are counted. +Return type +A floating point value (like 1.3, 0.343, 253 ) + +Syntax +FREQUENCY(Range data; Range bins) + +Parameters +CommentType +Floating point values, that should be counted.A range of floating point values (like 1.3, 0.343, 253 ) +Floating point values, representing the upper boundaries of the intervals.A range of floating point values (like 1.3, 0.343, 253 ) + + + + + +GAMMADIST +The GAMMADIST() function returns the gamma distribution. +If the last parameter (cumulated) is 0, it calculates the density function; if it's 1, the distribution is returned. +The first three parameters must be positive. +Return type +A floating point value (like 1.3, 0.343, 253 ) + +Syntax +GAMMADIST(number;alpha;beta;cumulated) + +Parameters +CommentType +NumberA floating point value (like 1.3, 0.343, 253 ) +Alpha parameterA floating point value (like 1.3, 0.343, 253 ) +Beta parameterA floating point value (like 1.3, 0.343, 253 ) +Cumulated flagWhole number (like 1, 132, 2344) + +Examples +GAMMADIST(0.758;0.1;0.35;1) equals 0.995450 + + + + + +GAMMAINV +The GAMMAINV() function returns the unique number x >= 0 such that GAMMAINV(x;alpha;beta;TRUE()) = p. +Return type +A floating point value (like 1.3, 0.343, 253 ) + +Syntax +GAMMAINV(number;alpha;beta) + +Parameters +CommentType +NumberA floating point value (like 1.3, 0.343, 253 ) +Alpha parameterA floating point value (like 1.3, 0.343, 253 ) +Beta parameterA floating point value (like 1.3, 0.343, 253 ) + +Examples +GAMMADIST(GAMMAINV(0.1;3;4);3;4) equals 0.1 + + + + + +GAUSS +The GAUSS() function returns the integral values for the standard normal cumulative distribution. +Return type +A floating point value (like 1.3, 0.343, 253 ) + +Syntax +GAUSS(value) + +Parameters +CommentType +The number for which the integral value of standard normal distribution is to be calculatedA floating point value (like 1.3, 0.343, 253 ) + +Examples +GAUSS(0.25) equals 0.098706 + + + + + +GEOMEAN +The GEOMEAN() function returns the geometric mean of the given arguments. This is equal to the Nth root of the product of the terms. +Return type +A floating point value (like 1.3, 0.343, 253 ) + +Syntax +GEOMEAN(value; value;...) + +Parameters +CommentType +Floating point valuesDouble +Floating point valuesDouble +Floating point valuesDouble +Floating point valuesDouble +Floating point valuesDouble + +Examples +GEOMEAN(A1:A5) + +Related Functions +HARMEAN  + + + + + +HARMEAN +The HARMEAN() function returns the harmonic mean of the N data points (N divided by the sum of the inverses of the data points). +Return type +A floating point value (like 1.3, 0.343, 253 ) + +Syntax +HARMEAN(value; value;...) + +Parameters +CommentType +Floating point valuesDouble +Floating point valuesDouble +Floating point valuesDouble +Floating point valuesDouble +Floating point valuesDouble + +Examples +HARMEAN(A1:A5) + +Related Functions +GEOMEAN  + + + + + +HYPGEOMDIST +The HYPGEOMDIST() function returns the hypergeometric distribution. +Return type +A floating point value (like 1.3, 0.343, 253 ) + +Syntax +HYPGEOMDIST(x; n; M; N) + +Parameters +CommentType +Number of success in the sampleWhole number (like 1, 132, 2344) +Number of trialsWhole number (like 1, 132, 2344) +Number of success overallWhole number (like 1, 132, 2344) +Population sizeWhole number (like 1, 132, 2344) + +Examples +HYPGEOMDIST(2; 5; 6; 20) returns 0.3522 + + + + + +INTERCEPT +The INTERCEPT() function calculates the interception of the linear regression line with the y axis. +Return type +A floating point value (like 1.3, 0.343, 253 ) + +Syntax +INTERCEPT(y;x) + +Parameters +CommentType +y values (array)A floating point value (like 1.3, 0.343, 253 ) +x values (array)A floating point value (like 1.3, 0.343, 253 ) + + + + + +KURT +The KURT() function calculates an unbiased estimate of the kurtosis of a data set. You have to provide at least 4 values, otherwise an error is returned. +Return type +A floating point value (like 1.3, 0.343, 253 ) + +Syntax +KURT(value; value;...) + +Parameters +CommentType +Floating point valuesDouble +Floating point valuesDouble +Floating point valuesDouble +Floating point valuesDouble +Floating point valuesDouble + +Examples +KURT(A1:A5) + +Related Functions +KURTP  + + + + + +KURTP +The KURTP() function calculates an population kurtosis of a data set. You have to provide at least 4 values, otherwise an error is returned. +Return type +A floating point value (like 1.3, 0.343, 253 ) + +Syntax +KURTP(value; value;...) + +Parameters +CommentType +Floating point valuesDouble +Floating point valuesDouble +Floating point valuesDouble +Floating point valuesDouble +Floating point valuesDouble + +Examples +KURTP(A1:A5) + +Related Functions +KURT  + + + + + +LARGE +The LARGE() function returns the k-th largest value from the data set. +Return type +A floating point value (like 1.3, 0.343, 253 ) + +Syntax +LARGE(range; k) + +Parameters +CommentType +Cell range of valuesDouble +Position (from the largest)Whole number (like 1, 132, 2344) + +Examples +A1: 3, A2: 1, A3: 5 => LARGE(A1:A3; 2) returns 3 + + + + + +LEGACYFDIST +The LEGACYFDIST() function returns the f-distribution. +Return type +A floating point value (like 1.3, 0.343, 253 ) + +Syntax +LEGACYFDIST(number;degrees_freedom_1;degrees_freedom_2) + +Parameters +CommentType +NumberA floating point value (like 1.3, 0.343, 253 ) +Degrees of freedom 1Whole number (like 1, 132, 2344) +Degrees of freedom 2Whole number (like 1, 132, 2344) + +Examples +LEGACYFDIST(0.8;8;12) yields 0.61 + + + + + +LOGINV +The LOGINV() function returns the inverse of the lognormal cumulative distribution. +Return type +A floating point value (like 1.3, 0.343, 253 ) + +Syntax +LOGINV(p; mean; stdev) + +Parameters +CommentType +ProbabilityA floating point value (like 1.3, 0.343, 253 ) +Mean value of the standard logarithmic distributionA floating point value (like 1.3, 0.343, 253 ) +Standard deviation of the standard logarithmic distributionA floating point value (like 1.3, 0.343, 253 ) + +Examples +LOGINV(0.1;0;1) equals 0.2776 + + + + + +LOGNORMDIST +The LOGNORMDIST() function returns the cumulative lognormal distribution. +Return type +A floating point value (like 1.3, 0.343, 253 ) + +Syntax +LOGNORMDIST(Number;MV;STD) + +Parameters +CommentType +Probability value for which the standard logarithmic distribution is to be calculatedA floating point value (like 1.3, 0.343, 253 ) +Mean value of the standard logarithmic distributionA floating point value (like 1.3, 0.343, 253 ) +Standard deviation of the standard logarithmic distributionA floating point value (like 1.3, 0.343, 253 ) + +Examples +LOGNORMDIST(0.1;0;1) equals 0.01 + + + + + +MEDIAN +The MEDIAN() function calculates the median of all the values given as parameters. You can calculate the median of a range like MEDIAN(A1:B5) or a list of values like MEDIAN(12; 5; 12.5). Blank cells will be considered as a zero, and cells with text will be ignored. +Return type +A floating point value (like 1.3, 0.343, 253 ) + +Syntax +MEDIAN(value;value;...) + +Parameters +CommentType +Floating point value or range of valuesA range of floating point values (like 1.3, 0.343, 253 ) +Floating point values or range of valuesA range of floating point values (like 1.3, 0.343, 253 ) +Floating point values or range of valuesA range of floating point values (like 1.3, 0.343, 253 ) +Floating point values or range of valuesA range of floating point values (like 1.3, 0.343, 253 ) +Floating point values or range of valuesA range of floating point values (like 1.3, 0.343, 253 ) + +Examples +MEDIAN(12; 5; 5.5) equals 5.5 + + + + + +MODE +The MODE() function returns the most frequently occurring value in the data set. +Return type +A floating point value (like 1.3, 0.343, 253 ) + +Syntax +MODE(number; number2; ...) + +Parameters +CommentType +FloatDouble +FloatDouble +FloatDouble +FloatDouble + +Examples +MODE(12; 14; 12; 15) returns 12 + + + + + +NEGBINOMDIST +The NEGBINOMDIST() function returns the negative binomial distribution. +Return type +A floating point value (like 1.3, 0.343, 253 ) + +Syntax +NEGBINOMDIST(failures; success; prob_of_success) + +Parameters +CommentType +Number of failuresWhole number (like 1, 132, 2344) + +Number of successful trialsWhole number (like 1, 132, 2344) +Probability of successDouble + +Examples +NEGBINOMDIST(2;5;0.55) returns 0.152872629 + + + + + +NORMDIST +The NORMDIST() function returns the normal cumulative distribution. +Number is the value of the distribution based on which the normal distribution is to be calculated. +MV is the linear middle of the distribution. +STD is the standard deviation of the distribution. +K = 0 calculates the density function; K = 1 calculates the distribution. +Return type +A floating point value (like 1.3, 0.343, 253 ) + +Syntax +NORMDIST(Number;MV;STD;K) + +Parameters +CommentType +NumberA floating point value (like 1.3, 0.343, 253 ) +Linear middle of the distributionA floating point value (like 1.3, 0.343, 253 ) +Standard deviation of the distributionA floating point value (like 1.3, 0.343, 253 ) +0 = density, 1 = distributionWhole number (like 1, 132, 2344) + +Examples +NORMDIST(0.859;0.6;0.258;0) equals 0.934236 + + + + + +NORMINV +The NORMINV() function returns the inverse of the normal cumulative distribution. The number must be between 0 and 1 (non-inclusive) and STD must be positive. +Return type +A floating point value (like 1.3, 0.343, 253 ) + +Syntax +NORMINV(number;MV;STD) + +Parameters +CommentType +Probability value for which the standard logarithmic distribution is to be calculatedA floating point value (like 1.3, 0.343, 253 ) +Middle value in the normal distributionA floating point value (like 1.3, 0.343, 253 ) +Standard deviation of the normal distributionA floating point value (like 1.3, 0.343, 253 ) + +Examples +NORMINV(0.9;63;5) equals 69.41 + + + + + +NORMSDIST +The NORMSDIST() function returns the standard normal distribution. +Return type +A floating point value (like 1.3, 0.343, 253 ) + +Syntax +NORMSDIST(Number) + +Parameters +CommentType +Value to which the standard normal distribution is calculatedA floating point value (like 1.3, 0.343, 253 ) + +Examples +NORMSDIST(1) equals 0.84 + + + + + +NORMSINV +The NORMSINV() function returns the inverse of the standard normal cumulative distribution. The number must be between 0 and 1 (non-inclusive). +Return type +A floating point value (like 1.3, 0.343, 253 ) + +Syntax +NORMSINV(Number) + +Parameters +CommentType +NumberA floating point value (like 1.3, 0.343, 253 ) + +Examples +NORMSINV(0.908789) returns 1.3333 + + + + + +PEARSON +The PEARSON() function calculates the correlation coefficient of two cell ranges. It is the same as the CORREL function. +Return type +A floating point value (like 1.3, 0.343, 253 ) + +Syntax +PEARSON(range1; range2) + +Parameters +CommentType +Cell range of valuesDouble +Second cell range of valuesDouble + +Examples +PEARSON(A1:A3; B1:B3) + +Related Functions +CORREL  + + + + + +PERMUT +The PERMUT() function returns the number of permutations. The first parameter is the number of elements, and the second parameter is the number of elements used in the permutation. +Return type +Whole number (like 1, 132, 2344) + +Syntax +PERMUT(total;permutated) + +Parameters +CommentType +Total number of elementsWhole number (like 1, 132, 2344) +Number of elements to permutateWhole number (like 1, 132, 2344) + +Examples +PERMUT(8;5) equals 6720 + + + + + +PERMUTATIONA +The PERMUTATIONA() function returns the number of ordered permutations when allowing repetition. The first parameter is the number of elements, and the second parameter is the number of elements to choose. Both parameters must be positive. +Return type +Whole number (like 1, 132, 2344) + +Syntax +PERMUTATIONA(total;chosen) + +Parameters +CommentType +Total number of elementsWhole number (like 1, 132, 2344) +Number of elements to chooseWhole number (like 1, 132, 2344) + +Examples +PERMUTATIONA(2,3) returns 8 + + + + + +PERCENTILE +The PERCENTILE() function returns the x-th sample percentile of data values in Data. A percentile returns the scale value for a data series which goes from the smallest (alpha=0) to the largest value (alpha=1) of a data series. For alpha = 25%, the percentile means the first quartile; alpha = 50% is the MEDIAN. Blank cells will be considered as a zero, and cells with text will be ignored. +Return type +A floating point value (like 1.3, 0.343, 253 ) + +Syntax +PERCENTILE(data;alpha) + +Parameters +CommentType +Range of valuesA range of floating point values (like 1.3, 0.343, 253 ) +The percentile value between 0 and 1, inclusive.A floating point value (like 1.3, 0.343, 253 ) + +Related Functions +MEDIAN  + + + + + +PHI +The PHI() function returns value of the distribution function for a standard normal distribution. +Return type +A floating point value (like 1.3, 0.343, 253 ) + +Syntax +PHI(value) + +Parameters +CommentType +The number for which the standard normal distribution is to be calculatedA floating point value (like 1.3, 0.343, 253 ) + +Examples +PHI(0.25) equals 0.386668 + + + + + +POISSON +The POISSON() function returns the Poisson distribution. +The lambda and number parameters must be positive. +Cumulative = 0 calculates the density function; cumulative = 1 calculates the distribution. +Return type +A floating point value (like 1.3, 0.343, 253 ) + +Syntax +POISSON(number;lambda;cumulative) + +Parameters +CommentType +NumberA floating point value (like 1.3, 0.343, 253 ) +Lambda parameter (the middle value)A floating point value (like 1.3, 0.343, 253 ) +0 = density, 1 = distributionWhole number (like 1, 132, 2344) + +Examples +POISSON(60;50;0) equals 0.020105 + + + + + +RANK +The RANK() function returns the rank of a number in a list of numbers. +Order specifies how to rank the numbers: +If 0 or omitted, Data is ranked in descending order. +If not 0, Data is ranked in ascending order. +Return type +A floating point value (like 1.3, 0.343, 253 ) + +Syntax +RSQ(Value; Data; Order) + +Parameters +CommentType +ValueA floating point value (like 1.3, 0.343, 253 ) +Data (array)A floating point value (like 1.3, 0.343, 253 ) +OrderA floating point value (like 1.3, 0.343, 253 ) + +Examples +RANK (2;{1;2;3}) equals 2 + + + + + +RSQ +The RSQ() function returns the square of the Pearson product moment correlation coefficient through data points in known_y's and known_x's. +If "arrayY" and "arrayX" are empty or have a different number of data points, then #N/A is returned. +Return type +A floating point value (like 1.3, 0.343, 253 ) + +Syntax +RSQ(known Y; known X) + +Parameters +CommentType +known Y (array)A floating point value (like 1.3, 0.343, 253 ) +known X (array)A floating point value (like 1.3, 0.343, 253 ) + + + + + +SKEW +The SKEW() function returns an estimate for skewness of a distribution +Return type +A floating point value (like 1.3, 0.343, 253 ) + +Syntax +SKEW(number; number2; ...) + +Parameters +CommentType +FloatDouble +FloatDouble +FloatDouble +FloatDouble + +Examples +SKEW(11.4; 17.3; 21.3; 25.9; 40.1) returns 0.9768 + +Related Functions +SKEWP  + + + + + +SKEWP +The SKEWP() function returns the population skewness of a distribution +Return type +A floating point value (like 1.3, 0.343, 253 ) + +Syntax +SKEWP(number; number2; ...) + +Parameters +CommentType +FloatDouble +FloatDouble +FloatDouble +FloatDouble + +Examples +SKEWP(11.4; 17.3; 21.3; 25.9; 40.1) returns 0.6552 + +Related Functions +SKEW  + + + + + +SLOPE +The SLOPE() function calculates the slope of the linear regression line. +Return type +A floating point value (like 1.3, 0.343, 253 ) + +Syntax +SLOPE(y;x) + +Parameters +CommentType +y values (array)A floating point value (like 1.3, 0.343, 253 ) +x values (array)A floating point value (like 1.3, 0.343, 253 ) + + + + + +SMALL +The SMALL() function returns the k-th smallest value from the data set. +Return type +A floating point value (like 1.3, 0.343, 253 ) + +Syntax +SMALL(range; k) + +Parameters +CommentType +Cell range of valuesDouble +Position (from the smallest)Whole number (like 1, 132, 2344) + +Examples +A1: 3, A2: 1, A3: 5 => SMALL(A1:A3; 1) returns 1 + + + + + +STANDARDIZE +The STANDARDIZE() function calculates a normalized value. +Return type +A floating point value (like 1.3, 0.343, 253 ) + +Syntax +STANDARDIZE(x; mean, stdev) + +Parameters +CommentType +Number to be normalizedDouble +Mean of the distributionDouble +Standard deviationDouble + +Examples +STANDARDIZE(4; 3; 7) returns 0.1429 + + + + + +STDEV +The STDEV() function returns the estimate standard deviation based on a sample. The standard deviation is a measure of how widely values are dispersed from the average value. +Return type +A floating point value (like 1.3, 0.343, 253 ) + +Syntax +STDEV(value;value;...) + +Parameters +CommentType +Floating point valuesA range of floating point values (like 1.3, 0.343, 253 ) +Floating point valuesA range of floating point values (like 1.3, 0.343, 253 ) +Floating point valuesA range of floating point values (like 1.3, 0.343, 253 ) +Floating point valuesA range of floating point values (like 1.3, 0.343, 253 ) +Floating point valuesA range of floating point values (like 1.3, 0.343, 253 ) + +Examples +STDEV(6;7;8) equals 1 + +Related Functions +STDEVP  + + + + + +STDEVA +The STDEVA() function returns the estimate standard deviation based on a sample. The standard deviation is a measure of how widely values are dispersed from the average value. If a referenced cell contains text or contains the boolean value FALSE, it is counted as 0. If the boolean value is TRUE it is counted as 1. +Return type +A floating point value (like 1.3, 0.343, 253 ) + +Syntax +STDEVA(value;value;...) + +Parameters +CommentType +Floating point valuesA range of floating point values (like 1.3, 0.343, 253 ) +Floating point valuesA range of floating point values (like 1.3, 0.343, 253 ) +Floating point valuesA range of floating point values (like 1.3, 0.343, 253 ) +Floating point valuesA range of floating point values (like 1.3, 0.343, 253 ) +Floating point valuesA range of floating point values (like 1.3, 0.343, 253 ) + +Examples +STDEVA(6; 7; A1; 8) equals 1, if A1 is empty + +Related Functions +STDEV  + + + + + +STDEVP +The STDEVP() function returns the standard deviation based on an entire population +Return type +A floating point value (like 1.3, 0.343, 253 ) + +Syntax +STDEVP(value;value;...) + +Parameters +CommentType +Floating point valuesA range of floating point values (like 1.3, 0.343, 253 ) +Floating point valuesA range of floating point values (like 1.3, 0.343, 253 ) +Floating point valuesA range of floating point values (like 1.3, 0.343, 253 ) +Floating point valuesA range of floating point values (like 1.3, 0.343, 253 ) +Floating point valuesA range of floating point values (like 1.3, 0.343, 253 ) + +Examples +STDEVP(6;7;8) equals 0.816497... + +Related Functions +STDEV  + + + + + +STDEVPA +The STDEVPA() function returns standard deviation based on an entire population. If a referenced cell contains text or contains the boolean value FALSE, it is counted as 0. If the boolean value is TRUE it is counted as 1. +Return type +A floating point value (like 1.3, 0.343, 253 ) + +Syntax +STDEVPA(value;value;...) + +Parameters +CommentType +Floating point valuesA range of floating point values (like 1.3, 0.343, 253 ) +Floating point valuesA range of floating point values (like 1.3, 0.343, 253 ) +Floating point valuesA range of floating point values (like 1.3, 0.343, 253 ) +Floating point valuesA range of floating point values (like 1.3, 0.343, 253 ) +Floating point valuesA range of floating point values (like 1.3, 0.343, 253 ) + +Examples +STDEVPA(6; 7; A1; 8) equals 0.816497..., if A1 is empty + +Related Functions +STDEV  + + + + + +STEYX +The STEYX() function calculates the standard error of the predicted y value for each x in the regression. +Return type +A floating point value (like 1.3, 0.343, 253 ) + +Syntax +SLOPE(y;x) + +Parameters +CommentType +y values (array)A floating point value (like 1.3, 0.343, 253 ) +x values (array)A floating point value (like 1.3, 0.343, 253 ) + + + + + +SUM2XMY +Return type + +A floating point value (like 1.3, 0.343, 253 ) + +Syntax +SLOPE(y;x) + +Parameters + + + + + + +SUMPRODUCT +The SUMPRODUCT() function (SUM(X*Y)) returns the sum of the product of these values. The number of values in the two arrays should be equal. Otherwise this function returns Err. +Return type +A floating point value (like 1.3, 0.343, 253 ) + +Syntax +SUMPRODUCT(array1;array2) + +Parameters +CommentType +Value (array)Double +Value (array)Double + +Examples +SUMPRODUCT(A1:A2;B1:B2) with A1=2, A2=5, B1=3 and B2=5, returns 31 + + + + + +SUMX2PY2 +The SUMX2PY2() function (SUM(X^2+Y^2)) returns the sum of the squares of these values. The number of values in the two arrays should be equal. Otherwise this function returns Err. +Return type +A floating point value (like 1.3, 0.343, 253 ) + +Syntax +SUMX2PY2(array1;array2) + +Parameters +CommentType +Value (array)Double +Value (array)Double + +Examples +SUMX2PY2(A1:A2;B1:B2) with A1=2, A2=5, B1=3 and B2=5, returns 63 + + + + + +SUMX2MY2 +The SUMX2MY2() function (SUM(X^2-Y^2)) returns the difference of the squares of these values. The number of values in the two arrays should be equal. Otherwise this function returns Err. +Return type +A floating point value (like 1.3, 0.343, 253 ) + +Syntax +SUMX2MY2(array1;array2) + +Parameters +CommentType +Value (array)Double +Value (array)Double + +Examples +SUMX2MY2(A1:A2;B1:B2) with A1=2, A2=5, B1=3 and B2=5, returns -5 + + + + + +TDIST +The TDIST() function returns the t-distribution. +Mode = 1 returns the one-tailed test, Mode = 2 returns the two-tailed test. +Return type +A floating point value (like 1.3, 0.343, 253 ) + +Syntax +TDIST(number;degrees_freedom;mode) + +Parameters +CommentType +NumberA floating point value (like 1.3, 0.343, 253 ) +Degrees of freedom for the t-distributionWhole number (like 1, 132, 2344) +Mode (1 or 2)Whole number (like 1, 132, 2344) + +Examples +TDIST(12;5;1) returns 0.000035 + + + + + +TREND +The TREND() function calculates a sequence of values based on a linear regression of known value pairs. +Constraints: COUNT(knownY) = COUNT(knownX). +Return type +A floating point value (like 1.3, 0.343, 253 ) + +Syntax +TREND(knownY[;knownX[;newX[;allowOffset = TRUE]]]) + +Parameters +CommentType +KnownYA floating point value (like 1.3, 0.343, 253 ) +KnownXA floating point value (like 1.3, 0.343, 253 ) +NumberSequence newXA floating point value (like 1.3, 0.343, 253 ) +allowOffsetBool + + + + + +TRIMMEAN +The TRIMMEAN() function calculates the mean of a data set's fraction. +Return type +A floating point value (like 1.3, 0.343, 253 ) + +Syntax +TRIMMEAN(dataSet; cutOffFraction) + +Parameters +CommentType +dataSetA floating point value (like 1.3, 0.343, 253 ) +cutOffFractionA floating point value (like 1.3, 0.343, 253 ) + + + + + +TTEST +The TTEST() function calculates the probability of a t-test. +Return type +A floating point value (like 1.3, 0.343, 253 ) + +Syntax +TTEST(x; y; type; mode) + +Parameters +CommentType +x (array)A floating point value (like 1.3, 0.343, 253 ) +y (array)A floating point value (like 1.3, 0.343, 253 ) +typeWhole number (like 1, 132, 2344) +modeWhole number (like 1, 132, 2344) + + + + + +VAR +The VAR() function calculates the estimates variance based on a sample. +Return type +A floating point value (like 1.3, 0.343, 253 ) + +Syntax +VAR(value;value;...) + +Parameters +CommentType +Floating point valuesA range of floating point values (like 1.3, 0.343, 253 ) +Floating point valuesA range of floating point values (like 1.3, 0.343, 253 ) +Floating point valuesA range of floating point values (like 1.3, 0.343, 253 ) +Floating point valuesA range of floating point values (like 1.3, 0.343, 253 ) +Floating point valuesA range of floating point values (like 1.3, 0.343, 253 ) + +Examples +VAR(12;5;7) equals 13 + +Related Functions +VARIANCE  + + + + + +VARA +The VARA() function calculates the variance based on a sample. +Return type +A floating point value (like 1.3, 0.343, 253 ) + +Syntax +VARA(value;value;...) + +Parameters +CommentType +Floating point valuesA range of floating point values (like 1.3, 0.343, 253 ) +Floating point valuesA range of floating point values (like 1.3, 0.343, 253 ) +Floating point valuesA range of floating point values (like 1.3, 0.343, 253 ) +Floating point valuesA range of floating point values (like 1.3, 0.343, 253 ) +Floating point valuesA range of floating point values (like 1.3, 0.343, 253 ) + +Examples +VARA(12;5;7) equals 13 + +Related Functions +VAR  + + + + + +VARIANCE +The VARIANCE() function calculates the estimates variance based on a sample. It's the same as the VAR function. +Return type +A floating point value (like 1.3, 0.343, 253 ) + +Syntax +VARIANCE(value;value;...) + +Parameters +CommentType +Floating point valuesA range of floating point values (like 1.3, 0.343, 253 ) +Floating point valuesA range of floating point values (like 1.3, 0.343, 253 ) +Floating point valuesA range of floating point values (like 1.3, 0.343, 253 ) +Floating point valuesA range of floating point values (like 1.3, 0.343, 253 ) +Floating point valuesA range of floating point values (like 1.3, 0.343, 253 ) + +Examples +VARIANCE(12;5;7) equals 13 + +Related Functions +VAR  + + + + + +VARP +The VARP() function calculates the variance based on an entire population. +Return type +A floating point value (like 1.3, 0.343, 253 ) + +Syntax +VARP(value;value;...) + +Parameters +CommentType +Floating point valuesA range of floating point values (like 1.3, 0.343, 253 ) +Floating point valuesA range of floating point values (like 1.3, 0.343, 253 ) +Floating point valuesA range of floating point values (like 1.3, 0.343, 253 ) +Floating point valuesA range of floating point values (like 1.3, 0.343, 253 ) +Floating point valuesA range of floating point values (like 1.3, 0.343, 253 ) + +Examples +VARP(12;5;7) equals 8.666... + +Related Functions +VAR  + + + + + +VARPA +The VARPA() function calculates the variance based on an entire population. Text and boolean values that evaluate to FALSE are counted as 0, boolean value that evaluate to TRUE are counted as 1. +Return type +A floating point value (like 1.3, 0.343, 253 ) + +Syntax +VARPA(value;value;...) + +Parameters +CommentType +Floating point valuesA range of floating point values (like 1.3, 0.343, 253 ) +Floating point valuesA range of floating point values (like 1.3, 0.343, 253 ) +Floating point valuesA range of floating point values (like 1.3, 0.343, 253 ) +Floating point valuesA range of floating point values (like 1.3, 0.343, 253 ) +Floating point valuesA range of floating point values (like 1.3, 0.343, 253 ) + +Examples +VARPA(12;5;7) equals 8.666... + +Related Functions +VAR  + + + + + +WEIBULL +The WEIBULL() function returns the Weibull distribution. +The alpha and beta parameters must be positive, the number (first parameter) must be non-negative. +Cumulative = 0 calculates the density function; cumulative = 1 calculates the distribution. +Return type +A floating point value (like 1.3, 0.343, 253 ) + +Syntax +WEIBULL(number;alpha;beta;cumulative) + +Parameters +CommentType +NumberA floating point value (like 1.3, 0.343, 253 ) +Alpha parameterA floating point value (like 1.3, 0.343, 253 ) +Beta parameterA floating point value (like 1.3, 0.343, 253 ) +0 = density, 1 = distributionWhole number (like 1, 132, 2344) + +Examples +WEIBULL(2;1;1;0) equals 0.135335 + + + + + +ZTEST +The ZTEST() function calculates the two tailed probability of a z-test with normal distribution. +Performs a test of the null hypothesis, that sample is a sample + of a normal distributed random variable with mean mean and standard + deviation sigma. A return value of 1 indicates, that the null + hypothesis is rejected, i.e. the sample is not a random sample of + the normal distribution. + If sigma is omitted, it is estimated from sample, using STDEV. + +Return type +A floating point value (like 1.3, 0.343, 253 ) + +Syntax +ZTEST(x; mean; standardDeviation) + +Parameters +CommentType +x (array)A floating point value (like 1.3, 0.343, 253 ) +meanA floating point value (like 1.3, 0.343, 253 ) +standardDeviationA floating point value (like 1.3, 0.343, 253 ) + + + + + +BINO +The BINO() function returns the binomial distribution. +The first parameter is the number of trials, the second parameter is the number of successes, and the third is the probability of success. The number of trials should be greater than the number of successes and the probability should be smaller or equal to 1. +Return type +A floating point value (like 1.3, 0.343, 253 ) + +Syntax +BINO(trials;success;prob_of_success) + +Parameters +CommentType +Number of trialsWhole number (like 1, 132, 2344) +Number of successful trialsWhole number (like 1, 132, 2344) +Probability of successDouble + +Examples +BINO(12;9;0.8) returns 0.236223201 + + + + + +SUMXMY2 +The SUMXMY2() function (SUM((X-Y)^2)) returns the square of the differences of these values. The number of values in the two arrays should be equal. Otherwise this function returns Err. +Return type +A floating point value (like 1.3, 0.343, 253 ) + +Syntax +SUMXMY2(array1;array2) + +Parameters +CommentType +Value (array)Double +Value (array)Double + +Examples +SUMXMY2(A1:A2;B1:B2) with A1=2, A2=5, B1=3 and B2=5, returns 1 + + + + + +INVBINO +The INVBINO() function returns the negative binomial distribution. The first parameter is the number of trials, the second parameter is the number of failures, and the third is the probability of failure. The number of trials should be larger than the number of failures and the probability should be smaller or equal to 1. +Return type +A floating point value (like 1.3, 0.343, 253 ) + +Syntax +INVBINO(trials;failure;prob_of_failure) + +Parameters +CommentType +Number of trialsWhole number (like 1, 132, 2344) +Number of failuresWhole number (like 1, 132, 2344) +Probability of failureDouble + +Examples +INVBINO(12;3;0.2) returns 0.236223201 + + + + + +GAMMALN +The GAMMALN() function returns the natural logarithm of the gamma function: G(x). The number parameter must be positive. +Return type +A floating point value (like 1.3, 0.343, 253 ) + +Syntax +GAMMALN(Number) + +Parameters +CommentType +NumberA floating point value (like 1.3, 0.343, 253 ) + +Examples +GAMMALN(2) returns 0 + + + + + +Conversion + + +BOOL2STRING +The BOOL2STRING() function returns a string value for a given boolean value. This method is intended for using a boolean in methods which require a string +Return type +Text + +Syntax +BOOL2STRING(value) + +Parameters +CommentType +Bool value to convertA truth value (TRUE or FALSE) + +Examples +BOOL2STRING(true) returns "True" + + + + + +INT2BOOL +The INT2BOOL() function returns a boolean value for a given integer number. This method is intended for using an integer in methods which require a boolean. It only accepts 0 or 1. If any other value is given, false is returned. +Return type +A truth value (TRUE or FALSE) + +Syntax +INT2BOOL(value) + +Parameters +CommentType +Integer value to convertWhole number (like 1, 132, 2344) + +Examples +INT2BOOL(1) returns true + +Related Functions +BOOL2INT  + + + + + +BOOL2INT +The BOOL2INT() function returns an integer value for a given boolean value. This method is intended for using a boolean value in methods which require an integer. +Return type +Whole number (like 1, 132, 2344) + +Syntax +BOOL2INT(value) + +Parameters +CommentType +Bool value to convertA truth value (TRUE or FALSE) + +Examples +BOOL2INT(True) returns 1 + +Related Functions +INT2BOOL  + + + + + +NUM2STRING +The NUM2STRING() function returns a string value for a given number. Note that KSpread can auto-convert numbers to strings if needed, so this function should rarely be needed. +Return type +Text + +Syntax +NUM2STRING(value) + +Parameters +CommentType +Number to convert into stringA floating point value (like 1.3, 0.343, 253 ) + +Examples +NUM2STRING(10) returns "10" + +Related Functions +STRING  + + + + + + +STRING +The STRING() function returns a string value for a given number. It is the same as the NUM2STRING function. +Return type +Text + +Syntax + + +Parameters +CommentType +Number to convert into stringA floating point value (like 1.3, 0.343, 253 ) + +Related Functions +NUM2STRING  + + + + + +CHARTOASCII +The CHARTOASCII() function returns the ASCII code for the given character. +Return type +Whole number (like 1, 132, 2344) + +Syntax +CHARTOASCII(value) + +Parameters +CommentType +A one character string to convertText + +Examples +CHARTOASCII("v") returns 118 + + + + + +ASCIITOCHAR +The ASCIITOCHAR() function returns the character for each given ASCII code +Return type +Text + +Syntax +ASCIITOCHAR(value) + +Parameters +CommentType +The ASCII values to convertWhole number (like 1, 132, 2344) + +Examples +ASCIITOCHAR(118) returns "v" + + + + + +POLR +The POLR() function returns the radius corresponding to the position of a point in a cartesian landmark. +Return type +Double + +Syntax +POLR(X;Y) + +Parameters +CommentType +Value in XDouble +Value in YDouble + +Examples +POLR(12;12) returns 16.9705 + +Related Functions +POLA  + + + + + +POLA +The POLA() function returns the angle (in radians) corresponding to the position of a point in a cartesian landmark. +Return type +Double + +Syntax +POLA(X;Y) + +Parameters +CommentType +Value in XDouble +Value in YDouble + +Examples +POLA(12;12) returns 0.78539816 + +Related Functions +POLR  + + + + + +CARX +The CARX() function returns the X position corresponding to the position of a point in a polar landmark. +Return type +Double + +Syntax +CARX(Radius;Angle) + +Parameters +CommentType +RadiusDouble +Angle (radians)Double + +Examples +CARX(12;1.5707) returns 0.00115592 + +Related Functions +CARY  + + + + + +DECSEX +The DECSEX() function converts a double value to a time value. +Return type +Double + +Syntax +DECSEX(double) + +Parameters +CommentType +ValueDouble + +Examples +DECSEX(1.6668) returns 1:40 + + + + + +SEXDEC +The SEXDEC() function returns a decimal value. You can also supply a time value. +Return type +Double + +Syntax +SEXDEC(time value) or SEXDEC(hours;minutes;seconds) + +Parameters +CommentType +HoursWhole number (like 1, 132, 2344) +MinutesWhole number (like 1, 132, 2344) +SecondsWhole number (like 1, 132, 2344) + +Examples +SEXDEC(1;5;7) returns 1.0852778 + + + + + +CARY +The CARY() function returns the Y position corresponding to the position of a point in a polar landmark. +Return type +Double + +Syntax +CARY(Radius;Angle) + +Parameters +CommentType +RadiusDouble +Angle (radians)Double + +Examples +CARY(12;1.5707) returns 12 + +Related Functions +CARX  + + + + + +ROMAN +The ROMAN() function returns the number in Roman format. Only positive whole numbers can be converted. The optional Format argument specifies the level of conciseness, and defaults to 0. +Return type +Text + +Syntax +ROMAN(Number) + +Parameters +CommentType +NumberWhole number (like 1, 132, 2344) +FormatWhole number (like 1, 132, 2344) + +Examples +ROMAN(99) returns "XCIX" + +Related Functions +ARABIC  + + + + + +ARABIC +The ARABIC() function converts a roman numeral into a number. +Return type +Whole number (like 1, 132, 2344) + +Syntax +ARABIC(Numeral) + +Parameters +CommentType +NumeralText + +Examples +ARABIC("IV") returns 4 + +Related Functions +ROMAN  + + + + + +Information + + +ERRORTYPE +The ERRORTYPE() function converts a error to a number. If the value is not an error, an error is returned. Otherwise, a numerical code is returned. Error codes are modelled on Excel. +Return type +Whole number (like 1, 132, 2344) + +Syntax +ERRORTYPE(value) + +Parameters +CommentType +ErrorAny kind of value + +Examples +ERRORTYPE(NA()) returns 7 + + + + + +FORMULA +The FORMULA() function returns the formula of a cell as string. +Return type +Text + +Syntax +FORMULA(x) + +Parameters +CommentType +ReferenceReference + +Examples +FORMULA(A1) returns "=SUM(1+2)" if the cell A1 contains such a formula. + + + + + +N +The N() function converts a value to a number. If value is or refers to a number, this function returns the number. If value is True, this function returns 1. If a value is a date, this function returns the serial number of that date. Anything else will cause the function to return 0. +Return type +Whole number (like 1, 132, 2344) + +Syntax +N(value) + +Parameters +CommentType +ValueAny kind of value + +Examples +N(3.14) returns 3.14 + + + + + +INFO +The INFO() function returns information about the current operating environment. Parameter type specifies what type of information you want to return. It is one of the following: "directory" returns the path of the current directory, "numfile" returns the number of active documents, "release" returns the version of KSpread as text, "recalc" returns the current recalculation mode: "Automatic" or "Manual", "system" returns the name of the operating environment, "osversion" returns the current operating system. +Return type +Text + +Syntax +INFO(type) + +Parameters +CommentType +Type of informationText + + + + + +ISLOGICAL +The ISLOGICAL() function returns True if the parameter is a boolean value. Otherwise it returns False. +Return type +A truth value (TRUE or FALSE) + +Syntax +ISLOGICAL(x) + +Parameters +CommentType +Any valueAny kind of value + +Examples +ISLOGICAL(A1>A2) returns True + + + + + +ISBLANK +The ISBLANK() function returns True if the parameter is empty. Otherwise it returns False. +Return type +A truth value (TRUE or FALSE) + +Syntax +ISBLANK(x) + +Parameters +CommentType +Any valueAny kind of value + +Examples +ISBLANK(A1) returns True if A1 is empty + + + + + +ISNUMBER +The ISNUMBER() function returns True if the parameter is a numerical value. Otherwise it returns False. It's the same as ISNUM. +Return type +A truth value (TRUE or FALSE) + +Syntax +ISNUMBER(x) + +Parameters +CommentType +Any valueAny kind of value + +Examples +ISNUMBER(12) returns True + +Related Functions +ISNUM  + + + + + +ISNUM +The ISNUM() function returns True if the parameter is a numerical value. Otherwise it returns False. It's the same as ISNUMBER. +Return type +A truth value (TRUE or FALSE) + +Syntax +ISNUM(x) + +Parameters +CommentType +Any valueAny kind of value + +Examples +ISNUM(12) returns True + +Related Functions +ISNUMBER  + + + + + +ISTIME +The ISTIME() function returns True if the parameter is a time value. Otherwise it returns False. +Return type +A truth value (TRUE or FALSE) + +Syntax +ISTIME(x) + +Parameters +CommentType +Any valueAny kind of value + +Examples +ISTIME("12:05") returns True + + + + + +ISDATE +The ISDATE() function returns True if the parameter is a date value. Otherwise it returns False +Return type +A truth value (TRUE or FALSE) + +Syntax +ISDATE(x) + +Parameters +CommentType +Any valueAny kind of value + +Examples +ISDATE("2000-2-2") returns True + + + + + +ISREF +The ISREF() function returns True if the parameter refers to a reference. Otherwise it returns False +Return type +A truth value (TRUE or FALSE) + +Syntax +ISREF(x) + +Parameters +CommentType +Any valueAny kind of value + +Examples +ISREF(A12) returns true + + + + + +ISTEXT +The ISTEXT() function returns True if the parameter is a string. Otherwise it returns False +Return type +A truth value (TRUE or FALSE) + +Syntax +ISTEXT(x) + +Parameters +CommentType +Any valueAny kind of value + +Examples +ISTEXT(12) returns False + + + + + +ISNONTEXT +The ISNONTEXT() function returns True if the parameter is not a string. Otherwise it returns False. It's the same as ISNOTTEXT. +Return type +A truth value (TRUE or FALSE) + +Syntax +ISNONTEXT(x) + +Parameters +CommentType +Any valueAny kind of value + +Examples +ISNONTEXT(12) returns True + +Related Functions +ISNOTTEXT  + + + + + + +ISNOTTEXT +The ISNOTTEXT() function returns True if the parameter is not a string. Otherwise it returns False. It's the same as ISNONTEXT. +Return type +A truth value (TRUE or FALSE) + +Syntax +ISNOTTEXT(x) + +Parameters +CommentType +Any valueAny kind of value + +Examples +ISNOTTEXT(12) returns True + +Related Functions +ISNONTEXT  + + + + + +ISODD +The ISODD() function returns True if the number is odd. Otherwise returns False. +Return type +A truth value (TRUE or FALSE) + +Syntax +ISODD(x) + +Parameters +CommentType +Any valueAny kind of value + +Examples +ISODD(12) returns False + + + + + +ISEVEN +The ISEVEN() function returns True if the number is even. Otherwise returns False. +Return type +A truth value (TRUE or FALSE) + +Syntax +ISEVEN(x) + +Parameters +CommentType +Any valueAny kind of value + +Examples +ISEVEN(12) returns True + + + + + +ISERR +The ISERR() function returns True if its parameter is an error other than N/A. Otherwise, it returns False. Use ISERROR() if you want to include the N/A error as well. +Return type +A truth value (TRUE or FALSE) + +Syntax +ISERR(x) + +Parameters +CommentType +Any valueAny kind of value + +Related Functions +ISERROR  + + + + + +ISERROR +The ISERROR() function returns True if its parameter is an error of any type. Otherwise, it returns False. +Return type +A truth value (TRUE or FALSE) + +Syntax +ISERROR(x) + +Parameters +CommentType +Any valueAny kind of value + +Related Functions +ISERR  + + + + + +ISNA +The ISNA() function returns True if its parameter is a N/A error. In all other cases, it returns False. +Return type +A truth value (TRUE or FALSE) + +Syntax +ISNA(x) + +Parameters +CommentType +Any valueAny kind of value + +Related Functions +ISERR  + + + + + +NA +The NA() function returns the constant error value, N/A. +Return type +Error + +Syntax +NA() + +Parameters + + +Related Functions +ISNA  + + + + + +TYPE +The TYPE() function returns 1 if the value is a number, 2 if it is text, 4 if the value is a logical value, 16 if it is an error value or 64 if the value is an array. If the cell the value represents contains a formula you get its return type. +Return type +Whole number (like 1, 132, 2344) + +Syntax +TYPE(x) + +Parameters +CommentType +Any valueAny kind of value + +Examples +TYPE(A1) returns 2, if A1 contains "Text" + + + + + +FILENAME +Returns the current filename. If the current document is not saved, an empty string is returned. +Return type +Text + +Syntax +FILENAME() + +Parameters + + + + + + +Text + + +DOLLAR +The DOLLAR() function converts a number to text using currency format, with the decimals rounded to the specified place. Although the name is DOLLAR, this function will do the conversion according to the current locale. +Return type +Text + +Syntax +DOLLAR(number;decimals) + +Parameters +CommentType +NumberDouble +DecimalsWhole number (like 1, 132, 2344) + +Examples +DOLLAR(1403.77) returns "$ 1,403.77" + + + + + +FIXED +The FIXED() function rounds a number to the specified number of decimals, formats the number in decimal format string, and returns the result as text. If decimals is negative, number is rounded to the left of the decimal point. If you omit decimals, it is assumed to be 2. If optional parameter no_commas is True, thousand separators will not show up. +Return type +Text + +Syntax +FIXED(number;decimals;no_commas) + +Parameters +CommentType +NumberDouble +DecimalsWhole number (like 1, 132, 2344) +No_commasBool + +Examples +FIXED(1234.567;1) returns "1,234.6" + + + + + +SUBSTITUTE +The SUBSTITUTE() substitutes new_text for old_text in a text string. If instance_num is specified, only that instance of old_text is replaced. Otherwise, every occurrence of old_text is changed to new_text. Use SUBSTITUTE when you want to replace specific text, use REPLACE when you want to replace any text that occurs in a specific location. +Return type +Text + +Syntax +SUBSTITUTE(text; old_text; new_text; instance_num) + +Parameters +CommentType +Text for which you want to substituteText +Part of text you want to replaceText +New text which will be replacementText +Which occurrence to replaceWhole number (like 1, 132, 2344) + +Examples +SUBSTITUTE("Cost Data";"Cost";"Sales") returns "Sales Data" + +Related Functions +REPLACE  + + + + + +SEARCH +The SEARCH() function finds one text string (find_text) within another text string (within_text) and returns the number of the starting point of find_text, from the leftmost character of within_text. +You can use wildcard characters, question mark (?) and asterisk (*). A question mark matches any single character, an asterisk matches any sequences of characters. +Parameter start_num specifies the character at which to start the search. The first character is character number 1. If start_num is omitted, it is assumed to be 1. SEARCH does not distinguish between uppercase and lowercase letters. +Return type +Whole number (like 1, 132, 2344) + +Syntax +SEARCH(find_text;within_text;start_num) + +Parameters +CommentType +The text you want to findText +The text which may contain find_textText +Specified index to start the searchWhole number (like 1, 132, 2344) + +Examples +SEARCH("e";"Statements";6) returns 7 + +Related Functions +FIND  + + + + + +SEARCHB +The SEARCHB() function finds one text string (find_text) within another text string (within_text) and returns the number of the starting point of find_text, from the leftmost character of within_text using byte positions. +You can use wildcard characters, question mark (?) and asterisk (*). A question mark matches any single character, an asterisk matches any sequences of characters. +Parameter BytePosition specifies the character at which to start the search. The first character is character number 2. If BytePosition is omitted, it is assumed to be 2. SEARCHB does not distinguish between uppercase and lowercase letters. +Return type +Whole number (like 1, 132, 2344) + +Syntax +SEARCHB(find_text;within_text;BytePosition Start) + +Parameters +CommentType +The text you want to findText +The text which may contain find_textText +Specified byte position to start the searchWhole number (like 1, 132, 2344) + +Related Functions +FINDB  + + + + + +T +The T() function returns the text referred to by value. If value is, or refers to, text then T returns value. If value does not refer to text then T returns empty text. +Return type +Text + +Syntax +T(value) + +Parameters +CommentType +ValueAny kind of value + +Examples +T("Calligra") returns "Calligra" + + + + + +TEXT +The TEXT() function converts a value to text. +Return type +Text + +Syntax +TEXT(value) + +Parameters +CommentType +ValueAny kind of value + +Examples +TEXT(1234.56) returns "1234.56" + + + + + +PROPER +The PROPER() function converts the first letter of each word to uppercase and the rest of the letters to lowercase. +Return type +Text + +Syntax +PROPER(string) + +Parameters +CommentType +StringText + +Examples +PROPER("this is a title") returns "This Is A Title" + + + + + +COMPARE +The COMPARE() function returns 0 if the two strings are equal; -1 if the first one is lower in value than the second one; otherwise it returns 1. +Return type +Whole number (like 1, 132, 2344) + +Syntax +COMPARE(string1; string2; true|false) + +Parameters +CommentType +First stringText +String to compare withText +Compare case-sensitive (true/false)A truth value (TRUE or FALSE) + +Examples +COMPARE("Calligra"; "Calligra"; true) returns 0 + +Related Functions +EXACT  + + + + + +EXACT +The EXACT() function returns True if these two strings are equal. Otherwise, it returns False. +Return type +A truth value (TRUE or FALSE) + +Syntax +EXACT(string1;string2) + +Parameters +CommentType +StringText +StringText + +Examples +EXACT("Calligra";"Calligra") returns True + +Related Functions +COMPARE  + + + + + +REPLACE +The REPLACE() function replaces part of a text string with a different text string. +Return type +Text + +Syntax +REPLACE(text;position;length;new_text) + +Parameters +CommentType +Text which you want to replace some charactersText +Position of the characters to replaceWhole number (like 1, 132, 2344) +Number of characters to replaceWhole number (like 1, 132, 2344) +The text that will replace characters in old textText + +Examples +REPLACE("abcdefghijk";6;5;"-") returns "abcde-k" + +Related Functions +FIND  + + + + + +REPLACEB +The REPLACEB() function replaces part of a text string with a different text string using byte positions. +Return type +Text + +Syntax +REPLACEB(text;BytePosition;ByteLength Len;new_text) + +Parameters +CommentType +Text which you want to replace some characters using byte positionText +Byte position of the characters to replaceWhole number (like 1, 132, 2344) +The byte length of characters to replaceWhole number (like 1, 132, 2344) +The text that will replace characters in old textText + +Related Functions +FINDB  + + + + + +FIND +The FIND() function finds one text string (find_text) within another text string (within_text) and returns the number of the starting point of find_text, from the leftmost character of within_text. +Parameter start_num specifies the character at which to start the search. The first character is character number 1. If start_num is omitted, it is assumed to be 1. +You can also use function SEARCH, but unlike SEARCH, FIND is case-sensitive and does not allow wildcard characters. +Return type +Whole number (like 1, 132, 2344) + +Syntax +FIND(find_text;within_text;start_num) + +Parameters +CommentType +The text you want to findText +The text which may contain find_textText +Specifies index to start the searchWhole number (like 1, 132, 2344) + +Examples +FIND("Cal";"Calligra") returns 1 + +Related Functions +FINDB  + + + + + +FINDB +The FINDB() function finds one text string (find_text) within another text string (within_text) and returns the number of the starting point of find_text, from the leftmost character of within_text using byte positions. +Parameter BytePosition specifies the character at which to start the search. The first character is character number 2. If start_num is omitted, it is assumed to be 2. +Return type +Whole number (like 1, 132, 2344) + +Syntax +FINDB(find_text;within_text;BytePosition Start) + +Parameters +CommentType +The text you want to findText +The text which may contain find_textText +Specifies byte position to start the searchWhole number (like 1, 132, 2344) + +Related Functions +FIND  + + + + + +MID +The MID() function returns a substring that contains 'length' characters of the string, starting at 'position' index. +Return type +Text + + +Syntax +MID(text;position;length) + +Parameters +CommentType +Source stringText +PositionWhole number (like 1, 132, 2344) +LengthWhole number (like 1, 132, 2344) + +Examples +MID("Calligra";2;3) returns "all" + +Related Functions +LEFT  + + + + + +MIDB +The MIDB() function returns a substring that contains 'length' characters of the string, starting at 'position' index using byte positions. +Return type +Text + +Syntax +MIDB(text;BytePosition Start;ByteLength) + +Parameters +CommentType +Source stringText +Byte PositionWhole number (like 1, 132, 2344) +Byte LengthWhole number (like 1, 132, 2344) + +Related Functions +LEFT  + + + + + +LEN +The LEN() function returns the length of the string. +Return type +Whole number (like 1, 132, 2344) + +Syntax +LEN(text) + +Parameters +CommentType +StringText + +Examples +LEN("hello") returns 5 + +Related Functions +LENB  + + + + + +LENB +The LENB() function returns the length of the string using byte positions. +Return type +Whole number (like 1, 132, 2344) + +Syntax +LENB(text) + +Parameters +CommentType +StringText + + + + + +TRIM +The TRIM() function returns text with only single spaces between words. +Return type +Text + +Syntax +TRIM(text) + +Parameters +CommentType +StringText + +Examples +TRIM(" hello KSpread ") returns "hello KSpread" + + + + + +CONCATENATE +The CONCATENATE() function returns a string which is the concatenation of the strings passed as parameters. +Return type +Text + +Syntax +CONCATENATE(value;value;...) + +Parameters +CommentType +String valuesA range of strings +String valuesA range of strings +String valuesA range of strings +String valuesA range of strings +String valuesA range of strings + +Examples +CONCATENATE("Tables";"Calligra";"KDE") returns "TablesCalligraKDE" + + + + + +RIGHT +The RIGHT() function returns a substring that contains the 'length' rightmost characters of the string. The whole string is returned if 'length' exceeds the length of the string. +Return type +Text + +Syntax +RIGHT(text;length) + +Parameters +CommentType +Source stringText +Number of charactersWhole number (like 1, 132, 2344) + +Examples +RIGHT("hello";2) returns "lo" + +Related Functions +LEFT  + + + + + +RIGHTB +The RIGHTB() function returns a substring that contains the 'length' rightmost characters of the string using byte positions. The whole string is returned if 'length' exceeds the length of the string. +Return type +Text + +Syntax +RIGHTB(text;ByteLength) + +Parameters +CommentType +Source stringText +Byte LengthWhole number (like 1, 132, 2344) + +Related Functions +LEFT  + + + + + +LEFT +The LEFT() function returns a substring that contains the 'length' leftmost characters of the string. The whole string is returned if 'length' exceeds the length of the string. It is an error for the number of characters to be less than 0. +Return type +Text + +Syntax +LEFT(text;length) + +Parameters +CommentType +Source stringText +Number of charactersWhole number (like 1, 132, 2344) + +Examples +LEFT("hello";2) returns "he" + +Related Functions +RIGHT  + + + + + +LEFTB +The LEFTB() function returns a substring that contains the 'length' leftmost characters of the string using byte positions. The whole string is returned if 'length' exceeds the length of the string. It is an error for the number of characters to be less than 0. +Return type +Text + +Syntax +LEFTB(text;ByteLength) + +Parameters +CommentType +Source stringText +Byte LengthWhole number (like 1, 132, 2344) + +Related Functions +RIGHT  + + + + + +REPT +The REPT() function repeats the first parameter as many times as by the second parameter. The second parameter must not be negative, and this function will return an empty string if the second parameter is zero (or rounds down to zero). +Return type +Text + +Syntax +REPT(text;count) + +Parameters +CommentType +Source stringText +Count of repetitionsWhole number (like 1, 132, 2344) + +Examples +REPT("KSpread";3) returns "KSpreadKSpreadKSpread" + + + + + +ROT13 +The ROT13() function encrypts text by replacing each letter with the one 13 places along in the alphabet. If the 13th position is beyond the letter Z, it begins again at A (rotation). +By applying the encryption function again to the resulting text, you can decrypt the text. +Return type +Text + +Syntax +ROT13(Text) + +Parameters +CommentType +TextText + +Examples +ROT13("KSpread") returns "XFcernq" + + + + + +TOGGLE +The TOGGLE() function changes lowercase characters to uppercase and uppercase characters to lowercase. +Return type +Text + +Syntax +TOGGLE(text) + +Parameters +CommentType +Source stringText + +Examples +TOGGLE("hello") returns "HELLO" + +Related Functions +UPPER  + + + + + +CLEAN +The CLEAN() function removes every non-printable character from the string +Return type +Text + +Syntax +CLEAN(text) + +Parameters +CommentType +Source stringText + +Examples +CLEAN(AsciiToChar(7) + "HELLO") returns "HELLO" + + + + + +SLEEK +The SLEEK() function removes all spaces from the string. +Return type +Text + +Syntax +SLEEK(text) + +Parameters +CommentType +Source stringText + +Examples +SLEEK("This is some text ") returns "Thisissometext" + +Related Functions +TRIM  + + + + + +UPPER +The UPPER() function converts a string to upper case. +Return type +Text + +Syntax +UPPER(text) + +Parameters +CommentType +Source stringText + +Examples +UPPER("hello") returns "HELLO" + +Related Functions +LOWER  + + + + + +LOWER +The LOWER() function converts a string to lower case. +Return type +Text + +Syntax +LOWER(text) + +Parameters +CommentType +Source stringText + +Examples +LOWER("hello") returns "hello" + +Related Functions +UPPER  + + + + + +CHAR +The CHAR() function returns the character specified by a number. +Return type +Text + +Syntax +CHAR(code) + +Parameters +CommentType +Character codeWhole number (like 1, 132, 2344) + +Examples +CHAR(65) returns "A" + +Related Functions +CODE  + + + + + +CODE +The CODE() function returns a numeric code for the first character in a text string. +Return type +Whole number (like 1, 132, 2344) + +Syntax +CODE(text) + +Parameters +CommentType +TextText + +Examples +CODE("KDE") returns 75 + +Related Functions +CHAR  + + + + + +VALUE +Converts text string that represents a value to the real value. +Return type +Double + +Syntax +VALUE(text) + +Parameters +CommentType +TextText + +Examples +VALUE("14.03") returns 14.03 + + + + + +REGEXP +Returns a part of the string that matches a regular expression. If the string does not match the given regular expression, value specified as default is returned. +If a back-reference is provided, then the value of that back-reference is returned. +If no default value is given, an empty string is assumed. If no back-reference is given, 0 is assumed (so that entire matching part is returned). +Return type +Text + +Syntax +REGEXP(text; regexp; default; backref) + +Parameters +CommentType +Searched textText +Regular expressionText +Default value (optional)Text +Back-reference (optional)Number + +Examples +REGEXP("Number is 15.";"[0-9]+") = "15" + + + + + +REGEXPRE +Replaces all matches of a regular expression with the replacement text +Return type +Text + +Syntax +REGEXPRE(text; regexp; replacement) + +Parameters +CommentType +Searched textText +Regular expressionText +ReplacementText + +Examples +REGEXPRE("14 and 15 and 16";"[0-9]+";"num") returns "num and num and num" + + + + + +UNICODE +The UNICODE() function returns a unicode code point for the first character in a text string. +Return type +Whole number (like 1, 132, 2344) + +Syntax +UNICODE(text) + +Parameters +CommentType +TextText + +Examples +UNICODE("KDE") returns 75 + +Related Functions +UNICHAR  + + + + + +UNICHAR +The UNICHAR() function returns the character specified by a unicode code point. +Return type +Text + +Syntax +UNICHAR(code) + +Parameters +CommentType +Character codeWhole number (like 1, 132, 2344) + + +Examples +UNICHAR(65) returns "A" + +Related Functions +UNICODE  + + + + + +ASC +The ASC() function returns the half-width characters corresponding to the full-width argument. +Return type +Text + +Syntax +ASC(text) + +Parameters +CommentType +Full width charactersText + +Related Functions +JIS  + + + + + +JIS +The JIS() function returns the full-width characters corresponding to the half-width argument. +Return type +Text + +Syntax +JIS(text) + +Parameters +CommentType +Half-width charactersText + +Related Functions +ASC  + + + + + +BAHTTEXT +The BAHTTEXT() function converts a number to a text in Thai characters (baht). +Return type +Text + +Syntax +BAHTTEXT(number) + +Parameters +CommentType +NumberWhole number (like 1, 132, 2344) + +Examples +BAHTTEXT(23) returns "ยสบสามบาทถวน" + + + + + +Database + + +DSUM +Sums up the numbers in a column of a database specified by a set of conditions. +Return type +FLOAT + +Syntax +DSUM(Database; "Header"; Conditions) + +Parameters +CommentType +Range marking the databaseA range of strings +String marking the column in the databaseText +Range marking the conditionsA range of strings + +Examples +DSUM(A1:C5; "Salary"; A9:A11) + + + + + +DAVERAGE +Calculates the average in a column of a database specified by a set of conditions for values that are numbers +Return type +FLOAT + +Syntax +DAVERAGE(Database; "Header"; Conditions) + +Parameters +CommentType +Range marking the databaseA range of strings +String marking the column in the databaseText +Range marking the conditionsA range of strings + +Examples +DAVERAGE(A1:C5; "Salary"; A9:A11) + + + + + +DCOUNT +Counts the cells containing numeric values in a column of a database specified by a set of conditions. +Return type +FLOAT + +Syntax +DCOUNT(Database; "Header"; Conditions) + +Parameters +CommentType +Range marking the databaseA range of strings +String marking the column in the databaseText +Range marking the conditionsA range of strings + +Examples +DCOUNT(A1:C5; "Salary"; A9:A11) + +Related Functions +DCOUNTA  + + + + + +DCOUNTA +Counts the cells containing numeric or alphanumeric values in a column of a database specified by a set of conditions. +Return type +FLOAT + +Syntax +DCOUNTA(Database; "Header"; Conditions) + +Parameters +CommentType +Range marking the databaseA range of strings +String marking the column in the databaseText +Range marking the conditionsA range of strings + +Examples +DCOUNTA(A1:C5; "Salary"; A9:A11) + +Related Functions +DCOUNT  + + + + + +DGET +Returns a single value from a column of a database specified by a set of conditions. This function returns an error if no value or more than one value exist. +Return type +FLOAT + +Syntax +DGET(Database; "Header"; Conditions) + +Parameters +CommentType +Range marking the databaseA range of strings +String marking the column in the databaseText +Range marking the conditionsA range of strings + +Examples +DGET(A1:C5; "Salary"; A9:A11) + + + + + +DMAX +Returns the largest value in a column of a database specified by a set of conditions. +Return type +FLOAT + +Syntax +DMAX(Database; "Header"; Conditions) + +Parameters +CommentType +Range marking the databaseA range of strings +String marking the column in the databaseText +Range marking the conditionsA range of strings + +Examples +DMAX(A1:C5; "Salary"; A9:A11) + +Related Functions +DMIN  + + + + + +DMIN +Returns the smallest values in a column of a database specified by a set of conditions. +Return type +FLOAT + +Syntax +DMIN(Database; "Header"; Conditions) + +Parameters +CommentType +Range marking the databaseA range of strings +String marking the column in the databaseText +Range marking the conditionsA range of strings + +Examples +DMIN(A1:C5; "Salary"; A9:A11) + +Related Functions +DMAX  + + + + + +DPRODUCT +Returns the product of all numeric values in a column of a database specified by a set of conditions. +Return type +FLOAT + +Syntax +DPRODUCT(Database; "Header"; Conditions) + +Parameters +CommentType +Range marking the databaseA range of strings +String marking the column in the databaseText +Range marking the conditionsA range of strings + +Examples +DPRODUCT(A1:C5; "Salary"; A9:A11) + + + + + +DSTDEV +Returns the estimate of the standard deviation of a population based on a sample using all numeric values in a column of a database specified by a set of conditions. +Return type +FLOAT + +Syntax +DSTDEV(Database; "Header"; Conditions) + +Parameters +CommentType +Range marking the databaseA range of strings +String marking the column in the databaseText +Range marking the conditionsA range of strings + +Examples +DSTDEV(A1:C5; "Salary"; A9:A11) + +Related Functions +DSTDEVP  + + + + + +DSTDEVP +Returns the standard deviation of a population based on the entire population using all numeric values in a column of a database specified by a set of conditions. +Return type +FLOAT + +Syntax +DSTDEVP(Database; "Header"; Conditions) + +Parameters +CommentType +Range marking the databaseA range of strings +String marking the column in the databaseText +Range marking the conditionsA range of strings + +Examples +DSTDEVP(A1:C5; "Salary"; A9:A11) + +Related Functions +DSTDEV  + + + + + +DVAR +Returns the estimate of the variance of a population based on a sample using all numeric values in a column of a database specified by a set of conditions. +Return type +FLOAT + +Syntax +DVAR(Database; "Header"; Conditions) + +Parameters +CommentType +Range marking the databaseA range of strings +String marking the column in the databaseText +Range marking the conditionsA range of strings + +Examples +DVAR(A1:C5; "Salary"; A9:A11) + +Related Functions +DVARP  + + + + + +DVARP +Returns the variance of a population based on the entire population using all numeric values in a column of a database specified by a set of conditions. +Return type +FLOAT + +Syntax +DVARP(Database; "Header"; Conditions) + +Parameters +CommentType +Range marking the databaseA range of strings +String marking the column in the databaseText +Range marking the conditionsA range of strings + +Examples +DVARP(A1:C5; "Salary"; A9:A11) + +Related Functions +DVAR  + + + + + +GETPIVOTDATA +Fetches summary data from a pivot table. +Return type +FLOAT + +Syntax +GETPIVOTDATA(Database; "Sales") + +Parameters +CommentType +Range containing the pivot tableA range of strings +Name of the field of which you want the summary dataText + + + + + +Logical + + +FALSE +The FALSE() function returns the boolean value FALSE. +Return type +A truth value (TRUE or FALSE) + +Syntax +FALSE() + +Parameters + + +Examples +FALSE() returns FALSE + + + + + +TRUE +The TRUE() function returns the boolean value TRUE. +Return type +A truth value (TRUE or FALSE) + +Syntax +TRUE() + +Parameters + + +Examples +TRUE() returns TRUE + + + + + +AND +The AND() function returns True if all the values are true. Otherwise it returns False (unless any of the values in an error - then it returns an error). +Return type +A truth value (TRUE or FALSE) + +Syntax +AND(value;value;...) + +Parameters +CommentType +Boolean valuesA range of truth values (TRUE or FALSE) +Boolean valuesA range of truth values (TRUE or FALSE) +Boolean valuesA range of truth values (TRUE or FALSE) +Boolean valuesA range of truth values (TRUE or FALSE) +Boolean valuesA range of truth values (TRUE or FALSE) + +Examples +AND(true;true;true) returns True + + + + + +OR +The OR() function returns True if at least one of the values is true. Otherwise it returns False (unless any of the values is an error, then it returns an error). +Return type +A truth value (TRUE or FALSE) + +Syntax +OR(value;value;...) + +Parameters +CommentType +Boolean valuesA range of truth values (TRUE or FALSE) +Boolean valuesA range of truth values (TRUE or FALSE) +Boolean valuesA range of truth values (TRUE or FALSE) +Boolean valuesA range of truth values (TRUE or FALSE) +Boolean valuesA range of truth values (TRUE or FALSE) + +Examples +OR(false;false;false) returns False + + + + + +NAND +The NAND() function returns True if at least one value is not true. Otherwise it returns False. +Return type +A truth value (TRUE or FALSE) + +Syntax +NAND(value;value;...) + +Parameters +CommentType +Boolean valuesA range of truth values (TRUE or FALSE) +Boolean valuesA range of truth values (TRUE or FALSE) +Boolean valuesA range of truth values (TRUE or FALSE) +Boolean valuesA range of truth values (TRUE or FALSE) +Boolean valuesA range of truth values (TRUE or FALSE) + +Examples +NAND(true;false;false) returns True + + + + + +NOR +The NOR() function returns True if all the values given as parameters are of boolean type and have the value false. Otherwise it returns False. +Return type +A truth value (TRUE or FALSE) + +Syntax +NOR(value;value;...) + +Parameters +CommentType +Boolean valuesA range of truth values (TRUE or FALSE) +Boolean valuesA range of truth values (TRUE or FALSE) +Boolean valuesA range of truth values (TRUE or FALSE) +Boolean valuesA range of truth values (TRUE or FALSE) +Boolean valuesA range of truth values (TRUE or FALSE) + +Examples +NOR(true;false;false) returns False + + + + + +XOR +The XOR() function returns False if the number of True values is even. Otherwise it returns True. It returns an error if any argument is an error. +Return type +A truth value (TRUE or FALSE) + + +Syntax +XOR(value;value;...) + +Parameters +CommentType +Boolean valuesA range of truth values (TRUE or FALSE) +Boolean valuesA range of truth values (TRUE or FALSE) +Boolean valuesA range of truth values (TRUE or FALSE) +Boolean valuesA range of truth values (TRUE or FALSE) +Boolean valuesA range of truth values (TRUE or FALSE) + +Examples +XOR(false;false;false) returns True + + + + + +NOT +The NOT() function returns True if the value is False and returns False if the value is True. It returns an error if the input in an error. +Return type +A truth value (TRUE or FALSE) + +Syntax +NOT(bool) + +Parameters +CommentType +Boolean valueA truth value (TRUE or FALSE) + +Examples +NOT(false) returns True + + + + + +IF +The IF() function is a conditional function. This function returns the second parameter if the condition is True. Otherwise it returns the third parameter (which defaults to being false). +Return type +Any kind of value + +Syntax +IF(condition;if_true;if_false) + +Parameters +CommentType +ConditionA truth value (TRUE or FALSE) +If trueAny kind of value +If falseAny kind of value + +Examples +A1=4;A2=6;IF(A1>A2;5;3) returns 3 + + + + + +Trigonometric + + +COS +The COS() function returns the cosine of x, where x is given in radians. +Return type +A floating point value (like 1.3, 0.343, 253 ) + +Syntax +COS(Float) + +Parameters +CommentType +Angle (radians)A floating point value (like 1.3, 0.343, 253 ) + +Examples +COS(0) equals 1.0 + +Related Functions +SIN  + + + + + +ACOT +The ACOT() function returns the inverse cotangent of a number. +Return type +A floating point value (like 1.3, 0.343, 253 ) + +Syntax +ACOT(Float) + +Parameters +CommentType +Angle (radians)A floating point value (like 1.3, 0.343, 253 ) + +Examples +ACOT(0) equals 1.57079633 + + + + + +SIN +The SIN() function returns the sine of x, where x is given in radians. +Return type +A floating point value (like 1.3, 0.343, 253 ) + +Syntax +SIN(Float) + +Parameters +CommentType +Angle (radians)A floating point value (like 1.3, 0.343, 253 ) + +Examples +SIN(0) equals 0 + +Related Functions +COS  + + + + + +TAN +The TAN() function returns the tangent of x, where x is given in radians. +Return type +A floating point value (like 1.3, 0.343, 253 ) + +Syntax +TAN(Float) + +Parameters +CommentType +Angle (radians)A floating point value (like 1.3, 0.343, 253 ) + +Examples +TAN(0.7) equals 0.84228838 + +Related Functions +ATAN  + + + + + +ACOS +The ACOS() function returns the arc cosine in radians and the value is mathematically defined to be 0 to PI (inclusive). +Return type +A floating point value (like 1.3, 0.343, 253 ) + +Syntax +ACOS(Float) + +Parameters +CommentType +Angle (radians)A floating point value (like 1.3, 0.343, 253 ) + +Examples +ACOS(0.8) equals 0.6435011 + +Related Functions +COS  + + + + + +ASIN +The ASIN() function returns the arc sine in radians and the value is mathematically defined to be -PI/2 to PI/2 (inclusive). +Return type +A floating point value (like 1.3, 0.343, 253 ) + +Syntax +ASIN(Float) + +Parameters +CommentType +Angle (radians)A floating point value (like 1.3, 0.343, 253 ) + +Examples +ASIN(0.8) equals 0.92729522 + +Related Functions +SIN  + + + + + +ATAN +The ATAN() function returns the arc tangent in radians and the value is mathematically defined to be -PI/2 to PI/2 (inclusive). +Return type +A floating point value (like 1.3, 0.343, 253 ) + +Syntax +ATAN(Float) + +Parameters +CommentType +Angle (radians)A floating point value (like 1.3, 0.343, 253 ) + +Examples +ATAN(0.8) equals 0.67474094 + +Related Functions +TAN  + + + + + +COSH +The COSH() function returns the hyperbolic cosine of x, which is defined mathematically as (exp(x) + exp(-x)) / 2. +Return type +A floating point value (like 1.3, 0.343, 253 ) + +Syntax +COSH(Float) + +Parameters +CommentType +Angle (radians)A floating point value (like 1.3, 0.343, 253 ) + +Examples +COSH(0.8) equals 1.33743495 + +Related Functions +ACOSH  + + + + + +SINH +The SINH() function returns the hyperbolic sine of x, which is defined mathematically as (exp(x) - exp(-x)) / 2. +Return type +A floating point value (like 1.3, 0.343, 253 ) + +Syntax +SINH(Float) + +Parameters +CommentType +Angle (radians)A floating point value (like 1.3, 0.343, 253 ) + +Examples +SINH(0.8) equals 0.88810598 + +Related Functions +ASINH  + + + + + +TANH +The TANH() function returns the hyperbolic tangent of x, which is defined mathematically as sinh(x)/cosh(x). +Return type +A floating point value (like 1.3, 0.343, 253 ) + +Syntax +TANH(Float) + +Parameters +CommentType +Angle (radians)A floating point value (like 1.3, 0.343, 253 ) + +Examples +TANH(0.8) equals 0.66403677 + +Related Functions +ATANH  + + + + + +ACOSH +The ACOSH() function calculates the inverse hyperbolic cosine of x. That is the value whose hyperbolic cosine is x. If x is less than 1.0, acosh() returns not-a-number (NaN) and errno is set. +Return type +A floating point value (like 1.3, 0.343, 253 ) + +Syntax +ACOSH(Float) + +Parameters +CommentType +Angle (radians)A floating point value (like 1.3, 0.343, 253 ) + +Examples +ACOSH(5) equals 2.29243167 + +Related Functions +COSH  + + + + + +ASINH +The ASINH() function calculates the inverse hyperbolic sine of x; that is the value whose hyperbolic sine is x. +Return type +A floating point value (like 1.3, 0.343, 253 ) + +Syntax +ASINH(Float) + +Parameters +CommentType +Angle (radians)A floating point value (like 1.3, 0.343, 253 ) + +Examples +ASINH(0.8) equals 0.73266826 + +Related Functions +SINH  + + + + + +ATANH +The ATANH() function calculates the inverse hyperbolic tangent of x; that is the value whose hyperbolic tangent is x. If the absolute value of x is greater than 1.0, ATANH() returns not-a-number (NaN). +Return type +A floating point value (like 1.3, 0.343, 253 ) + +Syntax +ATANH(Float) + +Parameters +CommentType +Angle (radians)A floating point value (like 1.3, 0.343, 253 ) + +Examples +ATANH(0.8) equals 1.09861229 + +Related Functions +TANH  + + + + + +ATAN2 +This function calculates the arc tangent of the two variables x and y. It is similar to calculating the arc tangent of y/x, except that the signs of both arguments are used to determine the quadrant of the result. +Return type +A floating point value (like 1.3, 0.343, 253 ) + +Syntax +ATAN2(value;value) + +Parameters +CommentType +Angle (radians)A floating point value (like 1.3, 0.343, 253 ) +Angle (radians)A floating point value (like 1.3, 0.343, 253 ) + +Examples +ATAN2(0.5;1.0) equals 1.107149 + +Related Functions +ATAN  + + + + + +DEGREES +This function transforms a radian angle to a degree angle. +Return type +A floating point value (like 1.3, 0.343, 253 ) + +Syntax +DEGREES(Float) + +Parameters +CommentType +Angle (radians)A floating point value (like 1.3, 0.343, 253 ) + +Examples +DEGREES(0.78) equals 44.69 + +Related Functions +RADIANS  + + + + + +RADIANS +This function transforms a degree angle to a radian angle. +Return type +A floating point value (like 1.3, 0.343, 253 ) + +Syntax +RADIANS(Float) + +Parameters +CommentType +Angle (degrees)A floating point value (like 1.3, 0.343, 253 ) + +Examples +RADIANS(75) equals 1.308 + +Related Functions +DEGREES  + + + + + +PI +The PI() function returns the value of PI. +Return type +A floating point value (like 1.3, 0.343, 253 ) + +Syntax +PI() + +Parameters + + +Examples +PI() equals 3.141592654... + + + + + +CSC +The CSC() function returns the cosecant of x, where x is given in radians. +Return type +A floating point value (like 1.3, 0.343, 253 ) + +Syntax +CSC(Float) + +Parameters +CommentType +Angle (radians)A floating point value (like 1.3, 0.343, 253 ) + +Examples +CSC(PI()/2) equals 1 + + + + + +CSCH +The CSCH() function returns the hyperbolic cosecant of x, where x is given in radians. +Return type +A floating point value (like 1.3, 0.343, 253 ) + +Syntax +CSCH(Float) + +Parameters +CommentType +Angle (radians)A floating point value (like 1.3, 0.343, 253 ) + +Examples +CSCH(PI()/2) equals 0.434537208... + + + + + +SEC +The SEC() function returns the secant of x, where x is given in radians. +Return type +A floating point value (like 1.3, 0.343, 253 ) + +Syntax +SEC(Float) + +Parameters +CommentType +Angle (radians)A floating point value (like 1.3, 0.343, 253 ) + +Examples +SEC(0) equals 1 + + + + + +SECH +The SECH() function returns the hyperbolic secant of x, where x is given in radians. +Return type +A floating point value (like 1.3, 0.343, 253 ) + +Syntax +SECH(Float) + +Parameters +CommentType + +Angle (radians)A floating point value (like 1.3, 0.343, 253 ) + +Examples +SECH(0) equals 1 + + + + + +Date & Time + + +WEEKDAY +The WEEKDAY() function returns the weekday of given date. If the method is 1 (default) WEEKDAY() returns 1 for sunday, 2 for monday,.. If the method is 2, monday is 1, tuesday 2, ... and if the method is 3 WEEKDAY() returns 0 for monday, 1 for tuesday,... +Return type +Whole number (like 1, 132, 2344) + +Syntax +WEEKDAY(date; method) + +Parameters +CommentType +DateText +Method (optional)Whole number (like 1, 132, 2344) + +Examples +WEEKDAY("2002-02-22"; 2) returns 5 + +Related Functions +DAYNAME  + + + + + +DAYS360 +The DAYS360() function returns the number of days from date1 to date2 using a 360-day calendar in which all months are assumed to have 30 days. If method is false (default) the US method will be used, the European otherwise. +Return type +Whole number (like 1, 132, 2344) + +Syntax +DAYS360(date1; date2; method) + +Parameters +CommentType +Date1Text +Date2Text +MethodA truth value (TRUE or FALSE) + +Examples +DAYS360("2/22/2002"; "4/21/2002"; FALSE) returns 59 + +Related Functions +DAYS  + + + + + +TIMEVALUE +The TIMEVALUE() function returns a number (between 0 and 1) representing the time of day. +Return type +A floating point value (like 1.3, 0.343, 253 ) + +Syntax +TIMEVALUE(time) + +Parameters +CommentType +TimeText + +Examples +TIMEVALUE("10:05:02") returns 0.42 + +Related Functions +DATEVALUE  + + + + + +DATEVALUE +The DATEVALUE function returns a number representing the day, i.e the number of days elapsed since December 31, 1899. +Return type +Whole number (like 1, 132, 2344) + +Syntax +DATEVALUE(date) + +Parameters +CommentType +DateText + +Examples +DATEVALUE("2/22/2002") returns 37309 + +Related Functions +TIMEVALUE  + + + + + +EDATE +The EDATE functions returns the date that is specified by a given date and a number of months before or after that date. +Return type +Date + +Syntax +EDATE(date; months) + +Parameters +CommentType +DateText +MonthsWhole number (like 1, 132, 2344) + +Examples +EDATE("2/22/2002"; 3) returns "5/22/2002" + +Related Functions +DATE  + + + + + +EOMONTH +The EOMONTH functions returns the last day in the month specified by a date and the number of months from that date. +Return type +Date + +Syntax +EOMONTH(date; months) + +Parameters +CommentType +DateText +MonthsWhole number (like 1, 132, 2344) + +Examples +EOMONTH("2/22/2002"; 3) returns "5/31/2002" + +Related Functions +EDATE  + + + + + +YEAR +The YEAR functions returns the year of a date. If no parameter is specified the current year gets returned. +Return type +Whole number (like 1, 132, 2344) + +Syntax +YEAR(date) + +Parameters +CommentType +DateText + +Examples +YEAR("2/22/2002") returns 2002 + +Related Functions +DAY  + + + + + +MONTH +The MONTH functions returns the month of a date. If no parameter is specified the current month gets returned. +Return type +Whole number (like 1, 132, 2344) + +Syntax +MONTH(date) + +Parameters +CommentType +DateText + +Examples +MONTH("2/22/2002") returns 2 + +Related Functions +DAY  + + + + + +DAY +The DAY functions returns the day of a date. If no parameter is specified the current day gets returned. +Return type +Whole number (like 1, 132, 2344) + +Syntax +DAY(date) + +Parameters +CommentType +DateText + +Examples +DAY("2/22/2002") returns 22 + +Related Functions +MONTH  + + + + + +HOUR +The HOUR functions returns the hour of a time. If no parameter is specified the current hour gets returned. +Return type +Whole number (like 1, 132, 2344) + +Syntax +HOUR(time) + +Parameters +CommentType +TimeText + +Examples +HOUR("22:10:12") returns 22 + +Related Functions +MINUTE  + + + + + +MINUTE +The MINUTE functions returns the minutes of a time. If no parameter is specified the current minute is returned. +Return type +Whole number (like 1, 132, 2344) + +Syntax +MINUTE(time) + +Parameters +CommentType +TimeText + +Examples +MINUTE("22:10:12") returns 10 + +Related Functions +HOUR  + + + + + +SECOND +The SECOND functions returns the seconds of a time. If no parameter is specified the current second is returned. +Return type +Whole number (like 1, 132, 2344) + +Syntax +SECOND(time) + +Parameters +CommentType +TimeText + +Examples +SECOND("22:10:12") returns 12 + +Related Functions +HOUR  + + + + + +WEEKS +The WEEKS() function returns the difference between two dates in weeks.The third parameter indicates the calculation mode: if the mode is 0, WEEKS() returns the maximal possible number of weeks between those days. If the mode is 1, it only returns the number of whole weeks in between. +Return type +Whole number (like 1, 132, 2344) + +Syntax +WEEKS(date2; date1; mode) + +Parameters +CommentType +First (earlier) date valueText +Second date valueText +Calculation modeWhole number (like 1, 132, 2344) + +Examples +WEEKS("2002-02-18"; "2002-02-26"; 0) returns 1, because there is one week and 1 day in between + + + + + +MONTHS +The MONTHS() function returns the difference between two dates in months.The third parameter indicates the calculation mode: if the mode is 0, MONTHS() returns the maximal possible number of months between those days. If the mode is 1, it only returns the number of complete months in between. +Return type +Whole number (like 1, 132, 2344) + +Syntax +MONTHS(date2; date1; mode) + +Parameters +CommentType +First (earlier) date valueText +Second date valueText +Calculation modeWhole number (like 1, 132, 2344) + +Examples +MONTHS("2002-01-18"; "2002-02-26"; 0) returns 1, because there is 1 month and 8 days in between + + + + + +YEARS +The YEARS() function returns the difference between two dates in years. The third parameter indicates the calculation mode: if the mode is 0, YEARS() returns the maximal possible number of years between those days. If the mode is 1, it only returns whole years, starting at the 1st Jan and ending on the 31st Dec. +Return type +Whole number (like 1, 132, 2344) + +Syntax +YEARS(date2; date1; mode) + +Parameters +CommentType +First (earlier) date valueText +Second date valueText +Calculation modeWhole number (like 1, 132, 2344) + +Examples +YEARS("2001-02-19"; "2002-02-26"; 0) returns 1, because there is one year and 7 days in between + + + + + +DAYS +The DAYS() function returns the difference between two dates in days. +Return type +Whole number (like 1, 132, 2344) + +Syntax +DAYS(date2; date1) + +Parameters +CommentType +First (earlier) date valueText +Second date valueText + +Examples +DAYS("2002-02-22"; "2002-02-26") returns 4 + + + + + +DAYOFYEAR +The DAYOFYEAR() function returns the number of the day in the year (1...365). +Return type +Whole number (like 1, 132, 2344) + +Syntax +DAYOFYEAR(year;month;date) + +Parameters +CommentType +YearWhole number (like 1, 132, 2344) +MonthWhole number (like 1, 132, 2344) +DayWhole number (like 1, 132, 2344) + +Examples +DAYOFYEAR(2000;12;1) returns 336 + + + + + +DATE +The DATE() function returns the date formatted with local parameters. +Return type +Text + +Syntax +DATE(year;month;date) + +Parameters +CommentType +YearWhole number (like 1, 132, 2344) +MonthWhole number (like 1, 132, 2344) +DayWhole number (like 1, 132, 2344) + +Examples +DATE(2000;5;5) returns Friday 05 May 2000 + + + + + +TIME +The TIME() function returns the time formatted with local parameters. +Return type +Text + +Syntax +TIME(hours;minutes;seconds) + +Parameters +CommentType +HoursWhole number (like 1, 132, 2344) +MinutesWhole number (like 1, 132, 2344) +SecondsWhole number (like 1, 132, 2344) + +Examples +TIME(10;2;2) returns 10:02:02 + + + + + +HOURS +The HOURS() function returns the value of the hours in a time expression. +Return type +Whole number (like 1, 132, 2344) + +Syntax +HOURS(time) + +Parameters +CommentType +TimeText + +Examples +HOURS("10:5:2") returns 10 + + + + + +ISLEAPYEAR +The function ISLEAPYEAR() returns True if the given year is leap. +Return type +A truth value (TRUE or FALSE) + +Syntax +ISLEAPYEAR(year) + +Parameters +CommentType +YearWhole number (like 1, 132, 2344) + +Examples +ISLEAPYEAR(2000) returns True + + + + + +DAYSINMONTH +The function DAYSINMONTH() returns the number of days in the given year and month. +Return type +Whole number (like 1, 132, 2344) + +Syntax +DAYSINMONTH(year;month) + +Parameters +CommentType +YearWhole number (like 1, 132, 2344) +MonthWhole number (like 1, 132, 2344) + +Examples +DAYSINMONTH(2000;2) returns 29 + + + + + +DAYSINYEAR +The function DAYSINYEAR() returns the number of days in the given year. +Return type +Whole number (like 1, 132, 2344) + +Syntax +DAYSINYEAR(year) + +Parameters +CommentType + +YearWhole number (like 1, 132, 2344) + +Examples +DAYSINYEAR(2000) returns 366 + + + + + +WEEKSINYEAR +The function WEEKSINYEAR() returns the number of weeks in the given year. +Return type +Whole number (like 1, 132, 2344) + +Syntax +WEEKSINYEAR(year) + +Parameters +CommentType +YearWhole number (like 1, 132, 2344) + +Examples +WEEKSINYEAR(2000) returns 52 + + + + + +MINUTES +The MINUTES() function returns the value of the minutes in a time expression. +Return type +Whole number (like 1, 132, 2344) + +Syntax +MINUTES(time) + +Parameters +CommentType +TimeText + +Examples +MINUTES("10:5:2") returns 5 + + + + + +SECONDS +The SECONDS() function returns the value of the seconds in a time expression. +Return type +Whole number (like 1, 132, 2344) + +Syntax +SECONDS(time) + +Parameters +CommentType +TimeText + +Examples +SECONDS("10:5:2") returns 2 + + + + + +DAYNAME +The DAYNAME() function returns the name of the day of the week (1..7). In some countries the first day of the week is Monday, while in others the first day of the week is Sunday. +Return type +Text + +Syntax +DAYNAME(weekday) + +Parameters +CommentType +Number of day in week (1..7)Whole number (like 1, 132, 2344) + +Examples +DAYNAME(1) returns Monday (if the week starts on Monday) + +Related Functions +WEEKDAY  + + + + + +MONTHNAME +The MONTHNAME() function returns the name of the month (1...12). +Return type +Text + +Syntax +MONTHNAME(number) + +Parameters +CommentType +Number of month (1..12)Whole number (like 1, 132, 2344) + +Examples +MONTHNAME(5) returns May + + + + + +CURRENTDATE +The CURRENTDATE() function returns the current date. It is equivalent to the TODAY function. +Return type +Date + +Syntax +CURRENTDATE() + +Parameters + + +Examples +CURRENTDATE() returns "Saturday 13 April 2002" + +Related Functions +CURRENTTIME  + + + + + +TODAY +The TODAY() function returns the current date. +Return type +Date + +Syntax +TODAY() + +Parameters + + +Examples +TODAY() returns "Saturday 13 April 2002" + +Related Functions +CURRENTTIME  + + + + + +NOW +The NOW() function returns the current date and time. It is identical with CURRENTDATETIME and provided for compatibility with other applications. +Return type +Date + +Syntax +NOW() + +Parameters + + +Examples +NOW() returns "Saturday 13 April 2002 19:12:01" + +Related Functions +CURRENTTIME  + + + + + +CURRENTDATETIME +The CURRENTDATETIME() function returns the current date and time. +Return type +Date + +Syntax +CURRENTDATETIME() + +Parameters + + +Examples +CURRENTDATETIME() returns "Saturday 13 April 2002 19:12:01" + + + + + +CURRENTTIME +The CURRENTTIME() function returns the current time formatted with local parameters. +Return type +Date + +Syntax +CURRENTTIME() + +Parameters + + +Examples +CURRENTTIME() returns "19:12:01" + + + + + +EASTERSUNDAY +The EASTERSUNDAY() function returns the date which corresponds to Easter Sunday in the year given as the parameter. +Return type +Date + +Syntax +EASTERSUNDAY(year) + +Parameters +CommentType +YearWhole number (like 1, 132, 2344) + +Examples +EASTERSUNDAY(2003) returns "20th April 2003" + + + + + +ISOWEEKNUM +The ISOWEEKNUM() function returns number of the week which the date falls into. Note that this function is compliant with the ISO8601 standard: a week always begins on a Monday, and ends on a Sunday. The first week of a year is that week which contains the first Thursday of the year. +Return type +Whole number (like 1, 132, 2344) + +Syntax +ISOWEEKNUM(date) + +Parameters +CommentType +DateText + +Examples +ISOWEEKNUM(A1) returns 51 when A1 is "21st of Dec". + +Related Functions +WEEKNUM  + + + + + +WEEKNUM +The WEEKNUM() function returns the non-ISO week number in which the date falls into. +Return type +Whole number (like 1, 132, 2344) + +Syntax +WEEKNUM(date; method) + +Parameters +CommentType +DateText +Method (optional)Whole number (like 1, 132, 2344) + +Examples +WEEKNUM(A1; 1) returns 11 when A1 is "9th of March 2008". Number of the week in the year, with a week beginning on Sunday (1, this is the default if Method is omitted.) + +Related Functions +ISOWEEKNUM  + + + + + +DATEDIF +The DATEDIF() function returns the difference between two dates. +Interval must be one of the following: "m": month; "d": days; "y": complete years; "ym": month excluding years; "yd": days excluding years; "md": days excluding months and years +Return type +Whole number (like 1, 132, 2344) + +Syntax +DATEDIF(first date; second date; interval) + +Parameters +CommentType +First dateText +Second dateText +intervalText + +Examples +DATEDIF(A1;A2;"d") A1 is "1st of January 1995" and A2 is "15th of June 1999" returns number of days 1626 + + + + + +YEARFRAC +The YEARFRAC() function returns the number of full days between start date and end date according to the basis. +Basis must be one of the following: 0 = 30/360 US, 1 = Actual/actual, 2 = Actual/360, 3 = Actual/365, 4 = European 30/360 +Return type +Whole number (like 1, 132, 2344) + +Syntax +YEARFRAC(start date; end date; basis) + +Parameters +CommentType +First dateText +Second dateText +intervalText + + + + + +WORKDAY +The WORKDAY() function returns the date which is working days from the start date. +Holidays must be one of the following: number = days to add, a single date or an array of dates. +Return type +Date + +Syntax +WORKDAY(start date; days; holidays) + +Parameters +CommentType +Start dateText +Working daysWhole number (like 1, 132, 2344) +HolidaysText + +Examples +if B9 is "01/01/2001", D3 is "01/03/2001", D4 is "01/04/2001" then WORKDAY(B9;2;D3:D4) returns "Fri Jan 5 2001" + + + + + +NETWORKDAY +The NETWORKDAY() function returns the number of working days between startdate and enddate. +Holidays must be one of the following: number = days to add, a single date or an array of dates. +Return type +Whole number (like 1, 132, 2344) + +Syntax +NETWORKDAY(start date; end date; holidays) + +Parameters +CommentType +Start dateText +End dateText +HolidaysText + +Examples +NETWORKDAY("01/01/2001";"01/08/2001") returns 5 workdays + + + + + +DATE2UNIX +DATE2UNIX() function converts a date and time value to unix time. +A unix time is the number of seconds after midnight January 1st, 1970. +Return type +Whole number (like 1, 132, 2344) + +Syntax +DATE2UNIX(date) + +Parameters +CommentType +DateText + +Examples +DATE2UNIX("01/01/2000") returns 946,684,800 + + + + + +UNIX2DATE +UNIX2DATE() function converts unix time to a date and time value. +A unix time is the number of seconds after midnight January 1st, 1970. +Return type +Date + +Syntax +UNIX2DATE(unixtime) + +Parameters +CommentType +UnixtimeWhole number (like 1, 132, 2344) + +Examples +UNIX2DATE(0) returns 1970-01-01 + + + + + +Math + + +SUBTOTAL +The SUBTOTAL() function returns a subtotal of a given list of arguments ignoring other subtotal results in there. Function can be one of the following numbers: 1 - Average, 2 - Count, 3 - CountA, 4 - Max, 5 - Min, 6 - Product, 7 - StDev, 8 - StDevP, 9 - Sum, 10 - Var, 11 - VarP. +Return type +A floating point value (like 1.3, 0.343, 253 ) + +Syntax +SUBTOTAL(function; value) + +Parameters +CommentType +FunctionWhole number (like 1, 132, 2344) +ValuesFLOAT + +Examples +If A1:A5 contains 7, 24, 23, 56 and 9: + +Related Functions +AVERAGE  + + + + + +SERIESSUM +The SERIESSUM() function returns the sum of a power series. +Return type +A floating point value (like 1.3, 0.343, 253 ) + +Syntax +SERIESSUM( X; N; M; Coefficients) + +Parameters +CommentType +X the independent variable of the power seriesA floating point value (like 1.3, 0.343, 253 ) +N the initial power to which X is to be raisedA floating point value (like 1.3, 0.343, 253 ) +M the increment by which to increase N for each term in the seriesA floating point value (like 1.3, 0.343, 253 ) +Coefficients a set of coefficients by which each successive power of the variable X is multipliedFLOAT + +Examples +SERIESSUM(2;0;2;{1;2}) return 9 + + + + + +LCM +The LCM() function returns the least common multiple for two or more float values +Return type +A floating point value (like 1.3, 0.343, 253 ) + +Syntax +LCM(value; value) + +Parameters +CommentType +First numberFLOAT +Second numberFLOAT + +Examples +LCM(6;4) returns 12 + +Related Functions +GCD  + + + + + +GCD +The GCD() function returns the greatest common denominator for two or more integer values. +Return type +Whole number (like 1, 132, 2344) + +Syntax +GCD(value; value) + +Parameters +CommentType +First numberA range of whole numbers (like 1, 132, 2344) +Second numberA range of whole numbers (like 1, 132, 2344) +Third numberA range of whole numbers (like 1, 132, 2344) + +Examples +GCD(6;4) returns 2 + +Related Functions +LCM  + + + + + +EPS +EPS() returns the machine epsilon; this is the difference between 1 and the next largest floating-point number. Because computers use a finite number of digits, roundoff error is inherent (but usually insignificant) in all calculations. +Return type +A floating point value (like 1.3, 0.343, 253 ) + +Syntax + +EPS() + +Parameters + + +Examples +On most systems, this returns 2^-52=2.2204460492503131e-16 + + + + + +POWER +The POWER(x;y) function returns the value of x raised to the power of y. +Return type +A floating point value (like 1.3, 0.343, 253 ) + +Syntax +POWER(value;value) + +Parameters +CommentType +Floating point valueA floating point value (like 1.3, 0.343, 253 ) +Floating point valueA floating point value (like 1.3, 0.343, 253 ) + +Examples +POWER(1.2;3.4) equals 1.8572 + +Related Functions +POW  + + + + + +POW +The POW(x;y) function returns the value of x raised to the power of y. It's the same as POWER. +Return type +A floating point value (like 1.3, 0.343, 253 ) + +Syntax +POW(value;value) + +Parameters +CommentType +Floating point valueA floating point value (like 1.3, 0.343, 253 ) +Floating point valueA floating point value (like 1.3, 0.343, 253 ) + +Examples +POW(1.2;3.4) equals 1.8572 + +Related Functions +POWER  + + + + + +EVEN +The EVEN() function returns the number rounded up to the nearest even integer. +Return type +A floating point value (like 1.3, 0.343, 253 ) + +Syntax +EVEN(value) + +Parameters +CommentType +Floating point valueA floating point value (like 1.3, 0.343, 253 ) + +Examples +EVEN(1.2) returns 2 + +Related Functions +ODD  + + + + + +TRUNC +The TRUNC() function truncates a numeric value to a certain precision. If the precision is omitted 0 is assumed. +Return type +A floating point value (like 1.3, 0.343, 253 ) + +Syntax +TRUNC(value; precision) + +Parameters +CommentType +Floating point valueA floating point value (like 1.3, 0.343, 253 ) +PrecisionInteger + +Examples +TRUNC(1.2) returns 1 + +Related Functions +ROUND  + + + + + +ODD +The ODD() function returns the number rounded up (or down, for negative values) to the nearest odd integer. By definition, ODD(0) is 1. +Return type +A floating point value (like 1.3, 0.343, 253 ) + +Syntax +ODD(value) + +Parameters +CommentType +Floating point valueA floating point value (like 1.3, 0.343, 253 ) + +Examples +ODD(1.2) returns 3 + +Related Functions +EVEN  + + + + + +GAMMA +The GAMMA() function returns the gamma function value. +Return type +A floating point value (like 1.3, 0.343, 253 ) + +Syntax +GAMMA(value) + +Parameters +CommentType +Floating point valueA floating point value (like 1.3, 0.343, 253 ) + +Examples +GAMMA(1) returns 1 + +Related Functions +FACT  + + + + + +MOD +The MOD() function returns the remainder after division. If the second parameter is null the function returns #DIV/0. +Return type +Whole number (like 1, 132, 2344) + +Syntax +MOD(value;value) + +Parameters +CommentType +Floating point valueWhole number (like 1, 132, 2344) +Floating point valueWhole number (like 1, 132, 2344) + +Examples +MOD(12;5) returns 2 + +Related Functions +DIV  + + + + + +SIGN +This function returns -1 if the number is negative, 0 if the number is null and 1 if the number is positive. +Return type +Whole number (like 1, 132, 2344) + +Syntax +SIGN(value) + +Parameters +CommentType +Floating point valueA floating point value (like 1.3, 0.343, 253 ) + +Examples +SIGN(5) equals 1 + + + + + +INV +This function multiplies each value by -1. +Return type +A floating point value (like 1.3, 0.343, 253 ) + +Syntax +INV(value) + +Parameters +CommentType +Floating point valueA floating point value (like 1.3, 0.343, 253 ) + +Examples +INV(-5) equals 5 + + + + + +COUNT +This function returns the count of integer or floating arguments passed. You can count using a range: COUNT(A1:B5) or using a list of values like COUNT(12;5;12.5). +Return type +A floating point value (like 1.3, 0.343, 253 ) + +Syntax +COUNT(value;value;value...) + +Parameters +CommentType +ValuesFLOAT + +Examples +COUNT(-5;"KSpread";2) returns 2 + +Related Functions +COUNTA  + + + + + +COUNTA +This function returns the count of all non empty arguments passed. You can count using a range: COUNTA(A1:B5) or using a list of values like COUNTA(12;5;12.5). +Return type +A floating point value (like 1.3, 0.343, 253 ) + +Syntax +COUNTA(value;value;value...) + +Parameters +CommentType +ValuesFLOAT + +Examples +COUNTA(-5;"KSpread";2) returns 3 + +Related Functions +COUNT  + + + + + +COUNTBLANK +This function returns the count of all empty cells within the range. +Return type +A floating point value (like 1.3, 0.343, 253 ) + +Syntax +COUNTBLANK(range) + +Parameters +CommentType +Cell rangeRange + +Examples +COUNTBLANK(A1:B5) + +Related Functions +COUNT  + + + + + +COUNTIF +The COUNTIF() function returns the number of cells in the given range that meet the given criteria. +Return type +Whole number (like 1, 132, 2344) + +Syntax +COUNTIF(range;criteria) + +Parameters +CommentType +RangeA range of floating point values (like 1.3, 0.343, 253 ) +CriteriaText + +Examples +COUNTIF(A2:A3;"14") returns 1 if A2 is -4 and A3 is 14 + +Related Functions +COUNT  + + + + + +FACT +The FACT() function calculates the factorial of the parameter. The mathematical expression is (value)!. +Return type +A floating point value (like 1.3, 0.343, 253 ) + +Syntax +FACT(number) + +Parameters +CommentType +A floating point valueA floating point value (like 1.3, 0.343, 253 ) + +Examples +FACT(10) returns 3628800 + + + + + +FACTDOUBLE +The FACTDOUBLE() function calculates the double factorial of a number, i.e. x!!. +Return type +A floating point value (like 1.3, 0.343, 253 ) + +Syntax +FACTDOUBLE(number) + +Parameters +CommentType +A floating point valueA floating point value (like 1.3, 0.343, 253 ) + +Examples +FACTDOUBLE(6) returns 48 + + + + + +SUM +The SUM() function calculates the sum of all the values given as parameters. You can calculate the sum of a range SUM(A1:B5) or a list of values like SUM(12;5;12.5). +Return type +A floating point value (like 1.3, 0.343, 253 ) + +Syntax +SUM(value;value;...) + +Parameters +CommentType +ValuesFLOAT + +Examples +SUM(12;5;7) equals 24 + +Related Functions +SUMA  + + + + + +SUMA +The SUMA() function calculates the sum of all the values given as parameters. You can calculate the sum of a range SUMA(A1:B5) or a list of values like SUMA(12;5;12.5). If a parameter contains text or the boolean value FALSE it is counted as 0, if a parameter evaluates to TRUE it is counted as 1. +Return type +A floating point value (like 1.3, 0.343, 253 ) + +Syntax +SUM(value;value;...) + +Parameters +CommentType +ValuesFLOAT + +Examples +SUMA(12;5; 7) equals 24 + +Related Functions +SUM  + + + + + +SUMIF +The SUMIF() function calculates the sum of all values given as parameters which match the criteria. The sum range is optional. If not supplied, the values in the check range are summed. The length of the check range should be equal or less than the length of the sum range. +Return type +A floating point value (like 1.3, 0.343, 253 ) + +Syntax +SUMIF(checkrange;criteria;sumrange) + +Parameters +CommentType +Check rangeA range of floating point values (like 1.3, 0.343, 253 ) +CriteriaText +Sum rangeA range of floating point values (like 1.3, 0.343, 253 ) + +Examples +SUMIF(A1:A4;">1") sums all values in range A1:A4 which match >1 + +Related Functions +SUM  + + + + + +PRODUCT +The PRODUCT() function calculates the product of all the values given as parameters. You can calculate the product of a range: PRODUCT(A1:B5) or a list of values like product(12;5;12.5). If no numeric values are found 0 is returned. +Return type +A floating point value (like 1.3, 0.343, 253 ) + +Syntax +PRODUCT(value;value;...) + +Parameters +CommentType +ValuesFLOAT + +Examples +PRODUCT(3;5;7) equals 105 + +Related Functions +MULTIPLY  + + + + + +KPRODUCT +The KPRODUCT() function calculates the product of all the values given as parameters. You can calculate the product of a range: KPRODUCT(A1:B5) or a list of values like KPRODUCT(12;5;12.5). If no numeric values are found 1 is returned. +Return type +A floating point value (like 1.3, 0.343, 253 ) + +Syntax +KPRODUCT(value;value;...) + +Parameters +CommentType +ValuesFLOAT + +Examples +KPRODUCT(3;5;7) equals 105 + +Related Functions +G_PRODUCT  + + + + + +G_PRODUCT +The G_PRODUCT() function is the same as KPRODUCT. It is provided for Gnumeric compatibility. +Return type +A floating point value (like 1.3, 0.343, 253 ) + +Syntax +G_PRODUCT(value;value;...) + +Parameters +CommentType +ValuesFLOAT + +Related Functions +KPRODUCT  + + + + + +DIV +The DIV() function divides the first value by the other values in turn. +Return type +A floating point value (like 1.3, 0.343, 253 ) + +Syntax +DIV(value;value;...) + +Parameters +CommentType +ValuesFLOAT + +Examples +DIV(20;2;2) returns 5 + +Related Functions +MULTIPLY  + + + + + +SUMSQ +The SUMSQ() function calculates the sum of all the squares of values given as parameters. You can calculate the sum of a range SUMSQ(A1:B5) or a list of values like SUMSQ(12;5;12.5). +Return type +A floating point value (like 1.3, 0.343, 253 ) + +Syntax +SUMSQ(value;value;...) + + +Parameters +CommentType +ValuesFLOAT + +Examples +SUMSQ(12;5;7) equals 218 + +Related Functions +SUM  + + + + + +MAX +The MAX() function returns the largest value given in the parameters. String and logical values are ignored. +Return type +A floating point value (like 1.3, 0.343, 253 ) + +Syntax +MAX(value;value;...) + +Parameters +CommentType +ValuesFLOAT + +Examples +MAX(12;5; 7) returns 12 + +Related Functions +COUNT  + + + + + +MAXA +The MAXA() function returns the largest value given in the parameters. TRUE evaluates to 1, FALSE evaluates to 0. String values are ignored. +Return type +A floating point value (like 1.3, 0.343, 253 ) + +Syntax +MAXA(value;value;...) + +Parameters +CommentType +ValuesFLOAT + +Examples +MAXA(12;5; 7) returns 12 + +Related Functions +COUNT  + + + + + +MIN +The MIN() function returns the smallest value given in the parameters. String and logical values are ignored. +Return type +A floating point value (like 1.3, 0.343, 253 ) + +Syntax +MIN(value;value;...) + +Parameters +CommentType +ValuesFLOAT + +Examples +MIN(12;5; 7) returns 5 + +Related Functions +COUNT  + + + + + +MINA +The MINA() function returns the smallest value given in the parameters. TRUE evaluates to 1, FALSE to 0. String values are ignored. +Return type +A floating point value (like 1.3, 0.343, 253 ) + +Syntax +MINA(value;value;...) + +Parameters +CommentType +ValuesFLOAT + +Examples +MINA(12;5; 7) returns 5 + +Related Functions +COUNT  + + + + + +MULTIPLY +The MULTIPLY() function multiplies all the values given in the parameters. You can multiply values given by a range MULTIPLY(A1:B5) or a list of values like MULTIPLY(12;5;12.5). It's equivalent to PRODUCT. +Return type +A floating point value (like 1.3, 0.343, 253 ) + +Syntax +MULTIPLY(value;value;...) + +Parameters +CommentType +ValuesFLOAT + +Examples +MULTIPLY(12;5;7) equals 420 + +Related Functions +DIV  + + + + + +MULTINOMIAL +The MULTINOMIAL() function returns the multinomial of each number in the parameters. It uses this formula for MULTINOMIAL(a,b,c): +(a+b+c)! / a!b!c! +Return type +A floating point value (like 1.3, 0.343, 253 ) + +Syntax +MULTINOMIAL(value;value;...) + +Parameters +CommentType +ValuesFLOAT + +Examples +MULTINOMIAL(3;4;5) equals 27720 + + + + + +SQRT +The SQRT() function returns the non-negative square root of the argument. It is an error if the argument is negative. +Return type +A floating point value (like 1.3, 0.343, 253 ) + +Syntax +SQRT(x) + +Parameters +CommentType +A floating point valueA floating point value (like 1.3, 0.343, 253 ) + +Examples +SQRT(9) equals 3 + +Related Functions +IMSQRT  + + + + + +SQRTPI +The SQRTPI() function returns the non-negative square root of x * PI. It is an error if the argument is negative. +Return type +A floating point value (like 1.3, 0.343, 253 ) + +Syntax +SQRTPI(x) + +Parameters +CommentType +A floating point valueA floating point value (like 1.3, 0.343, 253 ) + +Examples +SQRTPI(2) equals 2.506628 + + + + + +LN +The LN() function returns the natural logarithm of x. +Return type +A floating point value (like 1.3, 0.343, 253 ) + +Syntax +LN(x) + +Parameters +CommentType +A floating point valueA floating point value (like 1.3, 0.343, 253 ) + +Examples +LN(0.8) equals -0.22314355 + +Related Functions +LOG  + + + + + +LOGN +The LOGn() function returns the base n logarithm of x. +Return type +A floating point value (like 1.3, 0.343, 253 ) + +Syntax +LOGn(value;base) + +Parameters +CommentType +A floating point valueA floating point value (like 1.3, 0.343, 253 ) +BaseA floating point value (like 1.3, 0.343, 253 ) + +Examples +LOGn(12;10) equals 1.07918125 + +Related Functions +LOG  + + + + + +ROOTN +The ROOTN() function returns the non-negative nth root of x. +Return type +A floating point value (like 1.3, 0.343, 253 ) + +Syntax +ROOTN(x;n) + +Parameters +CommentType +A floating point valueA floating point value (like 1.3, 0.343, 253 ) +ValueWhole number (like 1, 132, 2344) + +Examples +ROOTN(9;2) equals 3 + +Related Functions +SQRT  + + + + + +CUR +The CUR() function returns the non-negative cube root of x. +Return type +A floating point value (like 1.3, 0.343, 253 ) + +Syntax +CUR(x) + +Parameters +CommentType +A floating point valueA floating point value (like 1.3, 0.343, 253 ) + +Examples +CUR(27) equals 3 + +Related Functions +SQRT  + + + + + +LOG +The LOG() function returns the base-10 logarithm of x. +Return type +A floating point value (like 1.3, 0.343, 253 ) + +Syntax +LOG(x) + +Parameters +CommentType +A floating point value, greater than zeroA floating point value (like 1.3, 0.343, 253 ) + +Examples +LOG(0.8) equals -0.09691001 + +Related Functions +LN  + + + + + +LOG10 +The LOG10() function returns the base-10 logarithm of the argument. +Return type +A floating point value (like 1.3, 0.343, 253 ) + +Syntax +LOG10(x) + +Parameters +CommentType +A positive floating point valueA floating point value (like 1.3, 0.343, 253 ) + +Examples +LOG10(10) equals 1. + +Related Functions +LN  + + + + + +LOG2 +The LOG2() function returns the base-2 logarithm of x. +Return type +A floating point value (like 1.3, 0.343, 253 ) + +Syntax +LOG2(x) + +Parameters +CommentType +A floating point valueA floating point value (like 1.3, 0.343, 253 ) + +Examples +LOG2(0.8) equals -0.32192809 + +Related Functions +LN  + + + + + +EXP +The EXP() function returns the value of e (the base of natural logarithms) raised to the power of x. +Return type +A floating point value (like 1.3, 0.343, 253 ) + +Syntax +EXP(x) + +Parameters +CommentType +A floating point valueA floating point value (like 1.3, 0.343, 253 ) + +Examples +EXP(9) equals 8 103.08392758 + +Related Functions +LN  + + + + + +CEIL +The CEIL() function rounds x up to the nearest integer, returning that value as a double. +Return type +A floating point value (like 1.3, 0.343, 253 ) + +Syntax +CEIL(x) + +Parameters +CommentType +A floating point valueA floating point value (like 1.3, 0.343, 253 ) + +Examples +CEIL(12.5) equals 13 + +Related Functions +CEILING  + + + + + +CEILING +The CEILING() function rounds x up (away from zero) to the nearest multiple of Significance. The default value for Significance is 1 (or -1 if the value is negative), which means rounding up to the nearest integer. If the Mode parameter is non-zero, the function rounds away from zero, instead of up towards the positive infinity. +Return type +A floating point value (like 1.3, 0.343, 253 ) + +Syntax +CEILING(x) + +Parameters +CommentType +A floating point valueA floating point value (like 1.3, 0.343, 253 ) +Significance (optional)A floating point value (like 1.3, 0.343, 253 ) +Mode (optional)A floating point value (like 1.3, 0.343, 253 ) + +Examples +CEILING(12.5) equals 13 + +Related Functions +CEIL  + + + + + +FLOOR +Round a number x down to the nearest multiple of the second parameter, Significance. +The FLOOR() function rounds x down (towards zero) to the nearest multiple of Significance. + The default value for Significance is 1, if x is positive. It is -1, if the value is negative, + which means rounding up to the nearest integer. + If mode is given and not equal to zero, the amount of x is rounded toward zero to a multiple + of significance and then the sign applied. Otherwise, it rounds toward negative infinity. + If any of the two parameters x or Significance is zero, the result is zero. +Return type +A floating point value (like 1.3, 0.343, 253 ) + +Syntax +FLOOR(x) + +Parameters +CommentType +A floating point valueA floating point value (like 1.3, 0.343, 253 ) +Significance (optional)A floating point value (like 1.3, 0.343, 253 ) +Mode (optional)A floating point value (like 1.3, 0.343, 253 ) + +Examples +FLOOR(12.5) equals 12 + +Related Functions +CEIL  + + + + + +ABS +The ABS() function returns the absolute value of the floating-point number x. +Return type +A floating point value (like 1.3, 0.343, 253 ) + +Syntax +ABS(x) + +Parameters +CommentType +A floating point valueA floating point value (like 1.3, 0.343, 253 ) + +Examples +ABS(12.5) equals 12.5 + + + + + +INT +The INT() function returns the integer part of the value. +Return type +Whole number (like 1, 132, 2344) + +Syntax +INT(x) + +Parameters +CommentType +A floating point valueA floating point value (like 1.3, 0.343, 253 ) + +Examples +INT(12.55) equals 12 + +Related Functions +FLOOR  + + + + + +RAND +The RAND() function returns a pseudo-random number between 0 and 1. +Return type +A floating point value (like 1.3, 0.343, 253 ) + +Syntax +RAND() + +Parameters + + +Examples +RAND() equals for example 0.78309922... + +Related Functions +RANDBETWEEN  + + + + + + +RANDEXP +The RANDEXP() function returns an exponentially-distributed pseudo-random number. +Return type +A floating point value (like 1.3, 0.343, 253 ) + +Syntax +RANDEXP(x) + +Parameters +CommentType +A floating point value (greater 0)A floating point value (like 1.3, 0.343, 253 ) + +Examples +RANDEXP(0.88) + +Related Functions +RAND  + + + + + +RANDPOISSON +The RANDPOISSON() function returns a poisson-distributed pseudo-random number. +Return type +A floating point value (like 1.3, 0.343, 253 ) + +Syntax +RANDPOISSON(x) + +Parameters +CommentType +A floating point value (greater 0)A floating point value (like 1.3, 0.343, 253 ) +A floating point valueA floating point value (like 1.3, 0.343, 253 ) + +Examples +RANDPOISSON(4) + +Related Functions +RAND  + + + + + +RANDBINOM +The RANDBINOM() function returns a binomially-distributed pseudo-random number. +Return type +A floating point value (like 1.3, 0.343, 253 ) + +Syntax +RANDBINOM(x) + +Parameters +CommentType +A floating point value (between 0 and 1)A floating point value (like 1.3, 0.343, 253 ) +Trials (greater 0)Whole number (like 1, 132, 2344) + +Examples +RANDBINOM(4) + +Related Functions +RAND  + + + + + +RANDNEGBINOM +The RANDNEGBINOM() function returns a negative binomially-distributed pseudo-random number. +Return type +A floating point value (like 1.3, 0.343, 253 ) + +Syntax +RANDNEGBINOM(x) + +Parameters +CommentType +A floating point value (between 0 and 1)A floating point value (like 1.3, 0.343, 253 ) +Failures (greater 0)Whole number (like 1, 132, 2344) + +Examples +RANDNEGBINOM(4) + +Related Functions +RAND  + + + + + +RANDBERNOULLI +The RANDBERNOULLI() function returns a Bernoulli-distributed pseudo-random number. +Return type +A floating point value (like 1.3, 0.343, 253 ) + +Syntax +RANDBERNOULLI(x) + +Parameters +CommentType +A floating point value (between 0 and 1)A floating point value (like 1.3, 0.343, 253 ) +A floating point valueA floating point value (like 1.3, 0.343, 253 ) + +Examples +RANDBERNOULLI(0.45) + +Related Functions +RAND  + + + + + +RANDNORM +The RANDNORM() function returns a Normal(Gaussian)-distributed pseudo-random number. +Return type +A floating point value (like 1.3, 0.343, 253 ) + +Syntax +RANDNORM(mu; sigma) + +Parameters +CommentType +Mean value of the normal distributionA floating point value (like 1.3, 0.343, 253 ) +Dispersion of the normal distributionA floating point value (like 1.3, 0.343, 253 ) + +Examples +RANDNORM(0; 1) + +Related Functions +RAND  + + + + + +RANDBETWEEN +The RANDBETWEEN() function returns a pseudo-random number between bottom and top value. If bottom > top this function returns Err. +Return type +A floating point value (like 1.3, 0.343, 253 ) + +Syntax +RANDBETWEEN(bottom;top) + +Parameters +CommentType +Bottom valueWhole number (like 1, 132, 2344) +Top valueWhole number (like 1, 132, 2344) + +Examples +RANDBETWEEN(12;78) equals for example 61.0811... + +Related Functions +RAND  + + + + + +MROUND +The MROUND() function returns the value rounded to the specified multiple. The value and the multiple must have the same sign +Return type +A floating point value (like 1.3, 0.343, 253 ) + +Syntax +MROUND(value; multiple) + +Parameters +CommentType +Floating point valueA floating point value (like 1.3, 0.343, 253 ) +MultipleA floating point value (like 1.3, 0.343, 253 ) + +Examples +MROUND(1.252; 0.5) equals 1.5 + +Related Functions +ROUND  + + + + + +ROUND +The ROUND(value;[digits]) function returns value rounded. Digits is the number of digits to which you want to round that number. If digits is zero or omitted, value is rounded up to the nearest integer. If digits is smaller than zero, the corresponding integer part of the number is rounded. +Return type +A floating point value (like 1.3, 0.343, 253 ) + +Syntax +ROUND(value;[digits]) + +Parameters +CommentType +Floating point valueA floating point value (like 1.3, 0.343, 253 ) +DigitsWhole number (like 1, 132, 2344) + +Examples +ROUND(1.252;2) equals 1.25 + +Related Functions +MROUND  + + + + + +ROUNDUP +The ROUNDUP(value;[digits]) function returns value rounded so that its absolute value is greater. Digits is the number of digits to which you want to round that number. If digits is zero or omitted, value is rounded up to the nearest integer. +Return type +A floating point value (like 1.3, 0.343, 253 ) + +Syntax +ROUNDUP(value;[digits]) + +Parameters +CommentType +Floating point valueA floating point value (like 1.3, 0.343, 253 ) +DigitsWhole number (like 1, 132, 2344) + +Examples +ROUNDUP(1.252) equals 2 + +Related Functions +ROUND  + + + + + +ROUNDDOWN +The ROUNDDOWN(value;[digits]) function returns value rounded so that its absolute value is lesser. Digits is the number of digits to which you want to round that number. If digits is zero or omitted, value is rounded down to the nearest integer. +Return type +A floating point value (like 1.3, 0.343, 253 ) + +Syntax +ROUNDDOWN(value;[digits]) + +Parameters +CommentType +Floating point valueA floating point value (like 1.3, 0.343, 253 ) +DigitsWhole number (like 1, 132, 2344) + +Examples +ROUNDDOWN(1.252) equals 1 + +Related Functions +ROUND  + + + + + +FIB +Function FIB calculates the Nth term of a Fibonacci sequence (1, 1, 2, 3, 5, 8, 13, 21...), in which each number, after the first two, is the sum of the two numbers immediately preceding it. FIB(0) is defined to be 0. +Return type +A floating point value (like 1.3, 0.343, 253 ) + +Syntax +FIB(n) + +Parameters +CommentType +Nth termA floating point value (like 1.3, 0.343, 253 ) + +Examples +FIB(9) returns 34 + + + + + +QUOTIENT +Function QUOTIENT returns the integer portion of numerator/denumerator. +Return type +Whole number (like 1, 132, 2344) + +Syntax +QUOTIENT(numerator;denumerator) + +Parameters +CommentType +NumeratorA floating point value (like 1.3, 0.343, 253 ) +DenumeratorA floating point value (like 1.3, 0.343, 253 ) + +Examples +QUOTIENT(21;4) returns 5 + +Related Functions +INT  + + + + + +MDETERM +Function MDETERM returns the determinant of a given matrix. The matrix must be of type n x n. +Return type +A floating point value (like 1.3, 0.343, 253 ) + +Syntax +MDETERM(matrix) + +Parameters +CommentType +RangeA range of floating point values (like 1.3, 0.343, 253 ) + +Examples +MDETERM(A1:C3) + +Related Functions +MMULT  + + + + + +MMULT +Function MMULT multiplies two matrices. Number of columns of the first matrix must be the same as row count of the second one. The result is a matrix. +Return type +A range of floating point values (like 1.3, 0.343, 253 ) + +Syntax +MMULT(matrix1;matrix2) + +Parameters +CommentType +First matrixA range of floating point values (like 1.3, 0.343, 253 ) +Second matrixA range of floating point values (like 1.3, 0.343, 253 ) + +Examples +MMULT(A1:C3) + +Related Functions +MDETERM  + + + + + +MINVERSE +Calculates the inverse of the matrix. +The matrix multiplied with its inverse results in the unity matrix of the same dimension. +Invertible matrices have a non-zero determinant. +Return type +A range of floating point values (like 1.3, 0.343, 253 ) + +Syntax +MINVERSE(matrix) + +Parameters +CommentType +MatrixA range of floating point values (like 1.3, 0.343, 253 ) + +Examples +MINVERSE(A1:C3) + +Related Functions +MDETERM  + + + + + +MUNIT +Creates the unity matrix of the given dimension. +Return type +A range of floating point values (like 1.3, 0.343, 253 ) + +Syntax +MUNIT(dimension) + +Parameters +CommentType +DimensionInteger + +Examples +MUNIT(3) creates a 3x3 unity matrix + +Related Functions +MINVERSE  + + + + + +TRANSPOSE +Returns the transpose of a matrix, i.e. rows and columns of the matrix are exchanged. +Return type +A range of floating point values (like 1.3, 0.343, 253 ) + +Syntax +TRANSPOSE(matrix) + +Parameters +CommentType +MatrixA range of floating point values (like 1.3, 0.343, 253 ) + +Examples +TRANSPOSE(A1:C3) + + + + + + + Binary files /tmp/zZ3vRDbxE1/calligra-2.3.86/doc/tables/hi22-action-money.png and /tmp/BxERTtUs6S/calligra-2.3.87/doc/tables/hi22-action-money.png differ Binary files /tmp/zZ3vRDbxE1/calligra-2.3.86/doc/tables/hideformula1.png and /tmp/BxERTtUs6S/calligra-2.3.87/doc/tables/hideformula1.png differ Binary files /tmp/zZ3vRDbxE1/calligra-2.3.86/doc/tables/hideformula2.png and /tmp/BxERTtUs6S/calligra-2.3.87/doc/tables/hideformula2.png differ Binary files /tmp/zZ3vRDbxE1/calligra-2.3.86/doc/tables/hideformula3.png and /tmp/BxERTtUs6S/calligra-2.3.87/doc/tables/hideformula3.png differ Binary files /tmp/zZ3vRDbxE1/calligra-2.3.86/doc/tables/hideformula4.png and /tmp/BxERTtUs6S/calligra-2.3.87/doc/tables/hideformula4.png differ Binary files /tmp/zZ3vRDbxE1/calligra-2.3.86/doc/tables/hideformula5.png and /tmp/BxERTtUs6S/calligra-2.3.87/doc/tables/hideformula5.png differ diff -Nru calligra-2.3.86/doc/tables/importexport.docbook calligra-2.3.87/doc/tables/importexport.docbook --- calligra-2.3.86/doc/tables/importexport.docbook 2012-01-07 03:25:00.000000000 +0000 +++ calligra-2.3.87/doc/tables/importexport.docbook 1970-01-01 00:00:00.000000000 +0000 @@ -1,105 +0,0 @@ - - - - -Pamela -Robert - -
pamroberts@blueyonder.co.uk
-
-
- -
-
-Importing and Exporting Foreign Formats -&kspread; has a limited ability to import (read) and export (write) -spreadsheet files with foreign formats. &kspread;'s capabilities at the time -of writing are summarized in the table below, for more up to date -information visit -http://www.calligra.org/filters/status.phtml. - - -
- - Format - Import - Export - - - -Applix Spreadsheet -Beta -None - - -Comma Separated Values (CSV -) -Good -Good - - -dBase -Beta -None - - -Excel 97/2000 -Good -None - - -Gnumeric -Beta -Beta - - -HTML -None -Beta - - -Quattro Pro -Beta -None - - - - -To import a foreign file just load it as though it were a &kspread; -native file with File -Open.... -To export a &kspread; file in a different format select -FileSave As... -and select the format from the Filter: combo box. -Although &kspread; automatically adds a -.ksp extension to the names of files saved in its native format, -you should add the correct extension for foreign formats. - - -<acronym>CSV</acronym> Data -Tables of data are often held in text files with the values in a -line being separated by a comma, space, tab or other character, -for example 123, 456, 789, abcd, efgh. Such files -are commonly called CSV (Comma Separated -Values) files, even though the separating character may not be a comma. -If you ask &kspread; to open a text file it assumes that the file is -in CSV format and launches a dialog box that allows you to -specify the delimiter (separating character) used by the file, and shows how -the data items will be placed into different spreadsheet cells. -Other options in this dialog box let you define the Format - of the spreadsheet cells, whether text quote characters should be -removed, and whether the first line(s) of the file should be ignored. - - - - - Binary files /tmp/zZ3vRDbxE1/calligra-2.3.86/doc/tables/increasedecimal.png and /tmp/BxERTtUs6S/calligra-2.3.87/doc/tables/increasedecimal.png differ diff -Nru calligra-2.3.86/doc/tables/index.docbook calligra-2.3.87/doc/tables/index.docbook --- calligra-2.3.86/doc/tables/index.docbook 2012-01-07 03:25:00.000000000 +0000 +++ calligra-2.3.87/doc/tables/index.docbook 2012-01-28 07:04:47.000000000 +0000 @@ -1,25 +1,26 @@ + Calligra Tables"> + Calligra Words"> + Calligra Stage"> + - + - - - + ]> -The &kspread; Handbook +The &tables; Handbook @@ -59,20 +60,20 @@ &FDLNotice; -2006-06-12 -1.5.2 +2012-01-01 +2.4 -&kspread; is a full featured spreadsheet program. +&tables; is a full featured spreadsheet program. KDE -Koffice -KSpread +Calligra +Tables Spreadsheet @@ -83,12 +84,16 @@ This handbook is dedicated to the memory of Visicalc. + + Please check http://docs.kde.org +for updated versions of this document. + -&kspread; is a full featured spreadsheet program. It is part of the &koffice; -productivity suite for the K Desktop Environment (&kde;). -Other &koffice; applications include &kword;, (word processing), -&kpresenter; (slide presentation creator) and &kchart; (for producing charts -and graphs) among others. +&tables; is a full featured spreadsheet program. It is part of the &calligra; +productivity suite for &kde;. +Other &calligra; applications include &words;, (word processing), +&stage; (slide presentation creator) among others. You might care to visit http://www.kde.org for more information about &kde; in general, or the @@ -107,21 +112,19 @@ &configdialog; -&a11y; - &commands; -&faq; +&functions; Credits and License -&kspread; +&tables; -Program copyright 1998-2002 The &kspread; Team: +Program copyright 1998-2011, The &tables; Team: @@ -165,7 +168,7 @@ &Pamela.Roberts.mail; -Minor updates to documentation for &koffice; 1.3 by +Minor updates to documentation for KOffice 1.3 by &Philip.Rodrigues; &Philip.Rodrigues.mail;. &underFDL; @@ -175,11 +178,11 @@ Installation -&kspread; is part of &kde;'s &koffice; package and uses various -&koffice; libraries. &koffice; itself is part of &kde; and depends on the +&tables; is part of &kde;'s &calligra; package and uses various +&calligra; libraries. &calligra; itself is part of &kde; and depends on the general &kde; libraries. -For instructions on acquiring and installing &kde;, &koffice; and -&kspread; please visit +For instructions on acquiring and installing &kde;, &calligra; and +&tables; please visit http://www.kde.org and http://www.calligra.org. Binary files /tmp/zZ3vRDbxE1/calligra-2.3.86/doc/tables/kbd-focus-ext.png and /tmp/BxERTtUs6S/calligra-2.3.87/doc/tables/kbd-focus-ext.png differ Binary files /tmp/zZ3vRDbxE1/calligra-2.3.86/doc/tables/mousenav.png and /tmp/BxERTtUs6S/calligra-2.3.87/doc/tables/mousenav.png differ Binary files /tmp/zZ3vRDbxE1/calligra-2.3.86/doc/tables/newdocument.png and /tmp/BxERTtUs6S/calligra-2.3.87/doc/tables/newdocument.png differ Binary files /tmp/zZ3vRDbxE1/calligra-2.3.86/doc/tables/percent.png and /tmp/BxERTtUs6S/calligra-2.3.87/doc/tables/percent.png differ Binary files /tmp/zZ3vRDbxE1/calligra-2.3.86/doc/tables/sheetproperties.png and /tmp/BxERTtUs6S/calligra-2.3.87/doc/tables/sheetproperties.png differ Binary files /tmp/zZ3vRDbxE1/calligra-2.3.86/doc/tables/shortcut1.png and /tmp/BxERTtUs6S/calligra-2.3.87/doc/tables/shortcut1.png differ Binary files /tmp/zZ3vRDbxE1/calligra-2.3.86/doc/tables/shortcut2.png and /tmp/BxERTtUs6S/calligra-2.3.87/doc/tables/shortcut2.png differ Binary files /tmp/zZ3vRDbxE1/calligra-2.3.86/doc/tables/shortcut3.png and /tmp/BxERTtUs6S/calligra-2.3.87/doc/tables/shortcut3.png differ Binary files /tmp/zZ3vRDbxE1/calligra-2.3.86/doc/tables/sort1.png and /tmp/BxERTtUs6S/calligra-2.3.87/doc/tables/sort1.png differ Binary files /tmp/zZ3vRDbxE1/calligra-2.3.86/doc/tables/starting1.png and /tmp/BxERTtUs6S/calligra-2.3.87/doc/tables/starting1.png differ Binary files /tmp/zZ3vRDbxE1/calligra-2.3.86/doc/tables/tts.png and /tmp/BxERTtUs6S/calligra-2.3.87/doc/tables/tts.png differ diff -Nru calligra-2.3.86/doc/thesaurus/index.docbook calligra-2.3.87/doc/thesaurus/index.docbook --- calligra-2.3.86/doc/thesaurus/index.docbook 2012-01-07 03:25:00.000000000 +0000 +++ calligra-2.3.87/doc/thesaurus/index.docbook 2012-01-28 07:04:47.000000000 +0000 @@ -1,8 +1,9 @@ + Calligra Words"> - + ]> @@ -18,8 +19,8 @@ -2003-04-12 -0.95.00 +2012-01-12 +1.0 (Calligra 2.4) 2002 @@ -50,6 +51,9 @@ +Thesaurus + + The Thesaurus Tab The Thesaurus tab offers a small thesaurus, @@ -62,20 +66,21 @@ always replace a word with any synonym. You can double click on a word to search for its synonyms &etc;. -You can also type a word directly into the Search for: +You can also type a word directly into the search box at the top and press -Return. The word which is currently visible in the +Return. + We have to keep the data file small so that it can be -included in &koffice; — this introduces several limitations +included in &calligra; — this introduces several limitations (compared to &wordnet;): @@ -93,24 +98,24 @@ and very few words specific to &kde;). Please do not report bugs in the thesaurus -to the &wordnet; project, but to &kde;. - - + to the &wordnet; project, but to &kde;. + - + - + The &wordnet; tab The &wordnet; tab provides a user interface @@ -118,17 +123,17 @@ &wordnet; is an online lexical reference system whose design is inspired by current psycholinguistic theories of human lexical memory. The &kthesaurus; user interface offers nearly all options -which are available on the command line. It calls the wn binary, +which are available on the command line. It calls the wn, which has to be in your PATH. To learn more about &wordnet;, please see the &wordnet; man pages or have a look at the &wordnet; homepage. - + - + Copyright and Licensing @@ -139,6 +144,8 @@ &underFDL; &underGPL; + + diff -Nru calligra-2.3.86/filters/flow/imageexport/flow_image_export.desktop calligra-2.3.87/filters/flow/imageexport/flow_image_export.desktop --- calligra-2.3.86/filters/flow/imageexport/flow_image_export.desktop 2012-01-07 03:25:00.000000000 +0000 +++ calligra-2.3.87/filters/flow/imageexport/flow_image_export.desktop 2012-01-28 07:04:47.000000000 +0000 @@ -3,6 +3,7 @@ Name=Flow Image Export Filter Name[bg]=Филтър за изнасяне на изображения от Flow Name[ca]=Filtre d'exportació d'imatges del Flow +Name[ca@valencia]=Filtre d'exportació d'imatges del Flow Name[cs]=Exportní filtr do formátu obrázků Proud Name[da]=Billedeksportfilter til Flow Name[de]=Flow-Bild-Exportfilter @@ -10,6 +11,7 @@ Name[en_GB]=Flow Image Export Filter Name[es]=Filtro de Flow de exportación a imagen Name[et]=Flow pildi ekspordifilter +Name[hu]=Flow képexportáló szűrő Name[it]=Filtro di esportazione delle immagini di Flow Name[kk]=Flow кескінге экспорт сүзгісі Name[nb]=Flow bilde-eksportfilter diff -Nru calligra-2.3.86/filters/generic_wrapper/generic_filter.desktop calligra-2.3.87/filters/generic_wrapper/generic_filter.desktop --- calligra-2.3.86/filters/generic_wrapper/generic_filter.desktop 2012-01-07 03:25:00.000000000 +0000 +++ calligra-2.3.87/filters/generic_wrapper/generic_filter.desktop 2012-01-28 07:04:47.000000000 +0000 @@ -2,11 +2,14 @@ Name=Generic Calligra Filter Name[bg]=Общ филтър за Calligra Name[ca]=Filtre genèric del Calligra +Name[ca@valencia]=Filtre genèric del Calligra Name[cs]=Obecný filtr Calligra Name[da]=Generisk Calligra-filter Name[de]=Generischer Calligra-Filter +Name[el]=Γενικό φίλτρο του Calligra Name[es]=Filtro genérico de Calligra Name[et]=Calligra üldine filter +Name[hu]=Általános Calligra szűrő Name[it]=Filtro generico di Calligra Name[kk]=Жалпы Calligra сүзгісі Name[nb]=Alment Calligra-filter diff -Nru calligra-2.3.86/filters/karbon/karbon1.x/karbon_1x_import.desktop calligra-2.3.87/filters/karbon/karbon1.x/karbon_1x_import.desktop --- calligra-2.3.86/filters/karbon/karbon1.x/karbon_1x_import.desktop 2012-01-07 03:25:00.000000000 +0000 +++ calligra-2.3.87/filters/karbon/karbon1.x/karbon_1x_import.desktop 2012-01-28 07:04:47.000000000 +0000 @@ -20,6 +20,7 @@ Name[he]=מסנן ייבוא של Karbon 1.x Name[hi]=कार्बन १.x आयात फ़िल्टर Name[hne]=कार्बन १.x आयात फिल्टर +Name[hu]=Karbon 1.x importszűrő Name[it]=Filtro di importazione per Karbon 1.x Name[ja]=Karbon 1.x インポートフィルタ Name[kk]=Karbon 1.x импорт сүзгісі diff -Nru calligra-2.3.86/filters/karbon/pdf/karbon_pdf_import.desktop calligra-2.3.87/filters/karbon/pdf/karbon_pdf_import.desktop --- calligra-2.3.86/filters/karbon/pdf/karbon_pdf_import.desktop 2012-01-07 03:25:00.000000000 +0000 +++ calligra-2.3.87/filters/karbon/pdf/karbon_pdf_import.desktop 2012-01-28 07:04:47.000000000 +0000 @@ -16,6 +16,7 @@ Name[gl]=Filtro de Importación de PDF para Karbon14 Name[he]=מסנן ייבוא מ־PDF ל־Karbon Name[hne]=कार्बन पीडीएफ आयात फिल्टर +Name[hu]=Karbon PDF importszűrő Name[it]=Filtro di importazione PDF per Karbon Name[ja]=Karbon PDF インポートフィルタ Name[kk]=PDF -> Karbon импорт сүзгісі diff -Nru calligra-2.3.86/filters/karbon/svg/karbon_svgz_import.desktop calligra-2.3.87/filters/karbon/svg/karbon_svgz_import.desktop --- calligra-2.3.86/filters/karbon/svg/karbon_svgz_import.desktop 2012-01-07 03:25:00.000000000 +0000 +++ calligra-2.3.87/filters/karbon/svg/karbon_svgz_import.desktop 2012-01-28 07:04:47.000000000 +0000 @@ -19,6 +19,7 @@ Name[he]=מסנן ייבוא מ־SVGZ ל־Karbon Name[hi]=कार्बन एसवीजीज़ेड आयात फ़िल्टर Name[hne]=कार्बन एसवीजीजेड आयात फिल्टर +Name[hu]=Karbon SVGZ importszűrő Name[it]=Filtro di importazione SVGZ per Karbon Name[ja]=Karbon SVGZ インポートフィルタ Name[kk]=SVGZ -> Karbon импорт сүзгісі diff -Nru calligra-2.3.86/filters/karbon/wmf/WmfImportParser.cpp calligra-2.3.87/filters/karbon/wmf/WmfImportParser.cpp --- calligra-2.3.86/filters/karbon/wmf/WmfImportParser.cpp 2012-01-07 03:25:00.000000000 +0000 +++ calligra-2.3.87/filters/karbon/wmf/WmfImportParser.cpp 2012-01-28 07:04:47.000000000 +0000 @@ -531,7 +531,7 @@ return "stroke:none;"; } - const qreal width = context.pen.width() > 1.0 ? qMax(1.0, context.pen.width() * m_scaleX) : 1.0; + const qreal width = context.pen.width() > qreal(1.0) ? qMax(qreal(1.0), context.pen.width() * m_scaleX) : qreal(1.0); QString strokeStyle; diff -Nru calligra-2.3.86/filters/karbon/wpg/karbon_wpg_import.desktop calligra-2.3.87/filters/karbon/wpg/karbon_wpg_import.desktop --- calligra-2.3.86/filters/karbon/wpg/karbon_wpg_import.desktop 2012-01-07 03:25:00.000000000 +0000 +++ calligra-2.3.87/filters/karbon/wpg/karbon_wpg_import.desktop 2012-01-28 07:04:47.000000000 +0000 @@ -21,6 +21,7 @@ Name[he]=מסנן ייבוא מ־WPG ל־Karbon Name[hi]=कार्बन डबल्यूपीजी आयात फ़िल्टर Name[hne]=कार्बन डबल्यूपीजी आयात फिल्टर +Name[hu]=Karbon WPG importszűrő Name[it]=Filtro di importazione WPG per Karbon Name[ja]=Karbon WPG インポートフィルタ Name[kk]=WPG -> Karbon импорт сүзгісі Binary files /tmp/zZ3vRDbxE1/calligra-2.3.86/filters/libmso/generated/mso.jar and /tmp/BxERTtUs6S/calligra-2.3.87/filters/libmso/generated/mso.jar differ diff -Nru calligra-2.3.86/filters/libmso/generated/simpleParser.cpp calligra-2.3.87/filters/libmso/generated/simpleParser.cpp --- calligra-2.3.86/filters/libmso/generated/simpleParser.cpp 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/filters/libmso/generated/simpleParser.cpp 2012-01-28 07:04:47.000000000 +0000 @@ -6026,205 +6026,6 @@ throw IncorrectValueException(in.getPosition(), "((quint8)_s.reserved) == 0"); } } -void MSO::parseTextContainer(LEInputStream& in, TextContainer& _s) { - _s.streamOffset = in.getPosition(); - LEInputStream::Mark _m; - bool _possiblyPresent; - bool _atend; - parseTextHeaderAtom(in, _s.textHeaderAtom); - _m = in.setMark(); - RecordHeader _choice(&_s); - parseRecordHeader(in, _choice); - in.rewind(_m); - qint64 startPos = in.getPosition(); - if (startPos == in.getPosition() && ((_choice.recVer == 0)&&(_choice.recInstance == 0)&&(_choice.recType == 0xFA0)&&(_choice.recLen%2==0))) { - _s.text = TextContainer::choice1060411409(new TextCharsAtom(&_s)); - parseTextCharsAtom(in, *(TextCharsAtom*)_s.text.data()); - } - if (startPos == in.getPosition() && ((_choice.recVer == 0)&&(_choice.recInstance == 0)&&(_choice.recType == 0xFA8))) { - _s.text = TextContainer::choice1060411409(new TextBytesAtom(&_s)); - parseTextBytesAtom(in, *(TextBytesAtom*)_s.text.data()); - } - _m = in.setMark(); - try { - RecordHeader _optionCheck(&_s); - parseRecordHeader(in, _optionCheck); - _possiblyPresent = (_optionCheck.recVer == 0)&&(_optionCheck.recInstance == 0)&&(_optionCheck.recType == 0xFA1); - } catch(EOFException _e) { - _possiblyPresent = false; - } - in.rewind(_m); - _m = in.setMark(); - if (_possiblyPresent) { - try { - _s.style = QSharedPointer(new StyleTextPropAtom(&_s)); - parseStyleTextPropAtom(in, *_s.style.data()); - } catch(IncorrectValueException _e) { - _s.style.clear(); - in.rewind(_m); - } catch(EOFException _e) { - _s.style.clear(); - in.rewind(_m); - } - } - if (_s.style) { - quint32 count = 0; - if (_s.text.is()) { - count = _s.text.get()->textChars.size(); - } - if (_s.text.is()) { - count = _s.text.get()->textChars.size(); - } - quint32 sum = 0; - do { - _s.style->rgTextPFRun.append(TextPFRun(_s.style.data())); - parseTextPFRun(in, _s.style->rgTextPFRun.last()); - sum += _s.style->rgTextPFRun.last().count; - } while (sum <= count); - sum = 0; - do { - _s.style->rgTextCFRun.append(TextCFRun(_s.style.data())); - parseTextCFRun(in, _s.style->rgTextCFRun.last()); - sum += _s.style->rgTextCFRun.last().count; - } while (sum <= count); - } - _atend = false; - while (!_atend) { - _m = in.setMark(); - try { - _s.meta.append(TextContainerMeta(&_s)); - parseTextContainerMeta(in, _s.meta.last()); - } catch(IncorrectValueException _e) { - _s.meta.removeLast(); - _atend = true; - in.rewind(_m); - } catch(EOFException _e) { - _s.meta.removeLast(); - _atend = true; - in.rewind(_m); - } - } - _m = in.setMark(); - try { - RecordHeader _optionCheck(&_s); - parseRecordHeader(in, _optionCheck); - _possiblyPresent = (_optionCheck.recVer == 0)&&(_optionCheck.recInstance == 0)&&(_optionCheck.recType == 0xFA2); - } catch(EOFException _e) { - _possiblyPresent = false; - } - in.rewind(_m); - _m = in.setMark(); - if (_possiblyPresent) { - try { - _s.master = QSharedPointer(new MasterTextPropAtom(&_s)); - parseMasterTextPropAtom(in, *_s.master.data()); - } catch(IncorrectValueException _e) { - _s.master.clear(); - in.rewind(_m); - } catch(EOFException _e) { - _s.master.clear(); - in.rewind(_m); - } - } - _atend = false; - while (!_atend) { - _m = in.setMark(); - try { - _s.bookmark.append(TextBookmarkAtom(&_s)); - parseTextBookmarkAtom(in, _s.bookmark.last()); - } catch(IncorrectValueException _e) { - _s.bookmark.removeLast(); - _atend = true; - in.rewind(_m); - } catch(EOFException _e) { - _s.bookmark.removeLast(); - _atend = true; - in.rewind(_m); - } - } - _m = in.setMark(); - try { - RecordHeader _optionCheck(&_s); - parseRecordHeader(in, _optionCheck); - _possiblyPresent = (_optionCheck.recVer == 3)&&(_optionCheck.recInstance == 9)&&(_optionCheck.recType == 0); - } catch(EOFException _e) { - _possiblyPresent = false; - } - in.rewind(_m); - _m = in.setMark(); - if (_possiblyPresent) { - try { - _s.unknown = QSharedPointer(new UnknownTextContainerChild(&_s)); - parseUnknownTextContainerChild(in, *_s.unknown.data()); - } catch(IncorrectValueException _e) { - _s.unknown.clear(); - in.rewind(_m); - } catch(EOFException _e) { - _s.unknown.clear(); - in.rewind(_m); - } - } - _m = in.setMark(); - try { - RecordHeader _optionCheck(&_s); - parseRecordHeader(in, _optionCheck); - _possiblyPresent = (_optionCheck.recVer == 0x0)&&(_optionCheck.recInstance == 0x0)&&(_optionCheck.recType == 0xFAA); - } catch(EOFException _e) { - _possiblyPresent = false; - } - in.rewind(_m); - _m = in.setMark(); - if (_possiblyPresent) { - try { - _s.specialinfo = QSharedPointer(new TextSpecialInfoAtom(&_s)); - parseTextSpecialInfoAtom(in, *_s.specialinfo.data()); - } catch(IncorrectValueException _e) { - _s.specialinfo.clear(); - in.rewind(_m); - } catch(EOFException _e) { - _s.specialinfo.clear(); - in.rewind(_m); - } - } - _atend = false; - while (!_atend) { - _m = in.setMark(); - try { - _s.interactive.append(TextContainerInteractiveInfo(&_s)); - parseTextContainerInteractiveInfo(in, _s.interactive.last()); - } catch(IncorrectValueException _e) { - _s.interactive.removeLast(); - _atend = true; - in.rewind(_m); - } catch(EOFException _e) { - _s.interactive.removeLast(); - _atend = true; - in.rewind(_m); - } - } - _m = in.setMark(); - try { - RecordHeader _optionCheck(&_s); - parseRecordHeader(in, _optionCheck); - _possiblyPresent = (_optionCheck.recVer == 0x0)&&(_optionCheck.recInstance == 0x0)&&(_optionCheck.recType == 0xFAA); - } catch(EOFException _e) { - _possiblyPresent = false; - } - in.rewind(_m); - _m = in.setMark(); - if (_possiblyPresent) { - try { - _s.specialinfo2 = QSharedPointer(new TextSpecialInfoAtom(&_s)); - parseTextSpecialInfoAtom(in, *_s.specialinfo2.data()); - } catch(IncorrectValueException _e) { - _s.specialinfo2.clear(); - in.rewind(_m); - } catch(EOFException _e) { - _s.specialinfo2.clear(); - in.rewind(_m); - } - } -} void MSO::parseTextContainerMeta(LEInputStream& in, TextContainerMeta& _s) { _s.streamOffset = in.getPosition(); LEInputStream::Mark _m; @@ -10357,49 +10158,289 @@ } } } -void MSO::parseMouseClickTextInfo(LEInputStream& in, MouseClickTextInfo& _s) { - _s.streamOffset = in.getPosition(); - parseMouseClickInteractiveInfoContainer(in, _s.interactive); - parseMouseClickTextInteractiveInfoAtom(in, _s.text); -} -void MSO::parseMouseOverTextInfo(LEInputStream& in, MouseOverTextInfo& _s) { +void MSO::parseOutlineAtom(LEInputStream& in, OutlineAtom& _s) { _s.streamOffset = in.getPosition(); - parseMouseOverInteractiveInfoContainer(in, _s.interactive); - parseMouseOverTextInteractiveInfoAtom(in, _s.text); + LEInputStream::Mark _m; + bool _possiblyPresent; + parseOutlineTextRefAtom(in, _s.outlineTextRefAtom); + _m = in.setMark(); + try { + RecordHeader _optionCheck(&_s); + parseRecordHeader(in, _optionCheck); + _possiblyPresent = (_optionCheck.recVer == 0)&&(_optionCheck.recInstance == 0)&&(_optionCheck.recType == 0xFA6); + } catch(EOFException _e) { + _possiblyPresent = false; + } + in.rewind(_m); + _m = in.setMark(); + if (_possiblyPresent) { + try { + _s.textRulerAtom = QSharedPointer(new TextRulerAtom(&_s)); + parseTextRulerAtom(in, *_s.textRulerAtom.data()); + } catch(IncorrectValueException _e) { + _s.textRulerAtom.clear(); + in.rewind(_m); + } catch(EOFException _e) { + _s.textRulerAtom.clear(); + in.rewind(_m); + } + } } -void MSO::parseTextClientDataSubContainerOrAtom(LEInputStream& in, TextClientDataSubContainerOrAtom& _s) { +void MSO::parseTextContainer(LEInputStream& in, TextContainer& _s) { _s.streamOffset = in.getPosition(); LEInputStream::Mark _m; + bool _possiblyPresent; + bool _atend; + parseTextHeaderAtom(in, _s.textHeaderAtom); _m = in.setMark(); RecordHeader _choice(&_s); parseRecordHeader(in, _choice); in.rewind(_m); qint64 startPos = in.getPosition(); - if (startPos == in.getPosition() && ((_choice.recVer == 0)&&(_choice.recInstance == 0)&&(_choice.recType == 0xF9E)&&(_choice.recLen == 4))) { - _s.anon = TextClientDataSubContainerOrAtom::choice4230039514(new OutlineTextRefAtom(&_s)); - parseOutlineTextRefAtom(in, *(OutlineTextRefAtom*)_s.anon.data()); - } - if (startPos == in.getPosition() && ((_choice.recVer == 0)&&(_choice.recInstance == 0 || _choice.recInstance == 1 || _choice.recInstance == 2 || _choice.recInstance == 3 || _choice.recInstance == 4 || _choice.recInstance == 5)&&(_choice.recType == 0xF9F)&&(_choice.recLen == 4))) { - _s.anon = TextClientDataSubContainerOrAtom::choice4230039514(new TextContainer(&_s)); - parseTextContainer(in, *(TextContainer*)_s.anon.data()); - } - if (startPos == in.getPosition() && ((_choice.recVer == 0)&&(_choice.recInstance == 0)&&(_choice.recType == 0xFA6))) { - _s.anon = TextClientDataSubContainerOrAtom::choice4230039514(new TextRulerAtom(&_s)); - parseTextRulerAtom(in, *(TextRulerAtom*)_s.anon.data()); + if (startPos == in.getPosition() && ((_choice.recVer == 0)&&(_choice.recInstance == 0)&&(_choice.recType == 0xFA0)&&(_choice.recLen%2==0))) { + _s.text = TextContainer::choice1060411409(new TextCharsAtom(&_s)); + parseTextCharsAtom(in, *(TextCharsAtom*)_s.text.data()); } - if (startPos == in.getPosition()) { - _s.anon = TextClientDataSubContainerOrAtom::choice4230039514(new MouseClickTextInfo(&_s)); - parseMouseClickTextInfo(in, *(MouseClickTextInfo*)_s.anon.data()); + if (startPos == in.getPosition() && ((_choice.recVer == 0)&&(_choice.recInstance == 0)&&(_choice.recType == 0xFA8))) { + _s.text = TextContainer::choice1060411409(new TextBytesAtom(&_s)); + parseTextBytesAtom(in, *(TextBytesAtom*)_s.text.data()); } -} -void MSO::parseTextPFRun(LEInputStream& in, TextPFRun& _s) { - _s.streamOffset = in.getPosition(); - _s.count = in.readuint32(); - if (!(((quint32)_s.count)>0)) { - throw IncorrectValueException(in.getPosition(), "((quint32)_s.count)>0"); + _m = in.setMark(); + try { + RecordHeader _optionCheck(&_s); + parseRecordHeader(in, _optionCheck); + _possiblyPresent = (_optionCheck.recVer == 0)&&(_optionCheck.recInstance == 0)&&(_optionCheck.recType == 0xFA1); + } catch(EOFException _e) { + _possiblyPresent = false; } - _s.indentLevel = in.readuint16(); - if (!(((quint16)_s.indentLevel)<=4)) { + in.rewind(_m); + _m = in.setMark(); + if (_possiblyPresent) { + try { + _s.style = QSharedPointer(new StyleTextPropAtom(&_s)); + parseStyleTextPropAtom(in, *_s.style.data()); + } catch(IncorrectValueException _e) { + _s.style.clear(); + in.rewind(_m); + } catch(EOFException _e) { + _s.style.clear(); + in.rewind(_m); + } + } + if (_s.style) { + quint32 count = 0; + if (_s.text.is()) { + count = _s.text.get()->textChars.size(); + } + if (_s.text.is()) { + count = _s.text.get()->textChars.size(); + } + quint32 sum = 0; + do { + _s.style->rgTextPFRun.append(TextPFRun(_s.style.data())); + parseTextPFRun(in, _s.style->rgTextPFRun.last()); + sum += _s.style->rgTextPFRun.last().count; + } while (sum <= count); + sum = 0; + do { + _s.style->rgTextCFRun.append(TextCFRun(_s.style.data())); + parseTextCFRun(in, _s.style->rgTextCFRun.last()); + sum += _s.style->rgTextCFRun.last().count; + } while (sum <= count); + } + _atend = false; + while (!_atend) { + _m = in.setMark(); + try { + _s.meta.append(TextContainerMeta(&_s)); + parseTextContainerMeta(in, _s.meta.last()); + } catch(IncorrectValueException _e) { + _s.meta.removeLast(); + _atend = true; + in.rewind(_m); + } catch(EOFException _e) { + _s.meta.removeLast(); + _atend = true; + in.rewind(_m); + } + } + _m = in.setMark(); + try { + RecordHeader _optionCheck(&_s); + parseRecordHeader(in, _optionCheck); + _possiblyPresent = (_optionCheck.recVer == 0)&&(_optionCheck.recInstance == 0)&&(_optionCheck.recType == 0xFA2); + } catch(EOFException _e) { + _possiblyPresent = false; + } + in.rewind(_m); + _m = in.setMark(); + if (_possiblyPresent) { + try { + _s.master = QSharedPointer(new MasterTextPropAtom(&_s)); + parseMasterTextPropAtom(in, *_s.master.data()); + } catch(IncorrectValueException _e) { + _s.master.clear(); + in.rewind(_m); + } catch(EOFException _e) { + _s.master.clear(); + in.rewind(_m); + } + } + _atend = false; + while (!_atend) { + _m = in.setMark(); + try { + _s.bookmark.append(TextBookmarkAtom(&_s)); + parseTextBookmarkAtom(in, _s.bookmark.last()); + } catch(IncorrectValueException _e) { + _s.bookmark.removeLast(); + _atend = true; + in.rewind(_m); + } catch(EOFException _e) { + _s.bookmark.removeLast(); + _atend = true; + in.rewind(_m); + } + } + _m = in.setMark(); + try { + RecordHeader _optionCheck(&_s); + parseRecordHeader(in, _optionCheck); + _possiblyPresent = (_optionCheck.recVer == 3)&&(_optionCheck.recInstance == 9)&&(_optionCheck.recType == 0); + } catch(EOFException _e) { + _possiblyPresent = false; + } + in.rewind(_m); + _m = in.setMark(); + if (_possiblyPresent) { + try { + _s.unknown = QSharedPointer(new UnknownTextContainerChild(&_s)); + parseUnknownTextContainerChild(in, *_s.unknown.data()); + } catch(IncorrectValueException _e) { + _s.unknown.clear(); + in.rewind(_m); + } catch(EOFException _e) { + _s.unknown.clear(); + in.rewind(_m); + } + } + _m = in.setMark(); + try { + RecordHeader _optionCheck(&_s); + parseRecordHeader(in, _optionCheck); + _possiblyPresent = (_optionCheck.recVer == 0x0)&&(_optionCheck.recInstance == 0x0)&&(_optionCheck.recType == 0xFAA); + } catch(EOFException _e) { + _possiblyPresent = false; + } + in.rewind(_m); + _m = in.setMark(); + if (_possiblyPresent) { + try { + _s.specialinfo = QSharedPointer(new TextSpecialInfoAtom(&_s)); + parseTextSpecialInfoAtom(in, *_s.specialinfo.data()); + } catch(IncorrectValueException _e) { + _s.specialinfo.clear(); + in.rewind(_m); + } catch(EOFException _e) { + _s.specialinfo.clear(); + in.rewind(_m); + } + } + _atend = false; + while (!_atend) { + _m = in.setMark(); + try { + _s.interactive.append(TextContainerInteractiveInfo(&_s)); + parseTextContainerInteractiveInfo(in, _s.interactive.last()); + } catch(IncorrectValueException _e) { + _s.interactive.removeLast(); + _atend = true; + in.rewind(_m); + } catch(EOFException _e) { + _s.interactive.removeLast(); + _atend = true; + in.rewind(_m); + } + } + _m = in.setMark(); + try { + RecordHeader _optionCheck(&_s); + parseRecordHeader(in, _optionCheck); + _possiblyPresent = (_optionCheck.recVer == 0x0)&&(_optionCheck.recInstance == 0x0)&&(_optionCheck.recType == 0xFAA); + } catch(EOFException _e) { + _possiblyPresent = false; + } + in.rewind(_m); + _m = in.setMark(); + if (_possiblyPresent) { + try { + _s.specialinfo2 = QSharedPointer(new TextSpecialInfoAtom(&_s)); + parseTextSpecialInfoAtom(in, *_s.specialinfo2.data()); + } catch(IncorrectValueException _e) { + _s.specialinfo2.clear(); + in.rewind(_m); + } catch(EOFException _e) { + _s.specialinfo2.clear(); + in.rewind(_m); + } + } + _m = in.setMark(); + try { + RecordHeader _optionCheck(&_s); + parseRecordHeader(in, _optionCheck); + _possiblyPresent = (_optionCheck.recVer == 0)&&(_optionCheck.recInstance == 0)&&(_optionCheck.recType == 0xFA6); + } catch(EOFException _e) { + _possiblyPresent = false; + } + in.rewind(_m); + _m = in.setMark(); + if (_possiblyPresent) { + try { + _s.textRulerAtom = QSharedPointer(new TextRulerAtom(&_s)); + parseTextRulerAtom(in, *_s.textRulerAtom.data()); + } catch(IncorrectValueException _e) { + _s.textRulerAtom.clear(); + in.rewind(_m); + } catch(EOFException _e) { + _s.textRulerAtom.clear(); + in.rewind(_m); + } + } + _atend = false; + while (!_atend) { + _m = in.setMark(); + try { + _s.interactive2.append(TextContainerInteractiveInfo(&_s)); + parseTextContainerInteractiveInfo(in, _s.interactive2.last()); + } catch(IncorrectValueException _e) { + _s.interactive2.removeLast(); + _atend = true; + in.rewind(_m); + } catch(EOFException _e) { + _s.interactive2.removeLast(); + _atend = true; + in.rewind(_m); + } + } +} +void MSO::parseMouseClickTextInfo(LEInputStream& in, MouseClickTextInfo& _s) { + _s.streamOffset = in.getPosition(); + parseMouseClickInteractiveInfoContainer(in, _s.interactive); + parseMouseClickTextInteractiveInfoAtom(in, _s.text); +} +void MSO::parseMouseOverTextInfo(LEInputStream& in, MouseOverTextInfo& _s) { + _s.streamOffset = in.getPosition(); + parseMouseOverInteractiveInfoContainer(in, _s.interactive); + parseMouseOverTextInteractiveInfoAtom(in, _s.text); +} +void MSO::parseTextPFRun(LEInputStream& in, TextPFRun& _s) { + _s.streamOffset = in.getPosition(); + _s.count = in.readuint32(); + if (!(((quint32)_s.count)>0)) { + throw IncorrectValueException(in.getPosition(), "((quint32)_s.count)>0"); + } + _s.indentLevel = in.readuint16(); + if (!(((quint16)_s.indentLevel)<=4)) { throw IncorrectValueException(in.getPosition(), "((quint16)_s.indentLevel)<=4"); } parseTextPFException(in, _s.pf); @@ -10984,7 +11025,28 @@ in.rewind(_m); } } - parseOfficeArtSplitMenuColorContainer(in, _s.splitColors); + _m = in.setMark(); + try { + OfficeArtRecordHeader _optionCheck(&_s); + parseOfficeArtRecordHeader(in, _optionCheck); + _possiblyPresent = (_optionCheck.recVer == 0x0)&&(_optionCheck.recInstance == 0x4)&&(_optionCheck.recType == 0xF11E)&&(_optionCheck.recLen == 0x10); + } catch(EOFException _e) { + _possiblyPresent = false; + } + in.rewind(_m); + _m = in.setMark(); + if (_possiblyPresent) { + try { + _s.splitColors = QSharedPointer(new OfficeArtSplitMenuColorContainer(&_s)); + parseOfficeArtSplitMenuColorContainer(in, *_s.splitColors.data()); + } catch(IncorrectValueException _e) { + _s.splitColors.clear(); + in.rewind(_m); + } catch(EOFException _e) { + _s.splitColors.clear(); + in.rewind(_m); + } + } _m = in.setMark(); try { OfficeArtRecordHeader _optionCheck(&_s); @@ -12130,6 +12192,23 @@ parseTextMasterStyle10Level(in, *_s.lstLvl5.data()); } } +void MSO::parseTextClientDataSubContainerOrAtom(LEInputStream& in, TextClientDataSubContainerOrAtom& _s) { + _s.streamOffset = in.getPosition(); + LEInputStream::Mark _m; + _m = in.setMark(); + RecordHeader _choice(&_s); + parseRecordHeader(in, _choice); + in.rewind(_m); + qint64 startPos = in.getPosition(); + if (startPos == in.getPosition() && ((_choice.recInstance == 0)&&(_choice.recType == 0xF9E))) { + _s.anon = TextClientDataSubContainerOrAtom::choice2925155378(new OutlineAtom(&_s)); + parseOutlineAtom(in, *(OutlineAtom*)_s.anon.data()); + } + if (startPos == in.getPosition()) { + _s.anon = TextClientDataSubContainerOrAtom::choice2925155378(new TextContainer(&_s)); + parseTextContainer(in, *(TextContainer*)_s.anon.data()); + } +} void MSO::parseTextContainerInteractiveInfo(LEInputStream& in, TextContainerInteractiveInfo& _s) { _s.streamOffset = in.getPosition(); LEInputStream::Mark _m; @@ -13093,7 +13172,7 @@ try { OfficeArtRecordHeader _optionCheck(&_s); parseOfficeArtRecordHeader(in, _optionCheck); - _possiblyPresent = (_optionCheck.recVer == 3)&&(_optionCheck.recType == 0xF121); + _possiblyPresent = (_optionCheck.recVer == 0x3)&&(_optionCheck.recType == 0x0F00B); } catch(EOFException _e) { _possiblyPresent = false; } @@ -13101,13 +13180,13 @@ _m = in.setMark(); if (_possiblyPresent) { try { - _s.shapeSecondaryOptions2 = QSharedPointer(new OfficeArtSecondaryFOPT(&_s)); - parseOfficeArtSecondaryFOPT(in, *_s.shapeSecondaryOptions2.data()); + _s.shapePrimaryOptions2 = QSharedPointer(new OfficeArtFOPT(&_s)); + parseOfficeArtFOPT(in, *_s.shapePrimaryOptions2.data()); } catch(IncorrectValueException _e) { - _s.shapeSecondaryOptions2.clear(); + _s.shapePrimaryOptions2.clear(); in.rewind(_m); } catch(EOFException _e) { - _s.shapeSecondaryOptions2.clear(); + _s.shapePrimaryOptions2.clear(); in.rewind(_m); } } @@ -13115,7 +13194,7 @@ try { OfficeArtRecordHeader _optionCheck(&_s); parseOfficeArtRecordHeader(in, _optionCheck); - _possiblyPresent = (_optionCheck.recVer == 3)&&(_optionCheck.recType == 0xF122); + _possiblyPresent = (_optionCheck.recVer == 3)&&(_optionCheck.recType == 0xF121); } catch(EOFException _e) { _possiblyPresent = false; } @@ -13123,13 +13202,13 @@ _m = in.setMark(); if (_possiblyPresent) { try { - _s.shapeTertiaryOptions2 = QSharedPointer(new OfficeArtTertiaryFOPT(&_s)); - parseOfficeArtTertiaryFOPT(in, *_s.shapeTertiaryOptions2.data()); + _s.shapeSecondaryOptions2 = QSharedPointer(new OfficeArtSecondaryFOPT(&_s)); + parseOfficeArtSecondaryFOPT(in, *_s.shapeSecondaryOptions2.data()); } catch(IncorrectValueException _e) { - _s.shapeTertiaryOptions2.clear(); + _s.shapeSecondaryOptions2.clear(); in.rewind(_m); } catch(EOFException _e) { - _s.shapeTertiaryOptions2.clear(); + _s.shapeSecondaryOptions2.clear(); in.rewind(_m); } } @@ -13137,7 +13216,7 @@ try { OfficeArtRecordHeader _optionCheck(&_s); parseOfficeArtRecordHeader(in, _optionCheck); - _possiblyPresent = (_optionCheck.recVer == 0x3)&&(_optionCheck.recType == 0x0F00B); + _possiblyPresent = (_optionCheck.recVer == 3)&&(_optionCheck.recType == 0xF122); } catch(EOFException _e) { _possiblyPresent = false; } @@ -13145,13 +13224,13 @@ _m = in.setMark(); if (_possiblyPresent) { try { - _s.shapePrimaryOptions2 = QSharedPointer(new OfficeArtFOPT(&_s)); - parseOfficeArtFOPT(in, *_s.shapePrimaryOptions2.data()); + _s.shapeTertiaryOptions2 = QSharedPointer(new OfficeArtTertiaryFOPT(&_s)); + parseOfficeArtTertiaryFOPT(in, *_s.shapeTertiaryOptions2.data()); } catch(IncorrectValueException _e) { - _s.shapePrimaryOptions2.clear(); + _s.shapeTertiaryOptions2.clear(); in.rewind(_m); } catch(EOFException _e) { - _s.shapePrimaryOptions2.clear(); + _s.shapeTertiaryOptions2.clear(); in.rewind(_m); } } diff -Nru calligra-2.3.86/filters/libmso/generated/simpleParser.h calligra-2.3.87/filters/libmso/generated/simpleParser.h --- calligra-2.3.86/filters/libmso/generated/simpleParser.h 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/filters/libmso/generated/simpleParser.h 2012-01-28 07:04:47.000000000 +0000 @@ -558,8 +558,6 @@ void parseVBAInfoContainer(LEInputStream& in, VBAInfoContainer& _s); class NormalViewSetInfoAtom; void parseNormalViewSetInfoAtom(LEInputStream& in, NormalViewSetInfoAtom& _s); -class TextContainer; -void parseTextContainer(LEInputStream& in, TextContainer& _s); class TextContainerMeta; void parseTextContainerMeta(LEInputStream& in, TextContainerMeta& _s); class SlidePersistAtom; @@ -906,12 +904,14 @@ void parseNormalViewSetInfoContainer(LEInputStream& in, NormalViewSetInfoContainer& _s); class SlideListWithTextSubContainerOrAtom; void parseSlideListWithTextSubContainerOrAtom(LEInputStream& in, SlideListWithTextSubContainerOrAtom& _s); +class OutlineAtom; +void parseOutlineAtom(LEInputStream& in, OutlineAtom& _s); +class TextContainer; +void parseTextContainer(LEInputStream& in, TextContainer& _s); class MouseClickTextInfo; void parseMouseClickTextInfo(LEInputStream& in, MouseClickTextInfo& _s); class MouseOverTextInfo; void parseMouseOverTextInfo(LEInputStream& in, MouseOverTextInfo& _s); -class TextClientDataSubContainerOrAtom; -void parseTextClientDataSubContainerOrAtom(LEInputStream& in, TextClientDataSubContainerOrAtom& _s); class TextPFRun; void parseTextPFRun(LEInputStream& in, TextPFRun& _s); class TextCFRun; @@ -962,6 +962,8 @@ void parseBlipEntityAtom(LEInputStream& in, BlipEntityAtom& _s); class TextMasterStyle10Atom; void parseTextMasterStyle10Atom(LEInputStream& in, TextMasterStyle10Atom& _s); +class TextClientDataSubContainerOrAtom; +void parseTextClientDataSubContainerOrAtom(LEInputStream& in, TextClientDataSubContainerOrAtom& _s); class TextContainerInteractiveInfo; void parseTextContainerInteractiveInfo(LEInputStream& in, TextContainerInteractiveInfo& _s); class DocumentTextInfoContainer; @@ -3417,29 +3419,6 @@ quint8 reserved; NormalViewSetInfoAtom(void* /*dummy*/ = 0) {} }; -class TextContainer : public StreamOffset { -public: - TextHeaderAtom textHeaderAtom; - class choice1060411409 : public QSharedPointer { - public: - choice1060411409() {} - explicit choice1060411409(TextCharsAtom* a) :QSharedPointer(a) {} - explicit choice1060411409(TextBytesAtom* a) :QSharedPointer(a) {} - template T*get() { return dynamic_cast(this->data()); } - template const T*get() const { return dynamic_cast(this->data()); } - template bool is() const { return get(); } - }; - choice1060411409 text; - QSharedPointer style; - QList meta; - QSharedPointer master; - QList bookmark; - QSharedPointer unknown; - QSharedPointer specialinfo; - QList interactive; - QSharedPointer specialinfo2; - TextContainer(void* /*dummy*/ = 0) {} -}; class TextContainerMeta : public StreamOffset { public: class choice242357012 : public QSharedPointer { @@ -4965,6 +4944,37 @@ QList atoms; SlideListWithTextSubContainerOrAtom(void* /*dummy*/ = 0) {} }; +class OutlineAtom : public StreamOffset { +public: + OutlineTextRefAtom outlineTextRefAtom; + QSharedPointer textRulerAtom; + OutlineAtom(void* /*dummy*/ = 0) {} +}; +class TextContainer : public StreamOffset { +public: + TextHeaderAtom textHeaderAtom; + class choice1060411409 : public QSharedPointer { + public: + choice1060411409() {} + explicit choice1060411409(TextCharsAtom* a) :QSharedPointer(a) {} + explicit choice1060411409(TextBytesAtom* a) :QSharedPointer(a) {} + template T*get() { return dynamic_cast(this->data()); } + template const T*get() const { return dynamic_cast(this->data()); } + template bool is() const { return get(); } + }; + choice1060411409 text; + QSharedPointer style; + QList meta; + QSharedPointer master; + QList bookmark; + QSharedPointer unknown; + QSharedPointer specialinfo; + QList interactive; + QSharedPointer specialinfo2; + QSharedPointer textRulerAtom; + QList interactive2; + TextContainer(void* /*dummy*/ = 0) {} +}; class MouseClickTextInfo : public StreamOffset { public: MouseClickInteractiveInfoContainer interactive; @@ -4977,22 +4987,6 @@ MouseOverTextInteractiveInfoAtom text; MouseOverTextInfo(void* /*dummy*/ = 0) {} }; -class TextClientDataSubContainerOrAtom : public StreamOffset { -public: - class choice4230039514 : public QSharedPointer { - public: - choice4230039514() {} - explicit choice4230039514(OutlineTextRefAtom* a) :QSharedPointer(a) {} - explicit choice4230039514(TextContainer* a) :QSharedPointer(a) {} - explicit choice4230039514(TextRulerAtom* a) :QSharedPointer(a) {} - explicit choice4230039514(MouseClickTextInfo* a) :QSharedPointer(a) {} - template T*get() { return dynamic_cast(this->data()); } - template const T*get() const { return dynamic_cast(this->data()); } - template bool is() const { return get(); } - }; - choice4230039514 anon; - TextClientDataSubContainerOrAtom(void* /*dummy*/ = 0) {} -}; class TextPFRun : public StreamOffset { public: quint32 count; @@ -5106,7 +5100,7 @@ QSharedPointer drawingPrimaryOptions; QSharedPointer drawingTertiaryOptions; QSharedPointer colorMRU; - OfficeArtSplitMenuColorContainer splitColors; + QSharedPointer splitColors; QSharedPointer blipStore2; QSharedPointer unknown; OfficeArtDggContainer(void* /*dummy*/ = 0) {} @@ -5413,6 +5407,20 @@ QSharedPointer lstLvl5; TextMasterStyle10Atom(void* /*dummy*/ = 0) {} }; +class TextClientDataSubContainerOrAtom : public StreamOffset { +public: + class choice2925155378 : public QSharedPointer { + public: + choice2925155378() {} + explicit choice2925155378(OutlineAtom* a) :QSharedPointer(a) {} + explicit choice2925155378(TextContainer* a) :QSharedPointer(a) {} + template T*get() { return dynamic_cast(this->data()); } + template const T*get() const { return dynamic_cast(this->data()); } + template bool is() const { return get(); } + }; + choice2925155378 anon; + TextClientDataSubContainerOrAtom(void* /*dummy*/ = 0) {} +}; class TextContainerInteractiveInfo : public StreamOffset { public: class choice3752530176 : public QSharedPointer { @@ -5565,9 +5573,9 @@ QSharedPointer clientAnchor; QSharedPointer clientData; QSharedPointer clientTextbox; + QSharedPointer shapePrimaryOptions2; QSharedPointer shapeSecondaryOptions2; QSharedPointer shapeTertiaryOptions2; - QSharedPointer shapePrimaryOptions2; QSharedPointer unknown; OfficeArtSpContainer(void* /*dummy*/ = 0) {} }; diff -Nru calligra-2.3.86/filters/libmsooxml/MsooXmlCommonReaderDrawingMLImpl.h calligra-2.3.87/filters/libmsooxml/MsooXmlCommonReaderDrawingMLImpl.h --- calligra-2.3.86/filters/libmsooxml/MsooXmlCommonReaderDrawingMLImpl.h 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/filters/libmsooxml/MsooXmlCommonReaderDrawingMLImpl.h 2012-01-28 07:04:47.000000000 +0000 @@ -2375,12 +2375,6 @@ m_currentTextStyle.removeProperty("style:text-underline-style"); m_currentTextStyle.removeProperty("style:text-underline-width"); - // The fo:font-size is applied to both the start of a new line and the - // end of the current line during layout, which affects line-height - // calculation and results in overlapping. Avoid use of the application - // default font-size and font-size of the default text/paragraph style! - m_currentTextStyle.addPropertyPt("fo:font-size", TEXT_FONTSIZE_MIN); - body->startElement("text:span", false); body->addAttribute("text:style-name", mainStyles->insert(m_currentTextStyle)); body->startElement("text:line-break"); @@ -3889,9 +3883,9 @@ TRY_READ_ATTR_WITHOUT_NS(typeface) #ifdef PPTXXMLDOCUMENTREADER_CPP - // We skip reading this one properly as we do not know the correct theme in the time of reading + // TODO: Process the pitchFamili attribute. defaultLatinFonts[defaultLatinFonts.size() - 1] = typeface; - + // Skip reading because the current theme is unknown at time of reading. skipCurrentElement(); READ_EPILOGUE #endif @@ -3902,10 +3896,11 @@ font = m_context->themes->fontScheme.majorFonts.latinTypeface; } else if (typeface.startsWith("+mn")) { - font = m_context->themes->fontScheme.minorFonts.latinTypeface; + font = m_context->themes->fontScheme.minorFonts.latinTypeface; } - m_currentTextStyle.addProperty("fo:font-family", font); + m_currentTextStyleProperties->setFontFamily(font); } + TRY_READ_ATTR_WITHOUT_NS(pitchFamily) if (!pitchFamily.isEmpty()) { int pitchFamilyInt; diff -Nru calligra-2.3.86/filters/libmsooxml/MsooXmlDrawingReaderTableImpl.h calligra-2.3.87/filters/libmsooxml/MsooXmlDrawingReaderTableImpl.h --- calligra-2.3.86/filters/libmsooxml/MsooXmlDrawingReaderTableImpl.h 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/filters/libmsooxml/MsooXmlDrawingReaderTableImpl.h 2012-01-28 07:04:47.000000000 +0000 @@ -18,9 +18,9 @@ */ /** -* This file deals with the tables designed for the DrawingML namespace -* the table starts at tbl §21.1.3.13 -*/ + * This file deals with the tables designed for the DrawingML namespace + * the table starts at tbl §21.1.3.13 + */ #undef CURRENT_EL #define CURRENT_EL tbl @@ -38,7 +38,7 @@ m_tableStyle = 0; - if(!d->tableStyleList) { + if (!d->tableStyleList) { d->tableStyleList = new QMap; QString tableStylesFile; @@ -96,7 +96,7 @@ converterProperties.setColumnCount(columnCount); converterProperties.setRoles(m_activeRoles); converterProperties.setLocalStyles(m_localTableStyles); - + // TODO: converterProperties.setLocalDefaulCelltStyle() MSOOXML::DrawingTableStyleConverter styleConverter(converterProperties, m_tableStyle); for(int row = 0; row < rowCount; ++row ) { for(int column = 0; column < columnCount; ++column ) { diff -Nru calligra-2.3.86/filters/libmsooxml/MsooXmlDrawingTableStyleReader.cpp calligra-2.3.87/filters/libmsooxml/MsooXmlDrawingTableStyleReader.cpp --- calligra-2.3.86/filters/libmsooxml/MsooXmlDrawingTableStyleReader.cpp 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/filters/libmsooxml/MsooXmlDrawingTableStyleReader.cpp 2012-01-28 07:04:47.000000000 +0000 @@ -640,13 +640,13 @@ } } - TRY_READ_ATTR(b) - TRY_READ_ATTR(i) + TRY_READ_ATTR_WITHOUT_NS(b) + TRY_READ_ATTR_WITHOUT_NS(i) if (b == "on") { - m_currentTextStyle.addProperty("svg:font-weight", "bold"); + m_currentTextStyle.addProperty("fo:font-weight", "bold"); } if (i == "on") { - m_currentTextStyle.addProperty("svg:font-style", "italic"); + m_currentTextStyle.addProperty("fo:font-style", "italic"); } if (m_currentColor.isValid()) { m_currentTextStyle.addProperty("fo:color", m_currentColor.name()); diff -Nru calligra-2.3.86/filters/stage/kpr/export/odp2kpr.desktop calligra-2.3.87/filters/stage/kpr/export/odp2kpr.desktop --- calligra-2.3.86/filters/stage/kpr/export/odp2kpr.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/filters/stage/kpr/export/odp2kpr.desktop 2012-01-28 07:04:47.000000000 +0000 @@ -20,6 +20,7 @@ Name[he]=KPresenter מסנן יצוא לפורמט הקבצים הישן Name[hi]=केप्रेजेन्टर पुराना फ़ाइल फार्मेट फ़िल्टर Name[hne]=केप्रेजेन्टर जुन्ना फाइल फार्मेट फिल्टर +Name[hu]=KPresenter régi fájlformátum-szűrő Name[it]=Filtro per il vecchio formato di file di KPresenter Name[ja]=KPresenter の古いファイルフォーマット用のフィルタ Name[kk]=KPresenter ескі файл пішімінің сүзгісі diff -Nru calligra-2.3.86/filters/stage/kpr/import/kpr2odp.desktop calligra-2.3.87/filters/stage/kpr/import/kpr2odp.desktop --- calligra-2.3.86/filters/stage/kpr/import/kpr2odp.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/filters/stage/kpr/import/kpr2odp.desktop 2012-01-28 07:04:47.000000000 +0000 @@ -20,6 +20,7 @@ Name[he]=KPresenter מסנן יצוא לפורמט הקבצים הישן Name[hi]=केप्रेजेन्टर पुराना फ़ाइल फार्मेट फ़िल्टर Name[hne]=केप्रेजेन्टर जुन्ना फाइल फार्मेट फिल्टर +Name[hu]=KPresenter régi fájlformátum-szűrő Name[it]=Filtro per il vecchio formato di file di KPresenter Name[ja]=KPresenter の古いファイルフォーマット用のフィルタ Name[kk]=KPresenter ескі файл пішімінің сүзгісі diff -Nru calligra-2.3.86/filters/stage/kpr2odf/Filterkpr2odf.desktop calligra-2.3.87/filters/stage/kpr2odf/Filterkpr2odf.desktop --- calligra-2.3.86/filters/stage/kpr2odf/Filterkpr2odf.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/filters/stage/kpr2odf/Filterkpr2odf.desktop 2012-01-28 07:04:47.000000000 +0000 @@ -15,6 +15,7 @@ Name[fr]=Filtre pour exporter des fichiers KPR vers ODP Name[gl]=Filtro para exportar ficheiros KPR a ODP Name[he]=מסנן יצוא מקובצי KPR ל־ODP +Name[hu]=Szűrő KPR-fájlok ODP formátumba exportálásához Name[it]=Filtro per esportare i file KPR a ODP Name[ja]=KPR ファイルを ODP にエクスポートするフィルタ Name[kk]=KPR файлын ODP файлына экспорттау сүзгісі diff -Nru calligra-2.3.86/filters/stage/ooppt/kpresenter_ooppt_import.desktop calligra-2.3.87/filters/stage/ooppt/kpresenter_ooppt_import.desktop --- calligra-2.3.86/filters/stage/ooppt/kpresenter_ooppt_import.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/filters/stage/ooppt/kpresenter_ooppt_import.desktop 2012-01-28 07:04:47.000000000 +0000 @@ -15,6 +15,7 @@ Name[fr]=Filtre d'importation PPT pour KPresenter Name[ga]=Scagaire Iompórtála PPT le haghaidh KPresenter Name[gl]=Filtro de Importación de PPT para KPresenter +Name[hu]=PPT importszűrő a KPresenterhez Name[it]=Filtro di importazione PPT per KPresenter Name[ja]=KPresenter PPT インポートフィルタ Name[kk]=PPT -> KPresenter импорт сүзгісі diff -Nru calligra-2.3.86/filters/stage/powerpoint/pptstyle.cpp calligra-2.3.87/filters/stage/powerpoint/pptstyle.cpp --- calligra-2.3.86/filters/stage/powerpoint/pptstyle.cpp 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/filters/stage/powerpoint/pptstyle.cpp 2012-01-28 07:04:47.000000000 +0000 @@ -23,18 +23,6 @@ using namespace MSO; -// NOTE: Deprecated !!! -template -void addStyle(const Style** list, const Style* style) -{ - if (style) { - while (*list) ++list; - *list = style; - *list++; - *list = 0; - } -} - const TextMasterStyleAtom* getTextMasterStyleAtom(const MasterOrSlideContainer* m, quint16 textType) { @@ -530,7 +518,6 @@ { //check DocumentContainer/DocumentTextInfoContainer/textPFDefaultsAtom pfs.append(getDefaultPF(d)); - memset(pf9s, 0, 6 * sizeof(TextPFException9*)); } PptTextPFRun::PptTextPFRun(const DocumentContainer* d, @@ -547,9 +534,9 @@ if (level) { pfs.append(&level->pf); } - memset(pf9s, 0, 6 * sizeof(TextPFException9*)); + if (level9) { - addStyle(pf9s, &level9->pf9); + pf9s.append(&level9->pf9); } processPFDefaults(d); } @@ -583,12 +570,10 @@ //TODO: test documents required to construct correct pf9s based on the full //masters hierarchy. - - memset(pf9s, 0, 6 * sizeof(TextPFException9*)); - addStyle(pf9s, getPF9(d, texts, pcd, tc, start)); - addStyle(pf9s, getLevelPF9(m, tc, m_level)); - addStyle(pf9s, getDefaultLevelPF9(d, tc, m_level)); - addStyle(pf9s, getDefaultPF9(d)); + pf9s.append(getPF9(d, texts, pcd, tc, start)); + pf9s.append(getLevelPF9(m, tc, m_level)); + pf9s.append(getDefaultLevelPF9(d, tc, m_level)); + pf9s.append(getDefaultPF9(d)); // the level reported by PptPFRun is 0 when not bullets, i.e. no list is // active, 1 is lowest list level, 5 is the highest list level @@ -790,50 +775,27 @@ GETTER(ColorIndexStruct, *, bulletColor, bulletColor, fBulletHasColor, ColorIndexStruct()) #undef GETTER -qint32 PptTextPFRun::bulletBlipRef() const { - const MSO::TextPFException9* const * p = pf9s; - while (*p) { - if ((*p)->masks.bulletBlip) { - return (*p)->bulletBlipRef; - } - ++p; - } - return 65535; -} -qint16 PptTextPFRun::fBulletHasAutoNumber() const { - const MSO::TextPFException9* const * p = pf9s; - while (*p) { - if ((*p)->masks.bulletHasScheme) { - return (*p)->fBulletHasAutoNumber; - } - ++p; - } - return 0; -} - #define ANM_Default 3 -quint16 PptTextPFRun::scheme() const { - const MSO::TextPFException9* const * p = pf9s; - while (*p) { - if ((*p)->masks.bulletScheme) { - return (*p)->bulletAutoNumberScheme->scheme; - } - ++p; - } - - return ANM_Default; -} -qint16 PptTextPFRun::startNum() const { - const MSO::TextPFException9* const * p = pf9s; - while (*p) { - if ((*p)->masks.bulletScheme) { - return (*p)->bulletAutoNumberScheme->startNum; - } - ++p; - } - return 1; +#define GETTER(TYPE, NAME, PARENT, TEST, DEFAULT) \ +TYPE PptTextPFRun::NAME() const \ +{ \ + for (int i = 0; i < pf9s.size(); i++) { \ + if (pf9s[i]) { \ + if (pf9s[i]->masks.TEST) { \ + return pf9s[i]->PARENT NAME; \ + } \ + } \ + } \ + return DEFAULT; \ } +// TYPE NAME PARENT TEST DEFAULT +GETTER(qint32, bulletBlipRef, , bulletBlip, 65535) +GETTER(qint16, fBulletHasAutoNumber, , bulletHasScheme, 0) +GETTER(quint16, scheme, bulletAutoNumberScheme->, bulletScheme, ANM_Default) +GETTER(qint16, startNum, bulletAutoNumberScheme->, bulletScheme, 1) +#undef GETTER + //FIXME: Looks like only Tx_TYPE_OTHER is not stored in lists. Test files are //required to prove this! @@ -866,20 +828,20 @@ return DEFAULT; \ } -// TYPE PARENT PRE NAME TEST DEFAULT -GETTER(bool, fontStyle->,, bold, masks.bold, false) -GETTER(bool, fontStyle->,, italic, masks.italic, false) -GETTER(bool, fontStyle->,, underline, masks.underline, false) -GETTER(bool, fontStyle->,, shadow, masks.shadow, false) -GETTER(bool, fontStyle->,, fehint, masks.fehint, false) -GETTER(bool, fontStyle->,, kumi, masks.kumi, false) -GETTER(bool, fontStyle->,, emboss, masks.emboss, false) -GETTER(quint8, fontStyle->,, pp9rt, fontStyle, 0) -GETTER(quint16, , , fontRef, masks.typeface, 0) -GETTER(quint16, , , oldEAFontRef, masks.oldEATypeface, 0) -GETTER(quint16, , , ansiFontRef, masks.ansiTypeface, 0) -GETTER(quint16, , , symbolFontRef, masks.symbolTypeface, 0) -GETTER(quint16, , , fontSize, masks.size, 0) -GETTER(ColorIndexStruct,, *, color, masks.color, ColorIndexStruct()) -GETTER(qint16, , , position, masks.position, 0) +// TYPE PARENT PRE NAME TEST DEFAULT +GETTER(bool, fontStyle->, , bold, masks.bold, false) +GETTER(bool, fontStyle->, , italic, masks.italic, false) +GETTER(bool, fontStyle->, , underline, masks.underline, false) +GETTER(bool, fontStyle->, , shadow, masks.shadow, false) +GETTER(bool, fontStyle->, , fehint, masks.fehint, false) +GETTER(bool, fontStyle->, , kumi, masks.kumi, false) +GETTER(bool, fontStyle->, , emboss, masks.emboss, false) +GETTER(quint8, fontStyle->, , pp9rt, fontStyle, 0) +GETTER(quint16, , , fontRef, masks.typeface, 0) +GETTER(quint16, , , oldEAFontRef, masks.oldEATypeface, 0) +GETTER(quint16, , , ansiFontRef, masks.ansiTypeface, 0) +GETTER(quint16, , , symbolFontRef, masks.symbolTypeface, 0) +GETTER(quint16, , , fontSize, masks.size, 0) +GETTER(ColorIndexStruct,, *, color, masks.color, ColorIndexStruct()) +GETTER(qint16, , , position, masks.position, 0) #undef GETTER diff -Nru calligra-2.3.86/filters/stage/powerpoint/pptstyle.h calligra-2.3.87/filters/stage/powerpoint/pptstyle.h --- calligra-2.3.86/filters/stage/powerpoint/pptstyle.h 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/filters/stage/powerpoint/pptstyle.h 2012-01-28 07:04:47.000000000 +0000 @@ -147,7 +147,7 @@ //Hierarchies of exceptions. QList pfs; - const MSO::TextPFException9* pf9s[6]; + QList pf9s; }; class PptTextCFRun { diff -Nru calligra-2.3.86/filters/stage/powerpoint/PptToOdp.cpp calligra-2.3.87/filters/stage/powerpoint/PptToOdp.cpp --- calligra-2.3.86/filters/stage/powerpoint/PptToOdp.cpp 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/filters/stage/powerpoint/PptToOdp.cpp 2012-01-28 07:04:47.000000000 +0000 @@ -332,17 +332,22 @@ { const TextContainer* textContainer = 0; const TextRuler* textRuler = 0; + if (ct) { - const PptOfficeArtClientTextBox* tb = ct->anon.get(); - if (tb) { + if (ct->anon.is()) { + const PptOfficeArtClientTextBox* tb = ct->anon.get(); foreach(const TextClientDataSubContainerOrAtom& tc, tb->rgChildRec) { - if (tc.anon.is()) { - textRuler = &tc.anon.get()->textRuler; - break; + if (tc.anon.is()) { + const OutlineAtom* outlineAtom = tc.anon.get(); + if (outlineAtom->textRulerAtom) { + textRuler = &outlineAtom->textRulerAtom->textRuler; + break; + } } - } + } } } + const PptOfficeArtClientData* pcd = o.anon.get(); if (pcd && pcd->placeholderAtom && dc_data->slideTexts) { const PlaceholderAtom* pa = pcd->placeholderAtom.data(); @@ -378,9 +383,10 @@ foreach(const TextClientDataSubContainerOrAtom& tc, tb->rgChildRec) { if (tc.anon.is()) { textContainer = tc.anon.get(); - } else if (tc.anon.is()) { - textRuler = &tc.anon.get()->textRuler; - } + if (textContainer->textRulerAtom) { + textRuler = &textContainer->textRulerAtom->textRuler; + } + } } ppttoodp->processTextForBody(out, cd, textContainer, textRuler, isPlaceholder(cd)); } diff -Nru calligra-2.3.86/filters/stage/pptx/kpresenter_pptx_import.desktop calligra-2.3.87/filters/stage/pptx/kpresenter_pptx_import.desktop --- calligra-2.3.86/filters/stage/pptx/kpresenter_pptx_import.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/filters/stage/pptx/kpresenter_pptx_import.desktop 2012-01-28 07:04:47.000000000 +0000 @@ -14,6 +14,7 @@ Name[fi]=Microsoft PowerPoint 2007 -tuontisuodin KPresenterille Name[fr]=Filtre d'importation Microsoft PowerPoint 2007 pour KPresenter Name[ga]=Scagaire Iompórtála Microsoft PowerPoint 2007 le haghaidh KPresenter +Name[hu]=Microsoft PowerPoint 2007 importszűrő a KPresenterhez Name[it]=Filtro di importazione MS PowerPoint 2007 per KPresenter Name[ja]=KPresenter Microsoft PowerPoint 2007 インポートフィルタ Name[kk]=Microsoft PowerPoint 2007 -> KPresenter импорт сүзгісі diff -Nru calligra-2.3.86/filters/stage/words/kodp2odt.desktop calligra-2.3.87/filters/stage/words/kodp2odt.desktop --- calligra-2.3.86/filters/stage/words/kodp2odt.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/filters/stage/words/kodp2odt.desktop 2012-01-28 07:04:47.000000000 +0000 @@ -3,11 +3,14 @@ Name=KPresenter Words Filter Name[bg]=Филтър за KPresenter за файлове на Words Name[ca]=Filtre del Words per al KPresenter +Name[ca@valencia]=Filtre del Words per al KPresenter Name[cs]=Filtr pro převod KPresenter->Words Name[da]=Words-filter til KPresenter Name[de]=KPresenter Words-Filter +Name[el]=KPresenter Words φίλτρο Name[es]=Filtro de Words para KPresenter Name[et]=KPresenteri Wordsi filter +Name[hu]=KPresenter Words szűrő Name[it]=Filtro da KPresenter a Words Name[kk]=Words -> KPresenter сүзгісі Name[nb]=KPresenter Words-filter diff -Nru calligra-2.3.86/filters/stage/words/kprwords.desktop calligra-2.3.87/filters/stage/words/kprwords.desktop --- calligra-2.3.86/filters/stage/words/kprwords.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/filters/stage/words/kprwords.desktop 2012-01-28 07:04:47.000000000 +0000 @@ -3,11 +3,14 @@ Name=KPresenter Words Filter Name[bg]=Филтър за KPresenter за файлове на Words Name[ca]=Filtre del Words per al KPresenter +Name[ca@valencia]=Filtre del Words per al KPresenter Name[cs]=Filtr pro převod KPresenter->Words Name[da]=Words-filter til KPresenter Name[de]=KPresenter Words-Filter +Name[el]=KPresenter Words φίλτρο Name[es]=Filtro de Words para KPresenter Name[et]=KPresenteri Wordsi filter +Name[hu]=KPresenter Words szűrő Name[it]=Filtro da KPresenter a Words Name[kk]=Words -> KPresenter сүзгісі Name[nb]=KPresenter Words-filter diff -Nru calligra-2.3.86/filters/tables/applixspread/kspread_applixspread_import.desktop calligra-2.3.87/filters/tables/applixspread/kspread_applixspread_import.desktop --- calligra-2.3.86/filters/tables/applixspread/kspread_applixspread_import.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/filters/tables/applixspread/kspread_applixspread_import.desktop 2012-01-28 07:04:47.000000000 +0000 @@ -10,7 +10,7 @@ Name[cy]=Hidlen Fewnforio Taenlen Applix KSpread Name[da]=KSpread Applix regnearks-importfilter Name[de]=KSpread Applix-Spreadsheet-Importfilter -Name[el]=Φίλτρο εισαγωγής λογιστικού φύλλου Applix του KSpread +Name[el]=Φίλτρο εισαγωγής φύλλου εργασίας Applix του KSpread Name[en_GB]=KSpread Applix Spreadsheet Import Filter Name[eo]=Appliks-tabelo-import-filtrilo por KSpread Name[es]=Filtro de KSpread de importación de hojas de cálculo de Applix diff -Nru calligra-2.3.86/filters/tables/excel/export/kspread_excel_export.desktop calligra-2.3.87/filters/tables/excel/export/kspread_excel_export.desktop --- calligra-2.3.86/filters/tables/excel/export/kspread_excel_export.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/filters/tables/excel/export/kspread_excel_export.desktop 2012-01-28 07:04:47.000000000 +0000 @@ -12,6 +12,7 @@ Name[es]=Filtro de KSpread de exportación a Microsoft Excel Name[et]=KSpreadi Microsoft Exceli ekspordifilter Name[ga]=Scagaire Easpórtála Microsoft Excel le haghaidh KSpread +Name[hu]=KSpread Microsoft Excel importszűrő Name[it]=Filtro di esportazione Microsoft Excel per KSpread Name[ja]=KSpread Microsoft Excel エクスポートフィルタ Name[kk]=KSpread -> Microsoft Excel экспорт сүзгісі diff -Nru calligra-2.3.86/filters/tables/excel/sidewinder/chartsubstreamhandler.cpp calligra-2.3.87/filters/tables/excel/sidewinder/chartsubstreamhandler.cpp --- calligra-2.3.86/filters/tables/excel/sidewinder/chartsubstreamhandler.cpp 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/filters/tables/excel/sidewinder/chartsubstreamhandler.cpp 2012-01-28 07:04:47.000000000 +0000 @@ -98,7 +98,7 @@ virtual void dump(std::ostream& out) const { QStringList tokens; foreach(XmlTk* t, m_tokens) - tokens.append( QString("%1 %2 %3").arg(t->m_xmlTkTag, 0, 16).arg(t->type()).arg(t->value()) ); + tokens.append( QString("%1(%2)=%3").arg(QString::fromUtf8(xmlTkTagName(XmlTkTags(t->m_xmlTkTag)))).arg(t->type()).arg(t->value()) ); out << qPrintable(QString("[%1]").arg(tokens.join(", "))); } virtual void setData(unsigned size, const unsigned char* data, const unsigned int* /*continuePositions*/) { @@ -106,10 +106,10 @@ setIsValid(false); return; } - unsigned rt = readU16(data); - unsigned grbitFrt = readU16(data + 2); - unsigned cb = readU32(data + 12); - unsigned recordVersion = readU8(data + 16); + //unsigned rt = readU16(data); + //unsigned grbitFrt = readU16(data + 2); + //unsigned cb = readU32(data + 12); + //unsigned recordVersion = readU8(data + 16); m_xmlTkParent = readU16(data + 18); qDeleteAll(m_tokens); @@ -1239,14 +1239,14 @@ void ChartSubStreamHandler::handleShapePropsStream(ShapePropsStreamRecord* record) { if (!record) return; - DEBUG << "rgb=" << record->rgb().length() << " " << record->rgb() << std::endl; + DEBUG << "wObjContext=" << record->wObjContext() << "rgbLength=" << record->rgb().length() << " rgbString=" << record->rgb() << std::endl; //TODO } void ChartSubStreamHandler::handleTextPropsStream(TextPropsStreamRecord* record) { if (!record) return; - DEBUG << "rgb=" << record->rgb().length() << " " << record->rgb() << std::endl; + DEBUG << "rgbLength=" << record->rgb().length() << " rgbString=" << record->rgb() << std::endl; //TODO } @@ -1296,7 +1296,10 @@ { if (!record) return; DEBUG << "fAutoMin=" << record->isFAutoMin() << " fAutoMax=" << record->isFAutoMax() << " fAutoMajor=" << record->isFAutoMajor() << " fAutoMinor=" << record->isFAutoMinor() << " fAutoCross=" << record->isFAutoCross() << " fLog=" << record->isFLog() << " fReversed=" << record->isFReversed() << " fMaxCross=" << record->isFMaxCross() << std::endl; - //TODO + if ( Charting::Axis *axis = dynamic_cast< Charting::Axis* > ( m_currentObj ) ) { + axis->m_reversed = record->isFReversed(); + axis->m_logarithmic = record->isFLog(); + } } void ChartSubStreamHandler::handleTick(TickRecord *record) diff -Nru calligra-2.3.86/filters/tables/excel/sidewinder/xmltk.h calligra-2.3.87/filters/tables/excel/sidewinder/xmltk.h --- calligra-2.3.86/filters/tables/excel/sidewinder/xmltk.h 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/filters/tables/excel/sidewinder/xmltk.h 2012-01-28 07:04:47.000000000 +0000 @@ -60,6 +60,43 @@ XmlTkTpb = 0x0020 }; +QByteArray xmlTkTagName(XmlTkTags tag) { + switch (tag) { + case XmlTkBackWallThickness: return "BackWallThickness"; + case XmlTkBaseTimeUnitFrt: return "BaseTimeUnitFrt"; + case XmlTkColorMappingOverride: return "ColorMappingOverride"; + case XmlTkDispBlanksAsFrt: return "DispBlanksAsFrt"; + case XmlTkFloorThicknessFrt: return "FloorThicknessFrt"; + case XmlTkFormatCodeFrt: return "FormatCodeFrt"; + case XmlTkHeightPercent: return "HeightPercent"; + case XmlTkLogBaseFrt: return "LogBaseFrt"; + case XmlTkMajorUnitFrt: return "MajorUnitFrt"; + case XmlTkMajorUnitTypeFrt: return "MajorUnitTypeFrt"; + case XmlTkMaxFrt: return "MaxFrt"; + case XmlTkMinFrt: return "MinFrt"; + case XmlTkMinorUnitFrt: return "MinorUnitFrt"; + case XmlTkMinorUnitTypeFrt: return "MinorUnitTypeFrt"; + case XmlTkNoMultiLvlLbl: return "NoMultiLvlLbl"; + case XmlTkOverlay: return "Overlay"; + case XmlTkPerspectiveFrt: return "PerspectiveFrt"; + case XmlTkPieComboFrom12Frt: return "PieComboFrom12Frt"; + case XmlTkRAngAxOffFrt: return "RAngAxOffFrt"; + case XmlTkRotXFrt: return "RotXFrt"; + case XmlTkRotYFrt: return "RotYFrt"; + case XmlTkShowDLblsOverMax: return "ShowDLblsOverMax"; + case XmlTkSpb: return "Spb"; + case XmlTkStartSurface: return "StartSurface"; + case XmlTkStyle: return "Style"; + case XmlTkSymbolFrt: return "SymbolFrt"; + case XmlTkThemeOverride: return "ThemeOverride"; + case XmlTkTickLabelPositionFrt: return "TickLabelPositionFrt"; + case XmlTkTickLabelSkipFrt: return "TickLabelSkipFrt"; + case XmlTkTickMarkSkipFrt: return "TickMarkSkipFrt"; + case XmlTkTpb: return "Tpb"; + } + return QByteArray(); +} + class XmlTk { public: unsigned m_xmlTkTag; @@ -192,7 +229,7 @@ QList parseXmlTkChain(const unsigned char* data, int size) { QList tokens; - for (unsigned p = 0; p + 4 < size;) { + for (int p = 0; p + 4 < size;) { XmlTk *t = parseXmlTk(data + p); if (!t) break; tokens.append(t); diff -Nru calligra-2.3.86/filters/tables/html/kspread_html_import.desktop calligra-2.3.87/filters/tables/html/kspread_html_import.desktop --- calligra-2.3.86/filters/tables/html/kspread_html_import.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/filters/tables/html/kspread_html_import.desktop 2012-01-28 07:04:47.000000000 +0000 @@ -13,6 +13,7 @@ Name[et]=KSpreadi HTML-i impordifilter Name[fr]=Filtre d'importation HTML pour KSpread Name[ga]=Scagaire Iompórtála HTML le haghaidh KSpread +Name[hu]=HTML importszűrő a KSpreadhez Name[it]=Filtro di importazione HTML per KSpread Name[ja]=KSpread HTML インポートフィルタ Name[kk]=HTML -> KSpread импорт сүзгісі diff -Nru calligra-2.3.86/filters/tables/xlsx/ChartExport.cpp calligra-2.3.87/filters/tables/xlsx/ChartExport.cpp --- calligra-2.3.86/filters/tables/xlsx/ChartExport.cpp 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/filters/tables/xlsx/ChartExport.cpp 2012-01-28 07:04:47.000000000 +0000 @@ -563,6 +563,13 @@ KoGenStyle axisstyle(KoGenStyle::ChartAutoStyle, "chart"); + if (axis->m_reversed) + axisstyle.addProperty( "chart:reverse-direction", "true", KoGenStyle::ChartType ); + + //FIXME this hits an infinite-looping bug in kdchart it seems... maybe fixed with a newer version +// if (axis->m_logarithmic) +// axisstyle.addProperty( "chart:logarithmic", "true", KoGenStyle::ChartType ); + axisstyle.addProperty( "fo:font-size", QString( "%0pt" ).arg( chart()->m_textSize ), KoGenStyle::TextType ); QColor labelColor = labelFontColor(); diff -Nru calligra-2.3.86/filters/tables/xlsx/Charting.h calligra-2.3.87/filters/tables/xlsx/Charting.h --- calligra-2.3.86/filters/tables/xlsx/Charting.h 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/filters/tables/xlsx/Charting.h 2012-01-28 07:04:47.000000000 +0000 @@ -282,7 +282,10 @@ QString m_numberFormat; - Axis(Type type) : Obj(), m_type(type) {} + bool m_reversed; + bool m_logarithmic; + + Axis(Type type) : Obj(), m_type(type), m_reversed(false), m_logarithmic(false) {} virtual ~Axis() {} }; diff -Nru calligra-2.3.86/filters/tables/xlsx/kspread_xlsx_import.desktop calligra-2.3.87/filters/tables/xlsx/kspread_xlsx_import.desktop --- calligra-2.3.86/filters/tables/xlsx/kspread_xlsx_import.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/filters/tables/xlsx/kspread_xlsx_import.desktop 2012-01-28 07:04:47.000000000 +0000 @@ -14,6 +14,7 @@ Name[fi]=MS Excel 2007 -tuontisuodin KSpreadille Name[fr]=Filtre d'importation MS Excel 2007 de KSpread Name[ga]=Scagaire Iompórtála Microsoft Excel 2007 le haghaidh KSpread +Name[hu]=Microsoft Excel 2007 importszűrő a KSpreadhez Name[it]=Filtro di importazione MS Excel 2007 per KSpread Name[ja]=KSpread MS Excel 2007 インポートフィルタ Name[kk]=MS Excel 2007 -> KSpread импорт сүзгісі diff -Nru calligra-2.3.86/filters/tables/xlsx/XlsxXmlChartReader.cpp calligra-2.3.87/filters/tables/xlsx/XlsxXmlChartReader.cpp --- calligra-2.3.86/filters/tables/xlsx/XlsxXmlChartReader.cpp 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/filters/tables/xlsx/XlsxXmlChartReader.cpp 2012-01-28 07:04:47.000000000 +0000 @@ -615,6 +615,7 @@ const QXmlStreamAttributes attrs(attributes()); axis->m_numberFormat = attrs.value("formatCode").toString(); } + ELSE_TRY_READ_IF(scaling) } } READ_EPILOGUE @@ -644,6 +645,33 @@ else if ( qualifiedName() == QLatin1String( QUALIFIED_NAME(majorGridlines) ) ) { axis->m_majorGridlines = Charting::Axis::Gridline( Charting::LineFormat( Charting::LineFormat::Solid ) ); } + ELSE_TRY_READ_IF(scaling) + } + } + READ_EPILOGUE +} + +#undef CURRENT_EL +#define CURRENT_EL scaling +KoFilter::ConversionStatus XlsxXmlChartReader::read_scaling() +{ + READ_PROLOGUE + Q_ASSERT(!m_context->m_chart->m_axes.isEmpty()); + Charting::Axis* axis = m_context->m_chart->m_axes.last(); + while (!atEnd()) { + readNext(); + BREAK_IF_END_OF(CURRENT_EL) + if (isStartElement()) { + if ( qualifiedName() == QLatin1String( QUALIFIED_NAME(orientation) ) ) { + const QXmlStreamAttributes attrs(attributes()); + TRY_READ_ATTR_WITHOUT_NS(val) + axis->m_reversed = ( val == QLatin1String( "maxMin" ) ); + } + else if ( qualifiedName() == QLatin1String( QUALIFIED_NAME(logBase) ) ) { + const QXmlStreamAttributes attrs(attributes()); + TRY_READ_ATTR_WITHOUT_NS(val) + axis->m_logarithmic = ( val.toDouble() >= 2. ); + } } } READ_EPILOGUE diff -Nru calligra-2.3.86/filters/tables/xlsx/XlsxXmlChartReader.h calligra-2.3.87/filters/tables/xlsx/XlsxXmlChartReader.h --- calligra-2.3.86/filters/tables/xlsx/XlsxXmlChartReader.h 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/filters/tables/xlsx/XlsxXmlChartReader.h 2012-01-28 07:04:47.000000000 +0000 @@ -58,6 +58,7 @@ KoFilter::ConversionStatus read_plotArea(); KoFilter::ConversionStatus read_valAx(); KoFilter::ConversionStatus read_catAx(); + KoFilter::ConversionStatus read_scaling(); KoFilter::ConversionStatus read_title(); KoFilter::ConversionStatus read_legend(); KoFilter::ConversionStatus read_spPr(); diff -Nru calligra-2.3.86/filters/tables/xlsx/XlsxXmlDrawingReader.cpp calligra-2.3.87/filters/tables/xlsx/XlsxXmlDrawingReader.cpp --- calligra-2.3.86/filters/tables/xlsx/XlsxXmlDrawingReader.cpp 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/filters/tables/xlsx/XlsxXmlDrawingReader.cpp 2012-01-28 07:04:47.000000000 +0000 @@ -494,6 +494,9 @@ #define blipFill_NS "a" +#undef MSOOXML_CURRENT_NS +#define MSOOXML_CURRENT_NS "a" // required for the next header file + // in PPTX we do not have pPr, so p@text:style-name should be added earlier //#define SETUP_PARA_STYLE_IN_READ_P #include // adds a:p, a:pPr, a:t, a:r, etc. diff -Nru calligra-2.3.86/filters/words/abiword/words_abiword_export.desktop calligra-2.3.87/filters/words/abiword/words_abiword_export.desktop --- calligra-2.3.86/filters/words/abiword/words_abiword_export.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/filters/words/abiword/words_abiword_export.desktop 2012-01-28 07:04:47.000000000 +0000 @@ -3,11 +3,14 @@ Name=Words AbiWord Export Filter Name[bg]=Филтър за изнасяне от Words в AbiWord Name[ca]=Filtre d'exportació AbiWord per al Words +Name[ca@valencia]=Filtre d'exportació AbiWord per al Words Name[cs]=Exportní filtr AbiWord pro Words Name[da]=AbiWord-eksportfilter til Words Name[de]=Words AbiWord-Exportfilter +Name[el]=Φίλτρο εξαγωγής Abiword του Words Name[es]=Filtro de Words de exportación a AbiWord Name[et]=Wordsi AbiWordi ekspordifilter +Name[hu]=Words AbiWord exportszűrő Name[it]=Filtro di esportazione AbiWord per Words Name[kk]=Words -> AbiWord экспорт сүзгісі Name[nb]=AbiWord-eksportfilter for Words diff -Nru calligra-2.3.86/filters/words/abiword/words_abiword_import.desktop calligra-2.3.87/filters/words/abiword/words_abiword_import.desktop --- calligra-2.3.86/filters/words/abiword/words_abiword_import.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/filters/words/abiword/words_abiword_import.desktop 2012-01-28 07:04:47.000000000 +0000 @@ -3,11 +3,14 @@ Name=Words AbiWord Import Filter Name[bg]=Филтър за внасяне от AbiWord в Words Name[ca]=Filtre d'importació AbiWord per al Words +Name[ca@valencia]=Filtre d'importació AbiWord per al Words Name[cs]=Importní filtr AbiWord pro Words Name[da]=Applixword-importfilter til Words Name[de]=Words AbiWord-Importfilter +Name[el]=Φίλτρο εισαγωγής Abiword του Words Name[es]=Filtro de Words de importación de AbiWord Name[et]=Wordsi AbiWordi impordifilter +Name[hu]=Words AbiWord importszűrő Name[it]=Filtro di importazione AbiWord per Words Name[kk]=AbiWord -> Words импорт сүзгісі Name[nb]=AbiWord-importfilter for Words diff -Nru calligra-2.3.86/filters/words/amipro/words_amipro_export.desktop calligra-2.3.87/filters/words/amipro/words_amipro_export.desktop --- calligra-2.3.86/filters/words/amipro/words_amipro_export.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/filters/words/amipro/words_amipro_export.desktop 2012-01-28 07:04:47.000000000 +0000 @@ -3,11 +3,14 @@ Name=Words AmiPro Export Filter Name[bg]=Филтър за изнасяне от Words в AmiPro Name[ca]=Filtre d'exportació AmiPro per al Words +Name[ca@valencia]=Filtre d'exportació AmiPro per al Words Name[cs]=Exportní filtr AmiPro pro Words Name[da]=AmiPro-eksportfilter til Words Name[de]=Words AmiPro-Exportfilter +Name[el]=Φίλτρο εξαγωγής AmiPro του Words Name[es]=Filtro de Words de exportación a AmiPro Name[et]=Wordsi AmiPro ekspordifilter +Name[hu]=Words AmiPro exportszűrő Name[it]=Filtro di esportazione AmiPro per Words Name[kk]=Words -> AmiPro экспорт сүзгісі Name[nb]=AmiPro-eksportfilter for Words diff -Nru calligra-2.3.86/filters/words/amipro/words_amipro_import.desktop calligra-2.3.87/filters/words/amipro/words_amipro_import.desktop --- calligra-2.3.86/filters/words/amipro/words_amipro_import.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/filters/words/amipro/words_amipro_import.desktop 2012-01-28 07:04:47.000000000 +0000 @@ -3,11 +3,14 @@ Name=Words AmiPro Import Filter Name[bg]=Филтър за внасяне от AmiPro в Words Name[ca]=Filtre d'importació AmiPro per al Words +Name[ca@valencia]=Filtre d'importació AmiPro per al Words Name[cs]=Importní filtr AmiPro pro Words Name[da]=AmiPro-importfilter til Words Name[de]=Words AmiPro-Importfilter +Name[el]=Φίλτρο εισαγωγής AmiPro του Words Name[es]=Filtro de Words de importación de AmiPro Name[et]=Wordsi AmiPro impordifilter +Name[hu]=Words AmiPro importszűrő Name[it]=Filtro di importazione AmiPro per Words Name[kk]=AmiPro -> Words импорт сүзгісі Name[nb]=AmiPro-importfilter for Words diff -Nru calligra-2.3.86/filters/words/applixword/words_applixword_import.desktop calligra-2.3.87/filters/words/applixword/words_applixword_import.desktop --- calligra-2.3.86/filters/words/applixword/words_applixword_import.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/filters/words/applixword/words_applixword_import.desktop 2012-01-28 07:04:47.000000000 +0000 @@ -3,11 +3,14 @@ Name=Words Applixword Import Filter Name[bg]=Филтър за внасяне от Applixword в Words Name[ca]=Filtre d'importació Applixword per al Words +Name[ca@valencia]=Filtre d'importació Applixword per al Words Name[cs]=Importní filtr Applixword pro Words Name[da]=Applixword-importfilter til Words Name[de]=Words Applixword-Importfilter +Name[el]=Φίλτρο εισαγωγής Applixword του Words Name[es]=Filtro de Words de importación de Applixword Name[et]=Wordsi Applixwordi impordifilter +Name[hu]=Words Applix Words importszűrő Name[it]=Filtro di importazione Applixword per Words Name[kk]=Applixword -> Words импорт сүзгісі Name[nb]=Applixword-importfilter for Words diff -Nru calligra-2.3.86/filters/words/ascii/AsciiImport.cpp calligra-2.3.87/filters/words/ascii/AsciiImport.cpp --- calligra-2.3.86/filters/words/ascii/AsciiImport.cpp 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/filters/words/ascii/AsciiImport.cpp 2012-01-28 07:04:47.000000000 +0000 @@ -135,10 +135,6 @@ } } - QTextStream stream(&in); - Q_ASSERT(codec); - stream.setCodec(codec); - int paragraphStrategy = 0; if (!m_chain->manager()->getBatchMode()) { QPointer dialog = new AsciiImportDialog(codec->name(), QApplication::activeWindow()); @@ -209,6 +205,10 @@ cursor.setCharFormat(charFormat); #endif + QTextStream stream(&in); + Q_ASSERT(codec); + stream.setCodec(codec); + switch (paragraphStrategy) { case 1: { // Sentence: Line-break at the end of a sentence. QString stoppingPunctuation(".!?"); diff -Nru calligra-2.3.86/filters/words/ascii/words_ascii_export.desktop calligra-2.3.87/filters/words/ascii/words_ascii_export.desktop --- calligra-2.3.86/filters/words/ascii/words_ascii_export.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/filters/words/ascii/words_ascii_export.desktop 2012-01-28 07:04:47.000000000 +0000 @@ -3,11 +3,14 @@ Name=Words Ascii Export Filter Name[bg]=Филтър за изнасяне от Words в ASCII Name[ca]=Filtre d'exportació ASCII per al Words +Name[ca@valencia]=Filtre d'exportació ASCII per al Words Name[cs]=Exportní filtr formátu Ascii pro Words Name[da]=ASCII-eksportfilter til Words Name[de]=Words ASCII-Exportfilter +Name[el]=Φίλτρο εξαγωγής ascii του Words Name[es]=Filtro de Words de exportación a ASCII Name[et]=Wordsi ASCII ekspordifilter +Name[hu]=Words ASCII exportszűrő Name[it]=Filtro di esportazione ASCII per Words Name[kk]=Words -> ASCII экспорт сүзгісі Name[nb]=Ascii-eksportfilter for Words diff -Nru calligra-2.3.86/filters/words/ascii/words_ascii_import.desktop calligra-2.3.87/filters/words/ascii/words_ascii_import.desktop --- calligra-2.3.86/filters/words/ascii/words_ascii_import.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/filters/words/ascii/words_ascii_import.desktop 2012-01-28 07:04:47.000000000 +0000 @@ -3,11 +3,14 @@ Name=Words ASCII Import Filter Name[bg]=Филтър за внасяне от ASCII в Words Name[ca]=Filtre d'importació ASCII per al Words +Name[ca@valencia]=Filtre d'importació ASCII per al Words Name[cs]=Importní filtr ASCII pro Words Name[da]=ASCII-importfilter til Words Name[de]=Words ASCII-Importfilter +Name[el]=Φίλτρο εισαγωγής ASCII του Words Name[es]=Filtro de Words de importación de ASCII Name[et]=Wordsi ASCII impordifilter +Name[hu]=Words ASCII importszűrő Name[it]=Filtro di importazione ASCII per Words Name[kk]=ASCII -> Words импорт сүзгісі Name[nb]=Ascii-importfilter for Words diff -Nru calligra-2.3.86/filters/words/dcm/words_dcm_import.desktop calligra-2.3.87/filters/words/dcm/words_dcm_import.desktop --- calligra-2.3.86/filters/words/dcm/words_dcm_import.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/filters/words/dcm/words_dcm_import.desktop 2012-01-28 07:04:47.000000000 +0000 @@ -3,12 +3,16 @@ Name=Words DICOM Structured Report Import Filter Name[bg]=Филтър за внасяне от структурен отчет DICOM в Words Name[ca]=Filtre d'importació d'informes estructurats DICOM per al Words +Name[ca@valencia]=Filtre d'importació d'informes estructurats DICOM per al Words Name[cs]=Importní filtr formátu Strukturované zprávy DICOM pro Words Name[da]=Importfilter til DICOM-strukturerede rapporter til Words Name[de]=Words DICOM-Strukturreport-Importfilter +Name[el]=Φίλτρο εισαγωγής δομημένων αναφορών Words DICOM Name[es]=Filtro de Words de importación de informes estructurados de DICOM Name[et]=Wordsi DICOM-i struktureeritud aruande impordifilter +Name[hu]=Words DICOM struktúrált jelentés importszűrő Name[it]=Filtro di importazione di rapporti strutturati DICOM per Words +Name[kk]=DICOM құрлымды баянат -> Words импорт сүзгісі Name[nb]=Words DICOM importfilter for strukturert rapport Name[nds]=Importfilter för Words för DICOM-Struktuurberichten Name[nl]=Importfilter voor Words voor DICOM gestructureerd rapport diff -Nru calligra-2.3.86/filters/words/docbook/words_docbook_export.desktop calligra-2.3.87/filters/words/docbook/words_docbook_export.desktop --- calligra-2.3.86/filters/words/docbook/words_docbook_export.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/filters/words/docbook/words_docbook_export.desktop 2012-01-28 07:04:47.000000000 +0000 @@ -3,11 +3,14 @@ Name=Words SGML DocBook Export Filter Name[bg]=Филтър за изнасяне от Words в SGML DocBook Name[ca]=Filtre d'exportació SGML DocBook per al Words +Name[ca@valencia]=Filtre d'exportació SGML DocBook per al Words Name[cs]=Exportní filtr SGML Docbook pro Words Name[da]=SGML DocBook-eksportfilter til Words Name[de]=Words SGML-DocBook-Exportfilter +Name[el]=Φίλτρο εξαγωγής SGML Docbook του Words Name[es]=Filtro de Words de exportación a SGML DocBook Name[et]=Wordsi SGML DocBooki ekspordifilter +Name[hu]=Words SGML DocBook exportszűrő Name[it]=Filtro di esportazione SGML DocBook per Words Name[kk]=Words -> SGML DocBook экспорт сүзгісі Name[nb]=SGML DocBook eksportfilter for Words diff -Nru calligra-2.3.86/filters/words/docx/DocxXmlDocumentReader.cpp calligra-2.3.87/filters/words/docx/DocxXmlDocumentReader.cpp --- calligra-2.3.86/filters/words/docx/DocxXmlDocumentReader.cpp 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/filters/words/docx/DocxXmlDocumentReader.cpp 2012-01-28 07:04:47.000000000 +0000 @@ -5214,19 +5214,6 @@ kDebug() << "insideH:" << m_currentDefaultCellStyle->insideH.style; kDebug() << "insideV:" << m_currentDefaultCellStyle->insideV.style; #endif - //reference to the default parent style from styles.xml - if (m_currentTableStyleName.isEmpty() && - m_context->m_namedDefaultStyles.contains("table")) - { - m_currentTableStyleName = m_context->m_namedDefaultStyles.value("table"); - MSOOXML::DrawingTableStyle* tableStyle = m_context->m_tableStyles.value(m_currentTableStyleName); - Q_ASSERT(tableStyle); - if (tableStyle) { - m_tableMainStyle->setHorizontalAlign(tableStyle->mainStyle->horizontalAlign()); - } - } - m_currentTableStyleBase = m_currentTableStyleName; - m_currentTableStyleName.clear(); } ELSE_TRY_READ_IF(tblGrid) ELSE_TRY_READ_IF(tr) @@ -5237,6 +5224,18 @@ } } + //reference to the default parent style from styles.xml + if (m_currentTableStyleName.isEmpty() && + m_context->m_namedDefaultStyles.contains("table")) + { + m_currentTableStyleName = m_context->m_namedDefaultStyles.value("table"); + MSOOXML::DrawingTableStyle* tableStyle = m_context->m_tableStyles.value(m_currentTableStyleName); + Q_ASSERT(tableStyle); + if (tableStyle) { + m_tableMainStyle->setHorizontalAlign(tableStyle->mainStyle->horizontalAlign()); + } + } + //Floating Table if (!m_currentDrawStyleName.isEmpty()) { body->startElement("draw:frame"); @@ -5294,7 +5293,7 @@ converterProperties.setRoles(m_activeRoles); converterProperties.setLocalStyles(*m_currentLocalTableStyles); converterProperties.setLocalDefaulCelltStyle(m_currentDefaultCellStyle); - MSOOXML::DrawingTableStyle* tableStyle = m_context->m_tableStyles.value(m_currentTableStyleBase); + MSOOXML::DrawingTableStyle* tableStyle = m_context->m_tableStyles.value(m_currentTableStyleName); MSOOXML::DrawingTableStyleConverter styleConverter(converterProperties, tableStyle); QPair spans; diff -Nru calligra-2.3.86/filters/words/docx/DocxXmlDocumentReader.h calligra-2.3.87/filters/words/docx/DocxXmlDocumentReader.h --- calligra-2.3.86/filters/words/docx/DocxXmlDocumentReader.h 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/filters/words/docx/DocxXmlDocumentReader.h 2012-01-28 07:04:47.000000000 +0000 @@ -259,7 +259,6 @@ MSOOXML::TableStyleProperties* m_currentTableStyleProperties; MSOOXML::TableStyleProperties* m_currentDefaultCellStyle; - QString m_currentTableStyleBase; //! Name of the KoGenStyle style of type GraphicAutoStyle prepared for the //! parent element containing the element diff -Nru calligra-2.3.86/filters/words/docx/words_docx_import.desktop calligra-2.3.87/filters/words/docx/words_docx_import.desktop --- calligra-2.3.86/filters/words/docx/words_docx_import.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/filters/words/docx/words_docx_import.desktop 2012-01-28 07:04:47.000000000 +0000 @@ -3,11 +3,14 @@ Name=MS Word 2007 Import Filter for Words Name[bg]=Филтър за внасяне от MS Word 2007 в Words Name[ca]=Filtre d'importació MS Word 2007 per al Words +Name[ca@valencia]=Filtre d'importació MS Word 2007 per al Words Name[cs]=Importní filtr MS Word 2007 pro Words Name[da]=MS Word 2007 importfilter til Words Name[de]=Words MS-Word-2007-Importfilter +Name[el]=Φίλτρο εισαγωγής MS Word 2007 για το Words Name[es]=Filtro de Words de importación de MS Word 2007 Name[et]=Wordsi MS Word 2007 impordifilter +Name[hu]=Microsoft Word 2007 importszűrő a Wordshöz Name[it]=Filtro di importazione MS Word 2007 per Words Name[kk]=MS Word 2007 -> Words импорт сүзгісі Name[nb]=MS Word 2007 importfilter for Words diff -Nru calligra-2.3.86/filters/words/hancomword/words_hancomword_import.desktop calligra-2.3.87/filters/words/hancomword/words_hancomword_import.desktop --- calligra-2.3.86/filters/words/hancomword/words_hancomword_import.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/filters/words/hancomword/words_hancomword_import.desktop 2012-01-28 07:04:47.000000000 +0000 @@ -3,11 +3,14 @@ Name=Words HancomWord Import Filter Name[bg]=Филтър за внасяне от HancomWord в Words Name[ca]=Filtre d'importació HancomWord per al Words +Name[ca@valencia]=Filtre d'importació HancomWord per al Words Name[cs]=Importní filtr HancomWord pro Words Name[da]=HancomWord-importfilter til Words Name[de]=Words HancomWord-Importfilter +Name[el]=Φίλτρο εισαγωγής HancomWord του Words Name[es]=Filtro de Words de importación de HancomWord Name[et]=Wordsi HancomWordi impordifilter +Name[hu]=Words HancomWord importszűrő Name[it]=Filtro di importazione HancomWord per Words Name[kk]=HancomWord -> Words импорт сүзгісі Name[nb]=HancomWord-importfilter for Words diff -Nru calligra-2.3.86/filters/words/html/export/words_html_export.desktop calligra-2.3.87/filters/words/html/export/words_html_export.desktop --- calligra-2.3.86/filters/words/html/export/words_html_export.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/filters/words/html/export/words_html_export.desktop 2012-01-28 07:04:47.000000000 +0000 @@ -3,11 +3,14 @@ Name=Words HTML Export Filter Name[bg]=Филтър за изнасяне от Words в HTML Name[ca]=Filtre d'exportació HTML per al Words +Name[ca@valencia]=Filtre d'exportació HTML per al Words Name[cs]=Exportní filtr HTML pro Words Name[da]=HTML-eksportfilter til Words Name[de]=Words HTML-Exportfilter +Name[el]=Φίλτρο εξαγωγής HTML του Words Name[es]=Filtro de Words de exportación a HTML Name[et]=Wordsi HTML-i ekspordifilter +Name[hu]=Words HTML exportszűrő Name[it]=Filtro di esportazione HTML per Words Name[kk]=Words -> HTML экспорт сүзгісі Name[nb]=HTML-eksportfilter for Words diff -Nru calligra-2.3.86/filters/words/html/import/words_html_import.desktop calligra-2.3.87/filters/words/html/import/words_html_import.desktop --- calligra-2.3.86/filters/words/html/import/words_html_import.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/filters/words/html/import/words_html_import.desktop 2012-01-28 07:04:47.000000000 +0000 @@ -3,11 +3,14 @@ Name=Words HTML Import Filter Name[bg]=Филтър за внасяне от HTML в Words Name[ca]=Filtre d'importació HTML per al Words +Name[ca@valencia]=Filtre d'importació HTML per al Words Name[cs]=Importní filtr HTML pro Words Name[da]=HTML-importfilter til Words Name[de]=Words HTML-Importfilter +Name[el]=Φίλτρο εισαγωγής HTML του Words Name[es]=Filtro de Words de importación de HTML Name[et]=Wordsi HTML-i impordifilter +Name[hu]=Words HTML importszűrő Name[it]=Filtro di importazione HTML per Words Name[kk]=HTML -> Words импорт сүзгісі Name[nb]=HTML-importfilter for Words diff -Nru calligra-2.3.86/filters/words/html-odf/CMakeLists.txt calligra-2.3.87/filters/words/html-odf/CMakeLists.txt --- calligra-2.3.86/filters/words/html-odf/CMakeLists.txt 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/filters/words/html-odf/CMakeLists.txt 2012-01-28 07:04:47.000000000 +0000 @@ -5,7 +5,7 @@ htmlodfexport.cpp document.cpp exportdialog.cpp -convert.cpp +ManifestParser.cpp ) kde4_add_ui_files(htmlodf_export_PART_SRCS exportwidget.ui ) diff -Nru calligra-2.3.86/filters/words/html-odf/conversion/converter.xsl calligra-2.3.87/filters/words/html-odf/conversion/converter.xsl --- calligra-2.3.86/filters/words/html-odf/conversion/converter.xsl 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/filters/words/html-odf/conversion/converter.xsl 2012-01-28 07:04:47.000000000 +0000 @@ -3,7 +3,8 @@ This file is part of the Calligra project Copyright (C) 2010 Pramod S G Copyright (C) 2010 Srihari Prasad G V - + Copyright (C) 2011 Stuart Dickson + This library is free software; you can redistribute it and/or modify it under the terms of the Library GNU General Public version 2 of the License, or (at your option) version 3 or, @@ -45,45 +46,43 @@ xmlns:ooow="http://openoffice.org/2004/writer" xmlns:oooc="http://openoffice.org/2004/calc" xmlns:int="http://opendocumentfellowship.org/internal" - xmlns="http://www.w3.org/1999/xhtml" xmlns:xsl="http://www.w3.org/1999/XSL/Transform" version="2.0"> - 1 - #A0A0A0 + #F0F0F0 0 - - + + + + - + - - + + - - + + + + - + + - - - - + + + + - - - @@ -99,9 +98,25 @@ office:metadata end + + - <xsl:apply-templates/> + + + + + + + + + + + @@ -122,8 +137,8 @@ - - + + html { @@ -142,11 +157,11 @@ { background-color: ; margin: 1.5em; - position: absolute; } body { - position: absolute; + max-width: 40em; + margin:0 auto; /* center document content */ } } table @@ -154,8 +169,6 @@ border: thin solid gray; border-collapse: collapse; empty-cells: show; - font-size: 10pt; - table-layout: fixed; } td { @@ -170,38 +183,27 @@ { text-align: right; } - td p - { - max-height: 2.5ex; - overflow: hidden; - } + td p:hover { max-height: none; } - p - { - margin-top: 0; - margin-bottom: 0; - } + .page-break { margin: 1em; } - - - + - - - - - - + + + + + - + @@ -214,40 +216,21 @@ - - - - - - - - - - - - - - - - p{ } - - - ._ - - - { - - } - - + ._ + + + { + + } + - + padding-top: ; @@ -263,43 +246,124 @@ ; font-style: ; - - - - - - - - - - - -

-
- - - - - - -
Change the color to blue.
- - - - - - - - - -
- -
- - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+
+ + + + + + + + + + + + + + + + + - + diff -Nru calligra-2.3.86/filters/words/html-odf/convert.cpp calligra-2.3.87/filters/words/html-odf/convert.cpp --- calligra-2.3.86/filters/words/html-odf/convert.cpp 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/filters/words/html-odf/convert.cpp 1970-01-01 00:00:00.000000000 +0000 @@ -1,78 +0,0 @@ -/* This file is part of the Calligra project - Copyright (C) 2010 Pramod S G - - This library is free software; you can redistribute it and/or - modify it under the terms of the Library GNU General Public - version 2 of the License, or (at your option) version 3 or, - at the discretion of KDE e.V (which shall act as a proxy as in - section 14 of the GPLv3), any later version.. - - This library is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - Library General Public License for more details. - - You should have received a copy of the GNU Library General Public License - along with this library; see the file COPYING.LIB. If not, write to - the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, - Boston, MA 02110-1301, USA. -*/ - -#include -#include - -//Added by qt3to4: -#include -#include -#include - -#include -#include -#include -#include "convert.h" -#include - -void Conversion::convert(const QString& inputFileName, QFile* outputFile) -{ - - QByteArray contall(""); - contall.append(""); - - QByteArray cont; - QByteArray sty; - QByteArray met; - - KoStore* storecont = KoStore::createStore(inputFileName, KoStore::Read); - storecont->extractFile("meta.xml",met); - met.remove(0,38); - contall.append(met); - - storecont->extractFile("styles.xml",sty); - sty.remove(0,38); - contall.append(sty); - - storecont->extractFile("content.xml",cont); - cont.remove(0,38); - contall.append(cont); - - contall.append(""); - - QFile temp1(KStandardDirs::locate("data","words/html-odf/converter.xsl")); - temp1.open(QIODevice::ReadOnly); - - - QXmlQuery myQuery(QXmlQuery::XSLT20); - myQuery.setFocus(contall); - myQuery.setQuery(temp1.readAll()); - myQuery.evaluateTo(outputFile); - - temp1.close(); - contall.clear(); - met.clear(); - sty.clear(); - cont.clear(); - - delete storecont; - - -} diff -Nru calligra-2.3.86/filters/words/html-odf/convert.h calligra-2.3.87/filters/words/html-odf/convert.h --- calligra-2.3.86/filters/words/html-odf/convert.h 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/filters/words/html-odf/convert.h 1970-01-01 00:00:00.000000000 +0000 @@ -1,34 +0,0 @@ -/* This file is part of the Calligra project - Copyright (C) 2010 Pramod S G - - This library is free software; you can redistribute it and/or - modify it under the terms of the Library GNU General Public - version 2 of the License, or (at your option) version 3 or, - at the discretion of KDE e.V (which shall act as a proxy as in - section 14 of the GPLv3), any later version.. - - This library is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - Library General Public License for more details. - - You should have received a copy of the GNU Library General Public License - along with this library; see the file COPYING.LIB. If not, write to - the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, - Boston, MA 02110-1301, USA. -*/ - -#ifndef CONVERT_H -#define CONVERT_H - -#include - - -class Conversion -{ -public: - void convert(const QString &inputFileName, QFile *outputFile); -}; - - -#endif // CONVERT_H diff -Nru calligra-2.3.86/filters/words/html-odf/htmlodfexport.cpp calligra-2.3.87/filters/words/html-odf/htmlodfexport.cpp --- calligra-2.3.86/filters/words/html-odf/htmlodfexport.cpp 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/filters/words/html-odf/htmlodfexport.cpp 2012-01-28 07:04:47.000000000 +0000 @@ -1,6 +1,7 @@ /* This file is part of the Calligra project Copyright (C) 2010 Pramod S G Copyright (C) 2010 Srihari Prasad G V + Copyright (C) 2012 Stuart Dickson This library is free software; you can redistribute it and/or modify it under the terms of the Library GNU General Public @@ -30,9 +31,11 @@ #include #include #include +#include #include #include +#include #include #include @@ -42,12 +45,12 @@ #include #include -#include -#include #include #include +#include "ManifestParser.h" + K_PLUGIN_FACTORY(HTMLOdfExportFactory, registerPlugin();) K_EXPORT_PLUGIN(HTMLOdfExportFactory("calligrafilters")) @@ -61,26 +64,34 @@ { } - - KoFilter::ConversionStatus HTMLOdfExport::convert(const QByteArray &from, const QByteArray &to) { // check for proper conversion if (to != "text/html" - || from != "application/vnd.oasis.opendocument.text") + || from != "application/vnd.oasis.opendocument.text") { return KoFilter::NotImplemented; + } kDebug(30503) << "######################## HTMLOdfExport::convert ########################"; QString inputFile = m_chain->inputFile(); QString outputFile = m_chain->outputFile(); - + /* TODO Reimplement export dialog when future functionality could benefit from user input. + * The options of encoding and stylesheets have no effect on the export process at present. + * The dialog was been disabled in the interest of reducing user confusion, avoiding + * frustration should they try and use functionality which is not actually present. + * + * Styles are currently read from the ODT file's styles.xml and content.xml files and embedded + * in the output html. + */ + /* if (!m_chain->manager()->getBatchMode() ) { if (m_dialog->exec() == QDialog::Rejected) { return KoFilter::UserCancelled; } } + */ // Create output files QFile out(outputFile); @@ -89,42 +100,165 @@ out.close(); return KoFilter::FileNotFound; } - Conversion c1; - c1.convert(inputFile, &out); + QFileInfo base(outputFile); - QString filenamewithoutext = outputFile.left(outputFile.lastIndexOf('.')); + QString filenameWithoutExtension = outputFile.left(outputFile.lastIndexOf('.')); + + KoFilter::ConversionStatus error; + error = transformXml(inputFile, &out, filenameWithoutExtension+"/"); + + if (error != KoFilter::OK) { + return error; + } + QString directory=base.absolutePath(); QDir dir(outputFile); - dir.mkdir(filenamewithoutext); - QString stylesheet=filenamewithoutext+"/style.css"; + dir.mkdir(filenameWithoutExtension); + + QString stylesheet=filenameWithoutExtension+"/style.css"; QFile css(stylesheet); - if (!css.open(QIODevice::WriteOnly)){ + if (!css.open(QIODevice::WriteOnly)) { kError(30501) << "Unable to open stylesheet!"; css.close(); return KoFilter::FileNotFound; } + error = extractImages(inputFile, filenameWithoutExtension+"/"); + if (error != KoFilter::OK) { + return error; + } + out.close(); css.close(); - struct Finalizer { public: - Finalizer(KoStore *store) : m_store(store), m_genStyles(0), m_document(0), m_contentWriter(0), m_bodyWriter(0) { } - ~Finalizer() { + Finalizer(KoStore *store) : m_store(store), m_genStyles(0), m_document(0), m_contentWriter(0), m_bodyWriter(0) + { + } + ~Finalizer() + { delete m_store; delete m_genStyles; delete m_document; delete m_contentWriter; delete m_bodyWriter; } KoStore *m_store; KoGenStyles *m_genStyles; Document *m_document; - KoXmlWriter* m_contentWriter; - KoXmlWriter* m_bodyWriter; + KoXmlWriter *m_contentWriter; + KoXmlWriter *m_bodyWriter; }; kDebug(30503) << "######################## HTMLOdfExport::convert done ####################"; + + return KoFilter::OK; +} + + +/* + * Applies the converter.xsl stylesheet tranform on the combination + * of the meta, styles and content xml files within the ODT file. + */ +KoFilter::ConversionStatus HTMLOdfExport::transformXml(const QString &inputFileName, QFile *outputFile, const QString &resourcesPath) +{ + KoFilter::ConversionStatus result = KoFilter::OK; + bool success; + + // Create single xml file from ODT meta, styles and content components + QByteArray contall(""); + contall.append(""); + + QByteArray cont; + QByteArray sty; + QByteArray met; + + KoStore *storecont = KoStore::createStore(inputFileName, KoStore::Read); + storecont->extractFile("meta.xml",met); + met.remove(0,38); // remove xml file header + contall.append(met); + + storecont->extractFile("styles.xml",sty); + sty.remove(0,38); // remove xml file header + contall.append(sty); + + storecont->extractFile("content.xml",cont); + cont.remove(0,38); // remove xml file header + contall.append(cont); + + contall.append(""); + + QFile temp1(KStandardDirs::locate("data","words/html-odf/converter.xsl")); + temp1.open(QIODevice::ReadOnly); + + + // Execute XML transformation + + QXmlQuery myQuery(QXmlQuery::XSLT20); + // bind variables for root of resources and output filename + myQuery.bindVariable(QString("html-odf-resourcesPath"), QVariant(resourcesPath)); + myQuery.bindVariable(QString("html-odf-fileName"), QVariant(outputFile->fileName())); + myQuery.setFocus(contall); + myQuery.setQuery(temp1.readAll()); + success = myQuery.evaluateTo(outputFile); + + if (!success) { + result = KoFilter::ParsingError; + } + + temp1.close(); + contall.clear(); + met.clear(); + sty.clear(); + cont.clear(); + + delete storecont; + + return result; +} + +/* + * Given inputFile, extracts all recognised image types and exports + * these and their containing folders to resourcesPath. + * e.g. + * Picturess/myImage.png would be written to resourcesPath/Pictures/myImage.png + * + * ManifestParser determines which file types should be extracted. + */ +KoFilter::ConversionStatus HTMLOdfExport::extractImages(const QString &inputFile, const QString &resourcesPath) +{ + QDir dir(resourcesPath); + QByteArray manifest; + + KoStore *storecont = KoStore::createStore(inputFile, KoStore::Read); + storecont->extractFile("META-INF/manifest.xml",manifest); + + // parse manifest for file-entry elements. + // The ManifestParser extracts just those files which are suppported + ManifestParser manifestParser; + QXmlInputSource source; + source.setData(manifest); + QXmlSimpleReader reader; + reader.setContentHandler(&manifestParser); + reader.parse(source); + + QString sourceImage; + QString destImage; + QString outputPath; + + // Extract each file + QStringListIterator fileListIt = QStringListIterator(manifestParser.fileList()); + while (fileListIt.hasNext()) { + sourceImage = fileListIt.next(); + destImage = resourcesPath + sourceImage; + + // Create the target directory + outputPath = resourcesPath+sourceImage.left(sourceImage.lastIndexOf('/')); + dir.mkpath(outputPath); + + storecont->extractFile(sourceImage,destImage); + } + return KoFilter::OK; } diff -Nru calligra-2.3.86/filters/words/html-odf/html-odf_export.desktop calligra-2.3.87/filters/words/html-odf/html-odf_export.desktop --- calligra-2.3.86/filters/words/html-odf/html-odf_export.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/filters/words/html-odf/html-odf_export.desktop 2012-01-28 07:04:47.000000000 +0000 @@ -3,11 +3,14 @@ Name=Words HTML-ODF Export Filter Name[bg]=Филтър за изнасяне от Words в HTML-ODF Name[ca]=Filtre d'exportació HTML-ODF per al Words +Name[ca@valencia]=Filtre d'exportació HTML-ODF per al Words Name[cs]=Exportní filtr HTML-ODF pro Words Name[da]=HTML-ODF eksportfilter til Words Name[de]=Words HTML-ODF-Exportfilter +Name[el]=Φίλτρο εξαγωγής HTML-ODF του Words Name[es]=Filtro de Words de exportación a HTML-ODF Name[et]=Wordsi HTML-ODF-i ekspordifilter +Name[hu]=Words HTML-ODF exportszűrő Name[it]=Filtro di esportazione HTML-ODF per Words Name[kk]=Words -> HTML экспорт сүзгісі Name[nb]=HTML-ODF-eksportfilter for Words diff -Nru calligra-2.3.86/filters/words/html-odf/htmlodfexport.h calligra-2.3.87/filters/words/html-odf/htmlodfexport.h --- calligra-2.3.86/filters/words/html-odf/htmlodfexport.h 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/filters/words/html-odf/htmlodfexport.h 2012-01-28 07:04:47.000000000 +0000 @@ -28,6 +28,7 @@ #include #include +class QFile; namespace Words { @@ -41,8 +42,10 @@ public: HTMLOdfExport(QObject* parent, const QVariantList&); virtual ~HTMLOdfExport(); - virtual KoFilter::ConversionStatus convert(const QByteArray& from, const QByteArray& to); + virtual KoFilter::ConversionStatus convert(const QByteArray &from, const QByteArray &to); + KoFilter::ConversionStatus transformXml(const QString &inputFileName, QFile *outputFile, const QString &resourcesPath); + KoFilter::ConversionStatus extractImages(const QString &inputFile, const QString &outputRoot); private: ExportDialog *m_dialog; diff -Nru calligra-2.3.86/filters/words/html-odf/ManifestParser.cpp calligra-2.3.87/filters/words/html-odf/ManifestParser.cpp --- calligra-2.3.86/filters/words/html-odf/ManifestParser.cpp 1970-01-01 00:00:00.000000000 +0000 +++ calligra-2.3.87/filters/words/html-odf/ManifestParser.cpp 2012-01-28 07:04:47.000000000 +0000 @@ -0,0 +1,67 @@ +/* This file is part of the KDE project + Copyright (C) 2012 Stuart Dickson + + This library is free software; you can redistribute it and/or + modify it under the terms of the GNU Library General Public + License as published by the Free Software Foundation; either + version 2 of the License, or (at your option) any later version. + + This library is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Library General Public License for more details. + + You should have received a copy of the GNU Library General Public License + along with this library; see the file COPYING.LIB. If not, write to + the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, + * Boston, MA 02110-1301, USA. +*/ + +#include "ManifestParser.h" + + +bool ManifestParser::startDocument() +{ + m_currentType = QString(); + m_currentPath = QString(); + return true; +} + +bool ManifestParser::endElement(const QString &, const QString &, const QString &name) +{ + m_currentType = QString(); + m_currentPath = QString(); + return true; +} + +bool ManifestParser::startElement(const QString &, const QString &, const QString &name, const QXmlAttributes &attrs) +{ + if (name == "manifest:file-entry") { + QString attrName; + + for (int i=0; i + + This library is free software; you can redistribute it and/or + modify it under the terms of the GNU Library General Public + License as published by the Free Software Foundation; either + version 2 of the License, or (at your option) any later version. + + This library is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Library General Public License for more details. + + You should have received a copy of the GNU Library General Public License + along with this library; see the file COPYING.LIB. If not, write to + the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, + * Boston, MA 02110-1301, USA. +*/ + +#ifndef MANIFESTPARSER_H +#define MANIFESTPARSER_H + +#include "qxml.h" + +/* Parses an odt's manifest.xml file, storing a list of files of supported filetypes. + + Currently this includes: + image/png +*/ +class ManifestParser : public QXmlDefaultHandler +{ +public: + bool startDocument(); + bool endElement(const QString &, const QString &, const QString &name); + bool startElement(const QString &, const QString &, const QString &name, const QXmlAttributes &attrs); + + QStringList fileList() const; + +private: + QString m_currentType; + QString m_currentPath; + QStringList m_fileList; +}; + +#endif \ No newline at end of file diff -Nru calligra-2.3.86/filters/words/kword1.3/import/kword_kword1dot3_import.desktop calligra-2.3.87/filters/words/kword1.3/import/kword_kword1dot3_import.desktop --- calligra-2.3.86/filters/words/kword1.3/import/kword_kword1dot3_import.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/filters/words/kword1.3/import/kword_kword1dot3_import.desktop 2012-01-28 07:04:47.000000000 +0000 @@ -3,11 +3,14 @@ Name=Words's KWord 1.3 Import Filter Name[bg]=Филтър за внасяне от KWord 1.3 в Words Name[ca]=Filtre d'importació KWord 1.3 per al Words +Name[ca@valencia]=Filtre d'importació KWord 1.3 per al Words Name[cs]=Importní filtr formátu KWord 1.3 pro Words Name[da]=KWord 1.3 importfilter til Words Name[de]=Words „KWord 1.3“-Importfilter +Name[el]=Φίλτρο εισαγωγής KWord 1.3 του Words Name[es]=Filtro de Words de importación de KWord 1.3 Name[et]=Wordsi KWord 1.3 impordifilter +Name[hu]=Words KWord 1.3 importszűrő Name[it]=Filtro di importazione KWord 1.3 per Words Name[kk]=KWord 1.3 -> Words импорт сүзгісі Name[nb]=KWord 1.3-importfilter for Words diff -Nru calligra-2.3.86/filters/words/latex/export/words_latex_export.desktop calligra-2.3.87/filters/words/latex/export/words_latex_export.desktop --- calligra-2.3.86/filters/words/latex/export/words_latex_export.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/filters/words/latex/export/words_latex_export.desktop 2012-01-28 07:04:47.000000000 +0000 @@ -8,11 +8,14 @@ Name=Words LATEX Export Filter Name[bg]=Филтър за изнасяне от Words в LATEX Name[ca]=Filtre d'exportació LATEX per al Words +Name[ca@valencia]=Filtre d'exportació LATEX per al Words Name[cs]=Exportní filtr LaTeX pro Words Name[da]=LaTeX-eksportfilter til Words Name[de]=Words LaTeX-Exportfilter +Name[el]=Φίλτρο εξαγωγής LATEX του Words Name[es]=Filtro de Words de exportación a LaTeX Name[et]=Wordsi LaTeXi ekspordifilter +Name[hu]=Words LaTeX exportszűrő Name[it]=Filtro di esportazione LaTeX per Words Name[kk]=Words -> LATEX экспорт сүзгісі Name[nb]=LaTeX-eksportfilter for Words diff -Nru calligra-2.3.86/filters/words/latex/import/words_latex_import.desktop calligra-2.3.87/filters/words/latex/import/words_latex_import.desktop --- calligra-2.3.86/filters/words/latex/import/words_latex_import.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/filters/words/latex/import/words_latex_import.desktop 2012-01-28 07:04:47.000000000 +0000 @@ -8,11 +8,14 @@ Name=Words Latex Import Filter Name[bg]=Филтър за внасяне от Latex в Words Name[ca]=Filtre d'importació Latex per al Words +Name[ca@valencia]=Filtre d'importació Latex per al Words Name[cs]=Importní filtr formátu LaTeX pro Words Name[da]=LaTeX-importfilter til Words Name[de]=Words LaTeX-Importfilter +Name[el]=Φίλτρο εισαγωγής Latex του Words Name[es]=Filtro de Words de importación de LaTeX Name[et]=Wordsi LaTeXi impordifilter +Name[hu]=Words LaTeX importszűrő Name[it]=Filtro di importazione LaTeX per Words Name[kk]=Latex -> Words импорт сүзгісі Name[nb]=LaTeX-importfilter for Words diff -Nru calligra-2.3.86/filters/words/msword-odf/graphicshandler.cpp calligra-2.3.87/filters/words/msword-odf/graphicshandler.cpp --- calligra-2.3.86/filters/words/msword-odf/graphicshandler.cpp 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/filters/words/msword-odf/graphicshandler.cpp 2012-01-28 07:04:47.000000000 +0000 @@ -238,7 +238,7 @@ emit textBoxFound(index, stylesxml); } -void WordsGraphicsHandler::handleInlineObject(const wvWare::PictureData& data) +QString WordsGraphicsHandler::handleInlineObject(const wvWare::PictureData& data, const bool isBulletPicture) { //TODO: The globalCP might be required to obtain the SPA structure for //inline MS-ODRAW shapes with missing OfficeArtClientAnchor. @@ -249,6 +249,7 @@ //msosptPictureFrame shapes is stored in the PICF struture. kDebug(30513) ; + QString ret; quint32 size = (data.picf->lcb - data.picf->cbHeader); #ifdef DEBUG_GHANDLER @@ -260,22 +261,24 @@ //the picture is store in some external file if (data.picf->mfp.mm == MM_SHAPEFILE) { - DrawingWriter out(*m_currentWriter, *m_mainStyles, m_document->writingHeader()); - m_objectType = Inline; - m_picf = data.picf; - insertEmptyInlineFrame(out); - return; + if (!isBulletPicture) { + DrawingWriter out(*m_currentWriter, *m_mainStyles, m_document->writingHeader()); + m_objectType = Inline; + m_picf = data.picf; + insertEmptyInlineFrame(out); + } + return ret; } // going to parse and process the Data stream content LEInputStream* in = m_document->dataStream(); if (!in) { kDebug(30513) << "Data stream not provided, no access to inline shapes!"; - return; + return ret; } if (data.fcPic > in->getSize()) { kDebug(30513) << "OfficeArtInlineSpContainer offset out of range, skipping!"; - return; + return ret; } #ifdef DEBUG_GHANDLER @@ -294,11 +297,11 @@ } catch (const IOException& e) { kDebug(30513) << e.msg; in->rewind(_zero); - return; + return ret; } catch (...) { kWarning(30513) << "Warning: Caught an unknown exception!"; in->rewind(_zero); - return; + return ret; } in->rewind(_zero); @@ -318,6 +321,7 @@ //check if this BLIP is already in hash table if (m_picNames.contains(fbse->rgbUid)) { ref.uid = fbse->rgbUid; + ref.name = m_picNames[fbse->rgbUid]; continue; } else { ref = savePicture(block, m_store); @@ -332,6 +336,10 @@ } m_store->leaveDirectory(); + if (isBulletPicture) { + return ref.name; + } + bool inStylesXml = m_document->writingHeader(); DrawingWriter out(*m_currentWriter, *m_mainStyles, inStylesXml); @@ -342,6 +350,8 @@ const OfficeArtSpContainer* o = &(co.shape); processDrawingObject(*o, out); + + return ret; } void WordsGraphicsHandler::handleFloatingObject(unsigned int globalCP) @@ -531,7 +541,7 @@ ODrawToOdf odrawtoodf(drawclient); #ifdef DEBUG_GHANDLER - kDebug(30513) << "shapeType: " << hex << o.shapeProp.rh.recInstance; + kDebug(30513) << "shapeType: 0x" << hex << o.shapeProp.rh.recInstance; kDebug(30513) << "grupShape: " << o.shapeProp.fGroup; kDebug(30513) << "Selected properties: "; kDebug(30513) << "pib: " << ds.pib(); @@ -1001,10 +1011,7 @@ textId = (quint32)ds.iTxid(); } } - if (textId) { - emit textBoxFound(((textId / 0x10000) - 1), out.stylesxml); - } - + emit textBoxFound(((textId / 0x10000) - 1), out.stylesxml); out.xml.endElement(); //draw:text-box out.xml.endElement(); //draw:frame } diff -Nru calligra-2.3.86/filters/words/msword-odf/graphicshandler.h calligra-2.3.87/filters/words/msword-odf/graphicshandler.h --- calligra-2.3.86/filters/words/msword-odf/graphicshandler.h 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/filters/words/msword-odf/graphicshandler.h 2012-01-28 07:04:47.000000000 +0000 @@ -144,7 +144,7 @@ * This method gets called when an inline object is found by wv2 parser. * @param data PictureData as defined in functordata.h */ - virtual void handleInlineObject(const wvWare::PictureData& data); + virtual QString handleInlineObject(const wvWare::PictureData& data, const bool isBulletPicture = false); /** * Get the DrawStyle to access document backgroud properties and defaults. diff -Nru calligra-2.3.86/filters/words/msword-odf/paragraph.cpp calligra-2.3.87/filters/words/msword-odf/paragraph.cpp --- calligra-2.3.86/filters/words/msword-odf/paragraph.cpp 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/filters/words/msword-odf/paragraph.cpp 2012-01-28 07:04:47.000000000 +0000 @@ -1,6 +1,7 @@ /* This file is part of the Calligra project Copyright (C) 2009 Benjamin Cail + Copyright (C) 2010-2012 Matus Uzak This library is free software; you can redistribute it and/or modify it under the terms of the Library GNU General Public @@ -545,30 +546,32 @@ //pap is our paragraph properties object const wvWare::Word97::PAP& pap = properties.pap(); + const KoGenStyle::PropertyType pt = KoGenStyle::ParagraphType; + //paragraph alignment //jc = justification code if (!refPap || refPap->jc != pap.jc) { if (pap.jc == 1) //1 = center justify - style->addProperty("fo:text-align", "center", KoGenStyle::ParagraphType); + style->addProperty("fo:text-align", "center", pt); else if (pap.jc == 2) //2 = right justify - style->addProperty("fo:text-align", "end", KoGenStyle::ParagraphType); + style->addProperty("fo:text-align", "end", pt); else if (pap.jc == 3) //3 = left & right justify - style->addProperty("fo:text-align", "justify", KoGenStyle::ParagraphType); + style->addProperty("fo:text-align", "justify", pt); else if (pap.jc == 4) //4 = distributed .. fake it as justify - style->addProperty("fo:text-align", "justify", KoGenStyle::ParagraphType); + style->addProperty("fo:text-align", "justify", pt); else //0 = left justify - style->addProperty("fo:text-align", "start", KoGenStyle::ParagraphType); + style->addProperty("fo:text-align", "start", pt); } else if (setDefaultAlign) { // Set default align for page number field in header or footer kDebug(30513) << "setting default align for page number field in header or footer"; - style->addProperty("fo:text-align", "center", KoGenStyle::ParagraphType); + style->addProperty("fo:text-align", "center", pt); } if (!refPap || refPap->fBiDi != pap.fBiDi) { if (pap.fBiDi == 1) //1 = right to left - style->addProperty("style:writing-mode", "rl-tb", KoGenStyle::ParagraphType); + style->addProperty("style:writing-mode", "rl-tb", pt); else //0 = normal - style->addProperty("style:writing-mode", "lr-tb", KoGenStyle::ParagraphType); + style->addProperty("style:writing-mode", "lr-tb", pt); } // If there is no parent style OR the parent and child background color @@ -583,7 +586,7 @@ } else { color = "transparent"; } - style->addProperty("fo:background-color", color, KoGenStyle::ParagraphType); + style->addProperty("fo:background-color", color, pt); } //dxaLeft1 = first-line indent from left margin (signed, relative to dxaLeft) @@ -592,17 +595,17 @@ if (!refPap || refPap->dxaLeft != pap.dxaLeft) { // apply twip -> pt conversion, only if not in a list if (pap.ilfo == 0) { - style->addPropertyPt("fo:margin-left", (double)pap.dxaLeft / 20.0, KoGenStyle::ParagraphType); + style->addPropertyPt("fo:margin-left", (double)pap.dxaLeft / 20.0, pt); } } if (!refPap || refPap->dxaRight != pap.dxaRight) { // apply twip -> pt conversion - style->addPropertyPt("fo:margin-right", (double)pap.dxaRight / 20.0, KoGenStyle::ParagraphType); + style->addPropertyPt("fo:margin-right", (double)pap.dxaRight / 20.0, pt); } if (!refPap || refPap->dxaLeft1 != pap.dxaLeft1) { // apply twip -> pt conversion, only if not in a list if (pap.ilfo == 0) { - style->addPropertyPt("fo:text-indent", (double)pap.dxaLeft1 / 20.0, KoGenStyle::ParagraphType); + style->addPropertyPt("fo:text-indent", (double)pap.dxaLeft1 / 20.0, pt); } } @@ -614,7 +617,7 @@ //TODO: Figure out the proper logic for automatic margins. marginTop = 14; } - style->addPropertyPt("fo:margin-top", marginTop, KoGenStyle::ParagraphType); + style->addPropertyPt("fo:margin-top", marginTop, pt); } if (!refPap || refPap->dyaAfter != pap.dyaAfter) { double marginBottom = (double)pap.dyaAfter / 20.0; @@ -622,7 +625,7 @@ //TODO: Figure out the proper logic for automatic margins. marginBottom = 14; } - style->addPropertyPt("fo:margin-bottom", marginBottom, KoGenStyle::ParagraphType); + style->addPropertyPt("fo:margin-bottom", marginBottom, pt); } // Linespacing @@ -640,7 +643,7 @@ // attribute. QString proportionalLineSpacing(QString::number((qreal)pap.lspd.dyaLine / (qreal)2.4)); - style->addProperty("fo:line-height", proportionalLineSpacing.append("%"), KoGenStyle::ParagraphType); + style->addProperty("fo:line-height", proportionalLineSpacing.append("%"), pt); } else if (pap.lspd.fMultLinespace == 0) { // Magnitude of lspd.dyaLine specifies the amount of space // that will be provided for lines in the paragraph in twips. @@ -649,35 +652,34 @@ qreal value = qAbs((qreal)pap.lspd.dyaLine / (qreal)20.0); // twip -> pt // lspd.dyaLine > 0 means "at least", < 0 means "exactly" if (pap.lspd.dyaLine > 0) - style->addPropertyPt("fo:line-height-at-least", value, KoGenStyle::ParagraphType); + style->addPropertyPt("fo:line-height-at-least", value, pt); else if (pap.lspd.dyaLine < 0 && pap.dcs.fdct==0) - style->addPropertyPt("fo:line-height", value, KoGenStyle::ParagraphType); + style->addPropertyPt("fo:line-height", value, pt); } else kWarning(30513) << "Unhandled LSPD::fMultLinespace value: " << pap.lspd.fMultLinespace; } - // end linespacing //fKeep = keep entire paragraph on one page if possible //fKeepFollow = keep paragraph on same page with next paragraph if possible //fPageBreakBefore = start this paragraph on new page if (!refPap || refPap->fKeep != pap.fKeep) { if (pap.fKeep) - style->addProperty("fo:keep-together", "always", KoGenStyle::ParagraphType); + style->addProperty("fo:keep-together", "always", pt); else - style->addProperty("fo:keep-together", "auto", KoGenStyle::ParagraphType); + style->addProperty("fo:keep-together", "auto", pt); } if (!refPap || refPap->fKeepFollow != pap.fKeepFollow) { if (pap.fKeepFollow) - style->addProperty("fo:keep-with-next", "always", KoGenStyle::ParagraphType); + style->addProperty("fo:keep-with-next", "always", pt); else - style->addProperty("fo:keep-with-next", "auto", KoGenStyle::ParagraphType); + style->addProperty("fo:keep-with-next", "auto", pt); } if (!refPap || refPap->fPageBreakBefore != pap.fPageBreakBefore) { if (pap.fPageBreakBefore) - style->addProperty("fo:break-before", "page", KoGenStyle::ParagraphType); + style->addProperty("fo:break-before", "page", pt); else - style->addProperty("fo:break-before", "auto", KoGenStyle::ParagraphType); + style->addProperty("fo:break-before", "auto", pt); } // Borders @@ -693,16 +695,30 @@ // fo:border-{top,bottom,left,right} // TODO: Check if borderStyle is "double" and add attributes for that. if (!refPap || refPap->brcTop.brcType != pap.brcTop.brcType) { - style->addProperty("fo:border-top", Conversion::setBorderAttributes(pap.brcTop), KoGenStyle::ParagraphType); + style->addProperty("fo:border-top", Conversion::setBorderAttributes(pap.brcTop), pt); } if (!refPap || refPap->brcBottom.brcType != pap.brcBottom.brcType) { - style->addProperty("fo:border-bottom", Conversion::setBorderAttributes(pap.brcBottom), KoGenStyle::ParagraphType); + style->addProperty("fo:border-bottom", Conversion::setBorderAttributes(pap.brcBottom), pt); } if (!refPap || refPap->brcLeft.brcType != pap.brcLeft.brcType) { - style->addProperty("fo:border-left", Conversion::setBorderAttributes(pap.brcLeft), KoGenStyle::ParagraphType); + style->addProperty("fo:border-left", Conversion::setBorderAttributes(pap.brcLeft), pt); } if (!refPap || refPap->brcRight.brcType != pap.brcRight.brcType) { - style->addProperty("fo:border-right", Conversion::setBorderAttributes(pap.brcRight), KoGenStyle::ParagraphType); + style->addProperty("fo:border-right", Conversion::setBorderAttributes(pap.brcRight), pt); + } + + // Padding + if (!refPap || refPap->brcTop.dptSpace != pap.brcTop.dptSpace) { + style->addPropertyPt("fo:padding-top", pap.brcTop.dptSpace, pt); + } + if (!refPap || refPap->brcBottom.dptSpace != pap.brcBottom.dptSpace) { + style->addPropertyPt("fo:padding-bottom", pap.brcBottom.dptSpace, pt); + } + if (!refPap || refPap->brcLeft.dptSpace != pap.brcLeft.dptSpace) { + style->addPropertyPt("fo:padding-left", pap.brcLeft.dptSpace, pt); + } + if (!refPap || refPap->brcRight.dptSpace != pap.brcRight.dptSpace) { + style->addPropertyPt("fo:padding-right", pap.brcRight.dptSpace, pt); } // Drop Cap Style (DCS) @@ -723,7 +739,7 @@ QBuffer buf; buf.open(QIODevice::WriteOnly); KoXmlWriter tmpWriter(&buf, 3); - tmpWriter.startElement("style:drop-cap"); + tmpWriter.startElement("style:drop-cap"); tmpWriter.addAttribute("style:lines", pap.dcs.lines); tmpWriter.addAttributePt("style:distance", (qreal)pap.dxaFromText / (qreal)20.0); tmpWriter.addAttribute("style:length", pap.dcs.fdct > 0 ? 1 : 0); diff -Nru calligra-2.3.86/filters/words/msword-odf/texthandler.cpp calligra-2.3.87/filters/words/msword-odf/texthandler.cpp --- calligra-2.3.86/filters/words/msword-odf/texthandler.cpp 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/filters/words/msword-odf/texthandler.cpp 2012-01-28 07:04:47.000000000 +0000 @@ -48,8 +48,6 @@ #include "document.h" #include "msdoc.h" -enum ListType {BulletType, NumberType, PictureType, DefaultType}; - wvWare::U8 WordsReplacementHandler::hardLineBreak() { return '\n'; @@ -1830,12 +1828,6 @@ return false; } - ListType type = NumberType; - //TODO: Where is the rest of the logic? - if (listInfo->numberFormat() == msonfcBullet) { - type = BulletType; - } - //put the currently used writer in the stack m_usedListWriters.push(writer); @@ -1846,7 +1838,7 @@ m_currentListLevel = listLevel; // update automatic numbering info - if (type == NumberType) { + if (listInfo->type() == wvWare::ListInfo::NumberType) { if (m_continueListNum.contains(listId)) { if (listLevel <= m_continueListNum[listId].first) { m_continueListNum[listId].second = true; @@ -1884,7 +1876,7 @@ writer->startElement("text:list"); writer->addAttribute("text:style-name", m_listStyleName); - if (type == NumberType) { + if (listInfo->type() == wvWare::ListInfo::NumberType) { QString key = QString("%1").arg(listId); key.append(QString(".lvl%1").arg(listLevel)); @@ -1913,7 +1905,7 @@ } // restart numbering if applicable - if (type == NumberType) { + if (listInfo->type() == wvWare::ListInfo::NumberType) { if (!m_continueListNum.contains(listId) || (m_continueListNum.contains(listId) && !m_continueListNum[listId].second)) { writer->addAttribute("text:start-value", listInfo->startAt()); @@ -1928,7 +1920,9 @@ * A helper function to add the child element to * the element. */ -void setListLevelProperties(KoXmlWriter& out, const wvWare::Word97::PAP& pap, const wvWare::ListInfo& listInfo) +void setListLevelProperties(KoXmlWriter& out, + const wvWare::Word97::PAP& pap, const wvWare::ListInfo& listInfo, + const QString& fontSizePt) { // // TEXT POSITION: @@ -1970,6 +1964,17 @@ default: break; } + + //TODO: make use of PICF, only use fontSize if chp->fNoAutoSize == 0 + if (listInfo.type() == wvWare::ListInfo::PictureType) { + if (!fontSizePt.isEmpty()) { + out.addAttribute("fo:width", fontSizePt); + out.addAttribute("fo:height", fontSizePt); + } else { + kDebug(30513) << "Can NOT set automatic size of the bullet picture, fontSize empty!"; + } + } + //text:list-level-position-and-space-mode out.addAttribute("text:list-level-position-and-space-mode", "label-alignment"); //style:list-level-label-alignment @@ -2015,15 +2020,10 @@ } const wvWare::Word97::PAP& pap = m_currentPPs->pap(); + const wvWare::SharedPtr chp = listInfo->text().chp; wvWare::UString text = listInfo->text().text; int nfc = listInfo->numberFormat(); - ListType type = NumberType; - //TODO: Where is the rest of the logic? - if (nfc == msonfcBullet) { - type = BulletType; - } - QBuffer buf; buf.open(QIODevice::WriteOnly); KoXmlWriter out(&buf); @@ -2031,7 +2031,7 @@ //--------------------------------------------- // list-level-style-* //--------------------------------------------- - if (type == BulletType) { + if (listInfo->type() == wvWare::ListInfo::BulletType) { out.startElement("text:list-level-style-bullet"); if (text.length() == 1) { // With bullets, text can only be one character, which tells us @@ -2058,6 +2058,13 @@ kWarning(30513) << "Bullet with more than one character, not supported"; } } + else if (listInfo->type() == wvWare::ListInfo::PictureType) { + out.startElement("text:list-level-style-image"); + out.addAttribute("xlink:href", listInfo->bulletPictureName().prepend(QString("Pictures/"))); + out.addAttribute("xlink:type", "simple"); + out.addAttribute("xlink:show", "embed"); + out.addAttribute("xlink:actuate", "onLoad"); + } else { out.startElement("text:list-level-style-number"); @@ -2170,7 +2177,6 @@ //--------------------------------------------- // text-properties //--------------------------------------------- - const wvWare::SharedPtr chp = listInfo->text().chp; KoGenStyle textStyle(KoGenStyle::TextStyle, "text"); if (chp) { @@ -2188,7 +2194,7 @@ //MSWord: A label does NOT inherit Underline from text-properties of the //paragraph style. A bullet does not inherit {Italics, Bold}. - if (type != NumberType) { + if (listInfo->type() != wvWare::ListInfo::NumberType) { if ((textStyle.property("fo:font-style")).isEmpty()) { textStyle.addProperty("fo:font-style", "normal"); } @@ -2205,7 +2211,7 @@ //--------------------------------------------- // list-level-properties //--------------------------------------------- - setListLevelProperties(out, pap, *listInfo); + setListLevelProperties(out, pap, *listInfo, textStyle.property("fo:font-size")); out.endElement(); //text:list-level-style-* //--------------------------------------------- @@ -2252,7 +2258,8 @@ { kDebug(30513); m_oldStates.push(State(m_currentTable, m_paragraph, m_listStyleName, - m_currentListLevel, m_currentListID, m_previousLists, + m_currentListLevel, m_currentListID, + m_previousLists, m_drawingWriter, m_insideDrawing)); m_currentTable = 0; m_paragraph = 0; diff -Nru calligra-2.3.86/filters/words/msword-odf/words_msword-odf_import.desktop calligra-2.3.87/filters/words/msword-odf/words_msword-odf_import.desktop --- calligra-2.3.86/filters/words/msword-odf/words_msword-odf_import.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/filters/words/msword-odf/words_msword-odf_import.desktop 2012-01-28 07:04:47.000000000 +0000 @@ -3,6 +3,7 @@ Name=Words MS Word-ODF Import Filter Name[bg]=Филтър за внасяне от MS Word-ODF в Words Name[ca]=Filtre d'importació MS Word-ODF per al Words +Name[ca@valencia]=Filtre d'importació MS Word-ODF per al Words Name[cs]=Importní filtr formátu MS Word-ODF pro Words Name[da]=MS Word-ODF-importfilter til Words Name[de]=Words MS-Word-ODF-Importfilter @@ -10,6 +11,7 @@ Name[en_GB]=Words MS Word-ODF Import Filter Name[es]=Filtro de Words de importación de ODF de MS Word Name[et]=Wordsi MS Word-ODF impordifilter +Name[hu]=Words MS Word-ODF importszűrő Name[it]=Filtro di importazione MS Word-ODF per Words Name[kk]=MS Word-ODF -> Words импорт сүзгісі Name[nb]=MS Word ODF-importfilter for Words diff -Nru calligra-2.3.86/filters/words/msword-odf/wv2/src/bookmark.cpp calligra-2.3.87/filters/words/msword-odf/wv2/src/bookmark.cpp --- calligra-2.3.86/filters/words/msword-odf/wv2/src/bookmark.cpp 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/filters/words/msword-odf/wv2/src/bookmark.cpp 2012-01-28 07:04:47.000000000 +0000 @@ -135,18 +135,16 @@ delete m_start; } -BookmarkData Bookmarks::bookmark( U32 globalCP, bool& ok ) +BookmarkData Bookmarks::bookmark( const U32 globalCP, bool& ok ) { #ifdef WV2_DEBUG_BOOKMARK wvlog << " globalCP=" << globalCP << endl; #endif - + ok = false; if ( (m_startIt && m_startIt->current()) && (m_startIt->currentStart() == globalCP) && (m_nameIt != m_name.end()) ) { - ok = false; - if (m_valid.isEmpty()) { wvlog << "BUG: m_valid empty?"; } else if (m_valid.first()) { @@ -178,9 +176,45 @@ #endif return BookmarkData( start, end, name ); } + return BookmarkData( 0, 0, wvWare::UString("") ); +} + +BookmarkData Bookmarks::bookmark(const UString& name, bool& ok ) const +{ + std::vector::const_iterator nameIt = m_name.begin(); + PLCFIterator startIt(*m_start); + + PLCFIterator* endIt = 0; + if (m_nFib < Word8nFib) { + endIt = new PLCFIterator(*m_end); + } + while (startIt.current()) { + if (*nameIt == name) { + U32 start = startIt.currentStart(); + U32 end = start; + if (m_nFib < Word8nFib) { + end = endIt->currentStart(); + delete endIt; + } else { + U16 ibkl = startIt.current()->ibkl; + end = m_endCP[ibkl]; + } + ok = true; + return BookmarkData( start, end, name ); + } + ++startIt; + ++nameIt; + + if (m_nFib < Word8nFib) { + ++( *endIt ); + } + } + if (m_nFib < Word8nFib) { + delete endIt; + } ok = false; - return BookmarkData( 0, 0, wvWare::UString("") ); + return BookmarkData( 0, 0, UString("") ); } U32 Bookmarks::nextBookmarkStart() @@ -250,7 +284,6 @@ #ifdef WV2_DEBUG_BOOKMARK wvlog << "Bookmark skipped! CP:" << globalCP; - m_num--; #endif } } diff -Nru calligra-2.3.86/filters/words/msword-odf/wv2/src/bookmark.h calligra-2.3.87/filters/words/msword-odf/wv2/src/bookmark.h --- calligra-2.3.86/filters/words/msword-odf/wv2/src/bookmark.h 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/filters/words/msword-odf/wv2/src/bookmark.h 2012-01-28 07:04:47.000000000 +0000 @@ -56,7 +56,15 @@ * found. If @param ok is false no valid bookmark has been found * and the returned BookmarkData structure is invalid. */ - BookmarkData bookmark( U32 globalCP, bool& ok ); + BookmarkData bookmark( const U32 globalCP, bool& ok ); + + /** + * Get the BookmarkData for the Bookmark of @param name. The + * @param ok flag is true if a bookmark has been found. If @param + * ok is false no valid bookmark has been found and the returned + * BookmarkData structure is invalid. + */ + BookmarkData bookmark( const UString& name, bool& ok ) const; /** * Returns the global CP of the next bookmark start, diff -Nru calligra-2.3.86/filters/words/msword-odf/wv2/src/handlers.cpp calligra-2.3.87/filters/words/msword-odf/wv2/src/handlers.cpp --- calligra-2.3.86/filters/words/msword-odf/wv2/src/handlers.cpp 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/filters/words/msword-odf/wv2/src/handlers.cpp 2012-01-28 07:04:47.000000000 +0000 @@ -21,7 +21,6 @@ #include "paragraphproperties.h" #include "functor.h" #include "wvlog.h" -#include using namespace wvWare; @@ -143,8 +142,9 @@ } -void GraphicsHandler::handleInlineObject(const PictureData& /*data*/) +QString GraphicsHandler::handleInlineObject(const PictureData& /*data*/, const bool /*isBulletPicture*/) { + return QString(); } TextHandler::~TextHandler() diff -Nru calligra-2.3.86/filters/words/msword-odf/wv2/src/handlers.h calligra-2.3.87/filters/words/msword-odf/wv2/src/handlers.h --- calligra-2.3.86/filters/words/msword-odf/wv2/src/handlers.h 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/filters/words/msword-odf/wv2/src/handlers.h 2012-01-28 07:04:47.000000000 +0000 @@ -77,7 +77,7 @@ public: virtual ~SubDocumentHandler(); - /** + /** * Set the progress of WordDocument Stream processing. All other * streams (Table, Data) are refered from this one. */ @@ -216,17 +216,17 @@ virtual ~GraphicsHandler(); - /** - * This method gets called when a floating object is found. - * @param globalCP (character position) - */ + /** + * This method gets called when a floating object is found. + * @param globalCP (character position) + */ virtual void handleFloatingObject(unsigned int globalCP); - /** - * This method gets called when an inline object is found. @param data - * the picture properties and offset into data stream. - */ - virtual void handleInlineObject(const PictureData& data); + /** + * This method gets called when an inline object is found. @param data + * the picture properties and offset into data stream. + */ + virtual QString handleInlineObject(const PictureData& data, const bool isBulletPicture = false); }; @@ -313,7 +313,7 @@ DateM = 29, DateShort = 30, MonthShort = 33, YearLong = 34, YearShort = 35, AbbreviatedMonth = 36, MonthLong = 37, - CurrentTimeHMS = 38, DateLong = 39 }; + CurrentTimeHMS = 38, DateLong = 39, Symbol = 40}; /** * Very special characters (bad, bad name) are the ones which need additional diff -Nru calligra-2.3.86/filters/words/msword-odf/wv2/src/lists.cpp calligra-2.3.87/filters/words/msword-odf/wv2/src/lists.cpp --- calligra-2.3.86/filters/words/msword-odf/wv2/src/lists.cpp 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/filters/words/msword-odf/wv2/src/lists.cpp 2012-01-28 07:04:47.000000000 +0000 @@ -16,6 +16,7 @@ Boston, MA 02111-1307, USA. */ +#include "../../msdoc.h" #include "lists.h" #include "olestream.h" #include "word97_generated.h" @@ -609,7 +610,7 @@ m_linkedIstd( istdNil ), m_restartingCounter( false ), m_numberFormat( 0 ), m_alignment( 0 ), m_isLegal( false ), m_notRestarted( false ), m_prev( false ), m_prevSpace( false ), m_isWord6( false ), m_followingChar( 0 ), m_lsid( 0 ), - m_space( 0 ), m_indent( 0 ) + m_space( 0 ), m_indent( 0 ), m_picAutoSize( false ), m_type( NumberType ) { if ( !listInfoProvider.setPAP( &pap ) ) { return; @@ -639,6 +640,14 @@ m_followingChar = level->followingChar(); m_space = level->space(); m_indent = level->indent(); + + if (m_numberFormat == msonfcBullet) { + m_type = BulletType; + } + if (m_text.chp->fPicBullet) { + m_type = PictureType; + m_picAutoSize = !m_text.chp->fNoAutoSize; + } } else { wvlog << "Bug: The ListLevel is 0!!" << endl; } diff -Nru calligra-2.3.86/filters/words/msword-odf/wv2/src/lists.h calligra-2.3.87/filters/words/msword-odf/wv2/src/lists.h --- calligra-2.3.86/filters/words/msword-odf/wv2/src/lists.h 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/filters/words/msword-odf/wv2/src/lists.h 2012-01-28 07:04:47.000000000 +0000 @@ -25,6 +25,7 @@ #include "ustring.h" #include "sharedptr.h" #include "wv2_export.h" +#include namespace wvWare { @@ -67,6 +68,8 @@ class ListInfo { public: + enum ListType {BulletType, NumberType, PictureType, DefaultType}; + ListInfo( Word97::PAP& pap, const Word97::CHP& chp, ListInfoProvider& listInfoProvider ); /** @@ -164,6 +167,27 @@ */ void dump() const; + /** + * Set the name of the bullet picture. + */ + void setBulletPictureName(const QString& name ) { m_picName = name; }; + + /** + * @return bullet picture name. + */ + QString bulletPictureName() const { return m_picName; }; + + /** + * @return whether the size of the picture changes automatically to + * match the size of the text that follows the bullet + */ + bool isBulletPictureAutoSize() const { return m_picAutoSize; }; + + /** + * @return list type. + */ + ListType type() const { return m_type; }; + private: ListInfo& operator=( const ListInfo& rhs ); @@ -182,6 +206,9 @@ S32 m_lsid; U16 m_space; U16 m_indent; + QString m_picName; + bool m_picAutoSize; + ListType m_type; }; diff -Nru calligra-2.3.86/filters/words/msword-odf/wv2/src/paragraphproperties.cpp calligra-2.3.87/filters/words/msword-odf/wv2/src/paragraphproperties.cpp --- calligra-2.3.86/filters/words/msword-odf/wv2/src/paragraphproperties.cpp 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/filters/words/msword-odf/wv2/src/paragraphproperties.cpp 2012-01-28 07:04:47.000000000 +0000 @@ -57,6 +57,11 @@ return m_listInfo; } +void ParagraphProperties::setBulletPictureName(const QString& name) +{ + m_listInfo->setBulletPictureName(name); +} + void ParagraphProperties::createListInfo( ListInfoProvider& listInfoProvider, const Word97::CHP& chp) { if ( m_listInfo || !listInfoProvider.isValid( m_pap.ilfo, m_pap.nLvlAnm ) ) { diff -Nru calligra-2.3.86/filters/words/msword-odf/wv2/src/paragraphproperties.h calligra-2.3.87/filters/words/msword-odf/wv2/src/paragraphproperties.h --- calligra-2.3.86/filters/words/msword-odf/wv2/src/paragraphproperties.h 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/filters/words/msword-odf/wv2/src/paragraphproperties.h 2012-01-28 07:04:47.000000000 +0000 @@ -51,6 +51,11 @@ const ListInfo* listInfo() const; /** + * Set the name of the bullet picture into ListInfo. + */ + void setBulletPictureName(const QString& name); + + /** * @internal */ void createListInfo( ListInfoProvider& listInfoProvider, const Word97::CHP& chp ); diff -Nru calligra-2.3.86/filters/words/msword-odf/wv2/src/parser9x.cpp calligra-2.3.87/filters/words/msword-odf/wv2/src/parser9x.cpp --- calligra-2.3.86/filters/words/msword-odf/wv2/src/parser9x.cpp 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/filters/words/msword-odf/wv2/src/parser9x.cpp 2012-01-28 07:04:47.000000000 +0000 @@ -318,6 +318,7 @@ PLCFIterator it( plcftxbxTxt->at( index ) ); + //TODO: Do we need to save the state here? saveState( it.currentRun() - 1, TextBox ); U32 offset = m_fib.ccpText + it.currentStart(); offset += m_fib.ccpFtn + m_fib.ccpHdd + m_fib.ccpAtn + m_fib.ccpEdn; @@ -495,7 +496,7 @@ U32 limit = it.currentRun(); // Number of characters in this piece // Check whether the text starts somewhere within the piece, reset at - // the end of the loop body + // the end of the loop body. if ( startPos.offset != 0 ) { fc += unicode ? startPos.offset * 2 : startPos.offset; limit -= startPos.offset; @@ -512,7 +513,7 @@ if ( ( string[ j ] & 0xff00 ) == 0xf000 ) { // Microsoft uses a Private Unicode Area (PUA) to store the characters of the // Symbol and the Wingdings font. We simply clear these bits to shift the - // characters to 0x00XX and hope the correct font is installed. If the font + // characters to 0x00XX and hope the correct font is installed. If the font // isn't there, the user will get some ASCII text instead of symbols :} //wvlog << "private unicode area detected -- cropping" << endl; string[ j ] &= 0x00ff; @@ -746,6 +747,45 @@ props->pap().dump(); #endif + // Parse the bullet picture data. + const Word97::CHP* bulletChp = 0; + if (props->listInfo()) { + bulletChp = (props->listInfo()->text()).chp; + } + if (bulletChp && bulletChp->fPicBullet) { + bool ok; + BookmarkData data( m_bookmarks->bookmark(UString("_PictureBullets"), ok) ); + if (ok) { + Position pos(data.startCP + bulletChp->picBulletCP, m_plcfpcd); + PLCFIterator it( m_plcfpcd->at( pos.piece )); + U32 fc = it.current()->fc; + bool unicode; + + realFC( fc, unicode ); + fc += unicode ? pos.offset * 2: pos.offset; + + Word97::CHP* bulletPicChp = new Word97::CHP(); + m_properties->fullSavedChp( fc, bulletPicChp, 0 ); + + if (bulletPicChp->fSpec) { + m_wordDocument->push(); + m_wordDocument->seek( fc, WV2_SEEK_SET ); + U8 c = m_wordDocument->readU8(); + m_wordDocument->pop(); + + if (c == TextHandler::Picture) { + SharedPtr sharedBPChp( bulletPicChp ); + QString name = emitPictureData( 0, sharedBPChp, true); + props->setBulletPictureName(name); + } else { + wvlog << "BulletPicture: Support for character 0x" << hex << c << "not implement yet."; + } + } else { + wvlog << "BulletPicture: A special character expected, skipping!"; + } + } + } + // keep it that way, else the variables get deleted! SharedPtr sharedPap( props ); SharedPtr sharedParagraphChp( paragraphChp ); @@ -901,8 +941,8 @@ //NOTE: Not checking the ok value, invalid bookmarks were //already reported. So it's obsolete at the moment. - bool ok; - BookmarkData data( m_bookmarks->bookmark( disruption, ok ) ); + bool ok; + BookmarkData data( m_bookmarks->bookmark( disruption, ok ) ); if ( !(bkmk_length <= length) ) { wvlog << "WARNING: bookmarks covering several chunks are not supported yet!"; @@ -1028,6 +1068,12 @@ case TextHandler::FieldEscapeChar: wvlog << "Found an escape character ++++++++++++++++++++?" << endl; break; + case TextHandler::Symbol: + { + //NOTE: MS Word 2k/2k3/2k7 ignores chp->ftcSym (font for the symbol). + m_textHandler->runOfText(UString(reinterpret_cast(&chp->xchSym), 1), chp); + break; + } default: wvlog << "Parser9x::processSpecialCharacter(): Support for character " << character.unicode() << " not implemented yet." << endl; @@ -1129,7 +1175,7 @@ m_textHandler->headersFound( make_functor( *this, &Parser9x::parseHeaders, data ) ); } -void Parser9x::emitPictureData( const U32 globalCP, SharedPtr chp ) +QString Parser9x::emitPictureData( const U32 globalCP, SharedPtr chp , const bool isBulletPicture) { //NOTE: No need for the globalCP argument at the moment. @@ -1137,10 +1183,11 @@ wvlog << "Found a picture; fcPic: " << chp->fcPic_fcObj_lTagObj; #endif + QString ret; OLEStreamReader* stream( m_fib.nFib < Word8nFib ? m_wordDocument : m_data ); if ( !stream || static_cast( chp->fcPic_fcObj_lTagObj ) >= stream->size() ) { wvlog << "Error: Severe problems when trying to read an image. Skipping." << endl; - return; + return ret; } stream->push(); stream->seek( chp->fcPic_fcObj_lTagObj, WV2_SEEK_SET ); @@ -1158,13 +1205,13 @@ wvlog << "Error: Expected size of the PICF structure is 0x44, got " << hex << picf->cbHeader; wvlog << "Skipping the image!" << endl; delete picf; - return; + return ret; } if ( picf->fError ) { wvlog << "Information: Skipping the image, fError is set" << endl; delete picf; - return; + return ret; } #ifdef WV2_DEBUG_PICTURES @@ -1191,12 +1238,18 @@ #endif delete [] stPicName; } - offset += cchPicName + 1; + offset += cchPicName + 1; } SharedPtr sharedPicf( picf ); PictureData data( offset, sharedPicf ); - m_textHandler->msodrawObjectFound(globalCP, &data); + + if (isBulletPicture) { + ret = m_graphicsHandler->handleInlineObject(data, isBulletPicture); + } else { + m_textHandler->msodrawObjectFound(globalCP, &data); + } + return ret; } void Parser9x::parseHeader( const HeaderData& data, unsigned char mask ) diff -Nru calligra-2.3.86/filters/words/msword-odf/wv2/src/parser9x.h calligra-2.3.87/filters/words/msword-odf/wv2/src/parser9x.h --- calligra-2.3.86/filters/words/msword-odf/wv2/src/parser9x.h 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/filters/words/msword-odf/wv2/src/parser9x.h 2012-01-28 07:04:47.000000000 +0000 @@ -152,7 +152,9 @@ Parser9x( const Parser9x& rhs ); Parser9x& operator=( const Parser9x& rhs ); - // Uniquely represents a position inside a complex file. Used to map a CP to a Position + // Uniquely represents the position inside of a text stream of a + // document by mapping a CP to an offset into the corresponding + // piece retrieved from the piece table. struct Position { // Start position @@ -258,7 +260,13 @@ void emitHeaderData( SharedPtr sep ); - void emitPictureData( const U32 globalCP, SharedPtr chp ); + /** + * Parse the picture data. + * @return name of the picture as stored in the Pictures directory of + * the ODF container. + */ + QString emitPictureData( const U32 globalCP, SharedPtr chp, + const bool isBulletPicture = false ); void parseHeader( const HeaderData& data, unsigned char mask ); @@ -285,7 +293,7 @@ Drawings* m_drawings; Bookmarks* m_bookmarks; - PLCF* m_plcfpcd; // piece table + PLCF* m_plcfpcd; // piece table // From here on we have all variables which change their state // depending on the parsed content. These variables have to be saved diff -Nru calligra-2.3.86/filters/words/msword-odf/wv2/src/parserfactory.cpp calligra-2.3.87/filters/words/msword-odf/wv2/src/parserfactory.cpp --- calligra-2.3.86/filters/words/msword-odf/wv2/src/parserfactory.cpp 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/filters/words/msword-odf/wv2/src/parserfactory.cpp 2012-01-28 07:04:47.000000000 +0000 @@ -74,40 +74,40 @@ } // (0x0065) else if ( nFib == 101 ) { - wvlog << "Word 6 document found" << endl; + wvlog << "Word-6 document found" << endl; return new Parser95( storage, wordDocument ); } // (0x0067, 0x0068) else if ( nFib == 103 || nFib == 104 ) { - wvlog << "Word 7 (aka Word 95) document found" << endl; + wvlog << "Word-7 (aka Word 95) document found" << endl; return new Parser95( storage, wordDocument ); } // (0x00c1) else if ( (nFib == Word8nFib) || (nFib == 0x00c0) || (nFib == 0x00c2) ) { - wvlog << "Word 8 (aka Word 97) document found" << endl; + wvlog << "Word-8 (aka Word 97) document found" << endl; return new Parser97( storage, wordDocument ); } else { // (0x00d9) if ( nFib == 217 ) { - wvlog << "Looks like document was created with Word 9/Office 2000" - << ", trying with the Word 8 parser." << endl; + wvlog << "Looks like a document created by Word-9/Office 2000," + << "trying with the Word-8 parser." << endl; } // (0x0101) else if ( nFib == 257 ) { - wvlog << "Looks like document was created with Word 10/Office XP" - << ", trying with the Word 8 parser." << endl; + wvlog << "Looks like a document created by Word-10/Office XP," + << "trying with the Word-8 parser." << endl; } // (0x010c) else if ( nFib == 268 ) { - wvlog << "Looks like document was created with Word 11/Office 2003" - << ", trying with the Word 8 parser." << endl; + wvlog << "Looks like a document created by Word-11/Office 2003," + << "trying with the Word-8 parser." << endl; } - // (0x0112), ... + // (0x0112), ... else { - wvlog << "A document newer than Word 8 found" - << ", trying with the Word 8 parser." << endl; + wvlog << "A document > Word-8 found," + << "trying with the Word-8 parser." << endl; } return new Parser97( storage, wordDocument ); } @@ -133,4 +133,4 @@ } return setupParser( storage ); -} \ No newline at end of file +} diff -Nru calligra-2.3.86/filters/words/msword-odf/wv2/src/SPRMS calligra-2.3.87/filters/words/msword-odf/wv2/src/SPRMS --- calligra-2.3.86/filters/words/msword-odf/wv2/src/SPRMS 1970-01-01 00:00:00.000000000 +0000 +++ calligra-2.3.87/filters/words/msword-odf/wv2/src/SPRMS 2012-01-28 07:04:47.000000000 +0000 @@ -0,0 +1,53 @@ + code | sprm | operand +============================================================================================= +0x 0836 | sprmCFItalic | +0x 0839 | sprmCFShadow | +0x 083c | sprmCFVanish | Specifies whether the text is formatted as hidden. +0x 0855 | sprmCFSpec | Specifies whether the current text has a special meaning. +0x 286f | sprmCIdctHint | Hint on which of the language, font, size, bold, and italic properties to use. +0x 2a3e | sprmCKul | The underlining style of the text. +0x 2a42 | sprmCIco | Specifies the color of the text. The default text color is cvAuto. +0x 2a53 | sprmCFDStrike | +0x 485f | sprmCLidBi | The language of the text when the text is displayed R-t-L or is complex script +0x 486d | sprmCRgLid0_80 | The language of the text, except for East Asian languages. +0x 4873 | sprmCRgLid0 | The language of the text, except for East Asian languages. +0x 4874 | sprmCRgLid1 | The language of the text if it is an East Asian language. +0x 4888 | sprmCPbiGrf | Specifies whether a picture is used as a bullet character when rendering the bullet. +0x 4a43 | sprmCHps | An unsigned 2-byte integer that specifies the size of the text. +0x 4a4f | sprmCRgFtc0 | Index into the font table. +0x 4a51 | sprmCRgFtc2 | Index into the font table. +0x 4a5e | sprmCFtcBi | Index into the font table (SttbfFfn). +0x 4a61 | sprmCHpsBi | An unsigned 2-byte integer that specifies the size of the text (Right-to-Left). +0x 6815 | sprmCRsidProp | Revision save ID. +0x 6816 | sprmCRsidText | Revision save ID. +0x 6870 | sprmCCv | A COLORREF value that specifies the color of the text. +0x 6877 | sprmCCvUl | A COLORREF value that specifies the color of the text underline. +0x 6887 | sprmCPbiIBullet | A CP value in Bullet Pictures document that specifies which picture is used as a bullet. +0x 6a03 | sprmCPicLocation | Specifies either picture position in Data Stream/binary data/name of OLE object storage. +0x 6a09 | sprmCSymbol | Designates the character as a symbol and specifies it's font and character code. + +============================================================================================= +0x 2403 | sprmPJc80 | Physical justification of the paragraph. +0x 2461 | sprmPJc | Logical justification of the paragraph. +0x 260a | sprmPIlvl | List level of the paragraph. +0x 460b | sprmPIlfo | List identificator. +0x 6424 | sprmPBrcTop80 | Top border of the paragraph. +0x 6425 | sprmPBrcLeft80 | Left border of the paragraph. +0x 6426 | sprmPBrcBottom80 | +0c 6427 | sprmPBrcRight80 | +0x 6467 | sprmPRsid | Revision save ID. +0x 840e | sprmPDxaRight80 | Physical right indent of the paragraph [twips] +0x 840f | sprmPDxaLeft80 | Physical left indent of the P (Paragraph) [twips]. +0x 8411 | sprmPDxaLeft180 | Logical left indent of the 1st line of the P, relative to the rest of the P [twips]. +0x 845d | sprmPDxaRight | Logical right indent of the paragraph [twips] +0x 845e | sprmPDxaLeft | Logical left indent of the P (Paragraph) [twips]. +0x 8460 | sprmPDxaLeft1 | Logical left indent of the 1st line of the P, relative to the rest of the P [twips]. +0x a413 | sprmPDyaBefore | Spacing before this paragraph [twips]. +0x c60d | sprmPChgTabsPapx | Custom tab stops to be added or ignored. +0x c615 | sprmPChgTabs | Custom tab stops that are added or ignored. +0x c64e | sprmPBrcTop | Top border of the paragraph. +0x c64f | sprmPBrcLeft | +0x c650 | sprmPBrcBottom | +0x c651 | sprmPBrcRight | +============================================================================================= + diff -Nru calligra-2.3.86/filters/words/msword-odf/wv2/src/word97_generated.cpp calligra-2.3.87/filters/words/msword-odf/wv2/src/word97_generated.cpp --- calligra-2.3.86/filters/words/msword-odf/wv2/src/word97_generated.cpp 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/filters/words/msword-odf/wv2/src/word97_generated.cpp 2012-01-28 07:04:47.000000000 +0000 @@ -3267,6 +3267,9 @@ cvUl=cvAuto; fTNY=0; fTNYCompress=0; + picBulletCP=0; + fPicBullet=0; + fNoAutoSize=0; } void CHP::dump() const @@ -3437,12 +3440,18 @@ s += uint2string( fTNYCompress ); for(int _i=0; _i<(16); ++_i) { s += "\nxstDispFldRMark[" + int2string( _i ) + "]="; - s += uint2string( xstDispFldRMark[_i] ); + s += uint2string( xstDispFldRMark[_i] ); } s += "\nshd="; s += "\n{" + shd.toString() + "}\n"; s += "\nbrc="; s += "\n{" + brc.toString() + "}\n"; + s += "\npicBulletCP="; + s += uint2string(picBulletCP); + s += "\nfPicBullet="; + s += uint2string(fPicBullet); + s += "\nfNoAutoSize="; + s += uint2string(fNoAutoSize); s += "\nCHP Done."; return s; } diff -Nru calligra-2.3.86/filters/words/msword-odf/wv2/src/word97_generated.h calligra-2.3.87/filters/words/msword-odf/wv2/src/word97_generated.h --- calligra-2.3.86/filters/words/msword-odf/wv2/src/word97_generated.h 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/filters/words/msword-odf/wv2/src/word97_generated.h 2012-01-28 07:04:47.000000000 +0000 @@ -3185,6 +3185,27 @@ * specifies if the text is scaled to fit the line */ U16 fTNYCompress:1; + + + /** + * A CP value in the Bullet Pictures document that specifies which picture + * is used as a bullet character when rendering the bullet. The CP value + * MUST be greater than or equal to zero. The Bullet Pictures document is + * stored within the main document and marked by a hidden bookmark called + * "_PictureBullets." + */ + U32 picBulletCP; + + /** + * PbiGrfOperand - specifies whether a picture is used as a bullet + * character when rendering the bullet. This value also specifies whether + * the size of the picture changes automatically to match the size of the + * text that follows the bullet. + */ + U8 fPicBullet:1; + U8 fNoAutoSize:1; + U8 pbi_unused:6; + }; // CHP bool operator==(const CHP &lhs, const CHP &rhs); @@ -7695,10 +7716,9 @@ U16 fn:8; /** - * file offset of beginning of piece. The size of the ith piece - * can be determined by subtracting rgcp[i] of the containing - * plcfpcd - * from its rgcp[i+1]. + * file offset of beginning of piece. The size of the ith piece can + * be determined by subtracting rgcp[i] of the containing + * plcfpcd from its rgcp[i+1]. */ U32 fc; diff -Nru calligra-2.3.86/filters/words/msword-odf/wv2/src/word97_helper.cpp calligra-2.3.87/filters/words/msword-odf/wv2/src/word97_helper.cpp --- calligra-2.3.86/filters/words/msword-odf/wv2/src/word97_helper.cpp 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/filters/words/msword-odf/wv2/src/word97_helper.cpp 2012-01-28 07:04:47.000000000 +0000 @@ -205,6 +205,7 @@ sprmCRgLid1 = 0x486E, sprmCRgLidUndocumented1 = 0x4873, // According to OOo it's equal to sprmCRgLid0 sprmCUndocumented2 = 0x4874, + sprmCPbiGrf = 0x4888, sprmCIstd = 0x4A30, sprmCFtcDefault = 0x4A3D, sprmCLid = 0x4A41, @@ -253,6 +254,7 @@ sprmCBrc = 0x6865, sprmCCv = 0x6870, sprmCCvUl = 0x6877, + sprmCPbiIBullet = 0x6887, sprmCPicLocation = 0x6A03, sprmCSymbol = 0x6A09, sprmPicBrcTop = 0x6C02, @@ -766,7 +768,7 @@ else brc = toWord97( Word95::BRC( ptr ) ); } -} +} //anonymous namespace // Returns -1 if this wasn't a PAP sprm and it returns the length // of the applied sprm if it was successful @@ -1236,11 +1238,12 @@ chse = readU16( ptr + 1 ); break; case SPRM::sprmCSymbol: - // First the length byte... - ftcSym = readS16( ptr + 1 ); if ( version == Word8 ) { - xchSym = readS16( ptr + 3 ); + ftcSym = readS16( ptr ); + xchSym = readS16( ptr + 2 ); } else { + // First the length byte... + ftcSym = readS16( ptr + 1 ); xchSym = *( ptr + 3 ); } #ifdef WV2_DEBUG_SPRMS @@ -1738,6 +1741,15 @@ fTNYCompress = ufel; break; } + case SPRM::sprmCPbiIBullet: + picBulletCP = readU16( ptr ); + wvlog << "=> picBulletCP:" << picBulletCP; + break; + case SPRM::sprmCPbiGrf: + fPicBullet = (*ptr & 0x01); + fNoAutoSize = (*ptr & 0x02) >> 1; + wvlog << "=> fPicBullet:" << fPicBullet << "| fNoAutoSize:" << fNoAutoSize << "| check:" << *ptr; + break; default: wvlog << "Huh? None of the defined sprms matches 0x" << hex << sprm << dec << "... trying to skip anyway" << endl; break; diff -Nru calligra-2.3.86/filters/words/mswrite/words_mswrite_export.desktop calligra-2.3.87/filters/words/mswrite/words_mswrite_export.desktop --- calligra-2.3.86/filters/words/mswrite/words_mswrite_export.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/filters/words/mswrite/words_mswrite_export.desktop 2012-01-28 07:04:47.000000000 +0000 @@ -3,11 +3,14 @@ Name=Words Microsoft Write Export Filter Name[bg]=Филтър за изнасяне от Words в Microsoft Write Name[ca]=Filtre d'exportació Microsoft Write per al Words +Name[ca@valencia]=Filtre d'exportació Microsoft Write per al Words Name[cs]=Exportní filtr formátu MS Write pro Words Name[da]=Microsoft Write-eksportfilter til Words Name[de]=Words MS-Write-Exportfilter +Name[el]=Φίλτρο εξαγωγής Microsoft Write του Words Name[es]=Filtro de Words de exportación a Microsoft Write Name[et]=Wordsi Microsoft Write'i ekspordifilter +Name[hu]=Words Microsoft Write exportszűrő Name[it]=Filtro di esportazione Microsoft Write per Words Name[kk]=Words -> Microsoft Write экспорт сүзгісі Name[nb]=Microsoft Write-eksportfilter for Words diff -Nru calligra-2.3.86/filters/words/mswrite/words_mswrite_import.desktop calligra-2.3.87/filters/words/mswrite/words_mswrite_import.desktop --- calligra-2.3.86/filters/words/mswrite/words_mswrite_import.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/filters/words/mswrite/words_mswrite_import.desktop 2012-01-28 07:04:47.000000000 +0000 @@ -3,11 +3,14 @@ Name=Words Microsoft Write Import Filter Name[bg]=Филтър за внасяне от Microsoft Write в Words Name[ca]=Filtre d'importació Microsoft Write per al Words +Name[ca@valencia]=Filtre d'importació Microsoft Write per al Words Name[cs]=Importní filtr Microsoft Write pro Words Name[da]=Microsoft Write-importfilter til Words Name[de]=Words MS-Write-Importfilter +Name[el]=Φίλτρο εισαγωγής Microsoft Write του Words Name[es]=Filtro de Words de importación de Microsoft Write Name[et]=Wordsi Microsoft Write'i impordifilter +Name[hu]=Words Microsoft Write importszűrő Name[it]=Filtro di importazione Microsoft Write per Words Name[kk]=Microsoft Write -> Words импорт сүзгісі Name[nb]=Microsoft Write-importfilter for Words diff -Nru calligra-2.3.86/filters/words/oowriter/words_oowriter_export.desktop calligra-2.3.87/filters/words/oowriter/words_oowriter_export.desktop --- calligra-2.3.86/filters/words/oowriter/words_oowriter_export.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/filters/words/oowriter/words_oowriter_export.desktop 2012-01-28 07:04:47.000000000 +0000 @@ -3,11 +3,14 @@ Name=OpenOffice.org Writer Export Filter for Words Name[bg]=Филтър за изнасяне от Words в OpenOffice.org Writer Name[ca]=Filtre d'exportació OpenOffice.org Writer per al Words +Name[ca@valencia]=Filtre d'exportació OpenOffice.org Writer per al Words Name[cs]=Exportní filtr formátu OpenOffice.org Writer pro Words Name[da]=OpenOffice.org Writer eksportfilter til Words Name[de]=Words OpenOffice.org Writer-Exportfilter +Name[el]=Φίλτρο εξαγωγής OpenOffice.org Writer για το Words Name[es]=Filtro de Words de exportación a OpenOffice.org Writer Name[et]=Wordsi OpenOffice.org Writeri ekspordifilter +Name[hu]=OpenOffice.org Writer exportszűrő a Wordshöz Name[it]=Filtro di esportazione OpenOffice.org Writer per Words Name[kk]=Words -> OpenOffice.org Writer экспорт сүзгісі Name[nb]=OpenOffice.org Writer-eksportfilter for Words diff -Nru calligra-2.3.86/filters/words/oowriter/words_oowriter_import.desktop calligra-2.3.87/filters/words/oowriter/words_oowriter_import.desktop --- calligra-2.3.86/filters/words/oowriter/words_oowriter_import.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/filters/words/oowriter/words_oowriter_import.desktop 2012-01-28 07:04:47.000000000 +0000 @@ -3,11 +3,14 @@ Name=OpenOffice.org Writer Import Filter for Words Name[bg]=Филтър за внасяне от OpenOffice.org Writer в Words Name[ca]=Filtre d'importació OpenOffice.org Writer per al Words +Name[ca@valencia]=Filtre d'importació OpenOffice.org Writer per al Words Name[cs]=Importní filtr formátu OpenOffice.org Writer pro Words Name[da]=OpenOffice.org Writer importfilter til Words Name[de]=Words OpenOffice.org Writer-Exportfilter +Name[el]=Φίλτρο εισαγωγής OpenOffice.org Writer για το Words Name[es]=Filtro de Words de importación de OpenOffice.org Writer Name[et]=Wordsi OpenOffice.org Writeri impordifilter +Name[hu]=OpenOffice.org Writer importszűrő a Wordshöz Name[it]=Filtro di importazione OpenOffice.org Writer per Words Name[kk]=OpenOffice.org Writer -> Words импорт сүзгісі Name[nb]=OpenOffice.org Writer-importfilter for Words diff -Nru calligra-2.3.86/filters/words/palmdoc/words_palmdoc_export.desktop calligra-2.3.87/filters/words/palmdoc/words_palmdoc_export.desktop --- calligra-2.3.86/filters/words/palmdoc/words_palmdoc_export.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/filters/words/palmdoc/words_palmdoc_export.desktop 2012-01-28 07:04:47.000000000 +0000 @@ -3,11 +3,14 @@ Name=Words Palm Doc Export Filter Name[bg]=Филтър за изнасяне от Words в Palm Doc Name[ca]=Filtre d'exportació Palm Doc per al Words +Name[ca@valencia]=Filtre d'exportació Palm Doc per al Words Name[cs]=Exportní filtr Palm Doc pro Words Name[da]=Palm Doc-eksportfilter til Words Name[de]=Words Palm-Doc-Exportfilter +Name[el]=Φίλτρο εξαγωγής Palm Doc του Words Name[es]=Filtro de Words de exportación a Palm Doc Name[et]=Wordsi Palm Doci ekspordifilter +Name[hu]=Words Palm Doc exportszűrő Name[it]=Filtro di esportazione Palm Doc per Words Name[kk]=Words -> Palm Doc экспорт сүзгісі Name[nb]=Palm Doc-eksportfilter for Words diff -Nru calligra-2.3.86/filters/words/palmdoc/words_palmdoc_import.desktop calligra-2.3.87/filters/words/palmdoc/words_palmdoc_import.desktop --- calligra-2.3.86/filters/words/palmdoc/words_palmdoc_import.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/filters/words/palmdoc/words_palmdoc_import.desktop 2012-01-28 07:04:47.000000000 +0000 @@ -3,11 +3,14 @@ Name=Words Palm Doc Import Filter Name[bg]=Филтър за внасяне от Palm Doc в Words Name[ca]=Filtre d'importació Palm Doc per al Words +Name[ca@valencia]=Filtre d'importació Palm Doc per al Words Name[cs]=Importní filtr Palm Doc pro Words Name[da]=Palm Doc-importfilter til Words Name[de]=Words Palm-Doc-Importfilter +Name[el]=Φίλτρο εισαγωγής Palm Doc του Words Name[es]=Filtro de Words de importación de Palm Doc Name[et]=Wordsi Palm Doci impordifilter +Name[hu]=Words Palm Doc importszűrő Name[it]=Filtro di importazione Palm Doc per Word Name[kk]=Palm Doc -> Words импорт сүзгісі Name[nb]=Palm Doc importfilter for Words diff -Nru calligra-2.3.86/filters/words/rtf/export/words_rtf_export.desktop calligra-2.3.87/filters/words/rtf/export/words_rtf_export.desktop --- calligra-2.3.86/filters/words/rtf/export/words_rtf_export.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/filters/words/rtf/export/words_rtf_export.desktop 2012-01-28 07:04:47.000000000 +0000 @@ -3,11 +3,14 @@ Name=Words RTF Export Filter Name[bg]=Филтър за изнасяне от Words в RTF Name[ca]=Filtre d'exportació RTF per al Words +Name[ca@valencia]=Filtre d'exportació RTF per al Words Name[cs]=Exportní filtr formátu RTF pro Words Name[da]=RTF-eksportfilter til Words Name[de]=Words RTF-Exportfilter +Name[el]=Φίλτρο εξαγωγής RTF του Words Name[es]=Filtro de Words de exportación a RTF Name[et]=Wordsi RTF-i ekspordifilter +Name[hu]=Words RTF exportszűrő Name[it]=Filtro di esportazione RTF per Words Name[kk]=Words -> RTF экспорт сүзгісі Name[nb]=RTF-eksportfilter for Words diff -Nru calligra-2.3.86/filters/words/rtf/import/words_rtf_import.desktop calligra-2.3.87/filters/words/rtf/import/words_rtf_import.desktop --- calligra-2.3.86/filters/words/rtf/import/words_rtf_import.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/filters/words/rtf/import/words_rtf_import.desktop 2012-01-28 07:04:47.000000000 +0000 @@ -3,11 +3,14 @@ Name=Words RTF Import Filter Name[bg]=Филтър за внасяне от RTF в Words Name[ca]=Filtre d'exportació RTF per al Words +Name[ca@valencia]=Filtre d'exportació RTF per al Words Name[cs]=Dialog exportního filtru RTF pro Words Name[da]=RTF-importfilter til Words Name[de]=Words RTF-Importfilter +Name[el]=Φίλτρο εισαγωγής RTF του Words Name[es]=Filtro de Words de importación de RTF Name[et]=Wordsi RTF-i impordifilter +Name[hu]=Words RTF importszűrő Name[it]=Filtro di importazione RTF per Words Name[kk]=RTF -> Words импорт сүзгісі Name[nb]=RTF-importfilter for Words diff -Nru calligra-2.3.86/filters/words/starwriter/words_starwriter_import.desktop calligra-2.3.87/filters/words/starwriter/words_starwriter_import.desktop --- calligra-2.3.86/filters/words/starwriter/words_starwriter_import.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/filters/words/starwriter/words_starwriter_import.desktop 2012-01-28 07:04:47.000000000 +0000 @@ -3,11 +3,14 @@ Name=Words StarWriter 5.x Import Filter Name[bg]=Филтър за внасяне от StarWriter 5.x в Words Name[ca]=Filtre d'importació StarWriter 5.x per al Words +Name[ca@valencia]=Filtre d'importació StarWriter 5.x per al Words Name[cs]=Importní filtr StarWriter 5.x pro Words Name[da]=StarWriter 5.x importfilter til Words Name[de]=Words StarWriter 5.x Importfilter +Name[el]=Φίλτρο εισαγωγής StarWriter 5.x του Words Name[es]=Filtro de Words de importación de StarWriter 5.x Name[et]=Wordsi StarWriter 5.x impordifilter +Name[hu]=Words StarWriter 5.x importszűrő Name[it]=Filtro di importazione StarWriter 5.x per Words Name[kk]=StarWriter 5.x -> Words импорт сүзгісі Name[nb]=StarWriter 5.x-importfilter for Words diff -Nru calligra-2.3.86/filters/words/wml/words_wml_export.desktop calligra-2.3.87/filters/words/wml/words_wml_export.desktop --- calligra-2.3.86/filters/words/wml/words_wml_export.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/filters/words/wml/words_wml_export.desktop 2012-01-28 07:04:47.000000000 +0000 @@ -3,11 +3,14 @@ Name=Words WML Export Filter Name[bg]=Филтър за изнасяне от Words в WML Name[ca]=Filtre d'exportació WML per al Words +Name[ca@valencia]=Filtre d'exportació WML per al Words Name[cs]=Exportní filtr formátu WML pro Words Name[da]=WML-eksportfilter til Words Name[de]=Words WML-Exportfilter +Name[el]=Φίλτρο εξαγωγής WML του Words Name[es]=Filtro de Words de exportación a WML Name[et]=Wordsi WML-i ekspordifilter +Name[hu]=Words WML exportszűrő Name[it]=Filtro di esportazione WML per Words Name[kk]=Words -> WML экспорт сүзгісі Name[nb]=WML-eksportfilter for Words diff -Nru calligra-2.3.86/filters/words/wml/words_wml_import.desktop calligra-2.3.87/filters/words/wml/words_wml_import.desktop --- calligra-2.3.86/filters/words/wml/words_wml_import.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/filters/words/wml/words_wml_import.desktop 2012-01-28 07:04:47.000000000 +0000 @@ -3,11 +3,14 @@ Name=Words WML Import Filter Name[bg]=Филтър за внасяне от WML в Words Name[ca]=Filtre d'importació WML per al Words +Name[ca@valencia]=Filtre d'importació WML per al Words Name[cs]=Importní filtr formátu WML pro Words Name[da]=WML-importfilter til Words Name[de]=Words WML-Importfilter +Name[el]=Φίλτρο εισαγωγής WML του Words Name[es]=Filtro de Words de importación de WML Name[et]=Wordsi WML-i impordifilter +Name[hu]=Words WML importszűrő Name[it]=Filtro di importazione WML per Words Name[kk]=WML -> Words импорт сүзгісі Name[nb]=WML-importfilter for Words diff -Nru calligra-2.3.86/filters/words/wordperfect/export/words_wp_export.desktop calligra-2.3.87/filters/words/wordperfect/export/words_wp_export.desktop --- calligra-2.3.86/filters/words/wordperfect/export/words_wp_export.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/filters/words/wordperfect/export/words_wp_export.desktop 2012-01-28 07:04:47.000000000 +0000 @@ -3,11 +3,14 @@ Name=Words WordPerfect Export Filter Name[bg]=Филтър за изнасяне от Words в WordPerfect Name[ca]=Filtre d'exportació WordPerfect per al Words +Name[ca@valencia]=Filtre d'exportació WordPerfect per al Words Name[cs]=Exportní filtr WordPerfect pro Words Name[da]=WordPerfect-eksportfilter til Words Name[de]=Words WordPerfect-Exportfilter +Name[el]=Φίλτρο εξαγωγής WordPerfect του Words Name[es]=Filtro de Words de exportación a WordPerfect Name[et]=Wordsi WordPerfecti ekspordifilter +Name[hu]=Words WordPerfect exportszűrő Name[it]=Filtro di esportazione WordPerfect per Words Name[kk]=Words -> WordPerfect экспорт сүзгісі Name[nb]=WordPerfect-eksportfilter for Words diff -Nru calligra-2.3.86/filters/words/wordperfect/import/words_wp_import.desktop calligra-2.3.87/filters/words/wordperfect/import/words_wp_import.desktop --- calligra-2.3.86/filters/words/wordperfect/import/words_wp_import.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/filters/words/wordperfect/import/words_wp_import.desktop 2012-01-28 07:04:47.000000000 +0000 @@ -3,11 +3,14 @@ Name=Words WordPerfect Import Filter Name[bg]=Филтър за внасяне от WordPerfect в Words Name[ca]=Filtre d'importació WordPerfect per al Words +Name[ca@valencia]=Filtre d'importació WordPerfect per al Words Name[cs]=Importní filtr WordPerfect pro Words Name[da]=WordPerfect-importfilter til Words Name[de]=Words WordPerfect-Importfilter +Name[el]=Φίλτρο εισαγωγής WordPerfect του Words Name[es]=Filtro de Words de importación de WordPerfect Name[et]=Wordsi WordPerfecti impordifilter +Name[hu]=Words WordPerfect importszűrő Name[it]=Filtro di importazione WordPerfect per Words Name[kk]=WordPerfect -> Words импорт сүзгісі Name[nb]=WordPerfect-importfilter for Words diff -Nru calligra-2.3.86/filters/xsltfilter/export/xslt_export.desktop calligra-2.3.87/filters/xsltfilter/export/xslt_export.desktop --- calligra-2.3.86/filters/xsltfilter/export/xslt_export.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/filters/xsltfilter/export/xslt_export.desktop 2012-01-28 07:04:47.000000000 +0000 @@ -9,11 +9,14 @@ Name=Calligra XSLT Export Filter Name[bg]=Филтър за изнасяне от Calligra в XSLT Name[ca]=Filtre d'exportació XSLT per al Calligra +Name[ca@valencia]=Filtre d'exportació XSLT per al Calligra Name[cs]=Exportní filtr typu XSLT pro Calligra Name[da]=XSLT-eksportfilter til Calligra Name[de]=Calligra XSLT-Exportfilter +Name[el]=Φίλτρο εξαγωγής XSLT του Calligra Name[es]=Filtro de Calligra de exportación a XSLT Name[et]=Calligra XSLT ekspordifilter +Name[hu]=Calligra XSLT exportszűrő Name[it]=Filtro di esportazione XSLT per Calligra Name[kk]=Calligra -> XSLT экспорт сүзгісі Name[nb]=XSLT-eksportfilter for Calligra diff -Nru calligra-2.3.86/filters/xsltfilter/import/xslt_import.desktop calligra-2.3.87/filters/xsltfilter/import/xslt_import.desktop --- calligra-2.3.86/filters/xsltfilter/import/xslt_import.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/filters/xsltfilter/import/xslt_import.desktop 2012-01-28 07:04:47.000000000 +0000 @@ -8,11 +8,14 @@ Name=Calligra XSLT Import Filter Name[bg]=Филтър за внасяне от XSLT в Calligra Name[ca]=Filtre d'importació XSLT per al Calligra +Name[ca@valencia]=Filtre d'importació XSLT per al Calligra Name[cs]=Importní filtr typu XSLT pro Calligra Name[da]=XSLT-importfilter til Calligra Name[de]=Calligra XSLT-Importfilter +Name[el]=Φίλτρο εισαγωγής XSLT του Calligra Name[es]=Filtro de Calligra de importación de XSLT Name[et]=Calligra XSLT impordifilter +Name[hu]=Calligra XSLT importszűrő Name[it]=Filtro di importazione XSLT per Calligra Name[kk]=XSLT -> Calligra импорт сүзгісі Name[nb]=XSLT-importfilter for Calligra diff -Nru calligra-2.3.86/flow/flow_dock.desktop calligra-2.3.87/flow/flow_dock.desktop --- calligra-2.3.86/flow/flow_dock.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/flow_dock.desktop 2012-01-28 07:04:47.000000000 +0000 @@ -3,12 +3,14 @@ X-KDE-ServiceType=Flow/Dock Comment=Docker for Flow Comment[ca]=Amarrador per al Flow +Comment[ca@valencia]=Amarrador per al Flow Comment[cs]=Dok pro Proud Comment[da]=Dokker til Flow Comment[de]=Docker für Flow Comment[el]=Προσάρτηση για το Flow Comment[es]=Ventana acoplable para Flow Comment[et]=Flow dokk +Comment[hu]=Dokkoló a Flowhoz Comment[it]=Gancio per Flow Comment[kk]=Flow-lың докері Comment[nb]=Dokker for Flow diff -Nru calligra-2.3.86/flow/part/flow.desktop calligra-2.3.87/flow/part/flow.desktop --- calligra-2.3.86/flow/part/flow.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/part/flow.desktop 2012-01-28 07:04:47.000000000 +0000 @@ -2,16 +2,20 @@ Type=Application Name=Calligra Flow Name[ca]=Flux del Calligra +Name[ca@valencia]=Flux del Calligra Name[cs]=Calligra Flow Name[da]=Calligra Flow Name[de]=Calligra Flow +Name[el]=Calligra Flow Name[es]=Calligra Flow Name[et]=Calligra Flow +Name[hu]=Calligra Flow Name[it]=Calligra Flow Name[kk]=Calligra Flow Name[nb]=Calligra Flow Name[nds]=Calligra-Flow Name[nl]=Calligra Flow +Name[pl]=Calligra Flow Name[pt]=Calligra Flow Name[pt_BR]=Calligra Flow Name[ru]=Calligra Flow diff -Nru calligra-2.3.86/flow/part/flowpart.desktop calligra-2.3.87/flow/part/flowpart.desktop --- calligra-2.3.86/flow/part/flowpart.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/part/flowpart.desktop 2012-01-28 07:04:47.000000000 +0000 @@ -2,11 +2,14 @@ Name=Calligra Flowchart & Diagram Editing Component Name[bg]=Компонент за блоксхеми и диаграми в Calligra Name[ca]=Component d'edició de diagrames de fluxos i diagrames del Calligra +Name[ca@valencia]=Component d'edició de diagrames de fluxos i diagrames del Calligra Name[cs]=Komponenta editoru nákresů a diagramů Calligra Name[da]=Calligra-komponent til redigering af diagrammer Name[de]=Calligra-Komponente für Flussdiagramme & Diagrammbearbeitung +Name[el]=Συστατικό επεξεργασίας διαγραμμάτων ροής & απλών διαγραμμάτων του Calligra Name[es]=Componente de edición de de diagramas de flujos y esquemas de Calligra Name[et]=Calligra skeemide redigeerimise komponent +Name[hu]=Calligra folyamatábra- és diagramkészítő komponens Name[it]=Componente per la modifica di diagrammi di flusso di Calligra Name[kk]=Calligra-ның сұлба және диаграмма өңдеу бағдарламасы Name[nb]=Calligra-komponent for flytskjema- og diagramredigering diff -Nru calligra-2.3.86/flow/part/flowrc calligra-2.3.87/flow/part/flowrc --- calligra-2.3.86/flow/part/flowrc 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/part/flowrc 2012-01-28 07:04:47.000000000 +0000 @@ -1,2 +1,10 @@ [flow] -State=AAAA/wAAAAD9AAAAAwAAAAAAAADzAAAClvwCAAAAA/sAAAAkAEYAbABvAHcAUwBoAGEAcABlAEIAbwB4AEQAbwBjAGsAZQByAQAAAJwAAAIZAAAAAAAAAAD7AAAAKABGAGwAbwB3AFMAdABlAG4AYwBpAGwAQgBvAHgARABvAGMAawBlAHIBAAAAIAAAAgsAAAB5AAgAGfwAAAIuAAAAiAAAAIgAAACI+gAAAAABAAAAA/sAAAAOAFQAbwBvAGwAQgBvAHgBAAAAAP////8AAABGAQAABfsAAAAWAFMAdAB5AGwAZQBEAG8AYwBrAGUAcgEAAAAA/////wAAAPMACAAF+wAAACAAUwBoAGEAcABlACAAUAByAG8AcABlAHIAdABpAGUAcwEAAAAAAAAA1QAAAKMBAAAFAAAAAQAAAPQAAAKW/AIAAAAG+wAAACAAcwBoAGEAcgBlAGQAdABvAG8AbABkAG8AYwBrAGUAcgEAAAAgAAABAQAAAEEBAAAE+wAAACoAZABvAGMAdQBtAGUAbgB0ACAAcwBlAGMAdABpAG8AbgAgAHYAaQBlAHcBAAABJAAAAMQAAAB1AQAABfwAAAHrAAAAywAAAMsAAADL+gAAAAABAAAAAvsAAAAiAFMAaABhAGQAbwB3ACAAUAByAG8AcABlAHIAdABpAGUAcwEAAAAA/////wAAAL4ACAAF+wAAACIAUwB0AHIAbwBrAGUAIABQAHIAbwBwAGUAcgB0AGkAZQBzAQAABEgAAADXAAAA1AAIAAX7AAAAMABEAGUAZgBhAHUAbAB0AFQAbwBvAGwAQQByAHIAYQBuAGcAZQBXAGkAZABnAGUAdAEAAAAVAAAAggAAAAAAAAAA+wAAACoAUwBuAGEAcABHAHUAaQBkAGUAQwBvAG4AZgBpAGcAVwBpAGQAZwBlAHQBAAAAmgAAAEsAAAAAAAAAAPsAAAAiAEQAZQBmAGEAdQBsAHQAVABvAG8AbABXAGkAZABnAGUAdAEAAADoAAAAWwAAAAAAAAAAAAAAAgAABR8AAAB0/AEAAAAC+wAAABoAVABvAG8AbABCAGEAcgBEAG8AYwBrAGUAcgAAAAAAAAAAvgAAAGQBAAAF+wAAACoAUwBoAGEAcABlAEMAbwBsAGwAZQBjAHQAaQBvAG4ARABvAGMAawBlAHIAAAAETQAAAQkAAAC5AAAAuQAAAzIAAAKWAAAABAAAAAQAAAAIAAAACPwAAAABAAAAAgAAAAEAAAAWAG0AYQBpAG4AVABvAG8AbABCAGEAcgEAAAAA/////wAAAAAAAAAA +State=AAAA/wAAAAD9AAAAAwAAAAAAAADnAAACnfwCAAAABPsAAAAkAEYAbABvAHcAUwBoAGEAcABlAEIAbwB4AEQAbwBjAGsAZQByAQAAAJwAAAIZAAAAAAAAAAD7AAAADgBUAG8AbwBsAEIAbwB4AQAAAB4AAABQAAAAUAEAAAX7AAAAKABGAGwAbwB3AFMAdABlAG4AYwBpAGwAQgBvAHgARABvAGMAawBlAHIBAAAAcQAAAZ4AAACFAAgAGfsAAAAqAGQAbwBjAHUAbQBlAG4AdAAgAHMAZQBjAHQAaQBvAG4AIAB2AGkAZQB3AQAAAhIAAACpAAAAgQEAAAUAAAABAAABEgAAAp38AgAAAAb7AAAAIABzAGgAYQByAGUAZAB0AG8AbwBsAGQAbwBjAGsAZQByAQAAAB4AAAF2AAAAYgEAAAX7AAAAFgBTAHQAeQBsAGUARABvAGMAawBlAHIBAAABlwAAAE8AAABPAAAAT/wAAAHpAAAA0gAAANIAAADS+gAAAAABAAAAA/sAAAAiAFMAdAByAG8AawBlACAAUAByAG8AcABlAHIAdABpAGUAcwEAAAAA/////wAAANwACAAF+wAAACIAUwBoAGEAZABvAHcAIABQAHIAbwBwAGUAcgB0AGkAZQBzAQAAAAD/////AAAAuAAIAAX7AAAAIABTAGgAYQBwAGUAIABQAHIAbwBwAGUAcgB0AGkAZQBzAQAABBMAAAESAAAAeAEAAAX7AAAAMABEAGUAZgBhAHUAbAB0AFQAbwBvAGwAQQByAHIAYQBuAGcAZQBXAGkAZABnAGUAdAEAAAAVAAAAggAAAAAAAAAA+wAAACoAUwBuAGEAcABHAHUAaQBkAGUAQwBvAG4AZgBpAGcAVwBpAGQAZwBlAHQBAAAAmgAAAEsAAAAAAAAAAPsAAAAiAEQAZQBmAGEAdQBsAHQAVABvAG8AbABXAGkAZABnAGUAdAEAAADoAAAAWwAAAAAAAAAAAAAAAgAABR8AAAB0/AEAAAAC+wAAABoAVABvAG8AbABCAGEAcgBEAG8AYwBrAGUAcgAAAAAAAAAAvgAAAE4BAAAF+wAAACoAUwBoAGEAcABlAEMAbwBsAGwAZQBjAHQAaQBvAG4ARABvAGMAawBlAHIAAAAETQAAAQkAAABCAAAAQgAAAyYAAAKdAAAABAAAAAQAAAAIAAAACPwAAAABAAAAAgAAAAEAAAAWAG0AYQBpAG4AVABvAG8AbABCAGEAcgEAAAAA/////wAAAAAAAAAA + +[Grid] +ShowGrid=true +Color=230,230,230 +PaintGridInBackground=true + +[KoPageApp/DocumentStructureDocker] +ViewMode=Detailed diff -Nru calligra-2.3.86/flow/part/FlowView.cpp calligra-2.3.87/flow/part/FlowView.cpp --- calligra-2.3.86/flow/part/FlowView.cpp 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/part/FlowView.cpp 2012-01-28 07:04:47.000000000 +0000 @@ -25,7 +25,6 @@ #include #include -#include #include "FlowDocument.h" diff -Nru calligra-2.3.86/flow/plugins/dockers/flowdockersplugin.desktop calligra-2.3.87/flow/plugins/dockers/flowdockersplugin.desktop --- calligra-2.3.86/flow/plugins/dockers/flowdockersplugin.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/plugins/dockers/flowdockersplugin.desktop 2012-01-28 07:04:47.000000000 +0000 @@ -1,12 +1,14 @@ [Desktop Entry] Name=Flow Dockers plugin Name[ca]=Connector de Dockers per al Flow +Name[ca@valencia]=Connector de Dockers per al Flow Name[da]=Dokker-plugin til Flow Name[de]=Flow-Docker-Modul Name[el]=Πρόσθετο προσάρτησης του Flow Name[en_GB]=Flow Dockers plugin Name[es]=Complemento de ventanas acoplables de Flow Name[et]=Flow dokkide plugin +Name[hu]=Flow dokkoló bővítmény Name[it]=Estensione per i ganci di Flow Name[kk]=Flow докерлер плагині Name[nb]=Flow Dockers programtillegg diff -Nru calligra-2.3.86/flow/stencils/Assorted/arrow-chevron.desktop calligra-2.3.87/flow/stencils/Assorted/arrow-chevron.desktop --- calligra-2.3.86/flow/stencils/Assorted/arrow-chevron.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Assorted/arrow-chevron.desktop 2012-01-28 07:04:47.000000000 +0000 @@ -2,12 +2,14 @@ Name=Chevron Name[bg]=Нашивка Name[ca]=Galó +Name[ca@valencia]=Galó Name[cs]=Krokev Name[da]=Chevron Name[de]=Chevron Name[el]=Chevron Name[es]=Cheurón Name[et]=Sarikmärk +Name[hu]=Sávnyíl Name[it]=Gallone Name[kk]=Шеврон Name[nb]=Vinkel diff -Nru calligra-2.3.86/flow/stencils/Assorted/arrow-down.desktop calligra-2.3.87/flow/stencils/Assorted/arrow-down.desktop --- calligra-2.3.86/flow/stencils/Assorted/arrow-down.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Assorted/arrow-down.desktop 2012-01-28 07:04:47.000000000 +0000 @@ -2,12 +2,14 @@ Name=Down Arrow Name[bg]=Стрелка надолу Name[ca]=Fletxa avall +Name[ca@valencia]=Fletxa avall Name[cs]=Šipka dolů Name[da]=Pil ned Name[de]=Pfeil nach unten Name[el]=Κάτω βέλος Name[es]=Flecha abajo Name[et]=Nool alla +Name[hu]=Lefelé nyíl Name[it]=Freccia in giù Name[kk]=Төмен жебесі Name[nb]=Pil ned diff -Nru calligra-2.3.86/flow/stencils/Assorted/arrow-left.desktop calligra-2.3.87/flow/stencils/Assorted/arrow-left.desktop --- calligra-2.3.86/flow/stencils/Assorted/arrow-left.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Assorted/arrow-left.desktop 2012-01-28 07:04:47.000000000 +0000 @@ -2,12 +2,14 @@ Name=Left Arrow Name[bg]=Стрелка наляво Name[ca]=Fletxa esquerra +Name[ca@valencia]=Fletxa esquerra Name[cs]=Šipka doleva Name[da]=Pil til venstre Name[de]=Pfeil nach links Name[el]=Αριστερό βέλος Name[es]=Flecha izquierda Name[et]=Nool vasakule +Name[hu]=Balra nyíl Name[it]=Freccia a sinistra Name[kk]=Сол жақ жебесі Name[nb]=Pil venstre diff -Nru calligra-2.3.86/flow/stencils/Assorted/arrow-left-notched.desktop calligra-2.3.87/flow/stencils/Assorted/arrow-left-notched.desktop --- calligra-2.3.86/flow/stencils/Assorted/arrow-left-notched.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Assorted/arrow-left-notched.desktop 2012-01-28 07:04:47.000000000 +0000 @@ -2,11 +2,13 @@ Name=Notched Left Arrow Name[bg]=Назъбена стрелка наляво Name[ca]=Fletxa esquerra dentada +Name[ca@valencia]=Fletxa esquerra dentada Name[da]=Hakket pil til venstre Name[de]=Eingekerbter Pfeil nach links Name[el]=Χαραγμένο αριστερό βέλος Name[es]=Flecha izquierda con muescas Name[et]=Sakiline nool vasakule +Name[hu]=Vágott nyíl balra Name[it]=Freccia a sinistra marcata Name[kk]=Айырқұйрық солға жебесі Name[nb]=Venstrepil med spalte diff -Nru calligra-2.3.86/flow/stencils/Assorted/arrow-left-right.desktop calligra-2.3.87/flow/stencils/Assorted/arrow-left-right.desktop --- calligra-2.3.86/flow/stencils/Assorted/arrow-left-right.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Assorted/arrow-left-right.desktop 2012-01-28 07:04:47.000000000 +0000 @@ -2,11 +2,13 @@ Name=Left-Right Arrow Name[bg]=Стрелка наляво-надясно Name[ca]=Fletxa de esquerra-dreta +Name[ca@valencia]=Fletxa d'esquerra-dreta Name[da]=Pil til venstre-højre Name[de]=Pfeil nach links und rechts Name[el]=Αριστερό-δεξί βέλος Name[es]=Flecha izquierda-derecha Name[et]=Nool paremale-vasakule +Name[hu]=Balra-jobbra nyíl Name[it]=Freccia a sinistra e a destra Name[kk]=Сол-Оң жақты жебесі Name[nb]=Pil venstre-høyre diff -Nru calligra-2.3.86/flow/stencils/Assorted/arrow-left-right-up.desktop calligra-2.3.87/flow/stencils/Assorted/arrow-left-right-up.desktop --- calligra-2.3.86/flow/stencils/Assorted/arrow-left-right-up.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Assorted/arrow-left-right-up.desktop 2012-01-28 07:04:47.000000000 +0000 @@ -2,11 +2,13 @@ Name=Left-Right-Up Arrow Name[bg]=Стрелка наляво-надясно-нагоре Name[ca]=Fletxa esquerra-dreta-dalt +Name[ca@valencia]=Fletxa esquerra-dreta-dalt Name[da]=Pil til venstre-højre-op Name[de]=Pfeil nach links, rechts und oben Name[el]=Αριστερό-δεξί-πάνω βέλος Name[es]=Flecha izquierda-derecha-arriba Name[et]=Nool paremale-vasakule-üles +Name[hu]=Balra-jobbra-fel nyíl Name[it]=Freccia a sinistra, destra e in su Name[kk]=Сол-Оң-Жоғары жақты жебесі Name[nb]=Pil venstre-høyre-opp diff -Nru calligra-2.3.86/flow/stencils/Assorted/arrow-left-up.desktop calligra-2.3.87/flow/stencils/Assorted/arrow-left-up.desktop --- calligra-2.3.86/flow/stencils/Assorted/arrow-left-up.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Assorted/arrow-left-up.desktop 2012-01-28 07:04:47.000000000 +0000 @@ -2,11 +2,13 @@ Name=Left-Up Arrow Name[bg]=Стрелка наляво-нагоре Name[ca]=Fletxa esquerra-dalt +Name[ca@valencia]=Fletxa esquerra-dalt Name[da]=Pil til venstre-op Name[de]=Pfeil nach links und oben Name[el]=Αριστερό-πάνω βέλος Name[es]=Flecha izquierda-arriba Name[et]=Nool vasakule-üles +Name[hu]=Balra-fel nyíl Name[it]=Freccia a sinistra e in su Name[kk]=Сол-Жоғары жақты жебесі Name[nb]=Pil venstre-opp diff -Nru calligra-2.3.86/flow/stencils/Assorted/arrow-pentagon.desktop calligra-2.3.87/flow/stencils/Assorted/arrow-pentagon.desktop --- calligra-2.3.86/flow/stencils/Assorted/arrow-pentagon.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Assorted/arrow-pentagon.desktop 2012-01-28 07:04:47.000000000 +0000 @@ -2,12 +2,14 @@ Name=Pentagon Name[bg]=Петоъгълник Name[ca]=Pentàgon +Name[ca@valencia]=Pentàgon Name[cs]=Pětiúhelník Name[da]=Femkant Name[de]=Fünfeck Name[el]=Πεντάγωνο Name[es]=Pentágono Name[et]=Viisnurk +Name[hu]=Ötszög Name[it]=Pentagono Name[kk]=Бесбұрыш Name[nb]=Femkant diff -Nru calligra-2.3.86/flow/stencils/Assorted/arrow-quad.desktop calligra-2.3.87/flow/stencils/Assorted/arrow-quad.desktop --- calligra-2.3.86/flow/stencils/Assorted/arrow-quad.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Assorted/arrow-quad.desktop 2012-01-28 07:04:47.000000000 +0000 @@ -2,11 +2,13 @@ Name=Quad Arrow Name[bg]=Четворна стрелка Name[ca]=Fletxa quad +Name[ca@valencia]=Fletxa quad Name[da]=Pil i fire retninger Name[de]=Pfeil in alle vier Richtungen Name[el]=Τετραπλό βέλος Name[es]=Flecha cuádruple Name[et]=Neliknool +Name[hu]=Négyágú nyíl Name[it]=Freccia quadrupla Name[kk]=Төртжақты жебесі Name[nb]=Firehodet pil diff -Nru calligra-2.3.86/flow/stencils/Assorted/arrow-right.desktop calligra-2.3.87/flow/stencils/Assorted/arrow-right.desktop --- calligra-2.3.86/flow/stencils/Assorted/arrow-right.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Assorted/arrow-right.desktop 2012-01-28 07:04:47.000000000 +0000 @@ -2,12 +2,14 @@ Name=Right Arrow Name[bg]=Стрелка надясно Name[ca]=Fletxa dreta +Name[ca@valencia]=Fletxa dreta Name[cs]=Šipka doprava Name[da]=Pil til højre Name[de]=Pfeil nach rechts Name[el]=Δεξί βέλος Name[es]=Flecha derecha Name[et]=Nool paremale +Name[hu]=Jobbra nyíl Name[it]=Freccia a destra Name[kk]=Оң жақ жебесі Name[nb]=Pil høyre diff -Nru calligra-2.3.86/flow/stencils/Assorted/arrow-right-notched.desktop calligra-2.3.87/flow/stencils/Assorted/arrow-right-notched.desktop --- calligra-2.3.86/flow/stencils/Assorted/arrow-right-notched.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Assorted/arrow-right-notched.desktop 2012-01-28 07:04:47.000000000 +0000 @@ -2,11 +2,13 @@ Name=Notched Right Arrow Name[bg]=Назъбена стрелка надясно Name[ca]=Fletxa dreta dentada +Name[ca@valencia]=Fletxa dreta dentada Name[da]=Hakket pil til højre Name[de]=Eingekerbter Pfeil nach rechts Name[el]=Χαραγμένο δεξί βέλος Name[es]=Flecha derecha con muescas Name[et]=Sakiline nool paremale +Name[hu]=Vágott nyíl jobbra Name[it]=Freccia a destra marcata Name[kk]=Айырқұйрық оңға жебесі Name[nb]=Høyrepil med spor diff -Nru calligra-2.3.86/flow/stencils/Assorted/arrow-turn-up.desktop calligra-2.3.87/flow/stencils/Assorted/arrow-turn-up.desktop --- calligra-2.3.86/flow/stencils/Assorted/arrow-turn-up.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Assorted/arrow-turn-up.desktop 2012-01-28 07:04:47.000000000 +0000 @@ -1,9 +1,12 @@ [Desktop Entry] Name=Turn-Up Arrow Name[ca]=Fletxa cap amunt +Name[ca@valencia]=Fletxa cap amunt Name[da]=Pil der drejer op +Name[el]=Στραμμένο άνω βέλος Name[es]=Flecha doblada hacia arriba Name[et]=Üles pöörav nool +Name[hu]=Felfelé kanyarodó nyíl Name[it]=Freccia piegata in su Name[kk]=Жоғары бұрылыс жебесі Name[nb]=Pil snu-opp diff -Nru calligra-2.3.86/flow/stencils/Assorted/arrow-up.desktop calligra-2.3.87/flow/stencils/Assorted/arrow-up.desktop --- calligra-2.3.86/flow/stencils/Assorted/arrow-up.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Assorted/arrow-up.desktop 2012-01-28 07:04:47.000000000 +0000 @@ -2,12 +2,14 @@ Name=Up Arrow Name[bg]=Стрелка нагоре Name[ca]=Fletxa amunt +Name[ca@valencia]=Fletxa amunt Name[cs]=Šipka nahoru Name[da]=Pil op Name[de]=Pfeil nach oben Name[el]=Πάνω βέλος Name[es]=Flecha arriba Name[et]=Nool üles +Name[hu]=Felfelé nyíl Name[it]=Freccia in su Name[kk]=Жоғары жебесі Name[nb]=Pil opp diff -Nru calligra-2.3.86/flow/stencils/Assorted/arrow-up-down.desktop calligra-2.3.87/flow/stencils/Assorted/arrow-up-down.desktop --- calligra-2.3.86/flow/stencils/Assorted/arrow-up-down.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Assorted/arrow-up-down.desktop 2012-01-28 07:04:47.000000000 +0000 @@ -2,11 +2,13 @@ Name=Up-Down Arrow Name[bg]=Стрелка нагоре-надолу Name[ca]=Fletxa dalt-baix +Name[ca@valencia]=Fletxa dalt-baix Name[da]=Pil op-ned Name[de]=Pfeil nach oben und unten Name[el]=Πάνω-κάτω βέλος Name[es]=Flecha arriba-abajo Name[et]=Nool üles-alla +Name[hu]=Lefelé kanyarodó nyíl Name[it]=Freccia in su e in giù Name[kk]=Жоғары-Төмен жақты жебесі Name[nb]=Pil opp-ned diff -Nru calligra-2.3.86/flow/stencils/Assorted/arrow-up-down-left.desktop calligra-2.3.87/flow/stencils/Assorted/arrow-up-down-left.desktop --- calligra-2.3.86/flow/stencils/Assorted/arrow-up-down-left.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Assorted/arrow-up-down-left.desktop 2012-01-28 07:04:47.000000000 +0000 @@ -2,11 +2,13 @@ Name=Up-Down-Left Arrow Name[bg]=Стрелка нагоре-надолу-наляво Name[ca]=Fletxa dalt-baix-esquerra +Name[ca@valencia]=Fletxa dalt-baix-esquerra Name[da]=Pil til op-ned-venstre Name[de]=Pfeil nach oben, unten und links Name[el]=Πάνω-κάτω-αριστερά βέλος Name[es]=Flecha arriba-abajo-izquierda Name[et]=Nool üles-alla-vasakule +Name[hu]=Fel-le-balra nyíl Name[it]=Freccia in su, in giù e a sinistra Name[kk]=Жоғары-Төмен-Сол жақты жебесі Name[nb]=Pil opp-ned-venstre diff -Nru calligra-2.3.86/flow/stencils/Assorted/circle.desktop calligra-2.3.87/flow/stencils/Assorted/circle.desktop --- calligra-2.3.86/flow/stencils/Assorted/circle.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Assorted/circle.desktop 2012-01-28 07:04:47.000000000 +0000 @@ -2,12 +2,14 @@ Name=Perfect Circle Name[bg]=Окръжност Name[ca]=Cercle perfecte +Name[ca@valencia]=Cercle perfecte Name[cs]=Dokonalý kruh Name[da]=Perfekt cirkel Name[de]=Perfekter Kreis Name[el]=Τέλειος κύκλος Name[es]=Círculo perfecto Name[et]=Ring +Name[hu]=Teljes kör Name[it]=Cerchio perfetto Name[kk]=Толық шеңбер Name[nb]=Perfekt sirkel diff -Nru calligra-2.3.86/flow/stencils/Assorted/circle-quarter.desktop calligra-2.3.87/flow/stencils/Assorted/circle-quarter.desktop --- calligra-2.3.86/flow/stencils/Assorted/circle-quarter.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Assorted/circle-quarter.desktop 2012-01-28 07:04:47.000000000 +0000 @@ -2,12 +2,14 @@ Name=Quarter Circle Name[bg]=Четвърт окръжност Name[ca]=Quart de cercle +Name[ca@valencia]=Quart de cercle Name[cs]=Čtvrtinový kruh Name[da]=Kvartcirkel Name[de]=Viertelkreis Name[el]=Τεταρτημόριο Name[es]=Cuarto de círculo Name[et]=Veerandring +Name[hu]=Negyedkör Name[it]=Quarto di cerchio Name[kk]=Ширек секторы Name[nb]=Kvartsirkel diff -Nru calligra-2.3.86/flow/stencils/Assorted/collection.desktop calligra-2.3.87/flow/stencils/Assorted/collection.desktop --- calligra-2.3.86/flow/stencils/Assorted/collection.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Assorted/collection.desktop 2012-01-28 07:04:47.000000000 +0000 @@ -2,11 +2,13 @@ Name=Assorted Name[bg]=Разнородни Name[ca]=Assortit +Name[ca@valencia]=Assortit Name[da]=Diverse Name[de]=Vermischtes Name[el]=Διάφορα Name[es]=Variado Name[et]=Valikkogu +Name[hu]=Vegyes Name[it]=Varie Name[kk]=Түрлі басқа Name[nb]=Diverse diff -Nru calligra-2.3.86/flow/stencils/Assorted/cross-maltese.desktop calligra-2.3.87/flow/stencils/Assorted/cross-maltese.desktop --- calligra-2.3.86/flow/stencils/Assorted/cross-maltese.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Assorted/cross-maltese.desktop 2012-01-28 07:04:47.000000000 +0000 @@ -2,12 +2,14 @@ Name=Maltese Cross Name[bg]=Малтийски кръст Name[ca]=Creu maltesa +Name[ca@valencia]=Creu maltesa Name[cs]=Maltézský kříž Name[da]=Malteserkors Name[de]=Malteserkreuz Name[el]=Μαλτέζικος σταυρός Name[es]=Cruz maltesa Name[et]=Malta rist +Name[hu]=Kettős kereszt Name[it]=Croce maltese Name[kk]=Мальталық айқыш Name[nb]=Malteserkors diff -Nru calligra-2.3.86/flow/stencils/Assorted/cross-swiss.desktop calligra-2.3.87/flow/stencils/Assorted/cross-swiss.desktop --- calligra-2.3.86/flow/stencils/Assorted/cross-swiss.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Assorted/cross-swiss.desktop 2012-01-28 07:04:47.000000000 +0000 @@ -2,12 +2,14 @@ Name=Swiss Cross Name[bg]=Швейцарски кръст Name[ca]=Creu suïssa +Name[ca@valencia]=Creu suïssa Name[cs]=Švýcarský kříž Name[da]=Schweizerkors Name[de]=Schweizer Kreuz Name[el]=Ελβετικός σταυρός Name[es]=Cruz suiza Name[et]=Šveitsi rist +Name[hu]=Svájci kereszt Name[it]=Croce svizzera Name[kk]=Швейцарлық айқыш Name[nb]=Sveitserkors diff -Nru calligra-2.3.86/flow/stencils/Assorted/diamond.desktop calligra-2.3.87/flow/stencils/Assorted/diamond.desktop --- calligra-2.3.86/flow/stencils/Assorted/diamond.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Assorted/diamond.desktop 2012-01-28 07:04:47.000000000 +0000 @@ -2,12 +2,14 @@ Name=Diamond Name[bg]=Диамант Name[ca]=Diamant +Name[ca@valencia]=Diamant Name[cs]=Diamant Name[da]=Diamant Name[de]=Diamant Name[el]=Διαμάντι Name[es]=Diamante Name[et]=Romb +Name[hu]=Gyémánt Name[it]=Diamante Name[kk]=Ромб Name[nb]=Rombe diff -Nru calligra-2.3.86/flow/stencils/Assorted/heart.desktop calligra-2.3.87/flow/stencils/Assorted/heart.desktop --- calligra-2.3.86/flow/stencils/Assorted/heart.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Assorted/heart.desktop 2012-01-28 07:04:47.000000000 +0000 @@ -2,12 +2,14 @@ Name=Heart Name[bg]=Сърце Name[ca]=Cor +Name[ca@valencia]=Cor Name[cs]=Srdce Name[da]=Hjerte Name[de]=Herz Name[el]=Καρδιά Name[es]=Corazón Name[et]=Süda +Name[hu]=Szív Name[it]=Cuore Name[kk]=Жүрек Name[nb]=Hjerte diff -Nru calligra-2.3.86/flow/stencils/Assorted/heptagon.desktop calligra-2.3.87/flow/stencils/Assorted/heptagon.desktop --- calligra-2.3.86/flow/stencils/Assorted/heptagon.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Assorted/heptagon.desktop 2012-01-28 07:04:47.000000000 +0000 @@ -2,12 +2,14 @@ Name=Heptagon Name[bg]=Седмоъгълник Name[ca]=Heptàgon +Name[ca@valencia]=Heptàgon Name[cs]=Pětistěn Name[da]=Syvkant Name[de]=Siebeneck Name[el]=Επτάγωνο Name[es]=Heptágono Name[et]=Seitsenurk +Name[hu]=Hétszög Name[it]=Ettagono Name[kk]=Жетібұрыш Name[nb]=Sjukant diff -Nru calligra-2.3.86/flow/stencils/Assorted/hexagon.desktop calligra-2.3.87/flow/stencils/Assorted/hexagon.desktop --- calligra-2.3.86/flow/stencils/Assorted/hexagon.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Assorted/hexagon.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -2,12 +2,14 @@ Name=Hexagon Name[bg]=Шестоъгълник Name[ca]=Hexàgon +Name[ca@valencia]=Hexàgon Name[cs]=Šestiúhelník Name[da]=Sekskant Name[de]=Sechseck Name[el]=Εξάγωνο Name[es]=Hexágono Name[et]=Kuusnurk +Name[hu]=Hatszög Name[it]=Esagono Name[kk]=Алтыбұрыш Name[nb]=Sekskant diff -Nru calligra-2.3.86/flow/stencils/Assorted/moon-quarter.desktop calligra-2.3.87/flow/stencils/Assorted/moon-quarter.desktop --- calligra-2.3.86/flow/stencils/Assorted/moon-quarter.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Assorted/moon-quarter.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -2,10 +2,12 @@ Name=Quarter Moon Name[bg]=Четвърт Луна Name[ca]=Quart de Lluna +Name[ca@valencia]=Quart de Lluna Name[da]=Kvartmåne Name[el]=Μισοφέγγαρο Name[es]=Cuarto de luna Name[et]=Veerandkuu +Name[hu]=Negyedhold Name[it]=Quarto di Luna Name[kk]=Айдың ширегі Name[nb]=Siste kvarter diff -Nru calligra-2.3.86/flow/stencils/Assorted/octagon.desktop calligra-2.3.87/flow/stencils/Assorted/octagon.desktop --- calligra-2.3.86/flow/stencils/Assorted/octagon.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Assorted/octagon.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -2,12 +2,14 @@ Name=Octogon Name[bg]=Осмоъгълник Name[ca]=Octògon +Name[ca@valencia]=Octògon Name[cs]=Osmiúhelník Name[da]=Oktogon Name[de]=Achteck Name[el]=Οκτάγωνο Name[es]=Octógono Name[et]=Kaheksanurk +Name[hu]=Nyolcszög Name[it]=Ottagono Name[kk]=Сегізбұрыш Name[nb]=Åttekant diff -Nru calligra-2.3.86/flow/stencils/Assorted/parallelogram-horizontal.desktop calligra-2.3.87/flow/stencils/Assorted/parallelogram-horizontal.desktop --- calligra-2.3.86/flow/stencils/Assorted/parallelogram-horizontal.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Assorted/parallelogram-horizontal.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -2,11 +2,13 @@ Name=Horizontal Parallelogram Name[bg]=Хоризонтален успоредник Name[ca]=Paral·lelogram horitzontal +Name[ca@valencia]=Paral·lelogram horitzontal Name[da]=Vandret parallelogram Name[de]=Waagerechtes Parallelogramm Name[el]=Οριζόντιο παραλληλόγραμμο Name[es]=Paralelogramo horizontal Name[et]=Horisontaalne parallelogramm +Name[hu]=Vízszintes paralelogramma Name[it]=Parallelogramma orizzontale Name[kk]=Жатық параллелограм Name[nb]=Vannrett parallellogram diff -Nru calligra-2.3.86/flow/stencils/Assorted/parallelogram-vertical.desktop calligra-2.3.87/flow/stencils/Assorted/parallelogram-vertical.desktop --- calligra-2.3.86/flow/stencils/Assorted/parallelogram-vertical.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Assorted/parallelogram-vertical.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -2,11 +2,13 @@ Name=Vertical Parallelogram Name[bg]=Вертикален успоредник Name[ca]=Paral·lelogram vertical +Name[ca@valencia]=Paral·lelogram vertical Name[da]=Lodret parallelogram Name[de]=Senkrechtes Parallelogramm Name[el]=Κάθετο παραλληλόγραμμο Name[es]=Paralelogramo vertical Name[et]=Vertikaalne parallelogramm +Name[hu]=Függőleges paralelogramma Name[it]=Parallelogramma verticale Name[kk]=Тік параллелограм Name[nb]=Loddrett parallellogram diff -Nru calligra-2.3.86/flow/stencils/Assorted/pentagon.desktop calligra-2.3.87/flow/stencils/Assorted/pentagon.desktop --- calligra-2.3.86/flow/stencils/Assorted/pentagon.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Assorted/pentagon.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -2,12 +2,14 @@ Name=Pentagon Name[bg]=Петоъгълник Name[ca]=Pentàgon +Name[ca@valencia]=Pentàgon Name[cs]=Pětiúhelník Name[da]=Femkant Name[de]=Fünfeck Name[el]=Πεντάγωνο Name[es]=Pentágono Name[et]=Viisnurk +Name[hu]=Ötszög Name[it]=Pentagono Name[kk]=Бесбұрыш Name[nb]=Femkant diff -Nru calligra-2.3.86/flow/stencils/Assorted/square.desktop calligra-2.3.87/flow/stencils/Assorted/square.desktop --- calligra-2.3.86/flow/stencils/Assorted/square.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Assorted/square.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -2,12 +2,14 @@ Name=Perfect Square Name[bg]=Квадрат Name[ca]=Quadrat perfecte +Name[ca@valencia]=Quadrat perfecte Name[cs]=Dokonalý čtverec Name[da]=Perfekt kvadrat Name[de]=Perfektes Quadrat Name[el]=Τέλειο τετράγωνο Name[es]=Cuadrado perfecto Name[et]=Ruut +Name[hu]=Teljes négyzet Name[it]=Quadrato perfetto Name[kk]=Шаршы Name[nb]=Perfekt kvadrat diff -Nru calligra-2.3.86/flow/stencils/Assorted/star4curved.desktop calligra-2.3.87/flow/stencils/Assorted/star4curved.desktop --- calligra-2.3.86/flow/stencils/Assorted/star4curved.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Assorted/star4curved.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -2,11 +2,13 @@ Name=Curved Four Point Star Name[bg]=Извита четирилъчна звезда Name[ca]=Estrella corbada de quatre puntes +Name[ca@valencia]=Estrella corbada de quatre puntes Name[da]=Kurvet firespidset stjerne Name[de]=Gekurvter Stern mit vier Zacken Name[el]=Καμπύλο τετράκτινο αστέρι Name[es]=Estrella de cuatro puntas curvada Name[et]=Ümardatud neljaharuline täht +Name[hu]=Ívelt négypontos csillag Name[it]=Stella a quattro punte curvata Name[kk]=Төртұшты жұлдыз Name[nb]=Krum firetakket stjerne diff -Nru calligra-2.3.86/flow/stencils/Assorted/star4.desktop calligra-2.3.87/flow/stencils/Assorted/star4.desktop --- calligra-2.3.86/flow/stencils/Assorted/star4.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Assorted/star4.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -2,11 +2,13 @@ Name=Four Point Star Name[bg]=Четирилъчна звезда Name[ca]=Estrella de quatre puntes +Name[ca@valencia]=Estrella de quatre puntes Name[da]=Firspidset stjerne Name[de]=Stern mit vier Zacken Name[el]=Τετράκτινο αστέρι Name[es]=Estrella de cuatro puntas Name[et]=Neljaharuline täht +Name[hu]=Négypontos csillag Name[it]=Stella a quattro punte Name[kk]=Төртұшты жұлдыз Name[nb]=Firetakket stjerne diff -Nru calligra-2.3.86/flow/stencils/Assorted/star5.desktop calligra-2.3.87/flow/stencils/Assorted/star5.desktop --- calligra-2.3.86/flow/stencils/Assorted/star5.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Assorted/star5.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -2,12 +2,14 @@ Name=Five Point Star Name[bg]=Петолъчка Name[ca]=Estrella de cinc puntes +Name[ca@valencia]=Estrella de cinc puntes Name[cs]=Pěticípá hvězda Name[da]=Femspidset stjerne Name[de]=Stern mit fünf Zacken Name[el]=Πεντάκτινο αστέρι Name[es]=Estrella de cinco puntas Name[et]=Viieharuline täht +Name[hu]=Ötpontos csillag Name[it]=Stella a cinque punte Name[kk]=Бесұшты жұлдыз Name[nb]=Femtakket stjerne diff -Nru calligra-2.3.86/flow/stencils/Assorted/star6.desktop calligra-2.3.87/flow/stencils/Assorted/star6.desktop --- calligra-2.3.86/flow/stencils/Assorted/star6.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Assorted/star6.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -2,12 +2,14 @@ Name=Six Point Star Name[bg]=Шестлъчна звезда Name[ca]=Estrella de sis puntes +Name[ca@valencia]=Estrella de sis puntes Name[cs]=Šesticípá hvězda Name[da]=Sekspidset stjerne Name[de]=Stern mit sechs Zacken Name[el]=Εξάκτινο αστέρι Name[es]=Estrella de seis puntas Name[et]=Kuueharuline täht +Name[hu]=Hatpontos csillag Name[it]=Stella a sei punte Name[kk]=Алтыұшты жұлдыз Name[nb]=Sekstakket stjerne diff -Nru calligra-2.3.86/flow/stencils/Assorted/star7.desktop calligra-2.3.87/flow/stencils/Assorted/star7.desktop --- calligra-2.3.86/flow/stencils/Assorted/star7.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Assorted/star7.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -2,12 +2,14 @@ Name=Seven Point Star Name[bg]=Седемлъчна звезда Name[ca]=Estrella de set puntes +Name[ca@valencia]=Estrella de set puntes Name[cs]=Sedmicípá hvězda Name[da]=Syvspidset stjerne Name[de]=Stern mit sieben Zacken Name[el]=Επτάκτινο αστέρι Name[es]=Estrella de siete puntas Name[et]=Seitsmeharuline täht +Name[hu]=Hétpontos csillag Name[it]=Stella a sette punte Name[kk]=Жетіұшты жұлдыз Name[nb]=Syvtakket stjerne diff -Nru calligra-2.3.86/flow/stencils/Assorted/star8curved.desktop calligra-2.3.87/flow/stencils/Assorted/star8curved.desktop --- calligra-2.3.86/flow/stencils/Assorted/star8curved.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Assorted/star8curved.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -2,11 +2,13 @@ Name=Curved Eight Point Star Name[bg]=Извита осемлъчна звезда Name[ca]=Estrella corbada de vuit puntes +Name[ca@valencia]=Estrella corbada de vuit puntes Name[da]=Kurvet ottespidset stjerne Name[de]=Gekurvter Stern mit acht Zacken Name[el]=Καμπύλο οκτάκτινο αστέρι Name[es]=Estrella de ocho puntas curvada Name[et]=Ümardatud kaheksaharuline täht +Name[hu]=Ívelt nyolcpontos csillag Name[it]=Stella a otto punte curvata Name[kk]=Ойыс сегізұшты жұлдыз Name[nb]=Krum åttetakket stjerne diff -Nru calligra-2.3.86/flow/stencils/Assorted/star8.desktop calligra-2.3.87/flow/stencils/Assorted/star8.desktop --- calligra-2.3.86/flow/stencils/Assorted/star8.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Assorted/star8.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -2,12 +2,14 @@ Name=Eight Point Star Name[bg]=Осемлъчна звезда Name[ca]=Estrella de vuit puntes +Name[ca@valencia]=Estrella de vuit puntes Name[cs]=Osmicípá hvězda Name[da]=Ottespidset stjerne Name[de]=Stern mit acht Zacken Name[el]=Οκτάκτινο αστέρι Name[es]=Estrella de ocho puntas Name[et]=Kaheksaharuline täht +Name[hu]=Nyolcpontos csillag Name[it]=Stella a otto punte Name[kk]=Сегізұшты жұлдыз Name[nb]=Åttetakket stjerne diff -Nru calligra-2.3.86/flow/stencils/Assorted/star8sharp.desktop calligra-2.3.87/flow/stencils/Assorted/star8sharp.desktop --- calligra-2.3.86/flow/stencils/Assorted/star8sharp.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Assorted/star8sharp.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -2,11 +2,13 @@ Name=Sharp Eight Point Star Name[bg]=Остра осемлъчна звезда Name[ca]=Estrella afilada de vuit puntes +Name[ca@valencia]=Estrella afilada de vuit puntes Name[da]=Skarp ottespidset stjerne Name[de]=Scharfer Stern mit acht Zacken Name[el]=Αιχμηρό οκτάκτινο αστέρι Name[es]=Estrella de ocho puntas puntiaguda Name[et]=Teravdatud kaheksaharuline täht +Name[hu]=Hegyes nyolcpontos csillag Name[it]=Stella a otto punte acuminata Name[kk]=Өткір сегізұшты жұлдыз Name[nb]=Spiss åttetakket stjerne diff -Nru calligra-2.3.86/flow/stencils/Assorted/sun.desktop calligra-2.3.87/flow/stencils/Assorted/sun.desktop --- calligra-2.3.86/flow/stencils/Assorted/sun.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Assorted/sun.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -2,12 +2,14 @@ Name=Sun Name[bg]=Слънце Name[ca]=Sol +Name[ca@valencia]=Sol Name[cs]=Slunce Name[da]=Sol Name[de]=Sonne Name[el]=Ήλιος Name[es]=Sol Name[et]=Päike +Name[hu]=Nap Name[it]=Sole Name[kk]=Күннің көзі Name[nb]=Sol diff -Nru calligra-2.3.86/flow/stencils/Assorted/trapezoid.desktop calligra-2.3.87/flow/stencils/Assorted/trapezoid.desktop --- calligra-2.3.86/flow/stencils/Assorted/trapezoid.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Assorted/trapezoid.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -2,11 +2,13 @@ Name=Trapezoid Name[bg]=Трапец Name[ca]=Trapezoide +Name[ca@valencia]=Trapezoide Name[da]=Trapezer Name[de]=Trapezoid Name[el]=Τραπεζοειδές Name[es]=Trapezoide Name[et]=Trapets +Name[hu]=Trapéz Name[it]=Trapezoide Name[kk]=Трапеция Name[nb]=Trapes diff -Nru calligra-2.3.86/flow/stencils/Assorted/triangle-isoceles.desktop calligra-2.3.87/flow/stencils/Assorted/triangle-isoceles.desktop --- calligra-2.3.86/flow/stencils/Assorted/triangle-isoceles.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Assorted/triangle-isoceles.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -1,20 +1,15 @@ [Desktop Entry] -Name=Isoceles Triangle -Name[bg]=Равнобедрен триъгълник -Name[ca]=Triangle isòscel·les -Name[da]=Ligebenet trekant -Name[el]=Ισοσκελές τρίγωνο -Name[es]=Triángulo isósceles +Name=Isosceles Triangle Name[et]=Võrdhaarne kolmnurk +Name[hu]=Egyenlő szárú háromszög Name[it]=Triangolo isoscele Name[kk]=Тең бүйірлі үшбұрыш -Name[nb]=Likebenet trekant -Name[nl]=Isoceles driehoek +Name[nl]=Gelijkbenige driehoek Name[pl]=Trójką równoramienny Name[pt]=Triângulo Isósceles Name[pt_BR]=Triângulo isósceles Name[ru]=Равнобедренный треугольник Name[sv]=Likbent triangel Name[uk]=Рівнобедрений трикутник -Name[x-test]=xxIsoceles Trianglexx +Name[x-test]=xxIsosceles Trianglexx Name[zh_TW]=等腰三角形 diff -Nru calligra-2.3.86/flow/stencils/Assorted/triangle-rightangle.desktop calligra-2.3.87/flow/stencils/Assorted/triangle-rightangle.desktop --- calligra-2.3.86/flow/stencils/Assorted/triangle-rightangle.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Assorted/triangle-rightangle.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -2,11 +2,13 @@ Name=Right Angle Triangle Name[bg]=Правоъгълен триъгълник Name[ca]=Triangle rectangle +Name[ca@valencia]=Triangle rectangle Name[da]=Højrevinklet trekant Name[de]=Rechtwinkliges Dreieck Name[el]=Ορθογώνιο τρίγωνο Name[es]=Triángulo rectángulo Name[et]=Täisnurkne kolmnurk +Name[hu]=Derékszögű háromszög Name[it]=Triangolo rettangolo Name[kk]=Тең жақты үшбұрыш Name[nb]=Rettvinklet trekant diff -Nru calligra-2.3.86/flow/stencils/BPMN/Activity-Looping.desktop calligra-2.3.87/flow/stencils/BPMN/Activity-Looping.desktop --- calligra-2.3.86/flow/stencils/BPMN/Activity-Looping.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/BPMN/Activity-Looping.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -1,11 +1,13 @@ [Desktop Entry] Name=Activity-Looping Name[ca]=Activitat-enllaçada +Name[ca@valencia]=Activitat-enllaçada Name[da]=Aktivitetsløkke +Name[el]=Επανάληψη-δραστηριότητας Name[es]=Actividad en bucle Name[et]=Tegevuse kordamine Name[it]=Activity-Looping -Name[kk]=Іс-қайталауы +Name[kk]=Циклдік амал Name[nb]=Aktivitet-sløyfe Name[nl]=Rondlopende activiteit Name[pl]=Zapętlanie-działania diff -Nru calligra-2.3.86/flow/stencils/BPMN/Ad-Hoc-Collapsed-Sub-Process.desktop calligra-2.3.87/flow/stencils/BPMN/Ad-Hoc-Collapsed-Sub-Process.desktop --- calligra-2.3.86/flow/stencils/BPMN/Ad-Hoc-Collapsed-Sub-Process.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/BPMN/Ad-Hoc-Collapsed-Sub-Process.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -1,9 +1,12 @@ [Desktop Entry] Name=Ad-Hoc-Collapsed-Sub-Process Name[ca]=Sub-procés col·lapsat ad-hoc +Name[ca@valencia]=Sub-procés col·lapsat ad-hoc +Name[el]=Ειδική-περίπτωση-κατάρρευσης-υπο-διεργασίας Name[es]=Subproceso específico colapsado Name[et]=Ad hoc suletud alamprotsess Name[it]=Sottoprocesso-Ad-Hoc-Compresso +Name[kk]=Арнаулы бүктелген ішкі процесі Name[nb]=Ad-hoc-sammenfoldet underprosess Name[nl]=Adhoc-ingevouwen-subproces Name[pl]=Pod-Proces-Zwinięty-Ad-Hoc diff -Nru calligra-2.3.86/flow/stencils/BPMN/Collapsed-Sub-Process.desktop calligra-2.3.87/flow/stencils/BPMN/Collapsed-Sub-Process.desktop --- calligra-2.3.86/flow/stencils/BPMN/Collapsed-Sub-Process.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/BPMN/Collapsed-Sub-Process.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -1,9 +1,12 @@ [Desktop Entry] Name=Collapsed-Sub-Process Name[ca]=Sub-procés col·lapsat +Name[ca@valencia]=Sub-procés col·lapsat +Name[el]=Κατάρρευση-υπο-διεργασίας Name[es]=Subproceso colapsado Name[et]=Suletud alamprotsess Name[it]=Sottoprocesso-Compresso +Name[kk]=Бүктелген ішкі процесі Name[nb]=Sammenfoldet-underprosess Name[nl]=Ingevouwen-subproces Name[pl]=Zwinięty-Pod-Proces diff -Nru calligra-2.3.86/flow/stencils/BPMN/collection.desktop calligra-2.3.87/flow/stencils/BPMN/collection.desktop --- calligra-2.3.86/flow/stencils/BPMN/collection.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/BPMN/collection.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -2,11 +2,14 @@ Name=BPMN Name[bg]=BPMN Name[ca]=BPMN +Name[ca@valencia]=BPMN Name[de]=BPMN Name[el]=BPMN Name[es]=BPMN Name[et]=BPMN +Name[hu]=BPMN Name[it]=BPMN +Name[kk]=BPMN Name[nb]=BPMN Name[nl]=BPMN Name[pl]=BPMN diff -Nru calligra-2.3.86/flow/stencils/BPMN/Compensation-Collapsed-Sub-Process.desktop calligra-2.3.87/flow/stencils/BPMN/Compensation-Collapsed-Sub-Process.desktop --- calligra-2.3.86/flow/stencils/BPMN/Compensation-Collapsed-Sub-Process.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/BPMN/Compensation-Collapsed-Sub-Process.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -1,9 +1,12 @@ [Desktop Entry] Name=Compensation-Collapsed-Sub-Process Name[ca]=Sub-procés col·lapsat de compensació +Name[ca@valencia]=Sub-procés col·lapsat de compensació +Name[el]=Αντιστάθμιση-σε-κατάρρευση-υπο-διεργασίας Name[es]=Compensación de subproceso colapsado Name[et]=Kompenseeriv suletud alamprotsess Name[it]=Sottoprocesso-Compresso-Compensazione +Name[kk]=Компенсациялап бүктеген ішкі процесі Name[nb]=Kompensasjon-sammenfoldet-underprosess Name[nl]=Compensatie-ingevouwen-subproces Name[pl]=Kompensacyjny-Zwinięty-Pod-Proces diff -Nru calligra-2.3.86/flow/stencils/BPMN/Compensation.desktop calligra-2.3.87/flow/stencils/BPMN/Compensation.desktop --- calligra-2.3.86/flow/stencils/BPMN/Compensation.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/BPMN/Compensation.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -1,10 +1,12 @@ [Desktop Entry] Name=Compensation Name[ca]=Compensació +Name[ca@valencia]=Compensació Name[el]=Αντιστάθμιση Name[es]=Compensación Name[et]=Kompenseerimine Name[it]=Compensazione +Name[kk]=Компенсация Name[nb]=Kompensasjon Name[nds]=Topassen Name[nl]=Compensatie diff -Nru calligra-2.3.86/flow/stencils/BPMN/Data-Object.desktop calligra-2.3.87/flow/stencils/BPMN/Data-Object.desktop --- calligra-2.3.86/flow/stencils/BPMN/Data-Object.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/BPMN/Data-Object.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -1,11 +1,13 @@ [Desktop Entry] Name=Data-Object Name[ca]=Objecte-dada +Name[ca@valencia]=Objecte-dada Name[de]=Datenobjekt Name[el]=Data-Object Name[es]=Objeto de datos Name[et]=Andmeobjekt Name[it]=Oggetto-Dati +Name[kk]=Дерек нысаны Name[nb]=Data-objekt Name[nds]=Datenobjekt Name[nl]=Gegevensobject diff -Nru calligra-2.3.86/flow/stencils/BPMN/End-Event-Cancel.desktop calligra-2.3.87/flow/stencils/BPMN/End-Event-Cancel.desktop --- calligra-2.3.86/flow/stencils/BPMN/End-Event-Cancel.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/BPMN/End-Event-Cancel.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -1,9 +1,11 @@ [Desktop Entry] Name=End-Event-Cancel Name[ca]=Final-Esdeveniment-Cancel·la +Name[ca@valencia]=Final-Esdeveniment-Cancel·la Name[es]=Cancelación del evento final -Name[et]=Sündmuse lõpu katkestamine +Name[et]=Lõpusündmuse katkestamine Name[it]=Evento-finale-Annullamento +Name[kk]=Аяқтау-оқиға-айну Name[nb]=Slutt-hendelse-avbryt Name[nl]=Einde-gebeurtenis-annuleren Name[pl]=Anulowanie-Zdarzenia-Zakończenia diff -Nru calligra-2.3.86/flow/stencils/BPMN/End-Event-Compensation.desktop calligra-2.3.87/flow/stencils/BPMN/End-Event-Compensation.desktop --- calligra-2.3.86/flow/stencils/BPMN/End-Event-Compensation.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/BPMN/End-Event-Compensation.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -1,9 +1,11 @@ [Desktop Entry] Name=End-Event-Compensation Name[ca]=Final-Esdeveniment-Compensació +Name[ca@valencia]=Final-Esdeveniment-Compensació Name[es]=Compensación del evento final -Name[et]=Sündmuse lõpu kompenseerimine +Name[et]=Lõpusündmuse kompenseerimine Name[it]=Evento-finale-Compensazione +Name[kk]=Аяқтау-оқиға-компенсация Name[nb]=Slutt-hendelse-kompensasjon Name[nl]=Einde-gebeurtenis-compensatie Name[pl]=Kompensacja-Zdarzenia-Zakończenia diff -Nru calligra-2.3.86/flow/stencils/BPMN/End-Event.desktop calligra-2.3.87/flow/stencils/BPMN/End-Event.desktop --- calligra-2.3.86/flow/stencils/BPMN/End-Event.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/BPMN/End-Event.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -1,9 +1,11 @@ [Desktop Entry] Name=End-Event Name[ca]=Esdeveniment-Final +Name[ca@valencia]=Esdeveniment-Final Name[es]=Evento final -Name[et]=Sündmuse lõpp +Name[et]=Lõpusündmus Name[it]=Evento-finale +Name[kk]=Аяқтау-оқиға Name[nb]=Slutt-hendelse Name[nl]=Eindgebeurtenis Name[pl]=Zdarzenie-Zakończenia diff -Nru calligra-2.3.86/flow/stencils/BPMN/End-Event-Error.desktop calligra-2.3.87/flow/stencils/BPMN/End-Event-Error.desktop --- calligra-2.3.86/flow/stencils/BPMN/End-Event-Error.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/BPMN/End-Event-Error.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -1,9 +1,11 @@ [Desktop Entry] Name=End-Event-Error Name[ca]=Final-Esdeveniment-Error +Name[ca@valencia]=Final-Esdeveniment-Error Name[es]=Error en el evento final -Name[et]=Sündmuse lõpu tõrge +Name[et]=Lõpusündmuse tõrge Name[it]=Evento-finale-Errore +Name[kk]=Аяқтау-оқиға-қате Name[nb]=Slutt-hendelse-feil Name[nl]=Fout in eindgebeurtenis Name[pl]=Błąd--Zdarzenia-Zakończenia diff -Nru calligra-2.3.86/flow/stencils/BPMN/End-Event-Link.desktop calligra-2.3.87/flow/stencils/BPMN/End-Event-Link.desktop --- calligra-2.3.86/flow/stencils/BPMN/End-Event-Link.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/BPMN/End-Event-Link.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -1,9 +1,11 @@ [Desktop Entry] Name=End-Event-Link Name[ca]=Final-Esdeveniment-Enllaç +Name[ca@valencia]=Final-Esdeveniment-Enllaç Name[es]=Enlace al evento final -Name[et]=Sündmuse lõpu link +Name[et]=Lõpusündmuse link Name[it]=Evento-finale-Collegamento +Name[kk]=Аяқтау-оқиға-сілтеме Name[nb]=Slutt-hendelse-lenke Name[nl]=Koppeling met eindgebeurtenis Name[pl]=Odnośnik-Zdarzenia-Zakończenia diff -Nru calligra-2.3.86/flow/stencils/BPMN/End-Event-Message.desktop calligra-2.3.87/flow/stencils/BPMN/End-Event-Message.desktop --- calligra-2.3.86/flow/stencils/BPMN/End-Event-Message.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/BPMN/End-Event-Message.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -1,9 +1,11 @@ [Desktop Entry] Name=End-Event-Message Name[ca]=Final-Esdeveniment-Missatge +Name[ca@valencia]=Final-Esdeveniment-Missatge Name[es]=Mensaje del evento final -Name[et]=Sündmuse lõpu sõnum +Name[et]=Lõpusündmuse sõnum Name[it]=Evento-finale-Messaggio +Name[kk]=Аяқтау-оқиға-хабарлама Name[nb]=Slutt-hendelse-melding Name[nl]=Bericht bij eindgebeurtenis Name[pl]=Komunikat-Zdarzenia-Zakończenia diff -Nru calligra-2.3.86/flow/stencils/BPMN/End-Event-Multiple.desktop calligra-2.3.87/flow/stencils/BPMN/End-Event-Multiple.desktop --- calligra-2.3.86/flow/stencils/BPMN/End-Event-Multiple.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/BPMN/End-Event-Multiple.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -1,9 +1,11 @@ [Desktop Entry] Name=End-Event-Multiple Name[ca]=Final-Esdeveniment-Múltiple +Name[ca@valencia]=Final-Esdeveniment-Múltiple Name[es]=Evento final múltiple -Name[et]=Sündmuse mitmiklõpp +Name[et]=Mitmiklõpusündmus Name[it]=Evento-finale-Multiplo +Name[kk]=Аяқтау-оқиға-тармақтау Name[nb]=Slutt-hendelse-flere Name[nl]=Einde-gebeurtenis-meervoudig Name[pl]=Mnożenie-Zdarzenia-Zakończenia diff -Nru calligra-2.3.86/flow/stencils/BPMN/End-Event-Terminate.desktop calligra-2.3.87/flow/stencils/BPMN/End-Event-Terminate.desktop --- calligra-2.3.86/flow/stencils/BPMN/End-Event-Terminate.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/BPMN/End-Event-Terminate.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -1,9 +1,11 @@ [Desktop Entry] Name=End-Event-Terminate Name[ca]=Final-Esdeveniment-Finalitza +Name[ca@valencia]=Final-Esdeveniment-Finalitza Name[es]=Terminación del evento final -Name[et]=Sündmuse lõpu lõpetamine +Name[et]=Lõpusündmuse lõpetamine Name[it]=Evento-finale-Terminazione +Name[kk]=Аяқтау-оқиға-тамандау Name[nb]=Slutt-hendelse-terminer Name[nl]=Einde-gebeurtenis-beëindigen Name[pl]=Zakończenie-Zdarzenia-Zakończenia diff -Nru calligra-2.3.86/flow/stencils/BPMN/Gateway-Complex.desktop calligra-2.3.87/flow/stencils/BPMN/Gateway-Complex.desktop --- calligra-2.3.86/flow/stencils/BPMN/Gateway-Complex.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/BPMN/Gateway-Complex.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -1,9 +1,11 @@ [Desktop Entry] Name=Gateway-Complex Name[ca]=Passarel·la-Complex +Name[ca@valencia]=Passarel·la-Complex Name[es]=Puerta de enlace compleja -Name[et]=Keeruline lüüs +Name[et]=Keeruline värav Name[it]=Gateway-Complesso +Name[kk]=Шлюз кешені Name[nb]=Portner-kompleks Name[nl]=Gateway-Complex Name[pl]=Brama-złożona diff -Nru calligra-2.3.86/flow/stencils/BPMN/Gateway.desktop calligra-2.3.87/flow/stencils/BPMN/Gateway.desktop --- calligra-2.3.86/flow/stencils/BPMN/Gateway.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/BPMN/Gateway.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -1,12 +1,14 @@ [Desktop Entry] Name=Gateway Name[ca]=Passarel·la +Name[ca@valencia]=Passarel·la Name[cs]=Brána Name[de]=Gateway Name[el]=Πύλη Name[es]=Puerta de enlace -Name[et]=Lüüs +Name[et]=Värav Name[it]=Gateway +Name[kk]=Шлюз Name[nb]=Portner Name[nds]=Döörreekner Name[nl]=Gateway diff -Nru calligra-2.3.86/flow/stencils/BPMN/Gateway-Exclusive-XOR-Data-Based.desktop calligra-2.3.87/flow/stencils/BPMN/Gateway-Exclusive-XOR-Data-Based.desktop --- calligra-2.3.86/flow/stencils/BPMN/Gateway-Exclusive-XOR-Data-Based.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/BPMN/Gateway-Exclusive-XOR-Data-Based.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -1,9 +1,11 @@ [Desktop Entry] Name=Gateway-Exclusive-XOR-Data-Based Name[ca]=Passarel·la-Exclusiu-XOR-Basat-Dades +Name[ca@valencia]=Passarel·la-Exclusiu-XOR-Basat-Dades Name[es]=Puerta de enlace XOR exclusiva basada en datos -Name[et]=Eksklusiivne (XOR) andmepõhine lüüs +Name[et]=Eksklusiivne (XOR) andmepõhine värav Name[it]=Gateway-Esclusivo-XOR-Basato-su-Dati +Name[kk]=Деректер негізіндегі сыйыспайтын НЕМЕСЕ шлюзі Name[nb]=Portner-XOR-databasert Name[nl]=Gateway-Exclusive-XOR-Data-Based Name[pl]=Bramka-Alternatywy-Wykluczającej-Na-Podstawie-Danych diff -Nru calligra-2.3.86/flow/stencils/BPMN/Gateway-Exclusive-XOR-Event-Based.desktop calligra-2.3.87/flow/stencils/BPMN/Gateway-Exclusive-XOR-Event-Based.desktop --- calligra-2.3.86/flow/stencils/BPMN/Gateway-Exclusive-XOR-Event-Based.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/BPMN/Gateway-Exclusive-XOR-Event-Based.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -1,9 +1,11 @@ [Desktop Entry] Name=Gateway-Exclusive-XOR-Event-Based Name[ca]=Passarel·la-Exclusiu-XOR-Basat-Esdeveniment +Name[ca@valencia]=Passarel·la-Exclusiu-XOR-Basat-Esdeveniment Name[es]=Puerta de enlace XOR exclusiva basada en eventos -Name[et]=Eksklusiivne (XOR) sündmusepõhine lüüs +Name[et]=Eksklusiivne (XOR) sündmusepõhine värav Name[it]=Gateway-Esclusivo-XOR-Basato-su-Eventi +Name[kk]=Оқиғалар негізіндегі сыйыспайтын НЕМЕСЕ шлюзі Name[nb]=Portner-XOR-hendelsesbasert Name[nl]=Gateway-Exclusive-XOR-Event-Based Name[pl]=Bramka-Alternatywy-Wykluczającej-Na-Podstawie-Zdarzeń diff -Nru calligra-2.3.86/flow/stencils/BPMN/Gateway-Inclusive-OR.desktop calligra-2.3.87/flow/stencils/BPMN/Gateway-Inclusive-OR.desktop --- calligra-2.3.86/flow/stencils/BPMN/Gateway-Inclusive-OR.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/BPMN/Gateway-Inclusive-OR.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -1,9 +1,11 @@ [Desktop Entry] Name=Gateway-Inclusive-OR Name[ca]=Passarel·la-Inclusiu-OR +Name[ca@valencia]=Passarel·la-Inclusiu-OR Name[es]=Puerta de enlace O inclusiva -Name[et]=Inklusiivne (OR) lüüs +Name[et]=Inklusiivne (OR) värav Name[it]=Gateway-Inclusivo-OR +Name[kk]=Сыйысатын НЕМЕСЕ шлюзі Name[nb]=Portner-inklusive-OR Name[nl]=Gateway-Inclusive-OR Name[pl]=Bramka-Alternatywy diff -Nru calligra-2.3.86/flow/stencils/BPMN/Gateway-Parallel-AND.desktop calligra-2.3.87/flow/stencils/BPMN/Gateway-Parallel-AND.desktop --- calligra-2.3.86/flow/stencils/BPMN/Gateway-Parallel-AND.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/BPMN/Gateway-Parallel-AND.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -1,9 +1,11 @@ [Desktop Entry] Name=Gateway-Parallel-AND Name[ca]=Passarel·la-Paral·lel-AND +Name[ca@valencia]=Passarel·la-Paral·lel-AND Name[es]=Puerta de enlace Y paralela -Name[et]=Paralleelne (AND) lüüs +Name[et]=Paralleelne (AND) värav Name[it]=Gateway-Parallelo-AND +Name[kk]=Қатарлы ЖӘНЕ шлюзі Name[nb]=Portner-Parallell-AND Name[nl]=Gateway-Parallel-AND Name[pl]=Bramka-Koniunkcji diff -Nru calligra-2.3.86/flow/stencils/BPMN/Group.desktop calligra-2.3.87/flow/stencils/BPMN/Group.desktop --- calligra-2.3.86/flow/stencils/BPMN/Group.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/BPMN/Group.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -2,6 +2,7 @@ Name=Group Name[bg]=Група Name[ca]=Grup +Name[ca@valencia]=Grup Name[cs]=Skupina Name[de]=Gruppe Name[el]=Ομάδα @@ -9,6 +10,7 @@ Name[et]=Grupp Name[ga]=Grúpa Name[it]=Gruppo +Name[kk]=Тобы Name[nb]=Gruppe Name[nds]=Koppel Name[nl]=Groep diff -Nru calligra-2.3.86/flow/stencils/BPMN/Intermediate-Event-Cancel.desktop calligra-2.3.87/flow/stencils/BPMN/Intermediate-Event-Cancel.desktop --- calligra-2.3.86/flow/stencils/BPMN/Intermediate-Event-Cancel.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/BPMN/Intermediate-Event-Cancel.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -1,9 +1,11 @@ [Desktop Entry] Name=Intermediate-Event-Cancel Name[ca]=Intermedi-Esdeveniment-Cancel·la +Name[ca@valencia]=Intermedi-Esdeveniment-Cancel·la Name[es]=Cancelación de evento intermedio Name[et]=Vahesündmuse katkestamine Name[it]=Evento-intermedio-Annullamento +Name[kk]=Аралық-оқиға-айну Name[nb]=Mellomliggende-hendelse-avbryt Name[nl]=Tussenin-gebeurtenis-annuleren Name[pl]=Anulowanie-Zdarzenia-Pośredniego diff -Nru calligra-2.3.86/flow/stencils/BPMN/Intermediate-Event-Compensation.desktop calligra-2.3.87/flow/stencils/BPMN/Intermediate-Event-Compensation.desktop --- calligra-2.3.86/flow/stencils/BPMN/Intermediate-Event-Compensation.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/BPMN/Intermediate-Event-Compensation.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -1,9 +1,11 @@ [Desktop Entry] Name=Intermediate-Event-Compensation Name[ca]=Intermedi-Esdeveniment-Compensació +Name[ca@valencia]=Intermedi-Esdeveniment-Compensació Name[es]=Compensación del evento intermedio Name[et]=Vahesündmuse kompenseerimine Name[it]=Evento-intermedio-Compensazione +Name[kk]=Аралық-оқиға-компенсация Name[nb]=Mellomliggende-hendelse-kompensasjon Name[nl]=Tussenin-gebeurtenis-compensatie Name[pl]=Kompensacja-Zdarzenia-Pośredniego diff -Nru calligra-2.3.86/flow/stencils/BPMN/Intermediate-Event.desktop calligra-2.3.87/flow/stencils/BPMN/Intermediate-Event.desktop --- calligra-2.3.86/flow/stencils/BPMN/Intermediate-Event.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/BPMN/Intermediate-Event.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -1,9 +1,11 @@ [Desktop Entry] Name=Intermediate-Event Name[ca]=Intermedi-Esdeveniment +Name[ca@valencia]=Intermedi-Esdeveniment Name[es]=Evento intermedio Name[et]=Vahesündmus Name[it]=Evento-intermedio +Name[kk]=Аралық-оқиға Name[nb]=Mellomliggende-hendelse Name[nl]=Tussenin-gebeurtenis Name[pl]=Zdarzenie-Pośrednie diff -Nru calligra-2.3.86/flow/stencils/BPMN/Intermediate-Event-Error.desktop calligra-2.3.87/flow/stencils/BPMN/Intermediate-Event-Error.desktop --- calligra-2.3.86/flow/stencils/BPMN/Intermediate-Event-Error.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/BPMN/Intermediate-Event-Error.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -1,9 +1,11 @@ [Desktop Entry] Name=Intermediate-Event-Error Name[ca]=Intermedi-Esdeveniment-Error +Name[ca@valencia]=Intermedi-Esdeveniment-Error Name[es]=Error en el evento intermedio Name[et]=Vahesündmuse tõrge Name[it]=Evento-intermedio-Errore +Name[kk]=Аралық-оқиға-қате Name[nb]=Mellomliggende-hendelse-feil Name[nl]=Tussenin-gebeurtenis-fout Name[pl]=Błąd-Zdarzenia-Pośredniego diff -Nru calligra-2.3.86/flow/stencils/BPMN/Intermediate-Event-Link.desktop calligra-2.3.87/flow/stencils/BPMN/Intermediate-Event-Link.desktop --- calligra-2.3.86/flow/stencils/BPMN/Intermediate-Event-Link.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/BPMN/Intermediate-Event-Link.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -1,9 +1,11 @@ [Desktop Entry] Name=Intermediate-Event-Link Name[ca]=Intermedi-Esdeveniment-Enllaç +Name[ca@valencia]=Intermedi-Esdeveniment-Enllaç Name[es]=Enlace al evento intermedio Name[et]=Vahesündmuse link Name[it]=Evento-intermedio-Collegamento +Name[kk]=Аралық-оқиға-сілтеме Name[nb]=Mellomliggende-hendelse-lenke Name[nl]=Tussenin-gebeurtenis-koppeling Name[pl]=Odnośnik-Zdarzenia-Pośredniego diff -Nru calligra-2.3.86/flow/stencils/BPMN/Intermediate-Event-Message.desktop calligra-2.3.87/flow/stencils/BPMN/Intermediate-Event-Message.desktop --- calligra-2.3.86/flow/stencils/BPMN/Intermediate-Event-Message.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/BPMN/Intermediate-Event-Message.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -1,9 +1,11 @@ [Desktop Entry] Name=Intermediate-Event-Message Name[ca]=Intermedi-Esdeveniment-Missatge +Name[ca@valencia]=Intermedi-Esdeveniment-Missatge Name[es]=Mensaje del evento intermedio Name[et]=Vahesündmuse sõnum Name[it]=Evento-intermedio-Messaggio +Name[kk]=Аралық-оқиға-хабарлама Name[nb]=Mellomliggende-hendelse-melding Name[nl]=Tussenin-gebeurtenis-bericht Name[pl]=Komunikat-Zdarzenia-Pośredniego diff -Nru calligra-2.3.86/flow/stencils/BPMN/Intermediate-Event-Multiple.desktop calligra-2.3.87/flow/stencils/BPMN/Intermediate-Event-Multiple.desktop --- calligra-2.3.86/flow/stencils/BPMN/Intermediate-Event-Multiple.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/BPMN/Intermediate-Event-Multiple.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -1,9 +1,11 @@ [Desktop Entry] Name=Intermediate-Event-Multiple Name[ca]=Intermedi-Esdeveniment-Múltiple +Name[ca@valencia]=Intermedi-Esdeveniment-Múltiple Name[es]=Evento intermedio múltiple Name[et]=Mitmikvahesündmus Name[it]=Evento-intermedio-Multiplo +Name[kk]=Аралық-оқиға-тармақтау Name[nb]=Mellomliggende-hendelse-flere Name[nl]=Tussenin-gebeurtenis-meervoudig Name[pl]=Mnożenie-Zdarzenia-Pośredniego diff -Nru calligra-2.3.86/flow/stencils/BPMN/Intermediate-Event-Rule.desktop calligra-2.3.87/flow/stencils/BPMN/Intermediate-Event-Rule.desktop --- calligra-2.3.86/flow/stencils/BPMN/Intermediate-Event-Rule.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/BPMN/Intermediate-Event-Rule.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -1,9 +1,11 @@ [Desktop Entry] Name=Intermediate-Event-Rule Name[ca]=Intermedi-Esdeveniment-Regla +Name[ca@valencia]=Intermedi-Esdeveniment-Regla Name[es]=Regla del evento intermedio Name[et]=Vahesündmuse reegel Name[it]=Evento-intermedio-Regola +Name[kk]=Аралық-оқиға-ереже Name[nb]=Mellomliggende-hendelse-regel Name[nl]=Tussenin-gebeurtenis-regel Name[pl]=Zasada-Zdarzenia-Pośredniego diff -Nru calligra-2.3.86/flow/stencils/BPMN/Intermediate-Event-Timer.desktop calligra-2.3.87/flow/stencils/BPMN/Intermediate-Event-Timer.desktop --- calligra-2.3.86/flow/stencils/BPMN/Intermediate-Event-Timer.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/BPMN/Intermediate-Event-Timer.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -1,9 +1,11 @@ [Desktop Entry] Name=Intermediate-Event-Timer Name[ca]=Intermedi-Esdeveniment-Temporitzador +Name[ca@valencia]=Intermedi-Esdeveniment-Temporitzador Name[es]=Temporizador del evento intermedio Name[et]=Vahesündmuse taimer Name[it]=Evento-intermedio-Timer +Name[kk]=Аралық-оқиға-таймер Name[nb]=Mellomliggende-hendelse-tidtaker Name[nl]=Tussenin-gebeurtenis-timer Name[pl]=Czasomierz-Zdarzenia-Pośredniego diff -Nru calligra-2.3.86/flow/stencils/BPMN/Looping-Collapsed-Sub-Process.desktop calligra-2.3.87/flow/stencils/BPMN/Looping-Collapsed-Sub-Process.desktop --- calligra-2.3.86/flow/stencils/BPMN/Looping-Collapsed-Sub-Process.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/BPMN/Looping-Collapsed-Sub-Process.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -1,9 +1,11 @@ [Desktop Entry] Name=Looping-Collapsed-Sub-Process Name[ca]=Llaçant-Sub-Procés-Col·lapsat +Name[ca@valencia]=Llaçant-Sub-Procés-Col·lapsat Name[es]=Ciclo de subproceso colapsado Name[et]=Korduv suletud alamprotsess Name[it]=Sottoprocesso-di-Looping-Compresso +Name[kk]=Циклді бүктелген ішкі процесі Name[nb]=Sløyfe-sammenfoldet-underprosess Name[nl]=Rondgaan-ingevouwen-subproces Name[pl]=Zapętlanie-Zwiniętego-Pod-Procesu diff -Nru calligra-2.3.86/flow/stencils/BPMN/Multiple-Instance-Collapsed-Sub-Process.desktop calligra-2.3.87/flow/stencils/BPMN/Multiple-Instance-Collapsed-Sub-Process.desktop --- calligra-2.3.86/flow/stencils/BPMN/Multiple-Instance-Collapsed-Sub-Process.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/BPMN/Multiple-Instance-Collapsed-Sub-Process.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -1,9 +1,11 @@ [Desktop Entry] Name=Multiple-Instance-Collapsed-Sub-Process Name[ca]=Sup-procés-Col·lapsat-Múltiples-Instàncies +Name[ca@valencia]=Sup-procés-Col·lapsat-Múltiples-Instàncies Name[es]=Instancia múltiple de subproceso colapsado Name[et]=Suletud mitmikalamprotsess Name[it]=Sottoprocesso-a-Istanza-Multipla-Compresso +Name[kk]=көп даналы бүктелген ішкі процесі Name[nb]=Flerinstans-sammenfoldet-underprosess Name[nl]=Meervoudig-exemplaar-ingevouwen-subproces Name[pl]=Wielo-Instancyjny-Zwinięty-Pod-Proces diff -Nru calligra-2.3.86/flow/stencils/BPMN/Multiple-Instance-Task.desktop calligra-2.3.87/flow/stencils/BPMN/Multiple-Instance-Task.desktop --- calligra-2.3.86/flow/stencils/BPMN/Multiple-Instance-Task.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/BPMN/Multiple-Instance-Task.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -1,9 +1,11 @@ [Desktop Entry] Name=Multiple-Instance-Task Name[ca]=Tasca-Múltiples-Instàncies +Name[ca@valencia]=Tasca-Múltiples-Instàncies Name[es]=Instancia múltiple de la tarea Name[et]=Mitmikülesanne Name[it]=Compito-Istanza-Multipla +Name[kk]=Бірнеше даналық тапсырма Name[nb]=Flerinstans-oppgave Name[nl]=Meervoudig-exemplaar-taak Name[pl]=Wielo-Instancyjne-Zadanie diff -Nru calligra-2.3.86/flow/stencils/BPMN/Start-Event.desktop calligra-2.3.87/flow/stencils/BPMN/Start-Event.desktop --- calligra-2.3.86/flow/stencils/BPMN/Start-Event.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/BPMN/Start-Event.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -1,9 +1,11 @@ [Desktop Entry] Name=Start-Event Name[ca]=Inicia-Esdeveniment +Name[ca@valencia]=Inicia-Esdeveniment Name[es]=Evento inicial -Name[et]=Sündmuse algus +Name[et]=Algussündmus Name[it]=Evento-intermedio +Name[kk]=Бастау оқиғасы Name[nb]=Start-hendelse Name[nl]=Begin-gebeurtenis Name[pl]=Zdarzenie-Rozpoczynające diff -Nru calligra-2.3.86/flow/stencils/BPMN/Start-Event-Link.desktop calligra-2.3.87/flow/stencils/BPMN/Start-Event-Link.desktop --- calligra-2.3.86/flow/stencils/BPMN/Start-Event-Link.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/BPMN/Start-Event-Link.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -1,11 +1,13 @@ [Desktop Entry] Name=Start-Event-Link Name[ca]=Inicia-Esdeveniment-Enllaç +Name[ca@valencia]=Inicia-Esdeveniment-Enllaç Name[es]=Enlace al evento inicial -Name[et]=Sündmuse alguse link +Name[et]=Algussündmuse link Name[it]=Evento-iniziale-Collegamento +Name[kk]=Бастау-оқиға-сілтеме Name[nb]=Start-hendelse-lenke -Name[nl]=Koppeling naar begin gebeurtenis +Name[nl]=Begin-gebeurtenis-koppeling Name[pl]=Odnośnik-Zdarzenia-Rozpoczynającego Name[pt]=Evento-Inicial-Ligação Name[pt_BR]=Link do evento inicial diff -Nru calligra-2.3.86/flow/stencils/BPMN/Start-Event-Message.desktop calligra-2.3.87/flow/stencils/BPMN/Start-Event-Message.desktop --- calligra-2.3.86/flow/stencils/BPMN/Start-Event-Message.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/BPMN/Start-Event-Message.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -1,11 +1,13 @@ [Desktop Entry] Name=Start-Event-Message Name[ca]=Inicia-Esdeveniment-Missatge +Name[ca@valencia]=Inicia-Esdeveniment-Missatge Name[es]=Mensaje del evento inicial -Name[et]=Sündmuse alguse sõnum +Name[et]=Algussündmuse sõnum Name[it]=Evento-iniziale-Messaggio +Name[kk]=Бастау-оқиға-хабарлама Name[nb]=Start-hendelse-melding -Name[nl]=Bericht bij begingebeurtenis +Name[nl]=Begin-gebeurtenis-bericht Name[pl]=Komunikat-Zdarzenia-Rozpoczynającego Name[pt]=Evento-Inicial-Mensagem Name[pt_BR]=Mensagem do evento inicial diff -Nru calligra-2.3.86/flow/stencils/BPMN/Start-Event-Multiple.desktop calligra-2.3.87/flow/stencils/BPMN/Start-Event-Multiple.desktop --- calligra-2.3.86/flow/stencils/BPMN/Start-Event-Multiple.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/BPMN/Start-Event-Multiple.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -1,11 +1,13 @@ [Desktop Entry] Name=Start-Event-Multiple Name[ca]=Inicia-Esdeveniment-Múltiple +Name[ca@valencia]=Inicia-Esdeveniment-Múltiple Name[es]=Evento inicial múltiple -Name[et]=Sündmuse mitmikalgus +Name[et]=Mitmikalgussündmus Name[it]=Evento-iniziale-Multiplo +Name[kk]=Бастау-оқиға-тармақтау Name[nb]=Start-hendelse-flere -Name[nl]=Begingebeurtenis-meervoudig +Name[nl]=Begin-gebeurtenis-meervoudig Name[pl]=Mnożenie-Zdarzenia-Rozpoczynającego Name[pt]=Evento-Inicial-Múltiplo Name[pt_BR]=Evento inicial múltiplo diff -Nru calligra-2.3.86/flow/stencils/BPMN/Start-Event-Rule.desktop calligra-2.3.87/flow/stencils/BPMN/Start-Event-Rule.desktop --- calligra-2.3.86/flow/stencils/BPMN/Start-Event-Rule.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/BPMN/Start-Event-Rule.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -1,11 +1,13 @@ [Desktop Entry] Name=Start-Event-Rule Name[ca]=Inicia-Esdeveniment-Regla +Name[ca@valencia]=Inicia-Esdeveniment-Regla Name[es]=Regla del evento incial -Name[et]=Sündmuse alguse reegel +Name[et]=Algussündmuse reegel Name[it]=Evento-iniziale-Regola +Name[kk]=Бастау-оқиға-ереже Name[nb]=Start-hendelse-regel -Name[nl]=Begingebeurtenis-regel +Name[nl]=Begin-gebeurtenis-regel Name[pl]=Zasada-Zdarzenia-Rozpoczynającego Name[pt]=Evento-Inicial-Regra Name[pt_BR]=Regra do evento inicial diff -Nru calligra-2.3.86/flow/stencils/BPMN/Start-Event-Timer.desktop calligra-2.3.87/flow/stencils/BPMN/Start-Event-Timer.desktop --- calligra-2.3.86/flow/stencils/BPMN/Start-Event-Timer.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/BPMN/Start-Event-Timer.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -1,10 +1,13 @@ [Desktop Entry] Name=Start-Event-Timer Name[ca]=Inicia-Esdeveniment-Temporitzador +Name[ca@valencia]=Inicia-Esdeveniment-Temporitzador Name[es]=Temporizador del evento inicial -Name[et]=Sündmuse alguse taimer +Name[et]=Algussündmuse taimer Name[it]=Evento-iniziale-Timer +Name[kk]=Бастау-оқиға-таймер Name[nb]=Start-hendelse-tidtaker +Name[nl]=Begin-gebeurtenis-timer Name[pl]=Czasomierz-Zdarzenia-Rozpoczynającego Name[pt]=Evento-Inicial-Temporizador Name[pt_BR]=Cronômetro do evento inicial diff -Nru calligra-2.3.86/flow/stencils/BPMN/Task.desktop calligra-2.3.87/flow/stencils/BPMN/Task.desktop --- calligra-2.3.86/flow/stencils/BPMN/Task.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/BPMN/Task.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -2,12 +2,15 @@ Name=Task Name[bg]=Задача Name[ca]=Tasca +Name[ca@valencia]=Tasca Name[cs]=Úloha Name[de]=Aufgabe Name[el]=Εργασία Name[es]=Tarea Name[et]=Ülesanne +Name[hu]=Feladat Name[it]=Compito +Name[kk]=Тапсырма Name[nb]=Oppgave Name[nds]=Opgaav Name[nl]=Taak diff -Nru calligra-2.3.86/flow/stencils/BPMN/Text-Annotation.desktop calligra-2.3.87/flow/stencils/BPMN/Text-Annotation.desktop --- calligra-2.3.86/flow/stencils/BPMN/Text-Annotation.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/BPMN/Text-Annotation.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -2,12 +2,14 @@ Name=Text-Annotation Name[bg]=Текстови функции Name[ca]=Anotació de text +Name[ca@valencia]=Anotació de text Name[cs]=Textová anotace Name[de]=Text-Anmerkung Name[el]=Κείμενο-σημειώσεις Name[es]=Comentario de texto Name[et]=Tekstiannotatsioon Name[it]=Annotazione-Testo +Name[kk]=Аңдатпа-мәтін Name[nb]=Tekstmerknad Name[nds]=Textanmarken Name[nl]=Tekstannotatie diff -Nru calligra-2.3.86/flow/stencils/BPMN/Transaction.desktop calligra-2.3.87/flow/stencils/BPMN/Transaction.desktop --- calligra-2.3.86/flow/stencils/BPMN/Transaction.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/BPMN/Transaction.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -1,11 +1,14 @@ [Desktop Entry] Name=Transaction Name[ca]=Transacció +Name[ca@valencia]=Transacció Name[cs]=Přenos Name[el]=Συναλλαγή Name[es]=Transacción -Name[et]=Transaktsioon +Name[et]=Tehing +Name[hu]=Tranzakció Name[it]=Transazione +Name[kk]=Транзакция Name[nb]=Transaksjon Name[nl]=Transactie Name[pl]=Transakcja diff -Nru calligra-2.3.86/flow/stencils/Building_Site/circle_diagonal_quarters_filled.desktop calligra-2.3.87/flow/stencils/Building_Site/circle_diagonal_quarters_filled.desktop --- calligra-2.3.86/flow/stencils/Building_Site/circle_diagonal_quarters_filled.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Building_Site/circle_diagonal_quarters_filled.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -1,11 +1,14 @@ [Desktop Entry] Name=Circle Diagonal Quarters Filled Name[ca]=Quarts de cercle diagonal omplerts +Name[ca@valencia]=Quarts de cercle diagonal omplerts Name[el]=Τα διαγώνια τεταρτημόρια γέμισαν Name[es]=Cuartos diagonales de círculo llenos Name[et]=Diagonaalsete täidetud veeranditega ring Name[it]=Quarti di cerchio diagonali riempiti +Name[kk]=Диагональды ширектері толтырылған шеңбер Name[nb]=Sirkel, diagonalt kvartfylt +Name[nl]=Cirkel diagonale kwarten gevuld Name[pl]=Przekątne ćwiartki koła wypełnione Name[pt]=Quartos de Círculo Diagonais Preenchidos Name[pt_BR]=Quartos de círculos diagonais preenchidos diff -Nru calligra-2.3.86/flow/stencils/Building_Site/collection.desktop calligra-2.3.87/flow/stencils/Building_Site/collection.desktop --- calligra-2.3.86/flow/stencils/Building_Site/collection.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Building_Site/collection.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -2,11 +2,13 @@ Name=Building Site Name[bg]=Строеж Name[ca]=Construint el lloc +Name[ca@valencia]=Construint el lloc Name[de]=Baustelle Name[el]=Κατασκευή ιστοχώρου Name[es]=Sitio en construcción Name[et]=Ehitus Name[it]=Cantiere +Name[kk]=Құрылыс орны Name[nb]=Byggeplass Name[nl]=Bouwsite Name[pl]=Plac budowy diff -Nru calligra-2.3.86/flow/stencils/Building_Site/concrete_mixer.desktop calligra-2.3.87/flow/stencils/Building_Site/concrete_mixer.desktop --- calligra-2.3.86/flow/stencils/Building_Site/concrete_mixer.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Building_Site/concrete_mixer.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -2,11 +2,13 @@ Name=Concrete Mixer Name[bg]=Бетонобъркачка Name[ca]=Mesclador concret +Name[ca@valencia]=Mesclador concret Name[de]=Betonmischer Name[el]=Συμπαγής μείκτης Name[es]=Hormigonera Name[et]=Betoonisegisti Name[it]=Betoniera +Name[kk]=Бетон араластырғышы Name[nb]=Betongblander Name[nl]=Betonmixer Name[pl]=Betoniarka diff -Nru calligra-2.3.86/flow/stencils/Building_Site/fence_horizontal.desktop calligra-2.3.87/flow/stencils/Building_Site/fence_horizontal.desktop --- calligra-2.3.86/flow/stencils/Building_Site/fence_horizontal.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Building_Site/fence_horizontal.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -2,11 +2,13 @@ Name=Horizontal Fence Name[bg]=Хоризонтална ограда Name[ca]=Tanca horitzontal +Name[ca@valencia]=Tanca horitzontal Name[de]=Waagerechter Zaun Name[el]=Οριζόντιος φράκτης Name[es]=Valla horizontal Name[et]=Horisontaalne piire Name[it]=Recinzione orizzontale +Name[kk]=Жатық қоршау Name[nb]=Vannrett gjerde Name[nl]=Horizontaal hekwerk Name[pl]=Poziome ogrodzenie diff -Nru calligra-2.3.86/flow/stencils/Building_Site/fence_vertical.desktop calligra-2.3.87/flow/stencils/Building_Site/fence_vertical.desktop --- calligra-2.3.86/flow/stencils/Building_Site/fence_vertical.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Building_Site/fence_vertical.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -2,11 +2,13 @@ Name=Vertical Fence Name[bg]=Вертикална ограда Name[ca]=Tanca vertical +Name[ca@valencia]=Tanca vertical Name[de]=Senkrechter Zaun Name[el]=Κάθετος φράκτης Name[es]=Valla vertical Name[et]=Vertikaalne piire Name[it]=Recinzione verticale +Name[kk]=Тік қоршау Name[nb]=Loddrett gjerde Name[nl]=Verticaal hekwerk Name[pl]=Pionowe ogrodzenie diff -Nru calligra-2.3.86/flow/stencils/Building_Site/pre_silo.desktop calligra-2.3.87/flow/stencils/Building_Site/pre_silo.desktop --- calligra-2.3.86/flow/stencils/Building_Site/pre_silo.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Building_Site/pre_silo.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -1,10 +1,13 @@ [Desktop Entry] Name=Pre-Silo Name[ca]=Pre-Silo +Name[ca@valencia]=Pre-Silo Name[es]=Pre-silo Name[et]=Eelhoidla Name[it]=Pre-silo +Name[kk]=Бункеры Name[nb]=Pre-Silo +Name[nl]=Silo Name[pl]=Pre-Silos Name[pt]=Pré-Silo Name[pt_BR]=Pré-Silo diff -Nru calligra-2.3.86/flow/stencils/Building_Site/proportioning_batcher.desktop calligra-2.3.87/flow/stencils/Building_Site/proportioning_batcher.desktop --- calligra-2.3.86/flow/stencils/Building_Site/proportioning_batcher.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Building_Site/proportioning_batcher.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -1,10 +1,13 @@ [Desktop Entry] Name=Proportioning Batcher Name[ca]=Proporcionat Batcher +Name[ca@valencia]=Proporcionat Batcher Name[es]=Dosificador proporcional Name[et]=Dosaator Name[it]=Dosatore proporzionale +Name[kk]=Мөлшерлеуіш Name[nb]=Proporsjonerende blandeverk +Name[nl]=Vulinstallatie Name[pl]=Proporcjonujący dozownik Name[pt]=Empilhador Proporcional Name[pt_BR]=Empilhador proporcional diff -Nru calligra-2.3.86/flow/stencils/Building_Site/road_crossroads.desktop calligra-2.3.87/flow/stencils/Building_Site/road_crossroads.desktop --- calligra-2.3.86/flow/stencils/Building_Site/road_crossroads.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Building_Site/road_crossroads.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -1,10 +1,12 @@ [Desktop Entry] Name=Road Crossroads Name[ca]=Encreuament de carreteres +Name[ca@valencia]=Encreuament de carreteres Name[el]=Διασταυρώσεις Name[es]=Cruce de carreteras Name[et]=Risttee Name[it]=Incroci stradali +Name[kk]=Жол қиылысы Name[nb]=Veikryss Name[nl]=Wegkruising Name[pl]=Skrzyżowania dróg diff -Nru calligra-2.3.86/flow/stencils/Building_Site/road_horizontal.desktop calligra-2.3.87/flow/stencils/Building_Site/road_horizontal.desktop --- calligra-2.3.86/flow/stencils/Building_Site/road_horizontal.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Building_Site/road_horizontal.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -1,11 +1,13 @@ [Desktop Entry] Name=Horizontal Road Name[ca]=Carretera horitzontal +Name[ca@valencia]=Carretera horitzontal Name[de]=Waagerechte Straße Name[el]=Οριζόντιος δρόμος Name[es]=Carretera horizontal Name[et]=Horisontaalne tee Name[it]=Strada orizzontale +Name[kk]=Қөлдеңен жол Name[nb]=Vannrett vei Name[nds]=Kimmrecht Straat Name[nl]=Horizontale weg diff -Nru calligra-2.3.86/flow/stencils/Building_Site/road_rotated_tee.desktop calligra-2.3.87/flow/stencils/Building_Site/road_rotated_tee.desktop --- calligra-2.3.86/flow/stencils/Building_Site/road_rotated_tee.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Building_Site/road_rotated_tee.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -1,10 +1,14 @@ [Desktop Entry] Name=Road Rotated Tee Name[ca]=Carretera T girada +Name[ca@valencia]=Carretera T girada +Name[el]=Περιστρεφόμενο υποστήριγμα δρόμου Name[es]=Unión en forma de T rotada de carreteras Name[et]=Pööratud T-kujuline ristmik Name[it]=Strada a T ruotata +Name[kk]=Төңкерген "Т" секілді қиылыс Name[nb]=Rotert veimøte +Name[nl]=Weg, gedraaide t-kruising Name[pl]=Zakręcona koszulka drogowa Name[pt]=Entroncamento Rodado Name[pt_BR]=Entroncamento rodado diff -Nru calligra-2.3.86/flow/stencils/Building_Site/road_tee.desktop calligra-2.3.87/flow/stencils/Building_Site/road_tee.desktop --- calligra-2.3.86/flow/stencils/Building_Site/road_tee.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Building_Site/road_tee.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -1,10 +1,14 @@ [Desktop Entry] Name=Road Tee Name[ca]=Carretera T +Name[ca@valencia]=Carretera T +Name[el]=Υποστήριγμα δρόμου Name[es]=Unión en forma de T de carreteras Name[et]=T-kujuline ristmik Name[it]=Strada a T +Name[kk]="Т" секілді қиылыс Name[nb]=Veimøte +Name[nl]=Weg, t-kruising Name[pl]=Koszulka drogowa Name[pt]=Entroncamento Name[pt_BR]=Entroncamento diff -Nru calligra-2.3.86/flow/stencils/Building_Site/road_turn.desktop calligra-2.3.87/flow/stencils/Building_Site/road_turn.desktop --- calligra-2.3.86/flow/stencils/Building_Site/road_turn.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Building_Site/road_turn.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -1,11 +1,14 @@ [Desktop Entry] Name=Road Turn Name[ca]=Gir de carretera +Name[ca@valencia]=Gir de carretera Name[el]=Στροφή δρόμου Name[es]=Giro de carretera Name[et]=Teekäänak Name[it]=Curva stradale +Name[kk]=Жол бұрылысы Name[nb]=Veisving +Name[nl]=Weg, bocht Name[pl]=Skręt drogi Name[pt]=Curva de Estrada Name[pt_BR]=Curva de estrada diff -Nru calligra-2.3.86/flow/stencils/Building_Site/road_vertical.desktop calligra-2.3.87/flow/stencils/Building_Site/road_vertical.desktop --- calligra-2.3.86/flow/stencils/Building_Site/road_vertical.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Building_Site/road_vertical.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -1,10 +1,12 @@ [Desktop Entry] Name=Vertical Road Name[ca]=Carretera vertical +Name[ca@valencia]=Carretera vertical Name[el]=Κάθετος δρόμος Name[es]=Carretera vertical Name[et]=Vertikaalne tee Name[it]=Strada verticale +Name[kk]=Тік жол Name[nb]=Loddrett vei Name[nds]=Pielrecht Straat Name[nl]=Verticale weg diff -Nru calligra-2.3.86/flow/stencils/Building_Site/slope_horizontal.desktop calligra-2.3.87/flow/stencils/Building_Site/slope_horizontal.desktop --- calligra-2.3.86/flow/stencils/Building_Site/slope_horizontal.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Building_Site/slope_horizontal.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -1,10 +1,12 @@ [Desktop Entry] Name=Horizontal Slope Name[ca]=Desnivell horitzontal +Name[ca@valencia]=Desnivell horitzontal Name[el]=Οριζόντια κλίση Name[es]=Rampa horizontal Name[et]=Horisontaalne kallak Name[it]=Pendio orizzontale +Name[kk]=Жатық еңіс Name[nb]=Vannrett skråning Name[nl]=Horizontale helling Name[pl]=Pozioma pochyłość diff -Nru calligra-2.3.86/flow/stencils/Building_Site/slope_vertical.desktop calligra-2.3.87/flow/stencils/Building_Site/slope_vertical.desktop --- calligra-2.3.86/flow/stencils/Building_Site/slope_vertical.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Building_Site/slope_vertical.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -1,10 +1,12 @@ [Desktop Entry] Name=Vertical Slope Name[ca]=Desnivell vertical +Name[ca@valencia]=Desnivell vertical Name[el]=Κάθετη κλίση Name[es]=Rampa vertical Name[et]=Vertikaalne kallak Name[it]=Pendio verticale +Name[kk]=Тік еңіс Name[nb]=Loddrett skråning Name[nl]=Verticale helling Name[pl]=Pionowa pochyłość diff -Nru calligra-2.3.86/flow/stencils/Building_Site/wall_horizontal.desktop calligra-2.3.87/flow/stencils/Building_Site/wall_horizontal.desktop --- calligra-2.3.86/flow/stencils/Building_Site/wall_horizontal.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Building_Site/wall_horizontal.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -1,11 +1,13 @@ [Desktop Entry] Name=Horizontal Wall Name[ca]=Paret horitzontal +Name[ca@valencia]=Paret horitzontal Name[de]=Waagerechte Mauer Name[el]=Οριζόντιο τείχος Name[es]=Pared horizontal Name[et]=Horisontaalne sein Name[it]=Muro orizzontale +Name[kk]=Жатық қабырға Name[nb]=Vannrett vegg Name[nds]=Kimmrecht Muer Name[nl]=Horizontale muur diff -Nru calligra-2.3.86/flow/stencils/Building_Site/wall_vertical.desktop calligra-2.3.87/flow/stencils/Building_Site/wall_vertical.desktop --- calligra-2.3.86/flow/stencils/Building_Site/wall_vertical.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Building_Site/wall_vertical.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -1,11 +1,13 @@ [Desktop Entry] Name=Vertical Wall Name[ca]=Paret vertical +Name[ca@valencia]=Paret vertical Name[de]=Senkrechte Mauer Name[el]=Κάθετο τείχος Name[es]=Pared vertical Name[et]=Vertikaalne sein Name[it]=Muro verticale +Name[kk]=Тік қабырға Name[nb]=Loddrett vegg Name[nds]=Pielrecht Muer Name[nl]=Verticale muur diff -Nru calligra-2.3.86/flow/stencils/Central_Data_Processing/collection.desktop calligra-2.3.87/flow/stencils/Central_Data_Processing/collection.desktop --- calligra-2.3.86/flow/stencils/Central_Data_Processing/collection.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Central_Data_Processing/collection.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -1,11 +1,13 @@ [Desktop Entry] Name=Central Data Processing Name[ca]=Procés central de dades +Name[ca@valencia]=Procés central de dades Name[de]=Zentrale Datenverarbeitung Name[el]=Κεντρική επεξεργασία δεδομένων Name[es]=Central de proceso de datos Name[et]=Serveriruum Name[it]=Elaborazione dati centralizzata +Name[kk]=Орталықтанған дерек өңдеуі Name[nb]=Sentral databehandling Name[nl]=Centrale gegevensverwerking Name[pl]=Centralne przetwarzanie danych diff -Nru calligra-2.3.86/flow/stencils/Central_Data_Processing/CPD_rack_15.desktop calligra-2.3.87/flow/stencils/Central_Data_Processing/CPD_rack_15.desktop --- calligra-2.3.86/flow/stencils/Central_Data_Processing/CPD_rack_15.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Central_Data_Processing/CPD_rack_15.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -2,11 +2,14 @@ Name=Rack15U Name[bg]=Шкаф 15U Name[ca]=Rack15U +Name[ca@valencia]=Rack15U Name[de]=Rack15U Name[el]=Rack15U Name[es]=Rack 15U -Name[et]=Püstik 15U +Name[et]=Seadmekapp 15U +Name[hu]=Rack15U Name[it]=Rack15U +Name[kk]=15U сөресі Name[nb]=Rack15U Name[nl]=Rack15U Name[pl]=Rack15U diff -Nru calligra-2.3.86/flow/stencils/Central_Data_Processing/CPD_rack_32.desktop calligra-2.3.87/flow/stencils/Central_Data_Processing/CPD_rack_32.desktop --- calligra-2.3.86/flow/stencils/Central_Data_Processing/CPD_rack_32.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Central_Data_Processing/CPD_rack_32.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -2,11 +2,14 @@ Name=Rack32U Name[bg]=Шкаф 32U Name[ca]=Rack32U +Name[ca@valencia]=Rack32U Name[de]=Rack32U Name[el]=Rack32U Name[es]=Rack 32U -Name[et]=Püstik 32U +Name[et]=Seadmekapp 32U +Name[hu]=Rack32U Name[it]=Rack32U +Name[kk]=32U сөресі Name[nb]=Rack32U Name[nl]=Rack32U Name[pl]=Rack32U diff -Nru calligra-2.3.86/flow/stencils/Central_Data_Processing/CPD_rack_36.desktop calligra-2.3.87/flow/stencils/Central_Data_Processing/CPD_rack_36.desktop --- calligra-2.3.86/flow/stencils/Central_Data_Processing/CPD_rack_36.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Central_Data_Processing/CPD_rack_36.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -2,11 +2,14 @@ Name=Rack36U Name[bg]=Шкаф 36U Name[ca]=Rack36U +Name[ca@valencia]=Rack36U Name[de]=Rack36U Name[el]=Rack36U Name[es]=Rack 36U -Name[et]=Püstik 36U +Name[et]=Seadmekapp 36U +Name[hu]=Rack36U Name[it]=Rack36U +Name[kk]=36U сөресі Name[nb]=Rack36U Name[nl]=Rack36U Name[pl]=Rack36U diff -Nru calligra-2.3.86/flow/stencils/Central_Data_Processing/CPD_rack_42.desktop calligra-2.3.87/flow/stencils/Central_Data_Processing/CPD_rack_42.desktop --- calligra-2.3.86/flow/stencils/Central_Data_Processing/CPD_rack_42.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Central_Data_Processing/CPD_rack_42.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -2,11 +2,14 @@ Name=Rack42U Name[bg]=Шкаф 42U Name[ca]=Rack42U +Name[ca@valencia]=Rack42U Name[de]=Rack42U Name[el]=Rack42U Name[es]=Rack 42U -Name[et]=Püstik 42U +Name[et]=Seadmekapp 42U +Name[hu]=Rack42U Name[it]=Rack42U +Name[kk]=42U сөресі Name[nb]=Rack42U Name[nl]=Rack42U Name[pl]=Rack42U diff -Nru calligra-2.3.86/flow/stencils/Central_Data_Processing/CPD_rack_44.desktop calligra-2.3.87/flow/stencils/Central_Data_Processing/CPD_rack_44.desktop --- calligra-2.3.86/flow/stencils/Central_Data_Processing/CPD_rack_44.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Central_Data_Processing/CPD_rack_44.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -2,11 +2,14 @@ Name=Rack44U Name[bg]=Шкаф 44U Name[ca]=Rack44U +Name[ca@valencia]=Rack44U Name[de]=Rack44U Name[el]=Rack44U Name[es]=Rack 44U -Name[et]=Püstik 44U +Name[et]=Seadmekapp 44U +Name[hu]=Rack44U Name[it]=Rack44U +Name[kk]=44U сөресі Name[nb]=Rack44U Name[nl]=Rack44U Name[pl]=Rack44U diff -Nru calligra-2.3.86/flow/stencils/Central_Data_Processing/CPD_rack_5.desktop calligra-2.3.87/flow/stencils/Central_Data_Processing/CPD_rack_5.desktop --- calligra-2.3.86/flow/stencils/Central_Data_Processing/CPD_rack_5.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Central_Data_Processing/CPD_rack_5.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -2,11 +2,14 @@ Name=Rack5U Name[bg]=Шкаф 5U Name[ca]=Rack5U +Name[ca@valencia]=Rack5U Name[de]=Rack5U Name[el]=Rack5U Name[es]=Rack 5U -Name[et]=Püstik 5U +Name[et]=Seadmekapp 5U +Name[hu]=Rack5U Name[it]=Rack5U +Name[kk]=5U сөресі Name[nb]=Rack5U Name[nl]=Rack5U Name[pl]=Rack5U diff -Nru calligra-2.3.86/flow/stencils/Central_Data_Processing/CPD_rack_7.desktop calligra-2.3.87/flow/stencils/Central_Data_Processing/CPD_rack_7.desktop --- calligra-2.3.86/flow/stencils/Central_Data_Processing/CPD_rack_7.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Central_Data_Processing/CPD_rack_7.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -2,11 +2,14 @@ Name=Rack7U Name[bg]=Шкаф 7U Name[ca]=Rack7U +Name[ca@valencia]=Rack7U Name[de]=Rack7U Name[el]=Rack7U Name[es]=Rack 7U -Name[et]=Püstik 7U +Name[et]=Seadmekapp 7U +Name[hu]=Rack7U Name[it]=Rack7U +Name[kk]=7U сөресі Name[nb]=Rack7U Name[nl]=Rack7U Name[pl]=Rack7U diff -Nru calligra-2.3.86/flow/stencils/Central_Data_Processing/Litter.desktop calligra-2.3.87/flow/stencils/Central_Data_Processing/Litter.desktop --- calligra-2.3.86/flow/stencils/Central_Data_Processing/Litter.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Central_Data_Processing/Litter.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -1,9 +1,13 @@ [Desktop Entry] Name=Litter Name[ca]=Abocament +Name[ca@valencia]=Abocament Name[de]=Abfall +Name[el]=Απορρίμματα Name[es]=Basura +Name[et]=Alus Name[it]=Litter +Name[kk]=Зембіл Name[nb]=Søppel Name[nl]=Afval Name[pl]=Śmieci diff -Nru calligra-2.3.86/flow/stencils/Central_Data_Processing/Modem.desktop calligra-2.3.87/flow/stencils/Central_Data_Processing/Modem.desktop --- calligra-2.3.86/flow/stencils/Central_Data_Processing/Modem.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Central_Data_Processing/Modem.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -2,12 +2,15 @@ Name=Modem Name[bg]=Модем Name[ca]=Mòdem +Name[ca@valencia]=Mòdem Name[cs]=Modem Name[de]=Modem Name[el]=Modem Name[es]=Módem Name[et]=Modem +Name[hu]=Modem Name[it]=Modem +Name[kk]=Модем Name[nb]=Modem Name[nds]=Modem Name[nl]=Modem diff -Nru calligra-2.3.86/flow/stencils/Central_Data_Processing/Organizador_Rack_1U.desktop calligra-2.3.87/flow/stencils/Central_Data_Processing/Organizador_Rack_1U.desktop --- calligra-2.3.86/flow/stencils/Central_Data_Processing/Organizador_Rack_1U.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Central_Data_Processing/Organizador_Rack_1U.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -1,11 +1,14 @@ [Desktop Entry] Name=OrganizadorRack1U Name[ca]=OrganizadorRack1U +Name[ca@valencia]=OrganizadorRack1U Name[de]=OrganizadorRack1U Name[el]=OrganizadorRack1U Name[es]=Rack organizador 1U Name[et]=OrganizadorRack1U +Name[hu]=OrganizadorRack1U Name[it]=OrganizadorRack1U +Name[kk]=1U кабель будалағышы Name[nb]=OrganizerRack1U Name[nl]=OrganisatorRack1U Name[pl]=OrganizadorRack1U diff -Nru calligra-2.3.86/flow/stencils/Central_Data_Processing/Organizador_Rack_2U.desktop calligra-2.3.87/flow/stencils/Central_Data_Processing/Organizador_Rack_2U.desktop --- calligra-2.3.86/flow/stencils/Central_Data_Processing/Organizador_Rack_2U.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Central_Data_Processing/Organizador_Rack_2U.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -1,11 +1,14 @@ [Desktop Entry] Name=OrganizadorRack2U Name[ca]=OrganizadorRack2U +Name[ca@valencia]=OrganizadorRack2U Name[de]=OrganizadorRack2U Name[el]=OrganizadorRack2U Name[es]=Rack organizador 2U Name[et]=OrganizadorRack2U +Name[hu]=OrganizadorRack2U Name[it]=OrganizadorRack2U +Name[kk]=2U кабель будалағышы Name[nb]=OrganizerRack2U Name[nl]=OrganisatorRack2U Name[pl]=OrganizadorRack2U diff -Nru calligra-2.3.86/flow/stencils/Central_Data_Processing/Organizer_Rack_1U.desktop calligra-2.3.87/flow/stencils/Central_Data_Processing/Organizer_Rack_1U.desktop --- calligra-2.3.86/flow/stencils/Central_Data_Processing/Organizer_Rack_1U.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Central_Data_Processing/Organizer_Rack_1U.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -1,11 +1,14 @@ [Desktop Entry] Name=OrganizerRack1U Name[ca]=OrganizerRack1U +Name[ca@valencia]=OrganizerRack1U Name[de]=OrganizerRack1U Name[el]=OrganizerRack1U Name[es]=Rack organizador 1U Name[et]=OrganizerRack1U +Name[hu]=OrganizerRack1U Name[it]=OrganizerRack1U +Name[kk]=1U кабель органайзері Name[nb]=OrganizerRack1U Name[nl]=OrganisatorRack1U Name[pl]=OrganizerRack1U diff -Nru calligra-2.3.86/flow/stencils/Central_Data_Processing/Organizer_Rack_2U.desktop calligra-2.3.87/flow/stencils/Central_Data_Processing/Organizer_Rack_2U.desktop --- calligra-2.3.86/flow/stencils/Central_Data_Processing/Organizer_Rack_2U.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Central_Data_Processing/Organizer_Rack_2U.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -1,11 +1,14 @@ [Desktop Entry] Name=OrganizerRack2U Name[ca]=OrganizerRack2U +Name[ca@valencia]=OrganizerRack2U Name[de]=OrganizerRack2U Name[el]=OrganizerRack2U Name[es]=Rack organizador 2U Name[et]=OrganizerRack2U +Name[hu]=OrganizerRack2U Name[it]=OrganizerRack2U +Name[kk]=2U кабель органайзері Name[nb]=OrganizerRack2U Name[nl]=OrganisatorRack2U Name[pl]=OrganizerRack2U diff -Nru calligra-2.3.86/flow/stencils/Central_Data_Processing/Path_Painel_24P.desktop calligra-2.3.87/flow/stencils/Central_Data_Processing/Path_Painel_24P.desktop --- calligra-2.3.86/flow/stencils/Central_Data_Processing/Path_Painel_24P.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Central_Data_Processing/Path_Painel_24P.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -1,11 +1,14 @@ [Desktop Entry] Name=PatchPanel24P Name[ca]=PatchPanel24P +Name[ca@valencia]=PatchPanel24P Name[de]=PatchPanel24P Name[el]=PatchPanel24P Name[es]=Panel de conexión 24P -Name[et]=Pistikupaneel 24P +Name[et]=Ühenduspaneel 24P +Name[hu]=PatchPanel24P Name[it]=PatchPanel24P +Name[kk]=24 портты патч-панелі Name[nb]=PatchPanel24P Name[nl]=PatchPanel24P Name[pl]=PatchPanel24P diff -Nru calligra-2.3.86/flow/stencils/Central_Data_Processing/Router.desktop calligra-2.3.87/flow/stencils/Central_Data_Processing/Router.desktop --- calligra-2.3.86/flow/stencils/Central_Data_Processing/Router.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Central_Data_Processing/Router.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -1,12 +1,15 @@ [Desktop Entry] Name=Router Name[ca]=Encaminador +Name[ca@valencia]=Encaminador Name[cs]=Router Name[de]=Router Name[el]=Δρομολογητής Name[es]=Enrutador Name[et]=Ruuter +Name[hu]=Router Name[it]=Router +Name[kk]=Маршруттауыш Name[nb]=Ruter Name[nds]=Nettweger Name[nl]=Router diff -Nru calligra-2.3.86/flow/stencils/Central_Data_Processing/Server_Rack_1U.desktop calligra-2.3.87/flow/stencils/Central_Data_Processing/Server_Rack_1U.desktop --- calligra-2.3.86/flow/stencils/Central_Data_Processing/Server_Rack_1U.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Central_Data_Processing/Server_Rack_1U.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -2,13 +2,16 @@ Name=ServerRack1U Name[bg]=Сървърен шкаф 1U Name[ca]=ServerRack1U +Name[ca@valencia]=ServerRack1U Name[de]=ServerRack1U Name[el]=ServerRack1U Name[es]=Rack servidor 1U -Name[et]=Serveripüstik 1U +Name[et]=Serverikapp 1U +Name[hu]=ServerRack1U Name[it]=ServerRack1U +Name[kk]=1U сервер сөресі Name[nb]=ServerRack1U -Name[nl]=ServerRack1U +Name[nl]=Serverrack1U Name[pl]=ServerRack1U Name[pt]=BastidorServidor1U Name[pt_BR]=Rack de servidor 1U diff -Nru calligra-2.3.86/flow/stencils/Central_Data_Processing/Server_Rack_2U.desktop calligra-2.3.87/flow/stencils/Central_Data_Processing/Server_Rack_2U.desktop --- calligra-2.3.86/flow/stencils/Central_Data_Processing/Server_Rack_2U.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Central_Data_Processing/Server_Rack_2U.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -2,13 +2,16 @@ Name=ServerRack2U Name[bg]=Сървърен шкаф 2U Name[ca]=ServerRack2U +Name[ca@valencia]=ServerRack2U Name[de]=ServerRack2U Name[el]=ServerRack2U Name[es]=Rack servidor 2U -Name[et]=Serveripüstik 2U +Name[et]=Serverikapp 2U +Name[hu]=ServerRack2U Name[it]=ServerRack2U +Name[kk]=2U сервер сөресі Name[nb]=ServerRack2U -Name[nl]=ServerRack2U +Name[nl]=Serverrack2U Name[pl]=ServerRack2U Name[pt]=BastidorServidor2U Name[pt_BR]=Rack de servidor 2U diff -Nru calligra-2.3.86/flow/stencils/Central_Data_Processing/Server_Rack_2U_Slow.desktop calligra-2.3.87/flow/stencils/Central_Data_Processing/Server_Rack_2U_Slow.desktop --- calligra-2.3.86/flow/stencils/Central_Data_Processing/Server_Rack_2U_Slow.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Central_Data_Processing/Server_Rack_2U_Slow.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -1,13 +1,16 @@ [Desktop Entry] Name=ServerRack2USlow Name[ca]=ServerRack2USlow +Name[ca@valencia]=ServerRack2USlow Name[de]=ServerRack2USlow Name[el]=ServerRack2USlow Name[es]=Rack servidor 2U lento -Name[et]=Serveripüstik 2USlow +Name[et]=Serverikapp 2USlow +Name[hu]=ServerRack2USlow Name[it]=ServerRack2USlow +Name[kk]=2USlow сервер сөресі Name[nb]=ServerRack2USlow -Name[nl]=ServerRack2ULangzaam +Name[nl]=Serverrack2ULangzaam Name[pl]=ServerRack2USlow Name[pt]=BastidorServidor2ULento Name[pt_BR]=Rack de servidor 2U lento diff -Nru calligra-2.3.86/flow/stencils/Central_Data_Processing/Server_Rack_2U_Very_Slow.desktop calligra-2.3.87/flow/stencils/Central_Data_Processing/Server_Rack_2U_Very_Slow.desktop --- calligra-2.3.86/flow/stencils/Central_Data_Processing/Server_Rack_2U_Very_Slow.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Central_Data_Processing/Server_Rack_2U_Very_Slow.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -1,13 +1,16 @@ [Desktop Entry] Name=ServerRack2UVerySlow Name[ca]=ServerRack2UVerySlow +Name[ca@valencia]=ServerRack2UVerySlow Name[de]=ServerRack2UVerySlow Name[el]=ServerRack2UVerySlow Name[es]=Rack servidor 2U muy lento -Name[et]=Serveripüstik 2UVerySlow +Name[et]=Serverikapp 2UVerySlow +Name[hu]=ServerRack2UVerySlow Name[it]=ServerRack2UVerySlow +Name[kk]=2UVerySlow сервер сөресі Name[nb]=ServerRack2UVerySlow -Name[nl]=ServerRack2UErgLangzaam +Name[nl]=Serverrack2UErgLangzaam Name[pl]=ServerRack2UVerySlow Name[pt]=BastidorServidor2UMuitoLento Name[pt_BR]=Rack de servidor 2U muito lento diff -Nru calligra-2.3.86/flow/stencils/Central_Data_Processing/Server_Rack_3U.desktop calligra-2.3.87/flow/stencils/Central_Data_Processing/Server_Rack_3U.desktop --- calligra-2.3.86/flow/stencils/Central_Data_Processing/Server_Rack_3U.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Central_Data_Processing/Server_Rack_3U.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -2,13 +2,16 @@ Name=ServerRack3U Name[bg]=Сървърен шкаф 3U Name[ca]=ServerRack3U +Name[ca@valencia]=ServerRack3U Name[de]=ServerRack3U Name[el]=ServerRack3U Name[es]=Rack servidor 3U -Name[et]=Serveripüstik 3U +Name[et]=Serverikapp 3U +Name[hu]=ServerRack3U Name[it]=ServerRack3U +Name[kk]=3U сервер сөресі Name[nb]=ServerRack3U -Name[nl]=ServerRack3U +Name[nl]=Serverrack3U Name[pl]=ServerRack3U Name[pt]=BastidorServidor3U Name[pt_BR]=Rack de servidor 3U diff -Nru calligra-2.3.86/flow/stencils/Central_Data_Processing/Server_Rack_3U_Slow_Density.desktop calligra-2.3.87/flow/stencils/Central_Data_Processing/Server_Rack_3U_Slow_Density.desktop --- calligra-2.3.86/flow/stencils/Central_Data_Processing/Server_Rack_3U_Slow_Density.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Central_Data_Processing/Server_Rack_3U_Slow_Density.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -1,13 +1,16 @@ [Desktop Entry] Name=ServerRack3USlowDensity Name[ca]=ServerRack3USlowDensity +Name[ca@valencia]=ServerRack3USlowDensity Name[de]=ServerRack3USlowDensity Name[el]=ServerRack3USlowDensity Name[es]=Rack servidor 3U de capacidad lenta -Name[et]=Serveripüstik 3USlowDensity +Name[et]=Serverikapp 3USlowDensity +Name[hu]=ServerRack3USlowDensity Name[it]=ServerRack3USlowDensity +Name[kk]=3USlowDensity сервер сөресі Name[nb]=ServerRack3USlowDensity -Name[nl]=ServerRack3ULangzameDichtheid +Name[nl]=Serverrack3ULangzameDichtheid Name[pl]=ServerRack3USlowDensity Name[pt]=BastidorServidor3UDensidadeLenta Name[pt_BR]=Rack de servidor 3U de densidade lenta diff -Nru calligra-2.3.86/flow/stencils/Central_Data_Processing/Server_Rack_4U.desktop calligra-2.3.87/flow/stencils/Central_Data_Processing/Server_Rack_4U.desktop --- calligra-2.3.86/flow/stencils/Central_Data_Processing/Server_Rack_4U.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Central_Data_Processing/Server_Rack_4U.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -2,13 +2,16 @@ Name=ServerRack4U Name[bg]=Сървърен шкаф 4U Name[ca]=ServerRack4U +Name[ca@valencia]=ServerRack4U Name[de]=ServerRack4U Name[el]=ServerRack4U Name[es]=Rack servidor 4U -Name[et]=Serveripüstik 4U +Name[et]=Serverikapp 4U +Name[hu]=ServerRack4U Name[it]=ServerRack4U +Name[kk]=4U сервер сөресі Name[nb]=ServerRack4U -Name[nl]=ServerRack4U +Name[nl]=Serverrack4U Name[pl]=ServerRack4U Name[pt]=BastidorServidor4U Name[pt_BR]=Rack de servidor 4U diff -Nru calligra-2.3.86/flow/stencils/Central_Data_Processing/Server_Rack_4U_Right_Capacity.desktop calligra-2.3.87/flow/stencils/Central_Data_Processing/Server_Rack_4U_Right_Capacity.desktop --- calligra-2.3.86/flow/stencils/Central_Data_Processing/Server_Rack_4U_Right_Capacity.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Central_Data_Processing/Server_Rack_4U_Right_Capacity.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -1,13 +1,16 @@ [Desktop Entry] Name=ServerRack4URightCapacity Name[ca]=ServerRack4URightCapacity +Name[ca@valencia]=ServerRack4URightCapacity Name[de]=ServerRack4URightCapacity Name[el]=ServerRack4URightCapacity Name[es]=Rack servidor 4U de capacidad correcta -Name[et]=Serveripüstik 4URightCapacity +Name[et]=Serverikapp 4URightCapacity +Name[hu]=ServerRack4URightCapacity Name[it]=ServerRack4URightCapacity +Name[kk]=4URightCapacity сервер сөресі Name[nb]=ServerRack4URightCapacity -Name[nl]=ServerRack4UJuisteCapaciteit +Name[nl]=Serverrack4UJuisteCapaciteit Name[pl]=ServerRack4URightCapacity Name[pt]=BastidorServidor4UCapacidadeCorrecta Name[pt_BR]=Rack de servidor 4U de capacidade correta diff -Nru calligra-2.3.86/flow/stencils/Central_Data_Processing/Server_Rack_4U_Slow_Capacity.desktop calligra-2.3.87/flow/stencils/Central_Data_Processing/Server_Rack_4U_Slow_Capacity.desktop --- calligra-2.3.86/flow/stencils/Central_Data_Processing/Server_Rack_4U_Slow_Capacity.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Central_Data_Processing/Server_Rack_4U_Slow_Capacity.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -1,12 +1,16 @@ [Desktop Entry] Name=ServerRack4USlowCapacity Name[ca]=ServerRack4USlowCapacity +Name[ca@valencia]=ServerRack4USlowCapacity Name[de]=ServerRack4USlowCapacity Name[el]=ServerRack4USlowCapacity Name[es]=Rack servidor 4U de capacidad lenta -Name[et]=Serveripüstik 4USlowCapacity +Name[et]=Serverikapp 4USlowCapacity +Name[hu]=ServerRack4USlowCapacity Name[it]=ServerRack4USlowCapacity +Name[kk]=4USlowCapacity сервер сөресі Name[nb]=ServerRack4USlowCapacity +Name[nl]=Serverrack4ULangzameCapaciteit Name[pl]=ServerRack4USlowCapacity Name[pt]=BastidorServidor4UCapacidadeLenta Name[pt_BR]=Rack de servidor 4U de capacidade lenta diff -Nru calligra-2.3.86/flow/stencils/Central_Data_Processing/Server_Rack_4U_Very_Right_Capacity.desktop calligra-2.3.87/flow/stencils/Central_Data_Processing/Server_Rack_4U_Very_Right_Capacity.desktop --- calligra-2.3.86/flow/stencils/Central_Data_Processing/Server_Rack_4U_Very_Right_Capacity.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Central_Data_Processing/Server_Rack_4U_Very_Right_Capacity.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -1,12 +1,16 @@ [Desktop Entry] Name=ServerRack4UVeryRightCapacity Name[ca]=ServerRack4UVeryRightCapacity +Name[ca@valencia]=ServerRack4UVeryRightCapacity Name[de]=ServerRack4UVeryRightCapacity Name[el]=ServerRack4UVeryRightCapacity Name[es]=Rack servidor 4U de capacidad muy correcta -Name[et]=Serveripüstik 4UVeryRightCapacity +Name[et]=Serverikapp 4UVeryRightCapacity +Name[hu]=ServerRack4UVeryRightCapacity Name[it]=ServerRack4UVeryRightCapacity +Name[kk]=4UVeryRightCapacity сервер сөресі Name[nb]=ServerRack4UVeryRightCapacity +Name[nl]=Serverrack4UPreciesJuisteCapaciteit Name[pl]=ServerRack4UVeryRightCapacity Name[pt]=BastidorServidor4UCapacidadeMuitoCorrecta Name[pt_BR]=Rack de servidor 4U de capacidade muito correta diff -Nru calligra-2.3.86/flow/stencils/Central_Data_Processing/Server_Rack_5U.desktop calligra-2.3.87/flow/stencils/Central_Data_Processing/Server_Rack_5U.desktop --- calligra-2.3.86/flow/stencils/Central_Data_Processing/Server_Rack_5U.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Central_Data_Processing/Server_Rack_5U.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -2,13 +2,16 @@ Name=ServerRack5U Name[bg]=Сървърен шкаф 5U Name[ca]=ServerRack5U +Name[ca@valencia]=ServerRack5U Name[de]=ServerRack5U Name[el]=ServerRack5U Name[es]=Rack servidor 5U -Name[et]=Serveripüstik 5U +Name[et]=Serverikapp 5U +Name[hu]=ServerRack5U Name[it]=ServerRack5U +Name[kk]=5U сервер сөресі Name[nb]=ServerRack5U -Name[nl]=ServerRack5U +Name[nl]=Serverrack5U Name[pl]=ServerRack5U Name[pt]=BastidorServidor5U Name[pt_BR]=Rack de servidor 5U diff -Nru calligra-2.3.86/flow/stencils/Central_Data_Processing/Server_Rack_5U_Right_Density.desktop calligra-2.3.87/flow/stencils/Central_Data_Processing/Server_Rack_5U_Right_Density.desktop --- calligra-2.3.86/flow/stencils/Central_Data_Processing/Server_Rack_5U_Right_Density.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Central_Data_Processing/Server_Rack_5U_Right_Density.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -1,12 +1,16 @@ [Desktop Entry] Name=ServerRack5URightDensity Name[ca]=ServerRack5URightDensity +Name[ca@valencia]=ServerRack5URightDensity Name[de]=ServerRack5URightDensity Name[el]=ServerRack5URightDensity Name[es]=Rack servidor 5U de densidad correcta -Name[et]=Serveripüstik 5URightDensity +Name[et]=Serverikapp 5URightDensity +Name[hu]=ServerRack5URightDensity Name[it]=ServerRack5URightDensity +Name[kk]=5URightDensity сервер сөресі Name[nb]=ServerRack5URightDensity +Name[nl]=Serverrack5UJuisteDichtheid Name[pl]=ServerRack5URightDensity Name[pt]=BastidorServidor5UDensidadeCorrecta Name[pt_BR]=Rack de servidor 5U de densidade correta diff -Nru calligra-2.3.86/flow/stencils/Central_Data_Processing/Storage_Rack_3U.desktop calligra-2.3.87/flow/stencils/Central_Data_Processing/Storage_Rack_3U.desktop --- calligra-2.3.86/flow/stencils/Central_Data_Processing/Storage_Rack_3U.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Central_Data_Processing/Storage_Rack_3U.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -1,13 +1,16 @@ [Desktop Entry] Name=StorageRack3U Name[ca]=StorageRack3U +Name[ca@valencia]=StorageRack3U Name[de]=StorageRack3U Name[el]=StorageRack3U Name[es]=Rack de almacenamiento 3U Name[et]=StorageRack3U +Name[hu]=StorageRack3U Name[it]=StorageRack3U +Name[kk]=3U сақтағыш сөресі Name[nb]=StorageRack3U -Name[nl]=StorageRack3U +Name[nl]=Storagerack3U Name[pl]=StorageRack3U Name[pt]=BastidorArmazenamento3U Name[pt_BR]=Rack de armazenamento 3U diff -Nru calligra-2.3.86/flow/stencils/Central_Data_Processing/Storage_Rack_3U_SAN.desktop calligra-2.3.87/flow/stencils/Central_Data_Processing/Storage_Rack_3U_SAN.desktop --- calligra-2.3.86/flow/stencils/Central_Data_Processing/Storage_Rack_3U_SAN.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Central_Data_Processing/Storage_Rack_3U_SAN.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -1,11 +1,14 @@ [Desktop Entry] Name=StorageRack3USAN Name[ca]=StorageRack3USAN +Name[ca@valencia]=StorageRack3USAN Name[de]=StorageRack3USAN Name[el]=StorageRack3USAN Name[es]=Rack de almacenamiento 3U SAN Name[et]=StorageRack3USAN +Name[hu]=StorageRack3USAN Name[it]=StorageRack3USAN +Name[kk]=3USAN сақтағыш сөресі Name[nb]=StorageRack3USAN Name[nl]=StorageRack3USAN Name[pl]=StorageRack3USAN diff -Nru calligra-2.3.86/flow/stencils/Central_Data_Processing/Switch_Rack_16P.desktop calligra-2.3.87/flow/stencils/Central_Data_Processing/Switch_Rack_16P.desktop --- calligra-2.3.86/flow/stencils/Central_Data_Processing/Switch_Rack_16P.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Central_Data_Processing/Switch_Rack_16P.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -1,11 +1,14 @@ [Desktop Entry] Name=SwitchRack16P Name[ca]=SwitchRack16P +Name[ca@valencia]=SwitchRack16P Name[de]=SwitchRack16P Name[el]=SwitchRack16P Name[es]=Rack conmutable 16P -Name[et]=Kommutaatoripüstik 16P +Name[et]=Kommutaatorikapp 16P +Name[hu]=SwitchRack16P Name[it]=SwitchRack16P +Name[kk]=16 портты коммутатор сөресі Name[nb]=SwitchRack16P Name[nl]=SwitchRack16P Name[pl]=PrzełącznikRack16P diff -Nru calligra-2.3.86/flow/stencils/Central_Data_Processing/Switch_Rack_24P.desktop calligra-2.3.87/flow/stencils/Central_Data_Processing/Switch_Rack_24P.desktop --- calligra-2.3.86/flow/stencils/Central_Data_Processing/Switch_Rack_24P.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Central_Data_Processing/Switch_Rack_24P.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -1,11 +1,14 @@ [Desktop Entry] Name=SwitchRack24P Name[ca]=SwitchRack24P +Name[ca@valencia]=SwitchRack24P Name[de]=SwitchRack24P Name[el]=SwitchRack24P Name[es]=Rack conmutable 24P -Name[et]=Kommutaatoripüstik 24P +Name[et]=Kommutaatorikapp 24P +Name[hu]=SwitchRack24P Name[it]=SwitchRack24P +Name[kk]=24 портты коммутатор сөресі Name[nb]=SwitchRack24P Name[nl]=SwitchRack24P Name[pl]=PrzełącznikRack24P diff -Nru calligra-2.3.86/flow/stencils/Central_Data_Processing/Switch_Rack_48P.desktop calligra-2.3.87/flow/stencils/Central_Data_Processing/Switch_Rack_48P.desktop --- calligra-2.3.86/flow/stencils/Central_Data_Processing/Switch_Rack_48P.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Central_Data_Processing/Switch_Rack_48P.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -1,11 +1,14 @@ [Desktop Entry] Name=SwitchRack48P Name[ca]=SwitchRack48P +Name[ca@valencia]=SwitchRack48P Name[de]=SwitchRack48P Name[el]=SwitchRack48P Name[es]=Rack conmutable 48P -Name[et]=Kommutaatoripüstik 48P +Name[et]=Kommutaatorikapp 48P +Name[hu]=SwitchRack48P Name[it]=SwitchRack48P +Name[kk]=48 портты коммутатор сөресі Name[nb]=SwitchRack48P Name[nl]=SwitchRack48P Name[pl]=PrzełącznikRack48P diff -Nru calligra-2.3.86/flow/stencils/Central_Data_Processing/Switch_Rack_50P.desktop calligra-2.3.87/flow/stencils/Central_Data_Processing/Switch_Rack_50P.desktop --- calligra-2.3.86/flow/stencils/Central_Data_Processing/Switch_Rack_50P.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Central_Data_Processing/Switch_Rack_50P.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -1,11 +1,14 @@ [Desktop Entry] Name=SwitchRack50P Name[ca]=SwitchRack50P +Name[ca@valencia]=SwitchRack50P Name[de]=SwitchRack50P Name[el]=SwitchRack50P Name[es]=Rack conmutable 50P -Name[et]=Kommutaatoripüstik 50P +Name[et]=Kommutaatorikapp 50P +Name[hu]=SwitchRack50P Name[it]=SwitchRack50P +Name[kk]=50 портты коммутатор сөресі Name[nb]=SwitchRack50P Name[nl]=SwitchRack50P Name[pl]=PrzełącznikRack50P diff -Nru calligra-2.3.86/flow/stencils/Central_Data_Processing/Telephone_exchange.desktop calligra-2.3.87/flow/stencils/Central_Data_Processing/Telephone_exchange.desktop --- calligra-2.3.86/flow/stencils/Central_Data_Processing/Telephone_exchange.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Central_Data_Processing/Telephone_exchange.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -1,10 +1,12 @@ [Desktop Entry] Name=TelephoneExchange Name[ca]=TelephoneExchange +Name[ca@valencia]=TelephoneExchange Name[el]=TelephoneExchange Name[es]=Central telefónica Name[et]=Telefonijaam Name[it]=TelephoneExchange +Name[kk]=Телефон станциясы Name[nb]=Telefonsentral Name[nl]=Telefooncentrale Name[pl]=WymianaTelefonu diff -Nru calligra-2.3.86/flow/stencils/Central_Data_Processing/Voice_Painel_20P.desktop calligra-2.3.87/flow/stencils/Central_Data_Processing/Voice_Painel_20P.desktop --- calligra-2.3.86/flow/stencils/Central_Data_Processing/Voice_Painel_20P.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Central_Data_Processing/Voice_Painel_20P.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -1,11 +1,14 @@ [Desktop Entry] Name=VoicePanel20P Name[ca]=VoicePanel20P +Name[ca@valencia]=VoicePanel20P Name[de]=VoicePanel20P Name[el]=VoicePanel20P Name[es]=Panel de voz 20P Name[et]=Kõnepaneel 20P +Name[hu]=VoicePanel20P Name[it]=VoicePanel20P +Name[kk]=20 портты телефон панелі Name[nb]=StemmePanel20P Name[nl]=VoicePanel20P Name[pl]=VoicePanel20P diff -Nru calligra-2.3.86/flow/stencils/Central_Data_Processing/Voice_Painel_50P.desktop calligra-2.3.87/flow/stencils/Central_Data_Processing/Voice_Painel_50P.desktop --- calligra-2.3.86/flow/stencils/Central_Data_Processing/Voice_Painel_50P.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Central_Data_Processing/Voice_Painel_50P.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -1,11 +1,14 @@ [Desktop Entry] Name=VoicePanel50P Name[ca]=VoicePanel50P +Name[ca@valencia]=VoicePanel50P Name[de]=VoicePanel50P Name[el]=VoicePanel50P Name[es]=panel de voz 50P Name[et]=Kõnepaneel 50P +Name[hu]=VoicePanel50P Name[it]=VoicePanel50P +Name[kk]=50 портты телефон панелі Name[nb]=StemmePanel50P Name[nl]=VoicePanel50P Name[pl]=VoicePanel50P diff -Nru calligra-2.3.86/flow/stencils/ChemEng/ACgen.desktop calligra-2.3.87/flow/stencils/ChemEng/ACgen.desktop --- calligra-2.3.86/flow/stencils/ChemEng/ACgen.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/ChemEng/ACgen.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -1,10 +1,12 @@ [Desktop Entry] Name=ACgen Name[ca]=ACgen +Name[ca@valencia]=ACgen Name[el]=ACgen Name[es]=Generador de C.A. Name[et]=Vahelduvvoolu generaator Name[it]=GeneratoreAC +Name[kk]=Айнымалы ток генераторы Name[nb]=Generator Name[nl]=ACgen Name[pl]=ACgen diff -Nru calligra-2.3.86/flow/stencils/ChemEng/aircooler.desktop calligra-2.3.87/flow/stencils/ChemEng/aircooler.desktop --- calligra-2.3.86/flow/stencils/ChemEng/aircooler.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/ChemEng/aircooler.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -1,9 +1,12 @@ [Desktop Entry] Name=aircooler Name[ca]=refredador d'aire +Name[ca@valencia]=refredador d'aire +Name[el]=aircooler Name[es]=refrigerador Name[et]=Õhujahuti Name[it]=raffreddamento-ad-aria +Name[kk]=Ауа салқындатқышы Name[nb]=luftkjøler Name[nl]=luchtkoeler Name[pl]=chłodnica powietrza diff -Nru calligra-2.3.86/flow/stencils/ChemEng/airforced.desktop calligra-2.3.87/flow/stencils/ChemEng/airforced.desktop --- calligra-2.3.86/flow/stencils/ChemEng/airforced.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/ChemEng/airforced.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -1,9 +1,11 @@ [Desktop Entry] Name=airforced Name[ca]=forçat per aire +Name[ca@valencia]=forçat per aire Name[es]=aire forzado -Name[et]=Õhku puhuv +Name[et]=Sissepuhe Name[it]=aria-forzata +Name[kk]=Мәжбүрлеп ауа шығаратын салқындатқышы Name[nb]=blåsekjøler Name[nl]=luchtgekoeld Name[pl]=wymuszone powietrzem diff -Nru calligra-2.3.86/flow/stencils/ChemEng/airinduced.desktop calligra-2.3.87/flow/stencils/ChemEng/airinduced.desktop --- calligra-2.3.86/flow/stencils/ChemEng/airinduced.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/ChemEng/airinduced.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -1,9 +1,11 @@ [Desktop Entry] Name=airinduced Name[ca]=induït per aire +Name[ca@valencia]=induït per aire Name[es]=aire inducido -Name[et]=Õhku imav +Name[et]=Väljatõmme Name[it]=aria-indotta +Name[kk]=Мәжбүрлеп ауа соратын салқындатқышы Name[nb]=avtrkjøler Name[nl]=veroorzaakt door lucht Name[pl]=zaindukowane powietrzem diff -Nru calligra-2.3.86/flow/stencils/ChemEng/autoclave.desktop calligra-2.3.87/flow/stencils/ChemEng/autoclave.desktop --- calligra-2.3.86/flow/stencils/ChemEng/autoclave.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/ChemEng/autoclave.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -1,9 +1,11 @@ [Desktop Entry] Name=autoclave Name[ca]=autoclau +Name[ca@valencia]=autoclau Name[es]=clave automática Name[et]=Autoklaav Name[it]=autoclave +Name[kk]=Автоклав Name[nb]=autoklav Name[nl]=autoclaaf Name[pl]=autoklaw diff -Nru calligra-2.3.86/flow/stencils/ChemEng/bigtraycol.desktop calligra-2.3.87/flow/stencils/ChemEng/bigtraycol.desktop --- calligra-2.3.86/flow/stencils/ChemEng/bigtraycol.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/ChemEng/bigtraycol.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -1,11 +1,14 @@ [Desktop Entry] Name=bigtraycol Name[ca]=papereragran +Name[ca@valencia]=papereragran Name[el]=bigtraycol Name[es]=Bandeja de frio grande Name[et]=Suur destillatsioonikolonn Name[it]=bigtraycol +Name[kk]=Үлкен ректификатор Name[nb]=storkolonne +Name[nl]=bigtraycol Name[pl]=bigtraycol Name[pt]=bandeja-grande Name[pt_BR]=bandeja grande diff -Nru calligra-2.3.86/flow/stencils/ChemEng/centrifuge.desktop calligra-2.3.87/flow/stencils/ChemEng/centrifuge.desktop --- calligra-2.3.86/flow/stencils/ChemEng/centrifuge.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/ChemEng/centrifuge.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -1,10 +1,12 @@ [Desktop Entry] Name=centrifuge Name[ca]=centrífuga +Name[ca@valencia]=centrífuga Name[el]=κεντρόφυγο Name[es]=centrífugo Name[et]=Tsentrifuug Name[it]=centrifuga +Name[kk]=Центрифуга Name[nb]=sentrifuge Name[nds]=Zentrifuug Name[nl]=centrifuge diff -Nru calligra-2.3.86/flow/stencils/ChemEng/coil.desktop calligra-2.3.87/flow/stencils/ChemEng/coil.desktop --- calligra-2.3.86/flow/stencils/ChemEng/coil.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/ChemEng/coil.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -1,9 +1,11 @@ [Desktop Entry] Name=coil Name[ca]=resistència +Name[ca@valencia]=resistència Name[es]=bobina Name[et]=Spiraaltoru Name[it]=serpentina +Name[kk]=Ирек түтік Name[nb]=spole Name[nl]=spiraal Name[pl]=coil diff -Nru calligra-2.3.86/flow/stencils/ChemEng/coilv.desktop calligra-2.3.87/flow/stencils/ChemEng/coilv.desktop --- calligra-2.3.86/flow/stencils/ChemEng/coilv.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/ChemEng/coilv.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -1,11 +1,14 @@ [Desktop Entry] Name=coilv Name[ca]=resistènciav +Name[ca@valencia]=resistènciav Name[el]=coilv Name[es]=bobina V Name[et]=Vertikaalne spiraaltoru Name[it]=serpentina-v +Name[kk]=Тік ирек түтік Name[nb]=spolev +Name[nl]=spiraalv Name[pl]=coilv Name[pt]=serpentina-v Name[pt_BR]=serpentina em v diff -Nru calligra-2.3.86/flow/stencils/ChemEng/collection.desktop calligra-2.3.87/flow/stencils/ChemEng/collection.desktop --- calligra-2.3.86/flow/stencils/ChemEng/collection.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/ChemEng/collection.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -1,10 +1,12 @@ [Desktop Entry] Name=ChemEng Name[ca]=Enginyeria Química +Name[ca@valencia]=Enginyeria Química Name[el]=ChemEng Name[es]=Ingeniería química Name[et]=Keemia Name[it]=ChemEng +Name[kk]=Химия өндірісі Name[nb]=Kjemitekn Name[nl]=Scheikunde Name[pl]=ChemEng diff -Nru calligra-2.3.86/flow/stencils/ChemEng/compr.desktop calligra-2.3.87/flow/stencils/ChemEng/compr.desktop --- calligra-2.3.86/flow/stencils/ChemEng/compr.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/ChemEng/compr.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -1,10 +1,12 @@ [Desktop Entry] Name=compr Name[ca]=compr +Name[ca@valencia]=compr Name[el]=compr Name[es]=compr Name[et]=Kompressor Name[it]=compr +Name[kk]=Компрессор Name[nb]=kompr Name[nl]=compr Name[pl]=compr diff -Nru calligra-2.3.86/flow/stencils/ChemEng/coveredtank.desktop calligra-2.3.87/flow/stencils/ChemEng/coveredtank.desktop --- calligra-2.3.86/flow/stencils/ChemEng/coveredtank.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/ChemEng/coveredtank.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -1,11 +1,14 @@ [Desktop Entry] Name=coveredtank Name[ca]=tanc covert +Name[ca@valencia]=tanc covert Name[el]=coveredtank Name[es]=Tanque cubierto Name[et]=Kaetud anum Name[it]=coveredtank +Name[kk]=Қақпақты сұйыққойма Name[nb]=tankdekket +Name[nl]=bedektetank Name[pl]=zakryty zbiornik Name[pt]=tanque-coberto Name[pt_BR]=tanque coberto diff -Nru calligra-2.3.86/flow/stencils/ChemEng/cyclone.desktop calligra-2.3.87/flow/stencils/ChemEng/cyclone.desktop --- calligra-2.3.86/flow/stencils/ChemEng/cyclone.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/ChemEng/cyclone.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -1,10 +1,12 @@ [Desktop Entry] Name=cyclone Name[ca]=cicló +Name[ca@valencia]=cicló Name[el]=cyclone Name[es]=ciclón Name[et]=Tsüklon Name[it]=ciclone +Name[kk]=Сепаратор Name[nb]=syklon Name[nl]=cycloon Name[pl]=cyklon diff -Nru calligra-2.3.86/flow/stencils/ChemEng/displa.desktop calligra-2.3.87/flow/stencils/ChemEng/displa.desktop --- calligra-2.3.86/flow/stencils/ChemEng/displa.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/ChemEng/displa.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -1,11 +1,14 @@ [Desktop Entry] Name=displa Name[ca]=displa +Name[ca@valencia]=displa Name[el]=displa Name[es]=displa Name[et]=Näidik Name[it]=displa +Name[kk]=Айналма сорғыш не компрессор Name[nb]=skjerm +Name[nl]=displa Name[pl]=displa Name[pt]=displa Name[pt_BR]=displa diff -Nru calligra-2.3.86/flow/stencils/ChemEng/doublepipe.desktop calligra-2.3.87/flow/stencils/ChemEng/doublepipe.desktop --- calligra-2.3.86/flow/stencils/ChemEng/doublepipe.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/ChemEng/doublepipe.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -1,10 +1,12 @@ [Desktop Entry] Name=doublepipe Name[ca]=doble canonada +Name[ca@valencia]=doble canonada Name[el]=doublepipe Name[es]=tubo doble Name[et]=Kaksiktoru Name[it]=doublepipe +Name[kk]=Қос құбырлы жылу алмастырғы Name[nb]=dobbeltrør Name[nl]=dubbele pijp Name[pl]=dwu-rurka diff -Nru calligra-2.3.86/flow/stencils/ChemEng/ejector.desktop calligra-2.3.87/flow/stencils/ChemEng/ejector.desktop --- calligra-2.3.86/flow/stencils/ChemEng/ejector.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/ChemEng/ejector.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -1,11 +1,13 @@ [Desktop Entry] Name=ejector Name[ca]=ejector +Name[ca@valencia]=ejector Name[de]=Auswurf Name[el]=ejector Name[es]=eyector Name[et]=Ejektor Name[it]=ejector +Name[kk]=Эжектор Name[nb]=utkaster Name[nl]=uitwerper Name[pl]=strumienica ssąca diff -Nru calligra-2.3.86/flow/stencils/ChemEng/fan.desktop calligra-2.3.87/flow/stencils/ChemEng/fan.desktop --- calligra-2.3.86/flow/stencils/ChemEng/fan.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/ChemEng/fan.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -2,11 +2,13 @@ Name=fan Name[bg]=вентилатор Name[ca]=ventilador +Name[ca@valencia]=ventilador Name[de]=Lüfter Name[el]=ανεμιστήρας Name[es]=ventilador Name[et]=Ventilaator Name[it]=ventola +Name[kk]=Желдеткіш Name[nb]=vifte Name[nds]=Püüster Name[nl]=ventilator diff -Nru calligra-2.3.86/flow/stencils/ChemEng/filter.desktop calligra-2.3.87/flow/stencils/ChemEng/filter.desktop --- calligra-2.3.86/flow/stencils/ChemEng/filter.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/ChemEng/filter.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -2,12 +2,14 @@ Name=filter Name[bg]=филтър Name[ca]=filtre +Name[ca@valencia]=filtre Name[cs]=filtr Name[de]=Filter Name[el]=φίλτρο Name[es]=filtro Name[et]=Filter Name[it]=filtro +Name[kk]=Сүзгі Name[nb]=filter Name[nds]=Filter Name[nl]=filter diff -Nru calligra-2.3.86/flow/stencils/ChemEng/fixedroof.desktop calligra-2.3.87/flow/stencils/ChemEng/fixedroof.desktop --- calligra-2.3.86/flow/stencils/ChemEng/fixedroof.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/ChemEng/fixedroof.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -1,11 +1,14 @@ [Desktop Entry] Name=fixedroof Name[ca]=sostre fixat +Name[ca@valencia]=sostre fixat Name[el]=fixedroof Name[es]=techo fijo -Name[et]=Püsikattega +Name[et]=Fikseeritud kaas Name[it]=fixedroof +Name[kk]=Бекітілген қақпақты Name[nb]=fasttak +Name[nl]=vastdak Name[pl]=utwierdzony dach Name[pt]=tecto-fixo Name[pt_BR]=teto fixo diff -Nru calligra-2.3.86/flow/stencils/ChemEng/floatingroof.desktop calligra-2.3.87/flow/stencils/ChemEng/floatingroof.desktop --- calligra-2.3.86/flow/stencils/ChemEng/floatingroof.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/ChemEng/floatingroof.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -1,11 +1,14 @@ [Desktop Entry] Name=floatingroof Name[ca]=fals sostre +Name[ca@valencia]=fals sostre Name[el]=floatingroof Name[es]=techo flotante -Name[et]=Hõljuvkattega +Name[et]=Ujuv kaas Name[it]=floatingroof +Name[kk]=Бекітілмеген қақпақты Name[nb]=flytetak +Name[nl]=zwevenddak Name[pl]=pływający dach Name[pt]=tecto-flutuante Name[pt_BR]=teto flutuante diff -Nru calligra-2.3.86/flow/stencils/ChemEng/flowfan.desktop calligra-2.3.87/flow/stencils/ChemEng/flowfan.desktop --- calligra-2.3.86/flow/stencils/ChemEng/flowfan.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/ChemEng/flowfan.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -1,11 +1,14 @@ [Desktop Entry] Name=flowfan Name[ca]=ventilador de flux +Name[ca@valencia]=ventilador de flux Name[el]=flowfan Name[es]=ventilador de flujo Name[et]=Puhur Name[it]=flowfan +Name[kk]=Үрлегіш Name[nb]=flytvifte +Name[nl]=centrifugaalventilator Name[pl]=wentylator przepływowy Name[pt]=ventoinha-fluxo Name[pt_BR]=ventoinha de fluxo diff -Nru calligra-2.3.86/flow/stencils/ChemEng/fluidcont.desktop calligra-2.3.87/flow/stencils/ChemEng/fluidcont.desktop --- calligra-2.3.86/flow/stencils/ChemEng/fluidcont.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/ChemEng/fluidcont.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -1,14 +1,17 @@ [Desktop Entry] Name=fluidcont Name[ca]=fluid continu +Name[ca@valencia]=fluid continu Name[el]=fluidcont Name[es]=contenedor de fluidos Name[et]=Vedelikumahuti Name[it]=fluidcont +Name[kk]=Сұйыққойма Name[nb]=væskebeholder +Name[nl]=vloeistofvat Name[pl]=kontener na płyn Name[pt]=contentor-fluido -Name[pt_BR]=contentor de fluído +Name[pt_BR]=contentor de fluido Name[sv]=vätskebehållare Name[uk]=Проста посудина для рідини Name[x-test]=xxfluidcontxx diff -Nru calligra-2.3.86/flow/stencils/ChemEng/furnace.desktop calligra-2.3.87/flow/stencils/ChemEng/furnace.desktop --- calligra-2.3.86/flow/stencils/ChemEng/furnace.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/ChemEng/furnace.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -2,9 +2,12 @@ Name=furnace Name[bg]=пещ Name[ca]=forn +Name[ca@valencia]=forn +Name[el]=furnace Name[es]=horno Name[et]=Põleti Name[it]=forno +Name[kk]=Пеш Name[nb]=ovn Name[nl]=oven Name[pl]=palenisko diff -Nru calligra-2.3.86/flow/stencils/ChemEng/gasholder.desktop calligra-2.3.87/flow/stencils/ChemEng/gasholder.desktop --- calligra-2.3.86/flow/stencils/ChemEng/gasholder.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/ChemEng/gasholder.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -1,9 +1,11 @@ [Desktop Entry] Name=gasholder Name[ca]=sortidor +Name[ca@valencia]=eixidor Name[es]=bombona de gas Name[et]=Gasomeeter Name[it]=gasholder +Name[kk]=Газқоймасы Name[nb]=gassholder Name[nl]=gashouder Name[pl]=zbiornik na gaz diff -Nru calligra-2.3.86/flow/stencils/ChemEng/hx.desktop calligra-2.3.87/flow/stencils/ChemEng/hx.desktop --- calligra-2.3.86/flow/stencils/ChemEng/hx.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/ChemEng/hx.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -1,11 +1,14 @@ [Desktop Entry] Name=hx Name[ca]=hx +Name[ca@valencia]=hx Name[el]=hx Name[es]=hx Name[et]=Soojusvaheti Name[it]=hx +Name[kk]=Жылу алмастырғы Name[nb]=varmeveksler +Name[nl]=hx Name[pl]=hx Name[pt]=hx Name[pt_BR]=hx diff -Nru calligra-2.3.86/flow/stencils/ChemEng/hxv.desktop calligra-2.3.87/flow/stencils/ChemEng/hxv.desktop --- calligra-2.3.86/flow/stencils/ChemEng/hxv.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/ChemEng/hxv.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -1,11 +1,14 @@ [Desktop Entry] Name=hxv Name[ca]=hxv +Name[ca@valencia]=hxv Name[el]=hxv Name[es]=hxv Name[et]=Vertikaalne soojusvaheti Name[it]=hxv +Name[kk]=Тік жылу алмастырғы Name[nb]=varmeveksler loddrett +Name[nl]=hxv Name[pl]=hxv Name[pt]=hxv Name[pt_BR]=hxv diff -Nru calligra-2.3.86/flow/stencils/ChemEng/kettle.desktop calligra-2.3.87/flow/stencils/ChemEng/kettle.desktop --- calligra-2.3.86/flow/stencils/ChemEng/kettle.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/ChemEng/kettle.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -1,10 +1,13 @@ [Desktop Entry] Name=kettle Name[ca]=bullidor +Name[ca@valencia]=bullidor Name[de]=Kessel +Name[el]=kettle Name[es]=tetera Name[et]=Aurusti Name[it]=kettle +Name[kk]=Қазан Name[nb]=kjele Name[nl]=ketel Name[pl]=kociołek diff -Nru calligra-2.3.86/flow/stencils/ChemEng/knockout.desktop calligra-2.3.87/flow/stencils/ChemEng/knockout.desktop --- calligra-2.3.86/flow/stencils/ChemEng/knockout.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/ChemEng/knockout.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -1,10 +1,13 @@ [Desktop Entry] Name=knockout Name[ca]=knockout +Name[ca@valencia]=knockout Name[es]=eliminatoria Name[et]=Separaator Name[it]=knockout +Name[kk]=Соққыш Name[nb]=damp/væskeseparator +Name[nl]=knockout Name[pl]=knockout Name[pt]=queda Name[pt_BR]=queda diff -Nru calligra-2.3.86/flow/stencils/ChemEng/measure.desktop calligra-2.3.87/flow/stencils/ChemEng/measure.desktop --- calligra-2.3.86/flow/stencils/ChemEng/measure.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/ChemEng/measure.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -1,11 +1,13 @@ [Desktop Entry] Name=measure Name[ca]=mesura +Name[ca@valencia]=mesura Name[cs]=změřit Name[el]=μέτρηση Name[es]=medida Name[et]=Mõõdik Name[it]=measure +Name[kk]=Өлшегіш Name[nb]=mål Name[nl]=maat Name[pl]=miara diff -Nru calligra-2.3.86/flow/stencils/ChemEng/mixer.desktop calligra-2.3.87/flow/stencils/ChemEng/mixer.desktop --- calligra-2.3.86/flow/stencils/ChemEng/mixer.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/ChemEng/mixer.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -1,11 +1,13 @@ [Desktop Entry] Name=mixer Name[ca]=mesclador +Name[ca@valencia]=mesclador Name[cs]=směšovač Name[el]=μείκτης Name[es]=mezclador Name[et]=Mikser Name[it]=mixer +Name[kk]=Араластырғыш Name[nb]=mikser Name[nl]=mixer Name[pl]=mikser diff -Nru calligra-2.3.86/flow/stencils/ChemEng/plate.desktop calligra-2.3.87/flow/stencils/ChemEng/plate.desktop --- calligra-2.3.86/flow/stencils/ChemEng/plate.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/ChemEng/plate.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -1,9 +1,12 @@ [Desktop Entry] Name=plate Name[ca]=plat +Name[ca@valencia]=plat +Name[el]=plate Name[es]=plato Name[et]=Plaatsoojusvaheti Name[it]=plate +Name[kk]=Жалпақ жылу алмастырғыKPlato Name[nb]=plate Name[nl]=plaat Name[pl]=talerz diff -Nru calligra-2.3.86/flow/stencils/ChemEng/pneum.desktop calligra-2.3.87/flow/stencils/ChemEng/pneum.desktop --- calligra-2.3.86/flow/stencils/ChemEng/pneum.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/ChemEng/pneum.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -1,11 +1,14 @@ [Desktop Entry] Name=pneum Name[ca]=pneumàtic +Name[ca@valencia]=pneumàtic Name[el]=pneum Name[es]=neumático Name[et]=Pneumojuhe Name[it]=pneum +Name[kk]=Пневможелі Name[nb]=pneum +Name[nl]=pneum Name[pl]=pneum Name[pt]=pneum Name[pt_BR]=pneum diff -Nru calligra-2.3.86/flow/stencils/ChemEng/pneumv.desktop calligra-2.3.87/flow/stencils/ChemEng/pneumv.desktop --- calligra-2.3.86/flow/stencils/ChemEng/pneumv.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/ChemEng/pneumv.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -1,11 +1,14 @@ [Desktop Entry] Name=pneumv Name[ca]=pneumàticv +Name[ca@valencia]=pneumàticv Name[el]=pneumv Name[es]=neumático v Name[et]=Vertikaalne pneumojuhe Name[it]=pneumv +Name[kk]=Тік пневможелі Name[nb]=pneum loddrett +Name[nl]=pneumv Name[pl]=pneumv Name[pt]=pneum-v Name[pt_BR]=pneum-v diff -Nru calligra-2.3.86/flow/stencils/ChemEng/pnuemv.desktop calligra-2.3.87/flow/stencils/ChemEng/pnuemv.desktop --- calligra-2.3.86/flow/stencils/ChemEng/pnuemv.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/ChemEng/pnuemv.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -1,11 +1,14 @@ [Desktop Entry] Name=pnuemv Name[ca]=pnuemv +Name[ca@valencia]=pnuemv Name[el]=pnuemv Name[es]=neumático v Name[et]=Vertikaalne pneumojuhe Name[it]=pneumv +Name[kk]=Тік пневможелі Name[nb]=pnuemv +Name[nl]=pnuemv Name[pl]=pnuemv Name[pt]=pnuem-v Name[pt_BR]=pnuem-v diff -Nru calligra-2.3.86/flow/stencils/ChemEng/pump.desktop calligra-2.3.87/flow/stencils/ChemEng/pump.desktop --- calligra-2.3.86/flow/stencils/ChemEng/pump.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/ChemEng/pump.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -1,12 +1,15 @@ [Desktop Entry] Name=pump Name[ca]=bomba +Name[ca@valencia]=bomba Name[el]=αντλία Name[es]=surtidor Name[et]=Pump Name[it]=pompa +Name[kk]=Сорғыш Name[nb]=pumpe Name[nds]=Pump +Name[nl]=pomp Name[pl]=pompa Name[pt]=bomba Name[pt_BR]=bomba diff -Nru calligra-2.3.86/flow/stencils/ChemEng/reactor.desktop calligra-2.3.87/flow/stencils/ChemEng/reactor.desktop --- calligra-2.3.86/flow/stencils/ChemEng/reactor.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/ChemEng/reactor.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -1,9 +1,12 @@ [Desktop Entry] Name=reactor Name[ca]=reactor +Name[ca@valencia]=reactor +Name[el]=reactor Name[es]=reactor Name[et]=Reaktsioonianum Name[it]=reattore +Name[kk]=Реактор Name[nb]=reaktor Name[nl]=reactor Name[pl]=reaktor diff -Nru calligra-2.3.86/flow/stencils/ChemEng/recipr.desktop calligra-2.3.87/flow/stencils/ChemEng/recipr.desktop --- calligra-2.3.86/flow/stencils/ChemEng/recipr.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/ChemEng/recipr.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -1,10 +1,13 @@ [Desktop Entry] Name=recipr Name[ca]=recipr +Name[ca@valencia]=recipr Name[el]=recipr Name[et]=Kolbpump Name[it]=recipr +Name[kk]=Мікбасты сорғыш Name[nb]=stempl +Name[nl]=recipr Name[pl]=recipr Name[pt]=recipr Name[pt_BR]=recipr diff -Nru calligra-2.3.86/flow/stencils/ChemEng/regval.desktop calligra-2.3.87/flow/stencils/ChemEng/regval.desktop --- calligra-2.3.86/flow/stencils/ChemEng/regval.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/ChemEng/regval.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -1,10 +1,13 @@ [Desktop Entry] Name=regval Name[ca]=regval +Name[ca@valencia]=regval Name[el]=regval Name[et]=Reguleeritav ventiil Name[it]=regval +Name[kk]=Реттеуіш шұра Name[nb]=regulerventil +Name[nl]=regklp Name[pl]=regval Name[pt]=valor-reg Name[pt_BR]=valor-reg diff -Nru calligra-2.3.86/flow/stencils/ChemEng/regvalv.desktop calligra-2.3.87/flow/stencils/ChemEng/regvalv.desktop --- calligra-2.3.86/flow/stencils/ChemEng/regvalv.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/ChemEng/regvalv.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -1,10 +1,13 @@ [Desktop Entry] Name=regvalv Name[ca]=regvalv +Name[ca@valencia]=regvalv Name[el]=regvalv Name[et]=Vertikaalne reguleeritav ventiil Name[it]=regvalv +Name[kk]=Тік реттеуіш шұра Name[nb]=regulerventil loddrett +Name[nl]=regklep Name[pl]=regvalv Name[pt]=valor-reg-v Name[pt_BR]=valor-reg-v diff -Nru calligra-2.3.86/flow/stencils/ChemEng/SaT-fixedtube.desktop calligra-2.3.87/flow/stencils/ChemEng/SaT-fixedtube.desktop --- calligra-2.3.86/flow/stencils/ChemEng/SaT-fixedtube.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/ChemEng/SaT-fixedtube.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -1,9 +1,11 @@ [Desktop Entry] Name=SaT-fixedtube Name[ca]=Tub fixat SaT +Name[ca@valencia]=Tub fixat SaT Name[el]=SaT-fixedtube Name[et]=Fikseeritud manteltoru-soojusvaheti Name[it]=SaT-fixedtube +Name[kk]=Қаптамалы бекітілген құбырлы алмастырғы Name[nb]=Rørkjele fastrør Name[pl]=SaT-utwierdzona rurka Name[pt]=tubo-fixo-SaT diff -Nru calligra-2.3.86/flow/stencils/ChemEng/SaT-floatinghead.desktop calligra-2.3.87/flow/stencils/ChemEng/SaT-floatinghead.desktop --- calligra-2.3.86/flow/stencils/ChemEng/SaT-floatinghead.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/ChemEng/SaT-floatinghead.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -1,9 +1,11 @@ [Desktop Entry] Name=SaT-floatinghead Name[ca]=Cap flotant SaT +Name[ca@valencia]=Cap flotant SaT Name[el]=SaT-floatinghead Name[et]=Hõljuv manteltoru-soojusvaheti Name[it]=SaT-floatinghead +Name[kk]=Қаптама-құбырлы жылжыма басты алмастырғы Name[nb]=Rørkjele bevegelig topp Name[pl]=SaT-pływająca głowica Name[pt]=cabeça-flutuante-SaT diff -Nru calligra-2.3.86/flow/stencils/ChemEng/sealedtank.desktop calligra-2.3.87/flow/stencils/ChemEng/sealedtank.desktop --- calligra-2.3.86/flow/stencils/ChemEng/sealedtank.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/ChemEng/sealedtank.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -1,10 +1,13 @@ [Desktop Entry] Name=sealedtank Name[ca]=tanc segellat +Name[ca@valencia]=tanc segellat Name[el]=sealedtank Name[et]=Kinnine paak Name[it]=sealedtank +Name[kk]=Бітелген бак Name[nb]=dekket-tank +Name[nl]=geslotentank Name[pl]=uszczelniony zbiornik Name[pt]=tanque-selado Name[pt_BR]=tanque selado diff -Nru calligra-2.3.86/flow/stencils/ChemEng/settling.desktop calligra-2.3.87/flow/stencils/ChemEng/settling.desktop --- calligra-2.3.86/flow/stencils/ChemEng/settling.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/ChemEng/settling.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -1,9 +1,12 @@ [Desktop Entry] Name=settling Name[ca]=assentant +Name[ca@valencia]=assentant Name[et]=Settepaak Name[it]=settling +Name[kk]=Тұндырғыш Name[nb]=felling +Name[nl]=bezinken Name[pl]=osadowy Name[pt]=depósito Name[pt_BR]=depósito diff -Nru calligra-2.3.86/flow/stencils/ChemEng/spray.desktop calligra-2.3.87/flow/stencils/ChemEng/spray.desktop --- calligra-2.3.86/flow/stencils/ChemEng/spray.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/ChemEng/spray.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -2,12 +2,14 @@ Name=spray Name[bg]=спрей Name[ca]=esprai +Name[ca@valencia]=esprai Name[cs]=sprej Name[el]=spray Name[et]=Segisti Name[it]=spray +Name[kk]=Бүркіш Name[nb]=dusj -Name[nl]=spray +Name[nl]=sproeier Name[pl]=spray Name[pt]=spray Name[pt_BR]=spray diff -Nru calligra-2.3.86/flow/stencils/ChemEng/spraydrier.desktop calligra-2.3.87/flow/stencils/ChemEng/spraydrier.desktop --- calligra-2.3.86/flow/stencils/ChemEng/spraydrier.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/ChemEng/spraydrier.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -1,9 +1,11 @@ [Desktop Entry] Name=spraydrier Name[ca]=assecadoresprai +Name[ca@valencia]=assecadoresprai Name[el]=spraydrier Name[et]=Pihustuskuivati Name[it]=spraydrier +Name[kk]=Бүрку құрғатқыш Name[nb]=dusjtørker Name[nl]=spuitdroger Name[pl]=suszarka sprayowa diff -Nru calligra-2.3.86/flow/stencils/ChemEng/storagesphere.desktop calligra-2.3.87/flow/stencils/ChemEng/storagesphere.desktop --- calligra-2.3.86/flow/stencils/ChemEng/storagesphere.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/ChemEng/storagesphere.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -1,9 +1,11 @@ [Desktop Entry] Name=storagesphere Name[ca]=esfera d'emmagatzament +Name[ca@valencia]=esfera d'emmagatzament Name[el]=storagesphere Name[et]=Ümarhoidla Name[it]=storagesphere +Name[kk]=Дөңгелек жинағыш Name[nb]=lagerkule Name[nl]=opslagbol Name[pl]=magazyn sferyczny diff -Nru calligra-2.3.86/flow/stencils/ChemEng/tank.desktop calligra-2.3.87/flow/stencils/ChemEng/tank.desktop --- calligra-2.3.86/flow/stencils/ChemEng/tank.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/ChemEng/tank.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -1,8 +1,10 @@ [Desktop Entry] Name=tank Name[ca]=tanc +Name[ca@valencia]=tanc Name[et]=Paak Name[it]=tank +Name[kk]=Бак Name[nb]=tank Name[nl]=tank Name[pl]=zbiornik diff -Nru calligra-2.3.86/flow/stencils/ChemEng/traycol.desktop calligra-2.3.87/flow/stencils/ChemEng/traycol.desktop --- calligra-2.3.86/flow/stencils/ChemEng/traycol.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/ChemEng/traycol.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -1,10 +1,13 @@ [Desktop Entry] Name=traycol Name[ca]=escombraries +Name[ca@valencia]=escombraries Name[el]=traycol Name[et]=Destillatsioonikolonn Name[it]=traycol +Name[kk]=Ректификатор Name[nb]=kolonne bunner +Name[nl]=schotelkolom Name[pl]=traycol Name[pt]=bandeja Name[pt_BR]=bandeja diff -Nru calligra-2.3.86/flow/stencils/ChemEng/val.desktop calligra-2.3.87/flow/stencils/ChemEng/val.desktop --- calligra-2.3.86/flow/stencils/ChemEng/val.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/ChemEng/val.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -1,10 +1,13 @@ [Desktop Entry] Name=val Name[ca]=val +Name[ca@valencia]=val Name[el]=val Name[et]=Ventiil Name[it]=val +Name[kk]=Шұра Name[nb]=ventil +Name[nl]=val Name[pl]=val Name[pt]=val Name[pt_BR]=val diff -Nru calligra-2.3.86/flow/stencils/ChemEng/valv.desktop calligra-2.3.87/flow/stencils/ChemEng/valv.desktop --- calligra-2.3.86/flow/stencils/ChemEng/valv.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/ChemEng/valv.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -1,9 +1,11 @@ [Desktop Entry] Name=valv Name[ca]=valv +Name[ca@valencia]=valv Name[el]=valv Name[et]=Vertikaalne ventiil Name[it]=valv +Name[kk]=Тік шұра Name[nb]=ventil loddrett Name[nl]=klep Name[pl]=valv diff -Nru calligra-2.3.86/flow/stencils/ChemEng/vessel.desktop calligra-2.3.87/flow/stencils/ChemEng/vessel.desktop --- calligra-2.3.86/flow/stencils/ChemEng/vessel.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/ChemEng/vessel.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -1,8 +1,11 @@ [Desktop Entry] Name=vessel Name[ca]=nau +Name[ca@valencia]=nau +Name[el]=vessel Name[et]=Anum Name[it]=vessel +Name[kk]=Сауыт Name[nb]=flaske Name[nl]=vat Name[pl]=pojemnik diff -Nru calligra-2.3.86/flow/stencils/ChemEng/wcool.desktop calligra-2.3.87/flow/stencils/ChemEng/wcool.desktop --- calligra-2.3.86/flow/stencils/ChemEng/wcool.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/ChemEng/wcool.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -1,9 +1,11 @@ [Desktop Entry] Name=wcool Name[ca]=wcool +Name[ca@valencia]=wcool Name[el]=wcool Name[et]=Veejahuti Name[it]=wcool +Name[kk]=Су салқындатқышы Name[nb]=vannkjøler Name[pl]=wcool Name[pt]=arrefecimento-água diff -Nru calligra-2.3.86/flow/stencils/ChemEng/wcoolv.desktop calligra-2.3.87/flow/stencils/ChemEng/wcoolv.desktop --- calligra-2.3.86/flow/stencils/ChemEng/wcoolv.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/ChemEng/wcoolv.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -1,9 +1,11 @@ [Desktop Entry] Name=wcoolv Name[ca]=wcoolv +Name[ca@valencia]=wcoolv Name[el]=wcoolv Name[et]=Vertikaalne veejahuti Name[it]=wcoolv +Name[kk]=Тік су салқындатқышы Name[nb]=vannkjøler loddrett Name[pl]=wcoolv Name[pt]=arrefecimento-água-v diff -Nru calligra-2.3.86/flow/stencils/Chemistry_Lab/30-degree-bend.desktop calligra-2.3.87/flow/stencils/Chemistry_Lab/30-degree-bend.desktop --- calligra-2.3.86/flow/stencils/Chemistry_Lab/30-degree-bend.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Chemistry_Lab/30-degree-bend.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -1,10 +1,13 @@ [Desktop Entry] Name=30-degree-bend Name[ca]=corba a 30 graus +Name[ca@valencia]=corba a 30 graus Name[el]=30-degree-bend Name[et]=30-kraadine nurk Name[it]=curva-30-gradi +Name[kk]=30 градусты құбыр жалғауы Name[nb]=30-gr-bøy +Name[nl]=30-graden-hoek Name[pl]=odchylenie-30-stopni Name[pt]=dobra-30-graus Name[pt_BR]=dobre de 30 graus diff -Nru calligra-2.3.86/flow/stencils/Chemistry_Lab/beaker.desktop calligra-2.3.87/flow/stencils/Chemistry_Lab/beaker.desktop --- calligra-2.3.86/flow/stencils/Chemistry_Lab/beaker.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Chemistry_Lab/beaker.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -1,9 +1,12 @@ [Desktop Entry] Name=beaker Name[ca]=vasmesurat +Name[ca@valencia]=vasmesurat Name[cs]=kádinka +Name[el]=beaker Name[et]=Keeduklaas Name[it]=bicchiere +Name[kk]=Мензурка Name[nb]=beger Name[nl]=beker Name[pl]=zlewka diff -Nru calligra-2.3.86/flow/stencils/Chemistry_Lab/buechner-funnel.desktop calligra-2.3.87/flow/stencils/Chemistry_Lab/buechner-funnel.desktop --- calligra-2.3.86/flow/stencils/Chemistry_Lab/buechner-funnel.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Chemistry_Lab/buechner-funnel.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -1,9 +1,12 @@ [Desktop Entry] Name=buechner-funnel Name[ca]=buechner-funnel +Name[ca@valencia]=buechner-funnel Name[et]=Büchneri jaotuslehter Name[it]=imbuto-buechner +Name[kk]=Бюхнер құйғысы Name[nb]=büchnertrakt +Name[nl]=buechnerfilter Name[pl]=lejek-buechnera Name[pt]=funil-buechner Name[pt_BR]=funil buechner diff -Nru calligra-2.3.86/flow/stencils/Chemistry_Lab/burette.desktop calligra-2.3.87/flow/stencils/Chemistry_Lab/burette.desktop --- calligra-2.3.86/flow/stencils/Chemistry_Lab/burette.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Chemistry_Lab/burette.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -1,8 +1,11 @@ [Desktop Entry] Name=burette Name[ca]=bureta +Name[ca@valencia]=bureta +Name[el]=burette Name[et]=Bürett Name[it]=buretta +Name[kk]=Бюретка Name[nb]=byrette Name[nl]=buret Name[pl]=biureta diff -Nru calligra-2.3.86/flow/stencils/Chemistry_Lab/clamp.desktop calligra-2.3.87/flow/stencils/Chemistry_Lab/clamp.desktop --- calligra-2.3.86/flow/stencils/Chemistry_Lab/clamp.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Chemistry_Lab/clamp.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -1,8 +1,11 @@ [Desktop Entry] Name=clamp Name[ca]=pinça +Name[ca@valencia]=pinça +Name[el]=clamp Name[et]=Näpits Name[it]=morsetto +Name[kk]=Қыстырғыш Name[nb]=klemme Name[nl]=klem Name[pl]=klamra diff -Nru calligra-2.3.86/flow/stencils/Chemistry_Lab/clamp-extra-large.desktop calligra-2.3.87/flow/stencils/Chemistry_Lab/clamp-extra-large.desktop --- calligra-2.3.86/flow/stencils/Chemistry_Lab/clamp-extra-large.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Chemistry_Lab/clamp-extra-large.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -1,9 +1,13 @@ [Desktop Entry] Name=clamp-extra-large Name[ca]=pinça extragran +Name[ca@valencia]=pinça extragran +Name[el]=clamp-extra-large Name[et]=Väga suur näpits Name[it]=morsetto-molto-grande +Name[kk]=Өте үлкен қыстырғыш Name[nb]=klemme ekstra stor +Name[nl]=klem-extra-groot Name[pl]=ekstra-duża-klamra Name[pt]=grampo-extra-grande Name[pt_BR]=grampo extra-grande diff -Nru calligra-2.3.86/flow/stencils/Chemistry_Lab/clamp-front.desktop calligra-2.3.87/flow/stencils/Chemistry_Lab/clamp-front.desktop --- calligra-2.3.86/flow/stencils/Chemistry_Lab/clamp-front.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Chemistry_Lab/clamp-front.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -1,9 +1,13 @@ [Desktop Entry] Name=clamp-front Name[ca]=pinça frontal +Name[ca@valencia]=pinça frontal +Name[el]=clamp-front Name[et]=Näpits eest Name[it]=morsetto-fronte +Name[kk]=Бет қыстырғышы Name[nb]=klemme frontal +Name[nl]=klem-voor Name[pl]=klamra-przód Name[pt]=grampo-frente Name[pt_BR]=grampo frontal diff -Nru calligra-2.3.86/flow/stencils/Chemistry_Lab/clamp-large.desktop calligra-2.3.87/flow/stencils/Chemistry_Lab/clamp-large.desktop --- calligra-2.3.86/flow/stencils/Chemistry_Lab/clamp-large.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Chemistry_Lab/clamp-large.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -1,9 +1,13 @@ [Desktop Entry] Name=clamp-large Name[ca]=pinça gran +Name[ca@valencia]=pinça gran +Name[el]=clamp-large Name[et]=Suur näpits Name[it]=morsetto-grande +Name[kk]=Үлкен қыстырғыш Name[nb]=klemme stor +Name[nl]=klem-groot Name[pl]=duża-klamra Name[pt]=grampo-grande Name[pt_BR]=grampo grande diff -Nru calligra-2.3.86/flow/stencils/Chemistry_Lab/collection.desktop calligra-2.3.87/flow/stencils/Chemistry_Lab/collection.desktop --- calligra-2.3.86/flow/stencils/Chemistry_Lab/collection.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Chemistry_Lab/collection.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -1,10 +1,14 @@ [Desktop Entry] Name=Chemistry Lab Name[ca]=Laboratori químic +Name[ca@valencia]=Laboratori químic Name[de]=Chemielabor +Name[el]=Chemistry Lab Name[et]=Keemialabor Name[it]=Laboratorio di chimica +Name[kk]=Химия лабораториясы Name[nb]=Kjemilab +Name[nl]=Scheikundelab Name[pl]=Laboratorium chemiczne Name[pt]=Laboratório de Química Name[pt_BR]=Laboratório de Química diff -Nru calligra-2.3.86/flow/stencils/Chemistry_Lab/column-reflux.desktop calligra-2.3.87/flow/stencils/Chemistry_Lab/column-reflux.desktop --- calligra-2.3.86/flow/stencils/Chemistry_Lab/column-reflux.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Chemistry_Lab/column-reflux.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -1,10 +1,13 @@ [Desktop Entry] Name=column-reflux Name[ca]=columna reflux +Name[ca@valencia]=columna reflux Name[el]=column-reflux Name[et]=Tagasijooksukolonn Name[it]=colonna-riflusso +Name[kk]=Рефлюкс бағаны Name[nb]=kolonne-reflux +Name[nl]=kolom-reflux Name[pl]=kolumna-zwrotna Name[pt]=refluxo-coluna Name[pt_BR]=refluxo da coluna diff -Nru calligra-2.3.86/flow/stencils/Chemistry_Lab/column-reflux-red-blue.desktop calligra-2.3.87/flow/stencils/Chemistry_Lab/column-reflux-red-blue.desktop --- calligra-2.3.86/flow/stencils/Chemistry_Lab/column-reflux-red-blue.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Chemistry_Lab/column-reflux-red-blue.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -1,10 +1,13 @@ [Desktop Entry] Name=column-reflux-red-blue Name[ca]=columna reflux vermell-blau +Name[ca@valencia]=columna reflux roig-blau Name[el]=column-reflux-red-blue Name[et]=Puna-sinine tagasijooksukolonn Name[it]=colonna-riflusso-rosso-blu +Name[kk]=Рефлюкс бағаны (қазыл-көк) Name[nb]=kolonne-reflux-rød-blå +Name[nl]=kolom-reflux-rood-blauw Name[pl]=kolumna-zwrotna-czerwona-niebieska Name[pt]=refluxo-coluna-vermelho-azul Name[pt_BR]=refluxo da coluna azul-vermelho diff -Nru calligra-2.3.86/flow/stencils/Chemistry_Lab/column-reflux-red.desktop calligra-2.3.87/flow/stencils/Chemistry_Lab/column-reflux-red.desktop --- calligra-2.3.86/flow/stencils/Chemistry_Lab/column-reflux-red.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Chemistry_Lab/column-reflux-red.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -1,10 +1,13 @@ [Desktop Entry] Name=column-reflux-red Name[ca]=columna reflux vermell +Name[ca@valencia]=columna reflux roig Name[el]=column-reflux-red Name[et]=Punane tagasijooksukolonn Name[it]=colonna-riflusso-rosso +Name[kk]=Рефлюкс бағаны (қазыл) Name[nb]=kolonne-reflux-rød +Name[nl]=kolom-reflux-rood Name[pl]=kolumna-zwrotna-czerwona Name[pt]=refluxo-coluna-vermelho Name[pt_BR]=refluxo da coluna vermelho diff -Nru calligra-2.3.86/flow/stencils/Chemistry_Lab/condenser-black.desktop calligra-2.3.87/flow/stencils/Chemistry_Lab/condenser-black.desktop --- calligra-2.3.86/flow/stencils/Chemistry_Lab/condenser-black.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Chemistry_Lab/condenser-black.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -1,9 +1,11 @@ [Desktop Entry] Name=condenser-black Name[ca]=condensador-negre +Name[ca@valencia]=condensador-negre Name[el]=condenser-black Name[et]=Must jahuti Name[it]=condensatore-nero +Name[kk]=Конденсор (қара) Name[nb]=kondensator-svart Name[nl]=condenser-zwart Name[pl]=chłodnica-czarna diff -Nru calligra-2.3.86/flow/stencils/Chemistry_Lab/condenser-blue.desktop calligra-2.3.87/flow/stencils/Chemistry_Lab/condenser-blue.desktop --- calligra-2.3.86/flow/stencils/Chemistry_Lab/condenser-blue.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Chemistry_Lab/condenser-blue.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -1,9 +1,11 @@ [Desktop Entry] Name=condenser-blue Name[ca]=condensador-blau +Name[ca@valencia]=condensador-blau Name[el]=condenser-blue Name[et]=Sinine jahuti Name[it]=condensatore-blu +Name[kk]=Конденсор (көк) Name[nb]=kondensator-blå Name[nl]=condenser-blauw Name[pl]=chłodnica-niebieska diff -Nru calligra-2.3.86/flow/stencils/Chemistry_Lab/condenser.desktop calligra-2.3.87/flow/stencils/Chemistry_Lab/condenser.desktop --- calligra-2.3.86/flow/stencils/Chemistry_Lab/condenser.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Chemistry_Lab/condenser.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -1,9 +1,11 @@ [Desktop Entry] Name=condenser Name[ca]=condensador +Name[ca@valencia]=condensador Name[el]=condenser Name[et]=Jahuti Name[it]=condensatore +Name[kk]=Конденсор Name[nb]=kondensator Name[nl]=condenser Name[pl]=chłodnica diff -Nru calligra-2.3.86/flow/stencils/Chemistry_Lab/condenser-green.desktop calligra-2.3.87/flow/stencils/Chemistry_Lab/condenser-green.desktop --- calligra-2.3.86/flow/stencils/Chemistry_Lab/condenser-green.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Chemistry_Lab/condenser-green.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -1,9 +1,11 @@ [Desktop Entry] Name=condenser-green Name[ca]=condensador-verd +Name[ca@valencia]=condensador-verd Name[el]=condenser-green Name[et]=Roheline jahuti Name[it]=condensatore-verde +Name[kk]=Конденсор (жасыл) Name[nb]=kondensator-grønn Name[nl]=condenser-groen Name[pl]=chłodnica-zielony diff -Nru calligra-2.3.86/flow/stencils/Chemistry_Lab/condenser-liebig-vertical.desktop calligra-2.3.87/flow/stencils/Chemistry_Lab/condenser-liebig-vertical.desktop --- calligra-2.3.86/flow/stencils/Chemistry_Lab/condenser-liebig-vertical.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Chemistry_Lab/condenser-liebig-vertical.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -1,10 +1,13 @@ [Desktop Entry] Name=condenser-liebig-vertical Name[ca]=condensador-liebig-vertical +Name[ca@valencia]=condensador-liebig-vertical Name[el]=condenser-liebig-vertical Name[et]=Vertikaalne Liebigi jahuti Name[it]=condensatore-liebig-verticale +Name[kk]=Либиг конденсоры (тік) Name[nb]=kondensator-liebig-loddrett +Name[nl]=condenser-liebig-verticaal Name[pl]=chłodnica-liebiga-pionowa Name[pt]=condensador-grande-vertical Name[pt_BR]=condensador grande vertical diff -Nru calligra-2.3.86/flow/stencils/Chemistry_Lab/condenser-orange.desktop calligra-2.3.87/flow/stencils/Chemistry_Lab/condenser-orange.desktop --- calligra-2.3.86/flow/stencils/Chemistry_Lab/condenser-orange.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Chemistry_Lab/condenser-orange.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -1,9 +1,11 @@ [Desktop Entry] Name=condenser-orange Name[ca]=condensador-taronja +Name[ca@valencia]=condensador-taronja Name[el]=condenser-orange Name[et]=Oranž jahuti Name[it]=condensatore-arancione +Name[kk]=Конденсор (қызғылт сары) Name[nb]=kondensator-orange Name[nl]=condenser-oranje Name[pl]=chłodnica-pomarańczowa diff -Nru calligra-2.3.86/flow/stencils/Chemistry_Lab/condenser-pale-blue.desktop calligra-2.3.87/flow/stencils/Chemistry_Lab/condenser-pale-blue.desktop --- calligra-2.3.86/flow/stencils/Chemistry_Lab/condenser-pale-blue.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Chemistry_Lab/condenser-pale-blue.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -1,9 +1,11 @@ [Desktop Entry] Name=condenser-pale-blue Name[ca]=condensador-blau-pàlid +Name[ca@valencia]=condensador-blau-pàlid Name[el]=condenser-pale-blue Name[et]=Helesinine jahuti Name[it]=condensatore-celeste +Name[kk]=Конденсор (ақшыл көк) Name[nb]=kondensator-lys-blå Name[nl]=condenser-bleekblauw Name[pl]=chłodnica-blado-niebieska diff -Nru calligra-2.3.86/flow/stencils/Chemistry_Lab/condenser-red.desktop calligra-2.3.87/flow/stencils/Chemistry_Lab/condenser-red.desktop --- calligra-2.3.86/flow/stencils/Chemistry_Lab/condenser-red.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Chemistry_Lab/condenser-red.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -1,9 +1,11 @@ [Desktop Entry] Name=condenser-red Name[ca]=condensador-vermell +Name[ca@valencia]=condensador-roig Name[el]=condenser-red Name[et]=Punane jahuti Name[it]=condensatore-rosso +Name[kk]=Конденсор (қызыл) Name[nb]=kondensator-rød Name[nl]=condenser-rood Name[pl]=chłodnica-czerwona diff -Nru calligra-2.3.86/flow/stencils/Chemistry_Lab/erlenmeyer.desktop calligra-2.3.87/flow/stencils/Chemistry_Lab/erlenmeyer.desktop --- calligra-2.3.86/flow/stencils/Chemistry_Lab/erlenmeyer.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Chemistry_Lab/erlenmeyer.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -1,9 +1,11 @@ [Desktop Entry] Name=ryan -Erlenmeyer Flask Name[ca]=ryan -Erlenmeyer Flask +Name[ca@valencia]=ryan -Erlenmeyer Flask Name[el]=ryan -Erlenmeyer Flask Name[et]=Erlenmeyeri kolb Name[it]=beuta Ryan-Erlenmeyer +Name[kk]=Эрленмейер сауыты Name[nb]=ryan -Erlenmeyerkolbe Name[nl]=ryan -Erlenmeyerfles Name[pl]=Kolba stożkowa diff -Nru calligra-2.3.86/flow/stencils/Chemistry_Lab/funnel.desktop calligra-2.3.87/flow/stencils/Chemistry_Lab/funnel.desktop --- calligra-2.3.86/flow/stencils/Chemistry_Lab/funnel.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Chemistry_Lab/funnel.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -1,11 +1,14 @@ [Desktop Entry] Name=funnel Name[ca]=funnel +Name[ca@valencia]=funnel +Name[el]=funnel Name[et]=Jaotuslehter Name[it]=imbuto +Name[kk]=Құйғыш Name[nb]=trakt Name[nds]=Trechter -Name[nl]=luchtkoker +Name[nl]=trechter Name[pl]=lejek Name[pt]=funil Name[pt_BR]=funil diff -Nru calligra-2.3.86/flow/stencils/Chemistry_Lab/gooseneck.desktop calligra-2.3.87/flow/stencils/Chemistry_Lab/gooseneck.desktop --- calligra-2.3.86/flow/stencils/Chemistry_Lab/gooseneck.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Chemistry_Lab/gooseneck.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -1,9 +1,11 @@ [Desktop Entry] Name=gooseneck Name[ca]=coll d'oca +Name[ca@valencia]=coll d'oca Name[el]=gooseneck Name[et]=Siugtoru Name[it]=gooseneck +Name[kk]=Қазмойын түтігі Name[nb]=180-bend Name[nl]=ganzenhals Name[pl]=gęsia szyja diff -Nru calligra-2.3.86/flow/stencils/Chemistry_Lab/lab-stand.desktop calligra-2.3.87/flow/stencils/Chemistry_Lab/lab-stand.desktop --- calligra-2.3.86/flow/stencils/Chemistry_Lab/lab-stand.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Chemistry_Lab/lab-stand.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -1,9 +1,11 @@ [Desktop Entry] Name=lab-stand Name[ca]=laboratori stand +Name[ca@valencia]=laboratori stand Name[el]=lab-stand Name[et]=Statiiv Name[it]=lab-stand +Name[kk]=Лаб. штативі Name[nb]=lab-holder Name[nl]=lab-standaard Name[pl]=stanowisko-laboratoryjne diff -Nru calligra-2.3.86/flow/stencils/Chemistry_Lab/lab-stand-front.desktop calligra-2.3.87/flow/stencils/Chemistry_Lab/lab-stand-front.desktop --- calligra-2.3.86/flow/stencils/Chemistry_Lab/lab-stand-front.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Chemistry_Lab/lab-stand-front.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -1,10 +1,13 @@ [Desktop Entry] Name=lab-stand-front Name[ca]=laboratori stand blau +Name[ca@valencia]=laboratori stand blau Name[el]=lab-stand-front Name[et]=Statiiv eestvaates Name[it]=lab-stand-front +Name[kk]=Лаб. штативі (алды) Name[nb]=lab-holder frontal +Name[nl]=lab-standaard-voor Name[pl]=stanowisko-laboratoryjne-przód Name[pt]=mesa-laboratório-frente Name[pt_BR]=mesa de laboratório (frente) diff -Nru calligra-2.3.86/flow/stencils/Chemistry_Lab/ring.desktop calligra-2.3.87/flow/stencils/Chemistry_Lab/ring.desktop --- calligra-2.3.86/flow/stencils/Chemistry_Lab/ring.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Chemistry_Lab/ring.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -1,10 +1,12 @@ [Desktop Entry] Name=ring Name[ca]=timbre +Name[ca@valencia]=timbre Name[cs]=prstenec Name[el]=ring Name[et]=Hoidik Name[it]=anello +Name[kk]=Сақина Name[nb]=ring Name[nds]=Ring Name[nl]=ring diff -Nru calligra-2.3.86/flow/stencils/Chemistry_Lab/ring-front.desktop calligra-2.3.87/flow/stencils/Chemistry_Lab/ring-front.desktop --- calligra-2.3.86/flow/stencils/Chemistry_Lab/ring-front.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Chemistry_Lab/ring-front.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -1,10 +1,13 @@ [Desktop Entry] Name=ring-front Name[ca]=anell frontal +Name[ca@valencia]=anell frontal Name[el]=ring-front Name[et]=Hoidik eestvaates Name[it]=anello-fronte +Name[kk]=Сақина (алды) Name[nb]=ring-foran +Name[nl]=ring-voor Name[pl]=pierścień-przód Name[pt]=anel-frente Name[pt_BR]=anel (frente) diff -Nru calligra-2.3.86/flow/stencils/Chemistry_Lab/sep-funnel.desktop calligra-2.3.87/flow/stencils/Chemistry_Lab/sep-funnel.desktop --- calligra-2.3.86/flow/stencils/Chemistry_Lab/sep-funnel.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Chemistry_Lab/sep-funnel.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -1,10 +1,13 @@ [Desktop Entry] Name=sep-funnel Name[ca]=sep-funnel +Name[ca@valencia]=sep-funnel Name[el]=sep-funnel Name[et]=Eralduslehter Name[it]=imbuto-separatore +Name[kk]=Сүзгі құйғышы Name[nb]=separasjonstrakt +Name[nl]=scheidingstrechter Name[pl]=rozdzielacz Name[pt]=funil-separação Name[pt_BR]=funil de separação diff -Nru calligra-2.3.86/flow/stencils/Chemistry_Lab/sep-funnel-three-phases.desktop calligra-2.3.87/flow/stencils/Chemistry_Lab/sep-funnel-three-phases.desktop --- calligra-2.3.86/flow/stencils/Chemistry_Lab/sep-funnel-three-phases.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Chemistry_Lab/sep-funnel-three-phases.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -1,10 +1,13 @@ [Desktop Entry] Name=sep-funnel-three-phases Name[ca]=sep-funnel-three-phases +Name[ca@valencia]=sep-funnel-three-phases Name[el]=sep-funnel-three-phases Name[et]=Kolmefaasiline eralduslehter Name[it]=imbuto-separatore-tre-fasi +Name[kk]=Үш фазалық сүзгі құйғышы Name[nb]=trefase separasjonstrakt +Name[nl]=driefasenscheidingstrechter Name[pl]=trójfazowy-rozdzielacz Name[pt]=funil-separação-três-fases Name[pt_BR]=funil de separação de três fases diff -Nru calligra-2.3.86/flow/stencils/Chemistry_Lab/sep-funnel-two-phases.desktop calligra-2.3.87/flow/stencils/Chemistry_Lab/sep-funnel-two-phases.desktop --- calligra-2.3.86/flow/stencils/Chemistry_Lab/sep-funnel-two-phases.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Chemistry_Lab/sep-funnel-two-phases.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -1,10 +1,13 @@ [Desktop Entry] Name=sep-funnel-two-phases Name[ca]=sep-funnel-two-phases +Name[ca@valencia]=sep-funnel-two-phases Name[el]=sep-funnel-two-phases Name[et]=Kahefaasiline eralduslehter Name[it]=imbuto-separatore-due-fasi +Name[kk]=Екі фазалық сүзгі құйғышы Name[nb]=tofase separasjonstrakt +Name[nl]=tweefasenscheidingstrechter Name[pl]=dwufazowy-rozdzielacz Name[pt]=funil-separação-duas-fases Name[pt_BR]=funil de separação de duas fases diff -Nru calligra-2.3.86/flow/stencils/Chemistry_Lab/stirbar.desktop calligra-2.3.87/flow/stencils/Chemistry_Lab/stirbar.desktop --- calligra-2.3.86/flow/stencils/Chemistry_Lab/stirbar.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Chemistry_Lab/stirbar.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -1,9 +1,11 @@ [Desktop Entry] Name=stirbar Name[ca]=agitador +Name[ca@valencia]=agitador Name[el]=stirbar Name[et]=Segaja varras Name[it]=ancoretta-magnetica +Name[kk]=Магнитті араластырғыш Name[nb]=magnetstav Name[nds]=Röhrfisch Name[nl]=roerstaaf diff -Nru calligra-2.3.86/flow/stencils/Chemistry_Lab/stirplate.desktop calligra-2.3.87/flow/stencils/Chemistry_Lab/stirplate.desktop --- calligra-2.3.86/flow/stencils/Chemistry_Lab/stirplate.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Chemistry_Lab/stirplate.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -1,9 +1,11 @@ [Desktop Entry] Name=stirplate Name[ca]=placaremenat +Name[ca@valencia]=placaremenat Name[el]=stirplate Name[et]=Segaja Name[it]=agitatore-magnetico +Name[kk]=Араластырғыш Name[nb]=omrører Name[nl]=roerplaat Name[pl]=mieszadło-magnetyczne diff -Nru calligra-2.3.86/flow/stencils/Chemistry_Lab/stirplate-front.desktop calligra-2.3.87/flow/stencils/Chemistry_Lab/stirplate-front.desktop --- calligra-2.3.86/flow/stencils/Chemistry_Lab/stirplate-front.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Chemistry_Lab/stirplate-front.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -1,9 +1,11 @@ [Desktop Entry] Name=stirplate-front Name[ca]=placaremenat-front +Name[ca@valencia]=placaremenat-front Name[el]=stirplate-front Name[et]=Segaja eestvaates Name[it]=agitatore-magnetico-fronte +Name[kk]=Араластырғыш (алды) Name[nb]=magnetstav-frontal Name[nl]=roerplaat-voorzijde Name[pl]=mieszadło-magnetyczne-przód diff -Nru calligra-2.3.86/flow/stencils/Circuit/collection.desktop calligra-2.3.87/flow/stencils/Circuit/collection.desktop --- calligra-2.3.86/flow/stencils/Circuit/collection.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Circuit/collection.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -2,12 +2,15 @@ Name=Circuit Name[bg]=Верига Name[ca]=Circuit +Name[ca@valencia]=Circuit Name[cs]=Obvod Name[de]=Schaltkreis Name[el]=Κύκλωμα Name[et]=Vooluring Name[ga]=Circuit +Name[hu]=Áramkör Name[it]=Circuito +Name[kk]=Электрсұлба Name[nb]=Krets Name[nds]=Schaltkrink Name[nl]=Elektrisch schema diff -Nru calligra-2.3.86/flow/stencils/Circuit/ground.desktop calligra-2.3.87/flow/stencils/Circuit/ground.desktop --- calligra-2.3.86/flow/stencils/Circuit/ground.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Circuit/ground.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -2,11 +2,14 @@ Name=Ground Name[bg]=Заземяване Name[ca]=Terre +Name[ca@valencia]=Terre Name[cs]=Zem Name[de]=Masse Name[el]=Γείωση Name[et]=Maaühendus +Name[hu]=Föld Name[it]=Terra +Name[kk]=Жерге қосуы Name[nb]=Jord Name[nds]=Mass Name[nl]=Aarde diff -Nru calligra-2.3.86/flow/stencils/Circuit/hcapacitor.desktop calligra-2.3.87/flow/stencils/Circuit/hcapacitor.desktop --- calligra-2.3.86/flow/stencils/Circuit/hcapacitor.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Circuit/hcapacitor.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -2,10 +2,12 @@ Name=Horizontal Capacitor Name[bg]=Хоризонтален кондензатор Name[ca]=Capacitador horitzontal +Name[ca@valencia]=Capacitador horitzontal Name[de]=Waagerechter Kondensator Name[el]=Οριζόντιος πυκνωτής Name[et]=Horisontaalne kondensaator Name[it]=Condensatore orizzontale +Name[kk]=Жатық конденсатор Name[nb]=Vannrett kondensator Name[nds]=Kimmrecht Kondensator Name[nl]=Horizontale condensator diff -Nru calligra-2.3.86/flow/stencils/Circuit/hdiode.desktop calligra-2.3.87/flow/stencils/Circuit/hdiode.desktop --- calligra-2.3.86/flow/stencils/Circuit/hdiode.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Circuit/hdiode.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -2,10 +2,12 @@ Name=Horizontal Diode Name[bg]=Хоризонтален диод Name[ca]=Diode horitzontal +Name[ca@valencia]=Diode horitzontal Name[de]=Waagerechte Diode Name[el]=Οριζόντια δίοδος Name[et]=Horisontaalne diood Name[it]=Diodo orizzontale +Name[kk]=Жатық диод Name[nb]=Vannrett diode Name[nds]=Kimmrecht DioodHistogramm-Docker Name[nl]=Horizontale diode diff -Nru calligra-2.3.86/flow/stencils/Circuit/hfuse_de.desktop calligra-2.3.87/flow/stencils/Circuit/hfuse_de.desktop --- calligra-2.3.86/flow/stencils/Circuit/hfuse_de.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Circuit/hfuse_de.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -2,10 +2,12 @@ Name=Horizontal Fuse (European) Name[bg]=Хоризонтален предпазител (европейски) Name[ca]=Fusible horitzontal (europeu) +Name[ca@valencia]=Fusible horitzontal (europeu) Name[de]=Waagerechte Sicherung (europäisch) Name[el]=Οριζόντια ασφάλεια (Ευρώπη) Name[et]=Horisontaalne kaitse (Euroopa) Name[it]=Fusibile orizzontale (europeo) +Name[kk]=Жатық сақтандырғышы (Еуропалық) Name[nb]=Vannrett sikring (DIN) Name[nds]=Kimmrecht Sekern (europääsch) Name[nl]=Horizontale zekering (Europees) diff -Nru calligra-2.3.86/flow/stencils/Circuit/hinductor_de.desktop calligra-2.3.87/flow/stencils/Circuit/hinductor_de.desktop --- calligra-2.3.86/flow/stencils/Circuit/hinductor_de.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Circuit/hinductor_de.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -2,10 +2,12 @@ Name=Horizontal Inductor (European) Name[bg]=Хоризонтална бобина (европейски) Name[ca]=Inductor horitzontal (europeu) +Name[ca@valencia]=Inductor horitzontal (europeu) Name[de]=Waagerechte Drosselspule (europäisch) Name[el]=Οριζόντιο πηνίο (Ευρώπη) Name[et]=Horisontaalne induktor (Euroopa) Name[it]=Induttore orizzontale (europeo) +Name[kk]=Жатық индуктор (Еуропалық) Name[nb]=Vannrett spole (DIN) Name[nds]=Kimmrecht Spool (europääsch) Name[nl]=Horizontale spoel (Europees) diff -Nru calligra-2.3.86/flow/stencils/Circuit/hinductor.desktop calligra-2.3.87/flow/stencils/Circuit/hinductor.desktop --- calligra-2.3.86/flow/stencils/Circuit/hinductor.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Circuit/hinductor.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -2,10 +2,12 @@ Name=Horizontal Inductor Name[bg]=Хоризонтална бобина Name[ca]=Inductor horitzontal +Name[ca@valencia]=Inductor horitzontal Name[de]=Waagerechte Drosselspule Name[el]=Οριζόντιο πηνίο Name[et]=Horisontaalne induktor Name[it]=Induttore orizzontale +Name[kk]=Жатық индуктор Name[nb]=Vannrett spole Name[nds]=Kimmrecht Spool Name[nl]=Horizontale spoel diff -Nru calligra-2.3.86/flow/stencils/Circuit/hjumper.desktop calligra-2.3.87/flow/stencils/Circuit/hjumper.desktop --- calligra-2.3.86/flow/stencils/Circuit/hjumper.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Circuit/hjumper.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -2,10 +2,12 @@ Name=Horizontal Jumper Name[bg]=Хоризонтален джъмпер Name[ca]=Jumper horitzontal +Name[ca@valencia]=Jumper horitzontal Name[de]=Waagerechter Jumper Name[el]=Οριζόντια επαφή κυκλώματος Name[et]=Horisontaalne šunt Name[it]=Jumper orizzontale +Name[kk]=Жатық жалғастырғыш Name[nb]=Vannrett flyttekobling Name[nds]=Kimmrecht Steekbrüch Name[nl]=Horizontale jumper diff -Nru calligra-2.3.86/flow/stencils/Circuit/hled_de.desktop calligra-2.3.87/flow/stencils/Circuit/hled_de.desktop --- calligra-2.3.86/flow/stencils/Circuit/hled_de.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Circuit/hled_de.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -2,10 +2,12 @@ Name=Horizontal Led (European) Name[bg]=Хоризонтален светодиод (европейски) Name[ca]=Led horitzontal (europeu) +Name[ca@valencia]=Led horitzontal (europeu) Name[de]=Waagerechte LED (europäisch) Name[el]=Οριζόντιο led (Ευρώπη) Name[et]=Horisontaalne LED (Euroopa) Name[it]=LED orizzontale (europeo) +Name[kk]=Жатық сәуледиод (Еуропалық) Name[nb]=Vannrett LED (DIN) Name[nds]=Kimmrecht LED (europääsch) Name[nl]=Horizontale led (Europees) diff -Nru calligra-2.3.86/flow/stencils/Circuit/hpowersource_de.desktop calligra-2.3.87/flow/stencils/Circuit/hpowersource_de.desktop --- calligra-2.3.86/flow/stencils/Circuit/hpowersource_de.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Circuit/hpowersource_de.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -2,10 +2,12 @@ Name=Horizontal Powersource (European) Name[bg]=Хоризонтален източник на енергия (европейски) Name[ca]=Font d'alimentació horitzonal (europea) +Name[ca@valencia]=Font d'alimentació horitzonal (europea) Name[de]=Waagerechte Stromquelle (europäisch) Name[el]=Οριζόντια πηγή ισχύος (Ευρώπη) Name[et]=Horisontaalne vooluallikas (Euroopa) Name[it]=Sorgente di alimentazione orizzontale (europea) +Name[kk]=Жатық қуат көзі (Еуопалық) Name[nb]=Vannrett kraftkilde (DIN) Name[nds]=Kimmrecht Stroomborn (europääsch) Name[nl]=Horizontale stroombron (Europees) diff -Nru calligra-2.3.86/flow/stencils/Circuit/hresistor_de.desktop calligra-2.3.87/flow/stencils/Circuit/hresistor_de.desktop --- calligra-2.3.86/flow/stencils/Circuit/hresistor_de.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Circuit/hresistor_de.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -2,10 +2,12 @@ Name=Horizontal Resistor (European) Name[bg]=Хоризонтално съпротивление (европейски) Name[ca]=Resistor horitzontal (europeu) +Name[ca@valencia]=Resistor horitzontal (europeu) Name[de]=Waagerechter Widerstand (europäisch) Name[el]=Οριζόντιος αντιστάτης (Ευρώπη) Name[et]=Horisontaalne takisti (Euroopa) Name[it]=Resistore orizzontale (europeo) +Name[kk]=Жатық резистор (Еуропалық) Name[nb]=Vannrett motstand (DIN) Name[nds]=Kimmrecht Wedderstand (europääsch) Name[nl]=Horizontale weerstand (Europees) diff -Nru calligra-2.3.86/flow/stencils/Circuit/hresistor.desktop calligra-2.3.87/flow/stencils/Circuit/hresistor.desktop --- calligra-2.3.86/flow/stencils/Circuit/hresistor.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Circuit/hresistor.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -2,10 +2,12 @@ Name=Horizontal Resistor Name[bg]=Хоризонтално съпротивление Name[ca]=Resistor horitzontal +Name[ca@valencia]=Resistor horitzontal Name[de]=Waagerechter Widerstand Name[el]=Οριζόντιος αντιστάτης Name[et]=Horisontaalne takisti Name[it]=Resistore orizzontale +Name[kk]=Жатық резистор Name[nb]=Vannrett motstand Name[nds]=Kimmrecht Wedderstand Name[nl]=Horizontale weerstand diff -Nru calligra-2.3.86/flow/stencils/Circuit/hzener.desktop calligra-2.3.87/flow/stencils/Circuit/hzener.desktop --- calligra-2.3.86/flow/stencils/Circuit/hzener.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Circuit/hzener.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -2,10 +2,12 @@ Name=Horizontal Zener Diode Name[bg]=Хоризонтален ценеров диод Name[ca]=Diode Zener horitzontal +Name[ca@valencia]=Diode Zener horitzontal Name[de]=Waagerechte Zener-Diode Name[el]=Οριζόντια δίοδος Zener Name[et]=Horisontaalne tunneldiood Name[it]=Diodo Zener orizzontale +Name[kk]=Жатық стабилитрон Name[nb]=Vannrett Zener-diode Name[nds]=Kimmrecht Zener-Diood Name[nl]=Horizontale zenerdiode diff -Nru calligra-2.3.86/flow/stencils/Circuit/lamp_de.desktop calligra-2.3.87/flow/stencils/Circuit/lamp_de.desktop --- calligra-2.3.86/flow/stencils/Circuit/lamp_de.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Circuit/lamp_de.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -2,10 +2,12 @@ Name=Lamp (European) Name[bg]=Лампа (европейски) Name[ca]=Làmpada (europea) +Name[ca@valencia]=Làmpada (europea) Name[de]=Lampe (europäisch) Name[el]=Λαμπτήρας (Ευρώπη) Name[et]=Lamp (Euroopa) Name[it]=Lampada (europea) +Name[kk]=Лампа (Еуропалық) Name[nb]=Lampe (DIN) Name[nds]=Lamp (europääsch) Name[nl]=Lamp (Europees) diff -Nru calligra-2.3.86/flow/stencils/Circuit/microphone_de.desktop calligra-2.3.87/flow/stencils/Circuit/microphone_de.desktop --- calligra-2.3.86/flow/stencils/Circuit/microphone_de.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Circuit/microphone_de.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -2,10 +2,12 @@ Name=Microphone (European) Name[bg]=Микрофон (европейски) Name[ca]=Micròfon (europeu) +Name[ca@valencia]=Micròfon (europeu) Name[de]=Mikrofon (europäisch) Name[el]=Μικρόφωνο (Ευρώπη) Name[et]=Mikrofon (Euroopa) Name[it]=Microfono (europeo) +Name[kk]=Микрофон (Еуропалық) Name[nb]=Mikrofon (DIN) Name[nds]=Mikrofoon (europääsch) Name[nl]=Microfoon (Europees) diff -Nru calligra-2.3.86/flow/stencils/Circuit/nmos_de.desktop calligra-2.3.87/flow/stencils/Circuit/nmos_de.desktop --- calligra-2.3.86/flow/stencils/Circuit/nmos_de.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Circuit/nmos_de.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -2,10 +2,12 @@ Name=NMOS Transistor (European) Name[bg]=Транзистор NMOS (европейски) Name[ca]=Transistor NMOS (europeu) +Name[ca@valencia]=Transistor NMOS (europeu) Name[de]=NMOS-Transistor (europäisch) Name[el]=NMOS Transistor (Ευρώπη) Name[et]=NMOS transistor (Euroopa) Name[it]=Transistore NMOS (europeo) +Name[kk]=NMOS-транзисторы (Еуропалық) Name[nb]=NMOS-transistor (DIN) Name[nds]=NMOS-Transistor (europääsch) Name[nl]=NMOS transistor (Europees) diff -Nru calligra-2.3.86/flow/stencils/Circuit/npn.desktop calligra-2.3.87/flow/stencils/Circuit/npn.desktop --- calligra-2.3.86/flow/stencils/Circuit/npn.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Circuit/npn.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -2,11 +2,14 @@ Name=NPN Transistor Name[bg]=Транзистор NPN Name[ca]=Transistor NPN +Name[ca@valencia]=Transistor NPN Name[cs]=Tranzistor NPN Name[de]=NPN-Transistor Name[el]=NPN Transistor Name[et]=NPN transistor +Name[hu]=NPN tranzisztor Name[it]=Transistore NPN +Name[kk]=npn-транзисторы Name[nb]=NPN-transistor Name[nds]=NPN-Transistor Name[nl]=NPN transistor diff -Nru calligra-2.3.86/flow/stencils/Circuit/opamp.desktop calligra-2.3.87/flow/stencils/Circuit/opamp.desktop --- calligra-2.3.86/flow/stencils/Circuit/opamp.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Circuit/opamp.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -2,12 +2,15 @@ Name=Op Amp Name[bg]=Операционен усилвател Name[ca]=Amplificador Op +Name[ca@valencia]=Amplificador Op Name[de]=Operationsverstärker Name[el]=Op Amp Name[et]=Operatsioonvõimendi Name[it]=Amplificatore operazionale +Name[kk]=Операц. күшейткіші Name[nb]=Op. forsterker Name[nds]=Operatschoonverstarker +Name[nl]=Op Amp Name[pl]=Op Amp Name[pt]=Amp-Op Name[pt_BR]=Amp-Op diff -Nru calligra-2.3.86/flow/stencils/Circuit/pmos_de.desktop calligra-2.3.87/flow/stencils/Circuit/pmos_de.desktop --- calligra-2.3.86/flow/stencils/Circuit/pmos_de.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Circuit/pmos_de.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -2,10 +2,12 @@ Name=PMOS Transistor (European) Name[bg]=Транзистор PMOS (европейски) Name[ca]=Transistorn PMOS (europeu) +Name[ca@valencia]=Transistorn PMOS (europeu) Name[de]=PMOS-Transistor (europäisch) Name[el]=PMOS Transistor (Ευρώπη) Name[et]=PMOS transistor (Euroopa) Name[it]=Transistore PMOS (Europeo) +Name[kk]=PMOS-транзисторы (Еуропалық) Name[nb]=PMOS-transistor (DIN) Name[nds]=PMOS-Transistor (europääsch) Name[nl]=PMOS-transistor (Europees) diff -Nru calligra-2.3.86/flow/stencils/Circuit/pnp.desktop calligra-2.3.87/flow/stencils/Circuit/pnp.desktop --- calligra-2.3.86/flow/stencils/Circuit/pnp.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Circuit/pnp.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -2,11 +2,14 @@ Name=PNP Transistor Name[bg]=Транзистор PNP Name[ca]=Transistor PNP +Name[ca@valencia]=Transistor PNP Name[cs]=Tranzistor PNP Name[de]=PNP-Transistor Name[el]=PNP Transistor Name[et]=PNP transistor +Name[hu]=PNP tranzisztor Name[it]=Transistore PNP +Name[kk]=pnp-транзисторы Name[nb]=PNP-transistor Name[nds]=PNP-Transistor Name[nl]=PNP transistor diff -Nru calligra-2.3.86/flow/stencils/Circuit/speaker_de.desktop calligra-2.3.87/flow/stencils/Circuit/speaker_de.desktop --- calligra-2.3.86/flow/stencils/Circuit/speaker_de.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Circuit/speaker_de.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -2,10 +2,12 @@ Name=Speaker (European) Name[bg]=Високоговорител (европейски) Name[ca]=Altaveu (europeu) +Name[ca@valencia]=Altaveu (europeu) Name[de]=Lautsprecher (europäisch) Name[el]=Ηχείο (Ευρώπη) Name[et]=Kõlar (Euroopa) Name[it]=Altoparlante (europeo) +Name[kk]=Динамик (Еуропалық) Name[nb]=Høyttaler (DIN) Name[nds]=Luutspreker (europääsch) Name[nl]=Luidspreker (Europees) diff -Nru calligra-2.3.86/flow/stencils/Circuit/vcapacitor.desktop calligra-2.3.87/flow/stencils/Circuit/vcapacitor.desktop --- calligra-2.3.86/flow/stencils/Circuit/vcapacitor.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Circuit/vcapacitor.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -2,11 +2,13 @@ Name=Vertical Capacitor Name[bg]=Вертикален кондензатор Name[ca]=Capacitador vertical +Name[ca@valencia]=Capacitador vertical Name[de]=Senkrechter Kondensator Name[el]=Κάθετος πυκνωτής Name[es]=Condensador vertical Name[et]=Vertikaalne kondensaator Name[it]=Condensatore verticale +Name[kk]=Тік конденсатор Name[nb]=Loddrett kondensator Name[nds]=Pielrecht Kondensator Name[nl]=Verticale condensator diff -Nru calligra-2.3.86/flow/stencils/Circuit/vdiode.desktop calligra-2.3.87/flow/stencils/Circuit/vdiode.desktop --- calligra-2.3.86/flow/stencils/Circuit/vdiode.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Circuit/vdiode.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -2,11 +2,13 @@ Name=Vertical Diode Name[bg]=Вертикален диод Name[ca]=Diode vertical +Name[ca@valencia]=Diode vertical Name[de]=Senkrechte Diode Name[el]=Κάθετη δίοδος Name[es]=Diodo vertical Name[et]=Vertikaalne diood Name[it]=Diodo verticale +Name[kk]=Тік диод Name[nb]=Loddrett diode Name[nds]=Pielrecht Diood Name[nl]=Verticale diode diff -Nru calligra-2.3.86/flow/stencils/Circuit/vfuse_de.desktop calligra-2.3.87/flow/stencils/Circuit/vfuse_de.desktop --- calligra-2.3.86/flow/stencils/Circuit/vfuse_de.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Circuit/vfuse_de.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -2,10 +2,12 @@ Name=Vertical Fuse (European) Name[bg]=Вертикален предпазител (европейски) Name[ca]=Fusible vertical (europeu) +Name[ca@valencia]=Fusible vertical (europeu) Name[de]=Senkrechte Sicherung (europäisch) Name[el]=Κάθετη ασφάλεια (Ευρώπη) Name[et]=Vertikaalne kaitse (Euroopa) Name[it]=Fusibile verticale (europeo) +Name[kk]=Тік сақтандырғышы (Еуропалық) Name[nb]=Loddrett sikring (DIN) Name[nds]=Pielrecht Sekern (europääsch) Name[nl]=Verticale zekering (Europees) diff -Nru calligra-2.3.86/flow/stencils/Circuit/vinductor_de.desktop calligra-2.3.87/flow/stencils/Circuit/vinductor_de.desktop --- calligra-2.3.86/flow/stencils/Circuit/vinductor_de.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Circuit/vinductor_de.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -2,10 +2,12 @@ Name=Vertical Inductor (European) Name[bg]=Вертикална бобина (европейски) Name[ca]=Inductor vertical (europeu) +Name[ca@valencia]=Inductor vertical (europeu) Name[de]=Senkrechte Drosselspule (europäisch) Name[el]=Κάθετο πηνίο (Ευρώπη) Name[et]=Vertikaalne induktor (Euroopa) Name[it]=Induttore verticale (europeo) +Name[kk]=Тік индуктор (Еуропалық) Name[nb]=Loddrett spole (DIN) Name[nds]=Pielrecht Spool (europääsch) Name[nl]=Verticale spoel (Europees) diff -Nru calligra-2.3.86/flow/stencils/Circuit/vinductor.desktop calligra-2.3.87/flow/stencils/Circuit/vinductor.desktop --- calligra-2.3.86/flow/stencils/Circuit/vinductor.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Circuit/vinductor.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -2,10 +2,12 @@ Name=Vertical Inductor Name[bg]=Вертикална бобина Name[ca]=Inductor vertical +Name[ca@valencia]=Inductor vertical Name[de]=Senkrechte Drosselspule Name[el]=Κάθετο πηνίο Name[et]=Vertikaalne induktor Name[it]=Induttore verticale +Name[kk]=Тік индуктор Name[nb]=Loddrett spole Name[nds]=Pielrecht Spool Name[nl]=Verticale spoel diff -Nru calligra-2.3.86/flow/stencils/Circuit/vled_de.desktop calligra-2.3.87/flow/stencils/Circuit/vled_de.desktop --- calligra-2.3.86/flow/stencils/Circuit/vled_de.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Circuit/vled_de.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -2,10 +2,12 @@ Name=Vertical Led (European) Name[bg]=Вертикален светодиод (европейски) Name[ca]=Led vertical (europeu) +Name[ca@valencia]=Led vertical (europeu) Name[de]=Senkrechte LED (europäisch) Name[el]=Κάθετο led (Ευρώπη) Name[et]=Vertikaalne LED (Euroopa) Name[it]=LED verticale (europeo) +Name[kk]=Тік сәуледиод (Еуропалық) Name[nb]=Loddrett LED (DIN) Name[nds]=Pielrecht LED (europääsch) Name[nl]=Verticale led (Europees) diff -Nru calligra-2.3.86/flow/stencils/Circuit/vpowersource_de.desktop calligra-2.3.87/flow/stencils/Circuit/vpowersource_de.desktop --- calligra-2.3.86/flow/stencils/Circuit/vpowersource_de.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Circuit/vpowersource_de.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -2,10 +2,12 @@ Name=Vertical Powersource (European) Name[bg]=Вертикален източник на енергия (европейски) Name[ca]=Font d'alimentació vertical (europea) +Name[ca@valencia]=Font d'alimentació vertical (europea) Name[de]=Senkrechte Stromquelle (europäisch) Name[el]=Κάθετη πηγή ισχύος (Ευρώπη) Name[et]=Vertikaalne vooluallikas (Euroopa) Name[it]=Sorgente di alimentazione verticale (europea) +Name[kk]=Тік қуат көзі (Еуопалық) Name[nb]=Loddrett kraftkilde (DIN) Name[nds]=Pielrecht Stroomborn (europääsch) Name[nl]=Verticale stroombron (Europees) diff -Nru calligra-2.3.86/flow/stencils/Circuit/vresistor_de.desktop calligra-2.3.87/flow/stencils/Circuit/vresistor_de.desktop --- calligra-2.3.86/flow/stencils/Circuit/vresistor_de.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Circuit/vresistor_de.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -2,10 +2,12 @@ Name=Vertical Resistor (European) Name[bg]=Вертикално съпротивление (европейски) Name[ca]=Resistor vertical (europeu) +Name[ca@valencia]=Resistor vertical (europeu) Name[de]=Senkrechter Widerstand (europäisch) Name[el]=Κάθετος αντιστάτης (Ευρώπη) Name[et]=Vertikaalne takisti (Euroopa) Name[it]=Resistore verticale (europeo) +Name[kk]=Тік резистор (Еуропалық) Name[nb]=Loddrett motstand (DIN) Name[nds]=Pielrecht Wedderstand (europääsch) Name[nl]=Verticale weerstand (Europees) diff -Nru calligra-2.3.86/flow/stencils/Circuit/vresistor.desktop calligra-2.3.87/flow/stencils/Circuit/vresistor.desktop --- calligra-2.3.86/flow/stencils/Circuit/vresistor.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Circuit/vresistor.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -2,10 +2,12 @@ Name=Vertical Resistor Name[bg]=Вертикално съпротивление Name[ca]=Resistor vertical +Name[ca@valencia]=Resistor vertical Name[de]=Senkrechter Widerstand Name[el]=Κάθετος αντιστάτης Name[et]=Vertikaalne takisti Name[it]=Resistore verticale +Name[kk]=Тік резистор Name[nb]=Loddrett motstand Name[nds]=Pielrecht Wedderstand Name[nl]=Verticale weerstand diff -Nru calligra-2.3.86/flow/stencils/Circuit/vzener.desktop calligra-2.3.87/flow/stencils/Circuit/vzener.desktop --- calligra-2.3.86/flow/stencils/Circuit/vzener.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Circuit/vzener.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -2,10 +2,12 @@ Name=Vertical Zener Diode Name[bg]=Вертикален ценеров диод Name[ca]=Diode Zener vertical +Name[ca@valencia]=Diode Zener vertical Name[de]=Senkrechte Zener-Diode Name[el]=Κάθετη δίοδος Zener Name[et]=Vertikaalne tunneldiood Name[it]=Diodo Zener verticale +Name[kk]=Тік стабилитрон Name[nb]=Loddrett Zenerdiode Name[nds]=Pielrecht Zener-Diood Name[nl]=Verticale zenerdiode diff -Nru calligra-2.3.86/flow/stencils/Circuit2/collection.desktop calligra-2.3.87/flow/stencils/Circuit2/collection.desktop --- calligra-2.3.86/flow/stencils/Circuit2/collection.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Circuit2/collection.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -2,11 +2,13 @@ Name=Circuit2 Name[bg]=Верига2 Name[ca]=Circuit2 +Name[ca@valencia]=Circuit2 Name[cs]=Obvod Name[de]=Schaltkreis2 Name[el]=Κύκλωμα2 Name[et]=Vooluring2 Name[it]=Circuito2 +Name[kk]=Электрсұлба2 Name[nb]=Krets2 Name[nds]=Schaltkrink 2 Name[nl]=Elektrisch schema2 diff -Nru calligra-2.3.86/flow/stencils/Circuit2/dcapacitor.desktop calligra-2.3.87/flow/stencils/Circuit2/dcapacitor.desktop --- calligra-2.3.86/flow/stencils/Circuit2/dcapacitor.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Circuit2/dcapacitor.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -1,11 +1,13 @@ [Desktop Entry] Name=Diagonal Capacitor Name[ca]=Capacitador diagonal +Name[ca@valencia]=Capacitador diagonal Name[de]=Diagonaler Widerstand Name[el]=Διαγώνιος πυκνωτής Name[es]=Condensador diagonal Name[et]=Diagonaalne kondensaator Name[it]=Condensatore diagonale +Name[kk]=Диагональдық конденсатор Name[nb]=Diagonal kondensator Name[nds]=Dwars Kondensator Name[nl]=Diagonale condensator diff -Nru calligra-2.3.86/flow/stencils/Circuit2/ddiode.desktop calligra-2.3.87/flow/stencils/Circuit2/ddiode.desktop --- calligra-2.3.86/flow/stencils/Circuit2/ddiode.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Circuit2/ddiode.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -1,11 +1,13 @@ [Desktop Entry] Name=Diagonal Diode Name[ca]=Diode diagonal +Name[ca@valencia]=Diode diagonal Name[de]=Diagonale Diode Name[el]=Διαγώνια δίοδος Name[es]=Diodo diagonal Name[et]=Diagonaalne diood Name[it]=Diodo diagonale +Name[kk]=Диагональдық диод Name[nb]=Diagonal diode Name[nds]=Dwars Diood Name[nl]=Diagonale diode diff -Nru calligra-2.3.86/flow/stencils/Circuit2/dinductor_de.desktop calligra-2.3.87/flow/stencils/Circuit2/dinductor_de.desktop --- calligra-2.3.86/flow/stencils/Circuit2/dinductor_de.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Circuit2/dinductor_de.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -1,11 +1,13 @@ [Desktop Entry] Name=Diagonal Inductor (European) Name[ca]=Diagonal Inductor (Europeu) +Name[ca@valencia]=Diagonal Inductor (Europeu) Name[de]=Diagonale Drosselspule (europäisch) Name[el]=Διαγώνιο πηνίο (Ευρώπη) Name[es]=Inductor diagonal (Europeo) Name[et]=Diagonaalne induktor (Euroopa) Name[it]=Induttore diagonale (europeo) +Name[kk]=Диагональдық индуктор (Еуропалық) Name[nb]=Diagonal spole (DIN) Name[nds]=Dwars Spool (europääsch) Name[nl]=Diagonale spoel (Europees) diff -Nru calligra-2.3.86/flow/stencils/Circuit2/dinductor.desktop calligra-2.3.87/flow/stencils/Circuit2/dinductor.desktop --- calligra-2.3.86/flow/stencils/Circuit2/dinductor.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Circuit2/dinductor.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -1,11 +1,13 @@ [Desktop Entry] Name=Diagonal Inductor Name[ca]=Diagonal Inductor +Name[ca@valencia]=Diagonal Inductor Name[de]=Diagonale Drosselspule Name[el]=Διαγώνιο πηνίο Name[es]=Inductor diagonal Name[et]=Diagonaalne induktor Name[it]=Induttore diagonale +Name[kk]=Диагональдық индуктор Name[nb]=Diagonal spole Name[nds]=Dwars Spool Name[nl]=Diagonale spoel diff -Nru calligra-2.3.86/flow/stencils/Circuit2/dled_de.desktop calligra-2.3.87/flow/stencils/Circuit2/dled_de.desktop --- calligra-2.3.86/flow/stencils/Circuit2/dled_de.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Circuit2/dled_de.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -1,11 +1,13 @@ [Desktop Entry] Name=Diagonal Led (European) Name[ca]=Diagonal Led (Europeu) +Name[ca@valencia]=Diagonal Led (Europeu) Name[de]=Diagonale LED (europäisch) Name[el]=Διαγώνιο led (Ευρώπη) Name[es]=LED diagonal (Europeo) Name[et]=Diagonaalne LED (Euroopa) Name[it]=LED diagonale (europeo) +Name[kk]=Диагональдық сәуледиод (Еуропалық) Name[nb]=Diagonal LED (DIN) Name[nds]=Dwars LED (europääsch) Name[nl]=Diagonale led (Europees) diff -Nru calligra-2.3.86/flow/stencils/Circuit2/dpcapacitor.desktop calligra-2.3.87/flow/stencils/Circuit2/dpcapacitor.desktop --- calligra-2.3.86/flow/stencils/Circuit2/dpcapacitor.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Circuit2/dpcapacitor.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -1,11 +1,13 @@ [Desktop Entry] Name=Diagonal Polarized Capacitor Name[ca]=Capacitador polaritzat diagonal +Name[ca@valencia]=Capacitador polaritzat diagonal Name[de]=Diagonaler gepolter Kondensator Name[el]=Διαγώνιος πολωμένος πυκνωτής Name[es]=Condensador diagonal polarizado Name[et]=Diagonaalne polariseeritud kondensaator Name[it]=Condensatore diagonale polarizzato +Name[kk]=Диагональдық үйектелген конденсатор Name[nb]=Diagonal polarisert kondensator Name[nds]=Dwars poolt Kondensator Name[nl]=Diagonale gepolariseerde condensator diff -Nru calligra-2.3.86/flow/stencils/Circuit2/dresistor_de.desktop calligra-2.3.87/flow/stencils/Circuit2/dresistor_de.desktop --- calligra-2.3.86/flow/stencils/Circuit2/dresistor_de.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Circuit2/dresistor_de.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -1,11 +1,13 @@ [Desktop Entry] Name=Diagonal Resistor (European) Name[ca]=Resistor diagonal (europeu) +Name[ca@valencia]=Resistor diagonal (europeu) Name[de]=Diagonaler Widerstand (europäisch) Name[el]=Διαγώνιος αντιστάτης (Ευρώπη) Name[es]=Resistor diagonal (Europeo) Name[et]=Diagonaalne takisti (Euroopa) Name[it]=Resistore diagonale (europeo) +Name[kk]=Диагональдық резистор (Еуропалық) Name[nb]=Diagonal motstand (DIN) Name[nds]=Dwars Wedderstand (europääsch) Name[nl]=Diagonale weerstand (Europees) diff -Nru calligra-2.3.86/flow/stencils/Circuit2/dresistor.desktop calligra-2.3.87/flow/stencils/Circuit2/dresistor.desktop --- calligra-2.3.86/flow/stencils/Circuit2/dresistor.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Circuit2/dresistor.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -1,11 +1,13 @@ [Desktop Entry] Name=Diagonal Resistor Name[ca]=Resistor diagonal +Name[ca@valencia]=Resistor diagonal Name[de]=Diagonaler Widerstand Name[el]=Διαγώνιος αντιστάτης Name[es]=Resistor diagonal Name[et]=Diagonaalne takisti Name[it]=Resistore diagonale +Name[kk]=Диагональдық резистор Name[nb]=Diagonal motstand Name[nds]=Dwars Wedderstand Name[nl]=Diagonale weerstand diff -Nru calligra-2.3.86/flow/stencils/Circuit2/dzener.desktop calligra-2.3.87/flow/stencils/Circuit2/dzener.desktop --- calligra-2.3.86/flow/stencils/Circuit2/dzener.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Circuit2/dzener.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -1,11 +1,13 @@ [Desktop Entry] Name=Diagonal Zener Diode Name[ca]=Dione Zener diagonal +Name[ca@valencia]=Dione Zener diagonal Name[de]=Diagonale Zener-Diode Name[el]=Διαγώνια δίοδος Zener Name[es]=Diodo Zener diagonal Name[et]=Diagonaalne tunneldiood Name[it]=Diodo Zener diagonale +Name[kk]=Диагональдық стабилитрон Name[nb]=Diagonal Zenerdiode Name[nds]=Dwars Zener-Diood Name[nl]=Diagonale zenerdiode diff -Nru calligra-2.3.86/flow/stencils/Circuit2/hammeter.desktop calligra-2.3.87/flow/stencils/Circuit2/hammeter.desktop --- calligra-2.3.86/flow/stencils/Circuit2/hammeter.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Circuit2/hammeter.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -1,10 +1,12 @@ [Desktop Entry] Name=Horizontal Ammeter Name[ca]=Amperímetre horitzontal +Name[ca@valencia]=Amperímetre horitzontal Name[el]=Οριζόντιο αμπερόμετρο Name[es]=Amperímetro horizontal Name[et]=Horisontaalne ampermeeter Name[it]=Amperometro orizzontale +Name[kk]=Жатық амперметр Name[nb]=Vannrett ampmeter Name[nds]=Kimmrecht Stroommeter Name[nl]=Horizontale ampèremeter diff -Nru calligra-2.3.86/flow/stencils/Circuit2/hpcapacitor.desktop calligra-2.3.87/flow/stencils/Circuit2/hpcapacitor.desktop --- calligra-2.3.86/flow/stencils/Circuit2/hpcapacitor.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Circuit2/hpcapacitor.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -1,11 +1,13 @@ [Desktop Entry] Name=Horizontal Polarized Capacitor Name[ca]=Capacitador polaritzar horitzontal +Name[ca@valencia]=Capacitador polaritzar horitzontal Name[de]=Waagerechter gepolter Kondensator Name[el]=Οριζόντιος πολωμένος πυκνωτής Name[es]=Condensador horizontal polarizado Name[et]=Horisontaalne polariseeritud kondensaator Name[it]=Condensatore orizzontale polarizzato +Name[kk]=Жатық үйектелген конденсатор Name[nb]=Vannrett polarisert kondensator Name[nds]=Kimmrecht poolt Kondensator Name[nl]=Horizontale gepolariseerde condensator diff -Nru calligra-2.3.86/flow/stencils/Circuit2/hvoltmeter.desktop calligra-2.3.87/flow/stencils/Circuit2/hvoltmeter.desktop --- calligra-2.3.86/flow/stencils/Circuit2/hvoltmeter.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Circuit2/hvoltmeter.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -1,11 +1,13 @@ [Desktop Entry] Name=Horizontal Voltmeter Name[ca]=Voltímetre horitzontal +Name[ca@valencia]=Voltímetre horitzontal Name[de]=Waagerechtes Voltmeter Name[el]=Οριζόντιο βολτόμετρο Name[es]=Voltímetro horizontal Name[et]=Horisontaalne voltmeeter Name[it]=Voltmetro orizzontale +Name[kk]=Жатық вольтметр Name[nb]=Vannrett voltmeter Name[nds]=Kimmrecht Spannungsmeter Name[nl]=Horizontale voltmeter diff -Nru calligra-2.3.86/flow/stencils/Circuit2/newhled.desktop calligra-2.3.87/flow/stencils/Circuit2/newhled.desktop --- calligra-2.3.86/flow/stencils/Circuit2/newhled.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Circuit2/newhled.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -1,11 +1,13 @@ [Desktop Entry] Name=Horizontal LED Name[ca]=LED horitzontal +Name[ca@valencia]=LED horitzontal Name[de]=Waagerechte LED Name[el]=Οριζόντιο LED Name[es]=LED horizontal Name[et]=Horisontaalne LED Name[it]=LED orizzontale +Name[kk]=Жатық сәуледиод Name[nb]=Vannrett LED (DIN) Name[nds]=Kimmrecht LED Name[nl]=Horizontale led diff -Nru calligra-2.3.86/flow/stencils/Circuit2/newvled.desktop calligra-2.3.87/flow/stencils/Circuit2/newvled.desktop --- calligra-2.3.86/flow/stencils/Circuit2/newvled.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Circuit2/newvled.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -1,11 +1,13 @@ [Desktop Entry] Name=Vertical LED Name[ca]=LED vertical +Name[ca@valencia]=LED vertical Name[de]=Senkrechte LED Name[el]=Κάθετο LED Name[es]=LED vertical Name[et]=Vertikaalne LED Name[it]=LED verticale +Name[kk]=Тік сәуледиод Name[nb]=Loddrett LED Name[nds]=Pielrecht LED Name[nl]=Verticale led diff -Nru calligra-2.3.86/flow/stencils/Circuit2/opto.desktop calligra-2.3.87/flow/stencils/Circuit2/opto.desktop --- calligra-2.3.86/flow/stencils/Circuit2/opto.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Circuit2/opto.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -1,10 +1,12 @@ [Desktop Entry] Name=Optoisolator Name[ca]=Optoisolador +Name[ca@valencia]=Optoisolador Name[de]=Optokoppler Name[es]=Optoaislador Name[et]=Optoisolaator Name[it]=Optoisolatore +Name[kk]=Оптрон Name[nb]=Optoisolator Name[nl]=Optoisolator Name[pl]=Optoizolator diff -Nru calligra-2.3.86/flow/stencils/Circuit2/ramp.desktop calligra-2.3.87/flow/stencils/Circuit2/ramp.desktop --- calligra-2.3.86/flow/stencils/Circuit2/ramp.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Circuit2/ramp.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -1,8 +1,11 @@ [Desktop Entry] Name=Ramp Wave Name[ca]=Ona de rampa +Name[ca@valencia]=Ona de rampa +Name[el]=Ramp Wave Name[et]=Saehammaslaine Name[it]=Onda a rampa +Name[kk]=Көлбеу ара-тісті толқын Name[nb]=Sagtannbølge Name[nl]=Zaagtandgolf Name[pl]=Fala piłowa diff -Nru calligra-2.3.86/flow/stencils/Circuit2/relay.desktop calligra-2.3.87/flow/stencils/Circuit2/relay.desktop --- calligra-2.3.86/flow/stencils/Circuit2/relay.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Circuit2/relay.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -1,9 +1,12 @@ [Desktop Entry] Name=Relay Name[ca]=Relé +Name[ca@valencia]=Relé Name[cs]=Přenos +Name[el]=Relay Name[et]=Relee Name[it]=Relé +Name[kk]=Реле Name[nb]=Rele Name[nds]=Relais Name[nl]=Doorgifte diff -Nru calligra-2.3.86/flow/stencils/Circuit2/sine.desktop calligra-2.3.87/flow/stencils/Circuit2/sine.desktop --- calligra-2.3.86/flow/stencils/Circuit2/sine.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Circuit2/sine.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -1,10 +1,13 @@ [Desktop Entry] Name=Sine Wave Name[ca]=Ona sinusoïdal +Name[ca@valencia]=Ona sinusoïdal Name[de]=Sinuswelle Name[el]=Ημιτονοειδές κύμα Name[et]=Siinuslaine +Name[hu]=Szinuszhullám Name[it]=Onda sinusoidale +Name[kk]=Синусоидалық толқын Name[nb]=Sinusbølge Name[nds]=Sinus Name[nl]=Sinusgolf diff -Nru calligra-2.3.86/flow/stencils/Circuit2/square.desktop calligra-2.3.87/flow/stencils/Circuit2/square.desktop --- calligra-2.3.86/flow/stencils/Circuit2/square.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Circuit2/square.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -1,10 +1,14 @@ [Desktop Entry] Name=Square Wave Name[ca]=Ona quadrada +Name[ca@valencia]=Ona quadrada Name[cs]=Obdélníková vlna Name[de]=Rechteckwelle +Name[el]=Square Wave Name[et]=Nelinurklaine +Name[hu]=Négyszögjel Name[it]=Onda quadra +Name[kk]=Тікбұрышты толқын Name[nb]=Firkantbølge Name[nds]=Rechteck Name[nl]=Blokgolf diff -Nru calligra-2.3.86/flow/stencils/Circuit2/triac.desktop calligra-2.3.87/flow/stencils/Circuit2/triac.desktop --- calligra-2.3.86/flow/stencils/Circuit2/triac.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Circuit2/triac.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -2,10 +2,13 @@ Name=TRIAC Name[bg]=TRIAC Name[ca]=TRIAC +Name[ca@valencia]=TRIAC Name[cs]=TRIAK Name[el]=TRIAC Name[et]=Sümistor +Name[hu]=TRIAC Name[it]=TRIAC +Name[kk]=Симистор Name[nb]=TRIAC Name[nds]=Triac Name[nl]=TRIAC diff -Nru calligra-2.3.86/flow/stencils/Circuit2/triangle.desktop calligra-2.3.87/flow/stencils/Circuit2/triangle.desktop --- calligra-2.3.86/flow/stencils/Circuit2/triangle.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Circuit2/triangle.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -1,10 +1,12 @@ [Desktop Entry] Name=Triangle Wave Name[ca]=Ona triangular +Name[ca@valencia]=Ona triangular Name[de]=Dreieckwelle Name[el]=Τριγωνικό κύμα Name[et]=Kolmnurklaine Name[it]=Onda triangolare +Name[kk]=Ара-тісті толқын Name[nb]=Trekantbølge Name[nds]=Saagtahn Name[nl]=Driehoekgolf diff -Nru calligra-2.3.86/flow/stencils/Circuit2/vammeter.desktop calligra-2.3.87/flow/stencils/Circuit2/vammeter.desktop --- calligra-2.3.86/flow/stencils/Circuit2/vammeter.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Circuit2/vammeter.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -1,9 +1,11 @@ [Desktop Entry] Name=Vertical Ammeter Name[ca]=Amperímetre vertical +Name[ca@valencia]=Amperímetre vertical Name[el]=Κάθετο αμπερόμετρο Name[et]=Vertikaalne ampermeeter Name[it]=Amperometro verticale +Name[kk]=Тік амперметр Name[nb]=Loddrett ampmeter Name[nds]=Pielrecht Stroommeter Name[nl]=Verticale ampèremeter diff -Nru calligra-2.3.86/flow/stencils/Circuit2/vpcapacitor.desktop calligra-2.3.87/flow/stencils/Circuit2/vpcapacitor.desktop --- calligra-2.3.86/flow/stencils/Circuit2/vpcapacitor.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Circuit2/vpcapacitor.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -1,10 +1,12 @@ [Desktop Entry] Name=Vertical Polarized Capacitor Name[ca]=Capacitador polaritzat vertical +Name[ca@valencia]=Capacitador polaritzat vertical Name[de]=Senkrechter gepolter Kondensator Name[el]=Κάθετος πολωμένος πυκνωτής Name[et]=Vertikaalne polariseeritud kondensaator Name[it]=Condensatore verticale polarizzato +Name[kk]=Тік үйектелген конденсатор Name[nb]=Loddrett polarisert kondensator Name[nds]=Pielrecht poolt Kondensator Name[nl]=Verticale gepolariseerde condensator diff -Nru calligra-2.3.86/flow/stencils/Circuit2/vvoltmeter.desktop calligra-2.3.87/flow/stencils/Circuit2/vvoltmeter.desktop --- calligra-2.3.86/flow/stencils/Circuit2/vvoltmeter.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Circuit2/vvoltmeter.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -1,10 +1,12 @@ [Desktop Entry] Name=Vertical Voltmeter Name[ca]=Voltímetre vertical +Name[ca@valencia]=Voltímetre vertical Name[de]=Sekrechtes Voltmeter Name[el]=Κάθετο βολτόμετρο Name[et]=Vertikaalne voltmeeter Name[it]=Voltmetro verticale +Name[kk]=Тік вольтметр Name[nb]=Loddrett voltmeter Name[nds]=Pielrecht Voltmeter Name[nl]=Verticale voltmeter diff -Nru calligra-2.3.86/flow/stencils/Cisco/1000.desktop calligra-2.3.87/flow/stencils/Cisco/1000.desktop --- calligra-2.3.86/flow/stencils/Cisco/1000.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Cisco/1000.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -2,11 +2,14 @@ Name=Cisco 1000 Name[bg]=Cisco 1000 Name[ca]=Cisco 1000 +Name[ca@valencia]=Cisco 1000 Name[cs]=Cisco 1000 Name[de]=Cisco 1000 Name[el]=Cisco 1000 Name[et]=Cisco 1000 +Name[hu]=Cisco 1000 Name[it]=Cisco 1000 +Name[kk]=Cisco 1000 Name[nb]=Cisco 1000 Name[nds]=Cisco 1000 Name[nl]=Cisco 1000 diff -Nru calligra-2.3.86/flow/stencils/Cisco/100baset_hub.desktop calligra-2.3.87/flow/stencils/Cisco/100baset_hub.desktop --- calligra-2.3.86/flow/stencils/Cisco/100baset_hub.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Cisco/100baset_hub.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -2,10 +2,12 @@ Name=100BaseT Hub Name[bg]=100BaseT хъб Name[ca]=100BaseT Hub +Name[ca@valencia]=100BaseT Hub Name[de]=100BaseT Hub Name[el]=100BaseT Hub Name[et]=100BaseT jaotur Name[it]=Hub 100BaseT +Name[kk]=100BaseT хабы Name[nb]=100BaseT Hub Name[nds]=100BaseT-Nettknütt Name[nl]=100BaseT Hub diff -Nru calligra-2.3.86/flow/stencils/Cisco/10700.desktop calligra-2.3.87/flow/stencils/Cisco/10700.desktop --- calligra-2.3.86/flow/stencils/Cisco/10700.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Cisco/10700.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -2,12 +2,15 @@ Name=10700 Name[bg]=10700 Name[ca]=10700 +Name[ca@valencia]=10700 Name[cs]=10700 Name[de]=10700 Name[el]=10700 Name[es]=10700 Name[et]=10700 +Name[hu]=10700 Name[it]=10700 +Name[kk]=10700 Name[nb]=10700 Name[nds]=10700 Name[nl]=10700 diff -Nru calligra-2.3.86/flow/stencils/Cisco/15200.desktop calligra-2.3.87/flow/stencils/Cisco/15200.desktop --- calligra-2.3.86/flow/stencils/Cisco/15200.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Cisco/15200.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -2,12 +2,15 @@ Name=15200 Name[bg]=15200 Name[ca]=15200 +Name[ca@valencia]=15200 Name[cs]=15200 Name[de]=15200 Name[el]=15200 Name[es]=15200 Name[et]=15200 +Name[hu]=15200 Name[it]=15200 +Name[kk]=15200 Name[nb]=15200 Name[nds]=15200 Name[nl]=15200 diff -Nru calligra-2.3.86/flow/stencils/Cisco/15800.desktop calligra-2.3.87/flow/stencils/Cisco/15800.desktop --- calligra-2.3.86/flow/stencils/Cisco/15800.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Cisco/15800.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -2,12 +2,15 @@ Name=15800 Name[bg]=15800 Name[ca]=15800 +Name[ca@valencia]=15800 Name[cs]=15800 Name[de]=15800 Name[el]=15800 Name[es]=15800 Name[et]=15800 +Name[hu]=15800 Name[it]=15800 +Name[kk]=15800 Name[nb]=15800 Name[nds]=15800 Name[nl]=15800 diff -Nru calligra-2.3.86/flow/stencils/Cisco/3174.desktop calligra-2.3.87/flow/stencils/Cisco/3174.desktop --- calligra-2.3.86/flow/stencils/Cisco/3174.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Cisco/3174.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -2,10 +2,12 @@ Name=3174 (desktop) cluster controller Name[bg]=3174 (настолен) контролер на клъстър Name[ca]=3174 (desktop) cluster controller +Name[ca@valencia]=3174 (desktop) cluster controller Name[de]=3174 (Desktop-)Cluster-Controller Name[el]=3174 (επιφάνειας εργασίας) ελεγκτής συστοιχίας Name[et]=3174 (töölaua) klastri kontroller Name[it]=3174 (desktop) cluster controller +Name[kk]=3174 (үстелдегі) кластер контроллері Name[nb]=3174 (bordmodell) klyngestyrer Name[nds]=3174 (Schriefdisch-) Hopenkontroller Name[nl]=3174 (bureaublad) clustercontroller diff -Nru calligra-2.3.86/flow/stencils/Cisco/3x74.desktop calligra-2.3.87/flow/stencils/Cisco/3x74.desktop --- calligra-2.3.86/flow/stencils/Cisco/3x74.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Cisco/3x74.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -2,10 +2,12 @@ Name=3X74 (floor) cluster controller Name[bg]=3X74 (floor) контролер за клъстър Name[ca]=3X74 (floor) cluster controller +Name[ca@valencia]=3X74 (floor) cluster controller Name[de]=3X74 (Boden-)Cluster-Controller Name[el]=3X74 (δαπέδου) ελεγκτής συστοιχίας Name[et]=3X74 klastri kontroller Name[it]=3X74 (floor) cluster controller +Name[kk]=3X74 (қабаттағы) кластер контроллері Name[nb]=3X74 (gulv) klyngestyrer Name[nds]=3X74 (Bodden-) Hopenkontroller Name[nl]=3X74 (floor) clustercontroller diff -Nru calligra-2.3.86/flow/stencils/Cisco/5000.desktop calligra-2.3.87/flow/stencils/Cisco/5000.desktop --- calligra-2.3.86/flow/stencils/Cisco/5000.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Cisco/5000.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -2,11 +2,13 @@ Name=Workgroup 5000 Name[bg]=Работна група 5000 Name[ca]=Workgroup 5000 +Name[ca@valencia]=Workgroup 5000 Name[cs]=Workgroup 5000 Name[de]=Workgroup 5000 Name[el]=Workgroup 5000 Name[et]=Workgroup 5000 Name[it]=Workgroup 5000 +Name[kk]=Workgroup 5000 Name[nb]=Arbeidsgruppe 5000 Name[nds]=Arbeidkoppel 5000 Name[nl]=Workgroup 5000 diff -Nru calligra-2.3.86/flow/stencils/Cisco/5002.desktop calligra-2.3.87/flow/stencils/Cisco/5002.desktop --- calligra-2.3.86/flow/stencils/Cisco/5002.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Cisco/5002.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -2,11 +2,13 @@ Name=Workgroup 5002 Name[bg]=Работна група 5002 Name[ca]=Workgroup 5002 +Name[ca@valencia]=Workgroup 5002 Name[cs]=Workgroup 5002 Name[de]=Workgroup 5002 Name[el]=Workgroup 5002 Name[et]=Workgroup 5002 Name[it]=Workgroup 5002 +Name[kk]=Workgroup 5002 Name[nb]=Arbeidsgruppe 5002 Name[nds]=Arbeidkoppel 5002 Name[nl]=Workgroup 5002 diff -Nru calligra-2.3.86/flow/stencils/Cisco/5500.desktop calligra-2.3.87/flow/stencils/Cisco/5500.desktop --- calligra-2.3.86/flow/stencils/Cisco/5500.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Cisco/5500.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -2,11 +2,13 @@ Name=Workgroup 5500 Name[bg]=Работна група 5500 Name[ca]=Workgroup 5500 +Name[ca@valencia]=Workgroup 5500 Name[cs]=Workgroup 5500 Name[de]=Workgroup 5500 Name[el]=Workgroup 5500 Name[et]=Workgroup 5500 Name[it]=Workgroup 5500 +Name[kk]=Workgroup 5500 Name[nb]=Arbeidsgruppe 500 Name[nds]=Arbeidkoppel 5500 Name[nl]=Workgroup 5500 diff -Nru calligra-2.3.86/flow/stencils/Cisco/6701.desktop calligra-2.3.87/flow/stencils/Cisco/6701.desktop --- calligra-2.3.86/flow/stencils/Cisco/6701.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Cisco/6701.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -2,12 +2,15 @@ Name=6701 Name[bg]=6701 Name[ca]=6701 +Name[ca@valencia]=6701 Name[cs]=6701 Name[de]=6701 Name[el]=6701 Name[es]=6701 Name[et]=6701 +Name[hu]=6701 Name[it]=6701 +Name[kk]=6701 Name[nb]=6701 Name[nds]=6701 Name[nl]=6701 diff -Nru calligra-2.3.86/flow/stencils/Cisco/6705.desktop calligra-2.3.87/flow/stencils/Cisco/6705.desktop --- calligra-2.3.86/flow/stencils/Cisco/6705.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Cisco/6705.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -2,12 +2,15 @@ Name=6705 Name[bg]=6705 Name[ca]=6705 +Name[ca@valencia]=6705 Name[cs]=6705 Name[de]=6705 Name[el]=6705 Name[es]=6705 Name[et]=6705 +Name[hu]=6705 Name[it]=6705 +Name[kk]=6705 Name[nb]=6705 Name[nds]=6705 Name[nl]=6705 diff -Nru calligra-2.3.86/flow/stencils/Cisco/6732.desktop calligra-2.3.87/flow/stencils/Cisco/6732.desktop --- calligra-2.3.86/flow/stencils/Cisco/6732.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Cisco/6732.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -2,12 +2,15 @@ Name=6732 Name[bg]=6732 Name[ca]=6732 +Name[ca@valencia]=6732 Name[cs]=6732 Name[de]=6732 Name[el]=6732 Name[es]=6732 Name[et]=6732 +Name[hu]=6732 Name[it]=6732 +Name[kk]=6732 Name[nb]=6732 Name[nds]=6732 Name[nl]=6732 diff -Nru calligra-2.3.86/flow/stencils/Cisco/7500ars.desktop calligra-2.3.87/flow/stencils/Cisco/7500ars.desktop --- calligra-2.3.86/flow/stencils/Cisco/7500ars.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Cisco/7500ars.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -1,9 +1,11 @@ [Desktop Entry] Name=7500ARS (7513) Router Name[ca]=Encaminador 7500ARS (7513) +Name[ca@valencia]=Encaminador 7500ARS (7513) Name[el]=7500ARS (7513) Router Name[et]=7500ARS (7513) ruuter Name[it]=7500ARS (7513) Router +Name[kk]=7500ARS (7513) маршуттауышы Name[nb]=7500ARS (7513) Ruter Name[nds]=7500ARS (7513) Nettweger Name[nl]=7500ARS (7513) Router diff -Nru calligra-2.3.86/flow/stencils/Cisco/7505.desktop calligra-2.3.87/flow/stencils/Cisco/7505.desktop --- calligra-2.3.86/flow/stencils/Cisco/7505.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Cisco/7505.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -1,10 +1,12 @@ [Desktop Entry] Name=7505 Router Name[ca]=Encaminador 7505 +Name[ca@valencia]=Encaminador 7505 Name[cs]=7505 Router Name[el]=7505 Router Name[et]=7505 ruuter Name[it]=7505 Router +Name[kk]=7505 маршруттауышы Name[nb]=7505 Ruter Name[nds]=7505 Nettweger Name[nl]=7505 Router diff -Nru calligra-2.3.86/flow/stencils/Cisco/7507.desktop calligra-2.3.87/flow/stencils/Cisco/7507.desktop --- calligra-2.3.86/flow/stencils/Cisco/7507.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Cisco/7507.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -1,10 +1,12 @@ [Desktop Entry] Name=7507 Router Name[ca]=Encaminador 7507 +Name[ca@valencia]=Encaminador 7507 Name[cs]=7507 Router Name[el]=7507 Router Name[et]=7507 ruuter Name[it]=7507 Router +Name[kk]=7507 маршруттауышы Name[nb]=7507 Ruter Name[nds]=7507 Nettweger Name[nl]=7507 Router diff -Nru calligra-2.3.86/flow/stencils/Cisco/access_gateway.desktop calligra-2.3.87/flow/stencils/Cisco/access_gateway.desktop --- calligra-2.3.86/flow/stencils/Cisco/access_gateway.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Cisco/access_gateway.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -1,11 +1,13 @@ [Desktop Entry] Name=Access Gateway Name[ca]=Passarel·la d'accés +Name[ca@valencia]=Passarel·la d'accés Name[cs]=Přístupová brána Name[de]=Access Gateway Name[el]=Πύλη πρόσβασης Name[et]=Pöörduslüüs Name[it]=Gateway d'accesso +Name[kk]=Қатынау шлюзі Name[nb]=Aksessportner Name[nds]=Togriep-Döörreekner Name[nl]=Access Gateway diff -Nru calligra-2.3.86/flow/stencils/Cisco/accesspoint.desktop calligra-2.3.87/flow/stencils/Cisco/accesspoint.desktop --- calligra-2.3.86/flow/stencils/Cisco/accesspoint.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Cisco/accesspoint.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -1,11 +1,13 @@ [Desktop Entry] Name=AccessPoint Name[ca]=PuntAccès +Name[ca@valencia]=PuntAccés Name[cs]=Přístupový bod Name[de]=AccessPoint Name[el]=Σημείο πρόσβασης Name[et]=Tugijaam Name[it]=AccessPoint +Name[kk]=Қатынау нүктесі Name[nb]=Aksesspunkt Name[nds]=Togrieppunkt Name[nl]=AccessPoint diff -Nru calligra-2.3.86/flow/stencils/Cisco/access_server.desktop calligra-2.3.87/flow/stencils/Cisco/access_server.desktop --- calligra-2.3.86/flow/stencils/Cisco/access_server.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Cisco/access_server.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -1,9 +1,11 @@ [Desktop Entry] Name=Access server Name[ca]=Servidor d'accés +Name[ca@valencia]=Servidor d'accés Name[el]=Εξυπηρετητής πρόσβασης Name[et]=Pöördusserver Name[it]=Server di accesso +Name[kk]=Қатынау сервері Name[nb]=Aksesstjener Name[nds]=Togriep-Server Name[nl]=Access-server diff -Nru calligra-2.3.86/flow/stencils/Cisco/adm.desktop calligra-2.3.87/flow/stencils/Cisco/adm.desktop --- calligra-2.3.86/flow/stencils/Cisco/adm.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Cisco/adm.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -2,10 +2,12 @@ Name=ADM Name[bg]=ADM Name[ca]=ADM +Name[ca@valencia]=ADM Name[de]=ADM Name[el]=ADM Name[et]=ADM Name[it]=ADM +Name[kk]=ADM Name[nb]=ADM Name[nds]=ADM Name[nl]=ADM diff -Nru calligra-2.3.86/flow/stencils/Cisco/androgynous_person.desktop calligra-2.3.87/flow/stencils/Cisco/androgynous_person.desktop --- calligra-2.3.86/flow/stencils/Cisco/androgynous_person.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Cisco/androgynous_person.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -1,10 +1,13 @@ [Desktop Entry] Name=Androgynous Person Name[ca]=Persona andrògina +Name[ca@valencia]=Persona andrògina Name[el]=Ανδρόγυνο Name[et]=Androgüün Name[it]=Persona androgina +Name[kk]=Жыныссыз тұлға Name[nb]=Androgyn person +Name[nl]=Androgyn persoon Name[pl]=Obojnacza osoba Name[pt]=Pessoa Andrógina Name[pt_BR]=Pessoa andrógena diff -Nru calligra-2.3.86/flow/stencils/Cisco/antenna.desktop calligra-2.3.87/flow/stencils/Cisco/antenna.desktop --- calligra-2.3.86/flow/stencils/Cisco/antenna.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Cisco/antenna.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -2,10 +2,12 @@ Name=Antenna Name[bg]=Антена Name[ca]=Antenna +Name[ca@valencia]=Antenna Name[de]=Antenne Name[el]=Κεραία Name[et]=Antenn Name[it]=Antenna +Name[kk]=Антенна Name[nb]=Antenne Name[nds]=Antenn Name[nl]=Antenne diff -Nru calligra-2.3.86/flow/stencils/Cisco/asic.desktop calligra-2.3.87/flow/stencils/Cisco/asic.desktop --- calligra-2.3.86/flow/stencils/Cisco/asic.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Cisco/asic.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -2,11 +2,13 @@ Name=ASIC Processor Name[bg]=Процесор ASIC Name[ca]=Processador ASIC +Name[ca@valencia]=Processador ASIC Name[cs]=Procesor ASIC Name[de]=ASIC-Prozessor Name[el]=Επεξεργαστής ASIC Name[et]=ASIC protsessor Name[it]=Processore ASIC +Name[kk]=ASIC процесоры Name[nb]=ASIC-prosessor Name[nds]=ASIC-Perzesser Name[nl]=ASIC-processor diff -Nru calligra-2.3.86/flow/stencils/Cisco/ata.desktop calligra-2.3.87/flow/stencils/Cisco/ata.desktop --- calligra-2.3.86/flow/stencils/Cisco/ata.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Cisco/ata.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -2,10 +2,12 @@ Name=ATA Name[bg]=ATA Name[ca]=ATA +Name[ca@valencia]=ATA Name[de]=ATA Name[el]=ATA Name[et]=ATA Name[it]=ATA +Name[kk]=ATA Name[nb]=ATA Name[nds]=ATA Name[nl]=ATA diff -Nru calligra-2.3.86/flow/stencils/Cisco/atm3800.desktop calligra-2.3.87/flow/stencils/Cisco/atm3800.desktop --- calligra-2.3.86/flow/stencils/Cisco/atm3800.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Cisco/atm3800.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -2,11 +2,13 @@ Name=ATM 3800 Name[bg]=ATM 3800 Name[ca]=ATM 3800 +Name[ca@valencia]=ATM 3800 Name[cs]=ATM 3800 Name[de]=ATM 3800 Name[el]=ATM 3800 Name[et]=ATM 3800 Name[it]=ATM 3800 +Name[kk]=ATM 3800 Name[nb]=ATM 3800 Name[nds]=ATM 3800 Name[nl]=ATM 3800 diff -Nru calligra-2.3.86/flow/stencils/Cisco/atm_fast_gigabit_etherswitch.desktop calligra-2.3.87/flow/stencils/Cisco/atm_fast_gigabit_etherswitch.desktop --- calligra-2.3.86/flow/stencils/Cisco/atm_fast_gigabit_etherswitch.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Cisco/atm_fast_gigabit_etherswitch.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -2,10 +2,12 @@ Name=ATM Fast Gigabit Etherswitch Name[bg]=Бърз гигабит етернет комутатор ATM Name[ca]=ATM Fast Gigabit Etherswitch +Name[ca@valencia]=ATM Fast Gigabit Etherswitch Name[de]=ATM-Fast-Gigabit-Ether-Switch Name[el]=ATM Fast Gigabit Etherswitch Name[et]=ATM kiire gigabit-ethernetikommutaator Name[it]=ATM Fast Gigabit Etherswitch +Name[kk]=Жылдам гигабиттік ATM Etherswitch Name[nb]=ATM rask gigabit ethersvitsj Name[nds]=ATM-Fast-Gigabit-Etherswitch Name[nl]=ATM Fast Gigabit Etherswitch diff -Nru calligra-2.3.86/flow/stencils/Cisco/atm_router.desktop calligra-2.3.87/flow/stencils/Cisco/atm_router.desktop --- calligra-2.3.86/flow/stencils/Cisco/atm_router.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Cisco/atm_router.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -2,10 +2,12 @@ Name=ATM Router Name[bg]=Маршрутизатор ATM Name[ca]=Encaminador ATM +Name[ca@valencia]=Encaminador ATM Name[de]=ATM-Router Name[el]=Δρομολογητής ATM Name[et]=ATM marsruuter Name[it]=ATM Router +Name[kk]=ATM маршруттауышы Name[nb]=ATM-ruter Name[nds]=ATM-Nettweger Name[nl]=ATM-router diff -Nru calligra-2.3.86/flow/stencils/Cisco/atm_switch.desktop calligra-2.3.87/flow/stencils/Cisco/atm_switch.desktop --- calligra-2.3.86/flow/stencils/Cisco/atm_switch.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Cisco/atm_switch.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -2,10 +2,12 @@ Name=ATM Switch Name[bg]=Комутатор ATM Name[ca]=ATM Switch +Name[ca@valencia]=ATM Switch Name[de]=ATM-Switch Name[el]=Μεταγωγέας ATM Name[et]=ATM kommutaator Name[it]=ATM Switch +Name[kk]=ATM косқышы Name[nb]=ATM-svitsj Name[nds]=ATM-Ümschalter Name[nl]=ATM-switch diff -Nru calligra-2.3.86/flow/stencils/Cisco/atm_tag_switch_router.desktop calligra-2.3.87/flow/stencils/Cisco/atm_tag_switch_router.desktop --- calligra-2.3.86/flow/stencils/Cisco/atm_tag_switch_router.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Cisco/atm_tag_switch_router.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -2,9 +2,11 @@ Name=ATM Tag Switch Router Name[bg]=Комутиращ маршрутизатор ATM Name[ca]=Encaminador commutador ATM Tag +Name[ca@valencia]=Encaminador commutador ATM Tag Name[el]=ATM Tag Switch Router Name[et]=ATM Tag kommutaator-marsruuter Name[it]=ATM Tag Switch Router +Name[kk]=ATM Tag қосқыш маршруттауышы Name[nb]=ATM taggsvitsj-ruter Name[nds]=Ümschalt-Nettweger "ATM-Tag" Name[nl]=ATM Tag Switch Router diff -Nru calligra-2.3.86/flow/stencils/Cisco/automatic_protection_switching.desktop calligra-2.3.87/flow/stencils/Cisco/automatic_protection_switching.desktop --- calligra-2.3.86/flow/stencils/Cisco/automatic_protection_switching.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Cisco/automatic_protection_switching.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -1,11 +1,14 @@ [Desktop Entry] Name=Automatic Protection Switching Name[ca]=Automatic Protection Switching +Name[ca@valencia]=Automatic Protection Switching Name[el]=Μεταγωγή αυτόματης προστασίας Name[et]=Automaatkaitsekommutatsioon Name[it]=Automatic Protection Switching +Name[kk]=Авто қоғау қосқышы Name[nb]=Automatisk beskyttelsesomkopling Name[nds]=Automaatsch Schuulschaltung +Name[nl]=Automatisch omschakelen voor bescherming Name[pl]=Automatyczna ochrona przełączania Name[pt]=Comutação de Protecção Automática Name[pt_BR]=Comutador de proteção automática diff -Nru calligra-2.3.86/flow/stencils/Cisco/bbfw.desktop calligra-2.3.87/flow/stencils/Cisco/bbfw.desktop --- calligra-2.3.86/flow/stencils/Cisco/bbfw.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Cisco/bbfw.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -2,10 +2,12 @@ Name=BBFW Name[bg]=BBFW Name[ca]=BBFW +Name[ca@valencia]=BBFW Name[de]=BBFW Name[el]=BBFW Name[et]=BBFW Name[it]=BBFW +Name[kk]=BBFW Name[nb]=BBFW Name[nds]=BBFW Name[nl]=BBFW diff -Nru calligra-2.3.86/flow/stencils/Cisco/bbfw_media.desktop calligra-2.3.87/flow/stencils/Cisco/bbfw_media.desktop --- calligra-2.3.86/flow/stencils/Cisco/bbfw_media.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Cisco/bbfw_media.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -2,10 +2,12 @@ Name=BBFW media Name[bg]=Среда BBFW Name[ca]=BBFW media +Name[ca@valencia]=BBFW media Name[de]=BBFW-Media Name[el]=BBFW media Name[et]=BBFW meedium Name[it]=BBFW media +Name[kk]=BBFW тасушысы Name[nb]=BBFW-media Name[nds]=BBFW-Medien Name[nl]=BBFW media diff -Nru calligra-2.3.86/flow/stencils/Cisco/bbs.desktop calligra-2.3.87/flow/stencils/Cisco/bbs.desktop --- calligra-2.3.86/flow/stencils/Cisco/bbs.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Cisco/bbs.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -2,10 +2,12 @@ Name=BBS Name[bg]=BBS Name[ca]=BBS +Name[ca@valencia]=BBS Name[de]=BBS Name[el]=BBS Name[et]=BBS Name[it]=BBS +Name[kk]=BBS Name[nb]=BBS Name[nds]=BBS Name[nl]=BBS diff -Nru calligra-2.3.86/flow/stencils/Cisco/bbsm.desktop calligra-2.3.87/flow/stencils/Cisco/bbsm.desktop --- calligra-2.3.86/flow/stencils/Cisco/bbsm.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Cisco/bbsm.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -2,10 +2,12 @@ Name=BBSM Name[bg]=BBSM Name[ca]=BBSM +Name[ca@valencia]=BBSM Name[de]=BBSM Name[el]=BBSM Name[et]=BBSM Name[it]=BBSM +Name[kk]=BBSM Name[nb]=BBSM Name[nds]=BBSM Name[nl]=BBSM diff -Nru calligra-2.3.86/flow/stencils/Cisco/branch_office_blue.desktop calligra-2.3.87/flow/stencils/Cisco/branch_office_blue.desktop --- calligra-2.3.86/flow/stencils/Cisco/branch_office_blue.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Cisco/branch_office_blue.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -1,8 +1,11 @@ [Desktop Entry] Name=Branch office blue Name[ca]=Branca d'oficina blava +Name[ca@valencia]=Branca d'oficina blava +Name[el]=Branch office blue Name[et]=Sinine harukontor Name[it]=Succursale blu +Name[kk]=Көк филиал кеңсесі Name[nb]=Filialkontor blå Name[nl]=Bijkantoor blauw Name[pl]=Biuro oddziału niebieskie diff -Nru calligra-2.3.86/flow/stencils/Cisco/branch_office.desktop calligra-2.3.87/flow/stencils/Cisco/branch_office.desktop --- calligra-2.3.86/flow/stencils/Cisco/branch_office.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Cisco/branch_office.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -2,8 +2,11 @@ Name=Branch office Name[bg]=Клон на офис Name[ca]=Branca d'oficina +Name[ca@valencia]=Branca d'oficina +Name[el]=Branch office Name[et]=Harukontor Name[it]=Succursale +Name[kk]=Филиал кеңсесі Name[nb]=Filialkontor Name[nds]=Branch-Kontoor Name[nl]=Bijkantoor diff -Nru calligra-2.3.86/flow/stencils/Cisco/branch_office_subdued.desktop calligra-2.3.87/flow/stencils/Cisco/branch_office_subdued.desktop --- calligra-2.3.86/flow/stencils/Cisco/branch_office_subdued.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Cisco/branch_office_subdued.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -1,7 +1,10 @@ [Desktop Entry] Name=Branch office subdued Name[ca]=Branca d'oficina sotmesa +Name[ca@valencia]=Branca d'oficina sotmesa +Name[el]=Branch office subdued Name[et]=Toonita harukontor +Name[kk]=Басыңқы филиал кеңсесі Name[nb]=Filialkontor blå dempet Name[nl]=Ondergeschikt bijkantoor Name[pl]=Biuro oddziału podległe diff -Nru calligra-2.3.86/flow/stencils/Cisco/breakout_box.desktop calligra-2.3.87/flow/stencils/Cisco/breakout_box.desktop --- calligra-2.3.86/flow/stencils/Cisco/breakout_box.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Cisco/breakout_box.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -1,10 +1,14 @@ [Desktop Entry] Name=Breakout box Name[ca]=Breakout box +Name[ca@valencia]=Breakout box +Name[el]=Breakout box Name[et]=Jaoturkarp Name[it]=Breakout box +Name[kk]=Түйістіргіштер блогі Name[nb]=Koblingsboks Name[nds]=Breakout-Kist +Name[nl]=Breakout-box Name[pl]=Tester Name[pt]=Caixa quebra Name[pt_BR]=Caixa quebra diff -Nru calligra-2.3.86/flow/stencils/Cisco/bridge.desktop calligra-2.3.87/flow/stencils/Cisco/bridge.desktop --- calligra-2.3.86/flow/stencils/Cisco/bridge.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Cisco/bridge.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -2,11 +2,13 @@ Name=Bridge Name[bg]=Мост Name[ca]=Pont +Name[ca@valencia]=Pont Name[cs]=Most Name[de]=Brücke Name[el]=Γέφυρα Name[et]=Sild Name[it]=Bridge +Name[kk]=Көпір Name[nb]=Bru Name[nds]=Brüch Name[nl]=Bridge diff -Nru calligra-2.3.86/flow/stencils/Cisco/broadband_router.desktop calligra-2.3.87/flow/stencils/Cisco/broadband_router.desktop --- calligra-2.3.86/flow/stencils/Cisco/broadband_router.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Cisco/broadband_router.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -2,10 +2,12 @@ Name=Broadband router Name[bg]=Широколентов маршрутизатор Name[ca]=Encaminador de banda ampla +Name[ca@valencia]=Encaminador de banda ampla Name[de]=Breitband-Router Name[el]=Ευρυζωνικός δρομολογητής Name[et]=Ruuter Name[it]=Router a banda larga +Name[kk]=Кеңжолақты маршруттауышы Name[nb]=Bredbåndsruter Name[nds]=Breedband-Nettweger Name[nl]=Breedbandrouter diff -Nru calligra-2.3.86/flow/stencils/Cisco/bts10200.desktop calligra-2.3.87/flow/stencils/Cisco/bts10200.desktop --- calligra-2.3.86/flow/stencils/Cisco/bts10200.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Cisco/bts10200.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -2,10 +2,12 @@ Name=BTS 10200 Name[bg]=BTS 10200 Name[ca]=BTS 10200 +Name[ca@valencia]=BTS 10200 Name[de]=BTS 10200 Name[el]=BTS 10200 Name[et]=BTS 10200 Name[it]=BTS 10200 +Name[kk]=BTS 10200 Name[nb]=BTS 10200 Name[nds]=BTS 10200 Name[nl]=BTS 10200 diff -Nru calligra-2.3.86/flow/stencils/Cisco/cable_modem.desktop calligra-2.3.87/flow/stencils/Cisco/cable_modem.desktop --- calligra-2.3.86/flow/stencils/Cisco/cable_modem.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Cisco/cable_modem.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -2,11 +2,13 @@ Name=Cable Modem Name[bg]=Кабелен модем Name[ca]=Cable Modem +Name[ca@valencia]=Cable Modem Name[de]=Kabelmodem Name[el]=Καλωδιακό μόντεμ Name[es]=Cable Módem Name[et]=Kaablimodem Name[it]=Modem via cavo +Name[kk]=Кабелдік модем Name[nb]=Kabelmodem Name[nds]=Kavelmodem Name[nl]=Kabelmodem diff -Nru calligra-2.3.86/flow/stencils/Cisco/ca.desktop calligra-2.3.87/flow/stencils/Cisco/ca.desktop --- calligra-2.3.86/flow/stencils/Cisco/ca.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Cisco/ca.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -2,10 +2,12 @@ Name=Cisco CA Name[bg]=Cisco CA Name[ca]=Cisco CA +Name[ca@valencia]=Cisco CA Name[de]=Cisco CA Name[el]=Cisco CA Name[et]=Cisco CA Name[it]=Cisco CA +Name[kk]=Cisco CA Name[nb]=Cisco CA Name[nds]=Cisco-ZA Name[nl]=Cisco CA diff -Nru calligra-2.3.86/flow/stencils/Cisco/callmanager.desktop calligra-2.3.87/flow/stencils/Cisco/callmanager.desktop --- calligra-2.3.86/flow/stencils/Cisco/callmanager.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Cisco/callmanager.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -2,12 +2,15 @@ Name=CallManager Name[bg]=Управление на обаждания Name[ca]=CallManager +Name[ca@valencia]=CallManager Name[de]=CallManager Name[el]=CallManager Name[et]=CallManager Name[it]=CallManager +Name[kk]=Қоңырау соғу менеджері Name[nb]=Oppringingshåndtering Name[nds]=Anroop-Pleger +Name[nl]=CallManager Name[pl]=MenadżerDzwonienia Name[pt]=Gestor de Chamadas Name[pt_BR]=Gerenciador de chamadas diff -Nru calligra-2.3.86/flow/stencils/Cisco/car.desktop calligra-2.3.87/flow/stencils/Cisco/car.desktop --- calligra-2.3.86/flow/stencils/Cisco/car.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Cisco/car.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -2,11 +2,14 @@ Name=Car Name[bg]=Кола Name[ca]=Cotxe +Name[ca@valencia]=Cotxe Name[cs]=Auto +Name[de]=Auto Name[el]=Car Name[es]=Coche Name[et]=Auto Name[it]=Automobile +Name[kk]=Машина Name[nb]=Bil Name[nds]=Auto Name[nl]=Auto diff -Nru calligra-2.3.86/flow/stencils/Cisco/carrier_routing_system.desktop calligra-2.3.87/flow/stencils/Cisco/carrier_routing_system.desktop --- calligra-2.3.86/flow/stencils/Cisco/carrier_routing_system.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Cisco/carrier_routing_system.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -1,9 +1,12 @@ [Desktop Entry] Name=Carrier Routing System Name[ca]=Carrier Routing System +Name[ca@valencia]=Carrier Routing System Name[et]=Carrier Routing System Name[it]=Sistema instradamento carrier +Name[kk]=Тасушыны маршруттау жүйесі Name[nb]=Carrier Routing System +Name[nl]=Carrier-routingsysteem Name[pl]=Carrier Routing System Name[pt]=Sistema Encaminhamento Portadoras Name[pt_BR]=Sistema de roteamento de portadoras diff -Nru calligra-2.3.86/flow/stencils/Cisco/catalyst_access_gateway.desktop calligra-2.3.87/flow/stencils/Cisco/catalyst_access_gateway.desktop --- calligra-2.3.86/flow/stencils/Cisco/catalyst_access_gateway.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Cisco/catalyst_access_gateway.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -2,11 +2,14 @@ Name=Catalyst Access Gateway Name[bg]=Шлюз за достъп Catalyst Name[ca]=Catalyst Access Gateway +Name[ca@valencia]=Catalyst Access Gateway Name[de]=Catalyst-Access-Gateway Name[et]=Catalysti pöörduslüüs Name[it]=Gateway d'accesso Cisco +Name[kk]=Catalyst қатынау шлюзі Name[nb]=Catalyst aksessportner Name[nds]=Togriep-Döörreekner "Catalyst" +Name[nl]=Catalyst-access-gateway Name[pl]=Bramka dostępowa Catalyst Name[pt]='Gateway' Acesso Catalyst Name[pt_BR]=Gateway de acesso Catalyst diff -Nru calligra-2.3.86/flow/stencils/Cisco/cddi_fddi_concentrator.desktop calligra-2.3.87/flow/stencils/Cisco/cddi_fddi_concentrator.desktop --- calligra-2.3.86/flow/stencils/Cisco/cddi_fddi_concentrator.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Cisco/cddi_fddi_concentrator.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -2,10 +2,12 @@ Name=CDDI-FDDI Name[bg]=CDDI-FDDI Name[ca]=CDDI-FDDI +Name[ca@valencia]=CDDI-FDDI Name[de]=CDDI-FDDI Name[el]=CDDI-FDDI Name[et]=CDDI-FDDI Name[it]=CDDI-FDDI +Name[kk]=CDDI-FDDI Name[nb]=CDDI-FDDI Name[nds]=CDDI-FDDI Name[nl]=CDDI-FDDI diff -Nru calligra-2.3.86/flow/stencils/Cisco/cdm.desktop calligra-2.3.87/flow/stencils/Cisco/cdm.desktop --- calligra-2.3.86/flow/stencils/Cisco/cdm.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Cisco/cdm.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -2,12 +2,15 @@ Name=CDM Content Distribution Manager Name[bg]=Управление за разпределяне на съдържанието CDM Name[ca]=CDM Content Distribution Manager +Name[ca@valencia]=CDM Content Distribution Manager Name[de]=CDM Content-Distribution-Manager Name[el]=CDM Διαχειριστής διανομής περιεχομένου Name[et]=CDM (Content Distribution Manager) Name[it]=CDM Content Distribution Manager +Name[kk]=CDM (Мазмұнды үлестіру менеджері) Name[nb]=CDM Styring av innholdsdistribusjon Name[nds]=CDM Inholtverdeel-Pleger +Name[nl]=CDM Content Distribution Manager Name[pl]=Menadżer dystrybucji treści (CDM) Name[pt]=Gestor Distribuição Conteúdos CDM Name[pt_BR]=Gerenciador de distribuição de conteúdo (CDM) diff -Nru calligra-2.3.86/flow/stencils/Cisco/cellular_phone.desktop calligra-2.3.87/flow/stencils/Cisco/cellular_phone.desktop --- calligra-2.3.86/flow/stencils/Cisco/cellular_phone.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Cisco/cellular_phone.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -2,11 +2,13 @@ Name=Cellular phone Name[bg]=Клетъчен телефон Name[ca]=Telèfon mòbil +Name[ca@valencia]=Telèfon mòbil Name[de]=Handy Name[el]=Κινητό τηλέφωνο Name[es]=Teléfono móvil Name[et]=Mobiiltelefon Name[it]=Telefono cellulare +Name[kk]=Ұялы телефон Name[nb]=Mobiltelefon Name[nds]=Mobiltelefoon Name[nl]=Mobiele telefoon diff -Nru calligra-2.3.86/flow/stencils/Cisco/centri_firewall.desktop calligra-2.3.87/flow/stencils/Cisco/centri_firewall.desktop --- calligra-2.3.86/flow/stencils/Cisco/centri_firewall.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Cisco/centri_firewall.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -2,10 +2,12 @@ Name=Centri Firewall Name[bg]=Защитна стена Centri Name[ca]=Tallafocs Centri +Name[ca@valencia]=Tallafocs Centri Name[de]=Centri-Firewall Name[el]=Centri Firewall Name[et]=Centri tulemüür Name[it]=Centri Firewall +Name[kk]=Centri желіаралық қалқан Name[nb]=Centri brannmur Name[nds]=Centri-Nettdiek Name[nl]=Centri Firewall diff -Nru calligra-2.3.86/flow/stencils/Cisco/channelized_pipe.desktop calligra-2.3.87/flow/stencils/Cisco/channelized_pipe.desktop --- calligra-2.3.86/flow/stencils/Cisco/channelized_pipe.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Cisco/channelized_pipe.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -1,10 +1,13 @@ [Desktop Entry] Name=Channelized Pipe Name[ca]=Canonada canalitzada +Name[ca@valencia]=Canonada canalitzada Name[el]=Κατευθυνόμενος αγωγός Name[et]=Mitme kanaliga toru Name[it]=Tubo canalizzato +Name[kk]=Арна құбыры Name[nb]=Kanalisert ledning +Name[nl]=Pijp met kanalen Name[pl]=Skanałowany kanał informacji Name[pt]=Tubo em Canal Name[pt_BR]=Tubo canalizado diff -Nru calligra-2.3.86/flow/stencils/Cisco/cisco_hub.desktop calligra-2.3.87/flow/stencils/Cisco/cisco_hub.desktop --- calligra-2.3.86/flow/stencils/Cisco/cisco_hub.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Cisco/cisco_hub.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -2,11 +2,13 @@ Name=Cisco Hub Name[bg]=Хъб Cisco Name[ca]=Cisco Hub +Name[ca@valencia]=Cisco Hub Name[cs]=Cisco - Hub Name[de]=Cisco Hub Name[el]=Cisco Hub Name[et]=Cisco jaotur Name[it]=Hub Cisco +Name[kk]=Cisco хабы Name[nb]=Cisco Hub Name[nds]=Cisco-Nettknütt Name[nl]=Cisco Hub diff -Nru calligra-2.3.86/flow/stencils/Cisco/ciscosecurity.desktop calligra-2.3.87/flow/stencils/Cisco/ciscosecurity.desktop --- calligra-2.3.86/flow/stencils/Cisco/ciscosecurity.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Cisco/ciscosecurity.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -2,10 +2,12 @@ Name=CiscoSecurity Name[bg]=CiscoSecurity Name[ca]=CiscoSecurity +Name[ca@valencia]=CiscoSecurity Name[de]=CiscoSecurity Name[el]=CiscoSecurity Name[et]=CiscoSecurity Name[it]=CiscoSecurity +Name[kk]=CiscoSecurity Name[nb]=CiscoSecurity Name[nds]=Cisco-Sekerheit Name[nl]=CiscoSecurity diff -Nru calligra-2.3.86/flow/stencils/Cisco/ciscoworks.desktop calligra-2.3.87/flow/stencils/Cisco/ciscoworks.desktop --- calligra-2.3.86/flow/stencils/Cisco/ciscoworks.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Cisco/ciscoworks.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -2,10 +2,12 @@ Name=CiscoWorks workstation Name[bg]=Работна станция CiscoWorks Name[ca]=Estació de treball CiscoWorks +Name[ca@valencia]=Estació de treball CiscoWorks Name[de]=CiscoWorks-Workstation Name[el]=Σταθμός εργασίας CiscoWorks Name[et]=CiscoWorks tööjaam Name[it]=CiscoWorks Workstation +Name[kk]=CiscoWorks жұмыс станциясы Name[nb]=CiscoWorks arbeidsstasjon Name[nds]="CiscoWorks"-Workstation Name[nl]=CiscoWorks workstation diff -Nru calligra-2.3.86/flow/stencils/Cisco/ciscoworks_man.desktop calligra-2.3.87/flow/stencils/Cisco/ciscoworks_man.desktop --- calligra-2.3.86/flow/stencils/Cisco/ciscoworks_man.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Cisco/ciscoworks_man.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -1,9 +1,11 @@ [Desktop Entry] Name=CiscoWorks Man Name[ca]=CiscoWorks Man +Name[ca@valencia]=CiscoWorks Man Name[el]=CiscoWorks Man Name[et]=CiscoWorks inimene Name[it]=CiscoWorks Uomo +Name[kk]=CiscoWorks адамы Name[nb]=CiscoWorks mann Name[nds]="CiscoWorks"-Keerl Name[nl]=CiscoWorks Man diff -Nru calligra-2.3.86/flow/stencils/Cisco/class45_switch.desktop calligra-2.3.87/flow/stencils/Cisco/class45_switch.desktop --- calligra-2.3.86/flow/stencils/Cisco/class45_switch.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Cisco/class45_switch.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -2,10 +2,12 @@ Name=Class 4/5 switch Name[bg]=Комутатор клас 4/5 Name[ca]=Class 4/5 switch +Name[ca@valencia]=Class 4/5 switch Name[de]=Switch der Klasse 4/5 Name[el]=Class 4/5 switch Name[et]=Klass 4/5 kommutaator Name[it]=Switch classe 4/5 +Name[kk]=Класы 4/5 қосқыш Name[nb]=Klasse 4(5 svitsj Name[nds]=Ümschalter Klass 4/5 Name[nl]=Class 4/5 switch diff -Nru calligra-2.3.86/flow/stencils/Cisco/cloud_dark.desktop calligra-2.3.87/flow/stencils/Cisco/cloud_dark.desktop --- calligra-2.3.86/flow/stencils/Cisco/cloud_dark.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Cisco/cloud_dark.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -1,10 +1,13 @@ [Desktop Entry] Name=Cloud Dark Name[ca]=Núvol fosc +Name[ca@valencia]=Núvol fosc Name[el]=Νέφος σκούρο Name[et]=Tume pilv Name[it]=Nuvola scura +Name[kk]=Күнгірт бұлт Name[nb]=Sky mørk +Name[nl]=Donkere wolk Name[pl]=Chmura ciemna Name[pt]=Nuvem Escura Name[pt_BR]=Nuvem negra diff -Nru calligra-2.3.86/flow/stencils/Cisco/cloud.desktop calligra-2.3.87/flow/stencils/Cisco/cloud.desktop --- calligra-2.3.86/flow/stencils/Cisco/cloud.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Cisco/cloud.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -1,14 +1,16 @@ [Desktop Entry] Name=Cloud Name[ca]=Núvol +Name[ca@valencia]=Núvol Name[cs]=Cloud Name[el]=Νέφος Name[et]=Pilv Name[ga]=Cloud Name[it]=Nuvola +Name[kk]=Бұлт Name[nb]=Sky Name[nds]=Wulk -Name[nl]=Cloud +Name[nl]=Wolk Name[pl]=Chmura Name[pt]=Nuvem Name[pt_BR]=Nuvem diff -Nru calligra-2.3.86/flow/stencils/Cisco/cloud_gold.desktop calligra-2.3.87/flow/stencils/Cisco/cloud_gold.desktop --- calligra-2.3.86/flow/stencils/Cisco/cloud_gold.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Cisco/cloud_gold.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -1,10 +1,13 @@ [Desktop Entry] Name=Cloud Gold Name[ca]=Núvol daurat +Name[ca@valencia]=Núvol daurat Name[el]=Νέφος χρυσό Name[et]=Kuldne pilv Name[it]=Nuvola dorata +Name[kk]=Алтын бұлт Name[nb]=Sky gullen +Name[nl]=Gouden wolk Name[pl]=Chmura złota Name[pt]=Nuvem Dourada Name[pt_BR]=Nuvem dourada diff -Nru calligra-2.3.86/flow/stencils/Cisco/cloud_white.desktop calligra-2.3.87/flow/stencils/Cisco/cloud_white.desktop --- calligra-2.3.86/flow/stencils/Cisco/cloud_white.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Cisco/cloud_white.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -1,11 +1,14 @@ [Desktop Entry] Name=Cloud White Name[ca]=Núvol blanc +Name[ca@valencia]=Núvol blanc Name[el]=Νέφος λευκό Name[et]=Valge pilv Name[it]=Nuvola bianca +Name[kk]=Ақ бұлт Name[nb]=Sky hvit Name[nds]=Witt Wulk +Name[nl]=Witte wolk Name[pl]=Chmura biała Name[pt]=Nuvem Branca Name[pt_BR]=Nuvem branca diff -Nru calligra-2.3.86/flow/stencils/Cisco/collection.desktop calligra-2.3.87/flow/stencils/Cisco/collection.desktop --- calligra-2.3.86/flow/stencils/Cisco/collection.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Cisco/collection.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -2,12 +2,14 @@ Name=Cisco Name[bg]=Cisco Name[ca]=Cisco +Name[ca@valencia]=Cisco Name[cs]=Cisco Name[de]=Cisco Name[el]=Cisco Name[es]=Cisco Name[et]=Cisco Name[it]=Cisco +Name[kk]=Cisco Name[nb]=Cisco Name[nds]=Cisco Name[nl]=Cisco diff -Nru calligra-2.3.86/flow/stencils/Cisco/communications_server.desktop calligra-2.3.87/flow/stencils/Cisco/communications_server.desktop --- calligra-2.3.86/flow/stencils/Cisco/communications_server.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Cisco/communications_server.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -2,10 +2,12 @@ Name=Communications server Name[bg]=Комуникационен сървър Name[ca]=Servidor de comunicacions +Name[ca@valencia]=Servidor de comunicacions Name[el]=Εξυπηρετητής επικοινωνιών Name[es]=Servidor de comunicaciones Name[et]=Kommunikatsiooniserver Name[it]=Server di comunicazioni +Name[kk]=Байланс сервері Name[nb]=Kommunikasjonstjener Name[nds]=Kommunikatschoon-Server Name[nl]=Communicatieserver diff -Nru calligra-2.3.86/flow/stencils/Cisco/concatenated_payload.desktop calligra-2.3.87/flow/stencils/Cisco/concatenated_payload.desktop --- calligra-2.3.86/flow/stencils/Cisco/concatenated_payload.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Cisco/concatenated_payload.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -1,10 +1,13 @@ [Desktop Entry] Name=Concatenated Payload Name[ca]=Càrrega útil concatenada +Name[ca@valencia]=Càrrega útil concatenada Name[el]=Συγκέντρωση φόρτου Name[et]=Ühendatud koormus Name[it]=Dati concatenati +Name[kk]=Қосылған жүктемесі Name[nb]=Sammensatt nyttelast +Name[nl]=Samengevoegde inhouden Name[pl]=Sklejone obciążenie Name[pt]=Dados Concatenados Name[pt_BR]=Dados concatenados diff -Nru calligra-2.3.86/flow/stencils/Cisco/content_engine.desktop calligra-2.3.87/flow/stencils/Cisco/content_engine.desktop --- calligra-2.3.86/flow/stencils/Cisco/content_engine.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Cisco/content_engine.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -2,9 +2,11 @@ Name=Content Engine (Cache Director) Name[bg]=Инструмент за съдържание (Cache Director) Name[ca]=Content Engine (Cache Director) +Name[ca@valencia]=Content Engine (Cache Director) Name[el]=Content Engine (Cache Director) Name[et]=Content Engine (Cache Director) Name[it]=Content Engine (Cache Director) +Name[kk]=Мазмұн тетігі (Кэшті басқару) Name[nb]=Innholdsmotor (Mellomlager-styrer) Name[nds]=Inholt-Maschien (Twischenspieker-Direktor) Name[nl]=Content Engine (Cache Director) diff -Nru calligra-2.3.86/flow/stencils/Cisco/content_router.desktop calligra-2.3.87/flow/stencils/Cisco/content_router.desktop --- calligra-2.3.86/flow/stencils/Cisco/content_router.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Cisco/content_router.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -2,9 +2,11 @@ Name=Content Service Router Name[bg]=Маршрутизатор за услуги на съдържание Name[ca]=Encaminador de servei de contingut +Name[ca@valencia]=Encaminador de servei de contingut Name[el]=Content Service Router Name[et]=Content Service marsruuter Name[it]=Router content service +Name[kk]=Мазмұн қызмет маршруттауышы Name[nb]=Ruter for innholdstjeneste Name[nds]=Inholtdeenst-Nettweger Name[nl]=Content Service Router diff -Nru calligra-2.3.86/flow/stencils/Cisco/content_service_module.desktop calligra-2.3.87/flow/stencils/Cisco/content_service_module.desktop --- calligra-2.3.86/flow/stencils/Cisco/content_service_module.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Cisco/content_service_module.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -2,9 +2,11 @@ Name=Content Switch module Name[bg]=Модул за комутиране на съдържание Name[ca]=Mòdul de commutació de continguts +Name[ca@valencia]=Mòdul de commutació de continguts Name[el]=Content Switch module Name[et]=Sisukommutaatori moodul Name[it]=Modulo content switch +Name[kk]=Мазмұн қосқыш модулі Name[nb]=Modul for innholdssvitsjing Name[nds]=Inholt-Ümschaltmoduul Name[nl]=Content Switch module diff -Nru calligra-2.3.86/flow/stencils/Cisco/content_switch.desktop calligra-2.3.87/flow/stencils/Cisco/content_switch.desktop --- calligra-2.3.86/flow/stencils/Cisco/content_switch.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Cisco/content_switch.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -2,10 +2,12 @@ Name=Content Switch Name[bg]=Комутатор на съдържание Name[ca]=Content Switch +Name[ca@valencia]=Content Switch Name[de]=Content-Switch Name[el]=Content Switch Name[et]=Sisukommutaator Name[it]=Content Switch +Name[kk]=Мазмұн қосқышы Name[nb]=Innholdssvitsj Name[nl]=Content Switch Name[pl]=Przełącznik treści diff -Nru calligra-2.3.86/flow/stencils/Cisco/csm-s.desktop calligra-2.3.87/flow/stencils/Cisco/csm-s.desktop --- calligra-2.3.86/flow/stencils/Cisco/csm-s.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Cisco/csm-s.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -2,10 +2,12 @@ Name=CSM-S Name[bg]=CSM-S Name[ca]=CSM-S +Name[ca@valencia]=CSM-S Name[de]=CSM-S Name[el]=CSM-S Name[et]=CSM-S Name[it]=CSM-S +Name[kk]=CSM-S Name[nb]=CSM-S Name[nds]=CSM-S Name[nl]=CSM-S diff -Nru calligra-2.3.86/flow/stencils/Cisco/css1100.desktop calligra-2.3.87/flow/stencils/Cisco/css1100.desktop --- calligra-2.3.86/flow/stencils/Cisco/css1100.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Cisco/css1100.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -2,10 +2,12 @@ Name=Content Service Switch 1100 Name[bg]=Комутатор 1100 за услуги на съдържание Name[ca]=Content Service Switch 1100 +Name[ca@valencia]=Content Service Switch 1100 Name[de]=Content-Service-Switch 1100 Name[el]=Content Service Switch 1100 Name[et]=Content Service kommutaator 1100 Name[it]=Content Service Switch 1100 +Name[kk]=Мазмұн қызметінің қосқышы 1100 Name[nb]=Innholdstjeneste-svitsj 1100 Name[nds]=Inholtpleeg-Ümschalter 1100 Name[nl]=Content Service Switch 1100 diff -Nru calligra-2.3.86/flow/stencils/Cisco/csu_dsu.desktop calligra-2.3.87/flow/stencils/Cisco/csu_dsu.desktop --- calligra-2.3.86/flow/stencils/Cisco/csu_dsu.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Cisco/csu_dsu.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -2,10 +2,12 @@ Name=CSU/DSU Name[bg]=CSU/DSU Name[ca]=CSU/DSU +Name[ca@valencia]=CSU/DSU Name[de]=CSU/DSU Name[el]=CSU/DSU Name[et]=CSU/DSU Name[it]=CSU/DSU +Name[kk]=CSU/DSU Name[nb]=CSU/DSU Name[nds]=CSU/DSU Name[nl]=CSU/DSU diff -Nru calligra-2.3.86/flow/stencils/Cisco/cte.desktop calligra-2.3.87/flow/stencils/Cisco/cte.desktop --- calligra-2.3.86/flow/stencils/Cisco/cte.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Cisco/cte.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -2,9 +2,11 @@ Name=Content Transformation Engine (CTE) Name[bg]=Инструмент за преобразуване на съдържанието (CTE) Name[ca]=Content Transformation Engine (CTE) +Name[ca@valencia]=Content Transformation Engine (CTE) Name[el]=Content Transformation Engine (CTE) Name[et]=Content Transformation Engine (CTE) Name[it]=Content Transformation Engine (CTE) +Name[kk]=Мазмұнын түрлендіру тетігі (CTE) Name[nb]=Innholdsomvandlingsenhet (CTE) Name[nds]=Inholtümwanneln-Maschien (CTE) Name[nl]=Content Transformation Engine (CTE) diff -Nru calligra-2.3.86/flow/stencils/Cisco/data_center_switch.desktop calligra-2.3.87/flow/stencils/Cisco/data_center_switch.desktop --- calligra-2.3.86/flow/stencils/Cisco/data_center_switch.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Cisco/data_center_switch.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -1,9 +1,11 @@ [Desktop Entry] Name=Data Center Switch Name[ca]=Data Center Switch +Name[ca@valencia]=Data Center Switch Name[el]=Data Center Switch Name[et]=Andmekeskuse kommutaator Name[it]=Data Center Switch +Name[kk]=Орталық дерек қосқышы Name[nb]=Datasentersvitsj Name[nl]=Data Center Switch Name[pl]=Przełącznik centrum danych diff -Nru calligra-2.3.86/flow/stencils/Cisco/data_center_switch_reversed.desktop calligra-2.3.87/flow/stencils/Cisco/data_center_switch_reversed.desktop --- calligra-2.3.86/flow/stencils/Cisco/data_center_switch_reversed.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Cisco/data_center_switch_reversed.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -1,8 +1,10 @@ [Desktop Entry] Name=Data Center Switch Reversed Name[ca]=Data Center Switch Reversed +Name[ca@valencia]=Data Center Switch Reversed Name[et]=Andmekeskuse kommutaator tagurpidi Name[it]=Data Center Switch Reversed +Name[kk]=Орталық дерек кері қосқышы Name[nb]=Snudd datasentersvitsj Name[nl]=Data Center Switch Reversed Name[pl]=Odwrócony przełącznik centrum danych diff -Nru calligra-2.3.86/flow/stencils/Cisco/data_switch_processor.desktop calligra-2.3.87/flow/stencils/Cisco/data_switch_processor.desktop --- calligra-2.3.86/flow/stencils/Cisco/data_switch_processor.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Cisco/data_switch_processor.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -1,9 +1,11 @@ [Desktop Entry] Name=Data Switch Processor Name[ca]=Data Switch Processor +Name[ca@valencia]=Data Switch Processor Name[el]=Επεξεργαστής μεταγωγής δεδομένων Name[et]=Andmekommutaatori protsessor Name[it]=Data Switch Processor +Name[kk]=Дерек қосқыш процесоры Name[nb]=Datasvitsj-prosessor Name[nl]=Data Switch Processor Name[pl]=Procesor przełącznika danych diff -Nru calligra-2.3.86/flow/stencils/Cisco/detector.desktop calligra-2.3.87/flow/stencils/Cisco/detector.desktop --- calligra-2.3.86/flow/stencils/Cisco/detector.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Cisco/detector.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -1,9 +1,11 @@ [Desktop Entry] Name=Detector Name[ca]=Detector +Name[ca@valencia]=Detector Name[el]=Ανιχνευτής Name[et]=Detektor Name[it]=Detector +Name[kk]=Сезгіш Name[nb]=Detektor Name[nl]=Detector Name[pl]=Detektor diff -Nru calligra-2.3.86/flow/stencils/Cisco/digital_cross-connect.desktop calligra-2.3.87/flow/stencils/Cisco/digital_cross-connect.desktop --- calligra-2.3.86/flow/stencils/Cisco/digital_cross-connect.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Cisco/digital_cross-connect.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -1,8 +1,10 @@ [Desktop Entry] Name=Digital Cross-Connect Name[ca]=Digital Cross-Connect +Name[ca@valencia]=Digital Cross-Connect Name[et]=Digitaalne ristühendus Name[it]=Digital Cross-Connect +Name[kk]=Цифрлық торабы Name[nb]=Digital krysskopling Name[nl]=Digitale kruisverbinding Name[pl]=Digital Cross-Connect diff -Nru calligra-2.3.86/flow/stencils/Cisco/director_fcis.desktop calligra-2.3.87/flow/stencils/Cisco/director_fcis.desktop --- calligra-2.3.86/flow/stencils/Cisco/director_fcis.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Cisco/director_fcis.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -1,8 +1,10 @@ [Desktop Entry] Name=Director-class Fibre Channel intelligent switch Name[ca]=Director-class Fibre Channel intelligent switch +Name[ca@valencia]=Director-class Fibre Channel intelligent switch Name[et]=Director-klassi Fibre Channeli intelligentne kommutaator Name[it]=Switch intelligente Director-class Fibre Channel +Name[kk]=Бағытауыш-класты талшық арнасының парасатты қосқышы Name[nb]=Avansert intelligen fiberkanalsvitsj Name[nl]=Director-class Fibre Channel intelligente switch Name[pl]=Inteligenty przełącznik kanału światłowodu klasy rozdzielacza (director) diff -Nru calligra-2.3.86/flow/stencils/Cisco/directory_server.desktop calligra-2.3.87/flow/stencils/Cisco/directory_server.desktop --- calligra-2.3.86/flow/stencils/Cisco/directory_server.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Cisco/directory_server.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -2,10 +2,12 @@ Name=Directory Server Name[bg]=Директориен сървър Name[ca]=Servidor de directoris +Name[ca@valencia]=Servidor de directoris Name[el]=Εξυπηρετητής καταλόγου Name[es]=Servidor de directorio Name[et]=Kataloogiserver Name[it]=Server di directory +Name[kk]=Каталог сервері Name[nb]=Katalogtjener Name[nds]=Verteken-Server Name[nl]=Directory-server diff -Nru calligra-2.3.86/flow/stencils/Cisco/diskette.desktop calligra-2.3.87/flow/stencils/Cisco/diskette.desktop --- calligra-2.3.86/flow/stencils/Cisco/diskette.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Cisco/diskette.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -2,10 +2,12 @@ Name=Diskette Name[bg]=Дискета Name[ca]=Disquet +Name[ca@valencia]=Disquet Name[de]=Diskette Name[el]=Δισκέτα Name[et]=Diskett Name[it]=Disco floppy +Name[kk]=Дискета Name[nb]=Diskett Name[nds]=Diskett Name[nl]=Diskette diff -Nru calligra-2.3.86/flow/stencils/Cisco/disk_subsystem.desktop calligra-2.3.87/flow/stencils/Cisco/disk_subsystem.desktop --- calligra-2.3.86/flow/stencils/Cisco/disk_subsystem.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Cisco/disk_subsystem.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -1,9 +1,11 @@ [Desktop Entry] Name=Disk subsystem Name[ca]=Subsistema de disc +Name[ca@valencia]=Subsistema de disc Name[el]=Υποσύστημα δίσκου Name[et]=Kettaseadmete alamsüsteem Name[it]=Sottosistema a disco +Name[kk]=Дискі ішкі жүйесі Name[nb]=Disk undersystem Name[nl]=Schijfsubsysteem Name[pl]=Pod-system dyskowy diff -Nru calligra-2.3.86/flow/stencils/Cisco/distributed_director.desktop calligra-2.3.87/flow/stencils/Cisco/distributed_director.desktop --- calligra-2.3.86/flow/stencils/Cisco/distributed_director.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Cisco/distributed_director.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -2,9 +2,11 @@ Name=Distributed Director Name[bg]=Разпределено пренасочване Name[ca]=Director distribuït +Name[ca@valencia]=Director distribuït Name[el]=Distributed Director Name[et]=Distributed Director Name[it]=Distributed Director +Name[kk]=Үлестірілген бағыттауыш Name[nb]=Distribuert koplingsenhet Name[nds]="Distributed Director" Name[nl]=Distributed director diff -Nru calligra-2.3.86/flow/stencils/Cisco/dot_dot.desktop calligra-2.3.87/flow/stencils/Cisco/dot_dot.desktop --- calligra-2.3.86/flow/stencils/Cisco/dot_dot.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Cisco/dot_dot.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -2,9 +2,11 @@ Name=Dot-Dot Name[bg]=Точка-точка Name[ca]=Punt-Punt +Name[ca@valencia]=Punt-Punt Name[el]=Dot-Dot Name[et]=Punktiir Name[it]=Punto-Punto +Name[kk]=Нүкте-нүкте Name[nb]=Dot-Dot Name[nl]=punt-punt Name[pl]=Dot-Dot diff -Nru calligra-2.3.86/flow/stencils/Cisco/dpt.desktop calligra-2.3.87/flow/stencils/Cisco/dpt.desktop --- calligra-2.3.86/flow/stencils/Cisco/dpt.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Cisco/dpt.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -2,10 +2,12 @@ Name=DPT Name[bg]=DPT Name[ca]=DPT +Name[ca@valencia]=DPT Name[de]=DPT Name[el]=DPT Name[et]=DPT Name[it]=DPT +Name[kk]=DPT Name[nb]=DPT Name[nds]=DPT Name[nl]=DPT diff -Nru calligra-2.3.86/flow/stencils/Cisco/dslam.desktop calligra-2.3.87/flow/stencils/Cisco/dslam.desktop --- calligra-2.3.86/flow/stencils/Cisco/dslam.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Cisco/dslam.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -2,10 +2,12 @@ Name=DSLAM Name[bg]=DSLAM Name[ca]=DSLAM +Name[ca@valencia]=DSLAM Name[de]=DSLAM Name[el]=DSLAM Name[et]=DSLAM Name[it]=DSLAM +Name[kk]=DSLAM Name[nb]=DSLAM Name[nds]=DSLAM Name[nl]=DSLAM diff -Nru calligra-2.3.86/flow/stencils/Cisco/dual_mode_accesspoint.desktop calligra-2.3.87/flow/stencils/Cisco/dual_mode_accesspoint.desktop --- calligra-2.3.86/flow/stencils/Cisco/dual_mode_accesspoint.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Cisco/dual_mode_accesspoint.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -1,8 +1,10 @@ [Desktop Entry] Name=Dual Mode AccessPoint Name[ca]=Punt d'accès de mode dual +Name[ca@valencia]=Punt d'accés de mode dual Name[et]=Kaherežiimne tugijaam Name[it]=Access point a doppia modalità +Name[kk]=Қос режімді қатынау нүктесі Name[nb]=Aksesspunkt med to modus Name[nds]=Tweekanaal-Togrieppunkt Name[nl]=Dual Mode AccessPoint diff -Nru calligra-2.3.86/flow/stencils/Cisco/dwdm_filter.desktop calligra-2.3.87/flow/stencils/Cisco/dwdm_filter.desktop --- calligra-2.3.86/flow/stencils/Cisco/dwdm_filter.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Cisco/dwdm_filter.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -2,11 +2,13 @@ Name=DWDM Filter Name[bg]=Филтър DWDM Name[ca]=Filtre DWDM +Name[ca@valencia]=Filtre DWDM Name[cs]=Filtr DWDM Name[de]=DWDM-Filter Name[el]=Φίλτρο DWDM Name[et]=DWDM filter Name[it]=Filtro DWDM +Name[kk]=DWDM сүзгісі Name[nb]=DWDM-filter Name[nds]=DWDM-Filter Name[nl]=DWDM-filter diff -Nru calligra-2.3.86/flow/stencils/Cisco/edge_label_switch_router_with_netflow.desktop calligra-2.3.87/flow/stencils/Cisco/edge_label_switch_router_with_netflow.desktop --- calligra-2.3.86/flow/stencils/Cisco/edge_label_switch_router_with_netflow.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Cisco/edge_label_switch_router_with_netflow.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -1,8 +1,10 @@ [Desktop Entry] Name=Edge Label Switch Router with NetFlow Name[ca]=Encaminador commutador Edge Label amb NetFlow +Name[ca@valencia]=Encaminador commutador Edge Label amb NetFlow Name[et]=Edge Label kommutaator-marsruuter NetFlow'ga Name[it]=Edge Label Switch Router con NetFlow +Name[kk]=Шеткі NetFlow қосқыш маршруттауышы Name[nb]=Edge Label svitsjruter med NetFlow Name[nl]=Edge Label Switch Router met NetFlow Name[pl]=Edge Label Switch Router z NetFlow diff -Nru calligra-2.3.86/flow/stencils/Cisco/end_office.desktop calligra-2.3.87/flow/stencils/Cisco/end_office.desktop --- calligra-2.3.86/flow/stencils/Cisco/end_office.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Cisco/end_office.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -2,10 +2,12 @@ Name=End Office Name[bg]=Краен офис Name[ca]=Final d'oficina +Name[ca@valencia]=Final d'oficina Name[de]=End-Office Name[el]=End Office Name[et]=Lõpptarbija Name[it]=End Office +Name[kk]=Соңғы кеңсе Name[nb]=Endekontor Name[nds]=Enn-Kontoor Name[nl]=End Office diff -Nru calligra-2.3.86/flow/stencils/Cisco/etherclient.desktop calligra-2.3.87/flow/stencils/Cisco/etherclient.desktop --- calligra-2.3.86/flow/stencils/Cisco/etherclient.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Cisco/etherclient.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -1,10 +1,12 @@ [Desktop Entry] Name=EtherClient Name[ca]=Client ether +Name[ca@valencia]=Client ether Name[de]=EtherClient Name[el]=EtherClient Name[et]=Etherneti klient Name[it]=EtherClient +Name[kk]=Ethernet клиенті Name[nb]=EtherClient Name[nl]=EtherClient Name[pl]=EtherClient diff -Nru calligra-2.3.86/flow/stencils/Cisco/fax.desktop calligra-2.3.87/flow/stencils/Cisco/fax.desktop --- calligra-2.3.86/flow/stencils/Cisco/fax.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Cisco/fax.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -2,12 +2,14 @@ Name=Fax Name[bg]=Факс Name[ca]=Fax +Name[ca@valencia]=Fax Name[cs]=Fax Name[de]=Fax Name[el]=Φαξ Name[es]=Fax Name[et]=Faks Name[it]=Fax +Name[kk]=Факс Name[nb]=Faks Name[nds]=Fax Name[nl]=Fax diff -Nru calligra-2.3.86/flow/stencils/Cisco/fc_storage.desktop calligra-2.3.87/flow/stencils/Cisco/fc_storage.desktop --- calligra-2.3.86/flow/stencils/Cisco/fc_storage.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Cisco/fc_storage.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -2,10 +2,12 @@ Name=FC Storage Name[bg]=Хранилище FC Name[ca]=Emmagatzement FC +Name[ca@valencia]=Emmagatzement FC Name[de]=FC-Speicher Name[el]=FC Storage Name[et]=FC salvesti Name[it]=Archiviazione FC +Name[kk]=АС жинақтауышы Name[nb]=FC-lagring Name[nds]=FC-Spieker Name[nl]=FC-storage diff -Nru calligra-2.3.86/flow/stencils/Cisco/fddi_ring.desktop calligra-2.3.87/flow/stencils/Cisco/fddi_ring.desktop --- calligra-2.3.86/flow/stencils/Cisco/fddi_ring.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Cisco/fddi_ring.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -2,10 +2,12 @@ Name=FDDI Ring Name[bg]=Пръстен FDDI Name[ca]=Anell FDDI +Name[ca@valencia]=Anell FDDI Name[de]=FDDI-Ring Name[el]=Δακτύλιος FDDI Name[et]=FDDI ring Name[it]=Anello FDDI +Name[kk]=FDDI сақинасы Name[nb]=FDDI-ring Name[nds]=FDDI-Ring Name[nl]=FDDI-ring diff -Nru calligra-2.3.86/flow/stencils/Cisco/file_cabinet.desktop calligra-2.3.87/flow/stencils/Cisco/file_cabinet.desktop --- calligra-2.3.86/flow/stencils/Cisco/file_cabinet.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Cisco/file_cabinet.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -2,8 +2,10 @@ Name=File cabinet Name[bg]=Шкаф за файлове Name[ca]=Gavinet de fitxers +Name[ca@valencia]=Gavinet de fitxers Name[et]=Mapikapp Name[it]=Schedario +Name[kk]=Құжат шкафы Name[nb]=Arkivskap Name[nds]=Dateischapp Name[nl]=Archiefkast diff -Nru calligra-2.3.86/flow/stencils/Cisco/file_engine.desktop calligra-2.3.87/flow/stencils/Cisco/file_engine.desktop --- calligra-2.3.86/flow/stencils/Cisco/file_engine.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Cisco/file_engine.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -1,9 +1,11 @@ [Desktop Entry] Name=File Engine Name[ca]=Motor de fitxers +Name[ca@valencia]=Motor de fitxers Name[el]=Μηχανή flake Name[et]=File Engine Name[it]=Motore file +Name[kk]=Файлдар басқару тетігі Name[nb]=Filmotor Name[nl]=Opberg-engine Name[pl]=Silnik plikowy diff -Nru calligra-2.3.86/flow/stencils/Cisco/file_server.desktop calligra-2.3.87/flow/stencils/Cisco/file_server.desktop --- calligra-2.3.86/flow/stencils/Cisco/file_server.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Cisco/file_server.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -2,11 +2,13 @@ Name=File Server Name[bg]=Файлов сървър Name[ca]=Servidor de fitxers +Name[ca@valencia]=Servidor de fitxers Name[de]=Datei-Server Name[el]=Εξυπηρετητής αρχείων Name[es]=Servidor de archivos Name[et]=Failiserver Name[it]=Server di file +Name[kk]=Файл сервері Name[nb]=Filtjener Name[nds]=Datei-Server Name[nl]=Bestandsserver diff -Nru calligra-2.3.86/flow/stencils/Cisco/firewall.desktop calligra-2.3.87/flow/stencils/Cisco/firewall.desktop --- calligra-2.3.86/flow/stencils/Cisco/firewall.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Cisco/firewall.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -2,10 +2,12 @@ Name=Firewall Name[bg]=Защитна стена Name[ca]=Tallafocs +Name[ca@valencia]=Tallafocs Name[de]=Firewall Name[el]=Τείχος προστασίας Name[et]=Tulemüür Name[it]=Firewall +Name[kk]=Желіаралық қалқан Name[nb]=Brannmur Name[nds]=Nettdiek Name[nl]=Firewall diff -Nru calligra-2.3.86/flow/stencils/Cisco/firewall_horizontal.desktop calligra-2.3.87/flow/stencils/Cisco/firewall_horizontal.desktop --- calligra-2.3.86/flow/stencils/Cisco/firewall_horizontal.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Cisco/firewall_horizontal.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -1,9 +1,11 @@ [Desktop Entry] Name=Firewall horizontal Name[ca]=Tallafocs horitzontal +Name[ca@valencia]=Tallafocs horitzontal Name[el]=Τείχος προστασίας οριζόντιο Name[et]=Horisontaalne tulemüür Name[it]=Firewall (orizzontale) +Name[kk]=Жатық желіаралық қалқаны Name[nb]=Brannmur vannrett Name[nds]=Kimmrecht Nettdiek Name[nl]=Horizontale firewall diff -Nru calligra-2.3.86/flow/stencils/Cisco/firewall_subdued.desktop calligra-2.3.87/flow/stencils/Cisco/firewall_subdued.desktop --- calligra-2.3.86/flow/stencils/Cisco/firewall_subdued.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Cisco/firewall_subdued.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -1,9 +1,12 @@ [Desktop Entry] Name=Firewall subdued Name[ca]=Tallafocs suavitzat +Name[ca@valencia]=Tallafocs suavitzat Name[el]=Τείχος προστασίας υποτονικό Name[et]=Toonita tulemüür +Name[kk]=Басыңқы желіаралық қалқаны Name[nb]=Brannmur dempet +Name[nl]=Firewall ondergeschikt Name[pl]=Zapora ogniowa podległa Name[pt]='Firewall' ultrapassada Name[pt_BR]=Firewall ultrapassado diff -Nru calligra-2.3.86/flow/stencils/Cisco/front_end_processor.desktop calligra-2.3.87/flow/stencils/Cisco/front_end_processor.desktop --- calligra-2.3.86/flow/stencils/Cisco/front_end_processor.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Cisco/front_end_processor.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -1,10 +1,12 @@ [Desktop Entry] Name=Front End Processor Name[ca]=Processador frontal +Name[ca@valencia]=Processador frontal Name[de]=Frontend-Prozessor Name[el]=Περιβάλλον επεξεργαστή Name[et]=Eesprotsessor Name[it]=Front End Processor +Name[kk]=Алдыңғы процессор Name[nb]=Inngangs-avlastingsmaskin Name[nds]=Frontend-Perzesser Name[nl]=Frontend-processor diff -Nru calligra-2.3.86/flow/stencils/Cisco/fwsm.desktop calligra-2.3.87/flow/stencils/Cisco/fwsm.desktop --- calligra-2.3.86/flow/stencils/Cisco/fwsm.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Cisco/fwsm.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -1,9 +1,11 @@ [Desktop Entry] Name=Firewall Service Module Name[ca]=Mòdul de serveis del tallafocs +Name[ca@valencia]=Mòdul de serveis del tallafocs Name[el]=Άρθρωμα υπηρεσίας τείχους προστασίας Name[et]=Tulemüüri teenuse moodul Name[it]=Modulo di servizio firewall +Name[kk]=Желіаралық қалқан қызмет модулі Name[nb]=Brannmur tjenestemodul Name[nds]=Nettdiek-Deenstmoduul Name[nl]=Firewall Service Module diff -Nru calligra-2.3.86/flow/stencils/Cisco/general_appliance.desktop calligra-2.3.87/flow/stencils/Cisco/general_appliance.desktop --- calligra-2.3.86/flow/stencils/Cisco/general_appliance.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Cisco/general_appliance.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -2,10 +2,12 @@ Name=General appliance Name[bg]=Обикновено устройство Name[ca]=Dispositiu general +Name[ca@valencia]=Dispositiu general Name[de]=Generisches Gerät Name[el]=Γενική συσκευή Name[et]=Tavaline seade Name[it]=Apparato generico +Name[kk]=Жалпы құрал Name[nb]=Generelt apparat Name[nds]=Allgemeen Reedschap Name[nl]=Algemene appliance diff -Nru calligra-2.3.86/flow/stencils/Cisco/generic_building_blue.desktop calligra-2.3.87/flow/stencils/Cisco/generic_building_blue.desktop --- calligra-2.3.86/flow/stencils/Cisco/generic_building_blue.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Cisco/generic_building_blue.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -1,9 +1,11 @@ [Desktop Entry] Name=Generic Building blue Name[ca]=Edifici genèric blau +Name[ca@valencia]=Edifici genèric blau Name[el]=Κτήριο γενικής χρήσης μπλε Name[et]=Sinine tavaline hoone Name[it]=Edificio generico blu +Name[kk]=Көк ғимарат Name[nb]=Alminnelig bygning blå Name[nds]=Allgemeen Gebüüd, blaag Name[nl]=Generiek blauw gebouw diff -Nru calligra-2.3.86/flow/stencils/Cisco/generic_building.desktop calligra-2.3.87/flow/stencils/Cisco/generic_building.desktop --- calligra-2.3.86/flow/stencils/Cisco/generic_building.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Cisco/generic_building.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -2,10 +2,12 @@ Name=Generic Building Name[bg]=Обикновена сграда Name[ca]=Edifici genèric +Name[ca@valencia]=Edifici genèric Name[de]=Generisches Gebäude Name[el]=Κτήριο γενικής χρήσης Name[et]=Tavaline hoone Name[it]=Edificio generico +Name[kk]=Ғимарат Name[nb]=Alminnelig bygning Name[nds]=Allgemeen Gebüüd Name[nl]=Generiek gebouw diff -Nru calligra-2.3.86/flow/stencils/Cisco/generic_building_subdued.desktop calligra-2.3.87/flow/stencils/Cisco/generic_building_subdued.desktop --- calligra-2.3.86/flow/stencils/Cisco/generic_building_subdued.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Cisco/generic_building_subdued.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -1,9 +1,12 @@ [Desktop Entry] Name=Generic Building subdued Name[ca]=Edifici genèric suavitzat +Name[ca@valencia]=Edifici genèric suavitzat Name[el]=Κτήριο γενικής χρήσης υποτονικό Name[et]=Toonita tavaline hoone +Name[kk]=Басыңқы ғимарат Name[nb]=Alminnelig bygning dempet +Name[nl]=Generiek gebouw ondergeschikt Name[pl]=Zwykła budowla podległa Name[pt]=Edifício Genérico Ultrapassado Name[pt_BR]=Edifício genérico ultrapassado diff -Nru calligra-2.3.86/flow/stencils/Cisco/generic_gateway.desktop calligra-2.3.87/flow/stencils/Cisco/generic_gateway.desktop --- calligra-2.3.86/flow/stencils/Cisco/generic_gateway.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Cisco/generic_gateway.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -2,10 +2,12 @@ Name=Generic gateway Name[bg]=Обикновен шлюз Name[ca]=Passarel·la genèrica +Name[ca@valencia]=Passarel·la genèrica Name[de]=Generisches Gateway Name[el]=Πύλη γενικής χρήσης Name[et]=Tavaline lüüs Name[it]=Gateway generico +Name[kk]=Жалпы шлюзі Name[nb]=Generisk portner Name[nds]=Allgemeen Döörreekner Name[nl]=Generieke gateway diff -Nru calligra-2.3.86/flow/stencils/Cisco/generic_processor.desktop calligra-2.3.87/flow/stencils/Cisco/generic_processor.desktop --- calligra-2.3.86/flow/stencils/Cisco/generic_processor.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Cisco/generic_processor.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -2,10 +2,12 @@ Name=Generic processor Name[bg]=Обикновен процесор Name[ca]=Processador genèric +Name[ca@valencia]=Processador genèric Name[de]=Generischer Prozessor Name[el]=Επεξεργαστής γενικής χρήσης Name[et]=Tavaline protsessor Name[it]=Processore generico +Name[kk]=Жалпы процессор Name[nb]=Generisk prosessor Name[nds]=Allgemeen Perzesser Name[nl]=Generieke processor diff -Nru calligra-2.3.86/flow/stencils/Cisco/generic_softswitch.desktop calligra-2.3.87/flow/stencils/Cisco/generic_softswitch.desktop --- calligra-2.3.86/flow/stencils/Cisco/generic_softswitch.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Cisco/generic_softswitch.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -2,11 +2,14 @@ Name=Generic softswitch Name[bg]=Обикновен софтуерен комутатор Name[ca]=Commutador per programari genèric +Name[ca@valencia]=Commutador per programari genèric Name[de]=Generischer Soft-Switch Name[et]=Üldine tarkvaraline kommutaator Name[it]=Softswich generico +Name[kk]=Жалпы бағдарламалық қосқыш Name[nb]=Generisk programsvitsj Name[nds]=Allgemeen Soft-Ümschalter +Name[nl]=Generieke softswitch Name[pl]=Zwykły przełącznik programowy Name[pt]=Comutador por 'software' genérico Name[pt_BR]=Computador por software genérico diff -Nru calligra-2.3.86/flow/stencils/Cisco/gigabit_switch_router_atm_tag.desktop calligra-2.3.87/flow/stencils/Cisco/gigabit_switch_router_atm_tag.desktop --- calligra-2.3.86/flow/stencils/Cisco/gigabit_switch_router_atm_tag.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Cisco/gigabit_switch_router_atm_tag.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -2,9 +2,11 @@ Name=Gigabit Switch Router (ATM Tag) Name[bg]=Гигабит комутиращ маршрутизатор (ATM Tag) Name[ca]=Encaminador Gigabit (etiqueta ATM) +Name[ca@valencia]=Encaminador Gigabit (etiqueta ATM) Name[el]=Gigabit Switch Router (ATM Tag) Name[et]=Gigabit-kommutaator-marsruuter (ATM Tag) Name[it]=Gigabit Switch Router (ATM Tag) +Name[kk]=Гигабиттік қосқыш маршруттауышы (ATM Tag) Name[nb]=Gigabit svitsjruter (ATM Tag) Name[nds]=Gigabit-Switch-Nettweger (ATM-Tag) Name[nl]=Gigabit Switch Router (ATM Tag) diff -Nru calligra-2.3.86/flow/stencils/Cisco/government_building.desktop calligra-2.3.87/flow/stencils/Cisco/government_building.desktop --- calligra-2.3.86/flow/stencils/Cisco/government_building.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Cisco/government_building.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -2,10 +2,12 @@ Name=Government Building Name[bg]=Правителствена сграда Name[ca]=Edifici governamental +Name[ca@valencia]=Edifici governamental Name[de]=Regierungsgebäude Name[el]=Κυβερνητικό κτήριο Name[et]=Valitsushoone Name[it]=Edificio governativo +Name[kk]=Үкіметтік мекеме Name[nb]=Offentlig bygning Name[nds]=Regerengebüüd Name[nl]=Overheidsgebouw diff -Nru calligra-2.3.86/flow/stencils/Cisco/guard.desktop calligra-2.3.87/flow/stencils/Cisco/guard.desktop --- calligra-2.3.86/flow/stencils/Cisco/guard.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Cisco/guard.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -1,9 +1,11 @@ [Desktop Entry] Name=Guard Name[ca]=Defensa +Name[ca@valencia]=Defensa Name[el]=Φρουρός Name[et]=Guard Name[it]=Guard +Name[kk]=Сақшы Name[nb]=Vakt Name[nl]=Bewaker Name[pl]=Ochrona diff -Nru calligra-2.3.86/flow/stencils/Cisco/h323.desktop calligra-2.3.87/flow/stencils/Cisco/h323.desktop --- calligra-2.3.86/flow/stencils/Cisco/h323.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Cisco/h323.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -2,11 +2,13 @@ Name=H.323 Name[bg]=H.323 Name[ca]=H.323 +Name[ca@valencia]=H.323 Name[cs]=H.323 Name[el]=H.323 Name[es]=H.323 Name[et]=H.323 Name[it]=H.323 +Name[kk]=H.323 Name[nb]=H.323 Name[nds]=H.323 Name[nl]=H.323 diff -Nru calligra-2.3.86/flow/stencils/Cisco/handheld.desktop calligra-2.3.87/flow/stencils/Cisco/handheld.desktop --- calligra-2.3.86/flow/stencils/Cisco/handheld.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Cisco/handheld.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -2,10 +2,12 @@ Name=Handheld Name[bg]=Мобилно устройство Name[ca]=Mans lliures +Name[ca@valencia]=Mans lliures Name[cs]=Handheld Name[el]=Χειρός Name[et]=Pihuarvuti Name[it]=Palmare +Name[kk]=Қалта құрылғысы Name[nb]=Håndholdt Name[nds]=Handreekner Name[nl]=Handheld diff -Nru calligra-2.3.86/flow/stencils/Cisco/headphones.desktop calligra-2.3.87/flow/stencils/Cisco/headphones.desktop --- calligra-2.3.86/flow/stencils/Cisco/headphones.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Cisco/headphones.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -2,10 +2,12 @@ Name=Headphones Name[bg]=Слушалки Name[ca]=Auriculars +Name[ca@valencia]=Auriculars Name[cs]=Sluchátka Name[el]=Ακουστικά Name[et]=Kõrvaklapid Name[it]=Cuffie +Name[kk]=Құлаққаптар Name[nb]=Hodetelefoner Name[nds]=Kopphörers Name[nl]=Hoofdtelefoon diff -Nru calligra-2.3.86/flow/stencils/Cisco/home_office.desktop calligra-2.3.87/flow/stencils/Cisco/home_office.desktop --- calligra-2.3.86/flow/stencils/Cisco/home_office.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Cisco/home_office.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -2,9 +2,11 @@ Name=Home office Name[bg]=Домашен офис Name[ca]=Oficina a casa +Name[ca@valencia]=Oficina a casa Name[el]=Home office Name[et]=Kodukontor Name[it]=Ufficio a casa +Name[kk]=Үй кеңсесі Name[nb]=Hjemmekontor Name[nds]=Huuskontoor Name[nl]=Hoofdkantoor diff -Nru calligra-2.3.86/flow/stencils/Cisco/hootphone.desktop calligra-2.3.87/flow/stencils/Cisco/hootphone.desktop --- calligra-2.3.86/flow/stencils/Cisco/hootphone.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Cisco/hootphone.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -2,9 +2,11 @@ Name=HootPhone Name[bg]=HootPhone Name[ca]=Telèfon de sirena +Name[ca@valencia]=Telèfon de sirena Name[el]=HootPhone Name[et]=HootPhone Name[it]=Telefono Hoot +Name[kk]=Сылдырлаған телефон Name[nb]=HootPhone Name[nds]=HootPhone Name[nl]=Hoot-telefoon diff -Nru calligra-2.3.86/flow/stencils/Cisco/host.desktop calligra-2.3.87/flow/stencils/Cisco/host.desktop --- calligra-2.3.86/flow/stencils/Cisco/host.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Cisco/host.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -2,10 +2,12 @@ Name=Host Name[bg]=Хост Name[ca]=Màquina +Name[ca@valencia]=Màquina Name[cs]=Hostitel Name[el]=Υπολογιστής Name[et]=Masin Name[it]=Host +Name[kk]=Хост Name[nb]=Vert Name[nds]=Reekner Name[nl]=Host diff -Nru calligra-2.3.86/flow/stencils/Cisco/house_blue.desktop calligra-2.3.87/flow/stencils/Cisco/house_blue.desktop --- calligra-2.3.86/flow/stencils/Cisco/house_blue.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Cisco/house_blue.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -1,8 +1,10 @@ [Desktop Entry] Name=House blue Name[ca]=Casa blava +Name[ca@valencia]=Casa blava Name[et]=Sinine hoone Name[it]=Casa blu +Name[kk]=Көк ұү Name[nb]=Hus blått Name[nds]=Blaag Huus Name[nl]=Blauw huis diff -Nru calligra-2.3.86/flow/stencils/Cisco/house.desktop calligra-2.3.87/flow/stencils/Cisco/house.desktop --- calligra-2.3.86/flow/stencils/Cisco/house.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Cisco/house.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -2,9 +2,11 @@ Name=House Name[bg]=Къща Name[ca]=Casa +Name[ca@valencia]=Casa Name[cs]=Dům Name[et]=Hoone Name[it]=Casa +Name[kk]=Үй Name[nb]=Hus Name[nds]=Huus Name[nl]=Huis diff -Nru calligra-2.3.86/flow/stencils/Cisco/hp_mini.desktop calligra-2.3.87/flow/stencils/Cisco/hp_mini.desktop --- calligra-2.3.86/flow/stencils/Cisco/hp_mini.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Cisco/hp_mini.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -2,10 +2,12 @@ Name=HP Mini Name[bg]=HP Mini Name[ca]=HP Mini +Name[ca@valencia]=HP Mini Name[el]=HP Mini Name[es]=HP Mini Name[et]=HP Mini Name[it]=HP Mini +Name[kk]=HP Mini Name[nb]=HP Mini Name[nds]=HP-Mini Name[nl]=HP Mini diff -Nru calligra-2.3.86/flow/stencils/Cisco/hub.desktop calligra-2.3.87/flow/stencils/Cisco/hub.desktop --- calligra-2.3.86/flow/stencils/Cisco/hub.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Cisco/hub.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -2,9 +2,11 @@ Name=Hub Name[bg]=Хъб Name[ca]=Concentrador +Name[ca@valencia]=Concentrador Name[cs]=Rozbočovač Name[et]=Jaotur Name[it]=Hub +Name[kk]=Хаб Name[nb]=Nettnav Name[nds]=Nettknütt Name[nl]=Hub diff -Nru calligra-2.3.86/flow/stencils/Cisco/hub_subdued.desktop calligra-2.3.87/flow/stencils/Cisco/hub_subdued.desktop --- calligra-2.3.86/flow/stencils/Cisco/hub_subdued.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Cisco/hub_subdued.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -1,8 +1,11 @@ [Desktop Entry] Name=Hub subdued Name[ca]=Concentrador suavitzat +Name[ca@valencia]=Concentrador suavitzat Name[et]=Toonita jaotur +Name[kk]=Басыңқы хаб Name[nb]=Nettnav dempet +Name[nl]=Hub ondergeschikt Name[pl]=Hub podległy Name[pt]=Concentrador ultrapassado Name[pt_BR]=Concentrador ultrapassado diff -Nru calligra-2.3.86/flow/stencils/Cisco/iad_router.desktop calligra-2.3.87/flow/stencils/Cisco/iad_router.desktop --- calligra-2.3.86/flow/stencils/Cisco/iad_router.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Cisco/iad_router.desktop 2012-01-28 14:26:27.000000000 +0000 @@ -2,8 +2,10 @@ Name=IAD router Name[bg]=Маршрутизатор IAD Name[ca]=Encaminador IAD +Name[ca@valencia]=Encaminador IAD Name[et]=IAD marsruuter Name[it]=Router IAD +Name[kk]=IAD маршруттауышы Name[nb]=IAD-ruter Name[nds]=IAD-Nettweger Name[nl]=IAD-router diff -Nru calligra-2.3.86/flow/stencils/Cisco/ibm_mainframe.desktop calligra-2.3.87/flow/stencils/Cisco/ibm_mainframe.desktop --- calligra-2.3.86/flow/stencils/Cisco/ibm_mainframe.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Cisco/ibm_mainframe.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -2,8 +2,10 @@ Name=IBM mainframe Name[bg]=Мейнфрейм IBM Name[ca]=Unitat principal IBM +Name[ca@valencia]=Unitat principal IBM Name[et]=IBM terminal Name[it]=IBM mainframe +Name[kk]=IBM мейнфреймі Name[nb]=IBM stormaskin Name[nds]=IBM-Mainframe Name[nl]=IBM mainframe diff -Nru calligra-2.3.86/flow/stencils/Cisco/ibm_mainframe_with_fep.desktop calligra-2.3.87/flow/stencils/Cisco/ibm_mainframe_with_fep.desktop --- calligra-2.3.86/flow/stencils/Cisco/ibm_mainframe_with_fep.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Cisco/ibm_mainframe_with_fep.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -1,8 +1,10 @@ [Desktop Entry] Name=IBM mainframe with FEP Name[ca]=Unitat principal IBM amb FEP +Name[ca@valencia]=Unitat principal IBM amb FEP Name[et]=IBM terminal FEP-iga Name[it]=IBM mainframe con FEP +Name[kk]=IBM мейнфреймі (FEP-і бар) Name[nb]=IBM stormaskin med FEP Name[nl]=IBM mainframe met FEP Name[pl]=IBM mainframe with FEP diff -Nru calligra-2.3.86/flow/stencils/Cisco/ibm_mini.desktop calligra-2.3.87/flow/stencils/Cisco/ibm_mini.desktop --- calligra-2.3.86/flow/stencils/Cisco/ibm_mini.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Cisco/ibm_mini.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -2,9 +2,11 @@ Name=IBM Mini (AS400) Name[bg]=IBM Mini (AS400) Name[ca]=IBM Mini (AS400) +Name[ca@valencia]=IBM Mini (AS400) Name[el]=IBM Mini (AS400) Name[et]=IBM Mini (AS400) Name[it]=IBM Mini (AS400) +Name[kk]=IBM Mini (AS400) Name[nb]=IBM Mini (AS400) Name[nds]=IBM-Mini (AS400) Name[nl]=IBM mini (AS400) diff -Nru calligra-2.3.86/flow/stencils/Cisco/ibm_tower.desktop calligra-2.3.87/flow/stencils/Cisco/ibm_tower.desktop --- calligra-2.3.86/flow/stencils/Cisco/ibm_tower.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Cisco/ibm_tower.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -2,9 +2,11 @@ Name=IBM Tower Name[bg]=Кула IBM Name[ca]=IBM Tower +Name[ca@valencia]=IBM Tower Name[el]=IBM Tower Name[et]=IBM Tower Name[it]=IBM Torre +Name[kk]=IBM Tower Name[nb]=IBM-tårn Name[nds]=IBM-Toorn Name[nl]=IBM tower diff -Nru calligra-2.3.86/flow/stencils/Cisco/icm.desktop calligra-2.3.87/flow/stencils/Cisco/icm.desktop --- calligra-2.3.86/flow/stencils/Cisco/icm.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Cisco/icm.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -2,9 +2,11 @@ Name=ICM Name[bg]=ICM Name[ca]=ICM +Name[ca@valencia]=ICM Name[el]=ICM Name[et]=ICM Name[it]=ICM +Name[kk]=ICM Name[nb]=ICM Name[nds]=ICM Name[nl]=ICM diff -Nru calligra-2.3.86/flow/stencils/Cisco/ics.desktop calligra-2.3.87/flow/stencils/Cisco/ics.desktop --- calligra-2.3.86/flow/stencils/Cisco/ics.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Cisco/ics.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -2,10 +2,12 @@ Name=ICS Name[bg]=ICS Name[ca]=ICS +Name[ca@valencia]=ICS Name[cs]=ICS Name[el]=ICS Name[et]=ICS Name[it]=ICS +Name[kk]=ICS Name[nb]=ICS Name[nds]=ICS Name[nl]=ICS diff -Nru calligra-2.3.86/flow/stencils/Cisco/intelliswitch_stack.desktop calligra-2.3.87/flow/stencils/Cisco/intelliswitch_stack.desktop --- calligra-2.3.86/flow/stencils/Cisco/intelliswitch_stack.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Cisco/intelliswitch_stack.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -1,9 +1,11 @@ [Desktop Entry] Name=IntelliSwitch Stack Name[ca]=IntelliSwitch Stack +Name[ca@valencia]=IntelliSwitch Stack Name[el]=IntelliSwitch Stack Name[et]=IntelliSwitch pinu Name[it]=IntelliSwitch Stack +Name[kk]=IntelliSwitch стегі Name[nb]=IntelliSwitch stabel Name[nl]=IntelliSwitch Stack Name[pl]=Stos IntelliSwitch diff -Nru calligra-2.3.86/flow/stencils/Cisco/ios_firewall.desktop calligra-2.3.87/flow/stencils/Cisco/ios_firewall.desktop --- calligra-2.3.86/flow/stencils/Cisco/ios_firewall.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Cisco/ios_firewall.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -2,9 +2,11 @@ Name=IOS Firewall Name[bg]=Защитна стена IOS Name[ca]=Tallafocs IÇOS +Name[ca@valencia]=Tallafocs IÇOS Name[el]=IOS Firewall Name[et]=IOS tulemüür Name[it]=IOS Firewall +Name[kk]=IOS желіаралық қалқаны Name[nb]=IOS brannmur Name[nds]=IOS-Nettdiek Name[nl]=IOS firewall diff -Nru calligra-2.3.86/flow/stencils/Cisco/ios_slb.desktop calligra-2.3.87/flow/stencils/Cisco/ios_slb.desktop --- calligra-2.3.86/flow/stencils/Cisco/ios_slb.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Cisco/ios_slb.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -2,9 +2,11 @@ Name=IOS SLB Name[bg]=IOS SLB Name[ca]=IOS SLB +Name[ca@valencia]=IOS SLB Name[el]=IOS SLB Name[et]=IOS SLB Name[it]=IOS SLB +Name[kk]=IOS SLB Name[nb]=IOS SLB Name[nl]=IOS SLB Name[pl]=IOS SLB diff -Nru calligra-2.3.86/flow/stencils/Cisco/ip.desktop calligra-2.3.87/flow/stencils/Cisco/ip.desktop --- calligra-2.3.86/flow/stencils/Cisco/ip.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Cisco/ip.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -2,10 +2,12 @@ Name=IP Name[bg]=IP Name[ca]=IP +Name[ca@valencia]=IP Name[cs]=IP Name[el]=IP Name[et]=IP Name[it]=IP +Name[kk]=IP Name[nb]=IP Name[nds]=IP Name[nl]=IP diff -Nru calligra-2.3.86/flow/stencils/Cisco/ip_dsl.desktop calligra-2.3.87/flow/stencils/Cisco/ip_dsl.desktop --- calligra-2.3.86/flow/stencils/Cisco/ip_dsl.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Cisco/ip_dsl.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -2,9 +2,11 @@ Name=IP DSL Name[bg]=IP DSL Name[ca]=IP DSL +Name[ca@valencia]=IP DSL Name[el]=IP DSL Name[et]=IP DSL Name[it]=IP DSL +Name[kk]=IP DSL Name[nb]=IP DSL Name[nds]=IP-DSL Name[nl]=IP DSL diff -Nru calligra-2.3.86/flow/stencils/Cisco/ip_old-style.desktop calligra-2.3.87/flow/stencils/Cisco/ip_old-style.desktop --- calligra-2.3.86/flow/stencils/Cisco/ip_old-style.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Cisco/ip_old-style.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -1,9 +1,11 @@ [Desktop Entry] Name=IP Old-style Name[ca]=IP Old-style +Name[ca@valencia]=IP Old-style Name[el]=IP παλιό στιλ Name[et]=Vanas stiilis IP Name[it]=IP vecchio stile +Name[kk]=IP ескі стилі Name[nb]=Gammeldags IP Name[nl]=IP oude stijl Name[pl]=IP Old-style diff -Nru calligra-2.3.86/flow/stencils/Cisco/ip_phone.desktop calligra-2.3.87/flow/stencils/Cisco/ip_phone.desktop --- calligra-2.3.86/flow/stencils/Cisco/ip_phone.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Cisco/ip_phone.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -2,9 +2,11 @@ Name=IP Phone Name[bg]=IP-телефон Name[ca]=IP Phone +Name[ca@valencia]=IP Phone Name[el]=IP τηλέφωνο Name[et]=IP-telefon Name[it]=Telefono IP +Name[kk]=IP телефон Name[nb]=IP-telefon Name[nds]=IP-Telefoon Name[nl]=IP telefoon diff -Nru calligra-2.3.86/flow/stencils/Cisco/ip_softphone.desktop calligra-2.3.87/flow/stencils/Cisco/ip_softphone.desktop --- calligra-2.3.86/flow/stencils/Cisco/ip_softphone.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Cisco/ip_softphone.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -2,9 +2,11 @@ Name=IP Softphone Name[bg]=Софтуерен IP-телефон Name[ca]=IP Softphone +Name[ca@valencia]=IP Softphone Name[el]=IP εφαρμογή τηλεφωνίας Name[et]=IP Softphone Name[it]=Softphone IP +Name[kk]=Бағдарламалық IP телефоны Name[nb]=IP Softphone Name[nds]=IP-SoftPhone Name[nl]=IP soft telefoon diff -Nru calligra-2.3.86/flow/stencils/Cisco/ip_telephony_router.desktop calligra-2.3.87/flow/stencils/Cisco/ip_telephony_router.desktop --- calligra-2.3.86/flow/stencils/Cisco/ip_telephony_router.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Cisco/ip_telephony_router.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -2,9 +2,11 @@ Name=IP Telephony Router Name[bg]=Маршрутизатор за IP-телефония Name[ca]=Encaminador de telefonia IP +Name[ca@valencia]=Encaminador de telefonia IP Name[el]=IP δρομολογητής τηλεφωνίας Name[et]=IP-telefoni marsruuter Name[it]=Router di telefonia IP +Name[kk]=IP телефония маршруттауышы Name[nb]=IP telefoniruter Name[nds]=Nettweger för IP-Telefoon Name[nl]=IP telefonie-router diff -Nru calligra-2.3.86/flow/stencils/Cisco/ip_transport_concentrator.desktop calligra-2.3.87/flow/stencils/Cisco/ip_transport_concentrator.desktop --- calligra-2.3.86/flow/stencils/Cisco/ip_transport_concentrator.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Cisco/ip_transport_concentrator.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -2,10 +2,12 @@ Name=IPTC Name[bg]=IPTC Name[ca]=IPTC +Name[ca@valencia]=IPTC Name[cs]=IPTC Name[el]=IPTC Name[et]=IPTC Name[it]=IPTC +Name[kk]=IPTC Name[nb]=IPTC Name[nds]=IPTC Name[nl]=IPTC diff -Nru calligra-2.3.86/flow/stencils/Cisco/iptv_broadcast_server.desktop calligra-2.3.87/flow/stencils/Cisco/iptv_broadcast_server.desktop --- calligra-2.3.86/flow/stencils/Cisco/iptv_broadcast_server.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Cisco/iptv_broadcast_server.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -2,9 +2,11 @@ Name=IPTV broadcast server Name[bg]=Разпръскващ сървър IPTV Name[ca]=IPTV broadcast server +Name[ca@valencia]=IPTV broadcast server Name[el]=Εξυπηρετητής μετάδοσης IPTV Name[et]=IPTV marsruuter Name[it]=Server di trasmissione IPTV +Name[kk]=IPTV кеңтарту сервері Name[nb]=IPTV kringkastingstjener Name[nds]=Överdregen-Server för IPTV Name[nl]=IPTV broadcast-server diff -Nru calligra-2.3.86/flow/stencils/Cisco/iptv_content_manager.desktop calligra-2.3.87/flow/stencils/Cisco/iptv_content_manager.desktop --- calligra-2.3.86/flow/stencils/Cisco/iptv_content_manager.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Cisco/iptv_content_manager.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -2,9 +2,11 @@ Name=IPTV content manager Name[bg]=Управление на съдържание IPTV Name[ca]=IPTV content manager +Name[ca@valencia]=IPTV content manager Name[el]=Διαχειριστής περιεχομένου IPTV Name[et]=IPTV sisuhaldur Name[it]=Gestore contenuti IPTV +Name[kk]=IPTV мазмұн менеджері Name[nb]=IPTV innholdshåndterer Name[nds]="IPTV"-Inholt-Pleger Name[nl]=IPTV contentmanager diff -Nru calligra-2.3.86/flow/stencils/Cisco/iscsi_switch.desktop calligra-2.3.87/flow/stencils/Cisco/iscsi_switch.desktop --- calligra-2.3.86/flow/stencils/Cisco/iscsi_switch.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Cisco/iscsi_switch.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -1,10 +1,12 @@ [Desktop Entry] Name=iSCSI switch Name[ca]=iSCSI switch +Name[ca@valencia]=iSCSI switch Name[el]=iSCSI switch Name[es]=Switch iSCSI Name[et]=iSCSI kommutaator Name[it]=Switch iSCSI +Name[kk]=iSCSI қосқышы Name[nb]=iSCSI-svitsj Name[nl]=iSCSI switch Name[pl]=Przełącznik iSCSI diff -Nru calligra-2.3.86/flow/stencils/Cisco/isdn_switch.desktop calligra-2.3.87/flow/stencils/Cisco/isdn_switch.desktop --- calligra-2.3.86/flow/stencils/Cisco/isdn_switch.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Cisco/isdn_switch.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -2,9 +2,11 @@ Name=ISDN switch Name[bg]=Комутатор ISDN Name[ca]=ISDN switch +Name[ca@valencia]=ISDN switch Name[el]=ISDN switch Name[et]=ISDN kommutaator Name[it]=Switch ISDN +Name[kk]=ISDN қосқышы Name[nb]=ISDN-svitsj Name[nds]=ISDN-Ümschalter Name[nl]=ISDN switch diff -Nru calligra-2.3.86/flow/stencils/Cisco/itp.desktop calligra-2.3.87/flow/stencils/Cisco/itp.desktop --- calligra-2.3.86/flow/stencils/Cisco/itp.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Cisco/itp.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -2,9 +2,11 @@ Name=ITP Name[bg]=ITP Name[ca]=ITP +Name[ca@valencia]=ITP Name[el]=ITP Name[et]=ITP Name[it]=ITP +Name[kk]=ITP Name[nb]=ITP Name[nds]=ITP Name[nl]=ITP diff -Nru calligra-2.3.86/flow/stencils/Cisco/jbod.desktop calligra-2.3.87/flow/stencils/Cisco/jbod.desktop --- calligra-2.3.86/flow/stencils/Cisco/jbod.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Cisco/jbod.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -2,9 +2,11 @@ Name=JBOD Name[bg]=JBOD Name[ca]=JBOD +Name[ca@valencia]=JBOD Name[el]=JBOD Name[et]=JBOD Name[it]=JBOD +Name[kk]=JBOD Name[nb]=JBOD Name[nl]=JBOD Name[pl]=JBOD diff -Nru calligra-2.3.86/flow/stencils/Cisco/key.desktop calligra-2.3.87/flow/stencils/Cisco/key.desktop --- calligra-2.3.86/flow/stencils/Cisco/key.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Cisco/key.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -2,11 +2,13 @@ Name=Key Name[bg]=Ключ Name[ca]=Tecla +Name[ca@valencia]=Tecla Name[cs]=Klíč Name[el]=Κλειδί Name[et]=Võti Name[ga]=Eochair Name[it]=Chiave +Name[kk]=Кілт Name[nb]=Nøkkel Name[nds]=Slötel Name[nl]=Sleutel diff -Nru calligra-2.3.86/flow/stencils/Cisco/label_switch_router.desktop calligra-2.3.87/flow/stencils/Cisco/label_switch_router.desktop --- calligra-2.3.86/flow/stencils/Cisco/label_switch_router.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Cisco/label_switch_router.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -1,9 +1,11 @@ [Desktop Entry] Name=ATM Tag Sw Gigabit Router Name[ca]=Encaminador ATM Tag Sw Gigabit +Name[ca@valencia]=Encaminador ATM Tag Sw Gigabit Name[el]=ATM Tag Sw Gigabit Router Name[et]=ATM Tag kommutaator gigabit-ruuter Name[it]=ATM Tag Sw Gigabit Router +Name[kk]=ATM Tag Sw гигабиттіік маршруттауышы Name[nb]=ATM tagg-svitsj Gigabit-ruter Name[nds]=ATM-Tag SW Gigabit-Nettweger Name[nl]=ATM Tag Sw gigabitrouter diff -Nru calligra-2.3.86/flow/stencils/Cisco/lan2lan_switch.desktop calligra-2.3.87/flow/stencils/Cisco/lan2lan_switch.desktop --- calligra-2.3.86/flow/stencils/Cisco/lan2lan_switch.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Cisco/lan2lan_switch.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -1,9 +1,11 @@ [Desktop Entry] Name=LAN2LAN Switch Name[ca]=LAN2LAN Switch +Name[ca@valencia]=LAN2LAN Switch Name[el]=Μεταγωγέας LAN2LAN Name[et]=LAN2LAN kommutaator Name[it]=LAN2LAN Switch +Name[kk]=LAN2LAN қосқышы Name[nb]=LAN2LAN-svitsj Name[nl]=LAN2LAN switch Name[pl]=Przełącznik LAN2LAN diff -Nru calligra-2.3.86/flow/stencils/Cisco/lan_to_lan.desktop calligra-2.3.87/flow/stencils/Cisco/lan_to_lan.desktop --- calligra-2.3.86/flow/stencils/Cisco/lan_to_lan.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Cisco/lan_to_lan.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -2,9 +2,11 @@ Name=LAN to LAN Name[bg]=LAN до LAN Name[ca]=LAN to LAN +Name[ca@valencia]=LAN to LAN Name[el]=LAN to LAN Name[et]=LAN->LAN Name[it]=LAN to LAN +Name[kk]=LAN - LAN Name[nb]=LAN til LAN Name[nds]=LAN na LAN Name[nl]=LAN naar LAN diff -Nru calligra-2.3.86/flow/stencils/Cisco/laptop.desktop calligra-2.3.87/flow/stencils/Cisco/laptop.desktop --- calligra-2.3.86/flow/stencils/Cisco/laptop.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Cisco/laptop.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -2,12 +2,14 @@ Name=Laptop Name[bg]=Лаптоп Name[ca]=Ordinador portàtil +Name[ca@valencia]=Ordinador portàtil Name[cs]=Notebook Name[el]=Φορητός Name[es]=Portátil Name[et]=Sülearvuti Name[ga]=Ríomhaire Glúine Name[it]=Portatile +Name[kk]=Ноутбук Name[nb]=Bærbar Name[nds]=Klappreekner Name[nl]=Laptop diff -Nru calligra-2.3.86/flow/stencils/Cisco/layer_2_remote_switch.desktop calligra-2.3.87/flow/stencils/Cisco/layer_2_remote_switch.desktop --- calligra-2.3.86/flow/stencils/Cisco/layer_2_remote_switch.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Cisco/layer_2_remote_switch.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -1,9 +1,11 @@ [Desktop Entry] Name=Layer 2 Remote Switch Name[ca]=Layer 2 Remote Switch +Name[ca@valencia]=Layer 2 Remote Switch Name[el]=Layer 2 Remote Switch Name[et]=Teise kihi kaugkommutaator Name[it]=Switch remoto layer 2 +Name[kk]=2-деңгейлі қашық қосқышы Name[nb]=Layer 2 fjernsvitsj Name[nl]=Laag 2 remote switch Name[pl]=Zdalny przełącznik poziomu 2 diff -Nru calligra-2.3.86/flow/stencils/Cisco/layer3_switch.desktop calligra-2.3.87/flow/stencils/Cisco/layer3_switch.desktop --- calligra-2.3.86/flow/stencils/Cisco/layer3_switch.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Cisco/layer3_switch.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -2,9 +2,11 @@ Name=Layer 3 Switch Name[bg]=Комутатор слой 3 Name[ca]=Layer 3 Switch +Name[ca@valencia]=Layer 3 Switch Name[el]=Layer 3 Switch Name[et]=Kolmanda kihi kommutaator Name[it]=Switch layer 3 +Name[kk]=3-деңгейлі қосқышы Name[nb]=Layer 3-svitsj Name[nds]="Laag 3"-Ümschalter Name[nl]=Laag 3 switch diff -Nru calligra-2.3.86/flow/stencils/Cisco/lightweight_ap.desktop calligra-2.3.87/flow/stencils/Cisco/lightweight_ap.desktop --- calligra-2.3.86/flow/stencils/Cisco/lightweight_ap.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Cisco/lightweight_ap.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -1,9 +1,11 @@ [Desktop Entry] Name=Lightweight AP Name[ca]=Lightweight AP +Name[ca@valencia]=Lightweight AP Name[el]=Lightweight AP Name[et]=Lightweight AP Name[it]=AP leggero +Name[kk]=Жеңіл қатынау нүктесі Name[nb]=Lettvekts-tilgangspunkt Name[nl]=Lichtgewicht AP Name[pl]=Lekkie AP diff -Nru calligra-2.3.86/flow/stencils/Cisco/localdirector.desktop calligra-2.3.87/flow/stencils/Cisco/localdirector.desktop --- calligra-2.3.86/flow/stencils/Cisco/localdirector.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Cisco/localdirector.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -2,9 +2,11 @@ Name=LocalDirector Name[bg]=LocalDirector Name[ca]=LocalDirector +Name[ca@valencia]=LocalDirector Name[el]=LocalDirector Name[et]=LocalDirector Name[it]=LocalDirector +Name[kk]=Жергілікті бағыттауышы Name[nb]=LocalDirector Name[nds]=LocalDirector Name[nl]=LocalDirector diff -Nru calligra-2.3.86/flow/stencils/Cisco/location_server.desktop calligra-2.3.87/flow/stencils/Cisco/location_server.desktop --- calligra-2.3.86/flow/stencils/Cisco/location_server.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Cisco/location_server.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -1,9 +1,11 @@ [Desktop Entry] Name=Location server Name[ca]=Servidor de localització +Name[ca@valencia]=Servidor de localització Name[el]=Εξυπηρετητής τοποθεσίας Name[et]=Asukohaserver Name[it]=Location server +Name[kk]=Орналасу сервері Name[nb]=Lokasjonstjener Name[nl]=Locatieserver Name[pl]=Serwer położenia diff -Nru calligra-2.3.86/flow/stencils/Cisco/lock_and_key.desktop calligra-2.3.87/flow/stencils/Cisco/lock_and_key.desktop --- calligra-2.3.86/flow/stencils/Cisco/lock_and_key.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Cisco/lock_and_key.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -1,9 +1,11 @@ [Desktop Entry] Name=Lock and Key Name[ca]=Lock and Key +Name[ca@valencia]=Lock and Key Name[el]=Κλειδαριά και κλειδί Name[et]=Lukk ja võti Name[it]=Lucchetto e chiave +Name[kk]=Құлып пен кілт Name[nb]=Lås og nøkkel Name[nds]=Slott un Slötel Name[nl]=Slot en sleutel diff -Nru calligra-2.3.86/flow/stencils/Cisco/lock.desktop calligra-2.3.87/flow/stencils/Cisco/lock.desktop --- calligra-2.3.86/flow/stencils/Cisco/lock.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Cisco/lock.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -2,10 +2,12 @@ Name=Lock Name[bg]=Заключване Name[ca]=Lock +Name[ca@valencia]=Lock Name[cs]=Uzamknout Name[el]=Κλειδαριά Name[et]=Lukk Name[it]=Lucchetto +Name[kk]=Құлып Name[nb]=Lås Name[nds]=Slott Name[nl]=Vergrendelen diff -Nru calligra-2.3.86/flow/stencils/Cisco/longreach_cpe.desktop calligra-2.3.87/flow/stencils/Cisco/longreach_cpe.desktop --- calligra-2.3.86/flow/stencils/Cisco/longreach_cpe.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Cisco/longreach_cpe.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -2,9 +2,11 @@ Name=LongReach CPE Name[bg]=CPE за далечни разстояния Name[ca]=LongReach CPE +Name[ca@valencia]=LongReach CPE Name[el]=LongReach CPE Name[et]=LongReach CPE Name[it]=LongReach CPE +Name[kk]=LongReach CPE Name[nb]=LongReach CPE Name[nds]="LongReach"-CPE Name[nl]=Lange-afstand CPE diff -Nru calligra-2.3.86/flow/stencils/Cisco/macintosh.desktop calligra-2.3.87/flow/stencils/Cisco/macintosh.desktop --- calligra-2.3.86/flow/stencils/Cisco/macintosh.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Cisco/macintosh.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -2,11 +2,13 @@ Name=Macintosh Name[bg]=Macintosh Name[ca]=Macintosh +Name[ca@valencia]=Macintosh Name[cs]=Macintosh Name[el]=Macintosh Name[es]=Macintosh Name[et]=Macintosh Name[it]=Macintosh +Name[kk]=Macintosh Name[nb]=Macintosh Name[nds]=Macintosh Name[nl]=MacIntosh diff -Nru calligra-2.3.86/flow/stencils/Cisco/mac_woman.desktop calligra-2.3.87/flow/stencils/Cisco/mac_woman.desktop --- calligra-2.3.86/flow/stencils/Cisco/mac_woman.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Cisco/mac_woman.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -2,9 +2,11 @@ Name=Mac Woman Name[bg]=Жена Mac Name[ca]=Dona Mac +Name[ca@valencia]=Dona Mac Name[el]=Mac Woman Name[et]=Mac-naine Name[it]=Mac Donna +Name[kk]=Mac-компьютердегі әйел Name[nb]=Mac-kvinne Name[nds]=Mac-Fru Name[nl]=Mac-vrouw diff -Nru calligra-2.3.86/flow/stencils/Cisco/mac_woman_right.desktop calligra-2.3.87/flow/stencils/Cisco/mac_woman_right.desktop --- calligra-2.3.86/flow/stencils/Cisco/mac_woman_right.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Cisco/mac_woman_right.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -1,8 +1,10 @@ [Desktop Entry] Name=Sitting Woman right Name[ca]=Dona asseguda dreta +Name[ca@valencia]=Dona asseguda dreta Name[et]=Paremal istuv naine Name[it]=Donna seduta (destra) +Name[kk]=Оң жақта отырған әйел Name[nb]=Sittende kvinne høyre Name[nl]=Zittende vrouw rechts Name[pl]=Siedząca Kobieta na prawo diff -Nru calligra-2.3.86/flow/stencils/Cisco/man_blue.desktop calligra-2.3.87/flow/stencils/Cisco/man_blue.desktop --- calligra-2.3.86/flow/stencils/Cisco/man_blue.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Cisco/man_blue.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -1,9 +1,11 @@ [Desktop Entry] Name=Man blue Name[ca]=Home blau +Name[ca@valencia]=Home blau Name[el]=Άνδρας μπλε Name[et]=Sinine mees Name[it]=Uomo blu +Name[kk]=Көк адам Name[nb]=Mann blå Name[nds]=Blaag Keerl Name[nl]=Blauwe man diff -Nru calligra-2.3.86/flow/stencils/Cisco/man.desktop calligra-2.3.87/flow/stencils/Cisco/man.desktop --- calligra-2.3.86/flow/stencils/Cisco/man.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Cisco/man.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -2,10 +2,12 @@ Name=Man Name[bg]=Мъж Name[ca]=Home +Name[ca@valencia]=Home Name[cs]=Muž Name[el]=Άνδρας Name[et]=Mees Name[it]=Uomo +Name[kk]=Адам Name[nb]=Mann Name[nds]=Mann Name[nl]=Man diff -Nru calligra-2.3.86/flow/stencils/Cisco/man_gold.desktop calligra-2.3.87/flow/stencils/Cisco/man_gold.desktop --- calligra-2.3.86/flow/stencils/Cisco/man_gold.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Cisco/man_gold.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -1,9 +1,11 @@ [Desktop Entry] Name=Man gold Name[ca]=Home daurat +Name[ca@valencia]=Home daurat Name[el]=Άνδρας χρυσός Name[et]=Kuldne mees Name[it]=Uomo dorato +Name[kk]=Алтын адам Name[nb]=Mann gull Name[nl]=Gouden man Name[pl]=Mężczyzna złoty diff -Nru calligra-2.3.86/flow/stencils/Cisco/man_red.desktop calligra-2.3.87/flow/stencils/Cisco/man_red.desktop --- calligra-2.3.86/flow/stencils/Cisco/man_red.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Cisco/man_red.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -1,9 +1,11 @@ [Desktop Entry] Name=Man red Name[ca]=Home vermell +Name[ca@valencia]=Home roig Name[el]=Άνδρας κόκκινος Name[et]=Punane mees Name[it]=Uomo rosso +Name[kk]=Қызыл адам Name[nb]=Mann rød Name[nl]=Rode man Name[pl]=Mężczyzna czerwony diff -Nru calligra-2.3.86/flow/stencils/Cisco/man_woman.desktop calligra-2.3.87/flow/stencils/Cisco/man_woman.desktop --- calligra-2.3.86/flow/stencils/Cisco/man_woman.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Cisco/man_woman.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -2,9 +2,11 @@ Name=Man/Woman Name[bg]=Мъж/Жена Name[ca]=Home/Dona +Name[ca@valencia]=Home/Dona Name[el]=Άνδρας/Γυναίκα Name[et]=Mees/naine Name[it]=Uomo/Donna +Name[kk]=Еркек/Әйел Name[nb]=Mann/kvinne Name[nds]=Mann/Fru Name[nl]=Man/vrouw diff -Nru calligra-2.3.86/flow/stencils/Cisco/mas_gateway.desktop calligra-2.3.87/flow/stencils/Cisco/mas_gateway.desktop --- calligra-2.3.86/flow/stencils/Cisco/mas_gateway.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Cisco/mas_gateway.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -2,9 +2,11 @@ Name=MAS Gateway Name[bg]=Шлюз MAS Name[ca]=Passarel·la MAS +Name[ca@valencia]=Passarel·la MAS Name[el]=MAS Gateway Name[et]=MAS lüüs Name[it]=Gateway MAS +Name[kk]=MAS шлюзі Name[nb]=MAS-portner Name[nds]=MAS-Döörreekner Name[nl]=MAS gateway diff -Nru calligra-2.3.86/flow/stencils/Cisco/mau.desktop calligra-2.3.87/flow/stencils/Cisco/mau.desktop --- calligra-2.3.86/flow/stencils/Cisco/mau.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Cisco/mau.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -2,9 +2,11 @@ Name=MAU Name[bg]=MAU Name[ca]=MAU +Name[ca@valencia]=MAU Name[el]=MAU Name[et]=MAU Name[it]=MAU +Name[kk]=MAU Name[nb]=MAU Name[nds]=MAU Name[nl]=MAU diff -Nru calligra-2.3.86/flow/stencils/Cisco/mcu.desktop calligra-2.3.87/flow/stencils/Cisco/mcu.desktop --- calligra-2.3.86/flow/stencils/Cisco/mcu.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Cisco/mcu.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -2,9 +2,11 @@ Name=MCU Name[bg]=MCU Name[ca]=MCU +Name[ca@valencia]=MCU Name[el]=MCU Name[et]=MCU Name[it]=MCU +Name[kk]=MCU Name[nb]=MCU Name[nds]=MCU Name[nl]=MCU diff -Nru calligra-2.3.86/flow/stencils/Cisco/mdu.desktop calligra-2.3.87/flow/stencils/Cisco/mdu.desktop --- calligra-2.3.86/flow/stencils/Cisco/mdu.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Cisco/mdu.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -2,9 +2,11 @@ Name=MDU Name[bg]=MDU Name[ca]=MDU +Name[ca@valencia]=MDU Name[el]=MDU Name[et]=MDU Name[it]=MDU +Name[kk]=MDU Name[nb]=MDU Name[nds]=MDU Name[nl]=MDU diff -Nru calligra-2.3.86/flow/stencils/Cisco/me1100.desktop calligra-2.3.87/flow/stencils/Cisco/me1100.desktop --- calligra-2.3.86/flow/stencils/Cisco/me1100.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Cisco/me1100.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -2,9 +2,11 @@ Name=ME 1100 Name[bg]=ME 1100 Name[ca]=ME 1100 +Name[ca@valencia]=ME 1100 Name[el]=ME 1100 Name[et]=ME 1100 Name[it]=ME 1100 +Name[kk]=ME 1100 Name[nb]=ME 1100 Name[nds]=ME 1100 Name[nl]=ME 1100 diff -Nru calligra-2.3.86/flow/stencils/Cisco/medium_building_blue.desktop calligra-2.3.87/flow/stencils/Cisco/medium_building_blue.desktop --- calligra-2.3.86/flow/stencils/Cisco/medium_building_blue.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Cisco/medium_building_blue.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -1,9 +1,11 @@ [Desktop Entry] Name=Medium Building blue Name[ca]=Edifici mitjà blau +Name[ca@valencia]=Edifici mitjà blau Name[el]=Μεσαίου μεγέθους κτήριο μπλε Name[et]=Sinine keskmine hoone Name[it]=Edificio medio blu +Name[kk]=Орташа көк ғимарат Name[nb]=Middels bygning blå Name[nl]=Gemiddeld blauw gebouw Name[pl]=Średni budynek niebieski diff -Nru calligra-2.3.86/flow/stencils/Cisco/medium_building.desktop calligra-2.3.87/flow/stencils/Cisco/medium_building.desktop --- calligra-2.3.86/flow/stencils/Cisco/medium_building.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Cisco/medium_building.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -1,9 +1,11 @@ [Desktop Entry] Name=Medium Building Name[ca]=Edifici mitjà +Name[ca@valencia]=Edifici mitjà Name[el]=Μεσαίου μεγέθους κτήριο Name[et]=Keskmine hoone Name[it]=Edificio medio +Name[kk]=Орташа ғимарат Name[nb]=Middels bygning Name[nl]=Gemiddeld gebouw Name[pl]=Średni budynek diff -Nru calligra-2.3.86/flow/stencils/Cisco/medium_building_subdued.desktop calligra-2.3.87/flow/stencils/Cisco/medium_building_subdued.desktop --- calligra-2.3.86/flow/stencils/Cisco/medium_building_subdued.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Cisco/medium_building_subdued.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -1,8 +1,10 @@ [Desktop Entry] Name=Medium Building subdued Name[ca]=Edifici mitjà suavitzat +Name[ca@valencia]=Edifici mitjà suavitzat Name[el]=Μεσαίου μεγέθους κτήριο υποτονικό Name[et]=Toonita keskmine hoone +Name[kk]=Басыңқы орташа ғимарат Name[nb]=Middels bygning dempet Name[nl]=Gemiddeld gebouw ondergeschikt Name[pl]=Średni budynek podległy diff -Nru calligra-2.3.86/flow/stencils/Cisco/metro1500.desktop calligra-2.3.87/flow/stencils/Cisco/metro1500.desktop --- calligra-2.3.86/flow/stencils/Cisco/metro1500.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Cisco/metro1500.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -2,9 +2,11 @@ Name=Metro 1500 Name[bg]=Metro 1500 Name[ca]=Metro 1500 +Name[ca@valencia]=Metro 1500 Name[el]=Metro 1500 Name[et]=Metro 1500 Name[it]=Metro 1500 +Name[kk]=Metro 1500 Name[nb]=Metro 1500 Name[nds]=Metro 1500 Name[nl]=Metro 1500 diff -Nru calligra-2.3.86/flow/stencils/Cisco/mgx_8000_series_voice_gateway.desktop calligra-2.3.87/flow/stencils/Cisco/mgx_8000_series_voice_gateway.desktop --- calligra-2.3.86/flow/stencils/Cisco/mgx_8000_series_voice_gateway.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Cisco/mgx_8000_series_voice_gateway.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -1,9 +1,11 @@ [Desktop Entry] Name=MGX 8000 Series Voice Gateway Name[ca]=MGX 8000 Series Voice Gateway +Name[ca@valencia]=MGX 8000 Series Voice Gateway Name[el]=Πύλη φωνητικής επικοινωνίας MGX 8000 Name[et]=MGX 8000 seeria kõnelüüs Name[it]=Voice Gateway Serie MGX 8000 +Name[kk]=MGX 8000 сериялы телефон шлюзі Name[nb]=MGX 8000-serie stemmeportner Name[nl]=MGX 8000 Series Voice Gateway Name[pl]=Bramka głosowa serii MGX 8000 diff -Nru calligra-2.3.86/flow/stencils/Cisco/mgx8220.desktop calligra-2.3.87/flow/stencils/Cisco/mgx8220.desktop --- calligra-2.3.86/flow/stencils/Cisco/mgx8220.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Cisco/mgx8220.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -2,9 +2,11 @@ Name=MGX 8220 Name[bg]=MGX 8220 Name[ca]=MGX 8220 +Name[ca@valencia]=MGX 8220 Name[el]=MGX 8220 Name[et]=MGX 8220 Name[it]=MGX 8220 +Name[kk]=MGX 8220 Name[nb]=MGX 8220 Name[nds]=MGX 8220 Name[nl]=MGX 8220 diff -Nru calligra-2.3.86/flow/stencils/Cisco/mgx8240.desktop calligra-2.3.87/flow/stencils/Cisco/mgx8240.desktop --- calligra-2.3.86/flow/stencils/Cisco/mgx8240.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Cisco/mgx8240.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -2,9 +2,11 @@ Name=MGX 8240 Name[bg]=MGX 8240 Name[ca]=MGX 8240 +Name[ca@valencia]=MGX 8240 Name[el]=MGX 8240 Name[et]=MGX 8240 Name[it]=MGX 8240 +Name[kk]=MGX 8240 Name[nb]=MGX 8240 Name[nds]=MGX 8240 Name[nl]=MGX 8240 diff -Nru calligra-2.3.86/flow/stencils/Cisco/mgx8260.desktop calligra-2.3.87/flow/stencils/Cisco/mgx8260.desktop --- calligra-2.3.86/flow/stencils/Cisco/mgx8260.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Cisco/mgx8260.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -2,9 +2,11 @@ Name=MGX 8260 Name[bg]=MGX 8260 Name[ca]=MGX 8260 +Name[ca@valencia]=MGX 8260 Name[el]=MGX 8260 Name[et]=MGX 8260 Name[it]=MGX 8260 +Name[kk]=MGX 8260 Name[nb]=MGX 8260 Name[nds]=MGX 8260 Name[nl]=MGX 8260 diff -Nru calligra-2.3.86/flow/stencils/Cisco/microphone.desktop calligra-2.3.87/flow/stencils/Cisco/microphone.desktop --- calligra-2.3.86/flow/stencils/Cisco/microphone.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Cisco/microphone.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -2,11 +2,13 @@ Name=Microphone Name[bg]=Микрофон Name[ca]=Micròfon +Name[ca@valencia]=Micròfon Name[cs]=Mikrofon Name[el]=Μικρόφωνο Name[es]=Micrófono Name[et]=Mikrofon Name[it]=Microfono +Name[kk]=Микрофон Name[nb]=Mikrofon Name[nds]=Mikrofoon Name[nl]=Microfoon diff -Nru calligra-2.3.86/flow/stencils/Cisco/microwebserver.desktop calligra-2.3.87/flow/stencils/Cisco/microwebserver.desktop --- calligra-2.3.86/flow/stencils/Cisco/microwebserver.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Cisco/microwebserver.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -2,9 +2,11 @@ Name=MicroWebserver Name[bg]=Микро web-сървър Name[ca]=MicroWebserver +Name[ca@valencia]=MicroWebserver Name[el]=MicroWebserver Name[et]=Mikroveebiserver Name[it]=MicroWebserver +Name[kk]=Микровебсервер Name[nb]=Mikro-nettjener Name[nl]=MicroWebserver Name[pl]=MikroSerwerSieciowy diff -Nru calligra-2.3.86/flow/stencils/Cisco/mini_vax.desktop calligra-2.3.87/flow/stencils/Cisco/mini_vax.desktop --- calligra-2.3.86/flow/stencils/Cisco/mini_vax.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Cisco/mini_vax.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -2,9 +2,11 @@ Name=Mini VAX Name[bg]=Mini VAX Name[ca]=Mini VAX +Name[ca@valencia]=Mini VAX Name[el]=Mini VAX Name[et]=Mini VAX Name[it]=Mini VAX +Name[kk]=Mini VAX Name[nb]=Mini VAX Name[nl]=Mini VAX Name[pl]=Mini VAX diff -Nru calligra-2.3.86/flow/stencils/Cisco/mobile_access_ip_phone.desktop calligra-2.3.87/flow/stencils/Cisco/mobile_access_ip_phone.desktop --- calligra-2.3.86/flow/stencils/Cisco/mobile_access_ip_phone.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Cisco/mobile_access_ip_phone.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -1,9 +1,11 @@ [Desktop Entry] Name=Mobile Access IP Phone Name[ca]=Mobile Access IP Phone +Name[ca@valencia]=Mobile Access IP Phone Name[el]=Ασύρματο IP τηλέφωνο Name[et]=Mobile Access IP-telefon Name[it]=Telefono IP accesso mobile +Name[kk]=Мобайл қатынау IP телефоны Name[nb]=Mobil tilgang IP-telefon Name[nl]=Mobiele telefoon met IP-toegang Name[pl]=Telefon IP dostępu mobilnego diff -Nru calligra-2.3.86/flow/stencils/Cisco/mobile_access_router.desktop calligra-2.3.87/flow/stencils/Cisco/mobile_access_router.desktop --- calligra-2.3.86/flow/stencils/Cisco/mobile_access_router.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Cisco/mobile_access_router.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -1,9 +1,11 @@ [Desktop Entry] Name=Mobile Access Router Name[ca]=Encaminador d'accés mòbil +Name[ca@valencia]=Encaminador d'accés mòbil Name[el]=Ασύρματος δρομολογητής Name[et]=Mobile Access marsruuter Name[it]=Mobile Access Router +Name[kk]=Мобайл қатынау IP маршрутауышы Name[nb]=Mobil tilgang ruter Name[nl]=Mobiele router voor toegang Name[pl]=Router dostępu mobilnego diff -Nru calligra-2.3.86/flow/stencils/Cisco/modem.desktop calligra-2.3.87/flow/stencils/Cisco/modem.desktop --- calligra-2.3.86/flow/stencils/Cisco/modem.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Cisco/modem.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -2,12 +2,15 @@ Name=Modem Name[bg]=Модем Name[ca]=Mòdem +Name[ca@valencia]=Mòdem Name[cs]=Modem Name[de]=Modem Name[el]=Modem Name[es]=Módem Name[et]=Modem +Name[hu]=Modem Name[it]=Modem +Name[kk]=Модем Name[nb]=Modem Name[nds]=Modem Name[nl]=Modem diff -Nru calligra-2.3.86/flow/stencils/Cisco/moh_server.desktop calligra-2.3.87/flow/stencils/Cisco/moh_server.desktop --- calligra-2.3.86/flow/stencils/Cisco/moh_server.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Cisco/moh_server.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -2,9 +2,11 @@ Name=MoH server (Music on Hold) Name[bg]=Сървър MoH (Music on Hold) Name[ca]=MoH server (Music on Hold) +Name[ca@valencia]=MoH server (Music on Hold) Name[el]=MoH server (Music on Hold) Name[et]=MoH server (Music on Hold) Name[it]=Server MoH (Musica d'attesa) +Name[kk]=MoH (Music on Hold) сервері Name[nb]=MoH-tjener (Ventemusikk) Name[nl]=MoH server (Music on Hold) Name[pl]=Serwer MoH (Muzyka i Przechowalnia) diff -Nru calligra-2.3.86/flow/stencils/Cisco/monitor.desktop calligra-2.3.87/flow/stencils/Cisco/monitor.desktop --- calligra-2.3.86/flow/stencils/Cisco/monitor.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Cisco/monitor.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -2,11 +2,13 @@ Name=Monitor Name[bg]=Монитор Name[ca]=Monitor +Name[ca@valencia]=Monitor Name[cs]=Monitor Name[el]=Οθόνη Name[es]=Monitor Name[et]=Monitor Name[it]=Monitor +Name[kk]=Дисплей Name[nb]=Skjerm Name[nl]=Monitor Name[pl]=Monitor diff -Nru calligra-2.3.86/flow/stencils/Cisco/multi-fabric_server_switch.desktop calligra-2.3.87/flow/stencils/Cisco/multi-fabric_server_switch.desktop --- calligra-2.3.86/flow/stencils/Cisco/multi-fabric_server_switch.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Cisco/multi-fabric_server_switch.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -1,9 +1,11 @@ [Desktop Entry] Name=Multi-Fabric Server Switch Name[ca]=Commutador de servidor multifabricant +Name[ca@valencia]=Commutador de servidor multifabricant Name[el]=Multi-Fabric Server Switch Name[et]=Mitmiktarindserveri kommutaator Name[it]=Multi-Fabric Server Switch +Name[kk]=Multi-Fabric сервер қосқышы Name[nb]=Flernettverks tjenersvitsj Name[nl]=Multi-Fabric Server Switch Name[pl]=Przełącznik wielo-fabrycznego serwera diff -Nru calligra-2.3.86/flow/stencils/Cisco/multilayer_remote_switch.desktop calligra-2.3.87/flow/stencils/Cisco/multilayer_remote_switch.desktop --- calligra-2.3.86/flow/stencils/Cisco/multilayer_remote_switch.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Cisco/multilayer_remote_switch.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -1,8 +1,10 @@ [Desktop Entry] Name=Multilayer Remote Switch Name[ca]=Commutador remota multicapa +Name[ca@valencia]=Commutador remota multicapa Name[et]=Mitmekihiline kaugkommutaator Name[it]=Switch remoto multilivello +Name[kk]=Көпқабатты қашық қосқышы Name[nb]=Flerlags fjernsvitsj Name[nl]=Multilayer remote switch Name[pl]=Przełącznik wielopoziomowy zdalny diff -Nru calligra-2.3.86/flow/stencils/Cisco/multilayer_switch.desktop calligra-2.3.87/flow/stencils/Cisco/multilayer_switch.desktop --- calligra-2.3.86/flow/stencils/Cisco/multilayer_switch.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Cisco/multilayer_switch.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -2,8 +2,10 @@ Name=Multilayer switch Name[bg]=Многослоен комутатор Name[ca]=Commutador multicapa +Name[ca@valencia]=Commutador multicapa Name[et]=Mitmekihiline kommutaator Name[it]=Switch multilivello +Name[kk]=Көпқабатты қосқышы Name[nb]=Flerlags-svitsj Name[nds]=Mehrlagen-Ümschalter Name[nl]=Multilayer switch diff -Nru calligra-2.3.86/flow/stencils/Cisco/multilayer_switch_with_silicon.desktop calligra-2.3.87/flow/stencils/Cisco/multilayer_switch_with_silicon.desktop --- calligra-2.3.86/flow/stencils/Cisco/multilayer_switch_with_silicon.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Cisco/multilayer_switch_with_silicon.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -1,8 +1,10 @@ [Desktop Entry] Name=Multilayer Switch with Silicon Name[ca]=Commutador multicapa amb silici +Name[ca@valencia]=Commutador multicapa amb silici Name[et]=Mitmekihiline kommutaator räniga Name[it]=Switch multilayer con silicio +Name[kk]=Silicon-ды қолдайтын қөпқабатты қосқышы Name[nb]=Flerlags-svitsj med Silicon Name[nl]=Multilayer switch met Silicon Name[pl]=Przełącznik wielopoziomowy wraz z Sillicon diff -Nru calligra-2.3.86/flow/stencils/Cisco/multilayer_switch_with_silicon_subdued.desktop calligra-2.3.87/flow/stencils/Cisco/multilayer_switch_with_silicon_subdued.desktop --- calligra-2.3.86/flow/stencils/Cisco/multilayer_switch_with_silicon_subdued.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Cisco/multilayer_switch_with_silicon_subdued.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -1,7 +1,9 @@ [Desktop Entry] Name=Multilayer Switch with Silicon subdued Name[ca]=Commutador multicapa amb silici suavitzat +Name[ca@valencia]=Commutador multicapa amb silici suavitzat Name[et]=Toonita mitmekihiline kommutaator räniga +Name[kk]=Silicon-ны басыңқы қөпқабатты қосқышы Name[nb]=Flerlags-svitsj med Silicon, dempet Name[nl]=Multilayer switch met Silicon ondergeschikt Name[pl]=Przełącznik wielopoziomowy wraz z Sillicon podległy diff -Nru calligra-2.3.86/flow/stencils/Cisco/multiswitch_device.desktop calligra-2.3.87/flow/stencils/Cisco/multiswitch_device.desktop --- calligra-2.3.86/flow/stencils/Cisco/multiswitch_device.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Cisco/multiswitch_device.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -2,8 +2,10 @@ Name=MultiSwitch Device Name[bg]=Многокомутиращо устройство Name[ca]=Aparell multicommutador +Name[ca@valencia]=Aparell multicommutador Name[et]=MultiSwitch seade Name[it]=Dispositivo multiswitch +Name[kk]=Көпқосқыш құрылғысы Name[nb]=Multisvitsjenhet Name[nl]=MultiSwitch apparaat Name[pl]=Urządzenie MultiSwitch diff -Nru calligra-2.3.86/flow/stencils/Cisco/mux.desktop calligra-2.3.87/flow/stencils/Cisco/mux.desktop --- calligra-2.3.86/flow/stencils/Cisco/mux.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Cisco/mux.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -2,9 +2,11 @@ Name=MUX Name[bg]=MUX Name[ca]=MUX +Name[ca@valencia]=MUX Name[el]=MUX Name[et]=MUX Name[it]=MUX +Name[kk]=MUX Name[nb]=MUX Name[nds]=MUX Name[nl]=MUX diff -Nru calligra-2.3.86/flow/stencils/Cisco/nat.desktop calligra-2.3.87/flow/stencils/Cisco/nat.desktop --- calligra-2.3.86/flow/stencils/Cisco/nat.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Cisco/nat.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -2,11 +2,13 @@ Name=NAT Name[bg]=NAT Name[ca]=NAT +Name[ca@valencia]=NAT Name[cs]=NAT Name[el]=NAT Name[es]=NAT Name[et]=NAT Name[it]=NAT +Name[kk]=NAT Name[nb]=NAT Name[nds]=NAT Name[nl]=NAT diff -Nru calligra-2.3.86/flow/stencils/Cisco/netflow_router.desktop calligra-2.3.87/flow/stencils/Cisco/netflow_router.desktop --- calligra-2.3.86/flow/stencils/Cisco/netflow_router.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Cisco/netflow_router.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -2,9 +2,11 @@ Name=NetFlow router Name[bg]=Маршрутизатор NetFlow Name[ca]=Encaminador NetFlow +Name[ca@valencia]=Encaminador NetFlow Name[el]=Δρομολογητής NetFlow Name[et]=NetFlow marsruuter Name[it]=Router NetFlow +Name[kk]=NetFlow маршруттауышы Name[nb]=NetFlow ruter Name[nds]=NetFlow-Nettweger Name[nl]=NetFlow router diff -Nru calligra-2.3.86/flow/stencils/Cisco/netranger.desktop calligra-2.3.87/flow/stencils/Cisco/netranger.desktop --- calligra-2.3.86/flow/stencils/Cisco/netranger.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Cisco/netranger.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -2,9 +2,11 @@ Name=NetRanger Name[bg]=NetRanger Name[ca]=NetRanger +Name[ca@valencia]=NetRanger Name[el]=NetRanger Name[et]=NetRanger Name[it]=NetRanger +Name[kk]=NetRanger Name[nb]=NetRanger Name[nds]=NetRanger Name[nl]=NetRanger diff -Nru calligra-2.3.86/flow/stencils/Cisco/netsonar.desktop calligra-2.3.87/flow/stencils/Cisco/netsonar.desktop --- calligra-2.3.86/flow/stencils/Cisco/netsonar.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Cisco/netsonar.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -2,9 +2,11 @@ Name=NetSonar Name[bg]=NetSonar Name[ca]=NetSonar +Name[ca@valencia]=NetSonar Name[el]=NetSonar Name[et]=NetSonar Name[it]=NetSonar +Name[kk]=NetSonar Name[nb]=NetSonar Name[nds]=NetSonar Name[nl]=NetSonar diff -Nru calligra-2.3.86/flow/stencils/Cisco/network_management.desktop calligra-2.3.87/flow/stencils/Cisco/network_management.desktop --- calligra-2.3.86/flow/stencils/Cisco/network_management.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Cisco/network_management.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -2,11 +2,13 @@ Name=Network Management Name[bg]=Управление на мрежа Name[ca]=Gestió de xarxes +Name[ca@valencia]=Gestió de xarxes Name[cs]=Správa sítě Name[el]=Διαχείριση δικτύου Name[es]=Gestión de red Name[et]=Võrguhaldus Name[it]=Gestione di rete +Name[kk]=Желі басқаруы Name[nb]=Nettverksstyring Name[nds]=Nettwarkpleeg Name[nl]=Netwerkbeheer diff -Nru calligra-2.3.86/flow/stencils/Cisco/newton.desktop calligra-2.3.87/flow/stencils/Cisco/newton.desktop --- calligra-2.3.86/flow/stencils/Cisco/newton.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Cisco/newton.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -1,11 +1,13 @@ [Desktop Entry] Name=Newton Name[ca]=Newton +Name[ca@valencia]=Newton Name[cs]=Newton Name[el]=Newton Name[es]=Newton Name[et]=Newton Name[it]=Newton +Name[kk]=Newton Name[nb]=Newton Name[nds]=Newton Name[nl]=Newton diff -Nru calligra-2.3.86/flow/stencils/Cisco/octel.desktop calligra-2.3.87/flow/stencils/Cisco/octel.desktop --- calligra-2.3.86/flow/stencils/Cisco/octel.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Cisco/octel.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -2,9 +2,11 @@ Name=Octel Name[bg]=Octel Name[ca]=Octel +Name[ca@valencia]=Octel Name[el]=Octel Name[et]=Octel Name[it]=Octel +Name[kk]=Octel Name[nb]=Octel Name[nds]=Octel Name[nl]=Octel diff -Nru calligra-2.3.86/flow/stencils/Cisco/ons15104.desktop calligra-2.3.87/flow/stencils/Cisco/ons15104.desktop --- calligra-2.3.86/flow/stencils/Cisco/ons15104.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Cisco/ons15104.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -2,10 +2,12 @@ Name=ONS15104 Name[bg]=ONS15104 Name[ca]=ONS15104 +Name[ca@valencia]=ONS15104 Name[cs]=ONS15104 Name[el]=ONS15104 Name[et]=ONS15104 Name[it]=ONS15104 +Name[kk]=ONS15104 Name[nb]=ONS15104 Name[nds]=ONS15104 Name[nl]=ONS15104 diff -Nru calligra-2.3.86/flow/stencils/Cisco/ons15540.desktop calligra-2.3.87/flow/stencils/Cisco/ons15540.desktop --- calligra-2.3.86/flow/stencils/Cisco/ons15540.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Cisco/ons15540.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -2,10 +2,12 @@ Name=ONS15500 Name[bg]=ONS15500 Name[ca]=ONS15500 +Name[ca@valencia]=ONS15500 Name[cs]=ONS15500 Name[el]=ONS15500 Name[et]=ONS15500 Name[it]=ONS15500 +Name[kk]=ONS15500 Name[nb]=ONS15500 Name[nds]=ONS15500 Name[nl]=ONS15500 diff -Nru calligra-2.3.86/flow/stencils/Cisco/optical_amplifier.desktop calligra-2.3.87/flow/stencils/Cisco/optical_amplifier.desktop --- calligra-2.3.86/flow/stencils/Cisco/optical_amplifier.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Cisco/optical_amplifier.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -2,9 +2,11 @@ Name=Optical Amplifier Name[bg]=Оптичен усилвател Name[ca]=Amplificador òptic +Name[ca@valencia]=Amplificador òptic Name[el]=Οπτικός ενισχυτής Name[et]=Optiline võimendi Name[it]=Amplificatore ottico +Name[kk]=Оптикалық күшейткіші Name[nb]=Optisk forsterker Name[nds]=Optsch Verstarker Name[nl]=Optische versterker diff -Nru calligra-2.3.86/flow/stencils/Cisco/optical_cross-connect.desktop calligra-2.3.87/flow/stencils/Cisco/optical_cross-connect.desktop --- calligra-2.3.86/flow/stencils/Cisco/optical_cross-connect.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Cisco/optical_cross-connect.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -1,9 +1,11 @@ [Desktop Entry] Name=Optical Cross-Connect Name[ca]=Connexió creuada òptica +Name[ca@valencia]=Connexió creuada òptica Name[el]=Οπτικό Cross-Connect Name[et]=Optiline ristühendus Name[it]=Optical Cross-Connect +Name[kk]=Оптикалық торабы Name[nb]=Optisk kryssforbindelse Name[nl]=Optische kruisverbinding Name[pl]=Optyczne połączenie krosowane diff -Nru calligra-2.3.86/flow/stencils/Cisco/optical_fiber.desktop calligra-2.3.87/flow/stencils/Cisco/optical_fiber.desktop --- calligra-2.3.86/flow/stencils/Cisco/optical_fiber.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Cisco/optical_fiber.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -1,9 +1,11 @@ [Desktop Entry] Name=Optical Fiber Name[ca]=Fibra òptica +Name[ca@valencia]=Fibra òptica Name[el]=Οπτική ίνα Name[et]=Optiline kaabel Name[it]=Fibra ottica +Name[kk]=Оптикалық талшық Name[nb]=Optisk fiber Name[nl]=Glasvezel Name[pl]=Optyczny światłowód diff -Nru calligra-2.3.86/flow/stencils/Cisco/optical_services_router.desktop calligra-2.3.87/flow/stencils/Cisco/optical_services_router.desktop --- calligra-2.3.86/flow/stencils/Cisco/optical_services_router.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Cisco/optical_services_router.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -2,9 +2,11 @@ Name=Optical Services Router Name[bg]=Маршрутизатор за оптични услуги Name[ca]=Encaminador òptic de serveis +Name[ca@valencia]=Encaminador òptic de serveis Name[el]=Δρομολογητής οπτικών υπηρεσιών Name[et]=Optiliste teenuste marsruuter Name[it]=Optical Services Router +Name[kk]=Оптикалық қызметтер маршруттауышы Name[nb]=Ruter for optiske tjenester Name[nds]=Nettweger för optsch Deensten Name[nl]=Services-router met glasvezel diff -Nru calligra-2.3.86/flow/stencils/Cisco/optical_transport.desktop calligra-2.3.87/flow/stencils/Cisco/optical_transport.desktop --- calligra-2.3.86/flow/stencils/Cisco/optical_transport.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Cisco/optical_transport.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -2,9 +2,11 @@ Name=Optical Transport Name[bg]=Оптичен пренос Name[ca]=Transport òptic +Name[ca@valencia]=Transport òptic Name[el]=Οπτική μεταφορά Name[et]=Optiline side Name[it]=Trasporto ottico +Name[kk]=Оптикалық тасымал Name[nb]=Optisk transport Name[nl]=Transport via glasvezel Name[pl]=Optyczne przesyłanie diff -Nru calligra-2.3.86/flow/stencils/Cisco/pad.desktop calligra-2.3.87/flow/stencils/Cisco/pad.desktop --- calligra-2.3.86/flow/stencils/Cisco/pad.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Cisco/pad.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -2,9 +2,11 @@ Name=PAD X.28 Name[bg]=PAD X.28 Name[ca]=PAD X.28 +Name[ca@valencia]=PAD X.28 Name[el]=PAD X.28 Name[et]=PAD X.28 Name[it]=PAD X.28 +Name[kk]=PAD X.28 Name[nb]=PAD X.28 Name[nds]=PAD X.28 Name[nl]=PAD X.28 diff -Nru calligra-2.3.86/flow/stencils/Cisco/pager.desktop calligra-2.3.87/flow/stencils/Cisco/pager.desktop --- calligra-2.3.86/flow/stencils/Cisco/pager.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Cisco/pager.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -2,11 +2,13 @@ Name=Pager Name[bg]=Пейджър Name[ca]=Paginador +Name[ca@valencia]=Paginador Name[cs]=Přepínač ploch Name[el]=Pager Name[et]=Peiler Name[ga]=Brabhsálaí Leathanach Name[it]=Cercapersone +Name[kk]=Пейджер Name[nb]=Personsøker Name[nl]=Pager Name[pl]=Pager diff -Nru calligra-2.3.86/flow/stencils/Cisco/pbx.desktop calligra-2.3.87/flow/stencils/Cisco/pbx.desktop --- calligra-2.3.86/flow/stencils/Cisco/pbx.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Cisco/pbx.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -2,9 +2,11 @@ Name=PBX Name[bg]=PBX Name[ca]=PBX +Name[ca@valencia]=PBX Name[el]=PBX Name[et]=PBX Name[it]=PBX +Name[kk]=PBX Name[nb]=PBX Name[nds]=PBX Name[nl]=PBX diff -Nru calligra-2.3.86/flow/stencils/Cisco/pbx_switch.desktop calligra-2.3.87/flow/stencils/Cisco/pbx_switch.desktop --- calligra-2.3.86/flow/stencils/Cisco/pbx_switch.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Cisco/pbx_switch.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -2,9 +2,11 @@ Name=PBX Switch Name[bg]=Комутатор PBX Name[ca]=PBX Switch +Name[ca@valencia]=PBX Switch Name[el]=Μεταγωγέας PBX Name[et]=PBX kommutaator Name[it]=PBX Switch +Name[kk]=PBX қосқышы Name[nb]=PBX-svitsj Name[nds]=PBX-Ümschalter Name[nl]=PBX switch diff -Nru calligra-2.3.86/flow/stencils/Cisco/pc_adapter_card.desktop calligra-2.3.87/flow/stencils/Cisco/pc_adapter_card.desktop --- calligra-2.3.86/flow/stencils/Cisco/pc_adapter_card.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Cisco/pc_adapter_card.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -2,9 +2,11 @@ Name=PC Adapter Card Name[bg]=Адаптерна карта за PC Name[ca]=Targeta adaptadora de PC +Name[ca@valencia]=Targeta adaptadora de PC Name[el]=PC Adapter Card Name[et]=PC adapter Name[it]=PC Adattarore +Name[kk]=ДК адаптер тақшасы Name[nb]=PC-adapterkort Name[nds]=Reekner-Topasskoort Name[nl]=PC-adapterkaart diff -Nru calligra-2.3.86/flow/stencils/Cisco/pc_card.desktop calligra-2.3.87/flow/stencils/Cisco/pc_card.desktop --- calligra-2.3.86/flow/stencils/Cisco/pc_card.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Cisco/pc_card.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -1,10 +1,12 @@ [Desktop Entry] Name=PC Card Name[ca]=Targeta PC +Name[ca@valencia]=Targeta PC Name[cs]=PC Card Name[el]=PC Card Name[et]=PC kaart Name[it]=Scheda PC +Name[kk]=ДК тақшасы Name[nb]=PC-kort Name[nl]=PC-kaart Name[pl]=Karta PC diff -Nru calligra-2.3.86/flow/stencils/Cisco/pc.desktop calligra-2.3.87/flow/stencils/Cisco/pc.desktop --- calligra-2.3.86/flow/stencils/Cisco/pc.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Cisco/pc.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -2,10 +2,12 @@ Name=PC Name[bg]=Компютър Name[ca]=PC +Name[ca@valencia]=PC Name[cs]=PC Name[el]=PC Name[et]=PC Name[it]=PC +Name[kk]=ДК Name[nb]=PC Name[nds]=Reekner Name[nl]=PC diff -Nru calligra-2.3.86/flow/stencils/Cisco/pc_man.desktop calligra-2.3.87/flow/stencils/Cisco/pc_man.desktop --- calligra-2.3.86/flow/stencils/Cisco/pc_man.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Cisco/pc_man.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -2,9 +2,11 @@ Name=PC Man Name[bg]=Човек PC Name[ca]=Home PC +Name[ca@valencia]=Home PC Name[el]=PC Man Name[et]=PC-mees Name[it]=PC Uomo +Name[kk]=ДК-дегі адам Name[nb]=PC-mann Name[nl]=PC-man Name[pl]=Mężczyzna PC diff -Nru calligra-2.3.86/flow/stencils/Cisco/pc_man_left.desktop calligra-2.3.87/flow/stencils/Cisco/pc_man_left.desktop --- calligra-2.3.86/flow/stencils/Cisco/pc_man_left.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Cisco/pc_man_left.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -1,8 +1,10 @@ [Desktop Entry] Name=PC Man left Name[ca]=Home amb PC esquerra +Name[ca@valencia]=Home amb PC esquerra Name[et]=PC-mees vasakul Name[it]=PC Uomo (sinistra) +Name[kk]=ДК сол жағындағы адам Name[nb]=PC-mann venstre Name[nl]=PC-man links Name[pl]=Mężczyzna PC na lewo diff -Nru calligra-2.3.86/flow/stencils/Cisco/pc_router_card.desktop calligra-2.3.87/flow/stencils/Cisco/pc_router_card.desktop --- calligra-2.3.86/flow/stencils/Cisco/pc_router_card.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Cisco/pc_router_card.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -2,8 +2,10 @@ Name=PC Router Card Name[bg]=Маршрутизираща карта за PC Name[ca]=Targeta encaminadora per a PC +Name[ca@valencia]=Targeta encaminadora per a PC Name[et]=PC marsruuteri kaart Name[it]=PC Scheda router +Name[kk]=ДК маршруттауыш тақшасы Name[nb]=PC-ruterkort Name[nds]=Reekner-Nettwegerkoort Name[nl]=PC-routerkaart diff -Nru calligra-2.3.86/flow/stencils/Cisco/pc_software.desktop calligra-2.3.87/flow/stencils/Cisco/pc_software.desktop --- calligra-2.3.86/flow/stencils/Cisco/pc_software.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Cisco/pc_software.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -1,8 +1,10 @@ [Desktop Entry] Name=PC Software Name[ca]=Programari per a PC +Name[ca@valencia]=Programari per a PC Name[et]=PC tarkvara Name[it]=PC Software +Name[kk]=ДК бағдарламалық құралы Name[nb]=PC programvare Name[nds]=Programmen Name[nl]=PC software diff -Nru calligra-2.3.86/flow/stencils/Cisco/pc_video.desktop calligra-2.3.87/flow/stencils/Cisco/pc_video.desktop --- calligra-2.3.86/flow/stencils/Cisco/pc_video.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Cisco/pc_video.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -2,8 +2,10 @@ Name=PC Video Name[bg]=Видео PC Name[ca]=Vídeo PC +Name[ca@valencia]=Vídeo PC Name[et]=PC Video Name[it]=PC Video +Name[kk]=ДК видео Name[nb]=PC Video Name[nds]=Reekner-Video Name[nl]=PC video diff -Nru calligra-2.3.86/flow/stencils/Cisco/pc_with_router-based_software.desktop calligra-2.3.87/flow/stencils/Cisco/pc_with_router-based_software.desktop --- calligra-2.3.86/flow/stencils/Cisco/pc_with_router-based_software.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Cisco/pc_with_router-based_software.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -1,9 +1,11 @@ [Desktop Entry] Name=PC with Router-Based Software Name[ca]=PC amb programari encaminador +Name[ca@valencia]=PC amb programari encaminador Name[el]=PC με λογισμικό δρομολόγησης Name[et]=PC ruuteripõhise tarkvaraga Name[it]=PC con software per il routing +Name[kk]=Маршрутауыш негізінде бағдарламалы ДК Name[nb]=PC med ruterbasert programvare Name[nl]=PC met routergebaseerde software Name[pl]=PC z oprogramowaniem opartym o router diff -Nru calligra-2.3.86/flow/stencils/Cisco/pda.desktop calligra-2.3.87/flow/stencils/Cisco/pda.desktop --- calligra-2.3.86/flow/stencils/Cisco/pda.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Cisco/pda.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -2,11 +2,13 @@ Name=PDA Name[bg]=PDA Name[ca]=PDA +Name[ca@valencia]=PDA Name[cs]=PDA Name[el]=PDA Name[es]=PDA Name[et]=PDA Name[it]=PDA +Name[kk]=PDA Name[nb]=PDA Name[nds]=PDA Name[nl]=PDA diff -Nru calligra-2.3.86/flow/stencils/Cisco/phone_2.desktop calligra-2.3.87/flow/stencils/Cisco/phone_2.desktop --- calligra-2.3.86/flow/stencils/Cisco/phone_2.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Cisco/phone_2.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -2,10 +2,12 @@ Name=Phone 2 Name[bg]=Телефон 2 Name[ca]=Telèfon 2 +Name[ca@valencia]=Telèfon 2 Name[cs]=Telefon 2 Name[el]=Τηλέφωνο 2 Name[et]=Telefon 2 Name[it]=Telefono 2 +Name[kk]=2-телефон Name[nb]=Telefon 2 Name[nds]=Telefoon 2 Name[nl]=Telefoon 2 diff -Nru calligra-2.3.86/flow/stencils/Cisco/phone_appliance.desktop calligra-2.3.87/flow/stencils/Cisco/phone_appliance.desktop --- calligra-2.3.86/flow/stencils/Cisco/phone_appliance.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Cisco/phone_appliance.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -1,9 +1,11 @@ [Desktop Entry] Name=Phone Appliance Name[ca]=Aplicació de telèfon +Name[ca@valencia]=Aplicació de telèfon Name[el]=Τηλεφωνική συσκευή Name[et]=Telefoniseade Name[it]=Apparato telefonico +Name[kk]=Телефон аппараты Name[nb]=Telefoniapparat Name[nl]=Telefoon appliance Name[pl]=Zastosowanie telefonu diff -Nru calligra-2.3.86/flow/stencils/Cisco/phone.desktop calligra-2.3.87/flow/stencils/Cisco/phone.desktop --- calligra-2.3.86/flow/stencils/Cisco/phone.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Cisco/phone.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -2,11 +2,13 @@ Name=Phone Name[bg]=Телефон Name[ca]=Telèfon +Name[ca@valencia]=Telèfon Name[cs]=Telefon Name[el]=Τηλέφωνο Name[et]=Telefon Name[ga]=Fón Name[it]=Telefono +Name[kk]=Телефон Name[nb]=Telefon Name[nds]=Telefoon Name[nl]=Telefoon diff -Nru calligra-2.3.86/flow/stencils/Cisco/phone_ethernet.desktop calligra-2.3.87/flow/stencils/Cisco/phone_ethernet.desktop --- calligra-2.3.86/flow/stencils/Cisco/phone_ethernet.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Cisco/phone_ethernet.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -1,9 +1,11 @@ [Desktop Entry] Name=Phone Ethernet Name[ca]=Telèfon Ethernet +Name[ca@valencia]=Telèfon Ethernet Name[el]=Phone Ethernet Name[et]=Telefoni-Ethernet Name[it]=Telefono Ethernet +Name[kk]=Телефон Ethernet-ті Name[nb]=Ethernet-telefon Name[nl]=Telefoon ethernet Name[pl]=Telefon Ethernet diff -Nru calligra-2.3.86/flow/stencils/Cisco/phone_fax.desktop calligra-2.3.87/flow/stencils/Cisco/phone_fax.desktop --- calligra-2.3.86/flow/stencils/Cisco/phone_fax.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Cisco/phone_fax.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -2,9 +2,11 @@ Name=Phone/Fax Name[bg]=Телефон/Факс Name[ca]=Telèfon/Fax +Name[ca@valencia]=Telèfon/Fax Name[el]=Τηλέφωνο/Φαξ Name[et]=Telefon/faks Name[it]=Telefono/Fax +Name[kk]=Тел./Факс Name[nb]=Telefon/faks Name[nds]=Telefoon/Fax Name[nl]=Telefoon/fax diff -Nru calligra-2.3.86/flow/stencils/Cisco/phone_feature.desktop calligra-2.3.87/flow/stencils/Cisco/phone_feature.desktop --- calligra-2.3.86/flow/stencils/Cisco/phone_feature.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Cisco/phone_feature.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -1,9 +1,11 @@ [Desktop Entry] Name=Phone Feature Name[ca]=Característica de telèfon +Name[ca@valencia]=Característica de telèfon Name[el]=Χαρακτηριστικό τηλεφώνου Name[et]=Lihtne telefon Name[it]=Funzionalità telefono +Name[kk]=Телефон мүмкіншілігі Name[nb]=Telefonfunksjon Name[nl]=Telefooneigenschap Name[pl]=Funkcje telefonu diff -Nru calligra-2.3.86/flow/stencils/Cisco/pix_firewall.desktop calligra-2.3.87/flow/stencils/Cisco/pix_firewall.desktop --- calligra-2.3.86/flow/stencils/Cisco/pix_firewall.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Cisco/pix_firewall.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -2,9 +2,11 @@ Name=PIX Firewall Name[bg]=Защитна стена PIX Name[ca]=Tallafocs PIX +Name[ca@valencia]=Tallafocs PIX Name[el]=PIX Firewall Name[et]=PIX tulemüür Name[it]=Firewall PIX +Name[kk]=PIX желіаралық қалқаны Name[nb]=PIX brannmur Name[nds]=PIX-Nettdiek Name[nl]=PIX firewall diff -Nru calligra-2.3.86/flow/stencils/Cisco/pix_firewall_left.desktop calligra-2.3.87/flow/stencils/Cisco/pix_firewall_left.desktop --- calligra-2.3.86/flow/stencils/Cisco/pix_firewall_left.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Cisco/pix_firewall_left.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -1,8 +1,10 @@ [Desktop Entry] Name=PIX Firewall Left Name[ca]=Tallafocs PIX esquerra +Name[ca@valencia]=Tallafocs PIX esquerra Name[et]=PIX tulemüür vasakul Name[it]=Firewall PIX (sinistra) +Name[kk]=Сол жақ PIX желіаралық қалқаны Name[nb]=PIX brannmur venstre Name[nl]=PIX firewall links Name[pl]=Zapora ogniowa PIX na lewo diff -Nru calligra-2.3.86/flow/stencils/Cisco/printer.desktop calligra-2.3.87/flow/stencils/Cisco/printer.desktop --- calligra-2.3.86/flow/stencils/Cisco/printer.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Cisco/printer.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -2,11 +2,13 @@ Name=Printer Name[bg]=Принтер Name[ca]=Impressora +Name[ca@valencia]=Impressora Name[cs]=Tiskárna Name[el]=Εκτυπωτής Name[es]=Impresora Name[et]=Printer Name[it]=Stampante +Name[kk]=Принтер Name[nb]=Skriver Name[nds]=Drucker Name[nl]=Printer diff -Nru calligra-2.3.86/flow/stencils/Cisco/programmable_switch.desktop calligra-2.3.87/flow/stencils/Cisco/programmable_switch.desktop --- calligra-2.3.86/flow/stencils/Cisco/programmable_switch.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Cisco/programmable_switch.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -2,9 +2,11 @@ Name=Programmable Switch Name[bg]=Програмируем комутатор Name[ca]=Enrutador programable +Name[ca@valencia]=Enrutador programable Name[el]=Programmable Switch Name[et]=Programmeeritav kommutaator Name[it]=Switch programmabile +Name[kk]=Бағдарламаулы қосқыш Name[nb]=Programmerbar svitsj Name[nds]=Programmeerbor Ümschalter Name[nl]=Programmeerbare switch diff -Nru calligra-2.3.86/flow/stencils/Cisco/protocol_translator.desktop calligra-2.3.87/flow/stencils/Cisco/protocol_translator.desktop --- calligra-2.3.86/flow/stencils/Cisco/protocol_translator.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Cisco/protocol_translator.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -2,9 +2,11 @@ Name=Protocol Translator Name[bg]=Преобразувател на протокол Name[ca]=Traductor de protocol +Name[ca@valencia]=Traductor de protocol Name[el]=Μεταφραστής πρωτοκόλλου Name[et]=Protokolli translaator Name[it]=Traduttore di protocollo +Name[kk]=Протокол аударғышы Name[nb]=Protokolloversetter Name[nds]=Protokollöversetter Name[nl]=Protocol Translator diff -Nru calligra-2.3.86/flow/stencils/Cisco/pxf.desktop calligra-2.3.87/flow/stencils/Cisco/pxf.desktop --- calligra-2.3.86/flow/stencils/Cisco/pxf.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Cisco/pxf.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -2,9 +2,11 @@ Name=PXF Name[bg]=PXF Name[ca]=PXF +Name[ca@valencia]=PXF Name[el]=PXF Name[et]=PXF Name[it]=PXF +Name[kk]=PXF Name[nb]=PXF Name[nds]=PXF Name[nl]=PXF diff -Nru calligra-2.3.86/flow/stencils/Cisco/radio_tower.desktop calligra-2.3.87/flow/stencils/Cisco/radio_tower.desktop --- calligra-2.3.86/flow/stencils/Cisco/radio_tower.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Cisco/radio_tower.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -2,9 +2,11 @@ Name=Radio Tower Name[bg]=Радиокула Name[ca]=Torre de ràdio +Name[ca@valencia]=Torre de ràdio Name[el]=Ραδιοφωνικός πύργος Name[et]=Raadiotorn Name[it]=Ponte radio +Name[kk]=Радиомұнара Name[nb]=Radiotårn Name[nds]=Funktoorn Name[nl]=Radio Tower diff -Nru calligra-2.3.86/flow/stencils/Cisco/ratemux.desktop calligra-2.3.87/flow/stencils/Cisco/ratemux.desktop --- calligra-2.3.86/flow/stencils/Cisco/ratemux.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Cisco/ratemux.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -2,9 +2,11 @@ Name=RateMUX Name[bg]=RateMUX Name[ca]=RateMUX +Name[ca@valencia]=RateMUX Name[el]=RateMUX Name[et]=RateMUX Name[it]=RateMUX +Name[kk]=RateMUX Name[nb]=RateMUX Name[nds]=RateMUX Name[nl]=RateMUX diff -Nru calligra-2.3.86/flow/stencils/Cisco/relational_database.desktop calligra-2.3.87/flow/stencils/Cisco/relational_database.desktop --- calligra-2.3.86/flow/stencils/Cisco/relational_database.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Cisco/relational_database.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -2,9 +2,11 @@ Name=Relational Database Name[bg]=Релационна база от данни Name[ca]=Base de dades relacional +Name[ca@valencia]=Base de dades relacional Name[el]=Σχεσιακή βάση δεδομένων Name[et]=Relatsiooniline andmebaas Name[it]=Database relazionale +Name[kk]=Реляциялық деректер қоры Name[nb]=Relasjonsdatabase Name[nds]=Relatschonaal Datenbank Name[nl]=Relationele database diff -Nru calligra-2.3.86/flow/stencils/Cisco/repeater.desktop calligra-2.3.87/flow/stencils/Cisco/repeater.desktop --- calligra-2.3.86/flow/stencils/Cisco/repeater.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Cisco/repeater.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -2,10 +2,12 @@ Name=Repeater Name[bg]=Повторител Name[ca]=Repetidor +Name[ca@valencia]=Repetidor Name[cs]=Opakovač Name[el]=Επαναλήπτης Name[et]=Repiiter Name[it]=Ripetitore +Name[kk]=Қайталауыш Name[nb]=Signalforsterker Name[nds]=Verstarker Name[nl]=Repeater diff -Nru calligra-2.3.86/flow/stencils/Cisco/router.desktop calligra-2.3.87/flow/stencils/Cisco/router.desktop --- calligra-2.3.86/flow/stencils/Cisco/router.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Cisco/router.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -1,12 +1,15 @@ [Desktop Entry] Name=Router Name[ca]=Encaminador +Name[ca@valencia]=Encaminador Name[cs]=Router Name[de]=Router Name[el]=Δρομολογητής Name[es]=Enrutador Name[et]=Ruuter +Name[hu]=Router Name[it]=Router +Name[kk]=Маршруттауыш Name[nb]=Ruter Name[nds]=Nettweger Name[nl]=Router diff -Nru calligra-2.3.86/flow/stencils/Cisco/router_in_building.desktop calligra-2.3.87/flow/stencils/Cisco/router_in_building.desktop --- calligra-2.3.86/flow/stencils/Cisco/router_in_building.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Cisco/router_in_building.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -2,11 +2,14 @@ Name=Router in building Name[bg]=Маршрутизатор в сграда Name[ca]=Encaminador en edifici +Name[ca@valencia]=Encaminador en edifici Name[el]=Δρομολογητής σε κτήριο Name[et]=Marsruuter hoones Name[it]=Edificio con router +Name[kk]=Ғимараттағы маршруттауыш Name[nb]=Ruter i bygning Name[nds]=Nettweger binnen Gebüüd +Name[nl]=Router in gebouw Name[pl]=Router w budynku Name[pt]=Encaminhador em edifício Name[pt_BR]=Roteador em edifício diff -Nru calligra-2.3.86/flow/stencils/Cisco/router_subdued.desktop calligra-2.3.87/flow/stencils/Cisco/router_subdued.desktop --- calligra-2.3.86/flow/stencils/Cisco/router_subdued.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Cisco/router_subdued.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -1,8 +1,10 @@ [Desktop Entry] Name=Router subdued Name[ca]=Encaminador suavitzat +Name[ca@valencia]=Encaminador suavitzat Name[el]=Δρομολογητής υποτονικός Name[et]=Toonita marsruuter +Name[kk]=Басыңқы маршруттауыш Name[nb]=Ruter dempet Name[nl]=Ondergeschikte router Name[pl]=Router podległy diff -Nru calligra-2.3.86/flow/stencils/Cisco/router_with_firewall.desktop calligra-2.3.87/flow/stencils/Cisco/router_with_firewall.desktop --- calligra-2.3.86/flow/stencils/Cisco/router_with_firewall.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Cisco/router_with_firewall.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -2,10 +2,12 @@ Name=Router with Firewall Name[bg]=Маршрутизатор със защитна стена Name[ca]=Encaminador amb tallafocs +Name[ca@valencia]=Encaminador amb tallafocs Name[cs]=Router s firewallem Name[el]=Δρομολογητής με τείχος προστασίας Name[et]=Tulemüüriga ruuter Name[it]=Router con firewall +Name[kk]=Маршруттауыш желіаралық қалқанымен Name[nb]=Ruter med brannmur Name[nds]=Nettweger mit Nettdiek Name[nl]=Router met firewall diff -Nru calligra-2.3.86/flow/stencils/Cisco/router_with_silicon_switch.desktop calligra-2.3.87/flow/stencils/Cisco/router_with_silicon_switch.desktop --- calligra-2.3.86/flow/stencils/Cisco/router_with_silicon_switch.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Cisco/router_with_silicon_switch.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -2,9 +2,11 @@ Name=Router with Silicon Switch Name[bg]=Маршрутизатор с комутатор Silicon Name[ca]=Encaminador amb commutador de silici +Name[ca@valencia]=Encaminador amb commutador de silici Name[el]=Δρομολογητής με Silicon Switch Name[et]=Marsruuter ränikommutaatoriga Name[it]=Router con switch al silicio +Name[kk]=Маршруттауыш Silicon қосқышымен Name[nb]=Ruter med Silicon svitsj Name[nds]=Nettweger mit Silizium-Ümschalter Name[nl]=Router met Silicon-switch diff -Nru calligra-2.3.86/flow/stencils/Cisco/route_switch_processor.desktop calligra-2.3.87/flow/stencils/Cisco/route_switch_processor.desktop --- calligra-2.3.86/flow/stencils/Cisco/route_switch_processor.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Cisco/route_switch_processor.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -2,11 +2,14 @@ Name=Route Switch Processor Name[bg]=Процесор за комутиране на маршрути Name[ca]=Processador de commutació de rutes +Name[ca@valencia]=Processador de commutació de rutes Name[el]=Επεξεργαστής δρομολόγησης Name[et]=Marsruuter-kommutaatori protsessor Name[it]=Route Switch Processor +Name[kk]=Маршруттауыш қосқыш процесоры Name[nb]=Rute-svitsj-prosessor Name[nds]=Nettweeg-Ümschaltperzesser +Name[nl]=Route-switch-processor Name[pl]=Procesor przełączania trasy Name[pt]=Processador Comutação Redes Name[pt_BR]=Processador de comutação de rotas diff -Nru calligra-2.3.86/flow/stencils/Cisco/route_switch_processor_with_si.desktop calligra-2.3.87/flow/stencils/Cisco/route_switch_processor_with_si.desktop --- calligra-2.3.86/flow/stencils/Cisco/route_switch_processor_with_si.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Cisco/route_switch_processor_with_si.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -1,10 +1,13 @@ [Desktop Entry] Name=Route Switch Processor with Si Name[ca]=Processador de commutació de rutes amb Si +Name[ca@valencia]=Processador de commutació de rutes amb Si Name[el]=Επεξεργαστής δρομολόγησης με Si Name[et]=Marsruuter-kommutaatori protsessor räniga Name[it]=Route Switch Processor con Si +Name[kk]=Si-ді қолдайтын маршруттауыш қосқыш процесоры Name[nb]=Rute-svitsj-prosessor med SI +Name[nl]=Route-switch-processor met Si Name[pl]=Procesor przełączania trasy wraz z Si Name[pt]=Processador Comutação Redes com Si Name[pt_BR]=Processador de comutação de rotas com Si diff -Nru calligra-2.3.86/flow/stencils/Cisco/rps.desktop calligra-2.3.87/flow/stencils/Cisco/rps.desktop --- calligra-2.3.86/flow/stencils/Cisco/rps.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Cisco/rps.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -2,9 +2,11 @@ Name=RPS Name[bg]=RPS Name[ca]=RPS +Name[ca@valencia]=RPS Name[el]=RPS Name[et]=RPS Name[it]=RPS +Name[kk]=RPS Name[nb]=RPS Name[nds]=RPS Name[nl]=RPS diff -Nru calligra-2.3.86/flow/stencils/Cisco/running_man.desktop calligra-2.3.87/flow/stencils/Cisco/running_man.desktop --- calligra-2.3.86/flow/stencils/Cisco/running_man.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Cisco/running_man.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -2,11 +2,13 @@ Name=Running man Name[bg]=Тичащ мъж Name[ca]=Home corrent +Name[ca@valencia]=Home corrent Name[et]=Jooksev mees Name[it]=Uomo che corre +Name[kk]=Жүгіруші Name[nb]=Løpende mann Name[nds]=Lopen Mann -Name[nl]=Running man +Name[nl]=Rennende man Name[pl]=Uruchomiony mężczyzna Name[pt]=Homem a correr Name[pt_BR]=Homem correndo diff -Nru calligra-2.3.86/flow/stencils/Cisco/running_man_subdued.desktop calligra-2.3.87/flow/stencils/Cisco/running_man_subdued.desktop --- calligra-2.3.86/flow/stencils/Cisco/running_man_subdued.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Cisco/running_man_subdued.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -1,8 +1,11 @@ [Desktop Entry] Name=Running man subdued Name[ca]=Home corrent suavitzat +Name[ca@valencia]=Home corrent suavitzat Name[et]=Toonita jooksev mees +Name[kk]=Басыңқы жүгіруші Name[nb]=Løpende mann dempet +Name[nl]=Rennende man ondergeschikt Name[pl]=Uruchomiony mężczyzna podległy Name[pt]=Homem a correr ultrapassado Name[pt_BR]=Homem correndo ultrapassado diff -Nru calligra-2.3.86/flow/stencils/Cisco/running_woman.desktop calligra-2.3.87/flow/stencils/Cisco/running_woman.desktop --- calligra-2.3.86/flow/stencils/Cisco/running_woman.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Cisco/running_woman.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -2,10 +2,13 @@ Name=Running woman Name[bg]=Тичаща жена Name[ca]=Dona corrent +Name[ca@valencia]=Dona corrent Name[et]=Jooksev naine Name[it]=Donna che corre +Name[kk]=Жүгіруші әйел Name[nb]=Løpende kvinne Name[nds]=Lopen Fru +Name[nl]=Rennende vrouw Name[pl]=Uruchomiona kobieta Name[pt]=Mulher a correr Name[pt_BR]=Mulher correndo diff -Nru calligra-2.3.86/flow/stencils/Cisco/satellite.desktop calligra-2.3.87/flow/stencils/Cisco/satellite.desktop --- calligra-2.3.86/flow/stencils/Cisco/satellite.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Cisco/satellite.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -2,10 +2,12 @@ Name=Satellite Name[bg]=Спътник Name[ca]=Satèl·lit +Name[ca@valencia]=Satèl·lit Name[cs]=Satelit Name[el]=Δορυφόρος Name[et]=Satelliit Name[it]=Satellite +Name[kk]=Жерсерік Name[nb]=Satellitt Name[nl]=Satelliet Name[pl]=Satelita diff -Nru calligra-2.3.86/flow/stencils/Cisco/satellite_dish.desktop calligra-2.3.87/flow/stencils/Cisco/satellite_dish.desktop --- calligra-2.3.86/flow/stencils/Cisco/satellite_dish.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Cisco/satellite_dish.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -2,9 +2,11 @@ Name=Satellite dish Name[bg]=Сателитна чиния Name[ca]=Plat satèl·lit +Name[ca@valencia]=Plat satèl·lit Name[el]=Δορυφορικό πιάτο Name[et]=Satelliiditaldrik Name[it]=Parabola +Name[kk]=Жерсерік табақшасы Name[nb]=Satellittantenne Name[nds]=Satellitenschöttel Name[nl]=Satellietschotel diff -Nru calligra-2.3.86/flow/stencils/Cisco/sc2200.desktop calligra-2.3.87/flow/stencils/Cisco/sc2200.desktop --- calligra-2.3.86/flow/stencils/Cisco/sc2200.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Cisco/sc2200.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -2,9 +2,11 @@ Name=SC2200 (Signalling Controller) Name[bg]=SC2200 (контролер за сигнализация) Name[ca]=SC2200 (Signalling Controller) +Name[ca@valencia]=SC2200 (Signalling Controller) Name[el]=SC2200 (ελεγκτής σήματος) Name[et]=SC2200 (signaalikontroller) Name[it]=SC2200 (controllo di segnalazione) +Name[kk]=SC2200 (сигнал контроллері) Name[nb]=SC2200 (Signaleringsstyrer) Name[nds]=SC2200 (Signaalstüern) Name[nl]=SC2200 (Signalling Controller) diff -Nru calligra-2.3.86/flow/stencils/Cisco/sc2200_vsc3000_host.desktop calligra-2.3.87/flow/stencils/Cisco/sc2200_vsc3000_host.desktop --- calligra-2.3.86/flow/stencils/Cisco/sc2200_vsc3000_host.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Cisco/sc2200_vsc3000_host.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -2,9 +2,11 @@ Name=SC2200/VSC3000 host Name[bg]=Хост SC2200/VSC3000 Name[ca]=SC2200/VSC3000 host +Name[ca@valencia]=SC2200/VSC3000 host Name[el]=SC2200/VSC3000 host Name[et]=SC2200/VSC3000 masin Name[it]=SC2200/VSC3000 host +Name[kk]=SC2200/VSC3000 хосты Name[nb]=SC2200/VSC3000-vert Name[nds]=SC2200/VSC3000-Reekner Name[nl]=SC2200/VSC3000 host diff -Nru calligra-2.3.86/flow/stencils/Cisco/scanner.desktop calligra-2.3.87/flow/stencils/Cisco/scanner.desktop --- calligra-2.3.86/flow/stencils/Cisco/scanner.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Cisco/scanner.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -2,11 +2,13 @@ Name=Scanner Name[bg]=Скенер Name[ca]=Escànner +Name[ca@valencia]=Escànner Name[cs]=Skener Name[el]=Σαρωτής Name[et]=Skanner Name[ga]=Scanóir Name[it]=Scanner +Name[kk]=Сканер Name[nb]=Skanner Name[nl]=Scanner Name[pl]=Skaner diff -Nru calligra-2.3.86/flow/stencils/Cisco/security_appliance.desktop calligra-2.3.87/flow/stencils/Cisco/security_appliance.desktop --- calligra-2.3.86/flow/stencils/Cisco/security_appliance.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Cisco/security_appliance.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -1,9 +1,11 @@ [Desktop Entry] Name=Security appliance Name[ca]=Aplicació de seguretat +Name[ca@valencia]=Aplicació de seguretat Name[el]=Συσκευή ασφάλειας Name[et]=Turbeseade Name[it]=Apparato di sicurezza +Name[kk]=Қауіпсіздік жабдығы Name[nb]=Sikkerhetsapparat Name[nl]=Beveiligingsapparaat Name[pl]=Zastosowanie bezpieczeństwa diff -Nru calligra-2.3.86/flow/stencils/Cisco/server_switch.desktop calligra-2.3.87/flow/stencils/Cisco/server_switch.desktop --- calligra-2.3.86/flow/stencils/Cisco/server_switch.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Cisco/server_switch.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -1,9 +1,11 @@ [Desktop Entry] Name=Server Switch Name[ca]=Commutador de servidor +Name[ca@valencia]=Commutador de servidor Name[el]=Server Switch Name[et]=Serveri kommutaator Name[it]=Server Switch +Name[kk]=Сервер қосқышы Name[nb]=Tjenersvitsj Name[nl]=Server-switch Name[pl]=Przełącznik serwerowy diff -Nru calligra-2.3.86/flow/stencils/Cisco/server_with_pc_router.desktop calligra-2.3.87/flow/stencils/Cisco/server_with_pc_router.desktop --- calligra-2.3.86/flow/stencils/Cisco/server_with_pc_router.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Cisco/server_with_pc_router.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -2,9 +2,11 @@ Name=Server with PC Router Name[bg]=Сървър с PC-маршрутизатор Name[ca]=Servidor amb encaminador de PC +Name[ca@valencia]=Servidor amb encaminador de PC Name[el]=Εξυπηρετητής με PC δρομολογητή Name[et]=Server PC marsruuteriga Name[it]=Server con PC Router +Name[kk]=Сервер ДК маршруттауышымен Name[nb]=Tjener med PC-ruter Name[nds]=Server mit Reekner-Nettweger Name[nl]=Server met PC-router diff -Nru calligra-2.3.86/flow/stencils/Cisco/service_control.desktop calligra-2.3.87/flow/stencils/Cisco/service_control.desktop --- calligra-2.3.86/flow/stencils/Cisco/service_control.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Cisco/service_control.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -1,10 +1,13 @@ [Desktop Entry] Name=Service Control Name[ca]=Control de servei +Name[ca@valencia]=Control de servei Name[el]=Service Control Name[et]=Teenuste haldur Name[it]=Controllo di servizio +Name[kk]=Қызмет басқаруы Name[nb]=Tjenestestyring +Name[nl]=Servicebesturing Name[pl]=Kontrola usługi Name[pt]=Controlo de Serviços Name[pt_BR]=Controle de serviço diff -Nru calligra-2.3.86/flow/stencils/Cisco/sip_proxy_server.desktop calligra-2.3.87/flow/stencils/Cisco/sip_proxy_server.desktop --- calligra-2.3.86/flow/stencils/Cisco/sip_proxy_server.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Cisco/sip_proxy_server.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -2,9 +2,11 @@ Name=SIP Proxy server Name[bg]=Сървър-посредник SIP Name[ca]=Servidor proxy SIP +Name[ca@valencia]=Servidor proxy SIP Name[el]=Ενδιάμεσος εξυπηρετητής SIP Name[et]=SIP puhverserver Name[it]=SIP Proxy server +Name[kk]=SIP прокси сервері Name[nb]=SIP mellomtjener Name[nds]=SIP-Proxy-Server Name[nl]=SIP proxyserver diff -Nru calligra-2.3.86/flow/stencils/Cisco/sitting_woman.desktop calligra-2.3.87/flow/stencils/Cisco/sitting_woman.desktop --- calligra-2.3.86/flow/stencils/Cisco/sitting_woman.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Cisco/sitting_woman.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -2,10 +2,13 @@ Name=Sitting woman Name[bg]=Седяща жена Name[ca]=Dona asseguda +Name[ca@valencia]=Dona asseguda Name[et]=Istuv naine Name[it]=Donna seduta +Name[kk]=Отырған әйел Name[nb]=Sittende kvinne Name[nds]=Sitten Fru +Name[nl]=Zittende vrouw Name[pl]=Siedząca Kobieta Name[pt]=Mulher sentada Name[pt_BR]=Mulher sentada diff -Nru calligra-2.3.86/flow/stencils/Cisco/small_business.desktop calligra-2.3.87/flow/stencils/Cisco/small_business.desktop --- calligra-2.3.86/flow/stencils/Cisco/small_business.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Cisco/small_business.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -2,9 +2,11 @@ Name=Small Business Name[bg]=Малък бизнес Name[ca]=Petit negoci +Name[ca@valencia]=Petit negoci Name[el]=Μικρή επιχείρηση Name[et]=Väikeettevõte Name[it]=Piccola azienda +Name[kk]=Шағын іскерлік Name[nb]=Småbedrift Name[nds]=Lüttbedrief Name[nl]=Midden en klein bedrijf diff -Nru calligra-2.3.86/flow/stencils/Cisco/small_hub.desktop calligra-2.3.87/flow/stencils/Cisco/small_hub.desktop --- calligra-2.3.86/flow/stencils/Cisco/small_hub.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Cisco/small_hub.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -2,11 +2,14 @@ Name=Small hub Name[bg]=Малък хъб Name[ca]=Petit concentrador +Name[ca@valencia]=Petit concentrador Name[el]=Μικρός αναμεταδότης Name[et]=Väike jaotur Name[it]=Hub piccolo +Name[kk]=Кіші хаб Name[nb]=Lite nettnav Name[nds]=Lütt Nettknütt +Name[nl]=Kleine hub Name[pl]=Mały hub Name[pt]=Concentrador pequeno Name[pt_BR]=Concentrador pequeno diff -Nru calligra-2.3.86/flow/stencils/Cisco/softphone.desktop calligra-2.3.87/flow/stencils/Cisco/softphone.desktop --- calligra-2.3.86/flow/stencils/Cisco/softphone.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Cisco/softphone.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -2,9 +2,11 @@ Name=Softphone Name[bg]=Софтуерен телефон Name[ca]=Softphone +Name[ca@valencia]=Softphone Name[el]=Εφαρμογή τηλεφωνίας Name[et]=Softphone Name[it]=Softphone +Name[kk]=Бағдарламалық телефоны Name[nb]=Softphone Name[nds]=SoftPhone Name[nl]=Softphone diff -Nru calligra-2.3.86/flow/stencils/Cisco/software-based_router_on_file_server.desktop calligra-2.3.87/flow/stencils/Cisco/software-based_router_on_file_server.desktop --- calligra-2.3.86/flow/stencils/Cisco/software-based_router_on_file_server.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Cisco/software-based_router_on_file_server.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -2,10 +2,12 @@ Name=Software based server Name[bg]=Софтуерно базиран сървър Name[ca]=Servidor basat en programari +Name[ca@valencia]=Servidor basat en programari Name[de]=Software-basierter Server Name[el]=Εξυπηρετητής με λογισμικό Name[et]=Tarkvaraline server Name[it]=Server basato su software +Name[kk]=Бағдарламалық сервері Name[nb]=Programvarebasert tjener Name[nds]=Programm-baseert Server Name[nl]=Op software gebaseerde server diff -Nru calligra-2.3.86/flow/stencils/Cisco/sonet_mux.desktop calligra-2.3.87/flow/stencils/Cisco/sonet_mux.desktop --- calligra-2.3.86/flow/stencils/Cisco/sonet_mux.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Cisco/sonet_mux.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -2,9 +2,11 @@ Name=SONET MUX Name[bg]=SONET MUX Name[ca]=SONET MUX +Name[ca@valencia]=SONET MUX Name[el]=SONET MUX Name[et]=SONET MUX Name[it]=SONET MUX +Name[kk]=SONET MUX Name[nb]=SONET MUX Name[nl]=SONET MUX Name[pl]=SONET MUX diff -Nru calligra-2.3.86/flow/stencils/Cisco/speaker.desktop calligra-2.3.87/flow/stencils/Cisco/speaker.desktop --- calligra-2.3.86/flow/stencils/Cisco/speaker.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Cisco/speaker.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -2,10 +2,12 @@ Name=Speaker Name[bg]=Тонколона Name[ca]=Altaveu +Name[ca@valencia]=Altaveu Name[cs]=Reproduktor Name[el]=Ηχείο Name[et]=Valjuhääldi Name[it]=Altoparlante +Name[kk]=Динамик Name[nb]=Høyttaler Name[nds]=Luutspreker Name[nl]=Speaker diff -Nru calligra-2.3.86/flow/stencils/Cisco/ssl_terminator.desktop calligra-2.3.87/flow/stencils/Cisco/ssl_terminator.desktop --- calligra-2.3.86/flow/stencils/Cisco/ssl_terminator.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Cisco/ssl_terminator.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -1,8 +1,10 @@ [Desktop Entry] Name=SSL Terminator Name[ca]=SSL Terminator +Name[ca@valencia]=SSL Terminator Name[et]=SSL-terminaator Name[it]=Terminatore SSL +Name[kk]=SSL аятауыш Name[nb]=SSL-terminator Name[nds]=SSL-Terminator Name[nl]=SSL Terminator diff -Nru calligra-2.3.86/flow/stencils/Cisco/standing_man.desktop calligra-2.3.87/flow/stencils/Cisco/standing_man.desktop --- calligra-2.3.86/flow/stencils/Cisco/standing_man.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Cisco/standing_man.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -2,11 +2,14 @@ Name=Standing Man Name[bg]=Стоящ мъж Name[ca]=Home dempeus +Name[ca@valencia]=Home dempeus Name[de]=Stehender Mann Name[et]=Seisev mees Name[it]=Uomo in piedi +Name[kk]=Тұрған адам Name[nb]=Stående mann Name[nds]=Stahn Mann +Name[nl]=Staande man Name[pl]=Stojący mężczyzna Name[pt]=Homem de Pé Name[pt_BR]=Homem de pé diff -Nru calligra-2.3.86/flow/stencils/Cisco/stb.desktop calligra-2.3.87/flow/stencils/Cisco/stb.desktop --- calligra-2.3.86/flow/stencils/Cisco/stb.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Cisco/stb.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -1,9 +1,11 @@ [Desktop Entry] Name=STB (set top box) Name[ca]=STB (set top box) +Name[ca@valencia]=STB (set top box) Name[el]=STB (set top box) Name[et]=STB (teleriboks) Name[it]=STB (set top box) +Name[kk]=STB (қондырғы қорабы) Name[nb]=STB (set top box) Name[nl]=STB (set top box) Name[pl]=STB (ustaw górne pole) diff -Nru calligra-2.3.86/flow/stencils/Cisco/storage_array.desktop calligra-2.3.87/flow/stencils/Cisco/storage_array.desktop --- calligra-2.3.86/flow/stencils/Cisco/storage_array.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Cisco/storage_array.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -2,11 +2,14 @@ Name=Storage array Name[bg]=Масив хранилища Name[ca]=MAtriu d'emmagatzement +Name[ca@valencia]=MAtriu d'emmagatzement Name[el]=Αποθηκευτική διάταξη Name[et]=Salvestusmassiiv Name[it]=Storage array +Name[kk]=Жинатауыш жиымы Name[nb]=Lagringsmatrise Name[nds]=Spiekerfeld +Name[nl]=Storage-array Name[pl]=Macierz przechowywania Name[pt]=Bloco armazenamento Name[pt_BR]=Conjunto de armazenamento diff -Nru calligra-2.3.86/flow/stencils/Cisco/storage_router.desktop calligra-2.3.87/flow/stencils/Cisco/storage_router.desktop --- calligra-2.3.86/flow/stencils/Cisco/storage_router.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Cisco/storage_router.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -2,11 +2,14 @@ Name=Storage Router Name[bg]=Маршрутизатор за хранилище Name[ca]=Encaminador d'emmagatzematge +Name[ca@valencia]=Encaminador d'emmagatzematge Name[el]=Δρομολογητής αποθήκευσης Name[et]=Salvestusmarsruuter Name[it]=Router archiviazione +Name[kk]=Жинақтауыш маршрутизаторы Name[nb]=Lagringsruter Name[nds]=Spieker-Nettweger +Name[nl]=Storagerouter Name[pl]=Router przechowywania Name[pt]=Encaminhador Armazenamento Name[pt_BR]=Roteador de armazenamento diff -Nru calligra-2.3.86/flow/stencils/Cisco/storage_solution_engine.desktop calligra-2.3.87/flow/stencils/Cisco/storage_solution_engine.desktop --- calligra-2.3.86/flow/stencils/Cisco/storage_solution_engine.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Cisco/storage_solution_engine.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -1,10 +1,13 @@ [Desktop Entry] Name=Storage Solution Engine Name[ca]=Motor de solucions d'emmagatzement +Name[ca@valencia]=Motor de solucions d'emmagatzement Name[el]=Storage Solution Engine Name[et]=Storage Solution Engine Name[it]=Motore soluzione di archiviazione +Name[kk]=Жинақтауыш шешімінің тетігі Name[nb]=Storage Solution Engine +Name[nl]=Engine voor opslagoplossing Name[pl]=Silnik rozwiązania przechowywania Name[pt]=Motor Solução Armazenamento Name[pt_BR]=Motor de solução de armazenamento diff -Nru calligra-2.3.86/flow/stencils/Cisco/stp.desktop calligra-2.3.87/flow/stencils/Cisco/stp.desktop --- calligra-2.3.86/flow/stencils/Cisco/stp.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Cisco/stp.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -2,10 +2,12 @@ Name=STP Name[bg]=STP Name[ca]=STP +Name[ca@valencia]=STP Name[de]=STP Name[el]=STP Name[et]=STP Name[it]=STP +Name[kk]=STP Name[nb]=STP Name[nds]=STP Name[nl]=STP diff -Nru calligra-2.3.86/flow/stencils/Cisco/sun_workstation.desktop calligra-2.3.87/flow/stencils/Cisco/sun_workstation.desktop --- calligra-2.3.86/flow/stencils/Cisco/sun_workstation.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Cisco/sun_workstation.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -2,11 +2,13 @@ Name=SUN workstation Name[bg]=Работна станция SUN Name[ca]=Estació de treball Sun +Name[ca@valencia]=Estació de treball Sun Name[de]=SUN-Workstation Name[el]=Σταθμός εργασίας SUN Name[es]=Estación de trabajo SUN Name[et]=SUN tööjaam Name[it]=SUN workstation +Name[kk]=SUN жұмыс станциясы Name[nb]=SUN arbeidsstasjon Name[nds]=SUN-Arbeitreekner Name[nl]=SUN werkstation diff -Nru calligra-2.3.86/flow/stencils/Cisco/supercomputer.desktop calligra-2.3.87/flow/stencils/Cisco/supercomputer.desktop --- calligra-2.3.86/flow/stencils/Cisco/supercomputer.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Cisco/supercomputer.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -2,10 +2,12 @@ Name=Supercomputer Name[bg]=Суперкомпютър Name[ca]=Superordinador +Name[ca@valencia]=Superordinador Name[de]=Supercomputer Name[el]=Υπερυπολογιστής Name[et]=Superarvuti Name[it]=Supercomputer +Name[kk]=Суперкомпьютер Name[nb]=Superdator Name[nl]=Supercomputer Name[pl]=Superkomputer diff -Nru calligra-2.3.86/flow/stencils/Cisco/svx.desktop calligra-2.3.87/flow/stencils/Cisco/svx.desktop --- calligra-2.3.86/flow/stencils/Cisco/svx.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Cisco/svx.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -2,10 +2,12 @@ Name=SVX (interchangeable with End office) Name[bg]=SVX (заменяем с краен офис) Name[ca]=SVX (interchangeable with End office) +Name[ca@valencia]=SVX (interchangeable with End office) Name[de]=SVX (austauschbar mit End-Office) Name[el]=SVX (interchangeable with End office) Name[et]=SVX (vahetatav lõpptarbijaga) Name[it]=SVX (interscambio con l'ufficio finale) +Name[kk]=SVX (соңғы кеңсесімен ауыстырылатын) Name[nb]=SVX (kan byttes ut med Endekontor) Name[nds]=SVX (utwesselbor mit Enn-Kontoor) Name[nl]=SVX (uitwisselbaar met End office) diff -Nru calligra-2.3.86/flow/stencils/Cisco/switch_processor.desktop calligra-2.3.87/flow/stencils/Cisco/switch_processor.desktop --- calligra-2.3.86/flow/stencils/Cisco/switch_processor.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Cisco/switch_processor.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -1,9 +1,11 @@ [Desktop Entry] Name=Switch Processor Name[ca]=Processador de commutació +Name[ca@valencia]=Processador de commutació Name[el]=Επεξεργαστής μεταγωγής Name[et]=Kommutaatori protsessor Name[it]=Switch Processor +Name[kk]=Қосқыш процесоры Name[nb]=Datasvitsj-prosessor Name[nds]=Ümschaltperzesser Name[nl]=Switch Processor diff -Nru calligra-2.3.86/flow/stencils/Cisco/system_controller.desktop calligra-2.3.87/flow/stencils/Cisco/system_controller.desktop --- calligra-2.3.86/flow/stencils/Cisco/system_controller.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Cisco/system_controller.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -2,10 +2,12 @@ Name=System controller Name[bg]=Системен контролер Name[ca]=Controlador del sistema +Name[ca@valencia]=Controlador del sistema Name[de]=System-Controller Name[el]=Ελεγκτής συστήματος Name[et]=Süsteemikontroller Name[it]=Controller di sistema +Name[kk]=Жүйе контроллері Name[nb]=Systemkontroller Name[nds]=Systeemkontroller Name[nl]=Systeemcontroller diff -Nru calligra-2.3.86/flow/stencils/Cisco/tablet.desktop calligra-2.3.87/flow/stencils/Cisco/tablet.desktop --- calligra-2.3.86/flow/stencils/Cisco/tablet.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Cisco/tablet.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -2,12 +2,14 @@ Name=Tablet Name[bg]=Таблет Name[ca]=Tauleta +Name[ca@valencia]=Tauleta Name[cs]=Tablet Name[de]=Tablett Name[el]=Πινάκιο Name[es]=Tableta Name[et]=Tahvelarvuti Name[it]=Tablet +Name[kk]=Планшет Name[nb]=Tegneplate Name[nds]=Tablett Name[nl]=Tablet diff -Nru calligra-2.3.86/flow/stencils/Cisco/tape_array.desktop calligra-2.3.87/flow/stencils/Cisco/tape_array.desktop --- calligra-2.3.86/flow/stencils/Cisco/tape_array.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Cisco/tape_array.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -1,9 +1,12 @@ [Desktop Entry] Name=Tape array Name[ca]=Cinta matriu +Name[ca@valencia]=Cinta matriu Name[et]=Lindimassiiv Name[it]=Array di nastri +Name[kk]=Таспа (жиым) Name[nb]=StorageRack3U +Name[nl]=Tape-array Name[pl]=Macierz taśmy Name[pt]=Bloco fitas magnéticas Name[pt_BR]=Conjunto de fitas magnéticas diff -Nru calligra-2.3.86/flow/stencils/Cisco/tdm_router.desktop calligra-2.3.87/flow/stencils/Cisco/tdm_router.desktop --- calligra-2.3.86/flow/stencils/Cisco/tdm_router.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Cisco/tdm_router.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -2,10 +2,12 @@ Name=TDM router Name[bg]=Маршрутизатор TDM Name[ca]=Encaminador TDM +Name[ca@valencia]=Encaminador TDM Name[de]=TDM-Router Name[el]=Δρομολογητής TDM Name[et]=TDM ruuter Name[it]=Router TDM +Name[kk]=TDM маршруттауышы Name[nb]=TDM-ruter Name[nds]=TDM-Nettweger Name[nl]=TDM router: diff -Nru calligra-2.3.86/flow/stencils/Cisco/telecommuter.desktop calligra-2.3.87/flow/stencils/Cisco/telecommuter.desktop --- calligra-2.3.86/flow/stencils/Cisco/telecommuter.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Cisco/telecommuter.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -2,11 +2,14 @@ Name=Telecommuter Name[bg]=Човек, работещ отдалечено Name[ca]=Telecommutador +Name[ca@valencia]=Telecommutador Name[de]=Telecommuter Name[et]=Telekommutaator Name[it]=Telecommutatore +Name[kk]=Үйіндегі қызметкер Name[nb]=Telependler Name[nds]=Telewerker +Name[nl]=Telewerker Name[pl]=Pracownik zdalny Name[pt]=Tele-comutador Name[pt_BR]=Telecomutador diff -Nru calligra-2.3.86/flow/stencils/Cisco/telecommuter_house.desktop calligra-2.3.87/flow/stencils/Cisco/telecommuter_house.desktop --- calligra-2.3.86/flow/stencils/Cisco/telecommuter_house.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Cisco/telecommuter_house.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -2,11 +2,14 @@ Name=Telecommuter house Name[bg]=Отдалечено работно място Name[ca]=Casa telecommutador +Name[ca@valencia]=Casa telecommutador Name[de]=Telecommuter-Haus Name[et]=Telekommunikatsioonihoone Name[it]=Telecommutatore casa +Name[kk]=Үйдегі компьютер Name[nb]=Telependler-hus Name[nds]=Telewerker-Huus +Name[nl]=Telewerker thuis Name[pl]=Dom pracownika zdalnego Name[pt]=Alojamento Tele-comutador Name[pt_BR]=Casa de telecomutador diff -Nru calligra-2.3.86/flow/stencils/Cisco/telecommuter_house_router.desktop calligra-2.3.87/flow/stencils/Cisco/telecommuter_house_router.desktop --- calligra-2.3.86/flow/stencils/Cisco/telecommuter_house_router.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Cisco/telecommuter_house_router.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -2,11 +2,14 @@ Name=Telecommuter house/router Name[bg]=Отдалечено работно място/маршрутизатор Name[ca]=Casa/encaminador telecommutador +Name[ca@valencia]=Casa/encaminador telecommutador Name[de]=Telecommuter-Haus/-Router Name[et]=Telekommutaator/marsruuter Name[it]=Telecommutatore casa/router +Name[kk]=Үйдегі компьютер/маршруттауыш Name[nb]=Telependler hus/ruter Name[nds]=Telewerker-Huus/-Nettweger +Name[nl]=Telewerker thuis/router Name[pl]=Dom pracownika zdalnego/router Name[pt]=Alojamento/encaminhamento tele-comutador Name[pt_BR]=Casa de telecomutador/roteador diff -Nru calligra-2.3.86/flow/stencils/Cisco/telecommuter_house_subdued.desktop calligra-2.3.87/flow/stencils/Cisco/telecommuter_house_subdued.desktop --- calligra-2.3.86/flow/stencils/Cisco/telecommuter_house_subdued.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Cisco/telecommuter_house_subdued.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -1,8 +1,11 @@ [Desktop Entry] Name=Telecommuter house subdued Name[ca]=Casa telecommutador suavitzat +Name[ca@valencia]=Casa telecommutador suavitzat Name[et]=Toonita telekommunikatsioonihoone +Name[kk]=Басыңқы үйдегі компьютер Name[nb]=Telependler-hus dempet +Name[nl]=Ondergeschikt telewerkerhuis Name[pl]=Dom pracownika zdalnego podległy Name[pt]=Alojamento tele-comutador ultrapassado Name[pt_BR]=Casa de telecomutador/roteador ultrapassada diff -Nru calligra-2.3.86/flow/stencils/Cisco/terminal.desktop calligra-2.3.87/flow/stencils/Cisco/terminal.desktop --- calligra-2.3.86/flow/stencils/Cisco/terminal.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Cisco/terminal.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -2,6 +2,7 @@ Name=Terminal Name[bg]=Терминал Name[ca]=Terminal +Name[ca@valencia]=Terminal Name[cs]=Terminál Name[de]=Terminal Name[el]=Τερματικό @@ -9,6 +10,7 @@ Name[et]=Terminal Name[ga]=Teirminéal Name[it]=Terminale +Name[kk]=Терминал Name[nb]=Terminal Name[nl]=Terminal Name[pl]=Terminal diff -Nru calligra-2.3.86/flow/stencils/Cisco/terminal_server.desktop calligra-2.3.87/flow/stencils/Cisco/terminal_server.desktop --- calligra-2.3.86/flow/stencils/Cisco/terminal_server.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Cisco/terminal_server.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -2,10 +2,12 @@ Name=Terminal Server Name[bg]=Терминален сървър Name[ca]=Servidor de terminal +Name[ca@valencia]=Servidor de terminal Name[de]=Terminal-Server Name[el]=Τερματικός εξυπηρετητής Name[et]=Terminalserver Name[it]=Terminal server +Name[kk]=Терминал сервері Name[nb]=Terminaltjener Name[nl]=Terminal-server Name[pl]=Serwer terminala diff -Nru calligra-2.3.86/flow/stencils/Cisco/tokenring.desktop calligra-2.3.87/flow/stencils/Cisco/tokenring.desktop --- calligra-2.3.86/flow/stencils/Cisco/tokenring.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Cisco/tokenring.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -2,10 +2,12 @@ Name=TokenRing Name[bg]=TokenRing Name[ca]=TokenRing +Name[ca@valencia]=TokenRing Name[de]=TokenRing Name[el]=TokenRing Name[et]=Lubaring Name[it]=TokenRing +Name[kk]=TokenRing Name[nb]=TokenRing Name[nds]=Token Ring Name[nl]=TokenRing diff -Nru calligra-2.3.86/flow/stencils/Cisco/transpath.desktop calligra-2.3.87/flow/stencils/Cisco/transpath.desktop --- calligra-2.3.86/flow/stencils/Cisco/transpath.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Cisco/transpath.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -2,10 +2,12 @@ Name=Transpath Name[bg]=Transpath Name[ca]=Transpath +Name[ca@valencia]=Transpath Name[de]=Transpath Name[el]=Transpath Name[et]=Transpath Name[it]=Transpath +Name[kk]=Transpath Name[nb]=Transpath Name[nds]=Transpadd Name[nl]=Transpath diff -Nru calligra-2.3.86/flow/stencils/Cisco/truck.desktop calligra-2.3.87/flow/stencils/Cisco/truck.desktop --- calligra-2.3.86/flow/stencils/Cisco/truck.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Cisco/truck.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -2,10 +2,12 @@ Name=Truck Name[bg]=Камион Name[ca]=Truck +Name[ca@valencia]=Truck Name[de]=LKW Name[el]=Φορτηγό Name[et]=Veoauto Name[it]=Camion +Name[kk]=Жүк машина Name[nb]=Lastebil Name[nl]=Vrachtwagen Name[pl]=Ciężarówka diff -Nru calligra-2.3.86/flow/stencils/Cisco/turret.desktop calligra-2.3.87/flow/stencils/Cisco/turret.desktop --- calligra-2.3.86/flow/stencils/Cisco/turret.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Cisco/turret.desktop 2012-01-28 14:26:27.000000000 +0000 @@ -1,11 +1,14 @@ [Desktop Entry] Name=Turret Name[ca]=Torreta +Name[ca@valencia]=Torreta Name[el]=Πυργίσκος Name[et]=Keskjaam Name[it]=Torretta +Name[kk]=Пульт Name[nb]=Tårn Name[nds]=Turret +Name[nl]=Draaikoepel Name[pl]=Nadstawka łącznicowa Name[pt]=Torre Name[pt_BR]=Torre diff -Nru calligra-2.3.86/flow/stencils/Cisco/tv.desktop calligra-2.3.87/flow/stencils/Cisco/tv.desktop --- calligra-2.3.86/flow/stencils/Cisco/tv.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Cisco/tv.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -2,10 +2,12 @@ Name=TV Name[bg]=Телевизия Name[ca]=TV +Name[ca@valencia]=TV Name[cs]=TV Name[el]=Τηλεόραση Name[et]=TV Name[it]=TV +Name[kk]=ТВ Name[nb]=TV Name[nds]=Feernsehn Name[nl]=TV diff -Nru calligra-2.3.86/flow/stencils/Cisco/ubr910_cable_dsu.desktop calligra-2.3.87/flow/stencils/Cisco/ubr910_cable_dsu.desktop --- calligra-2.3.86/flow/stencils/Cisco/ubr910_cable_dsu.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Cisco/ubr910_cable_dsu.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -2,10 +2,12 @@ Name=uBR910 Name[bg]=uBR910 Name[ca]=uBR910 +Name[ca@valencia]=uBR910 Name[de]=uBR910 Name[el]=uBR910 Name[et]=uBR910 Name[it]=uBR910 +Name[kk]=uBR910 Name[nb]=uBR910 Name[nds]=uBR910 Name[nl]=uBR910 diff -Nru calligra-2.3.86/flow/stencils/Cisco/umg_series.desktop calligra-2.3.87/flow/stencils/Cisco/umg_series.desktop --- calligra-2.3.86/flow/stencils/Cisco/umg_series.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Cisco/umg_series.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -1,9 +1,11 @@ [Desktop Entry] Name=uMG series Name[ca]=sèrie uMG +Name[ca@valencia]=sèrie uMG Name[el]=uMG series Name[et]=uMG seeria Name[it]=Serie uMG +Name[kk]=uMG тізбегі Name[nb]=uMG serie Name[nl]=uMG-serie Name[pl]=Seria uMG diff -Nru calligra-2.3.86/flow/stencils/Cisco/unity_express.desktop calligra-2.3.87/flow/stencils/Cisco/unity_express.desktop --- calligra-2.3.86/flow/stencils/Cisco/unity_express.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Cisco/unity_express.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -1,8 +1,10 @@ [Desktop Entry] Name=Unity Express Name[ca]=Unity Express +Name[ca@valencia]=Unity Express Name[et]=Unity Express Name[it]=Unity Express +Name[kk]=Unity Express Name[nb]=Unity Express Name[nl]=Unity Express Name[pl]=Unity Express diff -Nru calligra-2.3.86/flow/stencils/Cisco/unity_server.desktop calligra-2.3.87/flow/stencils/Cisco/unity_server.desktop --- calligra-2.3.86/flow/stencils/Cisco/unity_server.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Cisco/unity_server.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -2,10 +2,12 @@ Name=Unity server Name[bg]=Съвместен сървър Name[ca]=Servidor Unity +Name[ca@valencia]=Servidor Unity Name[de]=Unity-Server Name[el]=Εξυπηρετητής Unity Name[et]=Unity server Name[it]=Server Unity +Name[kk]=Unity сервері Name[nb]=Unity-tjener Name[nds]=Unity-Server Name[nl]=Unity-server diff -Nru calligra-2.3.86/flow/stencils/Cisco/universal_gateway.desktop calligra-2.3.87/flow/stencils/Cisco/universal_gateway.desktop --- calligra-2.3.86/flow/stencils/Cisco/universal_gateway.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Cisco/universal_gateway.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -2,10 +2,12 @@ Name=Universal Gateway Name[bg]=Универсален шлюз Name[ca]=Passarel·la universal +Name[ca@valencia]=Passarel·la universal Name[de]=Universelles Gateway Name[el]=Καθολική πύλη Name[et]=Universaalne lüüs Name[it]=Gateway universale +Name[kk]=Әмбебап шлюзі Name[nb]=Universell portner Name[nds]=Allgemeen Döörreekner Name[nl]=Universal Gateway diff -Nru calligra-2.3.86/flow/stencils/Cisco/university.desktop calligra-2.3.87/flow/stencils/Cisco/university.desktop --- calligra-2.3.86/flow/stencils/Cisco/university.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Cisco/university.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -2,12 +2,14 @@ Name=University Name[bg]=Университет Name[ca]=Universitat +Name[ca@valencia]=Universitat Name[cs]=Univerzita Name[de]=Universität Name[el]=Πανεπιστήμιο Name[es]=Universidad Name[et]=Ülikool Name[it]=Università +Name[kk]=Университет Name[nb]=Universitet Name[nds]=Universiteet Name[nl]=Universiteit diff -Nru calligra-2.3.86/flow/stencils/Cisco/ups.desktop calligra-2.3.87/flow/stencils/Cisco/ups.desktop --- calligra-2.3.86/flow/stencils/Cisco/ups.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Cisco/ups.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -2,11 +2,13 @@ Name=UPS Name[bg]=Непрекъсваемо токозахранване Name[ca]=UPS +Name[ca@valencia]=UPS Name[cs]=UPS Name[de]=USV Name[el]=UPS Name[et]=UPS Name[it]=UPS +Name[kk]=UPS Name[nb]=UPS Name[nl]=UPS Name[pl]=UPS diff -Nru calligra-2.3.86/flow/stencils/Cisco/video_camera.desktop calligra-2.3.87/flow/stencils/Cisco/video_camera.desktop --- calligra-2.3.86/flow/stencils/Cisco/video_camera.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Cisco/video_camera.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -2,11 +2,13 @@ Name=Video camera Name[bg]=Видеокамера Name[ca]=Càmera de vídeo +Name[ca@valencia]=Càmera de vídeo Name[de]=Videokamera Name[el]=Βιντεοκάμερα Name[es]=Videocámara Name[et]=Videokaamera Name[it]=Videocamera +Name[kk]=Бейнекамера Name[nb]=Videokamera Name[nds]=Videokamera Name[nl]=Videocamera diff -Nru calligra-2.3.86/flow/stencils/Cisco/video_camera_right.desktop calligra-2.3.87/flow/stencils/Cisco/video_camera_right.desktop --- calligra-2.3.86/flow/stencils/Cisco/video_camera_right.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Cisco/video_camera_right.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -1,9 +1,11 @@ [Desktop Entry] Name=Video Camera right Name[ca]=Càmera de vídeo a la dreta +Name[ca@valencia]=Càmera de vídeo a la dreta Name[el]=Βιντεοκάμερα δεξιά Name[et]=Parempoolne videokaamera Name[it]=Videocamera (destra) +Name[kk]=Бейнекамера (оң жақ) Name[nb]=Videokamera høyre Name[nl]=Videocamera rechts Name[pl]=Kamera video na prawo diff -Nru calligra-2.3.86/flow/stencils/Cisco/vip.desktop calligra-2.3.87/flow/stencils/Cisco/vip.desktop --- calligra-2.3.86/flow/stencils/Cisco/vip.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Cisco/vip.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -2,10 +2,12 @@ Name=VIP Name[bg]=VIP Name[ca]=VIP +Name[ca@valencia]=VIP Name[de]=VIP Name[el]=VIP Name[et]=VIP Name[it]=VIP +Name[kk]=VIP Name[nb]=VIP Name[nds]=VIP Name[nl]=VIP diff -Nru calligra-2.3.86/flow/stencils/Cisco/virtual_layer_switch.desktop calligra-2.3.87/flow/stencils/Cisco/virtual_layer_switch.desktop --- calligra-2.3.86/flow/stencils/Cisco/virtual_layer_switch.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Cisco/virtual_layer_switch.desktop 2012-01-28 14:26:27.000000000 +0000 @@ -1,8 +1,10 @@ [Desktop Entry] Name=Virtual Layer Switch Name[ca]=Virtual Layer Switch +Name[ca@valencia]=Virtual Layer Switch Name[et]=Virtuaalse kihi kommutaator Name[it]=Virtual Layer Switch +Name[kk]=Виртуалды деңгейлі қосқышы Name[nb]=Virtuell lagsvitsj Name[nl]=Virtual Layer Switch Name[pl]=Przełącznik wirtualnego poziomu diff -Nru calligra-2.3.86/flow/stencils/Cisco/vn2900.desktop calligra-2.3.87/flow/stencils/Cisco/vn2900.desktop --- calligra-2.3.86/flow/stencils/Cisco/vn2900.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Cisco/vn2900.desktop 2012-01-28 14:26:27.000000000 +0000 @@ -2,11 +2,13 @@ Name=VN2900 Name[bg]=VN2900 Name[ca]=VN2900 +Name[ca@valencia]=VN2900 Name[cs]=VN2900 Name[de]=VN2900 Name[el]=VN2900 Name[et]=VN2900 Name[it]=VN2900 +Name[kk]=VN2900 Name[nb]=VN2900 Name[nds]=VN2900 Name[nl]=VN2900 diff -Nru calligra-2.3.86/flow/stencils/Cisco/vn5900.desktop calligra-2.3.87/flow/stencils/Cisco/vn5900.desktop --- calligra-2.3.86/flow/stencils/Cisco/vn5900.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Cisco/vn5900.desktop 2012-01-28 14:26:27.000000000 +0000 @@ -2,11 +2,13 @@ Name=VN5900 Name[bg]=VN5900 Name[ca]=VN5900 +Name[ca@valencia]=VN5900 Name[cs]=VN5900 Name[de]=VN5900 Name[el]=VN5900 Name[et]=VN5900 Name[it]=VN5900 +Name[kk]=VN5900 Name[nb]=VN5900 Name[nds]=VN5900 Name[nl]=VN5900 diff -Nru calligra-2.3.86/flow/stencils/Cisco/vn5902.desktop calligra-2.3.87/flow/stencils/Cisco/vn5902.desktop --- calligra-2.3.86/flow/stencils/Cisco/vn5902.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Cisco/vn5902.desktop 2012-01-28 14:26:27.000000000 +0000 @@ -2,11 +2,13 @@ Name=VN5902 Name[bg]=VN5902 Name[ca]=VN5902 +Name[ca@valencia]=VN5902 Name[cs]=VN5902 Name[de]=VN5902 Name[el]=VN5902 Name[et]=VN5902 Name[it]=VN5902 +Name[kk]=VN5902 Name[nb]=VN5902 Name[nds]=VN5902 Name[nl]=VN5902 diff -Nru calligra-2.3.86/flow/stencils/Cisco/voice-enabled_access_server.desktop calligra-2.3.87/flow/stencils/Cisco/voice-enabled_access_server.desktop --- calligra-2.3.86/flow/stencils/Cisco/voice-enabled_access_server.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Cisco/voice-enabled_access_server.desktop 2012-01-28 14:26:27.000000000 +0000 @@ -2,12 +2,15 @@ Name=Voice commserver Name[bg]=Гласов комсървър Name[ca]=Voice commserver +Name[ca@valencia]=Voice commserver Name[de]=Voice-Commserver Name[el]=Εξυπηρετητής φωνητικής επικοινωνίας Name[et]=Häälsuhtluse server Name[it]=Voice commserver +Name[kk]=Дауыс байланыс сервері Name[nb]=Tale-kommunikasjonstjener Name[nds]=Stimm-Commserver +Name[nl]=Voice commserver Name[pl]=Serwer komunikacji głosowej Name[pt]=Servidor com. voz Name[pt_BR]=Servidor de comunicações de voz diff -Nru calligra-2.3.86/flow/stencils/Cisco/voice-enabled_atm_switch.desktop calligra-2.3.87/flow/stencils/Cisco/voice-enabled_atm_switch.desktop --- calligra-2.3.86/flow/stencils/Cisco/voice-enabled_atm_switch.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Cisco/voice-enabled_atm_switch.desktop 2012-01-28 14:26:27.000000000 +0000 @@ -2,10 +2,12 @@ Name=Voice ATM Switch Name[bg]=Гласов комутатор ATM Name[ca]=Voice ATM Switch +Name[ca@valencia]=Voice ATM Switch Name[de]=Voice-ATM-Switch Name[el]=Μεταγωγέας φωνής ATM Name[et]=ATM häälekommutaator Name[it]=Voice ATM Switch +Name[kk]=Дауыс ATM қосқышы Name[nb]=ATM talesvitsj Name[nds]=Stimm-ATM-Ümschalter Name[nl]=Voice ATM Switch diff -Nru calligra-2.3.86/flow/stencils/Cisco/voice-enabled_router.desktop calligra-2.3.87/flow/stencils/Cisco/voice-enabled_router.desktop --- calligra-2.3.86/flow/stencils/Cisco/voice-enabled_router.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Cisco/voice-enabled_router.desktop 2012-01-28 14:26:27.000000000 +0000 @@ -2,10 +2,12 @@ Name=Voice router Name[bg]=Гласов маршрутизатор Name[ca]=Encaminador de veu +Name[ca@valencia]=Encaminador de veu Name[de]=Voice-Router Name[el]=Δρομολογητής φωνής Name[et]=Helimarsruuter Name[it]=Voice router +Name[kk]=Дауыс маршруттауыш Name[nb]=Taleruter Name[nds]=Stimm-Nettweger Name[nl]=Voice router diff -Nru calligra-2.3.86/flow/stencils/Cisco/voice_switch2.desktop calligra-2.3.87/flow/stencils/Cisco/voice_switch2.desktop --- calligra-2.3.86/flow/stencils/Cisco/voice_switch2.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Cisco/voice_switch2.desktop 2012-01-28 14:26:27.000000000 +0000 @@ -1,10 +1,12 @@ [Desktop Entry] Name=Voice switch 2 Name[ca]=Commutador de veu 2 +Name[ca@valencia]=Commutador de veu 2 Name[de]=Voice-Switch 2 Name[el]=Μεταγωγέας φωνής 2 Name[et]=Häälekommutaator 2 Name[it]=Voice switch 2 +Name[kk]=Дауыс қосқышы 2 Name[nb]=Talesvitsj 2 Name[nds]=Stimm-Ümschalter 2 Name[nl]=Voice switch 2 diff -Nru calligra-2.3.86/flow/stencils/Cisco/vpn_concentrator.desktop calligra-2.3.87/flow/stencils/Cisco/vpn_concentrator.desktop --- calligra-2.3.86/flow/stencils/Cisco/vpn_concentrator.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Cisco/vpn_concentrator.desktop 2012-01-28 14:26:27.000000000 +0000 @@ -2,10 +2,12 @@ Name=VPN concentrator Name[bg]=Концентратор VPN Name[ca]=Concentrador VPN +Name[ca@valencia]=Concentrador VPN Name[de]=VPN-Konzentrator Name[el]=Συγκεντρωτής VPN Name[et]=VPN kontsentraator Name[it]=Concentratore VPN +Name[kk]=VPN шоғырлауышы Name[nb]=VPN-konsentrator Name[nds]=VPN-Konzentrator Name[nl]=VPN-concentrator diff -Nru calligra-2.3.86/flow/stencils/Cisco/vpn_gateway.desktop calligra-2.3.87/flow/stencils/Cisco/vpn_gateway.desktop --- calligra-2.3.86/flow/stencils/Cisco/vpn_gateway.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Cisco/vpn_gateway.desktop 2012-01-28 14:26:27.000000000 +0000 @@ -2,11 +2,13 @@ Name=VPN Gateway Name[bg]=Шлюз VPN Name[ca]=Passarel·la VPN +Name[ca@valencia]=Passarel·la VPN Name[cs]=Brána VPN Name[de]=VPN-Gateway Name[el]=Πύλη VPN Name[et]=VPN lüüs Name[it]=Gateway VPN +Name[kk]=VPN шлюзі Name[nb]=VPN-portner Name[nds]=VPN-Döörreekner Name[nl]=VPN-gateway diff -Nru calligra-2.3.86/flow/stencils/Cisco/vsc3000.desktop calligra-2.3.87/flow/stencils/Cisco/vsc3000.desktop --- calligra-2.3.86/flow/stencils/Cisco/vsc3000.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Cisco/vsc3000.desktop 2012-01-28 14:26:27.000000000 +0000 @@ -2,10 +2,12 @@ Name=Virtual switch controller (VSC 3000) Name[bg]=Виртуален контролер за комутиране (VSC 3000) Name[ca]=Virtual switch controller (VSC 3000) +Name[ca@valencia]=Virtual switch controller (VSC 3000) Name[de]=Virtual-Switch-Controller (VSC 3000) Name[el]=Εικονικός ελεγκτής μεταγωγής (VSC 3000) Name[et]=Virtuaalkommutaatori kontroller (VSC 3000) Name[it]=Virtual switch controller (VSC 3000) +Name[kk]=Виртуалды қосқыш контроллері (VSC 3000) Name[nb]=Virtuell svitsj-kontroller (VSC 3000) Name[nds]=Virtuell-Ümschaltkontroller (VSC 3000) Name[nl]=Virtual switch controller (VSC 3000) diff -Nru calligra-2.3.86/flow/stencils/Cisco/wan.desktop calligra-2.3.87/flow/stencils/Cisco/wan.desktop --- calligra-2.3.86/flow/stencils/Cisco/wan.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Cisco/wan.desktop 2012-01-28 14:26:27.000000000 +0000 @@ -2,11 +2,13 @@ Name=WAN Name[bg]=WAN Name[ca]=WAN +Name[ca@valencia]=WAN Name[de]=WAN Name[el]=WAN Name[es]=WAN Name[et]=WAN Name[it]=WAN +Name[kk]=WAN Name[nb]=WAN Name[nds]=WAN Name[nl]=WAN diff -Nru calligra-2.3.86/flow/stencils/Cisco/wavelength_router.desktop calligra-2.3.87/flow/stencils/Cisco/wavelength_router.desktop --- calligra-2.3.86/flow/stencils/Cisco/wavelength_router.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Cisco/wavelength_router.desktop 2012-01-28 14:26:27.000000000 +0000 @@ -1,12 +1,15 @@ [Desktop Entry] Name=Wavelength router Name[ca]=Encaminador Wavelength +Name[ca@valencia]=Encaminador Wavelength Name[de]=Wavelength-Router Name[el]=Δρομολογητής μήκους κύματος Name[et]=Lainepikkuse marsruuter Name[it]=Wavelength router +Name[kk]=Толқын маршруттауышы Name[nb]=Bølgelengde-ruter Name[nds]=Bülgenläng-Nettweger +Name[nl]=Wavelength-router Name[pl]=Router długości fali Name[pt]=Encaminhador comprimento onda Name[pt_BR]=Roteador de comprimento de onda diff -Nru calligra-2.3.86/flow/stencils/Cisco/wdm.desktop calligra-2.3.87/flow/stencils/Cisco/wdm.desktop --- calligra-2.3.86/flow/stencils/Cisco/wdm.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Cisco/wdm.desktop 2012-01-28 14:26:27.000000000 +0000 @@ -2,10 +2,12 @@ Name=WDM Name[bg]=WDM Name[ca]=WDM +Name[ca@valencia]=WDM Name[de]=WDM Name[el]=WDM Name[et]=WDM Name[it]=WDM +Name[kk]=WDM Name[nb]=WDM Name[nds]=WDM Name[nl]=WDM diff -Nru calligra-2.3.86/flow/stencils/Cisco/web_browser.desktop calligra-2.3.87/flow/stencils/Cisco/web_browser.desktop --- calligra-2.3.86/flow/stencils/Cisco/web_browser.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Cisco/web_browser.desktop 2012-01-28 14:26:27.000000000 +0000 @@ -2,12 +2,14 @@ Name=Web browser Name[bg]=Уеб-браузър Name[ca]=Navegador web +Name[ca@valencia]=Navegador web Name[cs]=Webový prohlížeč Name[de]=Webbrowser Name[el]=Περιηγητής ιστού Name[es]=Navegador web Name[et]=Veebibrauser Name[it]=Browser web +Name[kk]=Веб браузері Name[nb]=Nettleser Name[nds]=Nettkieker Name[nl]=Webbrowser diff -Nru calligra-2.3.86/flow/stencils/Cisco/web_cluster.desktop calligra-2.3.87/flow/stencils/Cisco/web_cluster.desktop --- calligra-2.3.86/flow/stencils/Cisco/web_cluster.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Cisco/web_cluster.desktop 2012-01-28 14:26:27.000000000 +0000 @@ -2,12 +2,15 @@ Name=Web cluster Name[bg]=Уеб-клъстър Name[ca]=Clúster web +Name[ca@valencia]=Clúster web Name[de]=Web-Cluster Name[el]=Συστοιχία ιστού Name[et]=Veebiklaster Name[it]=Cluster web +Name[kk]=Веб кластері Name[nb]=Nettklynge Name[nds]=Nett-Hopen +Name[nl]=Web-cluster Name[pl]=Klaster sieciowy Name[pt]='Cluster' Web Name[pt_BR]=Cluster Web diff -Nru calligra-2.3.86/flow/stencils/Cisco/wi-fi_tag.desktop calligra-2.3.87/flow/stencils/Cisco/wi-fi_tag.desktop --- calligra-2.3.86/flow/stencils/Cisco/wi-fi_tag.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Cisco/wi-fi_tag.desktop 2012-01-28 14:26:27.000000000 +0000 @@ -1,9 +1,11 @@ [Desktop Entry] Name=Wi-Fi Tag Name[ca]=Etiqueta Wifi +Name[ca@valencia]=Etiqueta Wifi Name[el]=Ετικέτα Wi-Fi Name[et]=Wi-Fi lokaator Name[it]=Wi-Fi Tag +Name[kk]=Wi-Fi белгісі Name[nb]=Wi-Fi etikett Name[nl]=Wi-Fi-tag Name[pl]=Znacznik Wi-Fi diff -Nru calligra-2.3.86/flow/stencils/Cisco/wireless_bridge.desktop calligra-2.3.87/flow/stencils/Cisco/wireless_bridge.desktop --- calligra-2.3.86/flow/stencils/Cisco/wireless_bridge.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Cisco/wireless_bridge.desktop 2012-01-28 14:26:27.000000000 +0000 @@ -2,9 +2,11 @@ Name=Wireless Bridge Name[bg]=Безжичен мост Name[ca]=Pont sense fils +Name[ca@valencia]=Pont sense fils Name[el]=Γέφυρα ασύρματης επικοινωνίας Name[et]=Juhtmeta side sild Name[it]=Bridge wireless +Name[kk]=Сымсыз көпір Name[nb]=Trådløs bru Name[nds]=Funknettwark-Brüch Name[nl]=Wireless Bridge diff -Nru calligra-2.3.86/flow/stencils/Cisco/wireless_connectivity.desktop calligra-2.3.87/flow/stencils/Cisco/wireless_connectivity.desktop --- calligra-2.3.86/flow/stencils/Cisco/wireless_connectivity.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Cisco/wireless_connectivity.desktop 2012-01-28 14:26:27.000000000 +0000 @@ -2,9 +2,11 @@ Name=Wireless Connectivity Name[bg]=Безжична свързаност Name[ca]=Connectivitat sense fils +Name[ca@valencia]=Connectivitat sense fils Name[el]=Συνδεσιμότητα ασύρματης επικοινωνίας Name[et]=Juhtmeta ühendus Name[it]=Connettività wireless +Name[kk]=Сымсыз қосылым Name[nb]=Trådløs forbindelse Name[nl]=Draadloze verbinding Name[pl]=Połączenie bezprzewodowe diff -Nru calligra-2.3.86/flow/stencils/Cisco/wireless.desktop calligra-2.3.87/flow/stencils/Cisco/wireless.desktop --- calligra-2.3.86/flow/stencils/Cisco/wireless.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Cisco/wireless.desktop 2012-01-28 14:26:27.000000000 +0000 @@ -2,11 +2,13 @@ Name=Wireless Name[bg]=Безжично Name[ca]=Sense fils +Name[ca@valencia]=Sense fils Name[cs]=Bezdrátové Name[el]=Ασύρματο Name[et]=Juhtmeta Name[ga]=Gan Sreang Name[it]=Wireless +Name[kk]=Сымсыз Name[nb]=Trådløs Name[nl]=Draadloos Name[pl]=Bezprzewodowa diff -Nru calligra-2.3.86/flow/stencils/Cisco/wireless_location_appliance.desktop calligra-2.3.87/flow/stencils/Cisco/wireless_location_appliance.desktop --- calligra-2.3.86/flow/stencils/Cisco/wireless_location_appliance.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Cisco/wireless_location_appliance.desktop 2012-01-28 14:26:27.000000000 +0000 @@ -1,9 +1,11 @@ [Desktop Entry] Name=Wireless Location Appliance Name[ca]=Aplicació d'ubicació sense fils +Name[ca@valencia]=Aplicació d'ubicació sense fils Name[el]=Συσκευή ασύρματης θέσης Name[et]=Wireless Location Appliance Name[it]=Wireless Location Appliance +Name[kk]=Орнын анықтау сымсыз аппараты Name[nb]=Trådløst lokaliseringsutstyr Name[pl]=Zastosowanie bezprzewodowego położenia Name[pt]=Módulo Localização Sem-Fios diff -Nru calligra-2.3.86/flow/stencils/Cisco/wireless_router.desktop calligra-2.3.87/flow/stencils/Cisco/wireless_router.desktop --- calligra-2.3.86/flow/stencils/Cisco/wireless_router.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Cisco/wireless_router.desktop 2012-01-28 14:26:27.000000000 +0000 @@ -1,9 +1,11 @@ [Desktop Entry] Name=Wireless router Name[ca]=Encaminador sense fils +Name[ca@valencia]=Encaminador sense fils Name[el]=Ασύρματος δρομολογητής Name[et]=Juhtmeta side marsruuter Name[it]=Router wireless +Name[kk]=Сымсыз маршруттауышы Name[nb]=Trådløs ruter Name[nds]=Funknettweger Name[nl]=Draadloze router diff -Nru calligra-2.3.86/flow/stencils/Cisco/wireless_transport.desktop calligra-2.3.87/flow/stencils/Cisco/wireless_transport.desktop --- calligra-2.3.86/flow/stencils/Cisco/wireless_transport.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Cisco/wireless_transport.desktop 2012-01-28 14:26:27.000000000 +0000 @@ -2,9 +2,11 @@ Name=Wireless Transport Name[bg]=Безжичен пренос Name[ca]=Transport sense fils +Name[ca@valencia]=Transport sense fils Name[el]=Ασύρματη μεταφορά Name[et]=Juhtmeta side Name[it]=Trasporto wireless +Name[kk]=Сымсыз тасымал Name[nb]=Trådløs transport Name[nds]=Funköverdregen Name[nl]=Draadloos transport diff -Nru calligra-2.3.86/flow/stencils/Cisco/wlan_controller.desktop calligra-2.3.87/flow/stencils/Cisco/wlan_controller.desktop --- calligra-2.3.86/flow/stencils/Cisco/wlan_controller.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Cisco/wlan_controller.desktop 2012-01-28 14:26:27.000000000 +0000 @@ -1,11 +1,13 @@ [Desktop Entry] Name=WLAN controller Name[ca]=Controlador WLAN +Name[ca@valencia]=Controlador WLAN Name[de]=WLAN-Controller Name[el]=Ελεγκτής WLAN Name[es]=Controlador de WLAN Name[et]=WLAN-i kontroller Name[it]=Controller WLAN +Name[kk]=WLAN контроллері Name[nb]=WLAN-styrer Name[nds]=WLAN-Stüerreedschap Name[nl]=WLAN controller diff -Nru calligra-2.3.86/flow/stencils/Cisco/woman_blue.desktop calligra-2.3.87/flow/stencils/Cisco/woman_blue.desktop --- calligra-2.3.86/flow/stencils/Cisco/woman_blue.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Cisco/woman_blue.desktop 2012-01-28 14:26:27.000000000 +0000 @@ -1,9 +1,11 @@ [Desktop Entry] Name=Woman blue Name[ca]=Dona blava +Name[ca@valencia]=Dona blava Name[el]=Γυναίκα μπλε Name[et]=Sinine naine Name[it]=Donna blu +Name[kk]=Көк әйел Name[nb]=Kvinne blå Name[nl]=Vrouw blauw Name[pl]=Kobieta niebieska diff -Nru calligra-2.3.86/flow/stencils/Cisco/woman.desktop calligra-2.3.87/flow/stencils/Cisco/woman.desktop --- calligra-2.3.86/flow/stencils/Cisco/woman.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Cisco/woman.desktop 2012-01-28 14:26:27.000000000 +0000 @@ -2,11 +2,13 @@ Name=Woman Name[bg]=Жена Name[ca]=Dona +Name[ca@valencia]=Dona Name[cs]=Žena Name[de]=Frau Name[el]=Γυναίκα Name[et]=Naine Name[it]=Donna +Name[kk]=Әйел Name[nb]=Kvinne Name[nds]=Fru Name[nl]=Vrouw diff -Nru calligra-2.3.86/flow/stencils/Cisco/woman_gold.desktop calligra-2.3.87/flow/stencils/Cisco/woman_gold.desktop --- calligra-2.3.86/flow/stencils/Cisco/woman_gold.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Cisco/woman_gold.desktop 2012-01-28 14:26:27.000000000 +0000 @@ -1,9 +1,11 @@ [Desktop Entry] Name=Woman gold Name[ca]=Dona daurada +Name[ca@valencia]=Dona daurada Name[el]=Γυναίκα χρυσή Name[et]=Kuldne naine Name[it]=Donna dorata +Name[kk]=Алтын әйел Name[nb]=Kvinne gull Name[nl]=Vrouw goud Name[pl]=Kobieta złota diff -Nru calligra-2.3.86/flow/stencils/Cisco/woman_red.desktop calligra-2.3.87/flow/stencils/Cisco/woman_red.desktop --- calligra-2.3.86/flow/stencils/Cisco/woman_red.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Cisco/woman_red.desktop 2012-01-28 14:26:27.000000000 +0000 @@ -1,9 +1,11 @@ [Desktop Entry] Name=Woman red Name[ca]=Dona vermella +Name[ca@valencia]=Dona vermella Name[el]=Γυναίκα κόκκινη Name[et]=Punane naine Name[it]=Donna rossa +Name[kk]=Қызыл әйел Name[nb]=Kvinne rød Name[nl]=Vrouw rood Name[pl]=Kobieta czerwona diff -Nru calligra-2.3.86/flow/stencils/Cisco/workgroup_director.desktop calligra-2.3.87/flow/stencils/Cisco/workgroup_director.desktop --- calligra-2.3.86/flow/stencils/Cisco/workgroup_director.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Cisco/workgroup_director.desktop 2012-01-28 14:26:27.000000000 +0000 @@ -2,10 +2,12 @@ Name=Workgroup director Name[bg]=Управление на работна група Name[ca]=Director de treball de grup +Name[ca@valencia]=Director de treball de grup Name[de]=Arbeitsgruppenleiter Name[el]=Workgroup director Name[et]=Töögrupi ülem Name[it]=Workgroup director +Name[kk]=Жұмыс тобы бағыттауышы Name[nb]=Arbeidsgruppe-styrer Name[nds]=Arbeitkoppelbaas Name[nl]=Werkgroep-director diff -Nru calligra-2.3.86/flow/stencils/Cisco/workgroup_fcis.desktop calligra-2.3.87/flow/stencils/Cisco/workgroup_fcis.desktop --- calligra-2.3.86/flow/stencils/Cisco/workgroup_fcis.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Cisco/workgroup_fcis.desktop 2012-01-28 14:26:27.000000000 +0000 @@ -1,9 +1,11 @@ [Desktop Entry] Name=Workgroup Fibre Channel intelligent switch Name[ca]=Commutador intel·ligent de canal de fibra de treball de grup +Name[ca@valencia]=Commutador intel·ligent de canal de fibra de treball de grup Name[el]=Workgroup Fibre Channel intelligent switch Name[et]=Töögrupi Fibre Channel intelligentne kommutaator Name[it]=Switch intelligente Workgroup Fibre Channel +Name[kk]=Жұмыс тобы талшық арнасының парасатты қосқышы Name[nb]=Intelligent fiberkanalsvitsj for arbeidsgruppe Name[nl]=Workgroep Fibre Channel intelligent switch Name[pl]=Inteligenty przełącznik kanału światłowodu grupy roboczej diff -Nru calligra-2.3.86/flow/stencils/Cisco/workgroup_switch.desktop calligra-2.3.87/flow/stencils/Cisco/workgroup_switch.desktop --- calligra-2.3.86/flow/stencils/Cisco/workgroup_switch.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Cisco/workgroup_switch.desktop 2012-01-28 14:26:27.000000000 +0000 @@ -2,10 +2,12 @@ Name=Workgroup switch Name[bg]=Комутатор за работна група Name[ca]=Commutador de treball de grup +Name[ca@valencia]=Commutador de treball de grup Name[de]=Arbeitsgruppen-Switch Name[el]=Workgroup switch Name[et]=Töögrupi kommutaator Name[it]=Workgroup switch +Name[kk]=Жұмыс тобы қосқышы Name[nb]=Arbeidsgruppe-svitsj Name[nds]=Arbeitkoppel-Ümschalter Name[nl]=Workgroepswitch diff -Nru calligra-2.3.86/flow/stencils/Cisco/workgroup_switch_subdued.desktop calligra-2.3.87/flow/stencils/Cisco/workgroup_switch_subdued.desktop --- calligra-2.3.86/flow/stencils/Cisco/workgroup_switch_subdued.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Cisco/workgroup_switch_subdued.desktop 2012-01-28 14:26:27.000000000 +0000 @@ -1,9 +1,12 @@ [Desktop Entry] Name=Workgroup switch Subdued Name[ca]=Commutador de treball de grup suavitzat +Name[ca@valencia]=Commutador de treball de grup suavitzat Name[el]=Workgroup switch Subdued Name[et]=Toonita töögrupi kommutaator +Name[kk]=Басыңқы жұмыс тобы қосқышы Name[nb]=Arbeidsgruppe-svitsj dempet +Name[nl]=Ondergeschikte werkgroepswitch Name[pl]=Przełącznik grupy roboczej podległy Name[pt]=Comutador grupo trabalho ultrapassado Name[pt_BR]=Comutador de grupo de trabalho ultrapassado diff -Nru calligra-2.3.86/flow/stencils/Cisco/workgroup_switch_voice-enabled.desktop calligra-2.3.87/flow/stencils/Cisco/workgroup_switch_voice-enabled.desktop --- calligra-2.3.86/flow/stencils/Cisco/workgroup_switch_voice-enabled.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Cisco/workgroup_switch_voice-enabled.desktop 2012-01-28 14:26:27.000000000 +0000 @@ -2,10 +2,12 @@ Name=Voice switch Name[bg]=Комутиране на глас Name[ca]=Commutador de veu +Name[ca@valencia]=Commutador de veu Name[de]=Voice-Switch Name[el]=Μεταγωγέας φωνής Name[et]=Häälekommutaator Name[it]=Voice switch +Name[kk]=Дауыс қосқышы Name[nb]=Talesvitsj Name[nds]=Stimm-Ümschalter Name[nl]=Omschakelen van stem diff -Nru calligra-2.3.86/flow/stencils/Cisco/workstation.desktop calligra-2.3.87/flow/stencils/Cisco/workstation.desktop --- calligra-2.3.86/flow/stencils/Cisco/workstation.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Cisco/workstation.desktop 2012-01-28 14:26:27.000000000 +0000 @@ -2,12 +2,14 @@ Name=Workstation Name[bg]=Работна станция Name[ca]=Estació de treball +Name[ca@valencia]=Estació de treball Name[cs]=Prac. stanice Name[de]=Workstation Name[el]=Σταθμός εργασίας Name[es]=Estación de trabajo Name[et]=Tööjaam Name[it]=Workstation +Name[kk]=Жұмыс станциясы Name[nb]=Arbeidsstasjon Name[nds]=Arbeitreekner Name[nl]=Werkstation diff -Nru calligra-2.3.86/flow/stencils/Cisco/www_server.desktop calligra-2.3.87/flow/stencils/Cisco/www_server.desktop --- calligra-2.3.86/flow/stencils/Cisco/www_server.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Cisco/www_server.desktop 2012-01-28 14:26:27.000000000 +0000 @@ -2,12 +2,14 @@ Name=WWW server Name[bg]=Сървър WWW Name[ca]=Servidor WWW +Name[ca@valencia]=Servidor WWW Name[cs]=Server WWW Name[de]=WWW-Server Name[el]=Εξυπηρετητής WWW Name[es]=Servidor WWW Name[et]=Veebiserver Name[it]=Server WWW +Name[kk]=WWW сервері Name[nb]=WWW-tjener Name[nds]=WWW-Server Name[nl]=WWW-server diff -Nru calligra-2.3.86/flow/stencils/Civil/bvrest.desktop calligra-2.3.87/flow/stencils/Civil/bvrest.desktop --- calligra-2.3.86/flow/stencils/Civil/bvrest.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Civil/bvrest.desktop 2012-01-28 14:26:27.000000000 +0000 @@ -2,10 +2,13 @@ Name=Bivalent Vertical Rest Name[bg]=Двоен вертикален остатък Name[ca]=Descans vertical bivalent +Name[ca@valencia]=Descans vertical bivalent Name[et]=Kahevalentne vertikaalne rest Name[it]=Resto verticale bivalente +Name[kk]=Кос тік тірек Name[nb]=Bivalent loddrett støtte Name[nds]=Tweeweerten pielrecht Stütt +Name[nl]=Tweewaardige verticale steun Name[pl]=Pionowa podpora dwuwartościowa Name[pt]=Descanso Vertical Bivalente Name[pt_BR]=Descanso vertical bivalente diff -Nru calligra-2.3.86/flow/stencils/Civil/civil_aerator.desktop calligra-2.3.87/flow/stencils/Civil/civil_aerator.desktop --- calligra-2.3.86/flow/stencils/Civil/civil_aerator.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Civil/civil_aerator.desktop 2012-01-28 14:26:27.000000000 +0000 @@ -2,9 +2,11 @@ Name=Aerator Name[bg]=Аератор Name[ca]=Airejador +Name[ca@valencia]=Airejador Name[de]=Lüfter Name[et]=Aeraator Name[it]=Aeratore +Name[kk]=Аэратор Name[nb]=Lufter Name[nl]=Spuit Name[pl]=Aerator diff -Nru calligra-2.3.86/flow/stencils/Civil/civil_arrow_right.desktop calligra-2.3.87/flow/stencils/Civil/civil_arrow_right.desktop --- calligra-2.3.86/flow/stencils/Civil/civil_arrow_right.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Civil/civil_arrow_right.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -2,12 +2,14 @@ Name=Right Arrow Name[bg]=Стрелка надясно Name[ca]=Fletxa dreta +Name[ca@valencia]=Fletxa dreta Name[cs]=Šipka doprava Name[da]=Pil til højre Name[de]=Pfeil nach rechts Name[el]=Δεξί βέλος Name[es]=Flecha derecha Name[et]=Nool paremale +Name[hu]=Jobbra nyíl Name[it]=Freccia a destra Name[kk]=Оң жақ жебесі Name[nb]=Pil høyre diff -Nru calligra-2.3.86/flow/stencils/Civil/civil_arrow_up.desktop calligra-2.3.87/flow/stencils/Civil/civil_arrow_up.desktop --- calligra-2.3.86/flow/stencils/Civil/civil_arrow_up.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Civil/civil_arrow_up.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -2,12 +2,14 @@ Name=Up Arrow Name[bg]=Стрелка нагоре Name[ca]=Fletxa amunt +Name[ca@valencia]=Fletxa amunt Name[cs]=Šipka nahoru Name[da]=Pil op Name[de]=Pfeil nach oben Name[el]=Πάνω βέλος Name[es]=Flecha arriba Name[et]=Nool üles +Name[hu]=Felfelé nyíl Name[it]=Freccia in su Name[kk]=Жоғары жебесі Name[nb]=Pil opp diff -Nru calligra-2.3.86/flow/stencils/Civil/civil_backflow_preventer.desktop calligra-2.3.87/flow/stencils/Civil/civil_backflow_preventer.desktop --- calligra-2.3.86/flow/stencils/Civil/civil_backflow_preventer.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Civil/civil_backflow_preventer.desktop 2012-01-28 14:26:27.000000000 +0000 @@ -2,11 +2,14 @@ Name=Backflow Preventer Name[bg]=Предпазител срещу обратен поток Name[ca]=Previsor de corrent invers +Name[ca@valencia]=Previsor de corrent invers Name[de]=Rückflussverhinderer Name[et]=Tagasilöögiklapp Name[it]=Prevenzione da riflusso +Name[kk]=Қайтар ағын басқышы Name[nb]=Tilbakeslagsventil Name[nds]=Torüchfleet-Schuul +Name[nl]=Keerklep Name[pl]=Element zapobiegający cofnięciu Name[pt]=Prevenção Refluxo Name[pt_BR]=Bloqueio de refluxo diff -Nru calligra-2.3.86/flow/stencils/Civil/civil_basin.desktop calligra-2.3.87/flow/stencils/Civil/civil_basin.desktop --- calligra-2.3.86/flow/stencils/Civil/civil_basin.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Civil/civil_basin.desktop 2012-01-28 14:26:27.000000000 +0000 @@ -2,9 +2,11 @@ Name=Basin Name[bg]=Резервоар Name[ca]=Pica +Name[ca@valencia]=Pica Name[de]=Becken Name[et]=Bassein Name[it]=Bacino +Name[kk]=Резервуар Name[nb]=Basseng Name[nds]=Wann Name[nl]=Bassin diff -Nru calligra-2.3.86/flow/stencils/Civil/civil_container.desktop calligra-2.3.87/flow/stencils/Civil/civil_container.desktop --- calligra-2.3.86/flow/stencils/Civil/civil_container.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Civil/civil_container.desktop 2012-01-28 14:26:27.000000000 +0000 @@ -2,12 +2,14 @@ Name=Container Name[bg]=Контейнер Name[ca]=Contenidor +Name[ca@valencia]=Contenidor Name[cs]=Kontejner Name[de]=Container Name[el]=Υποδοχέας Name[es]=Contenedor Name[et]=Konteiner Name[it]=Container +Name[kk]=Контейнер Name[nb]=Beholder Name[nds]=Gelaats Name[nl]=Container diff -Nru calligra-2.3.86/flow/stencils/Civil/civil_final-settling_basin.desktop calligra-2.3.87/flow/stencils/Civil/civil_final-settling_basin.desktop --- calligra-2.3.86/flow/stencils/Civil/civil_final-settling_basin.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Civil/civil_final-settling_basin.desktop 2012-01-28 14:26:27.000000000 +0000 @@ -2,9 +2,11 @@ Name=Final-Settling Basin Name[bg]=Краен резервоар за утаяване Name[ca]=Pica d'assentament final +Name[ca@valencia]=Pica d'assentament final Name[de]=Becken zur endgültigen Entsorgung Name[et]=Settebassein Name[it]=Stagno di decantazione +Name[kk]=Ақырғы тұндырғыш Name[nb]=Sluttutfellingsbasseng Name[nds]=Wegdo-Wann Name[nl]=Laatste bezinkbassin diff -Nru calligra-2.3.86/flow/stencils/Civil/civil_frequency_converter.desktop calligra-2.3.87/flow/stencils/Civil/civil_frequency_converter.desktop --- calligra-2.3.86/flow/stencils/Civil/civil_frequency_converter.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Civil/civil_frequency_converter.desktop 2012-01-28 14:26:27.000000000 +0000 @@ -2,10 +2,12 @@ Name=Frequency Converter Name[bg]=Преобразувател на честоти Name[ca]=Convertidor de freqüències +Name[ca@valencia]=Convertidor de freqüències Name[de]=Frequenzwandler Name[el]=Μετατροπέας συχνότητας Name[et]=Sageduskonverter Name[it]=Convertitore di frequenza +Name[kk]=Жиілік аударғышы Name[nb]=Frekvensomvandler Name[nds]=Frequenzümsetter Name[nl]=Frequentieconverter diff -Nru calligra-2.3.86/flow/stencils/Civil/civil_gas_bottle.desktop calligra-2.3.87/flow/stencils/Civil/civil_gas_bottle.desktop --- calligra-2.3.86/flow/stencils/Civil/civil_gas_bottle.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Civil/civil_gas_bottle.desktop 2012-01-28 14:26:27.000000000 +0000 @@ -2,10 +2,12 @@ Name=Gas Bottle Name[bg]=Газова бутилка Name[ca]=Ampolla de gas +Name[ca@valencia]=Ampolla de gas Name[de]=Gasflasche Name[el]=Μπουκάλα αερίου Name[et]=Gaasiballoon Name[it]=Bombola di gas +Name[kk]=Газ баллоны Name[nb]=Gassflaske Name[nds]=Gasbuddel Name[nl]=Gasfles diff -Nru calligra-2.3.86/flow/stencils/Civil/civil_horizontal_limiting_line.desktop calligra-2.3.87/flow/stencils/Civil/civil_horizontal_limiting_line.desktop --- calligra-2.3.86/flow/stencils/Civil/civil_horizontal_limiting_line.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Civil/civil_horizontal_limiting_line.desktop 2012-01-28 14:26:27.000000000 +0000 @@ -2,10 +2,12 @@ Name=Horizontal Limiting Line Name[bg]=Хоризонтална ограничаваща линия Name[ca]=Línia limitadora horitzontal +Name[ca@valencia]=Línia limitadora horitzontal Name[de]=Waagerechte Begrenzungslinie Name[el]=Οριζόντια περιοριστική γραμμή Name[et]=Horisontaalne piirjoon Name[it]=Linea di delimitazione orizzontale +Name[kk]=Жатық шектеу сызығы Name[nb]=Vannrett grenselinje Name[nl]=Horizontale beperkingslijn Name[pl]=Pozioma linia ograniczająca diff -Nru calligra-2.3.86/flow/stencils/Civil/civil_horizontal_valve.desktop calligra-2.3.87/flow/stencils/Civil/civil_horizontal_valve.desktop --- calligra-2.3.86/flow/stencils/Civil/civil_horizontal_valve.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Civil/civil_horizontal_valve.desktop 2012-01-28 14:26:27.000000000 +0000 @@ -2,10 +2,12 @@ Name=Horizontal Valve Name[bg]=Хоризонтална клапа Name[ca]=Vàlvula horitzontal +Name[ca@valencia]=Vàlvula horitzontal Name[de]=Waagerechtes Ventil Name[el]=Οριζόντια βαλβίδα Name[et]=Horisontaalne siiber Name[it]=Valvola orizzontale +Name[kk]=Жатық шұра Name[nb]=Vannrett ventil Name[nds]=Kimmrecht Ventil Name[nl]=Horizontale klep diff -Nru calligra-2.3.86/flow/stencils/Civil/civil_motor.desktop calligra-2.3.87/flow/stencils/Civil/civil_motor.desktop --- calligra-2.3.86/flow/stencils/Civil/civil_motor.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Civil/civil_motor.desktop 2012-01-28 14:26:27.000000000 +0000 @@ -2,10 +2,12 @@ Name=Motor Name[bg]=Двигател Name[ca]=Motor +Name[ca@valencia]=Motor Name[de]=Motor Name[el]=Κινητήρας Name[et]=Mootor Name[it]=Motore +Name[kk]=Мотор Name[nb]=Motor Name[nds]=Motor Name[nl]=Motor diff -Nru calligra-2.3.86/flow/stencils/Civil/civil_preliminary_clarification_tank.desktop calligra-2.3.87/flow/stencils/Civil/civil_preliminary_clarification_tank.desktop --- calligra-2.3.86/flow/stencils/Civil/civil_preliminary_clarification_tank.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Civil/civil_preliminary_clarification_tank.desktop 2012-01-28 14:26:27.000000000 +0000 @@ -2,9 +2,11 @@ Name=Preliminary Clarification Tank Name[bg]=Резервоар за предварително пречистване Name[ca]=Tanc clarificador preliminar +Name[ca@valencia]=Tanc clarificador preliminar Name[de]=Vorklärbecken Name[et]=Eelpuhastustank Name[it]=Cisterna di purificazione preliminare +Name[kk]=Алдын-ала тазалау бак Name[nb]=Foreløpig klaringstank Name[nds]=Vörklärtubben Name[nl]=Voorbereidende zuiveringstank diff -Nru calligra-2.3.86/flow/stencils/Civil/civil_rotor.desktop calligra-2.3.87/flow/stencils/Civil/civil_rotor.desktop --- calligra-2.3.86/flow/stencils/Civil/civil_rotor.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Civil/civil_rotor.desktop 2012-01-28 14:26:27.000000000 +0000 @@ -2,12 +2,14 @@ Name=Rotor Name[bg]=Ротор Name[ca]=Rotor +Name[ca@valencia]=Rotor Name[cs]=Rotor Name[de]=Rotor Name[el]=Στροφέας Name[et]=Rootor Name[ga]=Rotor Name[it]=Rotore +Name[kk]=Ротор Name[nb]=Rotor Name[nds]=Rotor Name[nl]=Rotor diff -Nru calligra-2.3.86/flow/stencils/Civil/civil_soil.desktop calligra-2.3.87/flow/stencils/Civil/civil_soil.desktop --- calligra-2.3.86/flow/stencils/Civil/civil_soil.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Civil/civil_soil.desktop 2012-01-28 14:26:27.000000000 +0000 @@ -2,11 +2,14 @@ Name=Soil Name[bg]=Почва Name[ca]=Sòl +Name[ca@valencia]=Sòl Name[de]=Erdreich Name[et]=Maapind Name[it]=Terra +Name[kk]=Топрақ Name[nb]=Jord Name[nds]=Bodden +Name[nl]=Grond Name[pl]=Grunt Name[pt]=Solo Name[pt_BR]=Solo diff -Nru calligra-2.3.86/flow/stencils/Civil/civil_vertical_limiting_line.desktop calligra-2.3.87/flow/stencils/Civil/civil_vertical_limiting_line.desktop --- calligra-2.3.86/flow/stencils/Civil/civil_vertical_limiting_line.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Civil/civil_vertical_limiting_line.desktop 2012-01-28 14:26:27.000000000 +0000 @@ -2,10 +2,12 @@ Name=Vertical Limiting Line Name[bg]=Вертикална ограничаваща линия Name[ca]=Línia limitadora vertical +Name[ca@valencia]=Línia limitadora vertical Name[de]=Senkrechte Begrenzungslinie Name[el]=Κάθετη περιοριστική γραμμή Name[et]=Vertikaalne piirjoon Name[it]=Linea di delimitazione verticale +Name[kk]=Тік шектеу сызығы Name[nb]=Loddrett grenselinje Name[nl]=Verticale beperkingslijn Name[pl]=Pionowa linia ograniczająca diff -Nru calligra-2.3.86/flow/stencils/Civil/civil_vertical_propeller.desktop calligra-2.3.87/flow/stencils/Civil/civil_vertical_propeller.desktop --- calligra-2.3.86/flow/stencils/Civil/civil_vertical_propeller.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Civil/civil_vertical_propeller.desktop 2012-01-28 14:26:27.000000000 +0000 @@ -2,10 +2,12 @@ Name=Vertical Propeller Name[bg]=Вертикална перка Name[ca]=Propelent vertical +Name[ca@valencia]=Propelent vertical Name[de]=Senkrechter Propeller Name[el]=Κάθετη έλικα Name[et]=Vertikaalne propeller Name[it]=Propulsore verticale +Name[kk]=Тік пропеллер Name[nb]=Loddrett propell Name[nl]=Verticale propeller Name[pl]=Śruba pionowa diff -Nru calligra-2.3.86/flow/stencils/Civil/collection.desktop calligra-2.3.87/flow/stencils/Civil/collection.desktop --- calligra-2.3.86/flow/stencils/Civil/collection.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Civil/collection.desktop 2012-01-28 14:26:27.000000000 +0000 @@ -2,9 +2,11 @@ Name=Civil Name[bg]=Граждански Name[ca]=Civil +Name[ca@valencia]=Civil Name[el]=Civil Name[et]=Ehitus Name[it]=Civile +Name[kk]=Инженерлік Name[nb]=Sivilteknikk Name[nl]=Civiel Name[pl]=Inżynieria diff -Nru calligra-2.3.86/flow/stencils/Civil/hcompressor.desktop calligra-2.3.87/flow/stencils/Civil/hcompressor.desktop --- calligra-2.3.86/flow/stencils/Civil/hcompressor.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Civil/hcompressor.desktop 2012-01-28 14:26:27.000000000 +0000 @@ -2,10 +2,12 @@ Name=Horizontal Compressor Name[bg]=Хоризонтален компресор Name[ca]=Compressor horitzontal +Name[ca@valencia]=Compressor horitzontal Name[de]=Waagerechter Kompressor Name[el]=Οριζόντιος συμπιεστής Name[et]=Horisontaalne kompressor Name[it]=Compressore orizzontale +Name[kk]=Жатық компрессор Name[nb]=Vannrett kompressor Name[nds]=Kimmrecht Kompressor Name[nl]=Horizontale compressor diff -Nru calligra-2.3.86/flow/stencils/Civil/hpump.desktop calligra-2.3.87/flow/stencils/Civil/hpump.desktop --- calligra-2.3.86/flow/stencils/Civil/hpump.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Civil/hpump.desktop 2012-01-28 14:26:27.000000000 +0000 @@ -2,9 +2,11 @@ Name=Horizontal Pump Name[bg]=Хоризонтална помпа Name[ca]=Bomba horitzontal +Name[ca@valencia]=Bomba horitzontal Name[de]=Waagerechte Pumpe Name[et]=Horisontaalne pump Name[it]=Pompa orizzontale +Name[kk]=Жатық сорғыш Name[nb]=Vannrett pumpe Name[nds]=Kimmrecht Pump Name[nl]=Horizontale pomp diff -Nru calligra-2.3.86/flow/stencils/Civil/hrest.desktop calligra-2.3.87/flow/stencils/Civil/hrest.desktop --- calligra-2.3.86/flow/stencils/Civil/hrest.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Civil/hrest.desktop 2012-01-28 14:26:27.000000000 +0000 @@ -2,9 +2,11 @@ Name=Horizontal Rest Name[bg]=Хоризонтален остатък Name[ca]=Descans horitzontal +Name[ca@valencia]=Descans horitzontal Name[de]=Waagerechte Stütze Name[et]=Horisontaalne rest Name[it]=Resto orizzontale +Name[kk]=Жақ тірек Name[nb]=Vannrett støtte Name[nds]=Kimmrecht Stütt Name[nl]=Horizontale steun diff -Nru calligra-2.3.86/flow/stencils/Civil/line.desktop calligra-2.3.87/flow/stencils/Civil/line.desktop --- calligra-2.3.86/flow/stencils/Civil/line.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Civil/line.desktop 2012-01-28 14:26:27.000000000 +0000 @@ -2,10 +2,12 @@ Name=Reference Line Name[bg]=Указателна линия Name[ca]=Línia de referència +Name[ca@valencia]=Línia de referència Name[de]=Bezugslinie Name[el]=Γραμμή αναφοράς Name[et]=Reeper Name[it]=Linea di riferimento +Name[kk]=Негізгі желісі Name[nb]=Referanselinje Name[nds]=Betog-Lien Name[nl]=Referentielijn diff -Nru calligra-2.3.86/flow/stencils/Civil/vcompressor.desktop calligra-2.3.87/flow/stencils/Civil/vcompressor.desktop --- calligra-2.3.86/flow/stencils/Civil/vcompressor.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Civil/vcompressor.desktop 2012-01-28 14:26:27.000000000 +0000 @@ -2,10 +2,12 @@ Name=Vertical Compressor Name[bg]=Вертикален компресор Name[ca]=Compressor vertical +Name[ca@valencia]=Compressor vertical Name[de]=Senkrechter Kompressor Name[el]=Κατακόρυφος συμπιεστής Name[et]=Vertikaalne kompressor Name[it]=Compressore verticale +Name[kk]=Тік компрессор Name[nb]=Loddrett kompressor Name[nds]=Pielrecht Kompressor Name[nl]=Verticale compressor diff -Nru calligra-2.3.86/flow/stencils/Civil/vpump.desktop calligra-2.3.87/flow/stencils/Civil/vpump.desktop --- calligra-2.3.86/flow/stencils/Civil/vpump.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Civil/vpump.desktop 2012-01-28 14:26:27.000000000 +0000 @@ -2,10 +2,12 @@ Name=Vertical Pump Name[bg]=Вертикална помпа Name[ca]=Bomba vertical +Name[ca@valencia]=Bomba vertical Name[de]=Senkrechte Pumpe Name[el]=Κατακόρυφη αντλία Name[et]=Vertikaalne pump Name[it]=Pompa verticale +Name[kk]=Тік сорғыш Name[nb]=Loddrett pumpe Name[nds]=Pielrecht Pump Name[nl]=Verticale pomp diff -Nru calligra-2.3.86/flow/stencils/Civil/vrest.desktop calligra-2.3.87/flow/stencils/Civil/vrest.desktop --- calligra-2.3.86/flow/stencils/Civil/vrest.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Civil/vrest.desktop 2012-01-28 14:26:27.000000000 +0000 @@ -2,9 +2,11 @@ Name=Vertical Rest Name[bg]=Вертикален остатък Name[ca]=Descans vertical +Name[ca@valencia]=Descans vertical Name[de]=Senkrechte Stütze Name[et]=Vertikaalne rest Name[it]=Resto verticale +Name[kk]=Тік тірек Name[nb]=Loddrett støtte Name[nds]=Pielrecht Stütt Name[nl]=Verticale steun diff -Nru calligra-2.3.86/flow/stencils/Civil/water_level.desktop calligra-2.3.87/flow/stencils/Civil/water_level.desktop --- calligra-2.3.86/flow/stencils/Civil/water_level.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Civil/water_level.desktop 2012-01-28 14:26:27.000000000 +0000 @@ -2,11 +2,13 @@ Name=Water Level Name[bg]=Ниво на водата Name[ca]=Nivell d'aigua +Name[ca@valencia]=Nivell d'aigua Name[cs]=Vodní hladina: Name[de]=Wasserspiegel Name[el]=Επίπεδο ύδατος Name[et]=Veetase Name[it]=Livello dell'acqua +Name[kk]=Су деңгейі Name[nb]=Vannstand Name[nds]=Waterstand Name[nl]=Waterpas diff -Nru calligra-2.3.86/flow/stencils/CMOS/collection.desktop calligra-2.3.87/flow/stencils/CMOS/collection.desktop --- calligra-2.3.86/flow/stencils/CMOS/collection.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/CMOS/collection.desktop 2012-01-28 14:26:27.000000000 +0000 @@ -2,10 +2,12 @@ Name=CMOS Name[bg]=CMOS Name[ca]=CMOS +Name[ca@valencia]=CMOS Name[de]=CMOS Name[el]=CMOS Name[et]=CMOS Name[it]=CMOS +Name[kk]=CMOS Name[nb]=CMOS Name[nds]=CMOS Name[nl]=CMOS diff -Nru calligra-2.3.86/flow/stencils/CMOS/gnd_h.desktop calligra-2.3.87/flow/stencils/CMOS/gnd_h.desktop --- calligra-2.3.86/flow/stencils/CMOS/gnd_h.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/CMOS/gnd_h.desktop 2012-01-28 14:26:27.000000000 +0000 @@ -1,9 +1,11 @@ [Desktop Entry] Name=gnd h Name[ca]=gnd h +Name[ca@valencia]=gnd h Name[el]=gnd h Name[et]=Horisontaalne maa Name[it]=gnd h +Name[kk]=gnd h Name[nb]=jord vannr Name[nl]=gnd h Name[pl]=gnd h diff -Nru calligra-2.3.86/flow/stencils/CMOS/gnd_v.desktop calligra-2.3.87/flow/stencils/CMOS/gnd_v.desktop --- calligra-2.3.86/flow/stencils/CMOS/gnd_v.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/CMOS/gnd_v.desktop 2012-01-28 14:26:27.000000000 +0000 @@ -1,9 +1,11 @@ [Desktop Entry] Name=gnd v Name[ca]=gnd v +Name[ca@valencia]=gnd v Name[el]=gnd v Name[et]=Vertikaalne maa Name[it]=gnd v +Name[kk]=gnd v Name[nb]=jord loddr Name[nl]=gnd v Name[pl]=gnd v diff -Nru calligra-2.3.86/flow/stencils/CMOS/nmos_h.desktop calligra-2.3.87/flow/stencils/CMOS/nmos_h.desktop --- calligra-2.3.86/flow/stencils/CMOS/nmos_h.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/CMOS/nmos_h.desktop 2012-01-28 14:26:27.000000000 +0000 @@ -1,9 +1,11 @@ [Desktop Entry] Name=nmos h Name[ca]=nmos h +Name[ca@valencia]=nmos h Name[el]=nmos h Name[et]=Horisontaalne NMOS Name[it]=nmos h +Name[kk]=nmos h Name[nb]=nmos vannr Name[nl]=nmos h Name[pl]=nmos h diff -Nru calligra-2.3.86/flow/stencils/CMOS/nmos_v.desktop calligra-2.3.87/flow/stencils/CMOS/nmos_v.desktop --- calligra-2.3.86/flow/stencils/CMOS/nmos_v.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/CMOS/nmos_v.desktop 2012-01-28 14:26:27.000000000 +0000 @@ -1,9 +1,11 @@ [Desktop Entry] Name=nmos v Name[ca]=nmos v +Name[ca@valencia]=nmos v Name[el]=nmos v Name[et]=Vertikaalne NMOS Name[it]=nmos v +Name[kk]=nmos v Name[nb]=nmos loddr Name[nl]=nmos v Name[pl]=nmos v diff -Nru calligra-2.3.86/flow/stencils/CMOS/pmos_h.desktop calligra-2.3.87/flow/stencils/CMOS/pmos_h.desktop --- calligra-2.3.86/flow/stencils/CMOS/pmos_h.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/CMOS/pmos_h.desktop 2012-01-28 14:26:27.000000000 +0000 @@ -1,9 +1,11 @@ [Desktop Entry] Name=pmos h Name[ca]=pmos h +Name[ca@valencia]=pmos h Name[el]=pmos h Name[et]=Horisontaalne PMOS Name[it]=pmos h +Name[kk]=pmos h Name[nb]=pmos vannr Name[nl]=pmos h Name[pl]=pmos h diff -Nru calligra-2.3.86/flow/stencils/CMOS/pmos_v.desktop calligra-2.3.87/flow/stencils/CMOS/pmos_v.desktop --- calligra-2.3.86/flow/stencils/CMOS/pmos_v.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/CMOS/pmos_v.desktop 2012-01-28 14:26:27.000000000 +0000 @@ -1,9 +1,11 @@ [Desktop Entry] Name=pmos v Name[ca]=pmos v +Name[ca@valencia]=pmos v Name[el]=pmos v Name[et]=Vertikaalne PMOS Name[it]=pmos v +Name[kk]=pmos v Name[nb]=pmos loddr Name[nl]=pmos v Name[pl]=pmos v diff -Nru calligra-2.3.86/flow/stencils/CMOS/vdd_h.desktop calligra-2.3.87/flow/stencils/CMOS/vdd_h.desktop --- calligra-2.3.86/flow/stencils/CMOS/vdd_h.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/CMOS/vdd_h.desktop 2012-01-28 14:26:27.000000000 +0000 @@ -1,9 +1,11 @@ [Desktop Entry] Name=vdd h Name[ca]=vdd h +Name[ca@valencia]=vdd h Name[el]=vdd h Name[et]=Horisontaalne VDD Name[it]=vdd h +Name[kk]=vdd h Name[nb]=vdd vannr Name[nl]=vdd h Name[pl]=vdd h diff -Nru calligra-2.3.86/flow/stencils/CMOS/vdd_v.desktop calligra-2.3.87/flow/stencils/CMOS/vdd_v.desktop --- calligra-2.3.86/flow/stencils/CMOS/vdd_v.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/CMOS/vdd_v.desktop 2012-01-28 14:26:27.000000000 +0000 @@ -1,9 +1,11 @@ [Desktop Entry] Name=vdd v Name[ca]=vdd v +Name[ca@valencia]=vdd v Name[el]=vdd v Name[et]=Vertikaalne VDD Name[it]=vdd v +Name[kk]=vdd v Name[nb]=vdd loddr Name[nl]=vdd v Name[pl]=vdd v diff -Nru calligra-2.3.86/flow/stencils/Contact/c_if.desktop calligra-2.3.87/flow/stencils/Contact/c_if.desktop --- calligra-2.3.86/flow/stencils/Contact/c_if.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Contact/c_if.desktop 2012-01-28 14:26:27.000000000 +0000 @@ -1,9 +1,11 @@ [Desktop Entry] Name=if Name[ca]=if +Name[ca@valencia]=if Name[cs]=když Name[et]=if Name[it]=if +Name[kk]=егер Name[nb]=hvis Name[nl]=als Name[pl]=jeśli diff -Nru calligra-2.3.86/flow/stencils/Contact/c_ifnot.desktop calligra-2.3.87/flow/stencils/Contact/c_ifnot.desktop --- calligra-2.3.86/flow/stencils/Contact/c_ifnot.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Contact/c_ifnot.desktop 2012-01-28 14:26:27.000000000 +0000 @@ -1,8 +1,10 @@ [Desktop Entry] Name=ifnot Name[ca]=ifnot +Name[ca@valencia]=ifnot Name[et]=ifnot Name[it]=ifnot +Name[kk]=егерде теріс Name[nb]=hvis ikke Name[nl]=als-niet Name[pl]=jeślinie diff -Nru calligra-2.3.86/flow/stencils/Contact/c_lamp.desktop calligra-2.3.87/flow/stencils/Contact/c_lamp.desktop --- calligra-2.3.86/flow/stencils/Contact/c_lamp.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Contact/c_lamp.desktop 2012-01-28 14:26:27.000000000 +0000 @@ -1,9 +1,11 @@ [Desktop Entry] Name=lamp Name[ca]=làmpada +Name[ca@valencia]=làmpada Name[de]=Lampe Name[et]=Lamp Name[it]=lamp +Name[kk]=лампа Name[nb]=lampe Name[nl]=lamp Name[pl]=lampa diff -Nru calligra-2.3.86/flow/stencils/Contact/collection.desktop calligra-2.3.87/flow/stencils/Contact/collection.desktop --- calligra-2.3.86/flow/stencils/Contact/collection.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Contact/collection.desktop 2012-01-28 14:26:27.000000000 +0000 @@ -1,11 +1,13 @@ [Desktop Entry] Name=Contact Name[ca]=Contacte +Name[ca@valencia]=Contacte Name[cs]=kontakt Name[de]=Kontakt Name[et]=Kontakt Name[ga]=Teagmháil Name[it]=Contatto +Name[kk]=Контакт Name[nb]=Kontakt Name[nl]=Contact Name[pl]=Kontakt diff -Nru calligra-2.3.86/flow/stencils/Contact/c_relay.desktop calligra-2.3.87/flow/stencils/Contact/c_relay.desktop --- calligra-2.3.86/flow/stencils/Contact/c_relay.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Contact/c_relay.desktop 2012-01-28 14:26:27.000000000 +0000 @@ -2,10 +2,12 @@ Name=relay Name[bg]=реле Name[ca]=relé +Name[ca@valencia]=relé Name[cs]=přenos Name[de]=Relais Name[et]=Relee Name[it]=relé +Name[kk]=Реле Name[nb]=rele Name[nl]=Relais Name[pl]=przekaźnik diff -Nru calligra-2.3.86/flow/stencils/Contact/l_if.desktop calligra-2.3.87/flow/stencils/Contact/l_if.desktop --- calligra-2.3.86/flow/stencils/Contact/l_if.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Contact/l_if.desktop 2012-01-28 14:26:27.000000000 +0000 @@ -1,9 +1,11 @@ [Desktop Entry] Name=if Name[ca]=if +Name[ca@valencia]=if Name[cs]=když Name[et]=if Name[it]=if +Name[kk]=егер Name[nb]=hvis Name[nl]=als Name[pl]=jeśli diff -Nru calligra-2.3.86/flow/stencils/Contact/l_ifnot.desktop calligra-2.3.87/flow/stencils/Contact/l_ifnot.desktop --- calligra-2.3.86/flow/stencils/Contact/l_ifnot.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Contact/l_ifnot.desktop 2012-01-28 14:26:27.000000000 +0000 @@ -1,8 +1,10 @@ [Desktop Entry] Name=ifnot Name[ca]=ifnot +Name[ca@valencia]=ifnot Name[et]=ifnot Name[it]=ifnot +Name[kk]=егерде теріс Name[nb]=hvis ikke Name[nl]=als-niet Name[pl]=jeślinie diff -Nru calligra-2.3.86/flow/stencils/Contact/l_out.desktop calligra-2.3.87/flow/stencils/Contact/l_out.desktop --- calligra-2.3.86/flow/stencils/Contact/l_out.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Contact/l_out.desktop 2012-01-28 14:26:27.000000000 +0000 @@ -1,10 +1,12 @@ [Desktop Entry] Name=out Name[ca]=fora +Name[ca@valencia]=fora Name[cs]=ven Name[el]=out Name[et]=out Name[it]=out +Name[kk]=out Name[nb]=out Name[nl]=out Name[pl]=out diff -Nru calligra-2.3.86/flow/stencils/Contact/l_outj.desktop calligra-2.3.87/flow/stencils/Contact/l_outj.desktop --- calligra-2.3.86/flow/stencils/Contact/l_outj.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Contact/l_outj.desktop 2012-01-28 14:26:27.000000000 +0000 @@ -1,9 +1,11 @@ [Desktop Entry] Name=outj Name[ca]=outj +Name[ca@valencia]=outj Name[el]=outj Name[et]=outj Name[it]=outj +Name[kk]=outj Name[nb]=outj Name[nl]=outj Name[pl]=outj diff -Nru calligra-2.3.86/flow/stencils/Contact/l_outnot.desktop calligra-2.3.87/flow/stencils/Contact/l_outnot.desktop --- calligra-2.3.86/flow/stencils/Contact/l_outnot.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Contact/l_outnot.desktop 2012-01-28 14:26:27.000000000 +0000 @@ -1,9 +1,11 @@ [Desktop Entry] Name=outnot Name[ca]=outnot +Name[ca@valencia]=outnot Name[el]=outnot Name[et]=outnot Name[it]=outnot +Name[kk]=outnot Name[nb]=outnot Name[nl]=outnot Name[pl]=outnot diff -Nru calligra-2.3.86/flow/stencils/Contact/l_outrcep.desktop calligra-2.3.87/flow/stencils/Contact/l_outrcep.desktop --- calligra-2.3.86/flow/stencils/Contact/l_outrcep.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Contact/l_outrcep.desktop 2012-01-28 14:26:27.000000000 +0000 @@ -1,9 +1,11 @@ [Desktop Entry] Name=outrcep Name[ca]=outrcep +Name[ca@valencia]=outrcep Name[el]=outrcep Name[et]=outrcep Name[it]=outrcep +Name[kk]=outrcep Name[nb]=outrcep Name[nl]=outrcep Name[pl]=outrcep diff -Nru calligra-2.3.86/flow/stencils/Contact/l_outr.desktop calligra-2.3.87/flow/stencils/Contact/l_outr.desktop --- calligra-2.3.86/flow/stencils/Contact/l_outr.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Contact/l_outr.desktop 2012-01-28 14:26:27.000000000 +0000 @@ -1,9 +1,11 @@ [Desktop Entry] Name=outr Name[ca]=outr +Name[ca@valencia]=outr Name[el]=outr Name[et]=outr Name[it]=outr +Name[kk]=outr Name[nb]=outr Name[nl]=outr Name[pl]=outr diff -Nru calligra-2.3.86/flow/stencils/Contact/l_outs.desktop calligra-2.3.87/flow/stencils/Contact/l_outs.desktop --- calligra-2.3.86/flow/stencils/Contact/l_outs.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Contact/l_outs.desktop 2012-01-28 14:26:27.000000000 +0000 @@ -1,9 +1,11 @@ [Desktop Entry] Name=outs Name[ca]=outs +Name[ca@valencia]=outs Name[el]=outs Name[et]=outs Name[it]=outs +Name[kk]=outs Name[nb]=outs Name[nl]=outs Name[pl]=outs diff -Nru calligra-2.3.86/flow/stencils/Contact/l_sout.desktop calligra-2.3.87/flow/stencils/Contact/l_sout.desktop --- calligra-2.3.86/flow/stencils/Contact/l_sout.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Contact/l_sout.desktop 2012-01-28 14:26:27.000000000 +0000 @@ -1,9 +1,11 @@ [Desktop Entry] Name=sout Name[ca]=sout +Name[ca@valencia]=sout Name[el]=sout Name[et]=sout Name[it]=sout +Name[kk]=sout Name[nb]=sout Name[nl]=sout Name[pl]=sout diff -Nru calligra-2.3.86/flow/stencils/Contact/l_soutnot.desktop calligra-2.3.87/flow/stencils/Contact/l_soutnot.desktop --- calligra-2.3.86/flow/stencils/Contact/l_soutnot.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Contact/l_soutnot.desktop 2012-01-28 14:26:27.000000000 +0000 @@ -1,9 +1,11 @@ [Desktop Entry] Name=soutnot Name[ca]=soutnot +Name[ca@valencia]=soutnot Name[el]=soutnot Name[et]=soutnot Name[it]=soutnot +Name[kk]=soutnot Name[nb]=soutnot Name[nl]=soutnot Name[pl]=soutnot diff -Nru calligra-2.3.86/flow/stencils/Contact/l_soutr.desktop calligra-2.3.87/flow/stencils/Contact/l_soutr.desktop --- calligra-2.3.86/flow/stencils/Contact/l_soutr.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Contact/l_soutr.desktop 2012-01-28 14:26:27.000000000 +0000 @@ -1,9 +1,11 @@ [Desktop Entry] Name=soutr Name[ca]=soutr +Name[ca@valencia]=soutr Name[el]=soutr Name[et]=soutr Name[it]=soutr +Name[kk]=soutr Name[nb]=soutr Name[nl]=soutr Name[pl]=soutr diff -Nru calligra-2.3.86/flow/stencils/Contact/l_souts.desktop calligra-2.3.87/flow/stencils/Contact/l_souts.desktop --- calligra-2.3.86/flow/stencils/Contact/l_souts.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Contact/l_souts.desktop 2012-01-28 14:26:27.000000000 +0000 @@ -1,9 +1,11 @@ [Desktop Entry] Name=souts Name[ca]=souts +Name[ca@valencia]=souts Name[el]=souts Name[et]=souts Name[it]=souts +Name[kk]=souts Name[nb]=souts Name[nl]=souts Name[pl]=souts diff -Nru calligra-2.3.86/flow/stencils/Cybernetics/b-integrator.desktop calligra-2.3.87/flow/stencils/Cybernetics/b-integrator.desktop --- calligra-2.3.86/flow/stencils/Cybernetics/b-integrator.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Cybernetics/b-integrator.desktop 2012-01-28 14:26:27.000000000 +0000 @@ -1,9 +1,11 @@ [Desktop Entry] Name=b-integrator Name[ca]=integrado-b +Name[ca@valencia]=integrado-b Name[el]=b-integrator Name[et]=Alumine integreerimislüli Name[it]=b-integrator +Name[kk]=b-интегратор Name[nb]=b-integrator Name[nl]=b-integrator Name[pl]=b-całkowanie diff -Nru calligra-2.3.86/flow/stencils/Cybernetics/b-minus.desktop calligra-2.3.87/flow/stencils/Cybernetics/b-minus.desktop --- calligra-2.3.86/flow/stencils/Cybernetics/b-minus.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Cybernetics/b-minus.desktop 2012-01-28 14:26:27.000000000 +0000 @@ -1,9 +1,11 @@ [Desktop Entry] Name=b-minus Name[ca]=b-minus +Name[ca@valencia]=b-minus Name[el]=b-minus Name[et]=Alumine miinus Name[it]=b-minus +Name[kk]=b-minus Name[nb]=b-minus Name[nl]=b-minus Name[pl]=b-minus diff -Nru calligra-2.3.86/flow/stencils/Cybernetics/b-sens.desktop calligra-2.3.87/flow/stencils/Cybernetics/b-sens.desktop --- calligra-2.3.86/flow/stencils/Cybernetics/b-sens.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Cybernetics/b-sens.desktop 2012-01-28 14:26:27.000000000 +0000 @@ -1,8 +1,11 @@ [Desktop Entry] Name=b-sens Name[ca]=b-sens +Name[ca@valencia]=b-sens Name[el]=b-sens +Name[et]=Alumine sensor Name[it]=b-sens +Name[kk]=b-sens Name[nb]=b-sens Name[nl]=b-sens Name[pl]=b-sens diff -Nru calligra-2.3.86/flow/stencils/Cybernetics/collection.desktop calligra-2.3.87/flow/stencils/Cybernetics/collection.desktop --- calligra-2.3.86/flow/stencils/Cybernetics/collection.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Cybernetics/collection.desktop 2012-01-28 14:26:27.000000000 +0000 @@ -1,9 +1,11 @@ [Desktop Entry] Name=Cybernetics Name[ca]=Cibernètica +Name[ca@valencia]=Cibernètica Name[el]=Κυβερνητική Name[et]=Küberneetika Name[it]=Cibernetica +Name[kk]=Кибернетика Name[nb]=Kybernetikk Name[nl]=Cybernetica Name[pl]=Cybernetyka diff -Nru calligra-2.3.86/flow/stencils/Cybernetics/delta-t.desktop calligra-2.3.87/flow/stencils/Cybernetics/delta-t.desktop --- calligra-2.3.86/flow/stencils/Cybernetics/delta-t.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Cybernetics/delta-t.desktop 2012-01-28 14:26:27.000000000 +0000 @@ -1,9 +1,11 @@ [Desktop Entry] Name=delta-t Name[ca]=delta-t +Name[ca@valencia]=delta-t Name[el]=delta-t Name[et]=Delta-t Name[it]=delta-t +Name[kk]=дельта-t Name[nb]=delta-t Name[nl]=delta-t Name[pl]=delta-t diff -Nru calligra-2.3.86/flow/stencils/Cybernetics/empty-func.desktop calligra-2.3.87/flow/stencils/Cybernetics/empty-func.desktop --- calligra-2.3.86/flow/stencils/Cybernetics/empty-func.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Cybernetics/empty-func.desktop 2012-01-28 14:26:27.000000000 +0000 @@ -1,9 +1,11 @@ [Desktop Entry] Name=empty-func Name[ca]=funció-buit +Name[ca@valencia]=funció-buit Name[el]=empty-func Name[et]=Tühi funktsioon Name[it]=funzione-vuota +Name[kk]=бос-функция Name[nb]=tom funksj Name[nl]=empty-func Name[pl]=pusta-funkcja diff -Nru calligra-2.3.86/flow/stencils/Cybernetics/factor-0to-1.desktop calligra-2.3.87/flow/stencils/Cybernetics/factor-0to-1.desktop --- calligra-2.3.86/flow/stencils/Cybernetics/factor-0to-1.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Cybernetics/factor-0to-1.desktop 2012-01-28 14:26:27.000000000 +0000 @@ -1,9 +1,11 @@ [Desktop Entry] Name=factor-0to-1 Name[ca]=factor-0to-1 +Name[ca@valencia]=factor-0to-1 Name[el]=factor-0to-1 Name[et]=Tegur 0 kuni -1 Name[it]=factor-0to-1 +Name[kk]=фактор-0ден-1дейін Name[nb]=faktor-Oto-1 Name[nl]=factor-0to-1 Name[pl]=współczynnik-0do-1 diff -Nru calligra-2.3.86/flow/stencils/Cybernetics/factor-0to1.desktop calligra-2.3.87/flow/stencils/Cybernetics/factor-0to1.desktop --- calligra-2.3.86/flow/stencils/Cybernetics/factor-0to1.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Cybernetics/factor-0to1.desktop 2012-01-28 14:26:27.000000000 +0000 @@ -1,9 +1,11 @@ [Desktop Entry] Name=factor-0to1 Name[ca]=factor-0to1 +Name[ca@valencia]=factor-0to1 Name[el]=factor-0to1 Name[et]=Tegur 0 kuni 1 Name[it]=factor-0to1 +Name[kk]=фактор-0ден1дейін Name[nb]=faktor-Oto1 Name[nl]=factor-0to1 Name[pl]=współczynnik-0do-1 diff -Nru calligra-2.3.86/flow/stencils/Cybernetics/factor-greater1.desktop calligra-2.3.87/flow/stencils/Cybernetics/factor-greater1.desktop --- calligra-2.3.86/flow/stencils/Cybernetics/factor-greater1.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Cybernetics/factor-greater1.desktop 2012-01-28 14:26:27.000000000 +0000 @@ -1,9 +1,11 @@ [Desktop Entry] Name=factor-greater1 Name[ca]=factor-greater1 +Name[ca@valencia]=factor-greater1 Name[el]=factor-greater1 Name[et]=Tegur suurem kui 1 Name[it]=factor-greater1 +Name[kk]=фактор-1ден үлкен Name[nb]=faktor-større1 Name[nl]=factor-greater1 Name[pl]=współczynnik-większy-1 diff -Nru calligra-2.3.86/flow/stencils/Cybernetics/factor-smaller-1.desktop calligra-2.3.87/flow/stencils/Cybernetics/factor-smaller-1.desktop --- calligra-2.3.86/flow/stencils/Cybernetics/factor-smaller-1.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Cybernetics/factor-smaller-1.desktop 2012-01-28 14:26:27.000000000 +0000 @@ -1,9 +1,11 @@ [Desktop Entry] Name=factor-smaller-1 Name[ca]=factor-smaller-1 +Name[ca@valencia]=factor-smaller-1 Name[el]=factor-smaller-1 Name[et]=Tegur väiksem kui -1 Name[it]=factor-smaller-1 +Name[kk]=фактор-минус1ден кіші Name[nb]=faktor-mindre-1 Name[nl]=factor-smaller-1 Name[pl]=współczynnik-mniejszy-1 diff -Nru calligra-2.3.86/flow/stencils/Cybernetics/full-wave-rectifier.desktop calligra-2.3.87/flow/stencils/Cybernetics/full-wave-rectifier.desktop --- calligra-2.3.86/flow/stencils/Cybernetics/full-wave-rectifier.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Cybernetics/full-wave-rectifier.desktop 2012-01-28 14:26:27.000000000 +0000 @@ -1,10 +1,13 @@ [Desktop Entry] Name=full-wave-rectifier Name[ca]=full-wave-rectifier +Name[ca@valencia]=full-wave-rectifier Name[el]=full-wave-rectifier Name[et]=Täisperioodalaldi Name[it]=full-wave-rectifier +Name[kk]=толық-толқын-түзеткіш Name[nb]=helbølgelikeretter +Name[nl]=tweefasegelijkrichter Name[pl]=dwu-połówkowy-prostownik Name[pt]=rectificador-onda-completa Name[pt_BR]=retificador onda-completa diff -Nru calligra-2.3.86/flow/stencils/Cybernetics/half-wave-rectifier.desktop calligra-2.3.87/flow/stencils/Cybernetics/half-wave-rectifier.desktop --- calligra-2.3.86/flow/stencils/Cybernetics/half-wave-rectifier.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Cybernetics/half-wave-rectifier.desktop 2012-01-28 14:26:27.000000000 +0000 @@ -1,10 +1,13 @@ [Desktop Entry] Name=half-wave-rectifier Name[ca]=half-wave-rectifier +Name[ca@valencia]=half-wave-rectifier Name[el]=half-wave-rectifier Name[et]=Poolperioodalaldi Name[it]=half-wave-rectifier +Name[kk]=жарты-толқын-түзеткіш Name[nb]=halvbølgelikeretter +Name[nl]=eenfasegelijkrichter Name[pl]=jedno-połówkowy-prostownik Name[pt]=rectificador-meia-onda Name[pt_BR]=retificador meia-onda diff -Nru calligra-2.3.86/flow/stencils/Cybernetics/hpf.desktop calligra-2.3.87/flow/stencils/Cybernetics/hpf.desktop --- calligra-2.3.86/flow/stencils/Cybernetics/hpf.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Cybernetics/hpf.desktop 2012-01-28 14:26:27.000000000 +0000 @@ -1,9 +1,11 @@ [Desktop Entry] Name=hpf Name[ca]=hpf +Name[ca@valencia]=hpf Name[el]=hpf Name[et]=Kõrgpääsfilter Name[it]=hpf +Name[kk]=жоғ-жиіл-сүзгі Name[nb]=hpf Name[nl]=hpf Name[pl]=hpf diff -Nru calligra-2.3.86/flow/stencils/Cybernetics/l-integrator.desktop calligra-2.3.87/flow/stencils/Cybernetics/l-integrator.desktop --- calligra-2.3.86/flow/stencils/Cybernetics/l-integrator.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Cybernetics/l-integrator.desktop 2012-01-28 14:26:27.000000000 +0000 @@ -1,9 +1,11 @@ [Desktop Entry] Name=l-integrator Name[ca]=integrador-I +Name[ca@valencia]=integrador-I Name[el]=l-integrator Name[et]=Vasak integreerimislüli Name[it]=l-integrator +Name[kk]=сол-ж-интегратор Name[nb]=l-integrator Name[nl]=l-integrator Name[pl]=l-całkowanie diff -Nru calligra-2.3.86/flow/stencils/Cybernetics/l-minus.desktop calligra-2.3.87/flow/stencils/Cybernetics/l-minus.desktop --- calligra-2.3.86/flow/stencils/Cybernetics/l-minus.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Cybernetics/l-minus.desktop 2012-01-28 14:26:27.000000000 +0000 @@ -1,9 +1,11 @@ [Desktop Entry] Name=l-minus Name[ca]=l-minus +Name[ca@valencia]=l-minus Name[el]=l-minus Name[et]=Vasak miinus Name[it]=l-minus +Name[kk]=сол-ж-минус Name[nb]=l-minus Name[nl]=l-minus Name[pl]=l-minus diff -Nru calligra-2.3.86/flow/stencils/Cybernetics/lpf.desktop calligra-2.3.87/flow/stencils/Cybernetics/lpf.desktop --- calligra-2.3.86/flow/stencils/Cybernetics/lpf.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Cybernetics/lpf.desktop 2012-01-28 14:26:27.000000000 +0000 @@ -1,9 +1,11 @@ [Desktop Entry] Name=lpf Name[ca]=lpf +Name[ca@valencia]=lpf Name[el]=lpf Name[et]=Madalpääsfilter Name[it]=lpf +Name[kk]=төм-жиіл-сүзгі Name[nb]=lpf Name[nl]=lpf Name[pl]=lpf diff -Nru calligra-2.3.86/flow/stencils/Cybernetics/l-sens.desktop calligra-2.3.87/flow/stencils/Cybernetics/l-sens.desktop --- calligra-2.3.86/flow/stencils/Cybernetics/l-sens.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Cybernetics/l-sens.desktop 2012-01-28 14:26:27.000000000 +0000 @@ -1,8 +1,11 @@ [Desktop Entry] Name=l-sens Name[ca]=l-sens +Name[ca@valencia]=l-sens Name[el]=l-sens +Name[et]=Vasak sensor Name[it]=l-sens +Name[kk]=сол-ж-сезгіш Name[nb]=l-sens Name[nl]=l-sens Name[pl]=l-sens diff -Nru calligra-2.3.86/flow/stencils/Cybernetics/negative-shift.desktop calligra-2.3.87/flow/stencils/Cybernetics/negative-shift.desktop --- calligra-2.3.86/flow/stencils/Cybernetics/negative-shift.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Cybernetics/negative-shift.desktop 2012-01-28 14:26:27.000000000 +0000 @@ -1,10 +1,13 @@ [Desktop Entry] Name=negative-shift Name[ca]=negative-shift +Name[ca@valencia]=negative-shift Name[el]=negative-shift Name[et]=Negatiivne siire Name[it]=negative-shift +Name[kk]=теріс-ығыс Name[nb]=negativ-shift +Name[nl]=negatieve verschuiving Name[pl]=ujemne-przesunięcie Name[pt]=desvio-negativo Name[pt_BR]=desvio negativo diff -Nru calligra-2.3.86/flow/stencils/Cybernetics/positive-shift.desktop calligra-2.3.87/flow/stencils/Cybernetics/positive-shift.desktop --- calligra-2.3.86/flow/stencils/Cybernetics/positive-shift.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Cybernetics/positive-shift.desktop 2012-01-28 14:26:27.000000000 +0000 @@ -1,10 +1,13 @@ [Desktop Entry] Name=positive-shift Name[ca]=positive-shift +Name[ca@valencia]=positive-shift Name[el]=positive-shift Name[et]=Positiivne siire Name[it]=positive-shift +Name[kk]=оң-ығыс Name[nb]=positiv-shift +Name[nl]=positieve verschuiving Name[pl]=dodatnie-przesunięcie Name[pt]=desvio-positivo Name[pt_BR]=desvio positivo diff -Nru calligra-2.3.86/flow/stencils/Cybernetics/product.desktop calligra-2.3.87/flow/stencils/Cybernetics/product.desktop --- calligra-2.3.86/flow/stencils/Cybernetics/product.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Cybernetics/product.desktop 2012-01-28 14:26:27.000000000 +0000 @@ -1,10 +1,12 @@ [Desktop Entry] Name=product Name[ca]=producte +Name[ca@valencia]=producte Name[cs]=produkt Name[el]=προϊόν Name[et]=Korrutis Name[it]=prodotto +Name[kk]=көбейту Name[nb]=produkt Name[nl]=product Name[pl]=produkt diff -Nru calligra-2.3.86/flow/stencils/Cybernetics/relay.desktop calligra-2.3.87/flow/stencils/Cybernetics/relay.desktop --- calligra-2.3.86/flow/stencils/Cybernetics/relay.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Cybernetics/relay.desktop 2012-01-28 14:26:27.000000000 +0000 @@ -2,10 +2,12 @@ Name=relay Name[bg]=реле Name[ca]=relé +Name[ca@valencia]=relé Name[cs]=přenos Name[de]=Relais Name[et]=Relee Name[it]=relé +Name[kk]=Реле Name[nb]=rele Name[nl]=Relais Name[pl]=przekaźnik diff -Nru calligra-2.3.86/flow/stencils/Cybernetics/r-integrator.desktop calligra-2.3.87/flow/stencils/Cybernetics/r-integrator.desktop --- calligra-2.3.86/flow/stencils/Cybernetics/r-integrator.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Cybernetics/r-integrator.desktop 2012-01-28 14:26:27.000000000 +0000 @@ -1,9 +1,11 @@ [Desktop Entry] Name=r-integrator Name[ca]=integrador-r +Name[ca@valencia]=integrador-r Name[el]=r-integrator Name[et]=Parem integreerimislüli Name[it]=r-integrator +Name[kk]=оң-ж-интегратор Name[nb]=r-integrator Name[nl]=r-integrator Name[pl]=r-całkowanie diff -Nru calligra-2.3.86/flow/stencils/Cybernetics/r-minus.desktop calligra-2.3.87/flow/stencils/Cybernetics/r-minus.desktop --- calligra-2.3.86/flow/stencils/Cybernetics/r-minus.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Cybernetics/r-minus.desktop 2012-01-28 14:26:27.000000000 +0000 @@ -1,9 +1,11 @@ [Desktop Entry] Name=r-minus Name[ca]=r-minus +Name[ca@valencia]=r-minus Name[el]=r-minus Name[et]=Parem miinus Name[it]=r-minus +Name[kk]=оң-ж-минус Name[nb]=r-minus Name[nl]=r-minus Name[pl]=r-minus diff -Nru calligra-2.3.86/flow/stencils/Cybernetics/r-sens.desktop calligra-2.3.87/flow/stencils/Cybernetics/r-sens.desktop --- calligra-2.3.86/flow/stencils/Cybernetics/r-sens.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Cybernetics/r-sens.desktop 2012-01-28 14:26:27.000000000 +0000 @@ -1,8 +1,11 @@ [Desktop Entry] Name=r-sens Name[ca]=r-sens +Name[ca@valencia]=r-sens Name[el]=r-sens +Name[et]=Parem sensor Name[it]=r-sens +Name[kk]=оң-ж-сезгіш Name[nb]=r-sens Name[nl]=r-sens Name[pl]=r-sens diff -Nru calligra-2.3.86/flow/stencils/Cybernetics/saturation.desktop calligra-2.3.87/flow/stencils/Cybernetics/saturation.desktop --- calligra-2.3.86/flow/stencils/Cybernetics/saturation.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Cybernetics/saturation.desktop 2012-01-28 14:26:27.000000000 +0000 @@ -2,13 +2,15 @@ Name=saturation Name[bg]=насищане Name[ca]=saturació +Name[ca@valencia]=saturació Name[cs]=nasycení Name[el]=κορεσμός Name[es]=saturación Name[et]=Küllastus Name[it]=saturazione +Name[kk]=қанықтық Name[nb]=metning -Name[nl]=Verzadiging +Name[nl]=verzadiging Name[pl]=nasycenie Name[pt]=saturação Name[pt_BR]=saturação diff -Nru calligra-2.3.86/flow/stencils/Cybernetics/sigmoid.desktop calligra-2.3.87/flow/stencils/Cybernetics/sigmoid.desktop --- calligra-2.3.86/flow/stencils/Cybernetics/sigmoid.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Cybernetics/sigmoid.desktop 2012-01-28 14:26:27.000000000 +0000 @@ -1,9 +1,11 @@ [Desktop Entry] Name=sigmoid Name[ca]=sigmoid +Name[ca@valencia]=sigmoid Name[el]=σιγμοειδής Name[et]=Sigmoid Name[it]=sigmoide +Name[kk]=сигмоид Name[nb]=sigmoid Name[nl]=sigmoid Name[pl]=sigmoid diff -Nru calligra-2.3.86/flow/stencils/Cybernetics/sine.desktop calligra-2.3.87/flow/stencils/Cybernetics/sine.desktop --- calligra-2.3.86/flow/stencils/Cybernetics/sine.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Cybernetics/sine.desktop 2012-01-28 14:26:27.000000000 +0000 @@ -1,12 +1,14 @@ [Desktop Entry] Name=sine Name[ca]=sinusoïdal +Name[ca@valencia]=sinusoïdal Name[cs]=sinus Name[el]=ημίτονο Name[et]=Sinusoid Name[it]=seno +Name[kk]=синус Name[nb]=sinus -Name[nl]=Sinus +Name[nl]=sinus Name[pl]=sinus Name[pt]=seno Name[pt_BR]=seno diff -Nru calligra-2.3.86/flow/stencils/Cybernetics/sum.desktop calligra-2.3.87/flow/stencils/Cybernetics/sum.desktop --- calligra-2.3.86/flow/stencils/Cybernetics/sum.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Cybernetics/sum.desktop 2012-01-28 14:26:27.000000000 +0000 @@ -1,12 +1,14 @@ [Desktop Entry] Name=sum Name[ca]=sum +Name[ca@valencia]=sum Name[cs]=suma Name[el]=άθροισμα Name[et]=Summa Name[it]=somma +Name[kk]=қосынды Name[nb]=sum -Name[nl]=Som +Name[nl]=som Name[pl]=suma Name[pt]=soma Name[pt_BR]=soma diff -Nru calligra-2.3.86/flow/stencils/Cybernetics/t-integrator.desktop calligra-2.3.87/flow/stencils/Cybernetics/t-integrator.desktop --- calligra-2.3.86/flow/stencils/Cybernetics/t-integrator.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Cybernetics/t-integrator.desktop 2012-01-28 14:26:27.000000000 +0000 @@ -1,9 +1,11 @@ [Desktop Entry] Name=t-integrator Name[ca]=integrador-t +Name[ca@valencia]=integrador-t Name[el]=t-integrator Name[et]=Ülemine integreerimislüli Name[it]=t-integrator +Name[kk]=жоғ-интегратор Name[nb]=t-integrator Name[nl]=t-integrator Name[pl]=t-całkowanie diff -Nru calligra-2.3.86/flow/stencils/Cybernetics/t-minus.desktop calligra-2.3.87/flow/stencils/Cybernetics/t-minus.desktop --- calligra-2.3.86/flow/stencils/Cybernetics/t-minus.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Cybernetics/t-minus.desktop 2012-01-28 14:26:27.000000000 +0000 @@ -1,9 +1,11 @@ [Desktop Entry] Name=t-minus Name[ca]=t-minus +Name[ca@valencia]=t-minus Name[el]=t-minus Name[et]=Ülemine miinus Name[it]=t-minus +Name[kk]=жоғ-минус Name[nb]=t-minus Name[nl]=t-minus Name[pl]=t-minus diff -Nru calligra-2.3.86/flow/stencils/Cybernetics/t-sens.desktop calligra-2.3.87/flow/stencils/Cybernetics/t-sens.desktop --- calligra-2.3.86/flow/stencils/Cybernetics/t-sens.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Cybernetics/t-sens.desktop 2012-01-28 14:26:27.000000000 +0000 @@ -1,8 +1,11 @@ [Desktop Entry] Name=t-sens Name[ca]=t-sens +Name[ca@valencia]=t-sens Name[el]=t-sens +Name[et]=Ülemine sensor Name[it]=t-sens +Name[kk]=жоғ-сезгіш Name[nb]=t-sens Name[nl]=t-sens Name[pl]=t-sens diff -Nru calligra-2.3.86/flow/stencils/Digital/add_h.desktop calligra-2.3.87/flow/stencils/Digital/add_h.desktop --- calligra-2.3.86/flow/stencils/Digital/add_h.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Digital/add_h.desktop 2012-01-28 14:26:27.000000000 +0000 @@ -1,10 +1,13 @@ [Desktop Entry] Name=add h Name[ca]=add h +Name[ca@valencia]=add h Name[el]=add h Name[et]=Horisontaalne lisamine Name[it]=add h +Name[kk]=қосу жатық Name[nb]=add vannr +Name[nl]=h toevoegen Name[pl]=add h Name[pt]=adição v Name[pt_BR]=adição h diff -Nru calligra-2.3.86/flow/stencils/Digital/add_v.desktop calligra-2.3.87/flow/stencils/Digital/add_v.desktop --- calligra-2.3.86/flow/stencils/Digital/add_v.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Digital/add_v.desktop 2012-01-28 14:26:27.000000000 +0000 @@ -1,10 +1,13 @@ [Desktop Entry] Name=add v Name[ca]=add v +Name[ca@valencia]=add v Name[el]=add v Name[et]=Vertikaalne lisamine Name[it]=add v +Name[kk]=косу тік Name[nb]=add loddr +Name[nl]=v toevoegen Name[pl]=add v Name[pt]=adição v Name[pt_BR]=adição v diff -Nru calligra-2.3.86/flow/stencils/Digital/and_h.desktop calligra-2.3.87/flow/stencils/Digital/and_h.desktop --- calligra-2.3.86/flow/stencils/Digital/and_h.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Digital/and_h.desktop 2012-01-28 14:26:27.000000000 +0000 @@ -1,10 +1,13 @@ [Desktop Entry] Name=and h Name[ca]=and h +Name[ca@valencia]=and h Name[el]=and h Name[et]=Horisontaalne ja Name[it]=and h +Name[kk]=лог-және жатық Name[nb]=og vannr +Name[nl]=en h Name[pl]=and h Name[pt]=and h Name[pt_BR]=e h diff -Nru calligra-2.3.86/flow/stencils/Digital/and_v.desktop calligra-2.3.87/flow/stencils/Digital/and_v.desktop --- calligra-2.3.86/flow/stencils/Digital/and_v.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Digital/and_v.desktop 2012-01-28 14:26:27.000000000 +0000 @@ -1,10 +1,13 @@ [Desktop Entry] Name=and v Name[ca]=and v +Name[ca@valencia]=and v Name[el]=and v Name[et]=Vertikaalne ja Name[it]=and v +Name[kk]=лог-және тік Name[nb]=og loddr +Name[nl]=en v Name[pl]=and v Name[pt]=and v Name[pt_BR]=e v diff -Nru calligra-2.3.86/flow/stencils/Digital/buff_h.desktop calligra-2.3.87/flow/stencils/Digital/buff_h.desktop --- calligra-2.3.86/flow/stencils/Digital/buff_h.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Digital/buff_h.desktop 2012-01-28 14:26:27.000000000 +0000 @@ -1,10 +1,13 @@ [Desktop Entry] Name=buff h Name[ca]=buff h +Name[ca@valencia]=buff h Name[el]=buff h Name[et]=Horisontaalne puhver Name[it]=buff h +Name[kk]=буферлеу жатық Name[nb]=buff vannr +Name[nl]=h in buffer Name[pl]=buff h Name[pt]=tampão h Name[pt_BR]=tampão h diff -Nru calligra-2.3.86/flow/stencils/Digital/buff_v.desktop calligra-2.3.87/flow/stencils/Digital/buff_v.desktop --- calligra-2.3.86/flow/stencils/Digital/buff_v.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Digital/buff_v.desktop 2012-01-28 14:26:27.000000000 +0000 @@ -1,10 +1,13 @@ [Desktop Entry] Name=buff v Name[ca]=buff v +Name[ca@valencia]=buff v Name[el]=buff v Name[et]=Vertikaalne puhver Name[it]=buff v +Name[kk]=буферлеу тік Name[nb]=buff loddr +Name[nl]=v in buffer Name[pl]=buff v Name[pt]=tampão v Name[pt_BR]=tampão v diff -Nru calligra-2.3.86/flow/stencils/Digital/collection.desktop calligra-2.3.87/flow/stencils/Digital/collection.desktop --- calligra-2.3.86/flow/stencils/Digital/collection.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Digital/collection.desktop 2012-01-28 14:26:27.000000000 +0000 @@ -1,11 +1,13 @@ [Desktop Entry] Name=Digital Name[ca]=Digital +Name[ca@valencia]=Digital Name[cs]=Digital Name[el]=Ψηφιακό Name[es]=Digital Name[et]=Digitaal Name[it]=Digitale +Name[kk]=Цифрлық Name[nb]=Digital Name[nl]=Digitaal Name[pl]=Cyfrowy diff -Nru calligra-2.3.86/flow/stencils/Digital/conn.desktop calligra-2.3.87/flow/stencils/Digital/conn.desktop --- calligra-2.3.86/flow/stencils/Digital/conn.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Digital/conn.desktop 2012-01-28 14:26:27.000000000 +0000 @@ -1,9 +1,11 @@ [Desktop Entry] Name=conn Name[ca]=conn +Name[ca@valencia]=conn Name[el]=conn Name[et]=Ühendus Name[it]=conn +Name[kk]=түйіс Name[nb]=tilkobling Name[nl]=conn Name[pl]=połączenie diff -Nru calligra-2.3.86/flow/stencils/Digital/inv_h.desktop calligra-2.3.87/flow/stencils/Digital/inv_h.desktop --- calligra-2.3.86/flow/stencils/Digital/inv_h.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Digital/inv_h.desktop 2012-01-28 14:26:27.000000000 +0000 @@ -1,9 +1,11 @@ [Desktop Entry] Name=inv h Name[ca]=inv h +Name[ca@valencia]=inv h Name[el]=inv h Name[et]=Horisontaalne inverter Name[it]=inv h +Name[kk]=лог-керілеу жатық Name[nb]=inv vannr Name[nl]=inv h Name[pl]=inv h diff -Nru calligra-2.3.86/flow/stencils/Digital/inv_v.desktop calligra-2.3.87/flow/stencils/Digital/inv_v.desktop --- calligra-2.3.86/flow/stencils/Digital/inv_v.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Digital/inv_v.desktop 2012-01-28 14:26:27.000000000 +0000 @@ -1,9 +1,11 @@ [Desktop Entry] Name=inv v Name[ca]=inv v +Name[ca@valencia]=inv v Name[el]=inv v Name[et]=Vertikaalne inverter Name[it]=inv v +Name[kk]=лог-керілеу тік Name[nb]=inv loddr Name[nl]=inv v Name[pl]=inv v diff -Nru calligra-2.3.86/flow/stencils/Digital/mux_h.desktop calligra-2.3.87/flow/stencils/Digital/mux_h.desktop --- calligra-2.3.86/flow/stencils/Digital/mux_h.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Digital/mux_h.desktop 2012-01-28 14:26:27.000000000 +0000 @@ -1,9 +1,11 @@ [Desktop Entry] Name=mux h Name[ca]=mux h +Name[ca@valencia]=mux h Name[el]=mux h Name[et]=Horiontaalne multipleksor Name[it]=mux h +Name[kk]=мултиплекс жатық Name[nb]=mux vannr Name[nl]=mux h Name[pl]=mux h diff -Nru calligra-2.3.86/flow/stencils/Digital/mux_v.desktop calligra-2.3.87/flow/stencils/Digital/mux_v.desktop --- calligra-2.3.86/flow/stencils/Digital/mux_v.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Digital/mux_v.desktop 2012-01-28 14:26:27.000000000 +0000 @@ -1,9 +1,11 @@ [Desktop Entry] Name=mux v Name[ca]=mux v +Name[ca@valencia]=mux v Name[el]=mux v Name[et]=Vertikaalne multipleksor Name[it]=mux v +Name[kk]=мултиплекс тік Name[nb]=mux loddr Name[nl]=mux v Name[pl]=mux v diff -Nru calligra-2.3.86/flow/stencils/Digital/nand_h.desktop calligra-2.3.87/flow/stencils/Digital/nand_h.desktop --- calligra-2.3.86/flow/stencils/Digital/nand_h.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Digital/nand_h.desktop 2012-01-28 14:26:27.000000000 +0000 @@ -1,9 +1,11 @@ [Desktop Entry] Name=nand h Name[ca]=nand h +Name[ca@valencia]=nand h Name[el]=nand h Name[et]=Horisontaalne mitte-ja Name[it]=nand h +Name[kk]=теріс-және жатық Name[nb]=nand vannr Name[nl]=nand h Name[pl]=nand h diff -Nru calligra-2.3.86/flow/stencils/Digital/nand_v.desktop calligra-2.3.87/flow/stencils/Digital/nand_v.desktop --- calligra-2.3.86/flow/stencils/Digital/nand_v.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Digital/nand_v.desktop 2012-01-28 14:26:27.000000000 +0000 @@ -1,9 +1,11 @@ [Desktop Entry] Name=nand v Name[ca]=nand v +Name[ca@valencia]=nand v Name[el]=nand v Name[et]=Vertikaalne mitte-ja Name[it]=nand v +Name[kk]=теріс-және тік Name[nb]=nand loddr Name[nl]=nand v Name[pl]=nand v diff -Nru calligra-2.3.86/flow/stencils/Digital/nor_h.desktop calligra-2.3.87/flow/stencils/Digital/nor_h.desktop --- calligra-2.3.86/flow/stencils/Digital/nor_h.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Digital/nor_h.desktop 2012-01-28 14:26:27.000000000 +0000 @@ -1,9 +1,11 @@ [Desktop Entry] Name=nor h Name[ca]=nor h +Name[ca@valencia]=nor h Name[el]=nor h Name[et]=Horisontaalne mitte-või Name[it]=nor h +Name[kk]=теріс-немесе жатық Name[nb]=nor vannr Name[nl]=nor h Name[pl]=nor h diff -Nru calligra-2.3.86/flow/stencils/Digital/nor_v.desktop calligra-2.3.87/flow/stencils/Digital/nor_v.desktop --- calligra-2.3.86/flow/stencils/Digital/nor_v.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Digital/nor_v.desktop 2012-01-28 14:26:27.000000000 +0000 @@ -1,9 +1,11 @@ [Desktop Entry] Name=nor v Name[ca]=nor v +Name[ca@valencia]=nor v Name[el]=nor v Name[et]=Vertikaalne mitte-või Name[it]=nor v +Name[kk]=теріс-немесе тік Name[nb]=nor loddr Name[nl]=nor v Name[pl]=nor v diff -Nru calligra-2.3.86/flow/stencils/Digital/or_h.desktop calligra-2.3.87/flow/stencils/Digital/or_h.desktop --- calligra-2.3.86/flow/stencils/Digital/or_h.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Digital/or_h.desktop 2012-01-28 14:26:27.000000000 +0000 @@ -1,9 +1,11 @@ [Desktop Entry] Name=or h Name[ca]=or h +Name[ca@valencia]=or h Name[el]=or h Name[et]=Horisontaalne või Name[it]=or h +Name[kk]=лог-немесе жатық Name[nb]=or vannr Name[nl]=or h Name[pl]=lub h diff -Nru calligra-2.3.86/flow/stencils/Digital/or_v.desktop calligra-2.3.87/flow/stencils/Digital/or_v.desktop --- calligra-2.3.86/flow/stencils/Digital/or_v.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Digital/or_v.desktop 2012-01-28 14:26:27.000000000 +0000 @@ -1,9 +1,11 @@ [Desktop Entry] Name=or v Name[ca]=or v +Name[ca@valencia]=or v Name[el]=or v Name[et]=Vertikaalne või Name[it]=or v +Name[kk]=дог-немесе тік Name[nb]=or loddr Name[nl]=or v Name[pl]=lubr v diff -Nru calligra-2.3.86/flow/stencils/Digital/reg_h.desktop calligra-2.3.87/flow/stencils/Digital/reg_h.desktop --- calligra-2.3.86/flow/stencils/Digital/reg_h.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Digital/reg_h.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -1,6 +1,7 @@ [Desktop Entry] Name=reg h Name[ca]=reg h +Name[ca@valencia]=reg h Name[el]=reg h Name[et]=Horisontaalne register Name[it]=reg h diff -Nru calligra-2.3.86/flow/stencils/Digital/reg_v.desktop calligra-2.3.87/flow/stencils/Digital/reg_v.desktop --- calligra-2.3.86/flow/stencils/Digital/reg_v.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Digital/reg_v.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -1,6 +1,7 @@ [Desktop Entry] Name=reg v Name[ca]=reg v +Name[ca@valencia]=reg v Name[el]=reg v Name[et]=Vertikaalne register Name[it]=reg v diff -Nru calligra-2.3.86/flow/stencils/Digital/xnor_h.desktop calligra-2.3.87/flow/stencils/Digital/xnor_h.desktop --- calligra-2.3.86/flow/stencils/Digital/xnor_h.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Digital/xnor_h.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -1,6 +1,7 @@ [Desktop Entry] Name=xnor h Name[ca]=xnor h +Name[ca@valencia]=xnor h Name[el]=xnor h Name[et]=Horisontaalne välistav mitte-või Name[it]=xnor h diff -Nru calligra-2.3.86/flow/stencils/Digital/xnor_v.desktop calligra-2.3.87/flow/stencils/Digital/xnor_v.desktop --- calligra-2.3.86/flow/stencils/Digital/xnor_v.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Digital/xnor_v.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -1,6 +1,7 @@ [Desktop Entry] Name=xnor v Name[ca]=xnor v +Name[ca@valencia]=xnor v Name[el]=xnor v Name[et]=Vertikaalne välistav mitte-või Name[it]=xnor v diff -Nru calligra-2.3.86/flow/stencils/Digital/xor_h.desktop calligra-2.3.87/flow/stencils/Digital/xor_h.desktop --- calligra-2.3.86/flow/stencils/Digital/xor_h.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Digital/xor_h.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -1,6 +1,7 @@ [Desktop Entry] Name=xor h Name[ca]=xor h +Name[ca@valencia]=xor h Name[el]=xor h Name[et]=Horisontaalne välistav või Name[it]=xor h diff -Nru calligra-2.3.86/flow/stencils/Digital/xor_v.desktop calligra-2.3.87/flow/stencils/Digital/xor_v.desktop --- calligra-2.3.86/flow/stencils/Digital/xor_v.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Digital/xor_v.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -1,6 +1,7 @@ [Desktop Entry] Name=xor v Name[ca]=xor v +Name[ca@valencia]=xor v Name[el]=xor v Name[et]=Vertikaalne välistav või Name[it]=xor v diff -Nru calligra-2.3.86/flow/stencils/Edpc/and.desktop calligra-2.3.87/flow/stencils/Edpc/and.desktop --- calligra-2.3.86/flow/stencils/Edpc/and.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Edpc/and.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -1,6 +1,7 @@ [Desktop Entry] Name=And Operator Name[ca]=Operador I +Name[ca@valencia]=Operador I Name[de]=Und-Operator Name[el]=Τελεστής and Name[et]=Ja-tehe diff -Nru calligra-2.3.86/flow/stencils/Edpc/collection.desktop calligra-2.3.87/flow/stencils/Edpc/collection.desktop --- calligra-2.3.86/flow/stencils/Edpc/collection.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Edpc/collection.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -1,6 +1,7 @@ [Desktop Entry] Name=Edpc Name[ca]=Edpc +Name[ca@valencia]=Edpc Name[de]=Edpc Name[el]=Edpc Name[et]=Edpc (Sündmusepõhine tööahel) diff -Nru calligra-2.3.86/flow/stencils/Edpc/function.desktop calligra-2.3.87/flow/stencils/Edpc/function.desktop --- calligra-2.3.86/flow/stencils/Edpc/function.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Edpc/function.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -2,6 +2,7 @@ Name=Function Name[bg]=Функция Name[ca]=Funció +Name[ca@valencia]=Funció Name[cs]=Funkce Name[de]=Funktion Name[el]=Συνάρτηση diff -Nru calligra-2.3.86/flow/stencils/Edpc/or.desktop calligra-2.3.87/flow/stencils/Edpc/or.desktop --- calligra-2.3.86/flow/stencils/Edpc/or.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Edpc/or.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -1,6 +1,7 @@ [Desktop Entry] Name=Or Operator Name[ca]=Operador O +Name[ca@valencia]=Operador O Name[de]=Oder-Operator Name[el]=Τελεστής or Name[et]=Või-tehe diff -Nru calligra-2.3.86/flow/stencils/Edpc/organisation_unit.desktop calligra-2.3.87/flow/stencils/Edpc/organisation_unit.desktop --- calligra-2.3.86/flow/stencils/Edpc/organisation_unit.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Edpc/organisation_unit.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -1,6 +1,7 @@ [Desktop Entry] Name=Organisation Unit Name[ca]=Unitat d'organització +Name[ca@valencia]=Unitat d'organització Name[el]=Μονάδα οργανισμού Name[et]=Organisatsiooniüksus Name[it]=Unità organizzativa diff -Nru calligra-2.3.86/flow/stencils/Edpc/xor.desktop calligra-2.3.87/flow/stencils/Edpc/xor.desktop --- calligra-2.3.86/flow/stencils/Edpc/xor.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Edpc/xor.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -1,6 +1,7 @@ [Desktop Entry] Name=XOR Operator Name[ca]=Operador XOR +Name[ca@valencia]=Operador XOR Name[de]=XOR-Operator Name[el]=Τελεστής XOR Name[et]=Välistava või tehe diff -Nru calligra-2.3.86/flow/stencils/Electric/cnx.desktop calligra-2.3.87/flow/stencils/Electric/cnx.desktop --- calligra-2.3.86/flow/stencils/Electric/cnx.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Electric/cnx.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -2,11 +2,13 @@ Name=connpoint Name[bg]=точка на свързване Name[ca]=connpoint +Name[ca@valencia]=connpoint Name[cs]=Access Name[el]=connpoint Name[et]=Ühenduspunkt Name[it]=connpoint Name[nb]=kobl.punkt +Name[nl]=connpunt Name[pl]=puntkpołączenia Name[pt]=ponto-ligação Name[pt_BR]=ponto de conexão diff -Nru calligra-2.3.86/flow/stencils/Electric/collection.desktop calligra-2.3.87/flow/stencils/Electric/collection.desktop --- calligra-2.3.86/flow/stencils/Electric/collection.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Electric/collection.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -2,6 +2,7 @@ Name=Electric Name[bg]=Електрически Name[ca]=Electric +Name[ca@valencia]=Electric Name[cs]=Elektrika Name[de]=Elektrik Name[el]=Ηλεκτρικό diff -Nru calligra-2.3.86/flow/stencils/Electric/command.desktop calligra-2.3.87/flow/stencils/Electric/command.desktop --- calligra-2.3.86/flow/stencils/Electric/command.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Electric/command.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -2,8 +2,10 @@ Name=command Name[bg]=команда Name[ca]=command +Name[ca@valencia]=command Name[cs]=příkaz Name[el]=εντολή +Name[et]=Kontaktor Name[it]=comando Name[nb]=styring Name[nds]=Befehl diff -Nru calligra-2.3.86/flow/stencils/Electric/contact_f.desktop calligra-2.3.87/flow/stencils/Electric/contact_f.desktop --- calligra-2.3.86/flow/stencils/Electric/contact_f.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Electric/contact_f.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -1,7 +1,9 @@ [Desktop Entry] Name=contact f Name[ca]=contact f +Name[ca@valencia]=contact f Name[el]=contact f +Name[et]=Suletud kontakt Name[it]=contact f Name[nb]=kontakt f Name[nl]=Contact f diff -Nru calligra-2.3.86/flow/stencils/Electric/contact_o.desktop calligra-2.3.87/flow/stencils/Electric/contact_o.desktop --- calligra-2.3.86/flow/stencils/Electric/contact_o.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Electric/contact_o.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -1,7 +1,9 @@ [Desktop Entry] Name=contact o Name[ca]=contact o +Name[ca@valencia]=contact o Name[el]=contact o +Name[et]=Avatud kontakt Name[it]=contact o Name[nb]=kontakt o Name[nl]=Contact o diff -Nru calligra-2.3.86/flow/stencils/Electric/intpos_f.desktop calligra-2.3.87/flow/stencils/Electric/intpos_f.desktop --- calligra-2.3.86/flow/stencils/Electric/intpos_f.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Electric/intpos_f.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -1,7 +1,9 @@ [Desktop Entry] Name=intpos f Name[ca]=intpos f +Name[ca@valencia]=intpos f Name[el]=intpos f +Name[et]=Suletud lõpulüliti Name[it]=intpos f Name[nb]=mellomlegg f Name[nl]=intpos f diff -Nru calligra-2.3.86/flow/stencils/Electric/intpos_o.desktop calligra-2.3.87/flow/stencils/Electric/intpos_o.desktop --- calligra-2.3.86/flow/stencils/Electric/intpos_o.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Electric/intpos_o.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -1,7 +1,9 @@ [Desktop Entry] Name=intpos o Name[ca]=intpos o +Name[ca@valencia]=intpos o Name[el]=intpos o +Name[et]=Avatud lõpulüliti Name[it]=intpos o Name[nb]=mellomlegg åpent Name[nl]=intpos o diff -Nru calligra-2.3.86/flow/stencils/Electric/lamp.desktop calligra-2.3.87/flow/stencils/Electric/lamp.desktop --- calligra-2.3.86/flow/stencils/Electric/lamp.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Electric/lamp.desktop 2012-01-28 14:26:27.000000000 +0000 @@ -1,9 +1,11 @@ [Desktop Entry] Name=lamp Name[ca]=làmpada +Name[ca@valencia]=làmpada Name[de]=Lampe Name[et]=Lamp Name[it]=lamp +Name[kk]=лампа Name[nb]=lampe Name[nl]=lamp Name[pl]=lampa diff -Nru calligra-2.3.86/flow/stencils/Electric/relay.desktop calligra-2.3.87/flow/stencils/Electric/relay.desktop --- calligra-2.3.86/flow/stencils/Electric/relay.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Electric/relay.desktop 2012-01-28 14:26:27.000000000 +0000 @@ -2,10 +2,12 @@ Name=relay Name[bg]=реле Name[ca]=relé +Name[ca@valencia]=relé Name[cs]=přenos Name[de]=Relais Name[et]=Relee Name[it]=relé +Name[kk]=Реле Name[nb]=rele Name[nl]=Relais Name[pl]=przekaźnik diff -Nru calligra-2.3.86/flow/stencils/Electric/vcommand.desktop calligra-2.3.87/flow/stencils/Electric/vcommand.desktop --- calligra-2.3.86/flow/stencils/Electric/vcommand.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Electric/vcommand.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -1,7 +1,9 @@ [Desktop Entry] Name=vcommand Name[ca]=vcommand +Name[ca@valencia]=vcommand Name[el]=vcommand +Name[et]=Vertikaalne kontaktor Name[it]=vcommand Name[nb]=loddrett kommando Name[nl]=vcommand diff -Nru calligra-2.3.86/flow/stencils/Electric/vcontact_f.desktop calligra-2.3.87/flow/stencils/Electric/vcontact_f.desktop --- calligra-2.3.86/flow/stencils/Electric/vcontact_f.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Electric/vcontact_f.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -1,7 +1,9 @@ [Desktop Entry] Name=vcontact f Name[ca]=vcontact f +Name[ca@valencia]=vcontact f Name[el]=vcontact f +Name[et]=Vertikaalne suletud kontakt Name[it]=vcontact f Name[nb]=loddrett kontakt f Name[nl]=vcontact f diff -Nru calligra-2.3.86/flow/stencils/Electric/vcontact_o.desktop calligra-2.3.87/flow/stencils/Electric/vcontact_o.desktop --- calligra-2.3.86/flow/stencils/Electric/vcontact_o.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Electric/vcontact_o.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -1,7 +1,9 @@ [Desktop Entry] Name=vcontact o Name[ca]=vcontact o +Name[ca@valencia]=vcontact o Name[el]=vcontact o +Name[et]=Vertikaalne avatud kontakt Name[it]=vcontact o Name[nb]=loddrett kontakt o Name[nl]=vcontact o diff -Nru calligra-2.3.86/flow/stencils/Electric/vintpos_f.desktop calligra-2.3.87/flow/stencils/Electric/vintpos_f.desktop --- calligra-2.3.86/flow/stencils/Electric/vintpos_f.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Electric/vintpos_f.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -1,7 +1,9 @@ [Desktop Entry] Name=vintpos f Name[ca]=vintpos f +Name[ca@valencia]=vintpos f Name[el]=vintpos f +Name[et]=Vertikaalne suletud lõpulüliti Name[it]=vintpos f Name[nb]=loddrett mellomlegg f Name[nl]=vintpos f diff -Nru calligra-2.3.86/flow/stencils/Electric/vintpos_o.desktop calligra-2.3.87/flow/stencils/Electric/vintpos_o.desktop --- calligra-2.3.86/flow/stencils/Electric/vintpos_o.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Electric/vintpos_o.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -1,7 +1,9 @@ [Desktop Entry] Name=vintpos o Name[ca]=vintpos o +Name[ca@valencia]=vintpos o Name[el]=vintpos o +Name[et]=Vertikaalne avatud lõpulüliti Name[it]=vintpos o Name[nb]=loddrett mellomlegg o Name[nl]=vintpos o diff -Nru calligra-2.3.86/flow/stencils/Electric/vlamp.desktop calligra-2.3.87/flow/stencils/Electric/vlamp.desktop --- calligra-2.3.86/flow/stencils/Electric/vlamp.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Electric/vlamp.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -1,7 +1,9 @@ [Desktop Entry] Name=vlamp Name[ca]=vlamp +Name[ca@valencia]=vlamp Name[el]=vlamp +Name[et]=Vertikaalne lamp Name[it]=vlamp Name[nb]=lampe loddr Name[nl]=vlamp diff -Nru calligra-2.3.86/flow/stencils/Electric/vrelay.desktop calligra-2.3.87/flow/stencils/Electric/vrelay.desktop --- calligra-2.3.86/flow/stencils/Electric/vrelay.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Electric/vrelay.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -1,7 +1,9 @@ [Desktop Entry] Name=vrelay Name[ca]=vrelay +Name[ca@valencia]=vrelay Name[el]=vrelay +Name[et]=Vertikaalne relee Name[it]=relé-v Name[nb]=rele loddr Name[nl]=vrelais diff -Nru calligra-2.3.86/flow/stencils/Electric2/ckt-breaker.desktop calligra-2.3.87/flow/stencils/Electric2/ckt-breaker.desktop --- calligra-2.3.86/flow/stencils/Electric2/ckt-breaker.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Electric2/ckt-breaker.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -1,10 +1,12 @@ [Desktop Entry] Name=ckt-breaker Name[ca]=ckt-breaker +Name[ca@valencia]=ckt-breaker Name[el]=ckt-breaker Name[et]=Automaatkaitselüliti Name[it]=ckt-breaker Name[nb]=kretsbryter +Name[nl]=circ-schakelaar Name[pl]=wyłącznik-ckt Name[pt]=quebra-circ Name[pt_BR]=quebra-circ diff -Nru calligra-2.3.86/flow/stencils/Electric2/collection.desktop calligra-2.3.87/flow/stencils/Electric2/collection.desktop --- calligra-2.3.86/flow/stencils/Electric2/collection.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Electric2/collection.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -2,6 +2,7 @@ Name=Electric2 Name[bg]=Електрически2 Name[ca]=Electric2 +Name[ca@valencia]=Electric2 Name[cs]=Elektrika2 Name[el]=Electric2 Name[et]=Elekter2 diff -Nru calligra-2.3.86/flow/stencils/Electric2/generator.desktop calligra-2.3.87/flow/stencils/Electric2/generator.desktop --- calligra-2.3.86/flow/stencils/Electric2/generator.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Electric2/generator.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -2,6 +2,7 @@ Name=generator Name[bg]=генератор Name[ca]=generador +Name[ca@valencia]=generador Name[cs]=generátor Name[de]=Generator Name[el]=γεννήτρια diff -Nru calligra-2.3.86/flow/stencils/Electric2/isolator.desktop calligra-2.3.87/flow/stencils/Electric2/isolator.desktop --- calligra-2.3.86/flow/stencils/Electric2/isolator.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Electric2/isolator.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -2,6 +2,7 @@ Name=isolator Name[bg]=изолатор Name[ca]=isolador +Name[ca@valencia]=isolador Name[de]=Isolator Name[et]=Isolaator Name[it]=isolatore diff -Nru calligra-2.3.86/flow/stencils/Electric2/transformer.desktop calligra-2.3.87/flow/stencils/Electric2/transformer.desktop --- calligra-2.3.86/flow/stencils/Electric2/transformer.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Electric2/transformer.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -2,6 +2,7 @@ Name=transformer Name[bg]=трансформатор Name[ca]=transformador +Name[ca@valencia]=transformador Name[el]=μετασχηματιστής Name[et]=Transformaator Name[it]=trasformatore diff -Nru calligra-2.3.86/flow/stencils/Electronic/ampermeter.desktop calligra-2.3.87/flow/stencils/Electronic/ampermeter.desktop --- calligra-2.3.86/flow/stencils/Electronic/ampermeter.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Electronic/ampermeter.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -2,6 +2,7 @@ Name=ampermeter Name[bg]=амперметър Name[ca]=amperímetre +Name[ca@valencia]=amperímetre Name[el]=αμπερόμετρο Name[et]=Ampermeeter Name[it]=amperometro diff -Nru calligra-2.3.86/flow/stencils/Electronic/antenna.desktop calligra-2.3.87/flow/stencils/Electronic/antenna.desktop --- calligra-2.3.86/flow/stencils/Electronic/antenna.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Electronic/antenna.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -2,6 +2,7 @@ Name=antenna Name[bg]=антена Name[ca]=antenna +Name[ca@valencia]=antenna Name[de]=Antenne Name[el]=κεραία Name[et]=Antenn diff -Nru calligra-2.3.86/flow/stencils/Electronic/bell.desktop calligra-2.3.87/flow/stencils/Electronic/bell.desktop --- calligra-2.3.86/flow/stencils/Electronic/bell.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Electronic/bell.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -2,6 +2,7 @@ Name=bell Name[bg]=звънец Name[ca]=campana +Name[ca@valencia]=campana Name[cs]=zvonek Name[et]=Kell Name[it]=bell diff -Nru calligra-2.3.86/flow/stencils/Electronic/button.desktop calligra-2.3.87/flow/stencils/Electronic/button.desktop --- calligra-2.3.86/flow/stencils/Electronic/button.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Electronic/button.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -2,6 +2,7 @@ Name=button Name[bg]=бутон Name[ca]=botó +Name[ca@valencia]=botó Name[cs]=tlačítko Name[el]=κουμπί Name[et]=Nupp diff -Nru calligra-2.3.86/flow/stencils/Electronic/capacitor.desktop calligra-2.3.87/flow/stencils/Electronic/capacitor.desktop --- calligra-2.3.86/flow/stencils/Electronic/capacitor.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Electronic/capacitor.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -2,6 +2,7 @@ Name=capacitor Name[bg]=кондензатор Name[ca]=capacitador +Name[ca@valencia]=capacitador Name[cs]=kondenzátor Name[de]=Kondensator Name[el]=πυκνωτής diff -Nru calligra-2.3.86/flow/stencils/Electronic/capacitor_electrolytic.desktop calligra-2.3.87/flow/stencils/Electronic/capacitor_electrolytic.desktop --- calligra-2.3.86/flow/stencils/Electronic/capacitor_electrolytic.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Electronic/capacitor_electrolytic.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -2,6 +2,7 @@ Name=capacitor electrolytic Name[bg]=електролитен кондензатор Name[ca]=capacitador electrolític +Name[ca@valencia]=capacitador electrolític Name[el]=ηλεκτρολυτικός πυκνωτής Name[et]=Elektrolüütiline kondensaator Name[it]=condensatore elettrolitico diff -Nru calligra-2.3.86/flow/stencils/Electronic/collection.desktop calligra-2.3.87/flow/stencils/Electronic/collection.desktop --- calligra-2.3.86/flow/stencils/Electronic/collection.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Electronic/collection.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -1,6 +1,7 @@ [Desktop Entry] Name=Electronic Name[ca]=Electrònic +Name[ca@valencia]=Electrònic Name[cs]=Elektronická Name[de]=Elektronik Name[el]=Ηλεκτρονικό diff -Nru calligra-2.3.86/flow/stencils/Electronic/contact.desktop calligra-2.3.87/flow/stencils/Electronic/contact.desktop --- calligra-2.3.86/flow/stencils/Electronic/contact.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Electronic/contact.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -2,6 +2,7 @@ Name=contact Name[bg]=контакт Name[ca]=contacte +Name[ca@valencia]=contacte Name[cs]=kontakt Name[de]=Kontakt Name[et]=Kontakt diff -Nru calligra-2.3.86/flow/stencils/Electronic/contact_pair.desktop calligra-2.3.87/flow/stencils/Electronic/contact_pair.desktop --- calligra-2.3.86/flow/stencils/Electronic/contact_pair.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Electronic/contact_pair.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -1,6 +1,7 @@ [Desktop Entry] Name=contact pair Name[ca]=parell de contactes +Name[ca@valencia]=parell de contactes Name[et]=Kontaktipaar Name[it]=coppia di contatti Name[nb]=kontaktpar diff -Nru calligra-2.3.86/flow/stencils/Electronic/crystal.desktop calligra-2.3.87/flow/stencils/Electronic/crystal.desktop --- calligra-2.3.86/flow/stencils/Electronic/crystal.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Electronic/crystal.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -2,6 +2,7 @@ Name=crystal Name[bg]=кристал Name[ca]=cristal +Name[ca@valencia]=cristal Name[cs]=krystal Name[el]=crystal Name[et]=Kristall diff -Nru calligra-2.3.86/flow/stencils/Electronic/diac.desktop calligra-2.3.87/flow/stencils/Electronic/diac.desktop --- calligra-2.3.86/flow/stencils/Electronic/diac.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Electronic/diac.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -1,6 +1,7 @@ [Desktop Entry] Name=diac Name[ca]=diac +Name[ca@valencia]=diac Name[el]=diac Name[et]=Dinistor Name[it]=diac diff -Nru calligra-2.3.86/flow/stencils/Electronic/di_gate.desktop calligra-2.3.87/flow/stencils/Electronic/di_gate.desktop --- calligra-2.3.86/flow/stencils/Electronic/di_gate.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Electronic/di_gate.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -1,7 +1,9 @@ [Desktop Entry] Name=di gate Name[ca]=porta di +Name[ca@valencia]=porta di Name[el]=di gate +Name[et]=Kahe paisuga väljatransistor Name[it]=di gate Name[nb]=di-port Name[nl]=di gate diff -Nru calligra-2.3.86/flow/stencils/Electronic/diode_inverse.desktop calligra-2.3.87/flow/stencils/Electronic/diode_inverse.desktop --- calligra-2.3.86/flow/stencils/Electronic/diode_inverse.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Electronic/diode_inverse.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -1,6 +1,8 @@ [Desktop Entry] Name=diode inverse Name[ca]=diode invertit +Name[ca@valencia]=diode invertit +Name[et]=Pöörddiood Name[it]=diodo inverso Name[nb]=invers diode Name[nl]=diode inverse diff -Nru calligra-2.3.86/flow/stencils/Electronic/diode_schottky.desktop calligra-2.3.87/flow/stencils/Electronic/diode_schottky.desktop --- calligra-2.3.86/flow/stencils/Electronic/diode_schottky.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Electronic/diode_schottky.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -1,6 +1,7 @@ [Desktop Entry] Name=diode schottky Name[ca]=diode schottky +Name[ca@valencia]=diode schottky Name[el]=δίοδος schottky Name[et]=Schottky diood Name[it]=diodo schottky diff -Nru calligra-2.3.86/flow/stencils/Electronic/diode_tunnel.desktop calligra-2.3.87/flow/stencils/Electronic/diode_tunnel.desktop --- calligra-2.3.86/flow/stencils/Electronic/diode_tunnel.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Electronic/diode_tunnel.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -1,6 +1,7 @@ [Desktop Entry] Name=diode tunnel Name[ca]=diode tunnel +Name[ca@valencia]=diode tunnel Name[et]=Tunneldiood Name[it]=diodo tunnel Name[nb]=tunneldiode diff -Nru calligra-2.3.86/flow/stencils/Electronic/diode_zenner.desktop calligra-2.3.87/flow/stencils/Electronic/diode_zenner.desktop --- calligra-2.3.86/flow/stencils/Electronic/diode_zenner.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Electronic/diode_zenner.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -2,6 +2,7 @@ Name=diode zener Name[bg]=ценеров диод Name[ca]=diode zener +Name[ca@valencia]=diode zener Name[cs]=Zenerova dioda Name[el]=δίοδος zener Name[es]=diodo zener diff -Nru calligra-2.3.86/flow/stencils/Electronic/engine.desktop calligra-2.3.87/flow/stencils/Electronic/engine.desktop --- calligra-2.3.86/flow/stencils/Electronic/engine.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Electronic/engine.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -2,12 +2,14 @@ Name=engine Name[bg]=двигател Name[ca]=motor +Name[ca@valencia]=motor Name[cs]=motor Name[el]=μηχανή Name[et]=Mootor Name[it]=motore Name[nb]=motor Name[nds]=Motor +Name[nl]=engine Name[pl]=silnik Name[pt]=motor Name[pt_BR]=motor diff -Nru calligra-2.3.86/flow/stencils/Electronic/ground.desktop calligra-2.3.87/flow/stencils/Electronic/ground.desktop --- calligra-2.3.86/flow/stencils/Electronic/ground.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Electronic/ground.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -2,6 +2,7 @@ Name=ground Name[bg]=заземяване Name[ca]=terre +Name[ca@valencia]=terre Name[cs]=zem Name[el]=γείωση Name[et]=Maaühendus diff -Nru calligra-2.3.86/flow/stencils/Electronic/headphone.desktop calligra-2.3.87/flow/stencils/Electronic/headphone.desktop --- calligra-2.3.86/flow/stencils/Electronic/headphone.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Electronic/headphone.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -2,6 +2,7 @@ Name=headphone Name[bg]=слушалки Name[ca]=Cascos +Name[ca@valencia]=Cascos Name[cs]=sluchátka Name[de]=Kopfhörer Name[el]=ακουστικό diff -Nru calligra-2.3.86/flow/stencils/Electronic/inductor.desktop calligra-2.3.87/flow/stencils/Electronic/inductor.desktop --- calligra-2.3.86/flow/stencils/Electronic/inductor.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Electronic/inductor.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -2,6 +2,7 @@ Name=inductor Name[bg]=бобина Name[ca]=inductor +Name[ca@valencia]=inductor Name[de]=Drosselspule Name[el]=πηνίο Name[es]=inductor diff -Nru calligra-2.3.86/flow/stencils/Electronic/led_display.desktop calligra-2.3.87/flow/stencils/Electronic/led_display.desktop --- calligra-2.3.86/flow/stencils/Electronic/led_display.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Electronic/led_display.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -1,9 +1,10 @@ [Desktop Entry] Name=led display Name[ca]=led display +Name[ca@valencia]=led display Name[de]=LED-Anzeige Name[el]=λαμπάκι led -Name[et]=LED-kuva +Name[et]=LED-näidik Name[it]=display a led Name[nb]=led-skjerm Name[nl]=led-display diff -Nru calligra-2.3.86/flow/stencils/Electronic/microphone.desktop calligra-2.3.87/flow/stencils/Electronic/microphone.desktop --- calligra-2.3.86/flow/stencils/Electronic/microphone.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Electronic/microphone.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -2,6 +2,7 @@ Name=microphone Name[bg]=микрофон Name[ca]=micròfon +Name[ca@valencia]=micròfon Name[cs]=mikrofon Name[de]=Mikrofon Name[el]=μικρόφωνο diff -Nru calligra-2.3.86/flow/stencils/Electronic/photo_emiting_part.desktop calligra-2.3.87/flow/stencils/Electronic/photo_emiting_part.desktop --- calligra-2.3.86/flow/stencils/Electronic/photo_emiting_part.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Electronic/photo_emiting_part.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -1,10 +1,12 @@ [Desktop Entry] Name=photo emitting part Name[ca]=Part foto emissora +Name[ca@valencia]=Part foto emissora Name[el]=φωτο εκπέμπον μέρος Name[et]=Valgust kiirgav komponent Name[it]=parte foto-emittente Name[nb]=lysende enhet +Name[nl]=fotogevend deel Name[pl]=moduł emisji fotonów Name[pt]=componente foto-emissor Name[pt_BR]=componente foto-emissor diff -Nru calligra-2.3.86/flow/stencils/Electronic/photo_sensitive_part.desktop calligra-2.3.87/flow/stencils/Electronic/photo_sensitive_part.desktop --- calligra-2.3.86/flow/stencils/Electronic/photo_sensitive_part.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Electronic/photo_sensitive_part.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -1,10 +1,12 @@ [Desktop Entry] Name=photo sensitive part Name[ca]=part fotosensible +Name[ca@valencia]=part fotosensible Name[el]=φωτο ευαίσθητο μέρος Name[et]=Valgustundlik komponent Name[it]=parte foto-sensibile Name[nb]=fotosensitiv enhet +Name[nl]=fotogevoelig deel Name[pl]=moduł wyczuwania fotonów Name[pt]=componente foto-sensível Name[pt_BR]=componente foto-sensível diff -Nru calligra-2.3.86/flow/stencils/Electronic/port_in.desktop calligra-2.3.87/flow/stencils/Electronic/port_in.desktop --- calligra-2.3.86/flow/stencils/Electronic/port_in.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Electronic/port_in.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -1,6 +1,7 @@ [Desktop Entry] Name=port in Name[ca]=port in +Name[ca@valencia]=port in Name[el]=θύρα εισόδου Name[et]=Port sisse Name[it]=port in diff -Nru calligra-2.3.86/flow/stencils/Electronic/port_inout.desktop calligra-2.3.87/flow/stencils/Electronic/port_inout.desktop --- calligra-2.3.86/flow/stencils/Electronic/port_inout.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Electronic/port_inout.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -1,6 +1,7 @@ [Desktop Entry] Name=port inout Name[ca]=port inout +Name[ca@valencia]=port inout Name[el]=θύρα εισόδου-εξόδου Name[et]=Port sisse-välja Name[it]=port inout diff -Nru calligra-2.3.86/flow/stencils/Electronic/port_out.desktop calligra-2.3.87/flow/stencils/Electronic/port_out.desktop --- calligra-2.3.86/flow/stencils/Electronic/port_out.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Electronic/port_out.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -1,6 +1,7 @@ [Desktop Entry] Name=port out Name[ca]=port out +Name[ca@valencia]=port out Name[el]=θύρα εξόδου Name[et]=Port välja Name[it]=port out diff -Nru calligra-2.3.86/flow/stencils/Electronic/potenciometer.desktop calligra-2.3.87/flow/stencils/Electronic/potenciometer.desktop --- calligra-2.3.86/flow/stencils/Electronic/potenciometer.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Electronic/potenciometer.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -1,19 +1,10 @@ [Desktop Entry] -Name=potenciometer -Name[ca]=potenciòmetre -Name[de]=Potentiometer -Name[el]=ποτενσιόμετρο -Name[es]=potenciómetro -Name[et]=Potentsiomeeter +Name=potentiometer Name[it]=potenziometro -Name[nb]=potensiometer -Name[nds]=Poti -Name[nl]=potenciometer -Name[pl]=potencjometr +Name[nl]=potentiometer Name[pt]=potenciómetro Name[pt_BR]=potenciômetro Name[ru]=Потенциометр Name[sv]=potentiometer Name[uk]=Потенціометр -Name[x-test]=xxpotenciometerxx -Name[zh_TW]=potenciometer +Name[x-test]=xxpotentiometerxx diff -Nru calligra-2.3.86/flow/stencils/Electronic/source_current.desktop calligra-2.3.87/flow/stencils/Electronic/source_current.desktop --- calligra-2.3.86/flow/stencils/Electronic/source_current.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Electronic/source_current.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -1,10 +1,12 @@ [Desktop Entry] Name=source current Name[ca]=font actual +Name[ca@valencia]=font actual Name[el]=ένταση πηγής +Name[et]=Vooluallikas Name[it]=sorgente corrente Name[nb]=kildestrøm -Name[nl]=bronstroom +Name[nl]=stroombron Name[pl]=prąd źródłowy Name[pt]=corrente fonte Name[pt_BR]=corrente de fonte diff -Nru calligra-2.3.86/flow/stencils/Electronic/source.desktop calligra-2.3.87/flow/stencils/Electronic/source.desktop --- calligra-2.3.86/flow/stencils/Electronic/source.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Electronic/source.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -1,6 +1,7 @@ [Desktop Entry] Name=source Name[ca]=font +Name[ca@valencia]=font Name[cs]=zdroj Name[el]=πηγή Name[et]=Allikas diff -Nru calligra-2.3.86/flow/stencils/Electronic/source_substitution.desktop calligra-2.3.87/flow/stencils/Electronic/source_substitution.desktop --- calligra-2.3.86/flow/stencils/Electronic/source_substitution.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Electronic/source_substitution.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -1,7 +1,9 @@ [Desktop Entry] Name=source substitution Name[ca]=substitució de font +Name[ca@valencia]=substitució de font Name[el]=αντικατάσταση πηγής +Name[et]=Vooluvaheldi Name[it]=sostituzione fonte Name[nb]=kildeerstatning Name[nl]=bronsubstitutie diff -Nru calligra-2.3.86/flow/stencils/Electronic/source_voltage_alternating.desktop calligra-2.3.87/flow/stencils/Electronic/source_voltage_alternating.desktop --- calligra-2.3.86/flow/stencils/Electronic/source_voltage_alternating.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Electronic/source_voltage_alternating.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -1,9 +1,12 @@ [Desktop Entry] Name=source voltage alternating Name[ca]=font de voltatge altern +Name[ca@valencia]=font de voltatge altern Name[el]=εναλλαγή τάσης πηγής +Name[et]=Vahelduvpinge allikas Name[it]=sorgente di tensione alternata Name[nb]=kildespenning vekselstrøm +Name[nl]=wisselstroomspanningsgebron Name[pl]=przemienne napięcie źródłowe Name[pt]=tensão alternada fonte Name[pt_BR]=tensão alternada de fonte diff -Nru calligra-2.3.86/flow/stencils/Electronic/source_voltage.desktop calligra-2.3.87/flow/stencils/Electronic/source_voltage.desktop --- calligra-2.3.86/flow/stencils/Electronic/source_voltage.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Electronic/source_voltage.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -1,9 +1,12 @@ [Desktop Entry] Name=source voltage Name[ca]=font de voltatge +Name[ca@valencia]=font de voltatge Name[el]=τάση πηγής +Name[et]=Pingeallikas Name[it]=sorgente di tensione Name[nb]=kildespenning +Name[nl]=voedingsspanning Name[pl]=napięcie źródłowe Name[pt]=tensão fonte Name[pt_BR]=tensão de fonte diff -Nru calligra-2.3.86/flow/stencils/Electronic/source_voltage_direct.desktop calligra-2.3.87/flow/stencils/Electronic/source_voltage_direct.desktop --- calligra-2.3.86/flow/stencils/Electronic/source_voltage_direct.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Electronic/source_voltage_direct.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -1,9 +1,12 @@ [Desktop Entry] Name=source voltage direct Name[ca]=font directa de voltatge +Name[ca@valencia]=font directa de voltatge Name[el]=τάση πηγής συνεχής +Name[et]=Alalispinge allikas Name[it]=sorgente di tensione continua Name[nb]=kildespenning likestrøm +Name[nl]=gelijkstroomspanningsbron Name[pl]=stałe napięcie źródłowe Name[pt]=tensão directa fonte Name[pt_BR]=tensão direta de fonte diff -Nru calligra-2.3.86/flow/stencils/Electronic/transistor_bipolar_npn_1.desktop calligra-2.3.87/flow/stencils/Electronic/transistor_bipolar_npn_1.desktop --- calligra-2.3.86/flow/stencils/Electronic/transistor_bipolar_npn_1.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Electronic/transistor_bipolar_npn_1.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -1,6 +1,7 @@ [Desktop Entry] Name=transistor bipolar npn 1 Name[ca]=transistor bipolar npn 1 +Name[ca@valencia]=transistor bipolar npn 1 Name[el]=διπολικό τρανζίστορ npn 1 Name[et]=Bipolaartransistor npn 1 Name[it]=transistore bipolare npn 1 diff -Nru calligra-2.3.86/flow/stencils/Electronic/transistor_bipolar_npn_2.desktop calligra-2.3.87/flow/stencils/Electronic/transistor_bipolar_npn_2.desktop --- calligra-2.3.86/flow/stencils/Electronic/transistor_bipolar_npn_2.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Electronic/transistor_bipolar_npn_2.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -1,6 +1,7 @@ [Desktop Entry] Name=transistor bipolar npn 2 Name[ca]=transistor bipolar npn 2 +Name[ca@valencia]=transistor bipolar npn 2 Name[el]=διπολικό τρανζίστορ npn 2 Name[et]=Bipolaartransistor npn 2 Name[it]=transistore bipolare npn 2 diff -Nru calligra-2.3.86/flow/stencils/Electronic/transistor_bipolar_pnp_1.desktop calligra-2.3.87/flow/stencils/Electronic/transistor_bipolar_pnp_1.desktop --- calligra-2.3.86/flow/stencils/Electronic/transistor_bipolar_pnp_1.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Electronic/transistor_bipolar_pnp_1.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -1,6 +1,7 @@ [Desktop Entry] Name=transistor bipolar pnp 1 Name[ca]=transistor bipolar pnp 1 +Name[ca@valencia]=transistor bipolar pnp 1 Name[el]=διπολικό τρανζίστορ pnp 1 Name[et]=Bipolaartransistor pnp 1 Name[it]=transistore bipolare pnp 1 diff -Nru calligra-2.3.86/flow/stencils/Electronic/transistor_bipolar_pnp_2.desktop calligra-2.3.87/flow/stencils/Electronic/transistor_bipolar_pnp_2.desktop --- calligra-2.3.86/flow/stencils/Electronic/transistor_bipolar_pnp_2.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Electronic/transistor_bipolar_pnp_2.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -1,6 +1,7 @@ [Desktop Entry] Name=transistor bipolar pnp 2 Name[ca]=transistor bipolar pnp 2 +Name[ca@valencia]=transistor bipolar pnp 2 Name[el]=διπολικό τρανζίστορ pnp 2 Name[et]=Bipolaartransistor pnp 2 Name[it]=transistore bipolare pnp 2 diff -Nru calligra-2.3.86/flow/stencils/Electronic/transistor_jfe_n.desktop calligra-2.3.87/flow/stencils/Electronic/transistor_jfe_n.desktop --- calligra-2.3.86/flow/stencils/Electronic/transistor_jfe_n.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Electronic/transistor_jfe_n.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -1,8 +1,9 @@ [Desktop Entry] Name=transistor jfe n Name[ca]=transistor jfe n +Name[ca@valencia]=transistor jfe n Name[el]=transistor jfe n -Name[et]=transistor jfe n +Name[et]=Transistor jfe n Name[it]=transistore jfe n Name[nb]=transistor jfe n Name[nl]=transistor jfe n diff -Nru calligra-2.3.86/flow/stencils/Electronic/transistor_jfe_p.desktop calligra-2.3.87/flow/stencils/Electronic/transistor_jfe_p.desktop --- calligra-2.3.86/flow/stencils/Electronic/transistor_jfe_p.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Electronic/transistor_jfe_p.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -1,8 +1,9 @@ [Desktop Entry] Name=transistor jfe p Name[ca]=transistor jfe p +Name[ca@valencia]=transistor jfe p Name[el]=transistor jfe p -Name[et]=transistor jfe p +Name[et]=Transistor jfe p Name[it]=transistore jfe p Name[nb]=transistor jfe p Name[nl]=transistor jfe p diff -Nru calligra-2.3.86/flow/stencils/Electronic/transistor_misfe_c_n.desktop calligra-2.3.87/flow/stencils/Electronic/transistor_misfe_c_n.desktop --- calligra-2.3.86/flow/stencils/Electronic/transistor_misfe_c_n.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Electronic/transistor_misfe_c_n.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -1,7 +1,9 @@ [Desktop Entry] Name=transistor misfe c n Name[ca]=transistor misfe c n +Name[ca@valencia]=transistor misfe c n Name[el]=transistor misfe c n +Name[et]=Transistor misfe c n Name[it]=transistore misfe c n Name[nb]=transistor misfe c n Name[nl]=transistor misfe c n diff -Nru calligra-2.3.86/flow/stencils/Electronic/transistor_misfe_c_p.desktop calligra-2.3.87/flow/stencils/Electronic/transistor_misfe_c_p.desktop --- calligra-2.3.86/flow/stencils/Electronic/transistor_misfe_c_p.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Electronic/transistor_misfe_c_p.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -1,7 +1,9 @@ [Desktop Entry] Name=transistor misfe c p Name[ca]=transistor misfe c p +Name[ca@valencia]=transistor misfe c p Name[el]=transistor misfe c p +Name[et]=Transistor misfe c p Name[it]=transistore misfe c p Name[nb]=transistor misfe c p Name[nl]=transistor misfe c p diff -Nru calligra-2.3.86/flow/stencils/Electronic/transistor_misfe_i_n.desktop calligra-2.3.87/flow/stencils/Electronic/transistor_misfe_i_n.desktop --- calligra-2.3.86/flow/stencils/Electronic/transistor_misfe_i_n.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Electronic/transistor_misfe_i_n.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -1,7 +1,9 @@ [Desktop Entry] Name=transistor misfe i n Name[ca]=transistor misfe i n +Name[ca@valencia]=transistor misfe i n Name[el]=transistor misfe i n +Name[et]=Transistor misfe i n Name[it]=transistore misfe i n Name[nb]=transistor misfe i n Name[nl]=transistor misfe i n diff -Nru calligra-2.3.86/flow/stencils/Electronic/transistor_misfe_i_p.desktop calligra-2.3.87/flow/stencils/Electronic/transistor_misfe_i_p.desktop --- calligra-2.3.86/flow/stencils/Electronic/transistor_misfe_i_p.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Electronic/transistor_misfe_i_p.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -1,7 +1,9 @@ [Desktop Entry] Name=transistor misfe i p Name[ca]=transistor misfe i p +Name[ca@valencia]=transistor misfe i p Name[el]=transistor misfe i p +Name[et]=Transistor misfe i p Name[it]=transistore misfe i p Name[nb]=transistor misfe i p Name[nl]=transistor misfe i p diff -Nru calligra-2.3.86/flow/stencils/Electronic/transistor_single_pn.desktop calligra-2.3.87/flow/stencils/Electronic/transistor_single_pn.desktop --- calligra-2.3.86/flow/stencils/Electronic/transistor_single_pn.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Electronic/transistor_single_pn.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -1,7 +1,9 @@ [Desktop Entry] Name=transistor single pn Name[ca]=transistor single pn +Name[ca@valencia]=transistor single pn Name[el]=transistor single pn +Name[et]=Transistor single pn Name[it]=transistore pn singolo Name[nb]=transistor enkel pn Name[nl]=transistor single pn diff -Nru calligra-2.3.86/flow/stencils/Electronic/triac.desktop calligra-2.3.87/flow/stencils/Electronic/triac.desktop --- calligra-2.3.86/flow/stencils/Electronic/triac.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Electronic/triac.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -1,6 +1,7 @@ [Desktop Entry] Name=triac Name[ca]=triac +Name[ca@valencia]=triac Name[cs]=triak Name[el]=triac Name[et]=Sümistor diff -Nru calligra-2.3.86/flow/stencils/Electronic/tyristor_diode.desktop calligra-2.3.87/flow/stencils/Electronic/tyristor_diode.desktop --- calligra-2.3.86/flow/stencils/Electronic/tyristor_diode.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Electronic/tyristor_diode.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -1,6 +1,7 @@ [Desktop Entry] Name=tyristor diode Name[ca]=diode tiristor +Name[ca@valencia]=diode tiristor Name[de]=Tyristor-Diode Name[el]=δίοδος θυρίστορ Name[et]=Türistordiood diff -Nru calligra-2.3.86/flow/stencils/Electronic/tyristor_triode.desktop calligra-2.3.87/flow/stencils/Electronic/tyristor_triode.desktop --- calligra-2.3.86/flow/stencils/Electronic/tyristor_triode.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Electronic/tyristor_triode.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -1,6 +1,7 @@ [Desktop Entry] Name=tyristor triode Name[ca]=triode tiristor +Name[ca@valencia]=triode tiristor Name[de]=Tyristor-Triode Name[el]=τρίοδος θυρίστορ Name[et]=Türistortriood diff -Nru calligra-2.3.86/flow/stencils/Electronic/vacuum_diode.desktop calligra-2.3.87/flow/stencils/Electronic/vacuum_diode.desktop --- calligra-2.3.86/flow/stencils/Electronic/vacuum_diode.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Electronic/vacuum_diode.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -1,6 +1,7 @@ [Desktop Entry] Name=vacuum diode Name[ca]=diode de buit +Name[ca@valencia]=diode de buit Name[de]=Vakuum-Diode Name[el]=δίοδος κενού Name[et]=Vaakumdiood diff -Nru calligra-2.3.86/flow/stencils/Electronic/vacuum_pentode.desktop calligra-2.3.87/flow/stencils/Electronic/vacuum_pentode.desktop --- calligra-2.3.86/flow/stencils/Electronic/vacuum_pentode.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Electronic/vacuum_pentode.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -1,6 +1,7 @@ [Desktop Entry] Name=vacuum pentode Name[ca]=pentode de buit +Name[ca@valencia]=pentode de buit Name[de]=Vakuum-Pentode Name[el]=πέντοδος κενού Name[et]=Vaakumpentood diff -Nru calligra-2.3.86/flow/stencils/Electronic/vacuum_triode.desktop calligra-2.3.87/flow/stencils/Electronic/vacuum_triode.desktop --- calligra-2.3.86/flow/stencils/Electronic/vacuum_triode.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Electronic/vacuum_triode.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -1,6 +1,7 @@ [Desktop Entry] Name=vacuum triode Name[ca]=triode de buit +Name[ca@valencia]=triode de buit Name[de]=Vakuum-Triiode Name[el]=τρίοδος κενού Name[et]=Vaakumtriood diff -Nru calligra-2.3.86/flow/stencils/Electronic/variable_linear_part.desktop calligra-2.3.87/flow/stencils/Electronic/variable_linear_part.desktop --- calligra-2.3.86/flow/stencils/Electronic/variable_linear_part.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Electronic/variable_linear_part.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -1,9 +1,12 @@ [Desktop Entry] Name=variable linear part Name[ca]=part lineal variable +Name[ca@valencia]=part lineal variable Name[el]=μεταβλητό γραμμικό μέρος +Name[et]=Muutuja lineaarne komponent Name[it]=componente lineare variabile Name[nb]=variabel lineær enhet +Name[nl]=variabel lineair deel Name[pl]=zmienny moduł liniowy Name[pt]=parte linear variável Name[pt_BR]=componente linear variável diff -Nru calligra-2.3.86/flow/stencils/Electronic/variable_nonlinear_part.desktop calligra-2.3.87/flow/stencils/Electronic/variable_nonlinear_part.desktop --- calligra-2.3.86/flow/stencils/Electronic/variable_nonlinear_part.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Electronic/variable_nonlinear_part.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -1,9 +1,12 @@ [Desktop Entry] Name=variable nonlinear part Name[ca]=part variable no lineal +Name[ca@valencia]=part variable no lineal Name[el]=μεταβλητό μη γραμμικό μέρος +Name[et]=Muutuja mittelineaarne komponent Name[it]=componente non lineare variabile Name[nb]=variabel ikke-lineær enhet +Name[nl]=variabel niet-lineair deel Name[pl]=zmienny moduł nieliniowy Name[pt]=parte não-linear variável Name[pt_BR]=componente não-linear variável diff -Nru calligra-2.3.86/flow/stencils/Electronic/varicap.desktop calligra-2.3.87/flow/stencils/Electronic/varicap.desktop --- calligra-2.3.86/flow/stencils/Electronic/varicap.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Electronic/varicap.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -1,6 +1,7 @@ [Desktop Entry] Name=varicap Name[ca]=varicap +Name[ca@valencia]=varicap Name[el]=varicap Name[et]=Mahtuvusdiood Name[it]=varicap diff -Nru calligra-2.3.86/flow/stencils/Electronic/voltmeter.desktop calligra-2.3.87/flow/stencils/Electronic/voltmeter.desktop --- calligra-2.3.86/flow/stencils/Electronic/voltmeter.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Electronic/voltmeter.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -2,6 +2,7 @@ Name=voltmeter Name[bg]=волтметър Name[ca]=voltímetre +Name[ca@valencia]=voltímetre Name[cs]=voltmetr Name[de]=Voltmeter Name[el]=βολτόμετρο diff -Nru calligra-2.3.86/flow/stencils/Flags/afghanistan.desktop calligra-2.3.87/flow/stencils/Flags/afghanistan.desktop --- calligra-2.3.86/flow/stencils/Flags/afghanistan.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Flags/afghanistan.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -2,6 +2,7 @@ Name=Afghanistan Name[bg]=Афганистан Name[ca]=Afganistan +Name[ca@valencia]=Afganistan Name[cs]=Afghanistán Name[da]=Afghanistan Name[de]=Afghanistan diff -Nru calligra-2.3.86/flow/stencils/Flags/albania.desktop calligra-2.3.87/flow/stencils/Flags/albania.desktop --- calligra-2.3.86/flow/stencils/Flags/albania.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Flags/albania.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -2,6 +2,7 @@ Name=Albania Name[bg]=Албания Name[ca]=Albània +Name[ca@valencia]=Albània Name[cs]=Albánie Name[da]=Albanien Name[de]=Albanien diff -Nru calligra-2.3.86/flow/stencils/Flags/algeria.desktop calligra-2.3.87/flow/stencils/Flags/algeria.desktop --- calligra-2.3.86/flow/stencils/Flags/algeria.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Flags/algeria.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -2,6 +2,7 @@ Name=Algeria Name[bg]=Алжир Name[ca]=Algèria +Name[ca@valencia]=Algèria Name[cs]=Alžírsko Name[da]=Algeriet Name[de]=Algerien diff -Nru calligra-2.3.86/flow/stencils/Flags/andorra.desktop calligra-2.3.87/flow/stencils/Flags/andorra.desktop --- calligra-2.3.86/flow/stencils/Flags/andorra.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Flags/andorra.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -2,6 +2,7 @@ Name=Andorra Name[bg]=Андора Name[ca]=Andorra +Name[ca@valencia]=Andorra Name[cs]=Andorra Name[da]=Andorra Name[de]=Andorra diff -Nru calligra-2.3.86/flow/stencils/Flags/angola.desktop calligra-2.3.87/flow/stencils/Flags/angola.desktop --- calligra-2.3.86/flow/stencils/Flags/angola.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Flags/angola.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -2,6 +2,7 @@ Name=Angola Name[bg]=Ангола Name[ca]=Angola +Name[ca@valencia]=Angola Name[cs]=Angola Name[da]=Angola Name[de]=Angola diff -Nru calligra-2.3.86/flow/stencils/Flags/antarctica.desktop calligra-2.3.87/flow/stencils/Flags/antarctica.desktop --- calligra-2.3.86/flow/stencils/Flags/antarctica.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Flags/antarctica.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -2,6 +2,7 @@ Name=Antarctica Name[bg]=Антарктика Name[ca]=Antàrtica +Name[ca@valencia]=Antàrtica Name[cs]=Antarktida Name[da]=Antarktis Name[de]=Antarktis diff -Nru calligra-2.3.86/flow/stencils/Flags/antigua_and_barbuda.desktop calligra-2.3.87/flow/stencils/Flags/antigua_and_barbuda.desktop --- calligra-2.3.86/flow/stencils/Flags/antigua_and_barbuda.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Flags/antigua_and_barbuda.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -2,6 +2,7 @@ Name=Antigua And Barbuda Name[bg]=Антигуа и Барбадос Name[ca]=Antigua i Barbuda +Name[ca@valencia]=Antigua i Barbuda Name[cs]=Antigua a Barbuda Name[da]=Antigua og Barbuda Name[de]=Antigua und Barbuda diff -Nru calligra-2.3.86/flow/stencils/Flags/argentina.desktop calligra-2.3.87/flow/stencils/Flags/argentina.desktop --- calligra-2.3.86/flow/stencils/Flags/argentina.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Flags/argentina.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -2,6 +2,7 @@ Name=Argentina Name[bg]=Аржентина Name[ca]=Argentina +Name[ca@valencia]=Argentina Name[cs]=Argentina Name[da]=Argentina Name[de]=Argentinien diff -Nru calligra-2.3.86/flow/stencils/Flags/armenia.desktop calligra-2.3.87/flow/stencils/Flags/armenia.desktop --- calligra-2.3.86/flow/stencils/Flags/armenia.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Flags/armenia.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -2,6 +2,7 @@ Name=Armenia Name[bg]=Армения Name[ca]=Armènia +Name[ca@valencia]=Armènia Name[cs]=Arménie Name[da]=Armenien Name[de]=Armenien @@ -10,6 +11,7 @@ Name[it]=Armenia Name[nb]=Armenia Name[nds]=Armenien +Name[nl]=Armenië Name[pl]=Armenia Name[pt]=Arménia Name[pt_BR]=Armênia diff -Nru calligra-2.3.86/flow/stencils/Flags/australia.desktop calligra-2.3.87/flow/stencils/Flags/australia.desktop --- calligra-2.3.86/flow/stencils/Flags/australia.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Flags/australia.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -2,6 +2,7 @@ Name=Australia Name[bg]=Австралия Name[ca]=Austràlia +Name[ca@valencia]=Austràlia Name[cs]=Austrálie Name[da]=Australien Name[de]=Australien diff -Nru calligra-2.3.86/flow/stencils/Flags/austria.desktop calligra-2.3.87/flow/stencils/Flags/austria.desktop --- calligra-2.3.86/flow/stencils/Flags/austria.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Flags/austria.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -2,6 +2,7 @@ Name=Austria Name[bg]=Австрия Name[ca]=Àustria +Name[ca@valencia]=Àustria Name[cs]=Rakousko Name[da]=Østrig Name[de]=Österreich diff -Nru calligra-2.3.86/flow/stencils/Flags/azerbaijan.desktop calligra-2.3.87/flow/stencils/Flags/azerbaijan.desktop --- calligra-2.3.86/flow/stencils/Flags/azerbaijan.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Flags/azerbaijan.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -2,6 +2,7 @@ Name=Azerbaijan Name[bg]=Азербайджан Name[ca]=Azerbaitjan +Name[ca@valencia]=Azerbaitjan Name[cs]=Ázerbájdžán Name[da]=Azerbajdjan Name[de]=Aserbaidschan diff -Nru calligra-2.3.86/flow/stencils/Flags/bahamas.desktop calligra-2.3.87/flow/stencils/Flags/bahamas.desktop --- calligra-2.3.86/flow/stencils/Flags/bahamas.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Flags/bahamas.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -2,6 +2,7 @@ Name=Bahamas Name[bg]=Бахамски острови Name[ca]=Bahames +Name[ca@valencia]=Bahames Name[cs]=Bahamy Name[da]=Bahamas Name[de]=Bahamas @@ -10,6 +11,7 @@ Name[it]=Bahamas Name[nb]=Bahamas Name[nds]=Bahamas +Name[nl]=Bahamas Name[pl]=Bahamy Name[pt]=Bahamas Name[pt_BR]=Bahamas diff -Nru calligra-2.3.86/flow/stencils/Flags/bahrain.desktop calligra-2.3.87/flow/stencils/Flags/bahrain.desktop --- calligra-2.3.86/flow/stencils/Flags/bahrain.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Flags/bahrain.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -2,6 +2,7 @@ Name=Bahrain Name[bg]=Бахрейн Name[ca]=Bahrain +Name[ca@valencia]=Bahrain Name[cs]=Bahrajn Name[da]=Bahrain Name[de]=Bahrain @@ -9,6 +10,7 @@ Name[it]=Bahrain Name[nb]=Bahrain Name[nds]=Bahrain +Name[nl]=Baghrein Name[pl]=Bahrajn Name[pt]=Bahrain Name[pt_BR]=Barein diff -Nru calligra-2.3.86/flow/stencils/Flags/bangladesh.desktop calligra-2.3.87/flow/stencils/Flags/bangladesh.desktop --- calligra-2.3.86/flow/stencils/Flags/bangladesh.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Flags/bangladesh.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -2,6 +2,7 @@ Name=Bangladesh Name[bg]=Бангладеш Name[ca]=Bangladesh +Name[ca@valencia]=Bangladesh Name[cs]=Bangladéš Name[da]=Bangladesh Name[de]=Bangladesch diff -Nru calligra-2.3.86/flow/stencils/Flags/barbados.desktop calligra-2.3.87/flow/stencils/Flags/barbados.desktop --- calligra-2.3.86/flow/stencils/Flags/barbados.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Flags/barbados.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -2,6 +2,7 @@ Name=Barbados Name[bg]=Барбадос Name[ca]=Barbados +Name[ca@valencia]=Barbados Name[cs]=Barbados Name[da]=Barbados Name[de]=Barbados diff -Nru calligra-2.3.86/flow/stencils/Flags/belarus.desktop calligra-2.3.87/flow/stencils/Flags/belarus.desktop --- calligra-2.3.86/flow/stencils/Flags/belarus.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Flags/belarus.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -2,6 +2,7 @@ Name=Belarus Name[bg]=Беларус Name[ca]=Bielorússia +Name[ca@valencia]=Bielorússia Name[cs]=Bělorusko Name[da]=Hviderusland Name[de]=Weißrussland @@ -10,6 +11,7 @@ Name[it]=Bielorussia Name[nb]=Hviterussland Name[nds]=Wittrussland +Name[nl]=Wit-Rusland Name[pl]=Białoruś Name[pt]=Bielorrússia Name[pt_BR]=Bielorrússia diff -Nru calligra-2.3.86/flow/stencils/Flags/belgium.desktop calligra-2.3.87/flow/stencils/Flags/belgium.desktop --- calligra-2.3.86/flow/stencils/Flags/belgium.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Flags/belgium.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -2,6 +2,7 @@ Name=Belgium Name[bg]=Белгия Name[ca]=Bèlgica +Name[ca@valencia]=Bèlgica Name[cs]=Belgie Name[da]=Belgien Name[de]=Belgien diff -Nru calligra-2.3.86/flow/stencils/Flags/belize.desktop calligra-2.3.87/flow/stencils/Flags/belize.desktop --- calligra-2.3.86/flow/stencils/Flags/belize.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Flags/belize.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -2,6 +2,7 @@ Name=Belize Name[bg]=Белиз Name[ca]=Belize +Name[ca@valencia]=Belize Name[cs]=Belize Name[da]=Belize Name[de]=Belize diff -Nru calligra-2.3.86/flow/stencils/Flags/benin.desktop calligra-2.3.87/flow/stencils/Flags/benin.desktop --- calligra-2.3.86/flow/stencils/Flags/benin.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Flags/benin.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -2,6 +2,7 @@ Name=Benin Name[bg]=Бенин Name[ca]=Benín +Name[ca@valencia]=Benín Name[cs]=Benin Name[da]=Benin Name[de]=Benin diff -Nru calligra-2.3.86/flow/stencils/Flags/bhutan.desktop calligra-2.3.87/flow/stencils/Flags/bhutan.desktop --- calligra-2.3.86/flow/stencils/Flags/bhutan.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Flags/bhutan.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -2,6 +2,7 @@ Name=Bhutan Name[bg]=Бутан Name[ca]=Bhutan +Name[ca@valencia]=Bhutan Name[cs]=Bhútán Name[da]=Bhutan Name[de]=Bhutan @@ -10,6 +11,7 @@ Name[it]=Bhutan Name[nb]=Bhutan Name[nds]=Bhutan +Name[nl]=Bhutan Name[pl]=Bhutan Name[pt]=Butão Name[pt_BR]=Butão diff -Nru calligra-2.3.86/flow/stencils/Flags/bolivia.desktop calligra-2.3.87/flow/stencils/Flags/bolivia.desktop --- calligra-2.3.86/flow/stencils/Flags/bolivia.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Flags/bolivia.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -2,6 +2,7 @@ Name=Bolivia Name[bg]=Боливия Name[ca]=BolÍvia +Name[ca@valencia]=BolÍvia Name[cs]=Bolívie Name[da]=Bolivia Name[de]=Bolivien diff -Nru calligra-2.3.86/flow/stencils/Flags/bosnia_and_herzegovina.desktop calligra-2.3.87/flow/stencils/Flags/bosnia_and_herzegovina.desktop --- calligra-2.3.86/flow/stencils/Flags/bosnia_and_herzegovina.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Flags/bosnia_and_herzegovina.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -2,6 +2,7 @@ Name=Bosnia And Herzegovina Name[bg]=Босна и Херцеговина Name[ca]=Bòsnia i Hercegovina +Name[ca@valencia]=Bòsnia i Hercegovina Name[cs]=Bosna a Hercegovina Name[da]=Bosnien-Hercegovina Name[de]=Bosnien und Herzegowina diff -Nru calligra-2.3.86/flow/stencils/Flags/botswana.desktop calligra-2.3.87/flow/stencils/Flags/botswana.desktop --- calligra-2.3.86/flow/stencils/Flags/botswana.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Flags/botswana.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -2,6 +2,7 @@ Name=Botswana Name[bg]=Ботсвана Name[ca]=Botswana +Name[ca@valencia]=Botswana Name[cs]=Botswana Name[da]=Botswana Name[de]=Botsuana diff -Nru calligra-2.3.86/flow/stencils/Flags/brazil.desktop calligra-2.3.87/flow/stencils/Flags/brazil.desktop --- calligra-2.3.86/flow/stencils/Flags/brazil.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Flags/brazil.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -2,6 +2,7 @@ Name=Brazil Name[bg]=Бразилия Name[ca]=Brasil +Name[ca@valencia]=Brasil Name[cs]=Brazílie Name[da]=Brasilien Name[de]=Brasilien diff -Nru calligra-2.3.86/flow/stencils/Flags/brunei_darussalam.desktop calligra-2.3.87/flow/stencils/Flags/brunei_darussalam.desktop --- calligra-2.3.86/flow/stencils/Flags/brunei_darussalam.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Flags/brunei_darussalam.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -2,6 +2,7 @@ Name=Brunei Darussalam Name[bg]=Бруней Даруссалам Name[ca]=Brunei +Name[ca@valencia]=Brunei Name[cs]=Sultanát Brunej Name[da]=Brunei Name[de]=Brunei Darussalam diff -Nru calligra-2.3.86/flow/stencils/Flags/bulgaria.desktop calligra-2.3.87/flow/stencils/Flags/bulgaria.desktop --- calligra-2.3.86/flow/stencils/Flags/bulgaria.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Flags/bulgaria.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -2,6 +2,7 @@ Name=Bulgaria Name[bg]=България Name[ca]=Bulgària +Name[ca@valencia]=Bulgària Name[cs]=Bulharsko Name[da]=Bulgarien Name[de]=Bulgarien diff -Nru calligra-2.3.86/flow/stencils/Flags/burkina_faso.desktop calligra-2.3.87/flow/stencils/Flags/burkina_faso.desktop --- calligra-2.3.86/flow/stencils/Flags/burkina_faso.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Flags/burkina_faso.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -2,6 +2,7 @@ Name=Burkina Faso Name[bg]=Буркина Фасо Name[ca]=Burkina Faso +Name[ca@valencia]=Burkina Faso Name[cs]=Burkina Faso Name[da]=Burkina Faso Name[de]=Burkina Faso diff -Nru calligra-2.3.86/flow/stencils/Flags/burundi.desktop calligra-2.3.87/flow/stencils/Flags/burundi.desktop --- calligra-2.3.86/flow/stencils/Flags/burundi.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Flags/burundi.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -2,6 +2,7 @@ Name=Burundi Name[bg]=Бурунди Name[ca]=Burundi +Name[ca@valencia]=Burundi Name[cs]=Burundi Name[da]=Burundi Name[de]=Burundi @@ -9,6 +10,7 @@ Name[it]=Burundi Name[nb]=Burundi Name[nds]=Burundi +Name[nl]=Burundi Name[pl]=Burundi Name[pt]=Burundi Name[pt_BR]=Burundi diff -Nru calligra-2.3.86/flow/stencils/Flags/cambodia.desktop calligra-2.3.87/flow/stencils/Flags/cambodia.desktop --- calligra-2.3.86/flow/stencils/Flags/cambodia.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Flags/cambodia.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -2,6 +2,7 @@ Name=Cambodia Name[bg]=Камбоджа Name[ca]=Cambodja +Name[ca@valencia]=Cambodja Name[cs]=Kambodža Name[da]=Cambodia Name[de]=Kambodscha diff -Nru calligra-2.3.86/flow/stencils/Flags/cameroon.desktop calligra-2.3.87/flow/stencils/Flags/cameroon.desktop --- calligra-2.3.86/flow/stencils/Flags/cameroon.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Flags/cameroon.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -2,6 +2,7 @@ Name=Cameroon Name[bg]=Камерун Name[ca]=Camerun +Name[ca@valencia]=Camerun Name[cs]=Kamerun Name[da]=Cameroun Name[de]=Kamerun @@ -10,6 +11,7 @@ Name[it]=Camerun Name[nb]=Kamerun Name[nds]=Kamerun +Name[nl]=Kameroen Name[pl]=Kamerun Name[pt]=Camarões Name[pt_BR]=Camarões diff -Nru calligra-2.3.86/flow/stencils/Flags/canada.desktop calligra-2.3.87/flow/stencils/Flags/canada.desktop --- calligra-2.3.86/flow/stencils/Flags/canada.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Flags/canada.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -2,6 +2,7 @@ Name=Canada Name[bg]=Канада Name[ca]=Canadà +Name[ca@valencia]=Canadà Name[cs]=Kanada Name[da]=Canada Name[de]=Kanada diff -Nru calligra-2.3.86/flow/stencils/Flags/cape_verde.desktop calligra-2.3.87/flow/stencils/Flags/cape_verde.desktop --- calligra-2.3.86/flow/stencils/Flags/cape_verde.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Flags/cape_verde.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -2,6 +2,7 @@ Name=Cape Verde Name[bg]=Кабо Верде Name[ca]=Cap Verd +Name[ca@valencia]=Cap Verd Name[cs]=Kapverdy Name[da]=Kapverdiske øer Name[de]=Kap Verde @@ -10,6 +11,7 @@ Name[it]=Capo Verde Name[nb]=Kapp Verde Name[nds]=Kap Verde +Name[nl]=Kaapverdië Name[pl]=Zielony Przylądek Name[pt]=Cabo Verde Name[pt_BR]=Cabo Verde diff -Nru calligra-2.3.86/flow/stencils/Flags/central_african_republic.desktop calligra-2.3.87/flow/stencils/Flags/central_african_republic.desktop --- calligra-2.3.86/flow/stencils/Flags/central_african_republic.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Flags/central_african_republic.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -2,6 +2,7 @@ Name=Central African Republic Name[bg]=Централноафриканска република Name[ca]=Reública Central Africana +Name[ca@valencia]=Reública Central Africana Name[cs]=Středoafrická republika Name[da]=Central-afrikanske Republik Name[de]=Zentralafrikanische Republik @@ -10,6 +11,7 @@ Name[it]=Repubblica Centrafricana Name[nb]=Den sentralafrikanske republikk Name[nds]=Zentraalafrikaansche Republiek +Name[nl]=Centraal-Afrikaanse Republiek Name[pl]=Republika Środkowej Afryki Name[pt]=República Central Africana Name[pt_BR]=República Centro-Africana diff -Nru calligra-2.3.86/flow/stencils/Flags/chad.desktop calligra-2.3.87/flow/stencils/Flags/chad.desktop --- calligra-2.3.86/flow/stencils/Flags/chad.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Flags/chad.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -2,6 +2,7 @@ Name=Chad Name[bg]=Чад Name[ca]=Txad +Name[ca@valencia]=Txad Name[cs]=Čad Name[da]=Tchad Name[de]=Tschad diff -Nru calligra-2.3.86/flow/stencils/Flags/chile.desktop calligra-2.3.87/flow/stencils/Flags/chile.desktop --- calligra-2.3.86/flow/stencils/Flags/chile.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Flags/chile.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -2,6 +2,7 @@ Name=Chile Name[bg]=Чили Name[ca]=Xile +Name[ca@valencia]=Xile Name[cs]=Chile Name[da]=Chile Name[de]=Chile diff -Nru calligra-2.3.86/flow/stencils/Flags/china_hong_kong.desktop calligra-2.3.87/flow/stencils/Flags/china_hong_kong.desktop --- calligra-2.3.86/flow/stencils/Flags/china_hong_kong.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Flags/china_hong_kong.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -1,11 +1,13 @@ [Desktop Entry] Name=China Hong Kong Name[ca]=Xina Hong Kong +Name[ca@valencia]=Xina Hong Kong Name[cs]=Čína - Hong Kong Name[da]=Hongkong Name[et]=Hiina Hongkong Name[it]=Cina Hong Kong Name[nb]=Kina Hong Kong +Name[nl]=China Hong Kong Name[pl]=Chiński Hong Kong Name[pt]=Hong Kong (China) Name[pt_BR]=Hong Kong (China) diff -Nru calligra-2.3.86/flow/stencils/Flags/china_macao.desktop calligra-2.3.87/flow/stencils/Flags/china_macao.desktop --- calligra-2.3.86/flow/stencils/Flags/china_macao.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Flags/china_macao.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -1,11 +1,13 @@ [Desktop Entry] Name=China Macao Name[ca]=Xina Macau +Name[ca@valencia]=Xina Macau Name[cs]=Čína - Macao Name[da]=Kina Name[et]=Hiina Macao Name[it]=Cina Macao Name[nb]=Kina Macao +Name[nl]=China Macao Name[pl]=Chiński Macao Name[pt]=Macau (China) Name[pt_BR]=Macau (China) diff -Nru calligra-2.3.86/flow/stencils/Flags/china_prc.desktop calligra-2.3.87/flow/stencils/Flags/china_prc.desktop --- calligra-2.3.86/flow/stencils/Flags/china_prc.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Flags/china_prc.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -1,11 +1,13 @@ [Desktop Entry] Name=China (PRC) Name[ca]=Xina (RPC) +Name[ca@valencia]=Xina (RPC) Name[cs]=Čína (ČLR) Name[da]=Kina (PRC) Name[et]=Hiina (HRV) Name[it]=Cina (PRC) Name[nb]=Kina (PRC) +Name[nl]=China (PRC) Name[pl]=Chiny (ChRL) Name[pt]=China (RPC) Name[pt_BR]=China (RPC) diff -Nru calligra-2.3.86/flow/stencils/Flags/china_roc.desktop calligra-2.3.87/flow/stencils/Flags/china_roc.desktop --- calligra-2.3.86/flow/stencils/Flags/china_roc.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Flags/china_roc.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -1,10 +1,12 @@ [Desktop Entry] Name=China (ROC) Name[ca]=Xina (ROC) +Name[ca@valencia]=Xina (ROC) Name[da]=Kina (ROC) Name[et]=Hiina (HV) Name[it]=Cina (ROC) Name[nb]=Kina (ROC) +Name[nl]=China (ROC) Name[pl]=Chiny (RCh) Name[pt]=China (ROC) Name[pt_BR]=China (ROC) diff -Nru calligra-2.3.86/flow/stencils/Flags/collection.desktop calligra-2.3.87/flow/stencils/Flags/collection.desktop --- calligra-2.3.86/flow/stencils/Flags/collection.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Flags/collection.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -2,6 +2,7 @@ Name=Flags Name[bg]=Знамена Name[ca]=Banderes +Name[ca@valencia]=Banderes Name[cs]=Vlajky Name[da]=Flag Name[de]=Flaggen diff -Nru calligra-2.3.86/flow/stencils/Flags/colombia.desktop calligra-2.3.87/flow/stencils/Flags/colombia.desktop --- calligra-2.3.86/flow/stencils/Flags/colombia.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Flags/colombia.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -2,6 +2,7 @@ Name=Colombia Name[bg]=Колумбия Name[ca]=Colòmbia +Name[ca@valencia]=Colòmbia Name[cs]=Kolumbie Name[da]=Colombia Name[de]=Kolumbien @@ -10,6 +11,7 @@ Name[it]=Colombia Name[nb]=Colombia Name[nds]=Kolumbien +Name[nl]=Columbia Name[pl]=Kolumbia Name[pt]=Colômbia Name[pt_BR]=Colômbia diff -Nru calligra-2.3.86/flow/stencils/Flags/comoros.desktop calligra-2.3.87/flow/stencils/Flags/comoros.desktop --- calligra-2.3.86/flow/stencils/Flags/comoros.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Flags/comoros.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -2,6 +2,7 @@ Name=Comoros Name[bg]=Коморски острови Name[ca]=Comores +Name[ca@valencia]=Comores Name[cs]=Komory Name[da]=Comorerne Name[de]=Komoren @@ -10,6 +11,7 @@ Name[it]=Comore Name[nb]=Komorene Name[nds]=Komoren +Name[nl]=Comoren Name[pl]=Komory Name[pt]=Comoros Name[pt_BR]=Comores diff -Nru calligra-2.3.86/flow/stencils/Flags/congo_brazzaville.desktop calligra-2.3.87/flow/stencils/Flags/congo_brazzaville.desktop --- calligra-2.3.86/flow/stencils/Flags/congo_brazzaville.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Flags/congo_brazzaville.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -1,12 +1,14 @@ [Desktop Entry] Name=Congo Brazzaville Name[ca]=Congo Brazzaville +Name[ca@valencia]=Congo Brazzaville Name[cs]=Kongo - Brazzaville Name[da]=Brazzaville Name[de]=Kongo Brazzaville Name[et]=Kongo (Brazzaville) Name[it]=Congo Brazzaville Name[nb]=Kongo Brazzaville +Name[nl]=Congo Brazzaville Name[pl]=Republika Konga Name[pt]=Brazzaville Name[pt_BR]=Congo Brazzaville diff -Nru calligra-2.3.86/flow/stencils/Flags/congo_kinshasa.desktop calligra-2.3.87/flow/stencils/Flags/congo_kinshasa.desktop --- calligra-2.3.86/flow/stencils/Flags/congo_kinshasa.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Flags/congo_kinshasa.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -1,12 +1,14 @@ [Desktop Entry] Name=Congo Kinshasa Name[ca]=Congo Kinshasa +Name[ca@valencia]=Congo Kinshasa Name[cs]=Kongo - Kinshasa Name[da]=Kinshasa Name[de]=Kongo Kinshasa Name[et]=Kongo (Kinshasa) Name[it]=Congo Kinshasa Name[nb]=Kongo Kinshasa +Name[nl]=Congo Kinshasa Name[pl]=Demokratyczna Republika Konga Name[pt]=Kinshasa Name[pt_BR]=Congo Kinshasa diff -Nru calligra-2.3.86/flow/stencils/Flags/costa_rica.desktop calligra-2.3.87/flow/stencils/Flags/costa_rica.desktop --- calligra-2.3.86/flow/stencils/Flags/costa_rica.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Flags/costa_rica.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -2,6 +2,7 @@ Name=Costa Rica Name[bg]=Коста Рика Name[ca]=Costa Rica +Name[ca@valencia]=Costa Rica Name[cs]=Kostarika Name[da]=Costa Rica Name[de]=Costa Rica diff -Nru calligra-2.3.86/flow/stencils/Flags/cote_divoire.desktop calligra-2.3.87/flow/stencils/Flags/cote_divoire.desktop --- calligra-2.3.86/flow/stencils/Flags/cote_divoire.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Flags/cote_divoire.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -2,6 +2,7 @@ Name=Cote d'Ivoire Name[bg]=Кот д'Ивоар Name[ca]=Costa d'Ivori +Name[ca@valencia]=Costa d'Ivori Name[cs]=Pobřeží slonoviny Name[da]=Elfenbenskysten Name[de]=Côte d'Ivoire @@ -9,6 +10,7 @@ Name[it]=Costa d'Avorio Name[nb]=Elfenbenskysten Name[nds]=Elfenbeenküst +Name[nl]=Ivoorkust Name[pl]=Wybrzeże Kości Słoniowej Name[pt]=Costa do Marfim Name[pt_BR]=Costa do Marfim diff -Nru calligra-2.3.86/flow/stencils/Flags/croatia.desktop calligra-2.3.87/flow/stencils/Flags/croatia.desktop --- calligra-2.3.86/flow/stencils/Flags/croatia.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Flags/croatia.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -2,6 +2,7 @@ Name=Croatia Name[bg]=Хърватска Name[ca]=Croàcia +Name[ca@valencia]=Croàcia Name[cs]=Chorvatsko Name[da]=Kroatien Name[de]=Kroatien diff -Nru calligra-2.3.86/flow/stencils/Flags/cuba.desktop calligra-2.3.87/flow/stencils/Flags/cuba.desktop --- calligra-2.3.86/flow/stencils/Flags/cuba.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Flags/cuba.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -2,6 +2,7 @@ Name=Cuba Name[bg]=Куба Name[ca]=Cuba +Name[ca@valencia]=Cuba Name[cs]=Kuba Name[da]=Cuba Name[de]=Kuba diff -Nru calligra-2.3.86/flow/stencils/Flags/cyprus.desktop calligra-2.3.87/flow/stencils/Flags/cyprus.desktop --- calligra-2.3.86/flow/stencils/Flags/cyprus.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Flags/cyprus.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -2,6 +2,7 @@ Name=Cyprus Name[bg]=Кипър Name[ca]=Xipre +Name[ca@valencia]=Xipre Name[cs]=Kypr Name[da]=Cypern Name[de]=Zypern diff -Nru calligra-2.3.86/flow/stencils/Flags/czech_republic.desktop calligra-2.3.87/flow/stencils/Flags/czech_republic.desktop --- calligra-2.3.86/flow/stencils/Flags/czech_republic.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Flags/czech_republic.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -2,6 +2,7 @@ Name=Czech Republic Name[bg]=Чешка република Name[ca]=República Txeca +Name[ca@valencia]=República Txeca Name[cs]=Česká republika Name[da]=Tjekkiet Name[de]=Tschechische Republik diff -Nru calligra-2.3.86/flow/stencils/Flags/denmark.desktop calligra-2.3.87/flow/stencils/Flags/denmark.desktop --- calligra-2.3.86/flow/stencils/Flags/denmark.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Flags/denmark.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -2,6 +2,7 @@ Name=Denmark Name[bg]=Дания Name[ca]=Dinamarca +Name[ca@valencia]=Dinamarca Name[cs]=Dánsko Name[da]=Danmark Name[de]=Dänemark diff -Nru calligra-2.3.86/flow/stencils/Flags/djibouti.desktop calligra-2.3.87/flow/stencils/Flags/djibouti.desktop --- calligra-2.3.86/flow/stencils/Flags/djibouti.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Flags/djibouti.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -2,6 +2,7 @@ Name=Djibouti Name[bg]=Джибути Name[ca]=Djibouti +Name[ca@valencia]=Djibouti Name[cs]=Džibuti Name[da]=Djibouti Name[de]=Dschibuti diff -Nru calligra-2.3.86/flow/stencils/Flags/dominica.desktop calligra-2.3.87/flow/stencils/Flags/dominica.desktop --- calligra-2.3.86/flow/stencils/Flags/dominica.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Flags/dominica.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -2,6 +2,7 @@ Name=Dominica Name[bg]=Доминика Name[ca]=Dominica +Name[ca@valencia]=Dominica Name[cs]=Dominika Name[da]=Dominica Name[de]=Dominica diff -Nru calligra-2.3.86/flow/stencils/Flags/dominican_republic.desktop calligra-2.3.87/flow/stencils/Flags/dominican_republic.desktop --- calligra-2.3.86/flow/stencils/Flags/dominican_republic.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Flags/dominican_republic.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -2,6 +2,7 @@ Name=Dominican Republic Name[bg]=Доминиканска република Name[ca]=República Dominicana +Name[ca@valencia]=República Dominicana Name[cs]=Dominikánská republika Name[da]=Dominikanske Republik Name[de]=Dominikanische Republik diff -Nru calligra-2.3.86/flow/stencils/Flags/ecuador.desktop calligra-2.3.87/flow/stencils/Flags/ecuador.desktop --- calligra-2.3.86/flow/stencils/Flags/ecuador.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Flags/ecuador.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -2,6 +2,7 @@ Name=Ecuador Name[bg]=Еквадор Name[ca]=Ecuador +Name[ca@valencia]=Ecuador Name[cs]=Ekvádor Name[da]=Ecuador Name[de]=Ecuador @@ -10,6 +11,7 @@ Name[it]=Ecuador Name[nb]=Ecuador Name[nds]=Ecuador +Name[nl]=Ecuador Name[pl]=Ekwador Name[pt]=Equador Name[pt_BR]=Equador diff -Nru calligra-2.3.86/flow/stencils/Flags/egypt.desktop calligra-2.3.87/flow/stencils/Flags/egypt.desktop --- calligra-2.3.86/flow/stencils/Flags/egypt.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Flags/egypt.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -2,6 +2,7 @@ Name=Egypt Name[bg]=Египет Name[ca]=Egipte +Name[ca@valencia]=Egipte Name[cs]=Egypt Name[da]=Egypten Name[de]=Ägypten diff -Nru calligra-2.3.86/flow/stencils/Flags/el_salvador.desktop calligra-2.3.87/flow/stencils/Flags/el_salvador.desktop --- calligra-2.3.86/flow/stencils/Flags/el_salvador.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Flags/el_salvador.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -1,6 +1,7 @@ [Desktop Entry] Name=El Salvador Name[ca]=El Salvador +Name[ca@valencia]=El Salvador Name[cs]=Salvador Name[da]=El Salvador Name[de]=El Salvador diff -Nru calligra-2.3.86/flow/stencils/Flags/equatorial_guinea.desktop calligra-2.3.87/flow/stencils/Flags/equatorial_guinea.desktop --- calligra-2.3.86/flow/stencils/Flags/equatorial_guinea.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Flags/equatorial_guinea.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -2,6 +2,7 @@ Name=Equatorial Guinea Name[bg]=Екваториална Гвинея Name[ca]=Guinea Equatorial +Name[ca@valencia]=Guinea Equatorial Name[cs]=Rovníková Guinea Name[da]=Ækvatorial Guinea Name[de]=Äquatorialguinea @@ -10,6 +11,7 @@ Name[it]=Guinea Equatoriale Name[nb]=Ekvatorial-Guinea Name[nds]=Äquater-Guinea +Name[nl]=Equatoriaal Guinea Name[pl]=Gwinea Równikowa Name[pt]=Guiné Equatorial Name[pt_BR]=Guiné Equatorial diff -Nru calligra-2.3.86/flow/stencils/Flags/eritrea.desktop calligra-2.3.87/flow/stencils/Flags/eritrea.desktop --- calligra-2.3.86/flow/stencils/Flags/eritrea.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Flags/eritrea.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -2,6 +2,7 @@ Name=Eritrea Name[bg]=Еритрея Name[ca]=Eritrea +Name[ca@valencia]=Eritrea Name[cs]=Eritrea Name[da]=Eritrea Name[de]=Eritrea diff -Nru calligra-2.3.86/flow/stencils/Flags/estonia.desktop calligra-2.3.87/flow/stencils/Flags/estonia.desktop --- calligra-2.3.86/flow/stencils/Flags/estonia.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Flags/estonia.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -2,6 +2,7 @@ Name=Estonia Name[bg]=Естония Name[ca]=Estònia +Name[ca@valencia]=Estònia Name[cs]=Estonsko Name[da]=Estland Name[de]=Estland diff -Nru calligra-2.3.86/flow/stencils/Flags/ethiopia.desktop calligra-2.3.87/flow/stencils/Flags/ethiopia.desktop --- calligra-2.3.86/flow/stencils/Flags/ethiopia.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Flags/ethiopia.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -2,6 +2,7 @@ Name=Ethiopia Name[bg]=Етиопия Name[ca]=Etiòpia +Name[ca@valencia]=Etiòpia Name[cs]=Etiopie Name[da]=Ethiopien Name[de]=Äthiopien diff -Nru calligra-2.3.86/flow/stencils/Flags/europeanunion.desktop calligra-2.3.87/flow/stencils/Flags/europeanunion.desktop --- calligra-2.3.86/flow/stencils/Flags/europeanunion.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Flags/europeanunion.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -2,6 +2,7 @@ Name=European Union Name[bg]=Европейски съюз Name[ca]=Unió Europea +Name[ca@valencia]=Unió Europea Name[cs]=Evropská unie Name[da]=Europæiske Union Name[de]=Europäische Union diff -Nru calligra-2.3.86/flow/stencils/Flags/fiji.desktop calligra-2.3.87/flow/stencils/Flags/fiji.desktop --- calligra-2.3.86/flow/stencils/Flags/fiji.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Flags/fiji.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -2,6 +2,7 @@ Name=Fiji Name[bg]=Фиджи Name[ca]=Fiji +Name[ca@valencia]=Fiji Name[cs]=Fidži Name[da]=Fiji Name[de]=Fidschi diff -Nru calligra-2.3.86/flow/stencils/Flags/finland.desktop calligra-2.3.87/flow/stencils/Flags/finland.desktop --- calligra-2.3.86/flow/stencils/Flags/finland.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Flags/finland.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -2,6 +2,7 @@ Name=Finland Name[bg]=Финландия Name[ca]=Filàndia +Name[ca@valencia]=Filàndia Name[cs]=Finsko Name[da]=Finland Name[de]=Finnland diff -Nru calligra-2.3.86/flow/stencils/Flags/france.desktop calligra-2.3.87/flow/stencils/Flags/france.desktop --- calligra-2.3.86/flow/stencils/Flags/france.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Flags/france.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -2,6 +2,7 @@ Name=France Name[bg]=Франция Name[ca]=França +Name[ca@valencia]=França Name[cs]=Francie Name[da]=Frankrig Name[de]=Frankreich diff -Nru calligra-2.3.86/flow/stencils/Flags/gabon.desktop calligra-2.3.87/flow/stencils/Flags/gabon.desktop --- calligra-2.3.86/flow/stencils/Flags/gabon.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Flags/gabon.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -2,6 +2,7 @@ Name=Gabon Name[bg]=Габон Name[ca]=Gabon +Name[ca@valencia]=Gabon Name[cs]=Gabon Name[da]=Gabon Name[de]=Gabun diff -Nru calligra-2.3.86/flow/stencils/Flags/gambia.desktop calligra-2.3.87/flow/stencils/Flags/gambia.desktop --- calligra-2.3.86/flow/stencils/Flags/gambia.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Flags/gambia.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -2,6 +2,7 @@ Name=Gambia Name[bg]=Гамбия Name[ca]=Gàmbia +Name[ca@valencia]=Gàmbia Name[cs]=Gambie Name[da]=Gambia Name[de]=Gambia diff -Nru calligra-2.3.86/flow/stencils/Flags/georgia.desktop calligra-2.3.87/flow/stencils/Flags/georgia.desktop --- calligra-2.3.86/flow/stencils/Flags/georgia.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Flags/georgia.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -2,6 +2,7 @@ Name=Georgia Name[bg]=Грузия Name[ca]=Geògia +Name[ca@valencia]=Geògia Name[cs]=Gruzie Name[da]=Georgien Name[de]=Georgien @@ -10,6 +11,7 @@ Name[it]=Georgia Name[nb]=Georgia Name[nds]=Georgien +Name[nl]=Georgië Name[pl]=Gruzja Name[pt]=Geórgia Name[pt_BR]=Geórgia diff -Nru calligra-2.3.86/flow/stencils/Flags/germany.desktop calligra-2.3.87/flow/stencils/Flags/germany.desktop --- calligra-2.3.86/flow/stencils/Flags/germany.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Flags/germany.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -2,6 +2,7 @@ Name=Germany Name[bg]=Германия Name[ca]=Alemanya +Name[ca@valencia]=Alemanya Name[cs]=Německo Name[da]=Tyskland Name[de]=Deutschland diff -Nru calligra-2.3.86/flow/stencils/Flags/ghana.desktop calligra-2.3.87/flow/stencils/Flags/ghana.desktop --- calligra-2.3.86/flow/stencils/Flags/ghana.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Flags/ghana.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -2,6 +2,7 @@ Name=Ghana Name[bg]=Гана Name[ca]=Ghana +Name[ca@valencia]=Ghana Name[cs]=Ghana Name[da]=Ghana Name[de]=Ghana diff -Nru calligra-2.3.86/flow/stencils/Flags/greece.desktop calligra-2.3.87/flow/stencils/Flags/greece.desktop --- calligra-2.3.86/flow/stencils/Flags/greece.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Flags/greece.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -2,6 +2,7 @@ Name=Greece Name[bg]=Гърция Name[ca]=Grècia +Name[ca@valencia]=Grècia Name[cs]=Řecko Name[da]=Grækenland Name[de]=Griechenland diff -Nru calligra-2.3.86/flow/stencils/Flags/grenada.desktop calligra-2.3.87/flow/stencils/Flags/grenada.desktop --- calligra-2.3.86/flow/stencils/Flags/grenada.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Flags/grenada.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -2,6 +2,7 @@ Name=Grenada Name[bg]=Гренада Name[ca]=Grenada +Name[ca@valencia]=Grenada Name[cs]=Grenada Name[da]=Grenada Name[de]=Grenada diff -Nru calligra-2.3.86/flow/stencils/Flags/guatemala.desktop calligra-2.3.87/flow/stencils/Flags/guatemala.desktop --- calligra-2.3.86/flow/stencils/Flags/guatemala.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Flags/guatemala.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -2,6 +2,7 @@ Name=Guatemala Name[bg]=Гватемала Name[ca]=Guatemala +Name[ca@valencia]=Guatemala Name[cs]=Guatemala Name[da]=Guatemala Name[de]=Guatemala diff -Nru calligra-2.3.86/flow/stencils/Flags/guinea.desktop calligra-2.3.87/flow/stencils/Flags/guinea.desktop --- calligra-2.3.86/flow/stencils/Flags/guinea.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Flags/guinea.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -2,6 +2,7 @@ Name=Guinea Name[bg]=Гвинея Name[ca]=Guinea +Name[ca@valencia]=Guinea Name[cs]=Guinea Name[da]=Guinea Name[de]=Guinea @@ -9,6 +10,7 @@ Name[it]=Guinea Name[nb]=Guinea Name[nds]=Guinea +Name[nl]=Guinea Name[pl]=Gwinea Name[pt]=Guiné Name[pt_BR]=Guiné diff -Nru calligra-2.3.86/flow/stencils/Flags/guyana.desktop calligra-2.3.87/flow/stencils/Flags/guyana.desktop --- calligra-2.3.86/flow/stencils/Flags/guyana.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Flags/guyana.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -1,6 +1,7 @@ [Desktop Entry] Name=Guyana Name[ca]=Guaiana +Name[ca@valencia]=Guaiana Name[cs]=Guyana Name[da]=Guyana Name[de]=Guyana diff -Nru calligra-2.3.86/flow/stencils/Flags/haiti.desktop calligra-2.3.87/flow/stencils/Flags/haiti.desktop --- calligra-2.3.86/flow/stencils/Flags/haiti.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Flags/haiti.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -2,6 +2,7 @@ Name=Haiti Name[bg]=Хаити Name[ca]=Haití +Name[ca@valencia]=Haití Name[cs]=Haiti Name[da]=Haiti Name[de]=Haiti @@ -10,6 +11,7 @@ Name[it]=Haiti Name[nb]=Haiti Name[nds]=Haiti +Name[nl]=Haiti Name[pl]=Haiti Name[pt]=Haiti Name[pt_BR]=Haiti diff -Nru calligra-2.3.86/flow/stencils/Flags/honduras.desktop calligra-2.3.87/flow/stencils/Flags/honduras.desktop --- calligra-2.3.86/flow/stencils/Flags/honduras.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Flags/honduras.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -2,6 +2,7 @@ Name=Honduras Name[bg]=Хондурас Name[ca]=Honduras +Name[ca@valencia]=Honduras Name[cs]=Honduras Name[da]=Honduras Name[de]=Honduras diff -Nru calligra-2.3.86/flow/stencils/Flags/hungary.desktop calligra-2.3.87/flow/stencils/Flags/hungary.desktop --- calligra-2.3.86/flow/stencils/Flags/hungary.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Flags/hungary.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -2,6 +2,7 @@ Name=Hungary Name[bg]=Унгария Name[ca]=Hungria +Name[ca@valencia]=Hungria Name[cs]=Maďarsko Name[da]=Ungarn Name[de]=Ungarn diff -Nru calligra-2.3.86/flow/stencils/Flags/iceland.desktop calligra-2.3.87/flow/stencils/Flags/iceland.desktop --- calligra-2.3.86/flow/stencils/Flags/iceland.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Flags/iceland.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -2,6 +2,7 @@ Name=Iceland Name[bg]=Исландия Name[ca]=Islàndia +Name[ca@valencia]=Islàndia Name[cs]=Island Name[da]=Island Name[de]=Island diff -Nru calligra-2.3.86/flow/stencils/Flags/india.desktop calligra-2.3.87/flow/stencils/Flags/india.desktop --- calligra-2.3.86/flow/stencils/Flags/india.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Flags/india.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -2,6 +2,7 @@ Name=India Name[bg]=Индия Name[ca]=Índia +Name[ca@valencia]=Índia Name[cs]=Indie Name[da]=Indien Name[de]=Indien diff -Nru calligra-2.3.86/flow/stencils/Flags/indonesia.desktop calligra-2.3.87/flow/stencils/Flags/indonesia.desktop --- calligra-2.3.86/flow/stencils/Flags/indonesia.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Flags/indonesia.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -2,6 +2,7 @@ Name=Indonesia Name[bg]=Индонезия Name[ca]=Indonèsia +Name[ca@valencia]=Indonèsia Name[cs]=Indonésie Name[da]=Indonesien Name[de]=Indonesien diff -Nru calligra-2.3.86/flow/stencils/Flags/iran.desktop calligra-2.3.87/flow/stencils/Flags/iran.desktop --- calligra-2.3.86/flow/stencils/Flags/iran.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Flags/iran.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -2,6 +2,7 @@ Name=Iran Name[bg]=Иран Name[ca]=Iran +Name[ca@valencia]=Iran Name[cs]=Írán Name[da]=Iran Name[de]=Iran diff -Nru calligra-2.3.86/flow/stencils/Flags/iraq.desktop calligra-2.3.87/flow/stencils/Flags/iraq.desktop --- calligra-2.3.86/flow/stencils/Flags/iraq.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Flags/iraq.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -2,6 +2,7 @@ Name=Iraq Name[bg]=Ирак Name[ca]=Iraq +Name[ca@valencia]=Iraq Name[cs]=Irák Name[da]=Irak Name[de]=Iraq diff -Nru calligra-2.3.86/flow/stencils/Flags/ireland.desktop calligra-2.3.87/flow/stencils/Flags/ireland.desktop --- calligra-2.3.86/flow/stencils/Flags/ireland.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Flags/ireland.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -2,6 +2,7 @@ Name=Ireland Name[bg]=Ирландия Name[ca]=Irlanda +Name[ca@valencia]=Irlanda Name[cs]=Irsko Name[da]=Irland Name[de]=Irland diff -Nru calligra-2.3.86/flow/stencils/Flags/israel.desktop calligra-2.3.87/flow/stencils/Flags/israel.desktop --- calligra-2.3.86/flow/stencils/Flags/israel.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Flags/israel.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -2,6 +2,7 @@ Name=Israel Name[bg]=Израел Name[ca]=Israel +Name[ca@valencia]=Israel Name[cs]=Izrael Name[da]=Israel Name[de]=Israel @@ -10,6 +11,7 @@ Name[it]=Israele Name[nb]=Israel Name[nds]=Israel +Name[nl]=Israel Name[pl]=Izrael Name[pt]=Israel Name[pt_BR]=Israel diff -Nru calligra-2.3.86/flow/stencils/Flags/italy.desktop calligra-2.3.87/flow/stencils/Flags/italy.desktop --- calligra-2.3.86/flow/stencils/Flags/italy.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Flags/italy.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -2,6 +2,7 @@ Name=Italy Name[bg]=Италия Name[ca]=Itàlia +Name[ca@valencia]=Itàlia Name[cs]=Itálie Name[da]=Italien Name[de]=Italien diff -Nru calligra-2.3.86/flow/stencils/Flags/jamaica.desktop calligra-2.3.87/flow/stencils/Flags/jamaica.desktop --- calligra-2.3.86/flow/stencils/Flags/jamaica.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Flags/jamaica.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -2,6 +2,7 @@ Name=Jamaica Name[bg]=Ямайка Name[ca]=Jamaica +Name[ca@valencia]=Jamaica Name[cs]=Jamajka Name[da]=Jamaica Name[de]=Jamaika diff -Nru calligra-2.3.86/flow/stencils/Flags/japan.desktop calligra-2.3.87/flow/stencils/Flags/japan.desktop --- calligra-2.3.86/flow/stencils/Flags/japan.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Flags/japan.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -2,6 +2,7 @@ Name=Japan Name[bg]=Япония Name[ca]=Japó +Name[ca@valencia]=Japó Name[cs]=Japonsko Name[da]=Japan Name[de]=Japan diff -Nru calligra-2.3.86/flow/stencils/Flags/jordan.desktop calligra-2.3.87/flow/stencils/Flags/jordan.desktop --- calligra-2.3.86/flow/stencils/Flags/jordan.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Flags/jordan.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -2,6 +2,7 @@ Name=Jordan Name[bg]=Йордания Name[ca]=Jordània +Name[ca@valencia]=Jordània Name[cs]=Jordánsko Name[da]=Jordan Name[de]=Jordanien @@ -9,6 +10,7 @@ Name[ga]=An Iordáin Name[it]=Giordania Name[nb]=Jordan +Name[nl]=Jordanië Name[pl]=Jordania Name[pt]=Jordânia Name[pt_BR]=Jordânia diff -Nru calligra-2.3.86/flow/stencils/Flags/kazakhstan.desktop calligra-2.3.87/flow/stencils/Flags/kazakhstan.desktop --- calligra-2.3.86/flow/stencils/Flags/kazakhstan.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Flags/kazakhstan.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -2,6 +2,7 @@ Name=Kazakhstan Name[bg]=Казахстан Name[ca]=Kazakhstan +Name[ca@valencia]=Kazakhstan Name[cs]=Kazachstán Name[da]=Kasakhstan Name[de]=Kasachstan @@ -10,6 +11,7 @@ Name[it]=Kazakistan Name[nb]=Kasakhstan Name[nds]=Kasachstan +Name[nl]=Kazachstan Name[pl]=Kazachstan Name[pt]=Cazaquistão Name[pt_BR]=Cazaquistão diff -Nru calligra-2.3.86/flow/stencils/Flags/kenya.desktop calligra-2.3.87/flow/stencils/Flags/kenya.desktop --- calligra-2.3.86/flow/stencils/Flags/kenya.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Flags/kenya.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -2,6 +2,7 @@ Name=Kenya Name[bg]=Кения Name[ca]=Kenya +Name[ca@valencia]=Kenya Name[cs]=Keňa Name[da]=Kenya Name[de]=Kenia @@ -10,6 +11,7 @@ Name[it]=Kenia Name[nb]=Kenya Name[nds]=Kenia +Name[nl]=Kenia Name[pl]=Kenia Name[pt]=Quénia Name[pt_BR]=Quênia diff -Nru calligra-2.3.86/flow/stencils/Flags/kiribati.desktop calligra-2.3.87/flow/stencils/Flags/kiribati.desktop --- calligra-2.3.86/flow/stencils/Flags/kiribati.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Flags/kiribati.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -2,6 +2,7 @@ Name=Kiribati Name[bg]=Кирибати Name[ca]=Kiribati +Name[ca@valencia]=Kiribati Name[cs]=Kiribati Name[da]=Kiribati Name[de]=Kiribati diff -Nru calligra-2.3.86/flow/stencils/Flags/kuwait.desktop calligra-2.3.87/flow/stencils/Flags/kuwait.desktop --- calligra-2.3.86/flow/stencils/Flags/kuwait.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Flags/kuwait.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -2,6 +2,7 @@ Name=Kuwait Name[bg]=Кувейт Name[ca]=Kuwait +Name[ca@valencia]=Kuwait Name[cs]=Kuvajt Name[da]=Kuwait Name[de]=Kuwait diff -Nru calligra-2.3.86/flow/stencils/Flags/kyrgyzstan.desktop calligra-2.3.87/flow/stencils/Flags/kyrgyzstan.desktop --- calligra-2.3.86/flow/stencils/Flags/kyrgyzstan.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Flags/kyrgyzstan.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -2,6 +2,7 @@ Name=Kyrgyzstan Name[bg]=Киргизстан Name[ca]=Kirguizistan +Name[ca@valencia]=Kirguizistan Name[cs]=Kyrgyzstán Name[da]=Kirgizistan Name[de]=Kirgisistan diff -Nru calligra-2.3.86/flow/stencils/Flags/laos.desktop calligra-2.3.87/flow/stencils/Flags/laos.desktop --- calligra-2.3.86/flow/stencils/Flags/laos.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Flags/laos.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -2,6 +2,7 @@ Name=Laos Name[bg]=Лаос Name[ca]=Laos +Name[ca@valencia]=Laos Name[cs]=Laos Name[da]=Laos Name[de]=Laos diff -Nru calligra-2.3.86/flow/stencils/Flags/latvia.desktop calligra-2.3.87/flow/stencils/Flags/latvia.desktop --- calligra-2.3.86/flow/stencils/Flags/latvia.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Flags/latvia.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -2,6 +2,7 @@ Name=Latvia Name[bg]=Латвия Name[ca]=Letònia +Name[ca@valencia]=Letònia Name[cs]=Lotyšsko Name[da]=Letland Name[de]=Lettland diff -Nru calligra-2.3.86/flow/stencils/Flags/lebanon.desktop calligra-2.3.87/flow/stencils/Flags/lebanon.desktop --- calligra-2.3.86/flow/stencils/Flags/lebanon.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Flags/lebanon.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -2,6 +2,7 @@ Name=Lebanon Name[bg]=Ливан Name[ca]=Líban +Name[ca@valencia]=Líban Name[cs]=Libanon Name[da]=Libanon Name[de]=Libanon @@ -10,6 +11,7 @@ Name[it]=Libano Name[nb]=Libanon Name[nds]=Libanon +Name[nl]=Libanon Name[pl]=Liban Name[pt]=Líbano Name[pt_BR]=Líbano diff -Nru calligra-2.3.86/flow/stencils/Flags/lesotho.desktop calligra-2.3.87/flow/stencils/Flags/lesotho.desktop --- calligra-2.3.86/flow/stencils/Flags/lesotho.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Flags/lesotho.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -2,6 +2,7 @@ Name=Lesotho Name[bg]=Лесото Name[ca]=Lesotho +Name[ca@valencia]=Lesotho Name[cs]=Lesotho Name[da]=Lesotho Name[de]=Lesotho diff -Nru calligra-2.3.86/flow/stencils/Flags/liberia.desktop calligra-2.3.87/flow/stencils/Flags/liberia.desktop --- calligra-2.3.86/flow/stencils/Flags/liberia.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Flags/liberia.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -2,6 +2,7 @@ Name=Liberia Name[bg]=Либерия Name[ca]=Libèria +Name[ca@valencia]=Libèria Name[cs]=Libérie Name[da]=Liberia Name[de]=Liberia diff -Nru calligra-2.3.86/flow/stencils/Flags/libyan_arab_jamahiriya.desktop calligra-2.3.87/flow/stencils/Flags/libyan_arab_jamahiriya.desktop --- calligra-2.3.86/flow/stencils/Flags/libyan_arab_jamahiriya.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Flags/libyan_arab_jamahiriya.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -2,6 +2,7 @@ Name=Libyan Arab Jamahiriya Name[bg]=Либийска Арабска Джамахирия Name[ca]=Líbia +Name[ca@valencia]=Líbia Name[cs]=Lýbie Name[da]=Libyan Arab Jamahiriya Name[de]=Libysch-Arabische Dschamahirija diff -Nru calligra-2.3.86/flow/stencils/Flags/liechtenstein.desktop calligra-2.3.87/flow/stencils/Flags/liechtenstein.desktop --- calligra-2.3.86/flow/stencils/Flags/liechtenstein.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Flags/liechtenstein.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -2,6 +2,7 @@ Name=Liechtenstein Name[bg]=Лихтенщайн Name[ca]=Liechtenstein +Name[ca@valencia]=Liechtenstein Name[cs]=Lichtenštejnsko Name[da]=Liechtenstein Name[de]=Liechtenstein diff -Nru calligra-2.3.86/flow/stencils/Flags/lithuania.desktop calligra-2.3.87/flow/stencils/Flags/lithuania.desktop --- calligra-2.3.86/flow/stencils/Flags/lithuania.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Flags/lithuania.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -2,6 +2,7 @@ Name=Lithuania Name[bg]=Литва Name[ca]=Lituània +Name[ca@valencia]=Lituània Name[cs]=Litva Name[da]=Litauen Name[de]=Litauen diff -Nru calligra-2.3.86/flow/stencils/Flags/luxembourg.desktop calligra-2.3.87/flow/stencils/Flags/luxembourg.desktop --- calligra-2.3.86/flow/stencils/Flags/luxembourg.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Flags/luxembourg.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -2,6 +2,7 @@ Name=Luxembourg Name[bg]=Люксембург Name[ca]=Luxemburg +Name[ca@valencia]=Luxemburg Name[cs]=Lucembursko Name[da]=Luxembourg Name[de]=Luxemburg diff -Nru calligra-2.3.86/flow/stencils/Flags/macedonia.desktop calligra-2.3.87/flow/stencils/Flags/macedonia.desktop --- calligra-2.3.86/flow/stencils/Flags/macedonia.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Flags/macedonia.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -2,6 +2,7 @@ Name=Macedonia Name[bg]=Македония Name[ca]=Macedònia +Name[ca@valencia]=Macedònia Name[cs]=Makedonie Name[da]=Makedonien Name[de]=Mazedonien diff -Nru calligra-2.3.86/flow/stencils/Flags/madagascar.desktop calligra-2.3.87/flow/stencils/Flags/madagascar.desktop --- calligra-2.3.86/flow/stencils/Flags/madagascar.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Flags/madagascar.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -2,6 +2,7 @@ Name=Madagascar Name[bg]=Мадагаскар Name[ca]=Madagascar +Name[ca@valencia]=Madagascar Name[cs]=Madagaskar Name[da]=Madagascar Name[de]=Madagaskar @@ -10,6 +11,7 @@ Name[it]=Madagascar Name[nb]=Madagaskar Name[nds]=Madagaskar +Name[nl]=Madagascar Name[pl]=Madagaskar Name[pt]=Madagáscar Name[pt_BR]=Madagascar diff -Nru calligra-2.3.86/flow/stencils/Flags/malawi.desktop calligra-2.3.87/flow/stencils/Flags/malawi.desktop --- calligra-2.3.86/flow/stencils/Flags/malawi.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Flags/malawi.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -2,6 +2,7 @@ Name=Malawi Name[bg]=Малави Name[ca]=Malawi +Name[ca@valencia]=Malawi Name[cs]=Malawi Name[da]=Malawi Name[de]=Malawi diff -Nru calligra-2.3.86/flow/stencils/Flags/malaysia.desktop calligra-2.3.87/flow/stencils/Flags/malaysia.desktop --- calligra-2.3.86/flow/stencils/Flags/malaysia.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Flags/malaysia.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -2,6 +2,7 @@ Name=Malaysia Name[bg]=Малайзия Name[ca]=Malàisia +Name[ca@valencia]=Malàisia Name[cs]=Malajsie Name[da]=Malaysia Name[de]=Malaysia @@ -10,6 +11,7 @@ Name[it]=Malesia Name[nb]=Malaysia Name[nds]=Malaysia +Name[nl]=Maleisië Name[pl]=Malezja Name[pt]=Malásia Name[pt_BR]=Malásia diff -Nru calligra-2.3.86/flow/stencils/Flags/maldives.desktop calligra-2.3.87/flow/stencils/Flags/maldives.desktop --- calligra-2.3.86/flow/stencils/Flags/maldives.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Flags/maldives.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -2,6 +2,7 @@ Name=Maldives Name[bg]=Малдиви Name[ca]=Maldives +Name[ca@valencia]=Maldives Name[cs]=Maledivy Name[da]=Maldiverne Name[de]=Malediven @@ -10,6 +11,7 @@ Name[it]=Maldive Name[nb]=Maldivene Name[nds]=Malediven +Name[nl]=Malediven Name[pl]=Malediwy Name[pt]=Maldivas Name[pt_BR]=Maldivas diff -Nru calligra-2.3.86/flow/stencils/Flags/mali.desktop calligra-2.3.87/flow/stencils/Flags/mali.desktop --- calligra-2.3.86/flow/stencils/Flags/mali.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Flags/mali.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -2,6 +2,7 @@ Name=Mali Name[bg]=Мали Name[ca]=Mali +Name[ca@valencia]=Mali Name[cs]=Mali Name[da]=Mali Name[de]=Mali diff -Nru calligra-2.3.86/flow/stencils/Flags/malta.desktop calligra-2.3.87/flow/stencils/Flags/malta.desktop --- calligra-2.3.86/flow/stencils/Flags/malta.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Flags/malta.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -2,6 +2,7 @@ Name=Malta Name[bg]=Малта Name[ca]=Malta +Name[ca@valencia]=Malta Name[cs]=Malta Name[da]=Malta Name[de]=Malta diff -Nru calligra-2.3.86/flow/stencils/Flags/marshall_islands.desktop calligra-2.3.87/flow/stencils/Flags/marshall_islands.desktop --- calligra-2.3.86/flow/stencils/Flags/marshall_islands.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Flags/marshall_islands.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -2,6 +2,7 @@ Name=Marshall Islands Name[bg]=Маршалски острови Name[ca]=Illes Marshall +Name[ca@valencia]=Illes Marshall Name[cs]=Marshallovy ostrovy Name[da]=Marshall-øerne Name[de]=Marshallinseln @@ -10,6 +11,7 @@ Name[it]=Isole Marshall Name[nb]=Marshalløyene Name[nds]=Marshall-Eilannen +Name[nl]=Marshall Eilanden Name[pl]=Wyspy Marshalla Name[pt]=Ilhas Marshall Name[pt_BR]=Ilhas Marshall diff -Nru calligra-2.3.86/flow/stencils/Flags/mauritania.desktop calligra-2.3.87/flow/stencils/Flags/mauritania.desktop --- calligra-2.3.86/flow/stencils/Flags/mauritania.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Flags/mauritania.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -2,6 +2,7 @@ Name=Mauritania Name[bg]=Мавритания Name[ca]=Mauritània +Name[ca@valencia]=Mauritània Name[cs]=Mauretánie Name[da]=Mauretanien Name[de]=Mauretanien @@ -10,6 +11,7 @@ Name[it]=Mauritania Name[nb]=Mauritania Name[nds]=Mauretanien +Name[nl]=Mauritanië Name[pl]=Mauretania Name[pt]=Mauritânia Name[pt_BR]=Mauritânia diff -Nru calligra-2.3.86/flow/stencils/Flags/mauritius.desktop calligra-2.3.87/flow/stencils/Flags/mauritius.desktop --- calligra-2.3.86/flow/stencils/Flags/mauritius.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Flags/mauritius.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -2,6 +2,7 @@ Name=Mauritius Name[bg]=Мавриций Name[ca]=Maurici +Name[ca@valencia]=Maurici Name[cs]=Mauricius Name[da]=Mauritius Name[de]=Mauritius diff -Nru calligra-2.3.86/flow/stencils/Flags/mexico.desktop calligra-2.3.87/flow/stencils/Flags/mexico.desktop --- calligra-2.3.86/flow/stencils/Flags/mexico.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Flags/mexico.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -2,6 +2,7 @@ Name=Mexico Name[bg]=Мексико Name[ca]=Mèxic +Name[ca@valencia]=Mèxic Name[cs]=Mexiko Name[da]=Mexico Name[de]=Mexiko diff -Nru calligra-2.3.86/flow/stencils/Flags/micronesia.desktop calligra-2.3.87/flow/stencils/Flags/micronesia.desktop --- calligra-2.3.86/flow/stencils/Flags/micronesia.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Flags/micronesia.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -2,6 +2,7 @@ Name=Micronesia Name[bg]=Микронезия Name[ca]=Micronèsia +Name[ca@valencia]=Micronèsia Name[cs]=Mikronésie Name[da]=Mikronesien Name[de]=Mikronesien diff -Nru calligra-2.3.86/flow/stencils/Flags/moldova.desktop calligra-2.3.87/flow/stencils/Flags/moldova.desktop --- calligra-2.3.86/flow/stencils/Flags/moldova.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Flags/moldova.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -2,6 +2,7 @@ Name=Moldova Name[bg]=Молдова Name[ca]=Moldàvia +Name[ca@valencia]=Moldàvia Name[cs]=Moldávie Name[da]=Moldova Name[de]=Moldawien diff -Nru calligra-2.3.86/flow/stencils/Flags/monaco.desktop calligra-2.3.87/flow/stencils/Flags/monaco.desktop --- calligra-2.3.86/flow/stencils/Flags/monaco.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Flags/monaco.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -2,6 +2,7 @@ Name=Monaco Name[bg]=Монако Name[ca]=Mònaco +Name[ca@valencia]=Mònaco Name[cs]=Monako Name[da]=Monaco Name[de]=Monaco diff -Nru calligra-2.3.86/flow/stencils/Flags/mongolia.desktop calligra-2.3.87/flow/stencils/Flags/mongolia.desktop --- calligra-2.3.86/flow/stencils/Flags/mongolia.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Flags/mongolia.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -2,6 +2,7 @@ Name=Mongolia Name[bg]=Монголия Name[ca]=Mongòlia +Name[ca@valencia]=Mongòlia Name[cs]=Mongolsko Name[da]=Mongoliet Name[de]=Mongolei diff -Nru calligra-2.3.86/flow/stencils/Flags/montenegro.desktop calligra-2.3.87/flow/stencils/Flags/montenegro.desktop --- calligra-2.3.86/flow/stencils/Flags/montenegro.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Flags/montenegro.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -2,6 +2,7 @@ Name=Montenegro Name[bg]=Черна гора Name[ca]=Montenegro +Name[ca@valencia]=Montenegro Name[cs]=Černá hora Name[da]=Montenegro Name[de]=Montenegro diff -Nru calligra-2.3.86/flow/stencils/Flags/morocco.desktop calligra-2.3.87/flow/stencils/Flags/morocco.desktop --- calligra-2.3.86/flow/stencils/Flags/morocco.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Flags/morocco.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -2,6 +2,7 @@ Name=Morocco Name[bg]=Мароко Name[ca]=Marroc +Name[ca@valencia]=Marroc Name[cs]=Maroko Name[da]=Marokko Name[de]=Marokko diff -Nru calligra-2.3.86/flow/stencils/Flags/mozambique.desktop calligra-2.3.87/flow/stencils/Flags/mozambique.desktop --- calligra-2.3.86/flow/stencils/Flags/mozambique.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Flags/mozambique.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -2,6 +2,7 @@ Name=Mozambique Name[bg]=Мозамбик Name[ca]=Moçambic +Name[ca@valencia]=Moçambic Name[cs]=Mozambik Name[da]=Mozambique Name[de]=Mosambik diff -Nru calligra-2.3.86/flow/stencils/Flags/myanmar.desktop calligra-2.3.87/flow/stencils/Flags/myanmar.desktop --- calligra-2.3.86/flow/stencils/Flags/myanmar.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Flags/myanmar.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -2,6 +2,7 @@ Name=Myanmar Name[bg]=Мианмар Name[ca]=Myanmar +Name[ca@valencia]=Myanmar Name[cs]=Myanmar Name[da]=Burma Name[de]=Myanmar @@ -10,6 +11,7 @@ Name[it]=Myanmar Name[nb]=Myanmar Name[nds]=Myanmar +Name[nl]=Myanmar Name[pl]=Myanmar Name[pt]=Myanmar Name[pt_BR]=Myanmar diff -Nru calligra-2.3.86/flow/stencils/Flags/namibia.desktop calligra-2.3.87/flow/stencils/Flags/namibia.desktop --- calligra-2.3.86/flow/stencils/Flags/namibia.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Flags/namibia.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -2,6 +2,7 @@ Name=Namibia Name[bg]=Намибия Name[ca]=Namíbia +Name[ca@valencia]=Namíbia Name[cs]=Namíbie Name[da]=Namibia Name[de]=Namibia diff -Nru calligra-2.3.86/flow/stencils/Flags/nauru.desktop calligra-2.3.87/flow/stencils/Flags/nauru.desktop --- calligra-2.3.86/flow/stencils/Flags/nauru.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Flags/nauru.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -2,6 +2,7 @@ Name=Nauru Name[bg]=Науру Name[ca]=Nauru +Name[ca@valencia]=Nauru Name[cs]=Nauru Name[da]=Nauru Name[de]=Nauru diff -Nru calligra-2.3.86/flow/stencils/Flags/nepal.desktop calligra-2.3.87/flow/stencils/Flags/nepal.desktop --- calligra-2.3.86/flow/stencils/Flags/nepal.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Flags/nepal.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -2,6 +2,7 @@ Name=Nepal Name[bg]=Непал Name[ca]=Nepal +Name[ca@valencia]=Nepal Name[cs]=Nepál Name[da]=Nepal Name[de]=Nepal diff -Nru calligra-2.3.86/flow/stencils/Flags/netherlands_antilles.desktop calligra-2.3.87/flow/stencils/Flags/netherlands_antilles.desktop --- calligra-2.3.86/flow/stencils/Flags/netherlands_antilles.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Flags/netherlands_antilles.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -2,6 +2,7 @@ Name=Netherlands Antilles Name[bg]=Холандски Антили Name[ca]=Antilles Holandeses +Name[ca@valencia]=Antilles Holandeses Name[cs]=Nizozemské Antily Name[da]=Nederlandske antiller Name[de]=Niederländische Antillen diff -Nru calligra-2.3.86/flow/stencils/Flags/netherlands.desktop calligra-2.3.87/flow/stencils/Flags/netherlands.desktop --- calligra-2.3.86/flow/stencils/Flags/netherlands.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Flags/netherlands.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -2,6 +2,7 @@ Name=Netherlands Name[bg]=Холандия Name[ca]=Països Baixos +Name[ca@valencia]=Països Baixos Name[cs]=Nizozemí Name[da]=Holland Name[de]=Niederlande diff -Nru calligra-2.3.86/flow/stencils/Flags/newzealand.desktop calligra-2.3.87/flow/stencils/Flags/newzealand.desktop --- calligra-2.3.86/flow/stencils/Flags/newzealand.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Flags/newzealand.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -2,6 +2,7 @@ Name=Newzealand Name[bg]=Нова Зеландия Name[ca]=Nova Zelanda +Name[ca@valencia]=Nova Zelanda Name[cs]=Nový Zéland Name[da]=New Zealand Name[de]=Neuseeland @@ -9,6 +10,7 @@ Name[it]=Nuova Zelanda Name[nb]=Newzealand Name[nds]=Niegseeland +Name[nl]=Nieuw-Zeeland Name[pl]=Nowa Zelandia Name[pt]=Nova Zelândia Name[pt_BR]=Nova Zelândia diff -Nru calligra-2.3.86/flow/stencils/Flags/nicaragua.desktop calligra-2.3.87/flow/stencils/Flags/nicaragua.desktop --- calligra-2.3.86/flow/stencils/Flags/nicaragua.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Flags/nicaragua.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -2,6 +2,7 @@ Name=Nicaragua Name[bg]=Никарагуа Name[ca]=Nicaragua +Name[ca@valencia]=Nicaragua Name[cs]=Nikaragua Name[da]=Nicaragua Name[de]=Nicaragua diff -Nru calligra-2.3.86/flow/stencils/Flags/niger.desktop calligra-2.3.87/flow/stencils/Flags/niger.desktop --- calligra-2.3.86/flow/stencils/Flags/niger.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Flags/niger.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -2,6 +2,7 @@ Name=Niger Name[bg]=Нигер Name[ca]=Níger +Name[ca@valencia]=Níger Name[cs]=Niger Name[da]=Niger Name[de]=Niger diff -Nru calligra-2.3.86/flow/stencils/Flags/nigeria.desktop calligra-2.3.87/flow/stencils/Flags/nigeria.desktop --- calligra-2.3.86/flow/stencils/Flags/nigeria.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Flags/nigeria.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -2,6 +2,7 @@ Name=Nigeria Name[bg]=Нигерия Name[ca]=Nigèria +Name[ca@valencia]=Nigèria Name[cs]=Nigérie Name[da]=Nigeria Name[de]=Nigeria diff -Nru calligra-2.3.86/flow/stencils/Flags/north_korea.desktop calligra-2.3.87/flow/stencils/Flags/north_korea.desktop --- calligra-2.3.86/flow/stencils/Flags/north_korea.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Flags/north_korea.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -2,6 +2,7 @@ Name=North Korea Name[bg]=Северна Корея Name[ca]=Corea del Nord +Name[ca@valencia]=Corea del Nord Name[cs]=Severní Korea Name[da]=Nordkorea Name[de]=Nordkorea diff -Nru calligra-2.3.86/flow/stencils/Flags/norway.desktop calligra-2.3.87/flow/stencils/Flags/norway.desktop --- calligra-2.3.86/flow/stencils/Flags/norway.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Flags/norway.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -2,6 +2,7 @@ Name=Norway Name[bg]=Норвегия Name[ca]=Noruega +Name[ca@valencia]=Noruega Name[cs]=Norsko Name[da]=Norge Name[de]=Norwegen @@ -10,6 +11,7 @@ Name[it]=Norvegia Name[nb]=Norge Name[nds]=Norwegen +Name[nl]=Noorwegen Name[pl]=Norwegia Name[pt]=Noruega Name[pt_BR]=Noruega diff -Nru calligra-2.3.86/flow/stencils/Flags/olympic.desktop calligra-2.3.87/flow/stencils/Flags/olympic.desktop --- calligra-2.3.86/flow/stencils/Flags/olympic.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Flags/olympic.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -1,10 +1,12 @@ [Desktop Entry] Name=Olympic Name[ca]=Olímpica +Name[ca@valencia]=Olímpica Name[da]=Olympisk Name[et]=Olümpia Name[it]=Olimpica Name[nb]=Olympisk +Name[nl]=Plympisch Name[pl]=Olympic Name[pt]=Olímpica Name[pt_BR]=Olímpica diff -Nru calligra-2.3.86/flow/stencils/Flags/oman.desktop calligra-2.3.87/flow/stencils/Flags/oman.desktop --- calligra-2.3.86/flow/stencils/Flags/oman.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Flags/oman.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -2,6 +2,7 @@ Name=Oman Name[bg]=Оман Name[ca]=Oman +Name[ca@valencia]=Oman Name[cs]=Omán Name[da]=Oman Name[de]=Oman diff -Nru calligra-2.3.86/flow/stencils/Flags/pakistan.desktop calligra-2.3.87/flow/stencils/Flags/pakistan.desktop --- calligra-2.3.86/flow/stencils/Flags/pakistan.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Flags/pakistan.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -2,6 +2,7 @@ Name=Pakistan Name[bg]=Пакистан Name[ca]=Pakistan +Name[ca@valencia]=Pakistan Name[cs]=Pákistán Name[da]=Pakistan Name[de]=Pakistan diff -Nru calligra-2.3.86/flow/stencils/Flags/palau.desktop calligra-2.3.87/flow/stencils/Flags/palau.desktop --- calligra-2.3.86/flow/stencils/Flags/palau.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Flags/palau.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -2,6 +2,7 @@ Name=Palau Name[bg]=Палау Name[ca]=Palau +Name[ca@valencia]=Palau Name[cs]=Palau Name[da]=Palau Name[de]=Palau diff -Nru calligra-2.3.86/flow/stencils/Flags/palestine.desktop calligra-2.3.87/flow/stencils/Flags/palestine.desktop --- calligra-2.3.86/flow/stencils/Flags/palestine.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Flags/palestine.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -2,6 +2,7 @@ Name=Palestine Name[bg]=Палестина Name[ca]=Palestina +Name[ca@valencia]=Palestina Name[cs]=Palestina Name[da]=Palæstina Name[de]=Palästina diff -Nru calligra-2.3.86/flow/stencils/Flags/panama.desktop calligra-2.3.87/flow/stencils/Flags/panama.desktop --- calligra-2.3.86/flow/stencils/Flags/panama.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Flags/panama.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -2,6 +2,7 @@ Name=Panama Name[bg]=Панама Name[ca]=Panamà +Name[ca@valencia]=Panamà Name[cs]=Panama Name[da]=Panama Name[de]=Panama diff -Nru calligra-2.3.86/flow/stencils/Flags/papua_new_guinea.desktop calligra-2.3.87/flow/stencils/Flags/papua_new_guinea.desktop --- calligra-2.3.86/flow/stencils/Flags/papua_new_guinea.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Flags/papua_new_guinea.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -2,6 +2,7 @@ Name=Papua New Guinea Name[bg]=Папуа Нова Гвинея Name[ca]=Papua Nova Guinea +Name[ca@valencia]=Papua Nova Guinea Name[cs]=Papua - Nová Guinea Name[da]=Papua Ny Guinea Name[de]=Papua-Neuguinea @@ -10,6 +11,7 @@ Name[it]=Papua Nuova Guinea Name[nb]=Papua Ny-Guinea Name[nds]=Papua-Niegguinea +Name[nl]=Papoea-Nieuw-Guinea Name[pl]=Papua Nowa Gwinea Name[pt]=Papua Nova Guiné Name[pt_BR]=Papua Nova Guiné diff -Nru calligra-2.3.86/flow/stencils/Flags/paraguay.desktop calligra-2.3.87/flow/stencils/Flags/paraguay.desktop --- calligra-2.3.86/flow/stencils/Flags/paraguay.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Flags/paraguay.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -2,6 +2,7 @@ Name=Paraguay Name[bg]=Парагвай Name[ca]=Paraguai +Name[ca@valencia]=Paraguai Name[cs]=Paraguay Name[da]=Paraguay Name[de]=Paraguay diff -Nru calligra-2.3.86/flow/stencils/Flags/peru.desktop calligra-2.3.87/flow/stencils/Flags/peru.desktop --- calligra-2.3.86/flow/stencils/Flags/peru.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Flags/peru.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -2,6 +2,7 @@ Name=Peru Name[bg]=Перу Name[ca]=Perú +Name[ca@valencia]=Perú Name[cs]=Peru Name[da]=Peru Name[de]=Peru diff -Nru calligra-2.3.86/flow/stencils/Flags/philippines.desktop calligra-2.3.87/flow/stencils/Flags/philippines.desktop --- calligra-2.3.86/flow/stencils/Flags/philippines.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Flags/philippines.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -2,6 +2,7 @@ Name=Philippines Name[bg]=Филипини Name[ca]=Filipines +Name[ca@valencia]=Filipines Name[cs]=Filipíny Name[da]=Filippinerne Name[de]=Philippinen @@ -10,6 +11,7 @@ Name[it]=Filippine Name[nb]=Filippinene Name[nds]=Philippinen +Name[nl]=Filipijnen Name[pl]=Filipiny Name[pt]=Filipinas Name[pt_BR]=Filipinas diff -Nru calligra-2.3.86/flow/stencils/Flags/poland.desktop calligra-2.3.87/flow/stencils/Flags/poland.desktop --- calligra-2.3.86/flow/stencils/Flags/poland.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Flags/poland.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -2,6 +2,7 @@ Name=Poland Name[bg]=Полша Name[ca]=Polònia +Name[ca@valencia]=Polònia Name[cs]=Polsko Name[da]=Polen Name[de]=Polen diff -Nru calligra-2.3.86/flow/stencils/Flags/portugal.desktop calligra-2.3.87/flow/stencils/Flags/portugal.desktop --- calligra-2.3.86/flow/stencils/Flags/portugal.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Flags/portugal.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -2,6 +2,7 @@ Name=Portugal Name[bg]=Португалия Name[ca]=Portugal +Name[ca@valencia]=Portugal Name[cs]=Portugalsko Name[da]=Portugal Name[de]=Portugal diff -Nru calligra-2.3.86/flow/stencils/Flags/qatar.desktop calligra-2.3.87/flow/stencils/Flags/qatar.desktop --- calligra-2.3.86/flow/stencils/Flags/qatar.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Flags/qatar.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -2,6 +2,7 @@ Name=Qatar Name[bg]=Катар Name[ca]=Qatar +Name[ca@valencia]=Qatar Name[cs]=Katar Name[da]=Qatar Name[de]=Katar diff -Nru calligra-2.3.86/flow/stencils/Flags/romania.desktop calligra-2.3.87/flow/stencils/Flags/romania.desktop --- calligra-2.3.86/flow/stencils/Flags/romania.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Flags/romania.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -2,6 +2,7 @@ Name=Romania Name[bg]=Румъния Name[ca]=Romania +Name[ca@valencia]=Romania Name[cs]=Rumunsko Name[da]=Rumænien Name[de]=Rumänien diff -Nru calligra-2.3.86/flow/stencils/Flags/russian_federation.desktop calligra-2.3.87/flow/stencils/Flags/russian_federation.desktop --- calligra-2.3.86/flow/stencils/Flags/russian_federation.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Flags/russian_federation.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -2,6 +2,7 @@ Name=Russian Federation Name[bg]=Руска федерация Name[ca]=Federació Russa +Name[ca@valencia]=Federació Russa Name[cs]=Ruská federace Name[da]=Russiske Føderation Name[de]=Russische Föderation diff -Nru calligra-2.3.86/flow/stencils/Flags/rwanda.desktop calligra-2.3.87/flow/stencils/Flags/rwanda.desktop --- calligra-2.3.86/flow/stencils/Flags/rwanda.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Flags/rwanda.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -2,6 +2,7 @@ Name=Rwanda Name[bg]=Руанда Name[ca]=Rwanda +Name[ca@valencia]=Rwanda Name[cs]=Rwanda Name[da]=Rwanda Name[de]=Ruanda @@ -10,6 +11,7 @@ Name[it]=Rwanda Name[nb]=Rwanda Name[nds]=Ruanda +Name[nl]=Rwanda Name[pl]=Ruanda Name[pt]=Ruanda Name[pt_BR]=Ruanda diff -Nru calligra-2.3.86/flow/stencils/Flags/saint_kitts_and_nevis.desktop calligra-2.3.87/flow/stencils/Flags/saint_kitts_and_nevis.desktop --- calligra-2.3.86/flow/stencils/Flags/saint_kitts_and_nevis.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Flags/saint_kitts_and_nevis.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -2,6 +2,7 @@ Name=Saint Kitts And Nevis Name[bg]=Сейнт Китс и Невис Name[ca]=Saint Kitts i Nevis +Name[ca@valencia]=Saint Kitts i Nevis Name[cs]=Svatý Kitts a Nevis Name[da]=Saint Kitts og Nevis Name[de]=St. Kitts und Nevis @@ -9,6 +10,7 @@ Name[it]=Saint Kitts e Nevis Name[nb]=St. Kitts og Nevis Name[nds]=St. Kitts un Nevis +Name[nl]=Saint Kitts en Nevis Name[pl]=St Kitts i Nevis Name[pt]=St. Kitts e Nevis Name[pt_BR]=São Cristóvão e Neves diff -Nru calligra-2.3.86/flow/stencils/Flags/saint_lucia.desktop calligra-2.3.87/flow/stencils/Flags/saint_lucia.desktop --- calligra-2.3.86/flow/stencils/Flags/saint_lucia.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Flags/saint_lucia.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -1,6 +1,7 @@ [Desktop Entry] Name=Saint Lucia Name[ca]=Saint Lucia +Name[ca@valencia]=Saint Lucia Name[cs]=Svatá Lucie Name[da]=Saint Lucia Name[de]=St. Lucia @@ -8,6 +9,7 @@ Name[it]=Santa Lucia Name[nb]=St. Lucia Name[nds]=St. Lucia +Name[nl]=Saint Lucia Name[pl]=Święta Lucia Name[pt]=Santa Lúcia Name[pt_BR]=Santa Lúcia diff -Nru calligra-2.3.86/flow/stencils/Flags/saint_vincent_and_the_grenadines.desktop calligra-2.3.87/flow/stencils/Flags/saint_vincent_and_the_grenadines.desktop --- calligra-2.3.86/flow/stencils/Flags/saint_vincent_and_the_grenadines.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Flags/saint_vincent_and_the_grenadines.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -2,6 +2,7 @@ Name=Saint Vincent And The Grenadines Name[bg]=Сейнт Винсент и Гренадини Name[ca]=Saint Vincent i les Grenadines +Name[ca@valencia]=Saint Vincent i les Grenadines Name[cs]=Svatý Vincent a Grenadine Name[da]=Saint Vincent og Grenadinerne Name[de]=St. Vincent und die Grenadinen @@ -9,6 +10,7 @@ Name[it]=Saint Vincent e Grenadine Name[nb]=St. Vincent og Grenadinene Name[nds]=St. Vincent un de Grenadinen +Name[nl]=Saint Vincent en de Grenadines Name[pl]=Saint Vincent i Grenady Name[pt]=São Vicente e Granadinas Name[pt_BR]=São Vicente e Granadinas diff -Nru calligra-2.3.86/flow/stencils/Flags/samoa.desktop calligra-2.3.87/flow/stencils/Flags/samoa.desktop --- calligra-2.3.86/flow/stencils/Flags/samoa.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Flags/samoa.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -2,6 +2,7 @@ Name=Samoa Name[bg]=Самоа Name[ca]=Samoa +Name[ca@valencia]=Samoa Name[cs]=Samoa Name[da]=Samoa Name[de]=Samoa diff -Nru calligra-2.3.86/flow/stencils/Flags/san_marino.desktop calligra-2.3.87/flow/stencils/Flags/san_marino.desktop --- calligra-2.3.86/flow/stencils/Flags/san_marino.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Flags/san_marino.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -2,6 +2,7 @@ Name=San Marino Name[bg]=Сан Марино Name[ca]=San Marino +Name[ca@valencia]=San Marino Name[cs]=San Marino Name[da]=San Marino Name[de]=San Marino diff -Nru calligra-2.3.86/flow/stencils/Flags/sao_tome_and_principe.desktop calligra-2.3.87/flow/stencils/Flags/sao_tome_and_principe.desktop --- calligra-2.3.86/flow/stencils/Flags/sao_tome_and_principe.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Flags/sao_tome_and_principe.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -2,6 +2,7 @@ Name=Sao Tome And Principe Name[bg]=Сан Томе и Принципи Name[ca]=São Tomé i Príncipe +Name[ca@valencia]=São Tomé i Príncipe Name[cs]=Ostrov Svatého Tomáše a Princův ostrov Name[da]=Sao Tome og Principe Name[de]=São Tomé und Príncipe @@ -9,6 +10,7 @@ Name[it]=Sao Tome e Principe Name[nb]=Sao Tome og Principe Name[nds]=Sao Tomee un Principe +Name[nl]=Sao Tome en Principe Name[pl]=Sao Tome i Principe Name[pt]=São Tomé and Príncipe Name[pt_BR]=São Tomé e Príncipe diff -Nru calligra-2.3.86/flow/stencils/Flags/saudi_arabia.desktop calligra-2.3.87/flow/stencils/Flags/saudi_arabia.desktop --- calligra-2.3.86/flow/stencils/Flags/saudi_arabia.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Flags/saudi_arabia.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -2,6 +2,7 @@ Name=Saudi Arabia Name[bg]=Саудитска Арабия Name[ca]=Aràbia Saudí +Name[ca@valencia]=Aràbia Saudí Name[cs]=Saúdská Arábie Name[da]=Saudi Arabien Name[de]=Saudi-Arabien @@ -10,6 +11,7 @@ Name[it]=Arabia Saudita Name[nb]=Saudi-Arabia Name[nds]=Saudi-Arabien +Name[nl]=Saoedi-Arabië Name[pl]=Arabia Saudyjska Name[pt]=Arábia Saudita Name[pt_BR]=Arábia Saudita diff -Nru calligra-2.3.86/flow/stencils/Flags/senegal.desktop calligra-2.3.87/flow/stencils/Flags/senegal.desktop --- calligra-2.3.86/flow/stencils/Flags/senegal.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Flags/senegal.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -2,6 +2,7 @@ Name=Senegal Name[bg]=Сенегал Name[ca]=Senegal +Name[ca@valencia]=Senegal Name[cs]=Senegal Name[da]=Senegal Name[de]=Senegal diff -Nru calligra-2.3.86/flow/stencils/Flags/serbia.desktop calligra-2.3.87/flow/stencils/Flags/serbia.desktop --- calligra-2.3.86/flow/stencils/Flags/serbia.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Flags/serbia.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -2,6 +2,7 @@ Name=Serbia Name[bg]=Сърбия Name[ca]=Sèrbia +Name[ca@valencia]=Sèrbia Name[cs]=Srbsko Name[da]=Serbien Name[de]=Serbien diff -Nru calligra-2.3.86/flow/stencils/Flags/seychelles.desktop calligra-2.3.87/flow/stencils/Flags/seychelles.desktop --- calligra-2.3.86/flow/stencils/Flags/seychelles.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Flags/seychelles.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -2,6 +2,7 @@ Name=Seychelles Name[bg]=Сейшели Name[ca]=Seychelles +Name[ca@valencia]=Seychelles Name[cs]=Seychelské ostrovy Name[da]=Seychellerne Name[de]=Seychellen diff -Nru calligra-2.3.86/flow/stencils/Flags/sierra_leone.desktop calligra-2.3.87/flow/stencils/Flags/sierra_leone.desktop --- calligra-2.3.86/flow/stencils/Flags/sierra_leone.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Flags/sierra_leone.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -2,6 +2,7 @@ Name=Sierra Leone Name[bg]=Сиера Леоне Name[ca]=Sierra Leone +Name[ca@valencia]=Sierra Leone Name[cs]=Sierra Leone Name[da]=Sierra Leone Name[de]=Sierra Leone @@ -10,6 +11,7 @@ Name[it]=Sierra Leone Name[nb]=Sierra Leone Name[nds]=Sierra Leone +Name[nl]=Sierra Leone Name[pl]=Sierra Leone Name[pt]=Serra Leoa Name[pt_BR]=Serra Leoa diff -Nru calligra-2.3.86/flow/stencils/Flags/singapore.desktop calligra-2.3.87/flow/stencils/Flags/singapore.desktop --- calligra-2.3.86/flow/stencils/Flags/singapore.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Flags/singapore.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -2,6 +2,7 @@ Name=Singapore Name[bg]=Сингапур Name[ca]=Singapur +Name[ca@valencia]=Singapur Name[cs]=Singapur Name[da]=Singapore Name[de]=Singapur diff -Nru calligra-2.3.86/flow/stencils/Flags/slovakia.desktop calligra-2.3.87/flow/stencils/Flags/slovakia.desktop --- calligra-2.3.86/flow/stencils/Flags/slovakia.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Flags/slovakia.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -2,6 +2,7 @@ Name=Slovakia Name[bg]=Словакия Name[ca]=Eslovàquia +Name[ca@valencia]=Eslovàquia Name[cs]=Slovensko Name[da]=Slovakiet Name[de]=Slowakei diff -Nru calligra-2.3.86/flow/stencils/Flags/slovenia.desktop calligra-2.3.87/flow/stencils/Flags/slovenia.desktop --- calligra-2.3.86/flow/stencils/Flags/slovenia.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Flags/slovenia.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -2,6 +2,7 @@ Name=Slovenia Name[bg]=Словения Name[ca]=Eslovènia +Name[ca@valencia]=Eslovènia Name[cs]=Slovinsko Name[da]=Slovenien Name[de]=Slowenien @@ -10,6 +11,7 @@ Name[it]=Slovenia Name[nb]=Slovenia Name[nds]=Slowenien +Name[nl]=Slovenië Name[pl]=Słowenia Name[pt]=Eslovénia Name[pt_BR]=Eslovênia diff -Nru calligra-2.3.86/flow/stencils/Flags/solomonislands.desktop calligra-2.3.87/flow/stencils/Flags/solomonislands.desktop --- calligra-2.3.86/flow/stencils/Flags/solomonislands.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Flags/solomonislands.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -2,6 +2,7 @@ Name=Solomonislands Name[bg]=Соломонови острови Name[ca]=Illes Salomó +Name[ca@valencia]=Illes Salomó Name[cs]=Šalamounovy ostrovy Name[da]=Solomonøerne Name[de]=Salomonen @@ -9,6 +10,7 @@ Name[it]=Isole Salomone Name[nb]=Salomonøyene Name[nds]=Salomonen +Name[nl]=Solomon eilanden Name[pl]=Wyspy Salomona Name[pt]=Ilhas Salomão Name[pt_BR]=Ilhas Salomão diff -Nru calligra-2.3.86/flow/stencils/Flags/somalia.desktop calligra-2.3.87/flow/stencils/Flags/somalia.desktop --- calligra-2.3.86/flow/stencils/Flags/somalia.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Flags/somalia.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -2,6 +2,7 @@ Name=Somalia Name[bg]=Сомалия Name[ca]=Somàlia +Name[ca@valencia]=Somàlia Name[cs]=Somálsko Name[da]=Somalia Name[de]=Somalia @@ -10,6 +11,7 @@ Name[it]=Somalia Name[nb]=Somalia Name[nds]=Somalien +Name[nl]=Somalië Name[pl]=Somalia Name[pt]=Somália Name[pt_BR]=Somália diff -Nru calligra-2.3.86/flow/stencils/Flags/south_africa.desktop calligra-2.3.87/flow/stencils/Flags/south_africa.desktop --- calligra-2.3.86/flow/stencils/Flags/south_africa.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Flags/south_africa.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -2,6 +2,7 @@ Name=South Africa Name[bg]=Южна Африка Name[ca]=Sudàfrica +Name[ca@valencia]=Sudàfrica Name[cs]=Jižní Afrika Name[da]=Sydafrika Name[de]=Südafrika diff -Nru calligra-2.3.86/flow/stencils/Flags/south_korea.desktop calligra-2.3.87/flow/stencils/Flags/south_korea.desktop --- calligra-2.3.86/flow/stencils/Flags/south_korea.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Flags/south_korea.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -2,6 +2,7 @@ Name=South Korea Name[bg]=Южна Корея Name[ca]=Corea del Sud +Name[ca@valencia]=Corea del Sud Name[cs]=Jižní Korea Name[da]=Sydkorea Name[de]=Südkorea diff -Nru calligra-2.3.86/flow/stencils/Flags/spain.desktop calligra-2.3.87/flow/stencils/Flags/spain.desktop --- calligra-2.3.86/flow/stencils/Flags/spain.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Flags/spain.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -2,6 +2,7 @@ Name=Spain Name[bg]=Испания Name[ca]=Espanya +Name[ca@valencia]=Espanya Name[cs]=Španělsko Name[da]=Spanien Name[de]=Spanien diff -Nru calligra-2.3.86/flow/stencils/Flags/sri_lanka.desktop calligra-2.3.87/flow/stencils/Flags/sri_lanka.desktop --- calligra-2.3.86/flow/stencils/Flags/sri_lanka.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Flags/sri_lanka.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -2,6 +2,7 @@ Name=Sri Lanka Name[bg]=Шри Ланка Name[ca]=Sri Lanka +Name[ca@valencia]=Sri Lanka Name[cs]=Srí Lanka Name[da]=Sri Lanka Name[de]=Sri Lanka @@ -10,6 +11,7 @@ Name[it]=Sri Lanka Name[nb]=Sri Lanka Name[nds]=Sri Lanka +Name[nl]=Sri Lanka Name[pl]=Sri Lanka Name[pt]=Sri Lanka Name[pt_BR]=Sri Lanka diff -Nru calligra-2.3.86/flow/stencils/Flags/sudan.desktop calligra-2.3.87/flow/stencils/Flags/sudan.desktop --- calligra-2.3.86/flow/stencils/Flags/sudan.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Flags/sudan.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -2,6 +2,7 @@ Name=Sudan Name[bg]=Судан Name[ca]=Sudan +Name[ca@valencia]=Sudan Name[cs]=Sudán Name[da]=Sudan Name[de]=Sudan @@ -9,6 +10,7 @@ Name[it]=Sudan Name[nb]=Sudan Name[nds]=Sudan +Name[nl]=Soedan Name[pl]=Sudan Name[pt]=Sudão Name[pt_BR]=Sudão diff -Nru calligra-2.3.86/flow/stencils/Flags/suisse.desktop calligra-2.3.87/flow/stencils/Flags/suisse.desktop --- calligra-2.3.86/flow/stencils/Flags/suisse.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Flags/suisse.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -2,6 +2,7 @@ Name=Suisse Name[bg]=Швейцария Name[ca]=Suïssa +Name[ca@valencia]=Suïssa Name[cs]=Švýcarsko Name[da]=Schweiz Name[de]=Schweiz @@ -9,6 +10,7 @@ Name[it]=Svizzera Name[nb]=Sveits Name[nds]=Swiez +Name[nl]=Zwitserland Name[pl]=Szwajcaria Name[pt]=Suíça Name[pt_BR]=Suíça diff -Nru calligra-2.3.86/flow/stencils/Flags/suriname.desktop calligra-2.3.87/flow/stencils/Flags/suriname.desktop --- calligra-2.3.86/flow/stencils/Flags/suriname.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Flags/suriname.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -2,6 +2,7 @@ Name=Suriname Name[bg]=Суринам Name[ca]=Surinam +Name[ca@valencia]=Surinam Name[cs]=Surinam Name[da]=Surinam Name[de]=Suriname diff -Nru calligra-2.3.86/flow/stencils/Flags/swaziland.desktop calligra-2.3.87/flow/stencils/Flags/swaziland.desktop --- calligra-2.3.86/flow/stencils/Flags/swaziland.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Flags/swaziland.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -2,6 +2,7 @@ Name=Swaziland Name[bg]=Свазиленд Name[ca]=Swazilàndia +Name[ca@valencia]=Swazilàndia Name[cs]=Swaziland Name[da]=Swaziland Name[de]=Swasiland diff -Nru calligra-2.3.86/flow/stencils/Flags/sweden.desktop calligra-2.3.87/flow/stencils/Flags/sweden.desktop --- calligra-2.3.86/flow/stencils/Flags/sweden.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Flags/sweden.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -2,6 +2,7 @@ Name=Sweden Name[bg]=Швеция Name[ca]=Suècia +Name[ca@valencia]=Suècia Name[cs]=Švédsko Name[da]=Sverige Name[de]=Schweden diff -Nru calligra-2.3.86/flow/stencils/Flags/syrian_arab_republic.desktop calligra-2.3.87/flow/stencils/Flags/syrian_arab_republic.desktop --- calligra-2.3.86/flow/stencils/Flags/syrian_arab_republic.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Flags/syrian_arab_republic.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -2,6 +2,7 @@ Name=Syrian Arab Republic Name[bg]=Сирийска Арабска Република Name[ca]=República Àrab Síria +Name[ca@valencia]=República Àrab Síria Name[cs]=Syrská arabská republika Name[da]=Syrien Name[de]=Arabische Republik Syrien @@ -9,6 +10,7 @@ Name[it]=Repubblica araba siriana Name[nb]=Syria Name[nds]=Araabsch Republiek Syrien +Name[nl]=Syrië, Arabische Republiek Name[pl]=Syryjska Republika Arabska Name[pt]=República Árabe da Síria Name[pt_BR]=República Árabe da Síria diff -Nru calligra-2.3.86/flow/stencils/Flags/tajikistan.desktop calligra-2.3.87/flow/stencils/Flags/tajikistan.desktop --- calligra-2.3.86/flow/stencils/Flags/tajikistan.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Flags/tajikistan.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -2,6 +2,7 @@ Name=Tajikistan Name[bg]=Таджикистан Name[ca]=Tadjikistan +Name[ca@valencia]=Tadjikistan Name[cs]=Tádžikistán Name[da]=Tajikistan Name[de]=Tadschikistan @@ -10,6 +11,7 @@ Name[it]=Tagikistan Name[nb]=Tadsjikistan Name[nds]=Tadschikistan +Name[nl]=Tadzjikistan Name[pl]=Tadżykistan Name[pt]=Tajiquistão Name[pt_BR]=Tadjiquistão diff -Nru calligra-2.3.86/flow/stencils/Flags/tanzania.desktop calligra-2.3.87/flow/stencils/Flags/tanzania.desktop --- calligra-2.3.86/flow/stencils/Flags/tanzania.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Flags/tanzania.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -2,6 +2,7 @@ Name=Tanzania Name[bg]=Танзания Name[ca]=Tanzània +Name[ca@valencia]=Tanzània Name[cs]=Tanzanie Name[da]=Tanzania Name[de]=Tansania @@ -9,6 +10,7 @@ Name[it]=Tanzania Name[nb]=Tanzania Name[nds]=Tansania +Name[nl]=Tanzania Name[pl]=Tanzania Name[pt]=Tanzânia Name[pt_BR]=Tanzânia diff -Nru calligra-2.3.86/flow/stencils/Flags/thailand.desktop calligra-2.3.87/flow/stencils/Flags/thailand.desktop --- calligra-2.3.86/flow/stencils/Flags/thailand.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Flags/thailand.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -2,6 +2,7 @@ Name=Thailand Name[bg]=Тайланд Name[ca]=Tailàndia +Name[ca@valencia]=Tailàndia Name[cs]=Thajsko Name[da]=Thailand Name[de]=Thailand diff -Nru calligra-2.3.86/flow/stencils/Flags/timor_leste.desktop calligra-2.3.87/flow/stencils/Flags/timor_leste.desktop --- calligra-2.3.86/flow/stencils/Flags/timor_leste.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Flags/timor_leste.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -1,6 +1,7 @@ [Desktop Entry] Name=Timor Leste Name[ca]=Timor Oriental +Name[ca@valencia]=Timor Oriental Name[cs]=Timor-Leste Name[da]=Timor-Leste Name[de]=Osttimor @@ -8,6 +9,7 @@ Name[it]=Timor Est Name[nb]=Timor-Leste Name[nds]=Oost-Timor +Name[nl]=Timor-Leste Name[pl]=Timor Wschodni Name[pt]=Timor-Leste Name[pt_BR]=Timor-Leste diff -Nru calligra-2.3.86/flow/stencils/Flags/togo.desktop calligra-2.3.87/flow/stencils/Flags/togo.desktop --- calligra-2.3.86/flow/stencils/Flags/togo.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Flags/togo.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -2,6 +2,7 @@ Name=Togo Name[bg]=Того Name[ca]=Togo +Name[ca@valencia]=Togo Name[cs]=Togo Name[da]=Togo Name[de]=Togo diff -Nru calligra-2.3.86/flow/stencils/Flags/tonga.desktop calligra-2.3.87/flow/stencils/Flags/tonga.desktop --- calligra-2.3.86/flow/stencils/Flags/tonga.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Flags/tonga.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -2,6 +2,7 @@ Name=Tonga Name[bg]=Тонга Name[ca]=Tonga +Name[ca@valencia]=Tonga Name[cs]=Tonga Name[da]=Tonga Name[de]=Tonga diff -Nru calligra-2.3.86/flow/stencils/Flags/trinidad_and_tobago.desktop calligra-2.3.87/flow/stencils/Flags/trinidad_and_tobago.desktop --- calligra-2.3.86/flow/stencils/Flags/trinidad_and_tobago.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Flags/trinidad_and_tobago.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -2,6 +2,7 @@ Name=Trinidad And Tobago Name[bg]=Тринидат и Тобаго Name[ca]=Trinitat i Tobago +Name[ca@valencia]=Trinitat i Tobago Name[cs]=Trinidad a Tobago Name[da]=Trinidad og Tobago Name[de]=Trinidad und Tobago diff -Nru calligra-2.3.86/flow/stencils/Flags/tunisia.desktop calligra-2.3.87/flow/stencils/Flags/tunisia.desktop --- calligra-2.3.86/flow/stencils/Flags/tunisia.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Flags/tunisia.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -2,6 +2,7 @@ Name=Tunisia Name[bg]=Тунис Name[ca]=Tunísia +Name[ca@valencia]=Tunísia Name[cs]=Tunisko Name[da]=Tunesien Name[de]=Tunesien @@ -10,6 +11,7 @@ Name[it]=Tunisia Name[nb]=Tunisia Name[nds]=Tunesien +Name[nl]=Tunesië Name[pl]=Tunezja Name[pt]=Tunísia Name[pt_BR]=Tunísia diff -Nru calligra-2.3.86/flow/stencils/Flags/turkey.desktop calligra-2.3.87/flow/stencils/Flags/turkey.desktop --- calligra-2.3.86/flow/stencils/Flags/turkey.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Flags/turkey.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -2,6 +2,7 @@ Name=Turkey Name[bg]=Турция Name[ca]=Turquia +Name[ca@valencia]=Turquia Name[cs]=Turecko Name[da]=Tyrkiet Name[de]=Türkei diff -Nru calligra-2.3.86/flow/stencils/Flags/turkmenistan.desktop calligra-2.3.87/flow/stencils/Flags/turkmenistan.desktop --- calligra-2.3.86/flow/stencils/Flags/turkmenistan.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Flags/turkmenistan.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -2,6 +2,7 @@ Name=Turkmenistan Name[bg]=Туркменистан Name[ca]=Turkmenistan +Name[ca@valencia]=Turkmenistan Name[cs]=Turkmenistán Name[da]=Turkmenistan Name[de]=Turkmenistan @@ -10,6 +11,7 @@ Name[it]=Turkmenistan Name[nb]=Turkmenistan Name[nds]=Turkmenistan +Name[nl]=Turkmenistan Name[pl]=Turkmenistan Name[pt]=Turquemenistão Name[pt_BR]=Turcomenistão diff -Nru calligra-2.3.86/flow/stencils/Flags/tuvalu.desktop calligra-2.3.87/flow/stencils/Flags/tuvalu.desktop --- calligra-2.3.86/flow/stencils/Flags/tuvalu.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Flags/tuvalu.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -2,6 +2,7 @@ Name=Tuvalu Name[bg]=Тувалу Name[ca]=Tuvalu +Name[ca@valencia]=Tuvalu Name[cs]=Tuvalu Name[da]=Tuvalu Name[de]=Tuvalu diff -Nru calligra-2.3.86/flow/stencils/Flags/uganda.desktop calligra-2.3.87/flow/stencils/Flags/uganda.desktop --- calligra-2.3.86/flow/stencils/Flags/uganda.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Flags/uganda.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -2,6 +2,7 @@ Name=Uganda Name[bg]=Уганда Name[ca]=Uganda +Name[ca@valencia]=Uganda Name[cs]=Uganda Name[da]=Uganda Name[de]=Uganda @@ -10,6 +11,7 @@ Name[it]=Uganda Name[nb]=Uganda Name[nds]=Uganda +Name[nl]=Oeganda Name[pl]=Uganda Name[pt]=Uganda Name[pt_BR]=Uganda diff -Nru calligra-2.3.86/flow/stencils/Flags/ukraine.desktop calligra-2.3.87/flow/stencils/Flags/ukraine.desktop --- calligra-2.3.86/flow/stencils/Flags/ukraine.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Flags/ukraine.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -2,6 +2,7 @@ Name=Ukraine Name[bg]=Украйна Name[ca]=Ucraïna +Name[ca@valencia]=Ucraïna Name[cs]=Ukrajina Name[da]=Ukraine Name[de]=Ukraine diff -Nru calligra-2.3.86/flow/stencils/Flags/unesco.desktop calligra-2.3.87/flow/stencils/Flags/unesco.desktop --- calligra-2.3.86/flow/stencils/Flags/unesco.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Flags/unesco.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -2,6 +2,7 @@ Name=UNESCO Name[bg]=ЮНЕСКО Name[ca]=UNESCO +Name[ca@valencia]=UNESCO Name[cs]=UNESCO Name[da]=UNESCO Name[de]=UNESCO @@ -9,6 +10,7 @@ Name[it]=UNESCO Name[nb]=UNESCO Name[nds]=UNESCO +Name[nl]=UNESCO Name[pl]=UNESCO Name[pt]=UNESCO Name[pt_BR]=UNESCO diff -Nru calligra-2.3.86/flow/stencils/Flags/unicef.desktop calligra-2.3.87/flow/stencils/Flags/unicef.desktop --- calligra-2.3.86/flow/stencils/Flags/unicef.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Flags/unicef.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -2,6 +2,7 @@ Name=UNICEF Name[bg]=УНИЦЕФ Name[ca]=UNICEF +Name[ca@valencia]=UNICEF Name[cs]=UNICEF Name[da]=UNICEF Name[de]=UNICEF @@ -9,6 +10,7 @@ Name[it]=UNICEF Name[nb]=UNICEF Name[nds]=UNICEF +Name[nl]=UNICEF Name[pl]=UNICEF Name[pt]=UNICEF Name[pt_BR]=UNICEF diff -Nru calligra-2.3.86/flow/stencils/Flags/united_arab_emirates.desktop calligra-2.3.87/flow/stencils/Flags/united_arab_emirates.desktop --- calligra-2.3.86/flow/stencils/Flags/united_arab_emirates.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Flags/united_arab_emirates.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -2,6 +2,7 @@ Name=United Arab Emirates Name[bg]=Обединени Арабски Емирства Name[ca]=Emirats Àrabs Units +Name[ca@valencia]=Emirats Àrabs Units Name[cs]=Spojené arabské emiráty Name[da]=Forenende Arabiske Emirater Name[de]=Vereinigte Arabische Emirate @@ -10,6 +11,7 @@ Name[it]=Emirati Arabi Uniti Name[nb]=De forente arabiske emirater Name[nds]=Vereenigte Araabsche Emiraten +Name[nl]=Verenigde Arabische Emiraten Name[pl]=Zjednoczone Emiraty Arabskie Name[pt]=Emiratos Árabes Unidos Name[pt_BR]=Emirados Árabes Unidos diff -Nru calligra-2.3.86/flow/stencils/Flags/united_kingdom.desktop calligra-2.3.87/flow/stencils/Flags/united_kingdom.desktop --- calligra-2.3.86/flow/stencils/Flags/united_kingdom.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Flags/united_kingdom.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -2,6 +2,7 @@ Name=United Kingdom Name[bg]=Великобритания Name[ca]=Regne Unit +Name[ca@valencia]=Regne Unit Name[cs]=Spojené království Name[da]=Storbritannien Name[de]=Vereinigtes Königreich @@ -10,6 +11,7 @@ Name[it]=Regno Unito Name[nb]=Storbritannia Name[nds]=Grootbritannien +Name[nl]=Verenigd Koninkrijk Name[pl]=Wielka Brytania Name[pt]=Reino Unido Name[pt_BR]=Reino Unido diff -Nru calligra-2.3.86/flow/stencils/Flags/unitednations.desktop calligra-2.3.87/flow/stencils/Flags/unitednations.desktop --- calligra-2.3.86/flow/stencils/Flags/unitednations.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Flags/unitednations.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -2,6 +2,7 @@ Name=United Nations Name[bg]=Обединени нации Name[ca]=Nacions Unides +Name[ca@valencia]=Nacions Unides Name[cs]=Spojené národy Name[da]=Forenede Nationer Name[de]=Vereinte Nationen diff -Nru calligra-2.3.86/flow/stencils/Flags/united_states.desktop calligra-2.3.87/flow/stencils/Flags/united_states.desktop --- calligra-2.3.86/flow/stencils/Flags/united_states.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Flags/united_states.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -2,6 +2,7 @@ Name=United States Name[bg]=САЩ Name[ca]=Estats Units +Name[ca@valencia]=Estats Units Name[cs]=Spojené státy Name[da]=USA Name[de]=Vereinigte Staaten diff -Nru calligra-2.3.86/flow/stencils/Flags/uruguay.desktop calligra-2.3.87/flow/stencils/Flags/uruguay.desktop --- calligra-2.3.86/flow/stencils/Flags/uruguay.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Flags/uruguay.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -2,6 +2,7 @@ Name=Uruguay Name[bg]=Уругвай Name[ca]=Uruguai +Name[ca@valencia]=Uruguai Name[cs]=Uruguay Name[da]=Uruguay Name[de]=Uruguay diff -Nru calligra-2.3.86/flow/stencils/Flags/uzbekistan.desktop calligra-2.3.87/flow/stencils/Flags/uzbekistan.desktop --- calligra-2.3.86/flow/stencils/Flags/uzbekistan.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Flags/uzbekistan.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -2,6 +2,7 @@ Name=Uzbekistan Name[bg]=Узбекистан Name[ca]=Uzbekistan +Name[ca@valencia]=Uzbekistan Name[cs]=Uzbekistán Name[da]=Usbekistan Name[de]=Usbekistan @@ -10,6 +11,7 @@ Name[it]=Uzbekistan Name[nb]=Usbekistan Name[nds]=Usbekistan +Name[nl]=Oezbekistan Name[pl]=Uzbekistan Name[pt]=Uzbequistão Name[pt_BR]=Uzbequistão diff -Nru calligra-2.3.86/flow/stencils/Flags/vanuatu.desktop calligra-2.3.87/flow/stencils/Flags/vanuatu.desktop --- calligra-2.3.86/flow/stencils/Flags/vanuatu.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Flags/vanuatu.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -2,6 +2,7 @@ Name=Vanuatu Name[bg]=Вануату Name[ca]=Vanuatu +Name[ca@valencia]=Vanuatu Name[cs]=Vanuatu Name[da]=Vanuatu Name[de]=Vanuatu diff -Nru calligra-2.3.86/flow/stencils/Flags/vatican.desktop calligra-2.3.87/flow/stencils/Flags/vatican.desktop --- calligra-2.3.86/flow/stencils/Flags/vatican.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Flags/vatican.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -2,6 +2,7 @@ Name=Vatican Name[bg]=Ватикана Name[ca]=Vaticà +Name[ca@valencia]=Vaticà Name[cs]=Vatikán Name[da]=Vatikanstaten Name[de]=Vatikan @@ -9,6 +10,7 @@ Name[it]=Vaticano Name[nb]=Vatikanstaten Name[nds]=Vatikaan +Name[nl]=Vaticaan Name[pl]=Watykan Name[pt]=Vaticano Name[pt_BR]=Vaticano diff -Nru calligra-2.3.86/flow/stencils/Flags/venezuela.desktop calligra-2.3.87/flow/stencils/Flags/venezuela.desktop --- calligra-2.3.86/flow/stencils/Flags/venezuela.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Flags/venezuela.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -2,6 +2,7 @@ Name=Venezuela Name[bg]=Венецуела Name[ca]=Veneçuela +Name[ca@valencia]=Veneçuela Name[cs]=Venezuela Name[da]=Venezuela Name[de]=Venezuela diff -Nru calligra-2.3.86/flow/stencils/Flags/vietnam.desktop calligra-2.3.87/flow/stencils/Flags/vietnam.desktop --- calligra-2.3.86/flow/stencils/Flags/vietnam.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Flags/vietnam.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -2,6 +2,7 @@ Name=Vietnam Name[bg]=Виетнам Name[ca]=Vietnam +Name[ca@valencia]=Vietnam Name[cs]=Panenské ostrovy, U.K. Name[da]=Vietnam Name[de]=Vietnam @@ -10,6 +11,7 @@ Name[it]=Vietnam Name[nb]=Vietnam Name[nds]=Vietnam +Name[nl]=Vietnam Name[pl]=Wietnam Name[pt]=Vietname Name[pt_BR]=Vietnã diff -Nru calligra-2.3.86/flow/stencils/Flags/wake_island.desktop calligra-2.3.87/flow/stencils/Flags/wake_island.desktop --- calligra-2.3.86/flow/stencils/Flags/wake_island.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Flags/wake_island.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -2,12 +2,14 @@ Name=Wake Island Name[bg]=о-в Уейк Name[ca]=Illa Wake +Name[ca@valencia]=Illa Wake Name[cs]=Ostrov Wake Name[da]=Wake-øen Name[et]=Wake'i saar Name[it]=Isola di Wake Name[nb]=Wake Island Name[nds]=Wake-Eiland +Name[nl]=Wake eiland Name[pl]=Wake Island Name[pt]=Ilhas Wake Name[pt_BR]=Ilhas Wake diff -Nru calligra-2.3.86/flow/stencils/Flags/western_sahara.desktop calligra-2.3.87/flow/stencils/Flags/western_sahara.desktop --- calligra-2.3.86/flow/stencils/Flags/western_sahara.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Flags/western_sahara.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -2,6 +2,7 @@ Name=Western Sahara Name[bg]=Западна Сахара Name[ca]=Sàhara Occidental +Name[ca@valencia]=Sàhara Occidental Name[cs]=Západní Sahara Name[da]=Vestsahara Name[de]=Westsahara @@ -10,6 +11,7 @@ Name[it]=Sahara occidentale Name[nb]=Vest-Sahara Name[nds]=Westsahara +Name[nl]=West-Sahara Name[pl]=Zachodnia Sahara Name[pt]=Sara Ocidental Name[pt_BR]=Saara Ocidental diff -Nru calligra-2.3.86/flow/stencils/Flags/who.desktop calligra-2.3.87/flow/stencils/Flags/who.desktop --- calligra-2.3.86/flow/stencils/Flags/who.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Flags/who.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -1,6 +1,7 @@ [Desktop Entry] Name=WHO Name[ca]=WHO +Name[ca@valencia]=WHO Name[cs]=WHO Name[da]=WHO Name[de]=WHO @@ -8,6 +9,7 @@ Name[it]=WHO Name[nb]=WHO Name[nds]=WHO +Name[nl]=WHO Name[pl]=WHO Name[pt]=WHO Name[pt_BR]=WHO diff -Nru calligra-2.3.86/flow/stencils/Flags/yemen.desktop calligra-2.3.87/flow/stencils/Flags/yemen.desktop --- calligra-2.3.86/flow/stencils/Flags/yemen.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Flags/yemen.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -2,6 +2,7 @@ Name=Yemen Name[bg]=Йемен Name[ca]=Yemen +Name[ca@valencia]=Yemen Name[cs]=Jemen Name[da]=Yemen Name[de]=Jemen diff -Nru calligra-2.3.86/flow/stencils/Flags/zambia.desktop calligra-2.3.87/flow/stencils/Flags/zambia.desktop --- calligra-2.3.86/flow/stencils/Flags/zambia.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Flags/zambia.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -2,6 +2,7 @@ Name=Zambia Name[bg]=Замбия Name[ca]=Zàmbia +Name[ca@valencia]=Zàmbia Name[cs]=Zambie Name[da]=Zambia Name[de]=Sambia diff -Nru calligra-2.3.86/flow/stencils/Flags/zimbabwe.desktop calligra-2.3.87/flow/stencils/Flags/zimbabwe.desktop --- calligra-2.3.86/flow/stencils/Flags/zimbabwe.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Flags/zimbabwe.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -2,6 +2,7 @@ Name=Zimbabwe Name[bg]=Зимбабве Name[ca]=Zimbabwe +Name[ca@valencia]=Zimbabwe Name[cs]=Zimbabwe Name[da]=Zimbabwe Name[de]=Simbabwe diff -Nru calligra-2.3.86/flow/stencils/Flowchart/collate.desktop calligra-2.3.87/flow/stencils/Flowchart/collate.desktop --- calligra-2.3.86/flow/stencils/Flowchart/collate.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Flowchart/collate.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -2,6 +2,7 @@ Name=Collate Name[bg]=Залепване Name[ca]=Compara +Name[ca@valencia]=Compara Name[cs]=Uspořádat Name[da]=Sætvis Name[et]=Koostamine diff -Nru calligra-2.3.86/flow/stencils/Flowchart/collection.desktop calligra-2.3.87/flow/stencils/Flowchart/collection.desktop --- calligra-2.3.86/flow/stencils/Flowchart/collection.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Flowchart/collection.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -1,6 +1,7 @@ [Desktop Entry] Name=Flowchart Name[ca]=Diagrama de flux +Name[ca@valencia]=Diagrama de flux Name[cs]=Diagram Name[da]=Rutediagram Name[de]=Flussdiagramm diff -Nru calligra-2.3.86/flow/stencils/Flowchart/datasource.desktop calligra-2.3.87/flow/stencils/Flowchart/datasource.desktop --- calligra-2.3.86/flow/stencils/Flowchart/datasource.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Flowchart/datasource.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -2,6 +2,7 @@ Name=Data Source Name[bg]=Източник на данни Name[ca]=Font de dades +Name[ca@valencia]=Font de dades Name[cs]=Zdroj dat Name[da]=Datakilde Name[de]=Datenquelle diff -Nru calligra-2.3.86/flow/stencils/Flowchart/delay.desktop calligra-2.3.87/flow/stencils/Flowchart/delay.desktop --- calligra-2.3.86/flow/stencils/Flowchart/delay.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Flowchart/delay.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -2,6 +2,7 @@ Name=Delay Name[bg]=Изчакване Name[ca]=Retard +Name[ca@valencia]=Retard Name[cs]=Prodleva Name[da]=Forsinkelse Name[el]=Καθυστέρηση diff -Nru calligra-2.3.86/flow/stencils/Flowchart/display.desktop calligra-2.3.87/flow/stencils/Flowchart/display.desktop --- calligra-2.3.86/flow/stencils/Flowchart/display.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Flowchart/display.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -1,6 +1,7 @@ [Desktop Entry] Name=Display Name[ca]=Mostra +Name[ca@valencia]=Mostra Name[cs]=Zobrazení Name[da]=Vis Name[et]=Kuvamine diff -Nru calligra-2.3.86/flow/stencils/Flowchart/document.desktop calligra-2.3.87/flow/stencils/Flowchart/document.desktop --- calligra-2.3.86/flow/stencils/Flowchart/document.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Flowchart/document.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -2,6 +2,7 @@ Name=Document Name[bg]=Документ Name[ca]=Document +Name[ca@valencia]=Document Name[cs]=Dokument Name[da]=Dokument Name[de]=Dokument diff -Nru calligra-2.3.86/flow/stencils/Flowchart/extract.desktop calligra-2.3.87/flow/stencils/Flowchart/extract.desktop --- calligra-2.3.86/flow/stencils/Flowchart/extract.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Flowchart/extract.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -1,6 +1,7 @@ [Desktop Entry] Name=Extract Name[ca]=Extreu +Name[ca@valencia]=Extreu Name[cs]=Rozbalit Name[da]=Pak ud Name[el]=Εξαγωγή diff -Nru calligra-2.3.86/flow/stencils/Flowchart/intstorage.desktop calligra-2.3.87/flow/stencils/Flowchart/intstorage.desktop --- calligra-2.3.86/flow/stencils/Flowchart/intstorage.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Flowchart/intstorage.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -2,6 +2,7 @@ Name=Internal Storage Name[bg]=Вътрешно хранилище Name[ca]=Emmagatzement intern +Name[ca@valencia]=Emmagatzement intern Name[cs]=Interní úložiště Name[da]=Intern opbevaring Name[de]=Interner Speicher diff -Nru calligra-2.3.86/flow/stencils/Flowchart/magdisk.desktop calligra-2.3.87/flow/stencils/Flowchart/magdisk.desktop --- calligra-2.3.86/flow/stencils/Flowchart/magdisk.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Flowchart/magdisk.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -2,6 +2,7 @@ Name=Magnetic Disk Name[bg]=Магнитен диск Name[ca]=Disc magnètic +Name[ca@valencia]=Disc magnètic Name[el]=Μαγνητικός δίσκος Name[es]=Disco magnético Name[et]=Magnetketas diff -Nru calligra-2.3.86/flow/stencils/Flowchart/magdrum.desktop calligra-2.3.87/flow/stencils/Flowchart/magdrum.desktop --- calligra-2.3.86/flow/stencils/Flowchart/magdrum.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Flowchart/magdrum.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -2,6 +2,7 @@ Name=Magnetic Drum Name[bg]=Магнитен барабан Name[ca]=Tambor magnètic +Name[ca@valencia]=Tambor magnètic Name[el]=Μαγνητικό τύμπανο Name[et]=Magnetsalvesti Name[it]=Tamburo magnetico diff -Nru calligra-2.3.86/flow/stencils/Flowchart/magtape.desktop calligra-2.3.87/flow/stencils/Flowchart/magtape.desktop --- calligra-2.3.86/flow/stencils/Flowchart/magtape.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Flowchart/magtape.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -2,6 +2,7 @@ Name=Magnetic Tape Name[bg]=Магнитна лента Name[ca]=Cinta magnètica +Name[ca@valencia]=Cinta magnètica Name[de]=Magnetband Name[el]=Μαγνητική ταινία Name[et]=Magnetlint diff -Nru calligra-2.3.86/flow/stencils/Flowchart/manualinput.desktop calligra-2.3.87/flow/stencils/Flowchart/manualinput.desktop --- calligra-2.3.86/flow/stencils/Flowchart/manualinput.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Flowchart/manualinput.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -2,6 +2,7 @@ Name=Manual Input Name[bg]=Ръчно въвеждане Name[ca]=Introducció manual +Name[ca@valencia]=Introducció manual Name[el]=Χειροκίνητη είσοδος Name[es]=Entrada manual Name[et]=Käsitsisisestus diff -Nru calligra-2.3.86/flow/stencils/Flowchart/manualop.desktop calligra-2.3.87/flow/stencils/Flowchart/manualop.desktop --- calligra-2.3.86/flow/stencils/Flowchart/manualop.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Flowchart/manualop.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -2,6 +2,7 @@ Name=Manual Operation Name[bg]=Ръчна операция Name[ca]=Operació manual +Name[ca@valencia]=Operació manual Name[el]=Χειροκίνητη λειτουργία Name[es]=Operación manual Name[et]=Käsitsi toiming diff -Nru calligra-2.3.86/flow/stencils/Flowchart/merge.desktop calligra-2.3.87/flow/stencils/Flowchart/merge.desktop --- calligra-2.3.86/flow/stencils/Flowchart/merge.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Flowchart/merge.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -2,6 +2,7 @@ Name=Merge Name[bg]=Сливане Name[ca]=Fusiona +Name[ca@valencia]=Fusiona Name[cs]=Sloučit Name[el]=Συγχώνευση Name[et]=Ühendamine diff -Nru calligra-2.3.86/flow/stencils/Flowchart/offlinestore.desktop calligra-2.3.87/flow/stencils/Flowchart/offlinestore.desktop --- calligra-2.3.86/flow/stencils/Flowchart/offlinestore.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Flowchart/offlinestore.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -1,6 +1,7 @@ [Desktop Entry] Name=Offline Storage Name[ca]=Emmagatzemament fora de línia +Name[ca@valencia]=Emmagatzemament fora de línia Name[el]=Αποθήκη εκτός σύνδεσης Name[et]=Autonoomne salvesti Name[it]=Memorizzazione non in linea diff -Nru calligra-2.3.86/flow/stencils/Flowchart/offpageconn.desktop calligra-2.3.87/flow/stencils/Flowchart/offpageconn.desktop --- calligra-2.3.86/flow/stencils/Flowchart/offpageconn.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Flowchart/offpageconn.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -1,6 +1,7 @@ [Desktop Entry] Name=Off Page Connector Name[ca]=Connector fora de pàgina +Name[ca@valencia]=Connector fora de pàgina Name[et]=Jätkumine väljaspool lehte Name[it]=Connettore fuori pagina Name[nb]=Tilkobling utenfor siden diff -Nru calligra-2.3.86/flow/stencils/Flowchart/or.desktop calligra-2.3.87/flow/stencils/Flowchart/or.desktop --- calligra-2.3.86/flow/stencils/Flowchart/or.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Flowchart/or.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -2,6 +2,7 @@ Name=Or Name[bg]=Или Name[ca]=O +Name[ca@valencia]=O Name[cs]=Nebo Name[de]=Oder Name[el]=Or diff -Nru calligra-2.3.86/flow/stencils/Flowchart/predefdproc.desktop calligra-2.3.87/flow/stencils/Flowchart/predefdproc.desktop --- calligra-2.3.86/flow/stencils/Flowchart/predefdproc.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Flowchart/predefdproc.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -2,6 +2,7 @@ Name=Predefined Process Name[bg]=Предефиниран процес Name[ca]=Procéss predefinit +Name[ca@valencia]=Procéss predefinit Name[de]=Vordefinierter Prozess Name[el]=Προκαθορισμένη διαδικασία Name[es]=Proceso predefinido diff -Nru calligra-2.3.86/flow/stencils/Flowchart/preparation.desktop calligra-2.3.87/flow/stencils/Flowchart/preparation.desktop --- calligra-2.3.86/flow/stencils/Flowchart/preparation.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Flowchart/preparation.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -2,6 +2,7 @@ Name=Preparation Name[bg]=Подготовка Name[ca]=Preparació +Name[ca@valencia]=Preparació Name[cs]=Příprava Name[el]=Προετοιμασία Name[es]=Preparación diff -Nru calligra-2.3.86/flow/stencils/Flowchart/punchedcard.desktop calligra-2.3.87/flow/stencils/Flowchart/punchedcard.desktop --- calligra-2.3.86/flow/stencils/Flowchart/punchedcard.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Flowchart/punchedcard.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -2,6 +2,7 @@ Name=Punched Card Name[bg]=Перфокарта Name[ca]=Targeta perforada +Name[ca@valencia]=Targeta perforada Name[el]=Διάτρητη κάρτα Name[et]=Perfokaart Name[it]=Scheda perforata diff -Nru calligra-2.3.86/flow/stencils/Flowchart/punchedtape.desktop calligra-2.3.87/flow/stencils/Flowchart/punchedtape.desktop --- calligra-2.3.86/flow/stencils/Flowchart/punchedtape.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Flowchart/punchedtape.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -2,10 +2,12 @@ Name=Punched Tape Name[bg]=Перфолента Name[ca]=Cinta perforada +Name[ca@valencia]=Cinta perforada Name[el]=Διάτρητη ταινία Name[et]=Perfolint Name[it]=Nastro perforato Name[nb]=Hullbånd +Name[nl]=Ponsband Name[pl]=Taśma perforowana Name[pt]=Fita Perfurada Name[pt_BR]=Fita perfurada diff -Nru calligra-2.3.86/flow/stencils/Flowchart/sort.desktop calligra-2.3.87/flow/stencils/Flowchart/sort.desktop --- calligra-2.3.86/flow/stencils/Flowchart/sort.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Flowchart/sort.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -1,6 +1,7 @@ [Desktop Entry] Name=Sort Name[ca]=Ordena +Name[ca@valencia]=Ordena Name[cs]=Třídit Name[el]=Ταξινόμηση Name[et]=Sortimine diff -Nru calligra-2.3.86/flow/stencils/Flowchart/sumjunction.desktop calligra-2.3.87/flow/stencils/Flowchart/sumjunction.desktop --- calligra-2.3.86/flow/stencils/Flowchart/sumjunction.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Flowchart/sumjunction.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -1,9 +1,11 @@ [Desktop Entry] Name=Summing Junction Name[ca]=Junta de suma +Name[ca@valencia]=Junta de suma Name[et]=Koondamine Name[it]=Giunto di somma Name[nb]=Summeringskryssing +Name[nl]=Optelknooppunt Name[pl]=Połączenie sumujące Name[pt]=Junção de Soma Name[pt_BR]=Junção de soma diff -Nru calligra-2.3.86/flow/stencils/Flowchart/terminal.desktop calligra-2.3.87/flow/stencils/Flowchart/terminal.desktop --- calligra-2.3.86/flow/stencils/Flowchart/terminal.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Flowchart/terminal.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -2,6 +2,7 @@ Name=Terminal Name[bg]=Терминал Name[ca]=Terminal +Name[ca@valencia]=Terminal Name[cs]=Terminál Name[de]=Terminal Name[el]=Τερματικό @@ -9,6 +10,7 @@ Name[et]=Terminal Name[ga]=Teirminéal Name[it]=Terminale +Name[kk]=Терминал Name[nb]=Terminal Name[nl]=Terminal Name[pl]=Terminal diff -Nru calligra-2.3.86/flow/stencils/Flowchart/transaction.desktop calligra-2.3.87/flow/stencils/Flowchart/transaction.desktop --- calligra-2.3.86/flow/stencils/Flowchart/transaction.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Flowchart/transaction.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -1,6 +1,7 @@ [Desktop Entry] Name=Transaction File Name[ca]=Fitxer de transacció +Name[ca@valencia]=Fitxer de transacció Name[et]=Osafail Name[it]=File di transazione Name[nb]=Transaksjonsfil diff -Nru calligra-2.3.86/flow/stencils/Flowchart/transmittape.desktop calligra-2.3.87/flow/stencils/Flowchart/transmittape.desktop --- calligra-2.3.86/flow/stencils/Flowchart/transmittape.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Flowchart/transmittape.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -1,6 +1,7 @@ [Desktop Entry] Name=Transmittal Tape Name[ca]=Cinta transmital +Name[ca@valencia]=Cinta transmital Name[et]=Kontrollkokkuvõte Name[it]=Nastro di trasmissione Name[nb]=Overføringstape diff -Nru calligra-2.3.86/flow/stencils/Gane_and_Sarson/alt-entity.desktop calligra-2.3.87/flow/stencils/Gane_and_Sarson/alt-entity.desktop --- calligra-2.3.86/flow/stencils/Gane_and_Sarson/alt-entity.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Gane_and_Sarson/alt-entity.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -1,9 +1,11 @@ [Desktop Entry] Name=Alternative External Entity Name[ca]=Entitat externa alternativa +Name[ca@valencia]=Entitat externa alternativa Name[et]=Alternatiivne väline olem Name[it]=Entità esterna alternativa Name[nb]=Alternativ ekstern enhet +Name[nl]=Alternatieve externe entiteit Name[pl]=Alternatywny zewnętrzny podmiot Name[pt]=Entidade Externa Alternativa Name[pt_BR]=Entidade externa alternativa diff -Nru calligra-2.3.86/flow/stencils/Gane_and_Sarson/collection.desktop calligra-2.3.87/flow/stencils/Gane_and_Sarson/collection.desktop --- calligra-2.3.86/flow/stencils/Gane_and_Sarson/collection.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Gane_and_Sarson/collection.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -1,10 +1,12 @@ [Desktop Entry] Name=Gane and Sarson Name[ca]=Gane and Sarson +Name[ca@valencia]=Gane and Sarson Name[el]=Gane and Sarson Name[et]=Gane ja Sarson Name[it]=Gane e Sarson Name[nb]=Gane and Sarson +Name[nl]=Gane en Sarson Name[pl]=Gane i Sarson Name[pt]=Gane e Sarson Name[pt_BR]=Gane e Sarson diff -Nru calligra-2.3.86/flow/stencils/Gane_and_Sarson/data_store.desktop calligra-2.3.87/flow/stencils/Gane_and_Sarson/data_store.desktop --- calligra-2.3.86/flow/stencils/Gane_and_Sarson/data_store.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Gane_and_Sarson/data_store.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -2,6 +2,7 @@ Name=Data Store Name[bg]=Хранилище на данни Name[ca]=Magatzem de dades +Name[ca@valencia]=Magatzem de dades Name[cs]=Datové úložiště Name[de]=Datenspeicher Name[el]=Αποθήκη δεδομένων diff -Nru calligra-2.3.86/flow/stencils/Gane_and_Sarson/entity.desktop calligra-2.3.87/flow/stencils/Gane_and_Sarson/entity.desktop --- calligra-2.3.86/flow/stencils/Gane_and_Sarson/entity.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Gane_and_Sarson/entity.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -1,6 +1,7 @@ [Desktop Entry] Name=External Entity Name[ca]=Entitat externa +Name[ca@valencia]=Entitat externa Name[el]=Εξωτερική οντότητα Name[et]=Väline olem Name[it]=Entità esterna diff -Nru calligra-2.3.86/flow/stencils/Gane_and_Sarson/process.desktop calligra-2.3.87/flow/stencils/Gane_and_Sarson/process.desktop --- calligra-2.3.86/flow/stencils/Gane_and_Sarson/process.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Gane_and_Sarson/process.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -2,6 +2,7 @@ Name=Process Name[bg]=Процес Name[ca]=Procés +Name[ca@valencia]=Procés Name[cs]=Proces Name[de]=Prozess Name[el]=Διεργασία diff -Nru calligra-2.3.86/flow/stencils/Gradient/collection.desktop calligra-2.3.87/flow/stencils/Gradient/collection.desktop --- calligra-2.3.86/flow/stencils/Gradient/collection.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Gradient/collection.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -2,6 +2,7 @@ Name=Gradient Name[bg]=Преливка Name[ca]=Gradient +Name[ca@valencia]=Gradient Name[cs]=Přechod Name[de]=Farbverlauf Name[el]=Διαβάθμιση @@ -9,6 +10,7 @@ Name[et]=Üleminekud Name[it]=Sfumatura Name[nb]=Toning +Name[nl]=Kleurverloop Name[pl]=Gradient Name[pt]=Gradiente Name[pt_BR]=Gradiente diff -Nru calligra-2.3.86/flow/stencils/Gradient/dark_light_horizontal_gradient_box.desktop calligra-2.3.87/flow/stencils/Gradient/dark_light_horizontal_gradient_box.desktop --- calligra-2.3.86/flow/stencils/Gradient/dark_light_horizontal_gradient_box.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Gradient/dark_light_horizontal_gradient_box.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -1,10 +1,12 @@ [Desktop Entry] Name=Dark-light horizontal gradient box Name[ca]=Caixa de gradient horitzontal fosc-clar +Name[ca@valencia]=Caixa de gradient horitzontal fosc-clar Name[el]=Πλαίσιο οριζόντιας διαβάθμισης σκούρο-φωτεινό Name[et]=Tume-hele rõhtne üleminek raamis Name[it]=Riquadro gradiente orizzontale scuro-chiaro Name[nb]=Mørk-lys vannrett toningsboks +Name[nl]=Donker-licht horizontaal verloopvlak Name[pl]=Ciemno-jasne poziome pole gradientu Name[pt]=Caixa gradiente horizontal escuro-claro Name[pt_BR]=Caixa gradiente horizontal escuro-claro diff -Nru calligra-2.3.86/flow/stencils/Gradient/dark_light_horizontal_gradient.desktop calligra-2.3.87/flow/stencils/Gradient/dark_light_horizontal_gradient.desktop --- calligra-2.3.86/flow/stencils/Gradient/dark_light_horizontal_gradient.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Gradient/dark_light_horizontal_gradient.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -1,10 +1,12 @@ [Desktop Entry] Name=Dark-light horizontal gradient Name[ca]=gradient horitzontal fosc-clar +Name[ca@valencia]=gradient horitzontal fosc-clar Name[el]=Οριζόντια διαβάθμιση σκούρο-φωτεινό Name[et]=Tume-hele rõhtne üleminek Name[it]=Gradiente orizzontale scuro-chiaro Name[nb]=Mørk-lys vannrett toning +Name[nl]=Donker-licht horizontale kleurverloop Name[pl]=Ciemno-jasny poziomy gradient Name[pt]=Gradiente horizontal escuro-claro Name[pt_BR]=Gradiente horizontal escuro-claro diff -Nru calligra-2.3.86/flow/stencils/Gradient/dark_light_vertical_gradient_box.desktop calligra-2.3.87/flow/stencils/Gradient/dark_light_vertical_gradient_box.desktop --- calligra-2.3.86/flow/stencils/Gradient/dark_light_vertical_gradient_box.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Gradient/dark_light_vertical_gradient_box.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -1,6 +1,7 @@ [Desktop Entry] Name=Dark-light vertical gradient box Name[ca]=caixa gradient vertical fosc-clar +Name[ca@valencia]=caixa gradient vertical fosc-clar Name[el]=Πλαίσιο κάθετης διαβάθμισης σκούρο-φωτεινό Name[et]=Tume-hele püstine üleminek raamis Name[it]=Riquadro gradiente verticale scuro-chiaro diff -Nru calligra-2.3.86/flow/stencils/Gradient/dark_light_vertical_gradient.desktop calligra-2.3.87/flow/stencils/Gradient/dark_light_vertical_gradient.desktop --- calligra-2.3.86/flow/stencils/Gradient/dark_light_vertical_gradient.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Gradient/dark_light_vertical_gradient.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -1,10 +1,12 @@ [Desktop Entry] Name=Dark-light vertical gradient Name[ca]=gradient vertical fosc-clar +Name[ca@valencia]=gradient vertical fosc-clar Name[el]=Κάθετη διαβάθμιση σκούρο-φωτεινό Name[et]=Tume-hele püstine üleminek Name[it]=Gradiente verticale scuro-chiaro Name[nb]=Mørk-lys loddrett toning +Name[nl]=Donker-licht verticale kleurverloop Name[pl]=Ciemno-jasny pionowy gradient Name[pt]=Gradiente vertical escuro-claro Name[pt_BR]=Gradiente vertical escuro-claro diff -Nru calligra-2.3.86/flow/stencils/Gradient/light_dark_horizontal_gradient_box.desktop calligra-2.3.87/flow/stencils/Gradient/light_dark_horizontal_gradient_box.desktop --- calligra-2.3.86/flow/stencils/Gradient/light_dark_horizontal_gradient_box.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Gradient/light_dark_horizontal_gradient_box.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -1,10 +1,12 @@ [Desktop Entry] Name=Light-dark horizontal gradient box Name[ca]=caixa gradient horitzontal clar-fosc +Name[ca@valencia]=caixa gradient horitzontal clar-fosc Name[el]=Πλαίσιο οριζόντιας διαβάθμισης φωτεινό-σκούρο Name[et]=Hele-tume rõhtne üleminek raamis Name[it]=Riquadro gradiente orizzontale chiaro-scuro Name[nb]=Lys-mørk vannrett toningsboks +Name[nl]=Licht-donker horizontaal verloopvlak Name[pl]=Jasno-ciemne poziome pole gradientu Name[pt]=Caixa gradiente horizontal claro-escuro Name[pt_BR]=Caixa gradiente horizontal claro-escuro diff -Nru calligra-2.3.86/flow/stencils/Gradient/light_dark_horizontal_gradient.desktop calligra-2.3.87/flow/stencils/Gradient/light_dark_horizontal_gradient.desktop --- calligra-2.3.86/flow/stencils/Gradient/light_dark_horizontal_gradient.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Gradient/light_dark_horizontal_gradient.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -1,10 +1,12 @@ [Desktop Entry] Name=Light-dark horizontal gradient Name[ca]=gradient vertical clar-fosc +Name[ca@valencia]=gradient vertical clar-fosc Name[el]=Οριζόντια διαβάθμιση φωτεινό-σκούρο Name[et]=Hele-tume rõhtne üleminek Name[it]=Gradiente orizzontale chiaro-scuro Name[nb]=Lys-mørk vannrett toning +Name[nl]=Licht-donker horizontale kleurverloop Name[pl]=Jasno-ciemny poziomy gradient Name[pt]=Gradiente horizontal claro-escuro Name[pt_BR]=Gradiente horizontal claro-escuro diff -Nru calligra-2.3.86/flow/stencils/Gradient/light_dark_vertical_gradient_box.desktop calligra-2.3.87/flow/stencils/Gradient/light_dark_vertical_gradient_box.desktop --- calligra-2.3.86/flow/stencils/Gradient/light_dark_vertical_gradient_box.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Gradient/light_dark_vertical_gradient_box.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -1,10 +1,12 @@ [Desktop Entry] Name=Light-dark vertical gradient box Name[ca]=caixa gradient vertical fosc-clar +Name[ca@valencia]=caixa gradient vertical fosc-clar Name[el]=Πλαίσιο κάθετης διαβάθμισης φωτεινό-σκούρο Name[et]=Hele-tume püstine üleminek raamis Name[it]=Riquadro gradiente verticale chiaro-scuro Name[nb]=Lys-mørk loddrett toningsboks +Name[nl]=Licht-donker verticaal verloopvlak Name[pl]=Jasno-ciemne pionowe pole gradientu Name[pt]=Caixa gradiente vertical claro-escuro Name[pt_BR]=Caixa gradiente vertical claro-escuro diff -Nru calligra-2.3.86/flow/stencils/Gradient/light_dark_vertical_gradient.desktop calligra-2.3.87/flow/stencils/Gradient/light_dark_vertical_gradient.desktop --- calligra-2.3.86/flow/stencils/Gradient/light_dark_vertical_gradient.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Gradient/light_dark_vertical_gradient.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -1,10 +1,12 @@ [Desktop Entry] Name=Light-dark vertical gradient Name[ca]=gradient vertical clar-fosc +Name[ca@valencia]=gradient vertical clar-fosc Name[el]=Κάθετη διαβάθμιση φωτεινό-σκούρο Name[et]=Hele-tume püstine üleminek Name[it]=Gradiente verticale chiaro-scuro Name[nb]=Lys-mørk loddrett toning +Name[nl]=Licht-donker verticale kleurverloop Name[pl]=Jasno-ciemny pionowy gradient Name[pt]=Gradiente vertical claro-escuro Name[pt_BR]=Gradiente vertical claro-escuro diff -Nru calligra-2.3.86/flow/stencils/Gradient/white_gray_horizontal.desktop calligra-2.3.87/flow/stencils/Gradient/white_gray_horizontal.desktop --- calligra-2.3.86/flow/stencils/Gradient/white_gray_horizontal.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Gradient/white_gray_horizontal.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -1,6 +1,7 @@ [Desktop Entry] Name=White-Gray (horizontal) Name[ca]=Blanc-gris (horitzontal) +Name[ca@valencia]=Blanc-gris (horitzontal) Name[el]=Λευκό-γκρι (οριζόντια) Name[et]=Valge-hall (rõhtne) Name[it]=Bianco-grigio (orizzontale) diff -Nru calligra-2.3.86/flow/stencils/Jigsaw/collection.desktop calligra-2.3.87/flow/stencils/Jigsaw/collection.desktop --- calligra-2.3.86/flow/stencils/Jigsaw/collection.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Jigsaw/collection.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -2,6 +2,7 @@ Name=Jigsaw Name[bg]=Пъзел Name[ca]=Trencaclosques +Name[ca@valencia]=Trencaclosques Name[cs]=Puzzle Name[et]=Pusle Name[it]=Puzzle diff -Nru calligra-2.3.86/flow/stencils/Jigsaw/part_iiii.desktop calligra-2.3.87/flow/stencils/Jigsaw/part_iiii.desktop --- calligra-2.3.86/flow/stencils/Jigsaw/part_iiii.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Jigsaw/part_iiii.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -2,6 +2,7 @@ Name=part iiii Name[bg]=част iiii Name[ca]=part iiii +Name[ca@valencia]=part iiii Name[el]=part iiii Name[et]=Tükk iiii Name[it]=parte iiii diff -Nru calligra-2.3.86/flow/stencils/Jigsaw/part_iiio.desktop calligra-2.3.87/flow/stencils/Jigsaw/part_iiio.desktop --- calligra-2.3.86/flow/stencils/Jigsaw/part_iiio.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Jigsaw/part_iiio.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -2,6 +2,7 @@ Name=part iiio Name[bg]=част iiio Name[ca]=part iiio +Name[ca@valencia]=part iiio Name[el]=part iiio Name[et]=Tükk iiio Name[it]=parte iiio diff -Nru calligra-2.3.86/flow/stencils/Jigsaw/part_iioi.desktop calligra-2.3.87/flow/stencils/Jigsaw/part_iioi.desktop --- calligra-2.3.86/flow/stencils/Jigsaw/part_iioi.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Jigsaw/part_iioi.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -2,6 +2,7 @@ Name=part iioi Name[bg]=част iioi Name[ca]=part iioi +Name[ca@valencia]=part iioi Name[el]=part iioi Name[et]=Tükk iioi Name[it]=parte iioi diff -Nru calligra-2.3.86/flow/stencils/Jigsaw/part_iioo.desktop calligra-2.3.87/flow/stencils/Jigsaw/part_iioo.desktop --- calligra-2.3.86/flow/stencils/Jigsaw/part_iioo.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Jigsaw/part_iioo.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -2,6 +2,7 @@ Name=part iioo Name[bg]=част iioo Name[ca]=part iioo +Name[ca@valencia]=part iioo Name[el]=part iioo Name[et]=Tükk iioo Name[it]=parte iioo diff -Nru calligra-2.3.86/flow/stencils/Jigsaw/part_ioii.desktop calligra-2.3.87/flow/stencils/Jigsaw/part_ioii.desktop --- calligra-2.3.86/flow/stencils/Jigsaw/part_ioii.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Jigsaw/part_ioii.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -2,6 +2,7 @@ Name=part ioii Name[bg]=част ioii Name[ca]=part ioii +Name[ca@valencia]=part ioii Name[el]=part ioii Name[et]=Tükk ioii Name[it]=parte ioii diff -Nru calligra-2.3.86/flow/stencils/Jigsaw/part_ioio.desktop calligra-2.3.87/flow/stencils/Jigsaw/part_ioio.desktop --- calligra-2.3.86/flow/stencils/Jigsaw/part_ioio.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Jigsaw/part_ioio.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -2,6 +2,7 @@ Name=part ioio Name[bg]=част ioio Name[ca]=part ioio +Name[ca@valencia]=part ioio Name[el]=part ioio Name[et]=Tükk ioio Name[it]=parte ioio diff -Nru calligra-2.3.86/flow/stencils/Jigsaw/part_iooi.desktop calligra-2.3.87/flow/stencils/Jigsaw/part_iooi.desktop --- calligra-2.3.86/flow/stencils/Jigsaw/part_iooi.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Jigsaw/part_iooi.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -2,6 +2,7 @@ Name=part iooi Name[bg]=част iooi Name[ca]=part iooi +Name[ca@valencia]=part iooi Name[el]=part iooi Name[et]=Tükk iooi Name[it]=parte iooi diff -Nru calligra-2.3.86/flow/stencils/Jigsaw/part_iooo.desktop calligra-2.3.87/flow/stencils/Jigsaw/part_iooo.desktop --- calligra-2.3.86/flow/stencils/Jigsaw/part_iooo.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Jigsaw/part_iooo.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -2,6 +2,7 @@ Name=part iooo Name[bg]=част iooo Name[ca]=part iooo +Name[ca@valencia]=part iooo Name[el]=part iooo Name[et]=Tükk iooo Name[it]=parte iooo diff -Nru calligra-2.3.86/flow/stencils/Jigsaw/part_oiii.desktop calligra-2.3.87/flow/stencils/Jigsaw/part_oiii.desktop --- calligra-2.3.86/flow/stencils/Jigsaw/part_oiii.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Jigsaw/part_oiii.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -2,6 +2,7 @@ Name=part oiii Name[bg]=част oiii Name[ca]=part oiii +Name[ca@valencia]=part oiii Name[el]=part oiii Name[et]=Tükk oiii Name[it]=parte oiii diff -Nru calligra-2.3.86/flow/stencils/Jigsaw/part_oiio.desktop calligra-2.3.87/flow/stencils/Jigsaw/part_oiio.desktop --- calligra-2.3.86/flow/stencils/Jigsaw/part_oiio.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Jigsaw/part_oiio.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -2,6 +2,7 @@ Name=part oiio Name[bg]=част oiio Name[ca]=part oiio +Name[ca@valencia]=part oiio Name[el]=part oiio Name[et]=Tükk oiio Name[it]=parte oiio diff -Nru calligra-2.3.86/flow/stencils/Jigsaw/part_oioi.desktop calligra-2.3.87/flow/stencils/Jigsaw/part_oioi.desktop --- calligra-2.3.86/flow/stencils/Jigsaw/part_oioi.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Jigsaw/part_oioi.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -2,6 +2,7 @@ Name=part oioi Name[bg]=част oioi Name[ca]=part oioi +Name[ca@valencia]=part oioi Name[el]=part oioi Name[et]=Tükk oioi Name[it]=parte oioi diff -Nru calligra-2.3.86/flow/stencils/Jigsaw/part_oioo.desktop calligra-2.3.87/flow/stencils/Jigsaw/part_oioo.desktop --- calligra-2.3.86/flow/stencils/Jigsaw/part_oioo.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Jigsaw/part_oioo.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -2,6 +2,7 @@ Name=part oioo Name[bg]=част oioo Name[ca]=part oioo +Name[ca@valencia]=part oioo Name[el]=part oioo Name[et]=Tükk oioo Name[it]=parte oioo diff -Nru calligra-2.3.86/flow/stencils/Jigsaw/part_ooii.desktop calligra-2.3.87/flow/stencils/Jigsaw/part_ooii.desktop --- calligra-2.3.86/flow/stencils/Jigsaw/part_ooii.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Jigsaw/part_ooii.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -2,6 +2,7 @@ Name=part ooii Name[bg]=част ooii Name[ca]=part ooii +Name[ca@valencia]=part ooii Name[el]=part ooii Name[et]=Tükk ooii Name[it]=parte ooii diff -Nru calligra-2.3.86/flow/stencils/Jigsaw/part_ooio.desktop calligra-2.3.87/flow/stencils/Jigsaw/part_ooio.desktop --- calligra-2.3.86/flow/stencils/Jigsaw/part_ooio.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Jigsaw/part_ooio.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -2,6 +2,7 @@ Name=part ooio Name[bg]=част ooio Name[ca]=part ooio +Name[ca@valencia]=part ooio Name[el]=part ooio Name[et]=Tükk ooio Name[it]=parte ooio diff -Nru calligra-2.3.86/flow/stencils/Jigsaw/part_oooi.desktop calligra-2.3.87/flow/stencils/Jigsaw/part_oooi.desktop --- calligra-2.3.86/flow/stencils/Jigsaw/part_oooi.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Jigsaw/part_oooi.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -2,6 +2,7 @@ Name=part oooi Name[bg]=част oooi Name[ca]=part oooi +Name[ca@valencia]=part oooi Name[el]=part oooi Name[et]=Tükk oooi Name[it]=parte oooi diff -Nru calligra-2.3.86/flow/stencils/Jigsaw/part_oooo.desktop calligra-2.3.87/flow/stencils/Jigsaw/part_oooo.desktop --- calligra-2.3.86/flow/stencils/Jigsaw/part_oooo.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Jigsaw/part_oooo.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -2,6 +2,7 @@ Name=part oooo Name[bg]=част oooo Name[ca]=part oooo +Name[ca@valencia]=part oooo Name[el]=part oooo Name[et]=Tükk oooo Name[it]=parte oooo diff -Nru calligra-2.3.86/flow/stencils/Lights/ACL.desktop calligra-2.3.87/flow/stencils/Lights/ACL.desktop --- calligra-2.3.86/flow/stencils/Lights/ACL.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Lights/ACL.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -2,6 +2,7 @@ Name=ACL Name[bg]=ACL Name[ca]=ACL +Name[ca@valencia]=ACL Name[cs]=ACL Name[el]=ACL Name[es]=ACL diff -Nru calligra-2.3.86/flow/stencils/Lights/Blacklight.desktop calligra-2.3.87/flow/stencils/Lights/Blacklight.desktop --- calligra-2.3.86/flow/stencils/Lights/Blacklight.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Lights/Blacklight.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -1,10 +1,12 @@ [Desktop Entry] Name=Blacklight Name[ca]=Blacklight +Name[ca@valencia]=Blacklight Name[el]=Blacklight Name[et]=UV-valgusti Name[it]=Luce nera Name[nb]=Svartlys +Name[nl]=Blacklight Name[pl]=Czarne światło Name[pt]=Luz Negra Name[pt_BR]=Luz negra diff -Nru calligra-2.3.86/flow/stencils/Lights/Blinders.desktop calligra-2.3.87/flow/stencils/Lights/Blinders.desktop --- calligra-2.3.86/flow/stencils/Lights/Blinders.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Lights/Blinders.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -1,9 +1,11 @@ [Desktop Entry] Name=Blinders Name[ca]=Aclucalls +Name[ca@valencia]=Aclucalls Name[et]=Blainder Name[it]=Blinder Name[nb]=Blendlys +Name[nl]=Lamellen Name[pl]=Zaślepki Name[pt]=Holofotes Name[pt_BR]=Holofotes diff -Nru calligra-2.3.86/flow/stencils/Lights/collection.desktop calligra-2.3.87/flow/stencils/Lights/collection.desktop --- calligra-2.3.86/flow/stencils/Lights/collection.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Lights/collection.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -2,6 +2,7 @@ Name=Lights Name[bg]=Светлини Name[ca]=Lights +Name[ca@valencia]=Lights Name[et]=Valgusallikad Name[it]=Luci Name[nb]=Lys diff -Nru calligra-2.3.86/flow/stencils/Lights/ERS.desktop calligra-2.3.87/flow/stencils/Lights/ERS.desktop --- calligra-2.3.86/flow/stencils/Lights/ERS.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Lights/ERS.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -2,6 +2,7 @@ Name=ERS Name[bg]=ERS Name[ca]=ERS +Name[ca@valencia]=ERS Name[el]=ERS Name[et]=Profiilvalgusti Name[it]=ERS diff -Nru calligra-2.3.86/flow/stencils/Lights/Fresnel.desktop calligra-2.3.87/flow/stencils/Lights/Fresnel.desktop --- calligra-2.3.86/flow/stencils/Lights/Fresnel.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Lights/Fresnel.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -1,12 +1,14 @@ [Desktop Entry] Name=Fresnel Name[ca]=Fresnel +Name[ca@valencia]=Fresnel Name[de]=Fresnel Name[el]=Fresnel Name[et]=Fresnel Name[it]=Fresnel Name[nb]=Fresnel Name[nds]=Fresnel +Name[nl]=Fresnel Name[pl]=Fresnel Name[pt]=Fresnel Name[pt_BR]=Fresnel diff -Nru calligra-2.3.86/flow/stencils/Lights/Moving_head.desktop calligra-2.3.87/flow/stencils/Lights/Moving_head.desktop --- calligra-2.3.86/flow/stencils/Lights/Moving_head.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Lights/Moving_head.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -1,9 +1,11 @@ [Desktop Entry] Name=Moving head Name[ca]=Cap en moviment +Name[ca@valencia]=Cap en moviment Name[et]=Liikuvpea Name[it]=Testa mobile Name[nb]=Bevegelig lys +Name[nl]=Bewegende kop Name[pl]=Ruchoma głowica Name[pt]=Foco movimento Name[pt_BR]=Movendo a cabeça diff -Nru calligra-2.3.86/flow/stencils/Lights/PAR.desktop calligra-2.3.87/flow/stencils/Lights/PAR.desktop --- calligra-2.3.86/flow/stencils/Lights/PAR.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Lights/PAR.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -2,6 +2,7 @@ Name=PAR Name[bg]=PAR Name[ca]=PAR +Name[ca@valencia]=PAR Name[cs]=PAR Name[el]=PAR Name[et]=PAR diff -Nru calligra-2.3.86/flow/stencils/Lights/PAR_floor.desktop calligra-2.3.87/flow/stencils/Lights/PAR_floor.desktop --- calligra-2.3.86/flow/stencils/Lights/PAR_floor.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Lights/PAR_floor.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -1,9 +1,11 @@ [Desktop Entry] Name=PAR floor Name[ca]=PAR floor +Name[ca@valencia]=PAR floor Name[et]=Põranda-PAR Name[it]=PAR Pavimento Name[nb]=PAR gulv +Name[nl]=Bodem-PAR Name[pl]=PAR floor Name[pt]=Chão PAR Name[pt_BR]=Chão PAR diff -Nru calligra-2.3.86/flow/stencils/Lights/PC.desktop calligra-2.3.87/flow/stencils/Lights/PC.desktop --- calligra-2.3.86/flow/stencils/Lights/PC.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Lights/PC.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -1,9 +1,11 @@ [Desktop Entry] Name=Pebble Convex lantern Name[ca]=Pebble Convex lantern +Name[ca@valencia]=Pebble Convex lantern Name[et]=PC latern Name[it]=Lanterna convessa Pebble Name[nb]=PC-lyskaster +Name[nl]=Pebble Convex-lamp Name[pl]=Wypukła latarnia Pebble Name[pt]=Lanterna convexa Pebble Name[pt_BR]=Lanterna convexa Pebble diff -Nru calligra-2.3.86/flow/stencils/Lights/Scanner.desktop calligra-2.3.87/flow/stencils/Lights/Scanner.desktop --- calligra-2.3.86/flow/stencils/Lights/Scanner.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Lights/Scanner.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -2,11 +2,13 @@ Name=Scanner Name[bg]=Скенер Name[ca]=Escànner +Name[ca@valencia]=Escànner Name[cs]=Skener Name[el]=Σαρωτής Name[et]=Skanner Name[ga]=Scanóir Name[it]=Scanner +Name[kk]=Сканер Name[nb]=Skanner Name[nl]=Scanner Name[pl]=Skaner diff -Nru calligra-2.3.86/flow/stencils/Lights/Striplight.desktop calligra-2.3.87/flow/stencils/Lights/Striplight.desktop --- calligra-2.3.86/flow/stencils/Lights/Striplight.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Lights/Striplight.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -1,9 +1,11 @@ [Desktop Entry] Name=Striplight Name[ca]=Striplight +Name[ca@valencia]=Striplight Name[et]=Valgustipaneel Name[it]=Striscia di luce Name[nb]=Flomlys +Name[nl]=Stripverlichting Name[pl]=Światło jarzeniowe Name[pt]=Luz barra Name[pt_BR]=Luz barra diff -Nru calligra-2.3.86/flow/stencils/Lights/Stroboscope.desktop calligra-2.3.87/flow/stencils/Lights/Stroboscope.desktop --- calligra-2.3.86/flow/stencils/Lights/Stroboscope.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Lights/Stroboscope.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -1,10 +1,12 @@ [Desktop Entry] Name=Stroboscope light Name[ca]=Llum estroboscòpica +Name[ca@valencia]=Llum estroboscòpica Name[el]=Στροβοσκοπικός φωτισμός Name[et]=Stroboskoop Name[it]=Luce stroboscopica Name[nb]=Stroboskoplys +Name[nl]=Stroboscopisch licht Name[pl]=Światło stroboskopowe Name[pt]=Luz de estroboscópio Name[pt_BR]=Luz de estroboscópio diff -Nru calligra-2.3.86/flow/stencils/Lights/Structure.desktop calligra-2.3.87/flow/stencils/Lights/Structure.desktop --- calligra-2.3.86/flow/stencils/Lights/Structure.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Lights/Structure.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -2,6 +2,7 @@ Name=Structure Name[bg]=Структура Name[ca]=Estructura +Name[ca@valencia]=Estructura Name[cs]=Struktura Name[el]=Δομή Name[et]=Struktuur diff -Nru calligra-2.3.86/flow/stencils/Logic/and.desktop calligra-2.3.87/flow/stencils/Logic/and.desktop --- calligra-2.3.86/flow/stencils/Logic/and.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Logic/and.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -1,6 +1,7 @@ [Desktop Entry] Name=And Name[ca]=I +Name[ca@valencia]=I Name[cs]=A Name[de]=Und Name[el]=And diff -Nru calligra-2.3.86/flow/stencils/Logic/buffer.desktop calligra-2.3.87/flow/stencils/Logic/buffer.desktop --- calligra-2.3.86/flow/stencils/Logic/buffer.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Logic/buffer.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -2,6 +2,7 @@ Name=Buffer Name[bg]=Буфер Name[ca]=Memòria intermèdia +Name[ca@valencia]=Memòria intermèdia Name[cs]=Buffer Name[de]=Puffer Name[et]=Puhver diff -Nru calligra-2.3.86/flow/stencils/Logic/collection.desktop calligra-2.3.87/flow/stencils/Logic/collection.desktop --- calligra-2.3.86/flow/stencils/Logic/collection.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Logic/collection.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -2,6 +2,7 @@ Name=Logic Name[bg]=Логика Name[ca]=Lògica +Name[ca@valencia]=Lògica Name[de]=Logik Name[el]=Λογική Name[et]=Loogika diff -Nru calligra-2.3.86/flow/stencils/Logic/connector.desktop calligra-2.3.87/flow/stencils/Logic/connector.desktop --- calligra-2.3.86/flow/stencils/Logic/connector.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Logic/connector.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -1,6 +1,7 @@ [Desktop Entry] Name=Connector Name[ca]=Connector +Name[ca@valencia]=Connector Name[cs]=Konektor Name[el]=Υποδοχή Name[es]=Conector diff -Nru calligra-2.3.86/flow/stencils/Logic/inverter.desktop calligra-2.3.87/flow/stencils/Logic/inverter.desktop --- calligra-2.3.86/flow/stencils/Logic/inverter.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Logic/inverter.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -2,6 +2,7 @@ Name=Inverter Name[bg]=Инвертор Name[ca]=Invertidor +Name[ca@valencia]=Invertidor Name[cs]=Invertor Name[el]=Αναστροφέας Name[es]=Inversor diff -Nru calligra-2.3.86/flow/stencils/Logic/nand.desktop calligra-2.3.87/flow/stencils/Logic/nand.desktop --- calligra-2.3.86/flow/stencils/Logic/nand.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Logic/nand.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -2,6 +2,7 @@ Name=Nand Name[bg]=И-не (NAND) Name[ca]=Nand +Name[ca@valencia]=Nand Name[cs]=Nand Name[de]=Nand Name[el]=Nand diff -Nru calligra-2.3.86/flow/stencils/Logic/nor.desktop calligra-2.3.87/flow/stencils/Logic/nor.desktop --- calligra-2.3.86/flow/stencils/Logic/nor.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Logic/nor.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -2,6 +2,7 @@ Name=Nor Name[bg]=Нито (NOR) Name[ca]=Nor +Name[ca@valencia]=Nor Name[cs]=Nor Name[de]=Nor Name[el]=Nor diff -Nru calligra-2.3.86/flow/stencils/Logic/not.desktop calligra-2.3.87/flow/stencils/Logic/not.desktop --- calligra-2.3.86/flow/stencils/Logic/not.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Logic/not.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -1,6 +1,7 @@ [Desktop Entry] Name=Not Name[ca]=Not +Name[ca@valencia]=Not Name[cs]=Not Name[de]=Not Name[el]=Not diff -Nru calligra-2.3.86/flow/stencils/Logic/or.desktop calligra-2.3.87/flow/stencils/Logic/or.desktop --- calligra-2.3.86/flow/stencils/Logic/or.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Logic/or.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -2,6 +2,7 @@ Name=Or Name[bg]=Или Name[ca]=O +Name[ca@valencia]=O Name[cs]=Nebo Name[de]=Oder Name[el]=Or diff -Nru calligra-2.3.86/flow/stencils/Logic/xor.desktop calligra-2.3.87/flow/stencils/Logic/xor.desktop --- calligra-2.3.86/flow/stencils/Logic/xor.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Logic/xor.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -2,6 +2,7 @@ Name=Xor Name[bg]=Изключващо или (XOR) Name[ca]=Xor +Name[ca@valencia]=Xor Name[cs]=Xor Name[de]=Xor Name[el]=Xor diff -Nru calligra-2.3.86/flow/stencils/LST/associator_subsystem.desktop calligra-2.3.87/flow/stencils/LST/associator_subsystem.desktop --- calligra-2.3.86/flow/stencils/LST/associator_subsystem.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/LST/associator_subsystem.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -1,6 +1,8 @@ [Desktop Entry] Name=Associator Name[ca]=Associador +Name[ca@valencia]=Associador +Name[et]=Väljaõpetaja Name[it]=Associatore Name[nb]=Assosiator Name[nl]=Associator diff -Nru calligra-2.3.86/flow/stencils/LST/cn_subsystem.desktop calligra-2.3.87/flow/stencils/LST/cn_subsystem.desktop --- calligra-2.3.86/flow/stencils/LST/cn_subsystem.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/LST/cn_subsystem.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -1,6 +1,7 @@ [Desktop Entry] Name=Channel Network Name[ca]=Xarxa de canals +Name[ca@valencia]=Xarxa de canals Name[el]=Δίκτυο διαύλων Name[et]=Kanal ja võrk Name[it]=Rete di canali diff -Nru calligra-2.3.86/flow/stencils/LST/collection.desktop calligra-2.3.87/flow/stencils/LST/collection.desktop --- calligra-2.3.86/flow/stencils/LST/collection.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/LST/collection.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -2,8 +2,10 @@ Name=LST Name[bg]=LST Name[ca]=LST +Name[ca@valencia]=LST Name[de]=LST Name[el]=LST +Name[et]=Elussüsteemid Name[it]=Teoria dei sistemi viventi Name[nb]=LST Name[nl]=LST diff -Nru calligra-2.3.86/flow/stencils/LST/convert_subsystem.desktop calligra-2.3.87/flow/stencils/LST/convert_subsystem.desktop --- calligra-2.3.86/flow/stencils/LST/convert_subsystem.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/LST/convert_subsystem.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -1,12 +1,14 @@ [Desktop Entry] Name=Converter Name[ca]=Convertidor +Name[ca@valencia]=Convertidor Name[cs]=Převodník Name[el]=Μετατροπέας Name[es]=Conversor Name[et]=Teisendaja Name[it]=Convertitore Name[nb]=Omformer +Name[nl]=Converter Name[pl]=Konwerter Name[pt]=Conversor Name[pt_BR]=Conversor diff -Nru calligra-2.3.86/flow/stencils/LST/decider_subsystem.desktop calligra-2.3.87/flow/stencils/LST/decider_subsystem.desktop --- calligra-2.3.86/flow/stencils/LST/decider_subsystem.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/LST/decider_subsystem.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -1,9 +1,11 @@ [Desktop Entry] Name=Decider Name[ca]=Decididor +Name[ca@valencia]=Decididor Name[et]=Otsustaja Name[it]=Decisore Name[nb]=Beslutningstaker +Name[nl]=Beslisser Name[pl]=Decydujący Name[pt]=Decisor Name[pt_BR]=Decisor diff -Nru calligra-2.3.86/flow/stencils/LST/decoder.desktop calligra-2.3.87/flow/stencils/LST/decoder.desktop --- calligra-2.3.86/flow/stencils/LST/decoder.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/LST/decoder.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -1,6 +1,7 @@ [Desktop Entry] Name=Decoder Name[ca]=Descodificador +Name[ca@valencia]=Descodificador Name[el]=Αποκωδικοποιητής Name[es]=Decodificador Name[et]=Dekooder diff -Nru calligra-2.3.86/flow/stencils/LST/decode_subsystem.desktop calligra-2.3.87/flow/stencils/LST/decode_subsystem.desktop --- calligra-2.3.86/flow/stencils/LST/decode_subsystem.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/LST/decode_subsystem.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -1,8 +1,10 @@ [Desktop Entry] Name=Decode Subsystem Name[ca]=Subsistema descodificador +Name[ca@valencia]=Subsistema descodificador Name[el]=Αποκωδικοποίηση υποσυστήματος Name[es]=Subsistema de decodificación +Name[et]=Allsüsteemi dekodeerimine Name[it]=Sottosistema di decodifica Name[nb]=Avkodingsdelsystem Name[nl]=Decodeer-subsysteem diff -Nru calligra-2.3.86/flow/stencils/LST/distributor_subsystem.desktop calligra-2.3.87/flow/stencils/LST/distributor_subsystem.desktop --- calligra-2.3.86/flow/stencils/LST/distributor_subsystem.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/LST/distributor_subsystem.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -1,6 +1,7 @@ [Desktop Entry] Name=Distributor Name[ca]=Distribuïdor +Name[ca@valencia]=Distribuïdor Name[cs]=Distributor Name[el]=Κατανεμητής Name[es]=Distribuidor diff -Nru calligra-2.3.86/flow/stencils/LST/encoder.desktop calligra-2.3.87/flow/stencils/LST/encoder.desktop --- calligra-2.3.86/flow/stencils/LST/encoder.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/LST/encoder.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -1,6 +1,7 @@ [Desktop Entry] Name=Encoder Name[ca]=Codificador +Name[ca@valencia]=Codificador Name[cs]=Kodér Name[el]=Κωδικοποιητής Name[es]=Codificador diff -Nru calligra-2.3.86/flow/stencils/LST/encode_subsystem.desktop calligra-2.3.87/flow/stencils/LST/encode_subsystem.desktop --- calligra-2.3.86/flow/stencils/LST/encode_subsystem.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/LST/encode_subsystem.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -1,8 +1,10 @@ [Desktop Entry] Name=Encode Subsystem Name[ca]=Sistema codificador +Name[ca@valencia]=Sistema codificador Name[el]=Κωδικοποίηση υποσυστήματος Name[es]=Subsistema de codificación +Name[et]=Allsüsteemi kodeerimine Name[it]=Sottosistema di codifica Name[nb]=Kodings-delsystem Name[nl]=Encode-subsysteem diff -Nru calligra-2.3.86/flow/stencils/LST/extruder.desktop calligra-2.3.87/flow/stencils/LST/extruder.desktop --- calligra-2.3.86/flow/stencils/LST/extruder.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/LST/extruder.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -1,6 +1,8 @@ [Desktop Entry] Name=Extruder Name[ca]=Extrusor +Name[ca@valencia]=Extrusor +Name[et]=Väljastaja Name[it]=Estrusore Name[nb]=Extruder Name[nl]=Extruder diff -Nru calligra-2.3.86/flow/stencils/LST/ingestor_subsystem.desktop calligra-2.3.87/flow/stencils/LST/ingestor_subsystem.desktop --- calligra-2.3.86/flow/stencils/LST/ingestor_subsystem.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/LST/ingestor_subsystem.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -1,6 +1,7 @@ [Desktop Entry] Name=Ingestor Name[ca]=Ingestor +Name[ca@valencia]=Ingestor Name[es]=Ingestor Name[et]=Sissetooja Name[it]=Ingestor diff -Nru calligra-2.3.86/flow/stencils/LST/internal_subsystem.desktop calligra-2.3.87/flow/stencils/LST/internal_subsystem.desktop --- calligra-2.3.86/flow/stencils/LST/internal_subsystem.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/LST/internal_subsystem.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -1,6 +1,8 @@ [Desktop Entry] Name=Internal Transducer Name[ca]=Transductor intern +Name[ca@valencia]=Transductor intern +Name[et]=Sisemine tõlgendaja Name[it]=Trasduttore interno Name[nb]=Intern omvandler Name[nl]=Interne transducer diff -Nru calligra-2.3.86/flow/stencils/LST/it_subsystem.desktop calligra-2.3.87/flow/stencils/LST/it_subsystem.desktop --- calligra-2.3.86/flow/stencils/LST/it_subsystem.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/LST/it_subsystem.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -1,6 +1,8 @@ [Desktop Entry] Name=Input Transducer Name[ca]=Introducció de transductor +Name[ca@valencia]=Introducció de transductor +Name[et]=Sisendi tõlgendaja Name[it]=Trasduttore di ingresso Name[nb]=Inngangsomvandler Name[nl]=Input transducer diff -Nru calligra-2.3.86/flow/stencils/LST/memory_subsystem.desktop calligra-2.3.87/flow/stencils/LST/memory_subsystem.desktop --- calligra-2.3.86/flow/stencils/LST/memory_subsystem.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/LST/memory_subsystem.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -2,6 +2,7 @@ Name=Memory Name[bg]=Памет Name[ca]=Memòria +Name[ca@valencia]=Memòria Name[cs]=Paměť Name[de]=Speicher Name[el]=Μνήμη diff -Nru calligra-2.3.86/flow/stencils/LST/mestorage.desktop calligra-2.3.87/flow/stencils/LST/mestorage.desktop --- calligra-2.3.86/flow/stencils/LST/mestorage.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/LST/mestorage.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -1,6 +1,7 @@ [Desktop Entry] Name=ME Storage Name[ca]=Emmagatzement ME +Name[ca@valencia]=Emmagatzement ME Name[el]=Αποθήκη ME Name[et]=Aine-energiasalvesti Name[it]=ME Storage diff -Nru calligra-2.3.86/flow/stencils/LST/motor.desktop calligra-2.3.87/flow/stencils/LST/motor.desktop --- calligra-2.3.86/flow/stencils/LST/motor.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/LST/motor.desktop 2012-01-28 14:26:27.000000000 +0000 @@ -2,10 +2,12 @@ Name=Motor Name[bg]=Двигател Name[ca]=Motor +Name[ca@valencia]=Motor Name[de]=Motor Name[el]=Κινητήρας Name[et]=Mootor Name[it]=Motore +Name[kk]=Мотор Name[nb]=Motor Name[nds]=Motor Name[nl]=Motor diff -Nru calligra-2.3.86/flow/stencils/LST/ot_subsystem.desktop calligra-2.3.87/flow/stencils/LST/ot_subsystem.desktop --- calligra-2.3.86/flow/stencils/LST/ot_subsystem.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/LST/ot_subsystem.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -1,6 +1,8 @@ [Desktop Entry] Name=Output Transducer Name[ca]=Sortida del transductor +Name[ca@valencia]=Eixida del transductor +Name[et]=Väljundi tõlgendaja Name[it]=Trasduttore di uscita Name[nb]=Utgangsomvandler Name[nl]=Output transducer diff -Nru calligra-2.3.86/flow/stencils/LST/producer.desktop calligra-2.3.87/flow/stencils/LST/producer.desktop --- calligra-2.3.86/flow/stencils/LST/producer.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/LST/producer.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -1,10 +1,11 @@ [Desktop Entry] Name=Producer Name[ca]=Productor +Name[ca@valencia]=Productor Name[cs]=Výrobce Name[el]=Παραγωγός Name[es]=Productor -Name[et]=Looja +Name[et]=Valmistaja Name[it]=Produttore Name[nb]=Produsent Name[nl]=Producer diff -Nru calligra-2.3.86/flow/stencils/LST/reproducer_subsystem.desktop calligra-2.3.87/flow/stencils/LST/reproducer_subsystem.desktop --- calligra-2.3.86/flow/stencils/LST/reproducer_subsystem.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/LST/reproducer_subsystem.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -1,8 +1,10 @@ [Desktop Entry] Name=Reproducer Name[ca]=Reproductor +Name[ca@valencia]=Reproductor Name[el]=Αναπαραγωγός Name[es]=Reproductor +Name[et]=Reprodutseerija Name[it]=Riproduttore Name[nb]=Gjengiver Name[nl]=Reproducer diff -Nru calligra-2.3.86/flow/stencils/LST/supporter_subsystem.desktop calligra-2.3.87/flow/stencils/LST/supporter_subsystem.desktop --- calligra-2.3.86/flow/stencils/LST/supporter_subsystem.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/LST/supporter_subsystem.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -1,6 +1,7 @@ [Desktop Entry] Name=Supporter Name[ca]=Seguidor +Name[ca@valencia]=Seguidor Name[el]=Υποστηρικτής Name[et]=Toetaja Name[it]=Supporto diff -Nru calligra-2.3.86/flow/stencils/LST/timer.desktop calligra-2.3.87/flow/stencils/LST/timer.desktop --- calligra-2.3.86/flow/stencils/LST/timer.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/LST/timer.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -2,6 +2,7 @@ Name=Timer Name[bg]=Хронометър Name[ca]=Temporitzador +Name[ca@valencia]=Temporitzador Name[cs]=Časovač Name[el]=Χρονόμετρο Name[et]=Taimer diff -Nru calligra-2.3.86/flow/stencils/Map/Block1.desktop calligra-2.3.87/flow/stencils/Map/Block1.desktop --- calligra-2.3.86/flow/stencils/Map/Block1.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Map/Block1.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -2,12 +2,14 @@ Name=Block1 Name[bg]=Блок1 Name[ca]=Block1 +Name[ca@valencia]=Block1 Name[cs]=Blok1 Name[de]=Quader1 Name[el]=Block1 Name[et]=Plokk1 Name[it]=Blocco1 Name[nb]=Blokk1 +Name[nl]=Blok1 Name[pl]=Blok1 Name[pt]=Bloco1 Name[pt_BR]=Bloco1 diff -Nru calligra-2.3.86/flow/stencils/Map/Block2.desktop calligra-2.3.87/flow/stencils/Map/Block2.desktop --- calligra-2.3.86/flow/stencils/Map/Block2.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Map/Block2.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -2,12 +2,14 @@ Name=Block2 Name[bg]=Блок2 Name[ca]=Block2 +Name[ca@valencia]=Block2 Name[cs]=Blok2 Name[de]=Quader2 Name[el]=Block2 Name[et]=Plokk2 Name[it]=Blocco2 Name[nb]=Blokk2 +Name[nl]=Blok2 Name[pl]=Blok2 Name[pt]=Bloco2 Name[pt_BR]=Bloco2 diff -Nru calligra-2.3.86/flow/stencils/Map/Block3.desktop calligra-2.3.87/flow/stencils/Map/Block3.desktop --- calligra-2.3.86/flow/stencils/Map/Block3.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Map/Block3.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -2,12 +2,14 @@ Name=Block3 Name[bg]=Блок3 Name[ca]=Block3 +Name[ca@valencia]=Block3 Name[cs]=Blok3 Name[de]=Quader3 Name[el]=Block3 Name[et]=Plokk3 Name[it]=Blocco3 Name[nb]=Blokk3 +Name[nl]=Blok3 Name[pl]=Blok3 Name[pt]=Bloco3 Name[pt_BR]=Bloco3 diff -Nru calligra-2.3.86/flow/stencils/Map/Block4.desktop calligra-2.3.87/flow/stencils/Map/Block4.desktop --- calligra-2.3.86/flow/stencils/Map/Block4.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Map/Block4.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -2,12 +2,14 @@ Name=Block4 Name[bg]=Блок4 Name[ca]=Block4 +Name[ca@valencia]=Block4 Name[cs]=Blok4 Name[de]=Quader4 Name[el]=Block4 Name[et]=Plokk4 Name[it]=Blocco4 Name[nb]=Blokk4 +Name[nl]=Blok4 Name[pl]=Blok4 Name[pt]=Bloco4 Name[pt_BR]=Bloco4 diff -Nru calligra-2.3.86/flow/stencils/Map/Block5.desktop calligra-2.3.87/flow/stencils/Map/Block5.desktop --- calligra-2.3.86/flow/stencils/Map/Block5.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Map/Block5.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -2,12 +2,14 @@ Name=Block5 Name[bg]=Блок5 Name[ca]=Block5 +Name[ca@valencia]=Block5 Name[cs]=Blok5 Name[de]=Quader5 Name[el]=Block5 Name[et]=Plokk5 Name[it]=Blocco5 Name[nb]=Blokk5 +Name[nl]=Blok5 Name[pl]=Blok5 Name[pt]=Bloco5 Name[pt_BR]=Bloco5 diff -Nru calligra-2.3.86/flow/stencils/Map/Block6.desktop calligra-2.3.87/flow/stencils/Map/Block6.desktop --- calligra-2.3.86/flow/stencils/Map/Block6.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Map/Block6.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -2,12 +2,14 @@ Name=Block6 Name[bg]=Блок6 Name[ca]=Block6 +Name[ca@valencia]=Block6 Name[cs]=Blok6 Name[de]=Quader6 Name[el]=Block6 Name[et]=Plokk6 Name[it]=Blocco6 Name[nb]=Blokk6 +Name[nl]=Blok6 Name[pl]=Blok6 Name[pt]=Bloco6 Name[pt_BR]=Bloco6 diff -Nru calligra-2.3.86/flow/stencils/Map/Block7.desktop calligra-2.3.87/flow/stencils/Map/Block7.desktop --- calligra-2.3.86/flow/stencils/Map/Block7.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Map/Block7.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -2,12 +2,14 @@ Name=Block7 Name[bg]=Блок7 Name[ca]=Block7 +Name[ca@valencia]=Block7 Name[cs]=Blok7 Name[de]=Quader7 Name[el]=Block7 Name[et]=Plokk7 Name[it]=Blocco7 Name[nb]=Blokk7 +Name[nl]=Blok7 Name[pl]=Blok7 Name[pt]=Bloco7 Name[pt_BR]=Bloco7 diff -Nru calligra-2.3.86/flow/stencils/Map/Car1.desktop calligra-2.3.87/flow/stencils/Map/Car1.desktop --- calligra-2.3.86/flow/stencils/Map/Car1.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Map/Car1.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -2,12 +2,14 @@ Name=Car1 Name[bg]=Кола1 Name[ca]=Cotxe1 +Name[ca@valencia]=Cotxe1 Name[cs]=Auto1 Name[de]=Auto1 Name[el]=Car1 Name[et]=Auto1 Name[it]=Automobile1 Name[nb]=Bil1 +Name[nl]=Auto1 Name[pl]=Pojazd1 Name[pt]=Carro1 Name[pt_BR]=Carro1 diff -Nru calligra-2.3.86/flow/stencils/Map/Car2.desktop calligra-2.3.87/flow/stencils/Map/Car2.desktop --- calligra-2.3.86/flow/stencils/Map/Car2.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Map/Car2.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -2,12 +2,14 @@ Name=Car2 Name[bg]=Кола2 Name[ca]=Cotxe2 +Name[ca@valencia]=Cotxe2 Name[cs]=Auto2 Name[de]=Auto2 Name[el]=Car2 Name[et]=Auto2 Name[it]=Automobile2 Name[nb]=Bil2 +Name[nl]=Auto2 Name[pl]=Pojazd2 Name[pt]=Carro2 Name[pt_BR]=Carro2 diff -Nru calligra-2.3.86/flow/stencils/Map/collection.desktop calligra-2.3.87/flow/stencils/Map/collection.desktop --- calligra-2.3.86/flow/stencils/Map/collection.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Map/collection.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -2,12 +2,14 @@ Name=Map Name[bg]=Карта Name[ca]=Mapa +Name[ca@valencia]=Mapa Name[cs]=Mapa Name[de]=Karte Name[el]=Χάρτης Name[et]=Kaart Name[it]=Mappa Name[nb]=Kart +Name[nl]=Kaart Name[pl]=Mapa Name[pt]=Mapa Name[pt_BR]=Mapa diff -Nru calligra-2.3.86/flow/stencils/Map/Corner1.desktop calligra-2.3.87/flow/stencils/Map/Corner1.desktop --- calligra-2.3.86/flow/stencils/Map/Corner1.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Map/Corner1.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -2,6 +2,7 @@ Name=Corner1 Name[bg]=Ъгъл1 Name[ca]=Corner1 +Name[ca@valencia]=Corner1 Name[cs]=Roh1 Name[et]=Nurk1 Name[it]=Curva1 diff -Nru calligra-2.3.86/flow/stencils/Map/Corner2.desktop calligra-2.3.87/flow/stencils/Map/Corner2.desktop --- calligra-2.3.86/flow/stencils/Map/Corner2.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Map/Corner2.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -2,6 +2,7 @@ Name=Corner2 Name[bg]=Ъгъл2 Name[ca]=Corner2 +Name[ca@valencia]=Corner2 Name[cs]=Roh2 Name[et]=Nurk2 Name[it]=Curva2 diff -Nru calligra-2.3.86/flow/stencils/Map/Crossroads.desktop calligra-2.3.87/flow/stencils/Map/Crossroads.desktop --- calligra-2.3.86/flow/stencils/Map/Crossroads.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Map/Crossroads.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -1,6 +1,7 @@ [Desktop Entry] Name=Crossroads Name[ca]=Encreuament +Name[ca@valencia]=Encreuament Name[et]=Risttee Name[it]=Incroci Name[nb]=Veikryss diff -Nru calligra-2.3.86/flow/stencils/Map/Elevated.desktop calligra-2.3.87/flow/stencils/Map/Elevated.desktop --- calligra-2.3.86/flow/stencils/Map/Elevated.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Map/Elevated.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -1,9 +1,11 @@ [Desktop Entry] Name=Elevated Name[ca]=Elevat +Name[ca@valencia]=Elevat Name[et]=Tõstand Name[it]=Elevato Name[nb]=Løftet +Name[nl]=Verhoogd Name[pl]=Wzniesiony Name[pt]=Elevado Name[pt_BR]=Elevado diff -Nru calligra-2.3.86/flow/stencils/Map/Factory.desktop calligra-2.3.87/flow/stencils/Map/Factory.desktop --- calligra-2.3.86/flow/stencils/Map/Factory.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Map/Factory.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -2,6 +2,7 @@ Name=Factory Name[bg]=Фабрика Name[ca]=Fàbrica +Name[ca@valencia]=Fàbrica Name[de]=Fabrik Name[et]=Tehas Name[it]=Fabbrica diff -Nru calligra-2.3.86/flow/stencils/Map/FootBridge.desktop calligra-2.3.87/flow/stencils/Map/FootBridge.desktop --- calligra-2.3.86/flow/stencils/Map/FootBridge.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Map/FootBridge.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -1,6 +1,7 @@ [Desktop Entry] Name=FootBridge Name[ca]=FootBridge +Name[ca@valencia]=FootBridge Name[et]=Jalakäijate sild Name[it]=PontePedonale Name[nb]=Fotgjengerbru diff -Nru calligra-2.3.86/flow/stencils/Map/OneWay.desktop calligra-2.3.87/flow/stencils/Map/OneWay.desktop --- calligra-2.3.86/flow/stencils/Map/OneWay.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Map/OneWay.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -1,6 +1,7 @@ [Desktop Entry] Name=OneWay Name[ca]=OneWay +Name[ca@valencia]=OneWay Name[de]=Einbahnstraße Name[et]=Ühesuunaline Name[it]=Una via diff -Nru calligra-2.3.86/flow/stencils/Map/RedCar.desktop calligra-2.3.87/flow/stencils/Map/RedCar.desktop --- calligra-2.3.86/flow/stencils/Map/RedCar.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Map/RedCar.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -1,9 +1,11 @@ [Desktop Entry] Name=RedCar Name[ca]=RedCar +Name[ca@valencia]=RedCar Name[et]=Punane auto Name[it]=Automobile rossa Name[nb]=RødBil +Name[nl]=Rode auto Name[pl]=CzerwonyPojazd Name[pt]=CarroVermelho Name[pt_BR]=Carro vermelho diff -Nru calligra-2.3.86/flow/stencils/Map/River.desktop calligra-2.3.87/flow/stencils/Map/River.desktop --- calligra-2.3.86/flow/stencils/Map/River.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Map/River.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -2,6 +2,7 @@ Name=River Name[bg]=Река Name[ca]=Riu +Name[ca@valencia]=Riu Name[cs]=Řeka Name[de]=Fluss Name[et]=Jõgi diff -Nru calligra-2.3.86/flow/stencils/Map/Road1.desktop calligra-2.3.87/flow/stencils/Map/Road1.desktop --- calligra-2.3.86/flow/stencils/Map/Road1.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Map/Road1.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -2,11 +2,13 @@ Name=Road1 Name[bg]=Път1 Name[ca]=Camí1 +Name[ca@valencia]=Camí1 Name[de]=Straße1 Name[el]=Road1 Name[et]=Tee1 Name[it]=Strada1 Name[nb]=Vei1 +Name[nl]=Weg1 Name[pl]=Droga1 Name[pt]=Estrada1 Name[pt_BR]=Estrada1 diff -Nru calligra-2.3.86/flow/stencils/Map/Roof1.desktop calligra-2.3.87/flow/stencils/Map/Roof1.desktop --- calligra-2.3.86/flow/stencils/Map/Roof1.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Map/Roof1.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -2,11 +2,13 @@ Name=Roof1 Name[bg]=Покрив1 Name[ca]=Sostre1 +Name[ca@valencia]=Sostre1 Name[de]=Dach1 Name[el]=Roof1 Name[et]=katus1 Name[it]=Tetto1 Name[nb]=Tak1 +Name[nl]=Dak1 Name[pl]=Dach1 Name[pt]=Telhado1 Name[pt_BR]=Telhado1 diff -Nru calligra-2.3.86/flow/stencils/Map/StraightRoad1.desktop calligra-2.3.87/flow/stencils/Map/StraightRoad1.desktop --- calligra-2.3.86/flow/stencils/Map/StraightRoad1.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Map/StraightRoad1.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -1,10 +1,12 @@ [Desktop Entry] Name=StraightRoad1 Name[ca]=Camírecte1 +Name[ca@valencia]=Camírecte1 Name[el]=StraightRoad1 Name[et]=Sirge tee 1 Name[it]=Rettilineo1 Name[nb]=RettVei1 +Name[nl]=RechteWeg1 Name[pl]=ProstaDroga1 Name[pt]=EstradaRecta1 Name[pt_BR]=EstradaReta1 diff -Nru calligra-2.3.86/flow/stencils/Map/T-Junction.desktop calligra-2.3.87/flow/stencils/Map/T-Junction.desktop --- calligra-2.3.86/flow/stencils/Map/T-Junction.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Map/T-Junction.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -2,10 +2,12 @@ Name=T-Junction Name[bg]=Т-образно кръстовище Name[ca]=Junta-T +Name[ca@valencia]=Junta-T Name[el]=T-Junction Name[et]=T-ühendus Name[it]=Giunzione a T Name[nb]=T-møte +Name[nl]=T-splitsing Name[pl]=Połączenie-T Name[pt]=Junção-T Name[pt_BR]=Entroncamento diff -Nru calligra-2.3.86/flow/stencils/Map/Train1.desktop calligra-2.3.87/flow/stencils/Map/Train1.desktop --- calligra-2.3.86/flow/stencils/Map/Train1.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Map/Train1.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -2,11 +2,13 @@ Name=Train1 Name[bg]=Влак1 Name[ca]=Tren1 +Name[ca@valencia]=Tren1 Name[de]=Zug1 Name[el]=Train1 Name[et]=Rong1 Name[it]=Treno1 Name[nb]=Tog1 +Name[nl]=Trein1 Name[pl]=Pociąg1 Name[pt]=Comboio1 Name[pt_BR]=Trem1 diff -Nru calligra-2.3.86/flow/stencils/Map/Train2.desktop calligra-2.3.87/flow/stencils/Map/Train2.desktop --- calligra-2.3.86/flow/stencils/Map/Train2.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Map/Train2.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -2,11 +2,13 @@ Name=Train2 Name[bg]=Влак2 Name[ca]=Tren2 +Name[ca@valencia]=Tren2 Name[de]=Zug2 Name[el]=Train2 Name[et]=Rong2 Name[it]=Treno2 Name[nb]=Tog2 +Name[nl]=Trein2 Name[pl]=Pociąg2 Name[pt]=Comboio2 Name[pt_BR]=Trem2 diff -Nru calligra-2.3.86/flow/stencils/Map/Tree1.desktop calligra-2.3.87/flow/stencils/Map/Tree1.desktop --- calligra-2.3.86/flow/stencils/Map/Tree1.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Map/Tree1.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -2,12 +2,14 @@ Name=Tree1 Name[bg]=Дърво1 Name[ca]=Arbre1 +Name[ca@valencia]=Arbre1 Name[cs]=Strom1 Name[de]=Baum1 Name[el]=Tree1 Name[et]=Puu1 Name[it]=Albero1 Name[nb]=Tre1 +Name[nl]=Boom1 Name[pl]=Drzewo1 Name[pt]=Árvore1 Name[pt_BR]=Árvore1 diff -Nru calligra-2.3.86/flow/stencils/Misc/collection.desktop calligra-2.3.87/flow/stencils/Misc/collection.desktop --- calligra-2.3.86/flow/stencils/Misc/collection.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Misc/collection.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -2,6 +2,7 @@ Name=Misc Name[bg]=Разни Name[ca]=Miscel·lània +Name[ca@valencia]=Miscel·lània Name[cs]=Různé Name[de]=Diverses Name[el]=Διάφορα @@ -9,6 +10,7 @@ Name[ga]=Éagsúil Name[it]=Varie Name[nb]=Div +Name[nl]=Diversen Name[pl]=Różne Name[pt]=Diversos Name[pt_BR]=Diversos diff -Nru calligra-2.3.86/flow/stencils/Misc/expended-node.desktop calligra-2.3.87/flow/stencils/Misc/expended-node.desktop --- calligra-2.3.86/flow/stencils/Misc/expended-node.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Misc/expended-node.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -1,9 +1,11 @@ [Desktop Entry] Name=expended node Name[ca]=node expandit +Name[ca@valencia]=node expandit Name[et]=Avatud sõlm Name[it]=nodo espanso Name[nb]=ekspandert node +Name[nl]=uitgegeven node Name[pl]=poświęcony węzeł Name[pt]=nó expandido Name[pt_BR]=nó expandido diff -Nru calligra-2.3.86/flow/stencils/Misc/expensible-node.desktop calligra-2.3.87/flow/stencils/Misc/expensible-node.desktop --- calligra-2.3.86/flow/stencils/Misc/expensible-node.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Misc/expensible-node.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -1,10 +1,12 @@ [Desktop Entry] Name=expansible node Name[ca]=node expansible +Name[ca@valencia]=node expansible Name[el]=επεκτάσιμος κόμβος Name[et]=Avatav sõlm Name[it]=nodo espandibile Name[nb]=utvidbar node +Name[nl]=uitbreidbare node Name[pl]=rozszerzalny węzeł Name[pt]=nó expansível Name[pt_BR]=nó expansível diff -Nru calligra-2.3.86/flow/stencils/Misc/file.desktop calligra-2.3.87/flow/stencils/Misc/file.desktop --- calligra-2.3.86/flow/stencils/Misc/file.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Misc/file.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -2,6 +2,7 @@ Name=File Name[bg]=Файл Name[ca]=Fitxer +Name[ca@valencia]=Fitxer Name[cs]=Soubor Name[de]=Datei Name[el]=Αρχείο diff -Nru calligra-2.3.86/flow/stencils/Misc/folder.desktop calligra-2.3.87/flow/stencils/Misc/folder.desktop --- calligra-2.3.86/flow/stencils/Misc/folder.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Misc/folder.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -2,6 +2,7 @@ Name=Folder Name[bg]=Папка Name[ca]=Carpeta +Name[ca@valencia]=Carpeta Name[cs]=Složka Name[de]=Ordner Name[el]=Φάκελος diff -Nru calligra-2.3.86/flow/stencils/MSE/collection.desktop calligra-2.3.87/flow/stencils/MSE/collection.desktop --- calligra-2.3.86/flow/stencils/MSE/collection.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/MSE/collection.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -2,6 +2,7 @@ Name=MSE Name[bg]=MSE Name[ca]=MSE +Name[ca@valencia]=MSE Name[cs]=MSE Name[de]=MSE Name[el]=MSE diff -Nru calligra-2.3.86/flow/stencils/MSE/demultiplexer.desktop calligra-2.3.87/flow/stencils/MSE/demultiplexer.desktop --- calligra-2.3.86/flow/stencils/MSE/demultiplexer.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/MSE/demultiplexer.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -2,6 +2,7 @@ Name=Demultiplexer Name[bg]=Демултиплексор Name[ca]=Demultiplexer +Name[ca@valencia]=Demultiplexer Name[de]=Demultiplexer Name[el]=Απο-πολυπλέκτης Name[es]=Demultiplexador diff -Nru calligra-2.3.86/flow/stencils/MSE/large_extension_node.desktop calligra-2.3.87/flow/stencils/MSE/large_extension_node.desktop --- calligra-2.3.86/flow/stencils/MSE/large_extension_node.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/MSE/large_extension_node.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -2,6 +2,7 @@ Name=Large Extension Node Name[bg]=Голям разширителен възел Name[ca]=Node gran d'extensió +Name[ca@valencia]=Node gran d'extensió Name[de]=Großer Erweiterungsknoten Name[el]=Κόμβος μεγάλης επέκτασης Name[et]=Suur laiendussõlm diff -Nru calligra-2.3.86/flow/stencils/MSE/multiplexer.desktop calligra-2.3.87/flow/stencils/MSE/multiplexer.desktop --- calligra-2.3.86/flow/stencils/MSE/multiplexer.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/MSE/multiplexer.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -2,6 +2,7 @@ Name=Multiplexer Name[bg]=Мултиплексор Name[ca]=Multiplexador +Name[ca@valencia]=Multiplexador Name[de]=Multiplexer Name[el]=Πολυπλέκτης Name[es]=Multiplexador diff -Nru calligra-2.3.86/flow/stencils/MSE/node_center.desktop calligra-2.3.87/flow/stencils/MSE/node_center.desktop --- calligra-2.3.86/flow/stencils/MSE/node_center.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/MSE/node_center.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -1,6 +1,7 @@ [Desktop Entry] Name=Node Center Name[ca]=Centre de nodes +Name[ca@valencia]=Centre de nodes Name[de]=Knotenzentrum Name[el]=Κέντρο κόμβου Name[et]=Sõlme keskus diff -Nru calligra-2.3.86/flow/stencils/MSE/small_extension_node.desktop calligra-2.3.87/flow/stencils/MSE/small_extension_node.desktop --- calligra-2.3.86/flow/stencils/MSE/small_extension_node.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/MSE/small_extension_node.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -2,6 +2,7 @@ Name=Small Extension Node Name[bg]=Малък разширителен възел Name[ca]=Node petit d'extensió +Name[ca@valencia]=Node petit d'extensió Name[de]=Kleiner Erweiterungsknoten Name[el]=Κόμβος μικρής επέκτασης Name[et]=Väike laiendussõlm diff -Nru calligra-2.3.86/flow/stencils/MSE/tacsat.desktop calligra-2.3.87/flow/stencils/MSE/tacsat.desktop --- calligra-2.3.86/flow/stencils/MSE/tacsat.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/MSE/tacsat.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -2,12 +2,13 @@ Name=Tactical Satellite Communications Terminal Name[bg]=Тактически сателитен комуникационен терминал Name[ca]=Terminal de comunicacions tàctiques per satèl·lit +Name[ca@valencia]=Terminal de comunicacions tàctiques per satèl·lit Name[de]=Kommunikationsterminal eines taktischen Satelliten Name[el]=Τερματικό επικοινωνιών δορυφόρου τακτικής Name[et]=Taktikalise satelliitside terminal Name[it]=Terminale di comunicazioni satellitari tattiche Name[nb]=Terminal for taktisk satellittkommunikasjon -Name[nl]=Tactische satelliet communicatie terminal +Name[nl]=Tactische satellietcommunicatieterminal Name[pl]=Terminal taktycznej komunikacji satelitarnej Name[pt]=Terminal Comunicações Tácticas Satélite Name[pt_BR]=Terminal comunicações táticas por satélite diff -Nru calligra-2.3.86/flow/stencils/Network/antenna.desktop calligra-2.3.87/flow/stencils/Network/antenna.desktop --- calligra-2.3.86/flow/stencils/Network/antenna.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Network/antenna.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -2,10 +2,12 @@ Name=Antenna Name[bg]=Антена Name[ca]=Antenna +Name[ca@valencia]=Antenna Name[de]=Antenne Name[el]=Κεραία Name[et]=Antenn Name[it]=Antenna +Name[kk]=Антенна Name[nb]=Antenne Name[nds]=Antenn Name[nl]=Antenne diff -Nru calligra-2.3.86/flow/stencils/Network/collection.desktop calligra-2.3.87/flow/stencils/Network/collection.desktop --- calligra-2.3.86/flow/stencils/Network/collection.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Network/collection.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -2,6 +2,7 @@ Name=Network Name[bg]=Мрежа Name[ca]=Xarxa +Name[ca@valencia]=Xarxa Name[cs]=Síť Name[de]=Netzwerk Name[el]=Δίκτυο diff -Nru calligra-2.3.86/flow/stencils/Network/computer.desktop calligra-2.3.87/flow/stencils/Network/computer.desktop --- calligra-2.3.86/flow/stencils/Network/computer.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Network/computer.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -2,10 +2,12 @@ Name=General Computer (Tower) Name[bg]=Обикновен компютър (изправен) Name[ca]=Ordinador general (torre) +Name[ca@valencia]=Ordinador general (torre) Name[el]=Υπολογιστής γενικής χρήσης (πύργος) Name[et]=Tavaline arvuti (tower) Name[it]=Computer generico (torre) Name[nb]=Generell datamaskin (tårn) +Name[nl]=Algemene computer (tower) Name[pl]=Ogólny komputer (Wieża) Name[pt]=Computador Geral (Torre) Name[pt_BR]=Computador genérico (Torre) diff -Nru calligra-2.3.86/flow/stencils/Network/dat_external.desktop calligra-2.3.87/flow/stencils/Network/dat_external.desktop --- calligra-2.3.86/flow/stencils/Network/dat_external.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Network/dat_external.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -2,11 +2,13 @@ Name=An external DAT drive Name[bg]=Външно устройство DAT Name[ca]=Un aparell extern DAT +Name[ca@valencia]=Un aparell extern DAT Name[de]=Externes DAT-Laufwerk Name[el]=Εξωτερικό DAT drive Name[et]=Väline DAT-seade Name[it]=Un lettore DAT esterno Name[nb]=Et ytre DAT-drev +Name[nl]=Een extern DAT-station Name[pl]=Zewnętrzny napęd DAT Name[pt]=Unidade DAT externa Name[pt_BR]=Unidade DAT externa diff -Nru calligra-2.3.86/flow/stencils/Network/digitizing_board.desktop calligra-2.3.87/flow/stencils/Network/digitizing_board.desktop --- calligra-2.3.86/flow/stencils/Network/digitizing_board.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Network/digitizing_board.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -2,10 +2,12 @@ Name=Digitizing Board Name[bg]=Цифрово табло Name[ca]=Pissarra digital +Name[ca@valencia]=Pissarra digital Name[el]=Ψηφιοποίηση πίνακα Name[et]=Joonistuslaud Name[it]=Digitizing Board Name[nb]=Digitaliseringsbord +Name[nl]=Digitaal bord Name[pl]=Płyta zamieniająca na cyfrowy Name[pt]=Mesa Digitalização Name[pt_BR]=Mesa de digitalização diff -Nru calligra-2.3.86/flow/stencils/Network/disc.desktop calligra-2.3.87/flow/stencils/Network/disc.desktop --- calligra-2.3.86/flow/stencils/Network/disc.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Network/disc.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -2,6 +2,7 @@ Name=Storage Name[bg]=Хранилище Name[ca]=Emmagatzement +Name[ca@valencia]=Emmagatzement Name[cs]=Úložiště Name[de]=Speicher Name[el]=Αποθήκη diff -Nru calligra-2.3.86/flow/stencils/Network/diskette.desktop calligra-2.3.87/flow/stencils/Network/diskette.desktop --- calligra-2.3.86/flow/stencils/Network/diskette.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Network/diskette.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -2,11 +2,13 @@ Name=A Diskette Name[bg]=Дискета Name[ca]=Un disquet +Name[ca@valencia]=Un disquet Name[de]=Diskette Name[el]=Δισκέτα Name[et]=Diskett Name[it]=Un disco floppy Name[nb]=En diskett +Name[nl]=Een diskette Name[pl]=Dyskietka Name[pt]=Disquete Name[pt_BR]=Disquete diff -Nru calligra-2.3.86/flow/stencils/Network/firewall.desktop calligra-2.3.87/flow/stencils/Network/firewall.desktop --- calligra-2.3.86/flow/stencils/Network/firewall.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Network/firewall.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -2,10 +2,12 @@ Name=Firewall Name[bg]=Защитна стена Name[ca]=Tallafocs +Name[ca@valencia]=Tallafocs Name[de]=Firewall Name[el]=Τείχος προστασίας Name[et]=Tulemüür Name[it]=Firewall +Name[kk]=Желіаралық қалқан Name[nb]=Brannmur Name[nds]=Nettdiek Name[nl]=Firewall diff -Nru calligra-2.3.86/flow/stencils/Network/flash.desktop calligra-2.3.87/flow/stencils/Network/flash.desktop --- calligra-2.3.86/flow/stencils/Network/flash.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Network/flash.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -2,6 +2,7 @@ Name=WAN Connection Name[bg]=Връзка WAN Name[ca]=Connexió WAN +Name[ca@valencia]=Connexió WAN Name[cs]=WAN připojení Name[de]=WAN-Verbindung Name[el]=Σύνδεση WAN diff -Nru calligra-2.3.86/flow/stencils/Network/genmonitor.desktop calligra-2.3.87/flow/stencils/Network/genmonitor.desktop --- calligra-2.3.86/flow/stencils/Network/genmonitor.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Network/genmonitor.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -2,10 +2,12 @@ Name=General Monitor (With Stand) Name[bg]=Обикновен монитор (със стойка) Name[ca]=Monitor general (amb Stand) +Name[ca@valencia]=Monitor general (amb Stand) Name[el]=Οθόνη γενικής χρήσης (με βάση) Name[et]=Tavaline monitor (jalaga) Name[it]=Monitor generico (con base) Name[nb]=Generell skjerm (med stativ) +Name[nl]=Algemene monitor (met standaard) Name[pl]=Ogólny Monitor (Ze stojakiem) Name[pt]=Monitor Geral (com Pé) Name[pt_BR]=Monitor genérico (com pé) diff -Nru calligra-2.3.86/flow/stencils/Network/hub.desktop calligra-2.3.87/flow/stencils/Network/hub.desktop --- calligra-2.3.86/flow/stencils/Network/hub.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Network/hub.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -2,9 +2,11 @@ Name=Hub Name[bg]=Хъб Name[ca]=Concentrador +Name[ca@valencia]=Concentrador Name[cs]=Rozbočovač Name[et]=Jaotur Name[it]=Hub +Name[kk]=Хаб Name[nb]=Nettnav Name[nds]=Nettknütt Name[nl]=Hub diff -Nru calligra-2.3.86/flow/stencils/Network/mobile_phone.desktop calligra-2.3.87/flow/stencils/Network/mobile_phone.desktop --- calligra-2.3.86/flow/stencils/Network/mobile_phone.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Network/mobile_phone.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -2,12 +2,14 @@ Name=A Mobile Phone Name[bg]=Мобилен телефон Name[ca]=Un telèfon mòbil +Name[ca@valencia]=Un telèfon mòbil Name[de]=Mobiltelefon Name[el]=Κινητό τηλέφωνο Name[es]=Un teléfono móvil Name[et]=Mobiiltelefon Name[it]=Un cellulare Name[nb]=En mobiltelefon +Name[nl]=Een mobiele telefoon Name[pl]=Telefon komórkowy Name[pt]=Telemóvel Name[pt_BR]=Telefone celular diff -Nru calligra-2.3.86/flow/stencils/Network/modem.desktop calligra-2.3.87/flow/stencils/Network/modem.desktop --- calligra-2.3.86/flow/stencils/Network/modem.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Network/modem.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -2,12 +2,15 @@ Name=Modem Name[bg]=Модем Name[ca]=Mòdem +Name[ca@valencia]=Mòdem Name[cs]=Modem Name[de]=Modem Name[el]=Modem Name[es]=Módem Name[et]=Modem +Name[hu]=Modem Name[it]=Modem +Name[kk]=Модем Name[nb]=Modem Name[nds]=Modem Name[nl]=Modem diff -Nru calligra-2.3.86/flow/stencils/Network/modularswitch.desktop calligra-2.3.87/flow/stencils/Network/modularswitch.desktop --- calligra-2.3.86/flow/stencils/Network/modularswitch.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Network/modularswitch.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -2,11 +2,13 @@ Name=Modular Switch Name[bg]=Модулен комутатор Name[ca]=Commutador modular +Name[ca@valencia]=Commutador modular Name[de]=Modularer Switch Name[el]=Αρθρωτός μεταγωγέας Name[et]=Moodulkommutaator Name[it]=Switch modulare Name[nb]=Modulær svitsj +Name[nl]=Modulaire switch Name[pl]=Modularny przełącznik Name[pt]=Comutador Modular Name[pt_BR]=Comutador modular diff -Nru calligra-2.3.86/flow/stencils/Network/monitor.desktop calligra-2.3.87/flow/stencils/Network/monitor.desktop --- calligra-2.3.86/flow/stencils/Network/monitor.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Network/monitor.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -2,12 +2,14 @@ Name=A Workstation Monitor Name[bg]=Монитор на работна станция Name[ca]=Un monitor d'estació de treball +Name[ca@valencia]=Un monitor d'estació de treball Name[de]=Workstation-Monitor Name[el]=Οθόνη σταθμού εργασίας Name[es]=Un monitor de estación de trabajo Name[et]=Tööjaama monitor Name[it]=Un monitor di workstation Name[nb]=En arbeidsstasjons-skjerm +Name[nl]=Een werkstation-monitor Name[pl]=Monitor stacji roboczej Name[pt]=Monitor Computador Name[pt_BR]=Monitor de computador diff -Nru calligra-2.3.86/flow/stencils/Network/nwcloud.desktop calligra-2.3.87/flow/stencils/Network/nwcloud.desktop --- calligra-2.3.86/flow/stencils/Network/nwcloud.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Network/nwcloud.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -1,14 +1,16 @@ [Desktop Entry] Name=Cloud Name[ca]=Núvol +Name[ca@valencia]=Núvol Name[cs]=Cloud Name[el]=Νέφος Name[et]=Pilv Name[ga]=Cloud Name[it]=Nuvola +Name[kk]=Бұлт Name[nb]=Sky Name[nds]=Wulk -Name[nl]=Cloud +Name[nl]=Wolk Name[pl]=Chmura Name[pt]=Nuvem Name[pt_BR]=Nuvem diff -Nru calligra-2.3.86/flow/stencils/Network/patch-panel.desktop calligra-2.3.87/flow/stencils/Network/patch-panel.desktop --- calligra-2.3.86/flow/stencils/Network/patch-panel.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Network/patch-panel.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -1,9 +1,11 @@ [Desktop Entry] Name=Patch Panel Name[ca]=Plafó de pedaços -Name[et]=Pistikupaneel +Name[ca@valencia]=Plafó de pedaços +Name[et]=Ühenduspaneel Name[it]=Permutatore Name[nb]=Patchepanel +Name[nl]=Patchpaneel Name[pl]=Kanał łaty Name[pt]=Painel de Modificação Name[pt_BR]=Painel de modificação diff -Nru calligra-2.3.86/flow/stencils/Network/pc_bigtower.desktop calligra-2.3.87/flow/stencils/Network/pc_bigtower.desktop --- calligra-2.3.86/flow/stencils/Network/pc_bigtower.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Network/pc_bigtower.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -2,12 +2,14 @@ Name=A Bigtower PC Name[bg]=Компютър в голяма кутия Name[ca]=Una torre gran de PC +Name[ca@valencia]=Una torre gran de PC Name[de]=Bigtower-PC Name[el]=Υπολογιστής πύργος μεγάλου μεγέθους Name[es]=Un PC gran torre Name[et]=PC (bigtower) Name[it]=PC torre grande Name[nb]=En stortårns-PC +Name[nl]=Een bigtower-pc Name[pl]=Bigtower PC Name[pt]=PC Torre Grande Name[pt_BR]=PC torre grande diff -Nru calligra-2.3.86/flow/stencils/Network/pc_desktop.desktop calligra-2.3.87/flow/stencils/Network/pc_desktop.desktop --- calligra-2.3.86/flow/stencils/Network/pc_desktop.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Network/pc_desktop.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -2,12 +2,14 @@ Name=A Desktop PC Name[bg]=Настолен компютър Name[ca]=Un escriptori de PC +Name[ca@valencia]=Un escriptori de PC Name[de]=Desktop-PC Name[el]=Επιτραπέζιος υπολογιστής Name[es]=Un PC de escritorio Name[et]=PC (desktop) Name[it]=Un PC desktop Name[nb]=En skrivebords-PC +Name[nl]=Een desktop-pc Name[pl]=Desktop PC Name[pt]=PC de Secretária Name[pt_BR]=PC de mesa diff -Nru calligra-2.3.86/flow/stencils/Network/pc_miditower.desktop calligra-2.3.87/flow/stencils/Network/pc_miditower.desktop --- calligra-2.3.86/flow/stencils/Network/pc_miditower.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Network/pc_miditower.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -2,12 +2,14 @@ Name=A Miditower PC Name[bg]=Компютър в средно голяма кутия Name[ca]=Una torre mitjana de PC +Name[ca@valencia]=Una torre mitjana de PC Name[de]=Minitower-PC Name[el]=Υπολογιστής πύργος μεσαίου μεγέθους Name[es]=Un PC semitorre Name[et]=PC (miditower) Name[it]=PC torre media Name[nb]=En miditårn-PC +Name[nl]=Een miditower-pc Name[pl]=Miditower PC Name[pt]=PC Torre Média Name[pt_BR]=PC torre média diff -Nru calligra-2.3.86/flow/stencils/Network/pc_minitower.desktop calligra-2.3.87/flow/stencils/Network/pc_minitower.desktop --- calligra-2.3.86/flow/stencils/Network/pc_minitower.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Network/pc_minitower.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -2,12 +2,14 @@ Name=A Minitower PC Name[bg]=Компютър в малка кутия Name[ca]=Una minitorre de PC +Name[ca@valencia]=Una minitorre de PC Name[de]=Minitower-PC Name[el]=Υπολογιστής πύργος μικρού μεγέθους Name[es]=Un PC minitorre Name[et]=PC (minitower) Name[it]=PC torre piccola Name[nb]=En minitårn-PC +Name[nl]=Een minitower-pc Name[pl]=Minitower PC Name[pt]=PC Mini-Torre Name[pt_BR]=PC mini-torre diff -Nru calligra-2.3.86/flow/stencils/Network/plotter.desktop calligra-2.3.87/flow/stencils/Network/plotter.desktop --- calligra-2.3.86/flow/stencils/Network/plotter.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Network/plotter.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -2,6 +2,7 @@ Name=Plotter Name[bg]=Плотер Name[ca]=Traçador +Name[ca@valencia]=Traçador Name[de]=Plotter Name[el]=Σχεδιαστής Name[es]=Plotter @@ -9,6 +10,7 @@ Name[it]=Plotter Name[nb]=Plotter Name[nds]=Bagenschriever +Name[nl]=Plotter Name[pl]=Plotter Name[pt]='Plotter' Name[pt_BR]=Plotadora diff -Nru calligra-2.3.86/flow/stencils/Network/printer.desktop calligra-2.3.87/flow/stencils/Network/printer.desktop --- calligra-2.3.86/flow/stencils/Network/printer.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Network/printer.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -2,11 +2,13 @@ Name=General Printer Name[bg]=Обикновен принтер Name[ca]=Impressora General +Name[ca@valencia]=Impressora General Name[de]=Allgemeiner Drucker Name[el]=Γενικός εκτυπωτής Name[et]=Tavaline printer Name[it]=Stampante generica Name[nb]=Generell skriver +Name[nl]=Algemene printer Name[pl]=Ogólna drukarka Name[pt]=Impressora Geral Name[pt_BR]=Impressora genérica diff -Nru calligra-2.3.86/flow/stencils/Network/rj45plug.desktop calligra-2.3.87/flow/stencils/Network/rj45plug.desktop --- calligra-2.3.86/flow/stencils/Network/rj45plug.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Network/rj45plug.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -2,11 +2,13 @@ Name=RJ45 Wall-Plug Name[bg]=Стенен контакт RJ45 Name[ca]=Endoll de paret RJ45 +Name[ca@valencia]=Endoll de paret RJ45 Name[de]=RJ45-Steckdose Name[el]=Επιτοίχιο βύσμα RJ45 Name[et]=RJ45 pistik Name[it]=Presa a muro RJ45 Name[nb]=RJ45-plugg +Name[nl]=RJ45-wandstekker Name[pl]=Gniazdko RJ45 Name[pt]=Tomada RJ45 Name[pt_BR]=Tomada RJ45 diff -Nru calligra-2.3.86/flow/stencils/Network/router-symbol.desktop calligra-2.3.87/flow/stencils/Network/router-symbol.desktop --- calligra-2.3.86/flow/stencils/Network/router-symbol.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Network/router-symbol.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -2,11 +2,13 @@ Name=Router Symbol Name[bg]=Символ за маршрутизатор Name[ca]=Símbol d'encaminador +Name[ca@valencia]=Símbol d'encaminador Name[de]=Router-Symbol Name[el]=Σύμβολο δρομολογητή Name[et]=Marsruuteri sümbol Name[it]=Simbolo Router Name[nb]=Rutersymbol +Name[nl]=Routersymbool Name[pl]=Symbol routera Name[pt]=Símbolo Encaminhador Name[pt_BR]=Símbolo de roteador diff -Nru calligra-2.3.86/flow/stencils/Network/sceadplug.desktop calligra-2.3.87/flow/stencils/Network/sceadplug.desktop --- calligra-2.3.86/flow/stencils/Network/sceadplug.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Network/sceadplug.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -2,10 +2,12 @@ Name=scEAD Wall-Plug Name[bg]=Стенен контакт scEAD Name[ca]=Endoll de paret scEAD +Name[ca@valencia]=Endoll de paret scEAD Name[el]=Επιτοίχιο βύσμα scEAD Name[et]=scEAD pistik Name[it]=Presa a muro scEAD Name[nb]=scEAD-plugg +Name[nl]=scEAD-wandstekker Name[pl]=Gniazdko scEAD Name[pt]=Tomada scEAD Name[pt_BR]=Tomada scEAD diff -Nru calligra-2.3.86/flow/stencils/Network/speaker_amp.desktop calligra-2.3.87/flow/stencils/Network/speaker_amp.desktop --- calligra-2.3.86/flow/stencils/Network/speaker_amp.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Network/speaker_amp.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -2,10 +2,12 @@ Name=An amplifier speaker Name[bg]=Тонколона с усилвател Name[ca]=Un altaveu amplificador +Name[ca@valencia]=Un altaveu amplificador Name[el]=Ηχείο ενισχυτή Name[et]=Võimendiga kõlar Name[it]=Un altoparlante amplificato Name[nb]=En forsterket høyttaler +Name[nl]=Een luidspreker met versterker Name[pl]=Głośnik wzmacniający Name[pt]=Altifalante amplificado Name[pt_BR]=Alto-falante amplificado diff -Nru calligra-2.3.86/flow/stencils/Network/speaker.desktop calligra-2.3.87/flow/stencils/Network/speaker.desktop --- calligra-2.3.86/flow/stencils/Network/speaker.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Network/speaker.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -2,12 +2,14 @@ Name=A speaker Name[bg]=Тонколона Name[ca]=Un altaveu +Name[ca@valencia]=Un altaveu Name[de]=Lautsprecher Name[el]=Ηχείο Name[es]=Un altavoz Name[et]=Kõlar Name[it]=Un altoparlante Name[nb]=En høyttaler +Name[nl]=Een luidspreker Name[pl]=Głośnik Name[pt]=Altifalante Name[pt_BR]=Alto-falante diff -Nru calligra-2.3.86/flow/stencils/Network/switch-atm-symbol.desktop calligra-2.3.87/flow/stencils/Network/switch-atm-symbol.desktop --- calligra-2.3.86/flow/stencils/Network/switch-atm-symbol.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Network/switch-atm-symbol.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -2,11 +2,13 @@ Name=Switch ATM Symbol Name[bg]=Символ за комутатор ATM Name[ca]=Símbol de commutador ATM +Name[ca@valencia]=Símbol de commutador ATM Name[de]=Switch-ATM-Symbol Name[el]=Σύμβολο μεταγωγέα ATM Name[et]=ATM kommutaatori sümbol Name[it]=Simbolo Switch ATM Name[nb]=ATM svitsjsymbol +Name[nl]=Symbool voor ATM-switch Name[pl]=Symbol przełączenia ATM Name[pt]=Símbolo Comutador ATM Name[pt_BR]=Símbolo de comutador ATM diff -Nru calligra-2.3.86/flow/stencils/Network/switch-symbol.desktop calligra-2.3.87/flow/stencils/Network/switch-symbol.desktop --- calligra-2.3.86/flow/stencils/Network/switch-symbol.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Network/switch-symbol.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -2,11 +2,13 @@ Name=Switch Symbol Name[bg]=Символ за комутатор Name[ca]=Símbol de commutador +Name[ca@valencia]=Símbol de commutador Name[de]=Switch-Symbol Name[el]=Σύμβολο μεταγωγέα Name[et]=Kommutaatori sümbol Name[it]=Simbolo Switch Name[nb]=Svitsj-symbol +Name[nl]=Symbool voor switch Name[pl]=Symbol przełączenia Name[pt]=Símbolo Comutador Name[pt_BR]=Símbolo de comutador diff -Nru calligra-2.3.86/flow/stencils/Network/telephone.desktop calligra-2.3.87/flow/stencils/Network/telephone.desktop --- calligra-2.3.86/flow/stencils/Network/telephone.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Network/telephone.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -2,12 +2,14 @@ Name=A Telephone Name[bg]=Телефон Name[ca]=Un telèfon +Name[ca@valencia]=Un telèfon Name[de]=Telefon Name[el]=Τηλέφωνο Name[es]=Un teléfono Name[et]=Telefon Name[it]=Un telefono Name[nb]=En telefon +Name[nl]=Een telefoon Name[pl]=Telefon Name[pt]=Telefone Name[pt_BR]=Telefone diff -Nru calligra-2.3.86/flow/stencils/Network/workstation.desktop calligra-2.3.87/flow/stencils/Network/workstation.desktop --- calligra-2.3.86/flow/stencils/Network/workstation.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Network/workstation.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -2,12 +2,14 @@ Name=A Workstation Name[bg]=Работна станция Name[ca]=Una estació de treball +Name[ca@valencia]=Una estació de treball Name[de]=Workstation Name[el]=Σταθμός εργασίας Name[es]=Una estación de trabajo Name[et]=Tööjaam Name[it]=Una workstation Name[nb]=En arbeidsstasjon +Name[nl]=Een werkstation Name[pl]=Stacja robocza Name[pt]=Estação Trabalho Name[pt_BR]=Estação Trabalho diff -Nru calligra-2.3.86/flow/stencils/Network/zip-disk.desktop calligra-2.3.87/flow/stencils/Network/zip-disk.desktop --- calligra-2.3.86/flow/stencils/Network/zip-disk.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Network/zip-disk.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -2,11 +2,13 @@ Name=A ZIP Disk Name[bg]=ZIP-диск Name[ca]=Un disc ZIP +Name[ca@valencia]=Un disc ZIP Name[el]=Δίσκος ZIP Name[es]=Un disco ZIP Name[et]=ZIP-ketas Name[it]=Un disco ZIP Name[nb]=En ZIP-disk +Name[nl]=Een zip-schijf Name[pl]=Dysk ZIP Name[pt]=Disco ZIP Name[pt_BR]=Disco ZIP diff -Nru calligra-2.3.86/flow/stencils/Optics/atten.desktop calligra-2.3.87/flow/stencils/Optics/atten.desktop --- calligra-2.3.86/flow/stencils/Optics/atten.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Optics/atten.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -1,9 +1,12 @@ [Desktop Entry] Name=Variable Attenuator Name[ca]=Atenuador variable +Name[ca@valencia]=Atenuador variable Name[el]=Μεταβλητός εξασθενητής +Name[et]=Optiline atenuaator Name[it]=Attenuatore variabile Name[nb]=Variabel demper +Name[nl]=Variabele demper Name[pl]=Zmienny atenuator Name[pt]=Atenuador Variável Name[pt_BR]=Atenuador variável diff -Nru calligra-2.3.86/flow/stencils/Optics/beam.desktop calligra-2.3.87/flow/stencils/Optics/beam.desktop --- calligra-2.3.86/flow/stencils/Optics/beam.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Optics/beam.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -1,9 +1,12 @@ [Desktop Entry] Name=Beam Name[ca]=Raig +Name[ca@valencia]=Raig Name[el]=Ακτίνα +Name[et]=Kiir Name[it]=Raggio Name[nb]=Stråle +Name[nl]=Straal Name[pl]=Promień Name[pt]=Raio Name[pt_BR]=Raio diff -Nru calligra-2.3.86/flow/stencils/Optics/circulator.desktop calligra-2.3.87/flow/stencils/Optics/circulator.desktop --- calligra-2.3.86/flow/stencils/Optics/circulator.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Optics/circulator.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -1,6 +1,8 @@ [Desktop Entry] Name=Circulator Name[ca]=Circulador +Name[ca@valencia]=Circulador +Name[et]=Tsirkulaator Name[it]=Circolatore Name[nb]=Sirkulator Name[pl]=Cyrkulator diff -Nru calligra-2.3.86/flow/stencils/Optics/collection.desktop calligra-2.3.87/flow/stencils/Optics/collection.desktop --- calligra-2.3.86/flow/stencils/Optics/collection.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Optics/collection.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -1,11 +1,13 @@ [Desktop Entry] Name=Optics Name[ca]=Òptica +Name[ca@valencia]=Òptica Name[de]=Optik Name[el]=Οπτική Name[et]=Optika Name[it]=Ottica Name[nb]=Optikk +Name[nl]=Optica Name[pl]=Optyka Name[pt]=Óptica Name[pt_BR]=Ótica diff -Nru calligra-2.3.86/flow/stencils/Optics/coupler.desktop calligra-2.3.87/flow/stencils/Optics/coupler.desktop --- calligra-2.3.86/flow/stencils/Optics/coupler.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Optics/coupler.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -1,9 +1,12 @@ [Desktop Entry] Name=Coupler Name[ca]=Acoblador +Name[ca@valencia]=Acoblador Name[el]=Συζεύκτης +Name[et]=Optron Name[it]=Accoppiatore Name[nb]=Kobler +Name[nl]=Koppelaar Name[pl]=Sprzęg Name[pt]=Acoplador Name[pt_BR]=Acoplador diff -Nru calligra-2.3.86/flow/stencils/Optics/coupler_vert.desktop calligra-2.3.87/flow/stencils/Optics/coupler_vert.desktop --- calligra-2.3.86/flow/stencils/Optics/coupler_vert.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Optics/coupler_vert.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -1,9 +1,12 @@ [Desktop Entry] Name=Coupler (vertical) Name[ca]=Acoblador (vertical) +Name[ca@valencia]=Acoblador (vertical) Name[el]=Συζεύκτης (κατακόρυφα) +Name[et]=Vertikaalne optron Name[it]=Accoppiatore (verticale) Name[nb]=Kobler (loddrett) +Name[nl]=Koppelaar (verticaal) Name[pl]=Sprzęg (pionowy) Name[pt]=Acoplador (vertical) Name[pt_BR]=Acoplador (vertical) diff -Nru calligra-2.3.86/flow/stencils/Optics/detector.desktop calligra-2.3.87/flow/stencils/Optics/detector.desktop --- calligra-2.3.86/flow/stencils/Optics/detector.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Optics/detector.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -1,9 +1,11 @@ [Desktop Entry] Name=Detector Name[ca]=Detector +Name[ca@valencia]=Detector Name[el]=Ανιχνευτής Name[et]=Detektor Name[it]=Detector +Name[kk]=Сезгіш Name[nb]=Detektor Name[nl]=Detector Name[pl]=Detektor diff -Nru calligra-2.3.86/flow/stencils/Optics/detector_vert.desktop calligra-2.3.87/flow/stencils/Optics/detector_vert.desktop --- calligra-2.3.86/flow/stencils/Optics/detector_vert.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Optics/detector_vert.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -1,11 +1,13 @@ [Desktop Entry] Name=Detector (vertical) Name[ca]=Detector (vertical) +Name[ca@valencia]=Detector (vertical) Name[el]=Ανιχνευτής (κάθετα) Name[es]=Detector (vertical) -Name[et]=Detektor (vertikaalne) +Name[et]=Vertikaalne detektor Name[it]=Detector (verticale) Name[nb]=Detektor (loddrett) +Name[nl]=Detector (verticaal) Name[pl]=Detektor (pionowy) Name[pt]=Detector (vertical) Name[pt_BR]=Detector (vertical) diff -Nru calligra-2.3.86/flow/stencils/Optics/dfb_laser.desktop calligra-2.3.87/flow/stencils/Optics/dfb_laser.desktop --- calligra-2.3.86/flow/stencils/Optics/dfb_laser.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Optics/dfb_laser.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -1,10 +1,12 @@ [Desktop Entry] Name=DFB Laser Name[ca]=Laser DFB +Name[ca@valencia]=Laser DFB Name[el]=DFB Laser Name[et]=DFB laser Name[it]=Laser DFB Name[nb]=DFB Laser +Name[nl]=DFB-laser Name[pl]=Laser DFB Name[pt]=Laser DFB Name[pt_BR]=Laser DFB diff -Nru calligra-2.3.86/flow/stencils/Optics/dfb_laser_vert.desktop calligra-2.3.87/flow/stencils/Optics/dfb_laser_vert.desktop --- calligra-2.3.86/flow/stencils/Optics/dfb_laser_vert.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Optics/dfb_laser_vert.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -1,10 +1,12 @@ [Desktop Entry] Name=DFB Laser (vertical) Name[ca]=DFB Laser (vertical) +Name[ca@valencia]=DFB Laser (vertical) Name[el]=DFB Laser (κάθετα) -Name[et]=DFB laser (vertikaalne) +Name[et]=Vertikaalne DFB laser Name[it]=Laser DFB (verticale) Name[nb]=DFB Laser (loddrett) +Name[nl]=DFB-laser (verticaal) Name[pl]=Laser DFB (pionowy) Name[pt]=Laser DFB (vertical) Name[pt_BR]=Laser DFB (vertical) diff -Nru calligra-2.3.86/flow/stencils/Optics/edfa.desktop calligra-2.3.87/flow/stencils/Optics/edfa.desktop --- calligra-2.3.86/flow/stencils/Optics/edfa.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Optics/edfa.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -2,10 +2,12 @@ Name=EDFA Name[bg]=EDFA Name[ca]=EDFA +Name[ca@valencia]=EDFA Name[el]=EDFA Name[et]=EDFA Name[it]=EDFA Name[nb]=EDFA +Name[nl]=EDFA Name[pl]=EDFA Name[pt]=EDFA Name[pt_BR]=EDFA diff -Nru calligra-2.3.86/flow/stencils/Optics/edfa_vert.desktop calligra-2.3.87/flow/stencils/Optics/edfa_vert.desktop --- calligra-2.3.86/flow/stencils/Optics/edfa_vert.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Optics/edfa_vert.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -1,10 +1,12 @@ [Desktop Entry] Name=EDFA (vertical) Name[ca]=EDFA (vertical) +Name[ca@valencia]=EDFA (vertical) Name[el]=EDFA (κάθετα) -Name[et]=EDFA (vertikaalne) +Name[et]=Vertikaalne EDFA Name[it]=EDFA (verticale) Name[nb]=EDFA (loddrett) +Name[nl]=EDFA (verticaal) Name[pl]=EDFA (pionowy) Name[pt]=EDFA (vertical) Name[pt_BR]=EDFA (vertical) diff -Nru calligra-2.3.86/flow/stencils/Optics/fibre.desktop calligra-2.3.87/flow/stencils/Optics/fibre.desktop --- calligra-2.3.86/flow/stencils/Optics/fibre.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Optics/fibre.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -1,9 +1,12 @@ [Desktop Entry] Name=Fibre Name[ca]=Fibra +Name[ca@valencia]=Fibra Name[el]=Ίνα +Name[et]=Valguskaabel Name[it]=Fibra Name[nb]=Fiber +Name[nl]=Fiber Name[pl]=Światłowód Name[pt]=Fibra Name[pt_BR]=Fibra diff -Nru calligra-2.3.86/flow/stencils/Optics/fibre_vert.desktop calligra-2.3.87/flow/stencils/Optics/fibre_vert.desktop --- calligra-2.3.86/flow/stencils/Optics/fibre_vert.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Optics/fibre_vert.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -1,9 +1,12 @@ [Desktop Entry] Name=Fibre (vertical) Name[ca]=Fibra (vertical) +Name[ca@valencia]=Fibra (vertical) Name[el]=Ίνα (κάθετα) +Name[et]=Vertikaalne valguskaabel Name[it]=Fibra (verticale) Name[nb]=Fiber (loddrett) +Name[nl]=Fiber (verticaal) Name[pl]=Światłowód (pionowy) Name[pt]=Fibra (vertical) Name[pt_BR]=Fibra (vertical) diff -Nru calligra-2.3.86/flow/stencils/Optics/isolator.desktop calligra-2.3.87/flow/stencils/Optics/isolator.desktop --- calligra-2.3.86/flow/stencils/Optics/isolator.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Optics/isolator.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -1,10 +1,12 @@ [Desktop Entry] Name=Isolator Name[ca]=Aïllador +Name[ca@valencia]=Aïllador Name[el]=Απομονωτής Name[et]=Isolaator Name[it]=Isolatore Name[nb]=Isolator +Name[nl]=Isolator Name[pl]=Izolacja Name[pt]=Isolador Name[pt_BR]=Isolador diff -Nru calligra-2.3.86/flow/stencils/Optics/isolator_vert.desktop calligra-2.3.87/flow/stencils/Optics/isolator_vert.desktop --- calligra-2.3.86/flow/stencils/Optics/isolator_vert.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Optics/isolator_vert.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -1,10 +1,12 @@ [Desktop Entry] Name=Isolator (vertical) Name[ca]=Aïllador (vertical) +Name[ca@valencia]=Aïllador (vertical) Name[el]=Απομονωτής (κατακόρυφα) -Name[et]=Isolaator (vertikaalne) +Name[et]=Vertikaalne isolaator Name[it]=Isolatore (verticale) Name[nb]=Isolator (loddrett) +Name[nl]=Isolator (verticaal) Name[pl]=Izolacja (pionowa) Name[pt]=Isolador (vertical) Name[pt_BR]=Isolador (vertical) diff -Nru calligra-2.3.86/flow/stencils/Optics/lpg.desktop calligra-2.3.87/flow/stencils/Optics/lpg.desktop --- calligra-2.3.86/flow/stencils/Optics/lpg.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Optics/lpg.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -1,10 +1,12 @@ [Desktop Entry] Name=LPG Name[ca]=LPG +Name[ca@valencia]=LPG Name[el]=LPG Name[et]=LPG Name[it]=LPG Name[nb]=LPG +Name[nl]=LPG Name[pl]=LPG Name[pt]=LPG Name[pt_BR]=LPG diff -Nru calligra-2.3.86/flow/stencils/Optics/lpg_vert.desktop calligra-2.3.87/flow/stencils/Optics/lpg_vert.desktop --- calligra-2.3.86/flow/stencils/Optics/lpg_vert.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Optics/lpg_vert.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -1,10 +1,12 @@ [Desktop Entry] Name=LPG (vertical) Name[ca]=LPG (vertical) +Name[ca@valencia]=LPG (vertical) Name[el]=LPG (κάθετα) -Name[et]=LPG (vertikaalne) +Name[et]=Vertikaalne LPG Name[it]=LPG (verticale) Name[nb]=LPG (loddrett) +Name[nl]=LPG (verticaal) Name[pl]=LPG (pionowo) Name[pt]=LPG (vertical) Name[pt_BR]=LPG (vertical) diff -Nru calligra-2.3.86/flow/stencils/Optics/mod.desktop calligra-2.3.87/flow/stencils/Optics/mod.desktop --- calligra-2.3.86/flow/stencils/Optics/mod.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Optics/mod.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -1,9 +1,12 @@ [Desktop Entry] Name=MZ Modulator Name[ca]=Modulador MZ +Name[ca@valencia]=Modulador MZ Name[el]=MZ διαμορφωτής +Name[et]=Machi-Zehnderi interferomeeter Name[it]=Modulatore MZ Name[nb]=MZ-modulator +Name[nl]=MZ-modulator Name[pl]=Modulator MZ Name[pt]=Modulador MZ Name[pt_BR]=Modulador MZ diff -Nru calligra-2.3.86/flow/stencils/Optics/mod_vert.desktop calligra-2.3.87/flow/stencils/Optics/mod_vert.desktop --- calligra-2.3.86/flow/stencils/Optics/mod_vert.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Optics/mod_vert.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -1,9 +1,12 @@ [Desktop Entry] Name=MZ Modulator (vertical) Name[ca]=MZ Modulator (vertical) +Name[ca@valencia]=MZ Modulator (vertical) Name[el]=MZ διαμορφωτής (κάθετα) +Name[et]=Vertikaalne Machi-Zehnderi interferomeeter Name[it]=Modulatore MZ (verticale) Name[nb]=MZ-modulator (loddrett) +Name[nl]=MZ-modulator (verticaal) Name[pl]=Modulator MZ (pionowy) Name[pt]=Modulador MZ (vertical) Name[pt_BR]=Modulador MZ (vertical) diff -Nru calligra-2.3.86/flow/stencils/Optics/phasemod.desktop calligra-2.3.87/flow/stencils/Optics/phasemod.desktop --- calligra-2.3.86/flow/stencils/Optics/phasemod.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Optics/phasemod.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -1,10 +1,12 @@ [Desktop Entry] Name=Phase Modulator Name[ca]=Modulador de fase +Name[ca@valencia]=Modulador de fase Name[el]=Διαμορφωτής φάσης Name[et]=Faasimuundur Name[it]=Modulatore di fase Name[nb]=Fasemodulator +Name[nl]=Fasemodulator Name[pl]=Modulator fazy Name[pt]=Modulador Fase Name[pt_BR]=Modulador de fase diff -Nru calligra-2.3.86/flow/stencils/Optics/phasemod_vert.desktop calligra-2.3.87/flow/stencils/Optics/phasemod_vert.desktop --- calligra-2.3.86/flow/stencils/Optics/phasemod_vert.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Optics/phasemod_vert.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -1,10 +1,12 @@ [Desktop Entry] Name=Phase Modulator (vertical) Name[ca]=Modulador de fase (vertical) +Name[ca@valencia]=Modulador de fase (vertical) Name[el]=Διαμορφωτής φάσης (κάθετα) -Name[et]=Faasimuundur (vertikaalne) +Name[et]=Vertikaalne faasimuundur Name[it]=Modulatore di fase (verticale) Name[nb]=Fasemodulator (loddrett) +Name[nl]=Fasemodulator (verticaal) Name[pl]=Modulator fazy (pionowy) Name[pt]=Modulador Fase (vertical) Name[pt_BR]=Modulador de fase (vertical) diff -Nru calligra-2.3.86/flow/stencils/Optics/polarisation_control.desktop calligra-2.3.87/flow/stencils/Optics/polarisation_control.desktop --- calligra-2.3.86/flow/stencils/Optics/polarisation_control.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Optics/polarisation_control.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -1,9 +1,12 @@ [Desktop Entry] Name=Polarisation Control Name[ca]=Control de polarització +Name[ca@valencia]=Control de polarització Name[el]=Έλεγχος πόλωσης +Name[et]=Polarisatsiooni regulaator Name[it]=Controllo di polarizzazione Name[nb]=Polarisasjonsstyring +Name[nl]=Polarisatiebesturing Name[pl]=Kontrola polaryzacji Name[pt]=Controlo Polarização Name[pt_BR]=Controle de polarização diff -Nru calligra-2.3.86/flow/stencils/Optics/polarisation_control_vert.desktop calligra-2.3.87/flow/stencils/Optics/polarisation_control_vert.desktop --- calligra-2.3.86/flow/stencils/Optics/polarisation_control_vert.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Optics/polarisation_control_vert.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -1,9 +1,12 @@ [Desktop Entry] Name=Polarisation Control (vertical) Name[ca]=Control de polarització (vertical) +Name[ca@valencia]=Control de polarització (vertical) Name[el]=Έλεγχος πόλωσης (κάθετα) +Name[et]=Vertikaalne polarisatsiooni regulaator) Name[it]=Controllo di polarizzazione (verticale) Name[nb]=Polarisasjonsstyring (loddrett) +Name[nl]=Polarisatiebesturing (verticaal) Name[pl]=Kontrola polaryzacji (pionowa) Name[pt]=Controlo Polarização (vertical) Name[pt_BR]=Controlo de polarização (vertical) diff -Nru calligra-2.3.86/flow/stencils/Optics/scope.desktop calligra-2.3.87/flow/stencils/Optics/scope.desktop --- calligra-2.3.86/flow/stencils/Optics/scope.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Optics/scope.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -2,11 +2,13 @@ Name=Oscilloscope Name[bg]=Осцилоскоп Name[ca]=Osciloscopi +Name[ca@valencia]=Osciloscopi Name[de]=Oszilloskop Name[el]=Παλμογράφος Name[et]=Ostsilloskoop Name[it]=Oscilloscopio Name[nb]=Oscilloskop +Name[nl]=oscilloscoop Name[pl]=Oscyloskop Name[pt]=Osciloscópio Name[pt_BR]=Osciloscópio diff -Nru calligra-2.3.86/flow/stencils/Optics/sine.desktop calligra-2.3.87/flow/stencils/Optics/sine.desktop --- calligra-2.3.86/flow/stencils/Optics/sine.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Optics/sine.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -1,10 +1,13 @@ [Desktop Entry] Name=Sine Wave Name[ca]=Ona sinusoïdal +Name[ca@valencia]=Ona sinusoïdal Name[de]=Sinuswelle Name[el]=Ημιτονοειδές κύμα Name[et]=Siinuslaine +Name[hu]=Szinuszhullám Name[it]=Onda sinusoidale +Name[kk]=Синусоидалық толқын Name[nb]=Sinusbølge Name[nds]=Sinus Name[nl]=Sinusgolf diff -Nru calligra-2.3.86/flow/stencils/Optics/spectrum.desktop calligra-2.3.87/flow/stencils/Optics/spectrum.desktop --- calligra-2.3.86/flow/stencils/Optics/spectrum.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Optics/spectrum.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -2,6 +2,7 @@ Name=Spectrum Name[bg]=Спектър Name[ca]=Espectre +Name[ca@valencia]=Espectre Name[cs]=Spektrum Name[de]=Spektrum Name[el]=Φάσμα diff -Nru calligra-2.3.86/flow/stencils/Optics/square.desktop calligra-2.3.87/flow/stencils/Optics/square.desktop --- calligra-2.3.86/flow/stencils/Optics/square.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Optics/square.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -1,10 +1,14 @@ [Desktop Entry] Name=Square Wave Name[ca]=Ona quadrada +Name[ca@valencia]=Ona quadrada Name[cs]=Obdélníková vlna Name[de]=Rechteckwelle +Name[el]=Square Wave Name[et]=Nelinurklaine +Name[hu]=Négyszögjel Name[it]=Onda quadra +Name[kk]=Тікбұрышты толқын Name[nb]=Firkantbølge Name[nds]=Rechteck Name[nl]=Blokgolf diff -Nru calligra-2.3.86/flow/stencils/Optics/tuneable.desktop calligra-2.3.87/flow/stencils/Optics/tuneable.desktop --- calligra-2.3.86/flow/stencils/Optics/tuneable.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Optics/tuneable.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -1,8 +1,11 @@ [Desktop Entry] Name=Tuneable Coupler Name[ca]=Acoblador sintonitzable +Name[ca@valencia]=Acoblador sintonitzable +Name[et]=Häälestatav optron Name[it]=Accoppiatore regolabile Name[nb]=Avstembar kopler +Name[nl]=Af te stemmen koppelaar Name[pl]=Dostrajany sprzęg Name[pt]=Acoplador Sintonizável Name[pt_BR]=Acoplador sintonizável diff -Nru calligra-2.3.86/flow/stencils/Optics/wave.desktop calligra-2.3.87/flow/stencils/Optics/wave.desktop --- calligra-2.3.86/flow/stencils/Optics/wave.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Optics/wave.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -2,6 +2,7 @@ Name=Wave Name[bg]=Вълна Name[ca]=Ona +Name[ca@valencia]=Ona Name[cs]=Vlna Name[de]=Welle Name[el]=Κύμα @@ -10,6 +11,7 @@ Name[it]=Onda Name[nb]=Bølge Name[nds]=Bülg +Name[nl]=Golf Name[pl]=Fala Name[pt]=Onda Name[pt_BR]=Onda diff -Nru calligra-2.3.86/flow/stencils/Pneumatic/cnx.desktop calligra-2.3.87/flow/stencils/Pneumatic/cnx.desktop --- calligra-2.3.86/flow/stencils/Pneumatic/cnx.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Pneumatic/cnx.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -2,11 +2,13 @@ Name=connpoint Name[bg]=точка на свързване Name[ca]=connpoint +Name[ca@valencia]=connpoint Name[cs]=Access Name[el]=connpoint Name[et]=Ühenduspunkt Name[it]=connpoint Name[nb]=kobl.punkt +Name[nl]=connpunt Name[pl]=puntkpołączenia Name[pt]=ponto-ligação Name[pt_BR]=ponto de conexão diff -Nru calligra-2.3.86/flow/stencils/Pneumatic/collection.desktop calligra-2.3.87/flow/stencils/Pneumatic/collection.desktop --- calligra-2.3.86/flow/stencils/Pneumatic/collection.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Pneumatic/collection.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -1,9 +1,10 @@ [Desktop Entry] Name=Pneumatic Name[ca]=Pneumàtic +Name[ca@valencia]=Pneumàtic Name[cs]=Pneumatický Name[de]=Pneumatik -Name[et]=Pneumo +Name[et]=Pneumaatika Name[it]=Pneumatico Name[nb]=Trykkluft Name[nl]=Pneumatisch diff -Nru calligra-2.3.86/flow/stencils/Pneumatic/comelec1.desktop calligra-2.3.87/flow/stencils/Pneumatic/comelec1.desktop --- calligra-2.3.86/flow/stencils/Pneumatic/comelec1.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Pneumatic/comelec1.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -1,9 +1,12 @@ [Desktop Entry] Name=comelec1 Name[ca]=comelec1 +Name[ca@valencia]=comelec1 Name[el]=comelec1 +Name[et]=Üks elektromagnet Name[it]=comelec1 Name[nb]=elektr. komm. +Name[nl]=comelec1 Name[pl]=comelec1 Name[pt]=comelec1 Name[pt_BR]=comelec1 diff -Nru calligra-2.3.86/flow/stencils/Pneumatic/comelec2.desktop calligra-2.3.87/flow/stencils/Pneumatic/comelec2.desktop --- calligra-2.3.86/flow/stencils/Pneumatic/comelec2.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Pneumatic/comelec2.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -1,9 +1,12 @@ [Desktop Entry] Name=comelec2 Name[ca]=comelec2 +Name[ca@valencia]=comelec2 Name[el]=comelec2 +Name[et]=Kaks elektromagnetit Name[it]=comelec2 Name[nb]=elektr. komm. dobb. +Name[nl]=comelec2 Name[pl]=comelec2 Name[pt]=comelec2 Name[pt_BR]=comelec2 diff -Nru calligra-2.3.86/flow/stencils/Pneumatic/commusc.desktop calligra-2.3.87/flow/stencils/Pneumatic/commusc.desktop --- calligra-2.3.86/flow/stencils/Pneumatic/commusc.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Pneumatic/commusc.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -1,9 +1,12 @@ [Desktop Entry] Name=commusc Name[ca]=commusc +Name[ca@valencia]=commusc Name[el]=commusc +Name[et]=Üldine juhtimine Name[it]=commusc Name[nb]=muskelkommando +Name[nl]=commusc Name[pl]=commusc Name[pt]=commusc Name[pt_BR]=commusc diff -Nru calligra-2.3.86/flow/stencils/Pneumatic/compb.desktop calligra-2.3.87/flow/stencils/Pneumatic/compb.desktop --- calligra-2.3.86/flow/stencils/Pneumatic/compb.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Pneumatic/compb.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -1,9 +1,12 @@ [Desktop Entry] Name=compb Name[ca]=compb +Name[ca@valencia]=compb Name[el]=compb +Name[et]=Surunupp Name[it]=compb Name[nb]=trykknapp-kommando +Name[nl]=compb Name[pl]=compb Name[pt]=compb Name[pt_BR]=compb diff -Nru calligra-2.3.86/flow/stencils/Pneumatic/compilh.desktop calligra-2.3.87/flow/stencils/Pneumatic/compilh.desktop --- calligra-2.3.86/flow/stencils/Pneumatic/compilh.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Pneumatic/compilh.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -1,9 +1,12 @@ [Desktop Entry] Name=compilh Name[ca]=compilh +Name[ca@valencia]=compilh Name[el]=compilh +Name[et]=Hüdrauliline juhtimine Name[it]=compilh Name[nb]=hydr. indirekte kommando +Name[nl]=compilh Name[pl]=compilh Name[pt]=compilh Name[pt_BR]=compilh diff -Nru calligra-2.3.86/flow/stencils/Pneumatic/compilp.desktop calligra-2.3.87/flow/stencils/Pneumatic/compilp.desktop --- calligra-2.3.86/flow/stencils/Pneumatic/compilp.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Pneumatic/compilp.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -1,9 +1,12 @@ [Desktop Entry] Name=compilp Name[ca]=compilp +Name[ca@valencia]=compilp Name[el]=compilp +Name[et]=Pneumaatiline juhtimine Name[it]=compilp Name[nb]=indirekte kommando +Name[nl]=compilp Name[pl]=compilp Name[pt]=compilp Name[pt_BR]=compilp diff -Nru calligra-2.3.86/flow/stencils/Pneumatic/compush.desktop calligra-2.3.87/flow/stencils/Pneumatic/compush.desktop --- calligra-2.3.86/flow/stencils/Pneumatic/compush.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Pneumatic/compush.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -1,9 +1,12 @@ [Desktop Entry] Name=compush Name[ca]=compush +Name[ca@valencia]=compush Name[el]=compush +Name[et]=Mehaaniline juhtimine Name[it]=compush Name[nb]=mek. komm. via tapp +Name[nl]=compush Name[pl]=compush Name[pt]=compush Name[pt_BR]=compush diff -Nru calligra-2.3.86/flow/stencils/Pneumatic/comspr.desktop calligra-2.3.87/flow/stencils/Pneumatic/comspr.desktop --- calligra-2.3.86/flow/stencils/Pneumatic/comspr.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Pneumatic/comspr.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -1,9 +1,12 @@ [Desktop Entry] Name=comspr Name[ca]=comspr +Name[ca@valencia]=comspr Name[el]=comspr +Name[et]=Vedruga juhtimine Name[it]=comspr Name[nb]=fjærkomm +Name[nl]=comspr Name[pl]=comspr Name[pt]=comspr Name[pt_BR]=comspr diff -Nru calligra-2.3.86/flow/stencils/Pneumatic/dejack.desktop calligra-2.3.87/flow/stencils/Pneumatic/dejack.desktop --- calligra-2.3.86/flow/stencils/Pneumatic/dejack.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Pneumatic/dejack.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -1,10 +1,13 @@ [Desktop Entry] Name=DEJack Name[ca]=DEJack +Name[ca@valencia]=DEJack Name[de]=DEJack Name[el]=DEJack +Name[et]=Vedruta hüdrosilinder Name[it]=DEJack Name[nb]=DEJack +Name[nl]=DEJack Name[pl]=DEJack Name[pt]=DEJack Name[pt_BR]=DEJack diff -Nru calligra-2.3.86/flow/stencils/Pneumatic/dist22.desktop calligra-2.3.87/flow/stencils/Pneumatic/dist22.desktop --- calligra-2.3.86/flow/stencils/Pneumatic/dist22.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Pneumatic/dist22.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -1,9 +1,12 @@ [Desktop Entry] Name=dist22 Name[ca]=dist22 +Name[ca@valencia]=dist22 Name[el]=dist22 +Name[et]=Reguleerimisventiil 22 Name[it]=dist22 Name[nb]=2/2-distributør +Name[nl]=dist22 Name[pl]=dist22 Name[pt]=dist22 Name[pt_BR]=dist22 diff -Nru calligra-2.3.86/flow/stencils/Pneumatic/dist32.desktop calligra-2.3.87/flow/stencils/Pneumatic/dist32.desktop --- calligra-2.3.86/flow/stencils/Pneumatic/dist32.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Pneumatic/dist32.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -1,9 +1,12 @@ [Desktop Entry] Name=dist32 Name[ca]=dist32 +Name[ca@valencia]=dist32 Name[el]=dist32 +Name[et]=Reguleerimisventiil 32 Name[it]=dist32 Name[nb]=3/2-distributør +Name[nl]=dist32 Name[pl]=dist32 Name[pt]=dist32 Name[pt_BR]=dist32 diff -Nru calligra-2.3.86/flow/stencils/Pneumatic/dist42.desktop calligra-2.3.87/flow/stencils/Pneumatic/dist42.desktop --- calligra-2.3.86/flow/stencils/Pneumatic/dist42.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Pneumatic/dist42.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -1,9 +1,12 @@ [Desktop Entry] Name=dist42 Name[ca]=dist42 +Name[ca@valencia]=dist42 Name[el]=dist42 +Name[et]=Reguleerimisventiil 42 Name[it]=dist42 Name[nb]=4/2-distributør +Name[nl]=dist42 Name[pl]=dist42 Name[pt]=dist42 Name[pt_BR]=dist42 diff -Nru calligra-2.3.86/flow/stencils/Pneumatic/dist52.desktop calligra-2.3.87/flow/stencils/Pneumatic/dist52.desktop --- calligra-2.3.86/flow/stencils/Pneumatic/dist52.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Pneumatic/dist52.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -1,9 +1,12 @@ [Desktop Entry] Name=dist52 Name[ca]=dist52 +Name[ca@valencia]=dist52 Name[el]=dist52 +Name[et]=Reguleerimisventiil 52 Name[it]=dist52 Name[nb]=5/2-distributør +Name[nl]=dist52 Name[pl]=dist52 Name[pt]=dist52 Name[pt_BR]=dist52 diff -Nru calligra-2.3.86/flow/stencils/Pneumatic/drain.desktop calligra-2.3.87/flow/stencils/Pneumatic/drain.desktop --- calligra-2.3.86/flow/stencils/Pneumatic/drain.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Pneumatic/drain.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -1,8 +1,11 @@ [Desktop Entry] Name=drain Name[ca]=desguàs +Name[ca@valencia]=desguàs +Name[et]=Äravool Name[it]=pozzo Name[nb]=utløp +Name[nl]=drain Name[pl]=dren Name[pt]=dreno Name[pt_BR]=dreno diff -Nru calligra-2.3.86/flow/stencils/Pneumatic/press.desktop calligra-2.3.87/flow/stencils/Pneumatic/press.desktop --- calligra-2.3.86/flow/stencils/Pneumatic/press.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Pneumatic/press.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -1,9 +1,12 @@ [Desktop Entry] Name=press Name[ca]=premsa +Name[ca@valencia]=premsa Name[cs]=stiskněte +Name[et]=Surve Name[it]=press Name[nb]=trykk +Name[nl]=drukken Name[pl]=docisk Name[pt]=pressão Name[pt_BR]=pressão diff -Nru calligra-2.3.86/flow/stencils/Pneumatic/presshy.desktop calligra-2.3.87/flow/stencils/Pneumatic/presshy.desktop --- calligra-2.3.86/flow/stencils/Pneumatic/presshy.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Pneumatic/presshy.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -1,9 +1,12 @@ [Desktop Entry] Name=presshy Name[ca]=presshy +Name[ca@valencia]=presshy Name[el]=presshy +Name[et]=Hüdrauliline surve Name[it]=presshy Name[nb]=hydr. trykk-kilde +Name[nl]=presshy Name[pl]=presshy Name[pt]=presshid Name[pt_BR]=presshy diff -Nru calligra-2.3.86/flow/stencils/Pneumatic/presspn.desktop calligra-2.3.87/flow/stencils/Pneumatic/presspn.desktop --- calligra-2.3.86/flow/stencils/Pneumatic/presspn.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Pneumatic/presspn.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -1,9 +1,12 @@ [Desktop Entry] Name=presspn Name[ca]=presspn +Name[ca@valencia]=presspn Name[el]=presspn +Name[et]=Pneumaatiline surve Name[it]=presspn Name[nb]=pneum. trykk-kilde +Name[nl]=presspn Name[pl]=presspn Name[pt]=presspn Name[pt_BR]=presspn diff -Nru calligra-2.3.86/flow/stencils/Pneumatic/seijack.desktop calligra-2.3.87/flow/stencils/Pneumatic/seijack.desktop --- calligra-2.3.86/flow/stencils/Pneumatic/seijack.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Pneumatic/seijack.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -1,10 +1,13 @@ [Desktop Entry] Name=SEIJack Name[ca]=SEIJack +Name[ca@valencia]=SEIJack Name[de]=SEIJack Name[el]=SEIJack +Name[et]=Vedruga tõukesilinder Name[it]=SEIJack Name[nb]=SEIJack +Name[nl]=SEIJack Name[pl]=SEIJack Name[pt]=SEIJack Name[pt_BR]=SEIJack diff -Nru calligra-2.3.86/flow/stencils/Pneumatic/seojack.desktop calligra-2.3.87/flow/stencils/Pneumatic/seojack.desktop --- calligra-2.3.86/flow/stencils/Pneumatic/seojack.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Pneumatic/seojack.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -1,10 +1,13 @@ [Desktop Entry] Name=SEOJack Name[ca]=SEOJack +Name[ca@valencia]=SEOJack Name[de]=SEOJack Name[el]=SEOJack +Name[et]=Vedruga tõmbesilinder Name[it]=SEOJack Name[nb]=SEOJack +Name[nl]=SEOJack Name[pl]=SEOJack Name[pt]=SEOJack Name[pt_BR]=SEOJack diff -Nru calligra-2.3.86/flow/stencils/Racks/collection.desktop calligra-2.3.87/flow/stencils/Racks/collection.desktop --- calligra-2.3.86/flow/stencils/Racks/collection.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Racks/collection.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -1,11 +1,13 @@ [Desktop Entry] Name=Racks Name[ca]=Racks +Name[ca@valencia]=Racks Name[el]=Οδοντωτές βάσεις Name[es]=Racks -Name[et]=Püstikud +Name[et]=Seadmekapid Name[it]=Rack Name[nb]=Stativer +Name[nl]=Racks Name[pl]=Racks Name[pt]=Bastidores Name[pt_BR]=Racks diff -Nru calligra-2.3.86/flow/stencils/Racks/equipment_10u.desktop calligra-2.3.87/flow/stencils/Racks/equipment_10u.desktop --- calligra-2.3.86/flow/stencils/Racks/equipment_10u.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Racks/equipment_10u.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -1,9 +1,12 @@ [Desktop Entry] Name=Equipment 10U Name[ca]=Equipment 10U +Name[ca@valencia]=Equipment 10U Name[el]=Εξοπλισμός 10U +Name[et]=Kapp 10U Name[it]=Dispositivo 10U Name[nb]=Utstyr 10U +Name[nl]=Apparatuur 10U Name[pl]=Wyposażenie 10U Name[pt]=Equipamento 10U Name[pt_BR]=Equipamento 10U diff -Nru calligra-2.3.86/flow/stencils/Racks/equipment_11u.desktop calligra-2.3.87/flow/stencils/Racks/equipment_11u.desktop --- calligra-2.3.86/flow/stencils/Racks/equipment_11u.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Racks/equipment_11u.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -1,9 +1,12 @@ [Desktop Entry] Name=Equipment 11U Name[ca]=Equipment 11U +Name[ca@valencia]=Equipment 11U Name[el]=Εξοπλισμός 11U +Name[et]=Kapp 11U Name[it]=Dispositivo 11U Name[nb]=Utstyr 11U +Name[nl]=Apparatuur 11U Name[pl]=Wyposażenie 11U Name[pt]=Equipamento 11U Name[pt_BR]=Equipamento 11U diff -Nru calligra-2.3.86/flow/stencils/Racks/equipment_12u.desktop calligra-2.3.87/flow/stencils/Racks/equipment_12u.desktop --- calligra-2.3.86/flow/stencils/Racks/equipment_12u.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Racks/equipment_12u.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -1,9 +1,12 @@ [Desktop Entry] Name=Equipment 12U Name[ca]=Equipment 12U +Name[ca@valencia]=Equipment 12U Name[el]=Εξοπλισμός 12U +Name[et]=Kapp 12U Name[it]=Dispositivo 12U Name[nb]=Utstyr 12U +Name[nl]=Apparatuur 12U Name[pl]=Wyposażenie 12U Name[pt]=Equipamento 12U Name[pt_BR]=Equipamento 12U diff -Nru calligra-2.3.86/flow/stencils/Racks/equipment_1u.desktop calligra-2.3.87/flow/stencils/Racks/equipment_1u.desktop --- calligra-2.3.86/flow/stencils/Racks/equipment_1u.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Racks/equipment_1u.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -1,9 +1,12 @@ [Desktop Entry] Name=Equipment 1U Name[ca]=Equipment 1U +Name[ca@valencia]=Equipment 1U Name[el]=Εξοπλισμός 1U +Name[et]=Kapp 1U Name[it]=Dispositivo 1U Name[nb]=Utstyr 1U +Name[nl]=Apparatuur 1U Name[pl]=Wyposażenie 1U Name[pt]=Equipamento 1U Name[pt_BR]=Equipamento 1U diff -Nru calligra-2.3.86/flow/stencils/Racks/equipment_2u.desktop calligra-2.3.87/flow/stencils/Racks/equipment_2u.desktop --- calligra-2.3.86/flow/stencils/Racks/equipment_2u.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Racks/equipment_2u.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -1,9 +1,12 @@ [Desktop Entry] Name=Equipment 2U Name[ca]=Equipment 2U +Name[ca@valencia]=Equipment 2U Name[el]=Εξοπλισμός 2U +Name[et]=Kapp 2U Name[it]=Dispositivo 2U Name[nb]=Utstyr 2U +Name[nl]=Apparatuur 2U Name[pl]=Wyposażenie 2U Name[pt]=Equipamento 2U Name[pt_BR]=Equipamento 2U diff -Nru calligra-2.3.86/flow/stencils/Racks/equipment_3u.desktop calligra-2.3.87/flow/stencils/Racks/equipment_3u.desktop --- calligra-2.3.86/flow/stencils/Racks/equipment_3u.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Racks/equipment_3u.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -1,9 +1,12 @@ [Desktop Entry] Name=Equipment 3U Name[ca]=Equipment 3U +Name[ca@valencia]=Equipment 3U Name[el]=Εξοπλισμός 3U +Name[et]=Kapp 3U Name[it]=Equipment 3U Name[nb]=Utstyr 3U +Name[nl]=Apparatuur 3U Name[pl]=Wyposażenie 3U Name[pt]=Equipamento 3U Name[pt_BR]=Equipamento 3U diff -Nru calligra-2.3.86/flow/stencils/Racks/equipment_4u.desktop calligra-2.3.87/flow/stencils/Racks/equipment_4u.desktop --- calligra-2.3.86/flow/stencils/Racks/equipment_4u.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Racks/equipment_4u.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -1,9 +1,12 @@ [Desktop Entry] Name=Equipment 4U Name[ca]=Equipment 4U +Name[ca@valencia]=Equipment 4U Name[el]=Εξοπλισμός 4U +Name[et]=Kapp 4U Name[it]=Dispositivo 4U Name[nb]=Utstyr 4U +Name[nl]=Apparatuur 4U Name[pl]=Wyposażenie 4U Name[pt]=Equipamento 4U Name[pt_BR]=Equipamento 4U diff -Nru calligra-2.3.86/flow/stencils/Racks/equipment_5u.desktop calligra-2.3.87/flow/stencils/Racks/equipment_5u.desktop --- calligra-2.3.86/flow/stencils/Racks/equipment_5u.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Racks/equipment_5u.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -1,9 +1,12 @@ [Desktop Entry] Name=Equipment 5U Name[ca]=Equipment 5U +Name[ca@valencia]=Equipment 5U Name[el]=Εξοπλισμός 5U +Name[et]=Kapp 5U Name[it]=Dispositivo 5U Name[nb]=Utstyr 5U +Name[nl]=Apparatuur 5U Name[pl]=Wyposażenie 5U Name[pt]=Equipamento 5U Name[pt_BR]=Equipamento 5U diff -Nru calligra-2.3.86/flow/stencils/Racks/equipment_6u.desktop calligra-2.3.87/flow/stencils/Racks/equipment_6u.desktop --- calligra-2.3.86/flow/stencils/Racks/equipment_6u.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Racks/equipment_6u.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -1,9 +1,12 @@ [Desktop Entry] Name=Equipment 6U Name[ca]=Equipment 6U +Name[ca@valencia]=Equipment 6U Name[el]=Εξοπλισμός 6U +Name[et]=Kapp 6U Name[it]=Dispositivo 6U Name[nb]=Utstyr 6U +Name[nl]=Apparatuur 6U Name[pl]=Wyposażenie 6U Name[pt]=Equipamento 6U Name[pt_BR]=Equipamento 6U diff -Nru calligra-2.3.86/flow/stencils/Racks/equipment_7u.desktop calligra-2.3.87/flow/stencils/Racks/equipment_7u.desktop --- calligra-2.3.86/flow/stencils/Racks/equipment_7u.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Racks/equipment_7u.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -1,9 +1,12 @@ [Desktop Entry] Name=Equipment 7U Name[ca]=Equipment 7U +Name[ca@valencia]=Equipment 7U Name[el]=Εξοπλισμός 7U +Name[et]=Kapp 7U Name[it]=Dispositivo 7U Name[nb]=Utstyr 7U +Name[nl]=Apparatuur 7U Name[pl]=Wyposażenie 7U Name[pt]=Equipamento 7U Name[pt_BR]=Equipamento 7U diff -Nru calligra-2.3.86/flow/stencils/Racks/equipment_8u.desktop calligra-2.3.87/flow/stencils/Racks/equipment_8u.desktop --- calligra-2.3.86/flow/stencils/Racks/equipment_8u.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Racks/equipment_8u.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -1,9 +1,12 @@ [Desktop Entry] Name=Equipment 8U Name[ca]=Equipment 8U +Name[ca@valencia]=Equipment 8U Name[el]=Εξοπλισμός 8U +Name[et]=Kapp 8U Name[it]=Equipment 8U Name[nb]=Utstyr 8U +Name[nl]=Apparatuur 8U Name[pl]=Wyposażenie 8U Name[pt]=Equipamento 8U Name[pt_BR]=Equipamento 8U diff -Nru calligra-2.3.86/flow/stencils/Racks/equipment_9u.desktop calligra-2.3.87/flow/stencils/Racks/equipment_9u.desktop --- calligra-2.3.86/flow/stencils/Racks/equipment_9u.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Racks/equipment_9u.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -1,9 +1,12 @@ [Desktop Entry] Name=Equipment 9U Name[ca]=Equipment 9U +Name[ca@valencia]=Equipment 9U Name[el]=Εξοπλισμός 9U +Name[et]=Kapp 9U Name[it]=Dispositivo 9U Name[nb]=Utstyr 9U +Name[nl]=Apparatuur 9U Name[pl]=Wyposażenie 9U Name[pt]=Equipamento 9U Name[pt_BR]=Equipamento 9U diff -Nru calligra-2.3.86/flow/stencils/Racks/power_strip_bs_7.desktop calligra-2.3.87/flow/stencils/Racks/power_strip_bs_7.desktop --- calligra-2.3.86/flow/stencils/Racks/power_strip_bs_7.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Racks/power_strip_bs_7.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -1,9 +1,12 @@ [Desktop Entry] Name=Power Strip BS 7 Name[ca]=Power Strip BS 7 +Name[ca@valencia]=Power Strip BS 7 Name[el]=Πολύπριζο BS 7 +Name[et]=Toitepaneel BS 7 Name[it]=Barra di alimentazione BS 7 Name[nb]=Grenuttak BS 7 +Name[nl]=Powerstrip BS 7 Name[pl]=Power Strip BS 7 Name[pt]=Extensão Energia BS 7 Name[pt_BR]=Extensão de energia BS 7 diff -Nru calligra-2.3.86/flow/stencils/Racks/power_strip_schuko_8.desktop calligra-2.3.87/flow/stencils/Racks/power_strip_schuko_8.desktop --- calligra-2.3.86/flow/stencils/Racks/power_strip_schuko_8.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Racks/power_strip_schuko_8.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -1,9 +1,12 @@ [Desktop Entry] Name=Power Strip Schuko 8 Name[ca]=Power Strip Schuko 8 +Name[ca@valencia]=Power Strip Schuko 8 Name[el]=Πολύπριζο Schuko 8 +Name[et]=Toitepaneel Schuko 8 Name[it]=Barra di alimentazione Schuko 8 Name[nb]=Grenuttak Schuko 8 +Name[nl]=Powerstrip Schuko 8 Name[pl]=Power Strip Schuko 8 Name[pt]=Extensão Energia Schuko 8 Name[pt_BR]=Extensão de energia Schuko 8 diff -Nru calligra-2.3.86/flow/stencils/Racks/power_strip_ute_8.desktop calligra-2.3.87/flow/stencils/Racks/power_strip_ute_8.desktop --- calligra-2.3.86/flow/stencils/Racks/power_strip_ute_8.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Racks/power_strip_ute_8.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -1,9 +1,12 @@ [Desktop Entry] Name=Power Strip UTE 8 Name[ca]=Power Strip UTE 8 +Name[ca@valencia]=Power Strip UTE 8 Name[el]=Πολύπριζο UTE 8 +Name[et]=Toitepaneel UTE 8 Name[it]=Barra di alimentazione UTE 8 Name[nb]=Grenuttak UTE 8 +Name[nl]=Powerstrip UTE 8 Name[pl]=Power Strip UTE 8 Name[pt]=Extensão Energia UTE 8 Name[pt_BR]=Extensão de energia UTE 8 diff -Nru calligra-2.3.86/flow/stencils/Racks/rack_12u.desktop calligra-2.3.87/flow/stencils/Racks/rack_12u.desktop --- calligra-2.3.86/flow/stencils/Racks/rack_12u.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Racks/rack_12u.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -2,12 +2,14 @@ Name=Rack 12U Name[bg]=Шкаф 12U Name[ca]=Rack 12U +Name[ca@valencia]=Rack 12U Name[de]=Rack 12U Name[el]=Οδοντωτή βάση 12U Name[es]=Rack 12U -Name[et]=Püstik 12U +Name[et]=Seadmekapp 12U Name[it]=Rack 12U Name[nb]=Stativ 12U +Name[nl]=Rack 12U Name[pl]=Rack 12U Name[pt]=Bastidor 12U Name[pt_BR]=Rack 12U diff -Nru calligra-2.3.86/flow/stencils/Racks/rack_16u.desktop calligra-2.3.87/flow/stencils/Racks/rack_16u.desktop --- calligra-2.3.86/flow/stencils/Racks/rack_16u.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Racks/rack_16u.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -2,12 +2,14 @@ Name=Rack 16U Name[bg]=Шкаф 16U Name[ca]=Rack 16U +Name[ca@valencia]=Rack 16U Name[de]=Rack 16U Name[el]=Οδοντωτή βάση 16U Name[es]=Rack 16U -Name[et]=Püstik 16U +Name[et]=Seadmekapp 16U Name[it]=Rack 16U Name[nb]=Stativ 16U +Name[nl]=Rack 16U Name[pl]=Rack 16U Name[pt]=Bastidor 16U Name[pt_BR]=Rack 16U diff -Nru calligra-2.3.86/flow/stencils/Racks/rack_20u.desktop calligra-2.3.87/flow/stencils/Racks/rack_20u.desktop --- calligra-2.3.86/flow/stencils/Racks/rack_20u.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Racks/rack_20u.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -2,12 +2,14 @@ Name=Rack 20U Name[bg]=Шкаф 20U Name[ca]=Rack 20U +Name[ca@valencia]=Rack 20U Name[de]=Rack 20U Name[el]=Οδοντωτή βάση 20U Name[es]=Rack 20U -Name[et]=Püstik 20U +Name[et]=Seadmekapp 20U Name[it]=Rack 20U Name[nb]=Stativ 20U +Name[nl]=Rack 20U Name[pl]=Rack 20U Name[pt]=Bastidor 20U Name[pt_BR]=Rack 20U diff -Nru calligra-2.3.86/flow/stencils/Racks/rack_38u.desktop calligra-2.3.87/flow/stencils/Racks/rack_38u.desktop --- calligra-2.3.86/flow/stencils/Racks/rack_38u.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Racks/rack_38u.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -2,12 +2,14 @@ Name=Rack 38U Name[bg]=Шкаф 38U Name[ca]=Rack 38U +Name[ca@valencia]=Rack 38U Name[de]=Rack 38U Name[el]=Οδοντωτή βάση 38U Name[es]=Rack 28U -Name[et]=Püstik 38U +Name[et]=Seadmekapp 38U Name[it]=Rack 38U Name[nb]=Rack 38U +Name[nl]=Rack 38U Name[pl]=Rack 38U Name[pt]=Bastidor 38U Name[pt_BR]=Rack 38U diff -Nru calligra-2.3.86/flow/stencils/Racks/rack_42u.desktop calligra-2.3.87/flow/stencils/Racks/rack_42u.desktop --- calligra-2.3.86/flow/stencils/Racks/rack_42u.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Racks/rack_42u.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -2,12 +2,14 @@ Name=Rack 42U Name[bg]=Шкаф 42U Name[ca]=Rack 42U +Name[ca@valencia]=Rack 42U Name[de]=Rack 42U Name[el]=Οδοντωτή βάση 42U Name[es]=Rack42U -Name[et]=Püstik 42U +Name[et]=Seadmekapp 42U Name[it]=Rack 42U Name[nb]=Stativ 42U +Name[nl]=Rack 42U Name[pl]=Rack 42U Name[pt]=Bastidor 42U Name[pt_BR]=Rack 42U diff -Nru calligra-2.3.86/flow/stencils/Racks/rack_label_anchors_42u.desktop calligra-2.3.87/flow/stencils/Racks/rack_label_anchors_42u.desktop --- calligra-2.3.86/flow/stencils/Racks/rack_label_anchors_42u.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Racks/rack_label_anchors_42u.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -1,6 +1,8 @@ [Desktop Entry] Name=Label Anchors 42U Name[ca]=Label Anchors 42U +Name[ca@valencia]=Label Anchors 42U +Name[et]=Sildikinnitid 42U Name[it]=Ancore leggenda 42U Name[nb]=Etikettfester 42U Name[pl]=Label Anchors 42U diff -Nru calligra-2.3.86/flow/stencils/RDP/collection.desktop calligra-2.3.87/flow/stencils/RDP/collection.desktop --- calligra-2.3.86/flow/stencils/RDP/collection.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/RDP/collection.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -2,6 +2,7 @@ Name=RDP Name[bg]=RDP Name[ca]=RDP +Name[ca@valencia]=RDP Name[cs]=RDP Name[de]=RDP Name[el]=RDP diff -Nru calligra-2.3.86/flow/stencils/RDP/place.desktop calligra-2.3.87/flow/stencils/RDP/place.desktop --- calligra-2.3.86/flow/stencils/RDP/place.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/RDP/place.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -1,10 +1,12 @@ [Desktop Entry] Name=place Name[ca]=lloc +Name[ca@valencia]=lloc Name[el]=τόπος Name[et]=Olek Name[it]=locale Name[nb]=sted +Name[nl]=Plaats Name[pl]=miejsce Name[pt]=local Name[pt_BR]=local diff -Nru calligra-2.3.86/flow/stencils/RDP/place_marquee.desktop calligra-2.3.87/flow/stencils/RDP/place_marquee.desktop --- calligra-2.3.86/flow/stencils/RDP/place_marquee.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/RDP/place_marquee.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -1,8 +1,11 @@ [Desktop Entry] Name=place marquee Name[ca]=placa de marquesina +Name[ca@valencia]=placa de marquesina +Name[et]=Märgitud olek Name[it]=marcatore locale Name[nb]=stedsbaldakin +Name[nl]=gemarkeerde plaats Name[pl]=znacznik miejsca Name[pt]=marcador local Name[pt_BR]=marcador de local diff -Nru calligra-2.3.86/flow/stencils/RDP/transition.desktop calligra-2.3.87/flow/stencils/RDP/transition.desktop --- calligra-2.3.86/flow/stencils/RDP/transition.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/RDP/transition.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -1,11 +1,13 @@ [Desktop Entry] Name=transition Name[ca]=transició +Name[ca@valencia]=transició Name[el]=μετάβαση Name[es]=transición Name[et]=Üleminek Name[it]=transizione Name[nb]=overgang +Name[nl]=overgang Name[pl]=przejście Name[pt]=transição Name[pt_BR]=transição diff -Nru calligra-2.3.86/flow/stencils/RDP/t_transition.desktop calligra-2.3.87/flow/stencils/RDP/t_transition.desktop --- calligra-2.3.86/flow/stencils/RDP/t_transition.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/RDP/t_transition.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -1,9 +1,12 @@ [Desktop Entry] Name=timed transition Name[ca]=transició temporitzada +Name[ca@valencia]=transició temporitzada Name[el]=χρονολογημένη μετάβαση +Name[et]=Ajastatud üleminek Name[it]=transizione a tempo Name[nb]=timet overgang +Name[nl]=Getimede overgang Name[pl]=czasowe przejście Name[pt]=transição temporizada Name[pt_BR]=transição temporizada diff -Nru calligra-2.3.86/flow/stencils/Renewable_Energy/collection.desktop calligra-2.3.87/flow/stencils/Renewable_Energy/collection.desktop --- calligra-2.3.86/flow/stencils/Renewable_Energy/collection.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Renewable_Energy/collection.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -2,10 +2,12 @@ Name=Renewable Energy Name[bg]=Възобновима енергия Name[ca]=Energia renovable +Name[ca@valencia]=Energia renovable Name[el]=Ανανεώσιμη ενέργεια -Name[et]=Taaskasutatav energia +Name[et]=Taastuvenergia Name[it]=Energia rinnovabile Name[nb]=Fornybar energi +Name[nl]=Hernieuwbare energie Name[pl]=Odnawialna energia Name[pt]=Energia Renovável Name[pt_BR]=Energia renovável diff -Nru calligra-2.3.86/flow/stencils/Renewable_Energy/cup_anemometer.desktop calligra-2.3.87/flow/stencils/Renewable_Energy/cup_anemometer.desktop --- calligra-2.3.86/flow/stencils/Renewable_Energy/cup_anemometer.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Renewable_Energy/cup_anemometer.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -1,9 +1,12 @@ [Desktop Entry] Name=Cup Anemometer Name[ca]=Anemòmetre de copa +Name[ca@valencia]=Anemòmetre de copa Name[el]=Ανεμόμετρο κούπα +Name[et]=Anemomeeter Name[it]=Anemometro a coppa Name[nb]=Kopp-anemometer +Name[nl]=Cup-anemometer Name[pl]=Wiatromierz czaszowy Name[pt]=Anemómetro Chave Name[pt_BR]=Anemômetro chave diff -Nru calligra-2.3.86/flow/stencils/Renewable_Energy/data_logger.desktop calligra-2.3.87/flow/stencils/Renewable_Energy/data_logger.desktop --- calligra-2.3.86/flow/stencils/Renewable_Energy/data_logger.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Renewable_Energy/data_logger.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -1,9 +1,12 @@ [Desktop Entry] Name=Data Logger Name[ca]=Registrador de dades +Name[ca@valencia]=Registrador de dades Name[el]=Καταγραφέας δεδομένων +Name[et]=Andmesalvesti Name[it]=Registro dati Name[nb]=Datalogger +Name[nl]=Gegevenslogger Name[pl]=Rejestrator danych Name[pt]=Registo Dados Name[pt_BR]=Registro de dados diff -Nru calligra-2.3.86/flow/stencils/Renewable_Energy/meas_tower.desktop calligra-2.3.87/flow/stencils/Renewable_Energy/meas_tower.desktop --- calligra-2.3.86/flow/stencils/Renewable_Energy/meas_tower.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Renewable_Energy/meas_tower.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -2,9 +2,12 @@ Name=Wind Measurement Tower Name[bg]=Кула за измерване на вятъра Name[ca]=Torre de mesures de vent +Name[ca@valencia]=Torre de mesures de vent Name[el]=Πύργος μέτρησης ανέμου +Name[et]=Tuulemõõtmistorn Name[it]=Torre di misurazione del vento Name[nb]=Vindmålingstårn +Name[nl]=Windmetertoren Name[pl]=Wieża pomiaru wiatru Name[pt]=Torre Medida Vento Name[pt_BR]=Torre de medida de vento diff -Nru calligra-2.3.86/flow/stencils/Renewable_Energy/solar_module.desktop calligra-2.3.87/flow/stencils/Renewable_Energy/solar_module.desktop --- calligra-2.3.86/flow/stencils/Renewable_Energy/solar_module.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Renewable_Energy/solar_module.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -1,9 +1,12 @@ [Desktop Entry] Name=Solar Module Name[ca]=Mòdul solar +Name[ca@valencia]=Mòdul solar Name[el]=Ηλιακό άρθρωμα +Name[et]=Päikesepaneel Name[it]=Pannello solare Name[nb]=Solarmodul +Name[nl]=Zonnemodule Name[pl]=Moduł solarny Name[pt]=Módulo Solar Name[pt_BR]=Módulo solar diff -Nru calligra-2.3.86/flow/stencils/Renewable_Energy/temp_humi_sensor.desktop calligra-2.3.87/flow/stencils/Renewable_Energy/temp_humi_sensor.desktop --- calligra-2.3.86/flow/stencils/Renewable_Energy/temp_humi_sensor.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Renewable_Energy/temp_humi_sensor.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -1,10 +1,12 @@ [Desktop Entry] Name=Temperature and Humidity Sensor Name[ca]=Sensor de temperatura i humitat +Name[ca@valencia]=Sensor de temperatura i humitat Name[el]=Αισθητήρας θερμοκρασίας και υγρασίας -Name[et]=Temperatuuri ja niiskuse mõõdik +Name[et]=Temperatuuri ja niiskuse andur Name[it]=Sensore di temperatura e umidità Name[nb]=Temperatur- og fuktighetssensor +Name[nl]=Temperatuur- en vochtigheidssensor Name[pl]=Czujnik temperatury i wilgotności Name[pt]=Sensor Temperatura/Humidade Name[pt_BR]=Sensor de temperatura/umidade diff -Nru calligra-2.3.86/flow/stencils/Renewable_Energy/wind_turbine.desktop calligra-2.3.87/flow/stencils/Renewable_Energy/wind_turbine.desktop --- calligra-2.3.86/flow/stencils/Renewable_Energy/wind_turbine.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Renewable_Energy/wind_turbine.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -2,10 +2,12 @@ Name=Wind Turbine Name[bg]=Вятърна турбина Name[ca]=Turbina de vent +Name[ca@valencia]=Turbina de vent Name[el]=Ανεμογεννήτρια -Name[et]=Tuuleturbiin +Name[et]=Tuulegeneraator Name[it]=Turbina eolica Name[nb]=Vindturbin +Name[nl]=Windturbine Name[pl]=Turbina wiatrowa Name[pt]=Turbina Eólica Name[pt_BR]=Turbina eólica diff -Nru calligra-2.3.86/flow/stencils/Renewable_Energy/wind_vane.desktop calligra-2.3.87/flow/stencils/Renewable_Energy/wind_vane.desktop --- calligra-2.3.86/flow/stencils/Renewable_Energy/wind_vane.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Renewable_Energy/wind_vane.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -1,9 +1,12 @@ [Desktop Entry] Name=Wind Vane Name[ca]=Anemòmetre +Name[ca@valencia]=Anemòmetre Name[el]=Ανεμοδείκτης +Name[et]=Tuulelipp Name[it]=Segnavento Name[nb]=Vindfløy +Name[nl]=Windvaan Name[pl]=Wiatrowskaz Name[pt]=Pá Eólica Name[pt_BR]=Veio eólico diff -Nru calligra-2.3.86/flow/stencils/Scenegraph/appearance.desktop calligra-2.3.87/flow/stencils/Scenegraph/appearance.desktop --- calligra-2.3.86/flow/stencils/Scenegraph/appearance.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Scenegraph/appearance.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -1,12 +1,14 @@ [Desktop Entry] Name=appearance Name[ca]=aparença +Name[ca@valencia]=aparença Name[cs]=vzhled Name[el]=εμφάνιση Name[et]=Välimus Name[it]=aspetto Name[nb]=utseende Name[nds]=Utsehn +Name[nl]=Uiterlijk Name[pl]=wygląd Name[pt]=aparência Name[pt_BR]=aparência diff -Nru calligra-2.3.86/flow/stencils/Scenegraph/callback.desktop calligra-2.3.87/flow/stencils/Scenegraph/callback.desktop --- calligra-2.3.86/flow/stencils/Scenegraph/callback.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Scenegraph/callback.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -1,11 +1,14 @@ [Desktop Entry] Name=callback Name[ca]=crida de retorn +Name[ca@valencia]=crida de retorn Name[cs]=zpětné volání Name[el]=επανάκληση +Name[et]=Tagasiside Name[it]=callback Name[nb]=tilbakekall Name[nds]=Torüchroop +Name[nl]=terugbelverzoek Name[pl]=polecenie zwrotne Name[pt]=retorno Name[pt_BR]=retorno diff -Nru calligra-2.3.86/flow/stencils/Scenegraph/camera.desktop calligra-2.3.87/flow/stencils/Scenegraph/camera.desktop --- calligra-2.3.86/flow/stencils/Scenegraph/camera.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Scenegraph/camera.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -2,9 +2,10 @@ Name=camera Name[bg]=камера Name[ca]=càmera +Name[ca@valencia]=càmera Name[cs]=kamera Name[el]=κάμερα -Name[et]=kaamera +Name[et]=Kaamera Name[it]=camera Name[nb]=kamera Name[nds]=Kamera diff -Nru calligra-2.3.86/flow/stencils/Scenegraph/collection.desktop calligra-2.3.87/flow/stencils/Scenegraph/collection.desktop --- calligra-2.3.86/flow/stencils/Scenegraph/collection.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Scenegraph/collection.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -1,7 +1,9 @@ [Desktop Entry] Name=Scenegraph Name[ca]=Escenògraf +Name[ca@valencia]=Escenògraf Name[el]=Σκηνογράφος +Name[et]=Stseenigraaf Name[it]=Scenegraph Name[nb]=Scenegraph Name[pl]=Wykres sceny diff -Nru calligra-2.3.86/flow/stencils/Scenegraph/component.desktop calligra-2.3.87/flow/stencils/Scenegraph/component.desktop --- calligra-2.3.86/flow/stencils/Scenegraph/component.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Scenegraph/component.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -1,11 +1,12 @@ [Desktop Entry] Name=component Name[ca]=component +Name[ca@valencia]=component Name[cs]=komponenta Name[da]=komponent Name[el]=συστατικό Name[es]=componente -Name[et]=komponent +Name[et]=Komponent Name[it]=componente Name[nb]=komponent Name[nds]=Komponent diff -Nru calligra-2.3.86/flow/stencils/Scenegraph/engine.desktop calligra-2.3.87/flow/stencils/Scenegraph/engine.desktop --- calligra-2.3.86/flow/stencils/Scenegraph/engine.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Scenegraph/engine.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -2,12 +2,14 @@ Name=engine Name[bg]=двигател Name[ca]=motor +Name[ca@valencia]=motor Name[cs]=motor Name[el]=μηχανή Name[et]=Mootor Name[it]=motore Name[nb]=motor Name[nds]=Motor +Name[nl]=engine Name[pl]=silnik Name[pt]=motor Name[pt_BR]=motor diff -Nru calligra-2.3.86/flow/stencils/Scenegraph/field.desktop calligra-2.3.87/flow/stencils/Scenegraph/field.desktop --- calligra-2.3.86/flow/stencils/Scenegraph/field.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Scenegraph/field.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -2,8 +2,10 @@ Name=field Name[bg]=поле Name[ca]=camp +Name[ca@valencia]=camp Name[cs]=pole Name[el]=πεδίο +Name[et]=Väli Name[it]=campo Name[nb]=felt Name[nds]=Feld diff -Nru calligra-2.3.86/flow/stencils/Scenegraph/group.desktop calligra-2.3.87/flow/stencils/Scenegraph/group.desktop --- calligra-2.3.86/flow/stencils/Scenegraph/group.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Scenegraph/group.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -2,12 +2,15 @@ Name=group Name[bg]=група Name[ca]=grup +Name[ca@valencia]=grup Name[cs]=skupina Name[el]=ομάδα Name[es]=grupo +Name[et]=Grupp Name[it]=gruppo Name[nb]=gruppe Name[nds]=Koppel +Name[nl]=groep Name[pl]=grupa Name[pt]=grupo Name[pt_BR]=grupo diff -Nru calligra-2.3.86/flow/stencils/Scenegraph/light.desktop calligra-2.3.87/flow/stencils/Scenegraph/light.desktop --- calligra-2.3.86/flow/stencils/Scenegraph/light.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Scenegraph/light.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -2,11 +2,13 @@ Name=light Name[bg]=светлина Name[ca]=llum +Name[ca@valencia]=llum Name[cs]=světlo Name[et]=Valgus Name[it]=luce Name[nb]=lys Name[nds]=Licht +Name[nl]=licht Name[pl]=światło Name[pt]=luz Name[pt_BR]=luz diff -Nru calligra-2.3.86/flow/stencils/Scenegraph/manipulator.desktop calligra-2.3.87/flow/stencils/Scenegraph/manipulator.desktop --- calligra-2.3.86/flow/stencils/Scenegraph/manipulator.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Scenegraph/manipulator.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -1,9 +1,12 @@ [Desktop Entry] Name=manipulator Name[ca]=manipulador +Name[ca@valencia]=manipulador Name[el]=χειριστής +Name[et]=Käitleja Name[it]=manipolatore Name[nb]=manipulator +Name[nl]=manipulator Name[pl]=manipulator Name[pt]=manipulador Name[pt_BR]=manipulador diff -Nru calligra-2.3.86/flow/stencils/Scenegraph/metric.desktop calligra-2.3.87/flow/stencils/Scenegraph/metric.desktop --- calligra-2.3.86/flow/stencils/Scenegraph/metric.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Scenegraph/metric.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -1,10 +1,13 @@ [Desktop Entry] Name=metric Name[ca]=mètrica +Name[ca@valencia]=mètrica Name[el]=μετρικό +Name[et]=Meetrika Name[it]=metrico Name[nb]=metrikk Name[nds]=Metersch +Name[nl]=metrisch Name[pl]=metryka Name[pt]=métrica Name[pt_BR]=métrica diff -Nru calligra-2.3.86/flow/stencils/Scenegraph/nodekit.desktop calligra-2.3.87/flow/stencils/Scenegraph/nodekit.desktop --- calligra-2.3.86/flow/stencils/Scenegraph/nodekit.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Scenegraph/nodekit.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -1,9 +1,12 @@ [Desktop Entry] Name=nodekit Name[ca]=kit de node +Name[ca@valencia]=kit de node Name[el]=nodekit +Name[et]=Sõlmerühm Name[it]=nodekit Name[nb]=nodesett +Name[nl]=nodekit Name[pl]=nodekit Name[pt]=kit-nós Name[pt_BR]=kit de nós diff -Nru calligra-2.3.86/flow/stencils/Scenegraph/property.desktop calligra-2.3.87/flow/stencils/Scenegraph/property.desktop --- calligra-2.3.86/flow/stencils/Scenegraph/property.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Scenegraph/property.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -2,6 +2,7 @@ Name=property Name[bg]=свойство Name[ca]=propietat +Name[ca@valencia]=propietat Name[cs]=vlastnost Name[el]=ιδιότητα Name[et]=Omadus diff -Nru calligra-2.3.86/flow/stencils/Scenegraph/realtimeglobalfield.desktop calligra-2.3.87/flow/stencils/Scenegraph/realtimeglobalfield.desktop --- calligra-2.3.86/flow/stencils/Scenegraph/realtimeglobalfield.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Scenegraph/realtimeglobalfield.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -1,9 +1,12 @@ [Desktop Entry] Name=realtimeglobalfield Name[ca]=camp global en temps real +Name[ca@valencia]=camp global en temps real Name[el]=realtimeglobalfield +Name[et]=Globaalne reaalajaväli Name[it]=realtimeglobalfield Name[nb]=realtimeglobalfield +Name[nl]=realtimeglobalfield Name[pl]=globalnepolewczasierzeczywistym Name[pt]=campo-global-tempo-real Name[pt_BR]=campo-global-tempo-real diff -Nru calligra-2.3.86/flow/stencils/Scenegraph/separator.desktop calligra-2.3.87/flow/stencils/Scenegraph/separator.desktop --- calligra-2.3.86/flow/stencils/Scenegraph/separator.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Scenegraph/separator.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -2,13 +2,15 @@ Name=separator Name[bg]=разделител Name[ca]=separador +Name[ca@valencia]=separador Name[cs]=oddělovač Name[el]=διαχωριστικό Name[es]=separador -Name[et]=eraldaja +Name[et]=Eraldaja Name[it]=separatore Name[nb]=skiller Name[nds]=Trenner +Name[nl]=scheiding Name[pl]=separator Name[pt]=separador Name[pt_BR]=separador diff -Nru calligra-2.3.86/flow/stencils/Scenegraph/shape.desktop calligra-2.3.87/flow/stencils/Scenegraph/shape.desktop --- calligra-2.3.86/flow/stencils/Scenegraph/shape.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Scenegraph/shape.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -2,12 +2,15 @@ Name=shape Name[bg]=форма Name[ca]=forma +Name[ca@valencia]=forma Name[cs]=tvar Name[el]=σχήμα Name[et]=Kujund +Name[fi]=muoto Name[it]=forma Name[nb]=form Name[nds]=Element +Name[nl]=vorm Name[pl]=kształt Name[pt]=forma Name[pt_BR]=forma diff -Nru calligra-2.3.86/flow/stencils/Scenegraph/soselection.desktop calligra-2.3.87/flow/stencils/Scenegraph/soselection.desktop --- calligra-2.3.86/flow/stencils/Scenegraph/soselection.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Scenegraph/soselection.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -1,9 +1,12 @@ [Desktop Entry] Name=soselection Name[ca]=soselection +Name[ca@valencia]=soselection Name[el]=soselection +Name[et]=SoSelection Name[it]=soselection Name[nb]=soselection +Name[nl]=so-selectie Name[pl]=soselection Name[pt]=selecção-so Name[pt_BR]=seleção-so diff -Nru calligra-2.3.86/flow/stencils/Scenegraph/subgraph.desktop calligra-2.3.87/flow/stencils/Scenegraph/subgraph.desktop --- calligra-2.3.86/flow/stencils/Scenegraph/subgraph.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Scenegraph/subgraph.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -1,7 +1,9 @@ [Desktop Entry] Name=subgraph Name[ca]=subgràfic +Name[ca@valencia]=subgràfic Name[el]=υπο-γράφος +Name[et]=Alamgraaf Name[it]=sottografo Name[nb]=under-graf Name[pl]=pod-wykres diff -Nru calligra-2.3.86/flow/stencils/Scenegraph/switch.desktop calligra-2.3.87/flow/stencils/Scenegraph/switch.desktop --- calligra-2.3.86/flow/stencils/Scenegraph/switch.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Scenegraph/switch.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -1,7 +1,9 @@ [Desktop Entry] Name=switch Name[ca]=commutació +Name[ca@valencia]=commutació Name[cs]=přepínač +Name[et]=Vahetaja Name[it]=switch Name[nb]=switch Name[nl]=wisselen diff -Nru calligra-2.3.86/flow/stencils/Scenegraph/transform.desktop calligra-2.3.87/flow/stencils/Scenegraph/transform.desktop --- calligra-2.3.86/flow/stencils/Scenegraph/transform.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Scenegraph/transform.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -1,11 +1,14 @@ [Desktop Entry] Name=transform Name[ca]=transformació +Name[ca@valencia]=transformació Name[cs]=převést Name[el]=Μετασχηματισμός +Name[et]=Teisendus Name[it]=trasformazione Name[nb]=omdann Name[nds]=Wanneln +Name[nl]=transformeren Name[pl]=przekształć Name[pt]=transformação Name[pt_BR]=transformação diff -Nru calligra-2.3.86/flow/stencils/SDL/block.desktop calligra-2.3.87/flow/stencils/SDL/block.desktop --- calligra-2.3.86/flow/stencils/SDL/block.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/SDL/block.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -1,6 +1,7 @@ [Desktop Entry] Name=Block Name[ca]=Bloc +Name[ca@valencia]=Bloc Name[cs]=Blok Name[el]=Παρεμπόδιση Name[et]=Plokk @@ -8,6 +9,7 @@ Name[it]=Blocco Name[nb]=Blokk Name[nds]=Block +Name[nl]=Blok Name[pl]=Blok Name[pt]=Bloco Name[pt_BR]=Bloco diff -Nru calligra-2.3.86/flow/stencils/SDL/collection.desktop calligra-2.3.87/flow/stencils/SDL/collection.desktop --- calligra-2.3.86/flow/stencils/SDL/collection.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/SDL/collection.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -2,6 +2,7 @@ Name=SDL Name[bg]=SDL Name[ca]=SDL +Name[ca@valencia]=SDL Name[cs]=SDL Name[de]=SDL Name[el]=SDL diff -Nru calligra-2.3.86/flow/stencils/SDL/comment.desktop calligra-2.3.87/flow/stencils/SDL/comment.desktop --- calligra-2.3.86/flow/stencils/SDL/comment.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/SDL/comment.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -2,6 +2,7 @@ Name=Comment Name[bg]=Коментар Name[ca]=Comentari +Name[ca@valencia]=Comentari Name[cs]=Komentář Name[el]=Σχόλιο Name[es]=Comentario @@ -9,6 +10,7 @@ Name[it]=Commento Name[nb]=Kommentar Name[nds]=Kommentar +Name[nl]=Toelichting Name[pl]=Komentarz Name[pt]=Comentário Name[pt_BR]=Comentário diff -Nru calligra-2.3.86/flow/stencils/SDL/decision.desktop calligra-2.3.87/flow/stencils/SDL/decision.desktop --- calligra-2.3.86/flow/stencils/SDL/decision.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/SDL/decision.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -2,6 +2,7 @@ Name=Decision Name[bg]=Решение Name[ca]=Decisió +Name[ca@valencia]=Decisió Name[el]=Απόφαση Name[es]=Decisión Name[et]=Otsus diff -Nru calligra-2.3.86/flow/stencils/SDL/function.desktop calligra-2.3.87/flow/stencils/SDL/function.desktop --- calligra-2.3.86/flow/stencils/SDL/function.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/SDL/function.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -2,6 +2,7 @@ Name=Function Name[bg]=Функция Name[ca]=Funció +Name[ca@valencia]=Funció Name[cs]=Funkce Name[de]=Funktion Name[el]=Συνάρτηση diff -Nru calligra-2.3.86/flow/stencils/SDL/header.desktop calligra-2.3.87/flow/stencils/SDL/header.desktop --- calligra-2.3.86/flow/stencils/SDL/header.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/SDL/header.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -2,12 +2,14 @@ Name=Function Header Name[bg]=Заглавна част на функция Name[ca]=Funció Capçalera +Name[ca@valencia]=Funció Capçalera Name[el]=Header συνάρτησης Name[es]=Cabecera de función Name[et]=Funktsiooni päis Name[it]=Intestazione funzione Name[nb]=Funksjonshode Name[nds]=Funkschoonkopp +Name[nl]=Functiehoofd Name[pl]=Nagłówek funkcji Name[pt]=Cabeçalho Função Name[pt_BR]=Cabeçalho de função diff -Nru calligra-2.3.86/flow/stencils/SDL/inout.desktop calligra-2.3.87/flow/stencils/SDL/inout.desktop --- calligra-2.3.86/flow/stencils/SDL/inout.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/SDL/inout.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -2,9 +2,12 @@ Name=InOut Name[bg]=Вход/изход Name[ca]=InOut +Name[ca@valencia]=InOut +Name[et]=Sisend-väljund Name[it]=InOut Name[nb]=Inn/Ut Name[nds]=In/Ut +Name[nl]=InOut Name[pl]=WeWy Name[pt]=EntradaSaída Name[pt_BR]=EntradaSaída diff -Nru calligra-2.3.86/flow/stencils/SDL/macro.desktop calligra-2.3.87/flow/stencils/SDL/macro.desktop --- calligra-2.3.86/flow/stencils/SDL/macro.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/SDL/macro.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -2,6 +2,7 @@ Name=Macro Name[bg]=Макрос Name[ca]=Macro +Name[ca@valencia]=Macro Name[cs]=Makro Name[el]=Μακροεντολή Name[es]=Macro diff -Nru calligra-2.3.86/flow/stencils/SDL/note.desktop calligra-2.3.87/flow/stencils/SDL/note.desktop --- calligra-2.3.86/flow/stencils/SDL/note.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/SDL/note.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -2,6 +2,7 @@ Name=Note Name[bg]=Бележка Name[ca]=Nota +Name[ca@valencia]=Nota Name[cs]=Poznámka Name[el]=Σημείωση Name[es]=Nota @@ -10,6 +11,7 @@ Name[it]=Nota Name[nb]=Merknad Name[nds]=Notiz +Name[nl]=Notitie Name[pl]=Uwaga Name[pt]=Nota Name[pt_BR]=Nota diff -Nru calligra-2.3.86/flow/stencils/SDL/process.desktop calligra-2.3.87/flow/stencils/SDL/process.desktop --- calligra-2.3.86/flow/stencils/SDL/process.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/SDL/process.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -2,6 +2,7 @@ Name=Process Name[bg]=Процес Name[ca]=Procés +Name[ca@valencia]=Procés Name[cs]=Proces Name[de]=Prozess Name[el]=Διεργασία diff -Nru calligra-2.3.86/flow/stencils/SDL/receive.desktop calligra-2.3.87/flow/stencils/SDL/receive.desktop --- calligra-2.3.86/flow/stencils/SDL/receive.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/SDL/receive.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -2,6 +2,7 @@ Name=Receive Name[bg]=Получаване Name[ca]=Rep +Name[ca@valencia]=Rep Name[cs]=Přijmout Name[et]=Vastuvõtmine Name[it]=Ricevi diff -Nru calligra-2.3.86/flow/stencils/SDL/return.desktop calligra-2.3.87/flow/stencils/SDL/return.desktop --- calligra-2.3.86/flow/stencils/SDL/return.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/SDL/return.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -2,10 +2,12 @@ Name=Return Name[bg]=Връщане Name[ca]=Retorna +Name[ca@valencia]=Retorna Name[el]=Επιστροφή Name[et]=Tagastus Name[it]=Ritorno Name[nb]=Returner +Name[nl]=Return Name[pl]=Zwróć Name[pt]=Retorno Name[pt_BR]=Retorno diff -Nru calligra-2.3.86/flow/stencils/SDL/save.desktop calligra-2.3.87/flow/stencils/SDL/save.desktop --- calligra-2.3.86/flow/stencils/SDL/save.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/SDL/save.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -2,12 +2,14 @@ Name=Save Name[bg]=Запазване Name[ca]=Desa +Name[ca@valencia]=Alça Name[cs]=Uložit Name[el]=Αποθήκευση Name[et]=Salvestamine Name[it]=Salva Name[nb]=Lagre Name[nds]=Sekern +Name[nl]=Opslaan Name[pl]=Zapisz Name[pt]=Gravação Name[pt_BR]=Gravação diff -Nru calligra-2.3.86/flow/stencils/SDL/send.desktop calligra-2.3.87/flow/stencils/SDL/send.desktop --- calligra-2.3.86/flow/stencils/SDL/send.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/SDL/send.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -2,12 +2,14 @@ Name=Send Name[bg]=Изпращане Name[ca]=Envia +Name[ca@valencia]=Envia Name[cs]=Odeslat Name[el]=Αποστολή Name[et]=Saatmine Name[it]=Invia Name[nb]=Send Name[nds]=Loosstüern +Name[nl]=Verzenden Name[pl]=Wyślij Name[pt]=Envio Name[pt_BR]=Envio diff -Nru calligra-2.3.86/flow/stencils/SDL/service.desktop calligra-2.3.87/flow/stencils/SDL/service.desktop --- calligra-2.3.86/flow/stencils/SDL/service.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/SDL/service.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -2,6 +2,7 @@ Name=Service Name[bg]=Услуга Name[ca]=Servei +Name[ca@valencia]=Servei Name[cs]=Služba Name[el]=Υπηρεσία Name[es]=Servicio @@ -9,6 +10,7 @@ Name[it]=Servizio Name[nb]=Tjeneste Name[nds]=Deenst +Name[nl]=Service Name[pl]=Usługa Name[pt]=Serviço Name[pt_BR]=Serviço diff -Nru calligra-2.3.86/flow/stencils/SDL/state.desktop calligra-2.3.87/flow/stencils/SDL/state.desktop --- calligra-2.3.86/flow/stencils/SDL/state.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/SDL/state.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -2,12 +2,14 @@ Name=State Name[bg]=Състояние Name[ca]=Estat +Name[ca@valencia]=Estat Name[cs]=Stav Name[es]=Estado Name[et]=Olek Name[it]=Stato Name[nb]=Tilstand Name[nds]=Status +Name[nl]=Status Name[pl]=Stan Name[pt]=Estado Name[pt_BR]=Estado diff -Nru calligra-2.3.86/flow/stencils/SDL/stop.desktop calligra-2.3.87/flow/stencils/SDL/stop.desktop --- calligra-2.3.86/flow/stencils/SDL/stop.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/SDL/stop.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -2,6 +2,7 @@ Name=Stop Name[bg]=Спиране Name[ca]=Atura +Name[ca@valencia]=Atura Name[cs]=Zastavit Name[el]=Διακοπή Name[es]=Parar diff -Nru calligra-2.3.86/flow/stencils/SDL/task.desktop calligra-2.3.87/flow/stencils/SDL/task.desktop --- calligra-2.3.86/flow/stencils/SDL/task.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/SDL/task.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -2,12 +2,15 @@ Name=Task Name[bg]=Задача Name[ca]=Tasca +Name[ca@valencia]=Tasca Name[cs]=Úloha Name[de]=Aufgabe Name[el]=Εργασία Name[es]=Tarea Name[et]=Ülesanne +Name[hu]=Feladat Name[it]=Compito +Name[kk]=Тапсырма Name[nb]=Oppgave Name[nds]=Opgaav Name[nl]=Taak diff -Nru calligra-2.3.86/flow/stencils/Sybase/client.desktop calligra-2.3.87/flow/stencils/Sybase/client.desktop --- calligra-2.3.86/flow/stencils/Sybase/client.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Sybase/client.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -2,11 +2,13 @@ Name=Client Application Name[bg]=Клиентско приложение Name[ca]=Aplicació client +Name[ca@valencia]=Aplicació client Name[el]=Εφαρμογή χρήστη Name[et]=Klientrakendus Name[it]=Applicazione client Name[nb]=Klientprogram Name[nds]=Client-Programm +Name[nl]=Client-toepassing Name[pl]=Program kliencki Name[pt]=Aplicação do Cliente Name[pt_BR]=Aplicação cliente diff -Nru calligra-2.3.86/flow/stencils/Sybase/dataserver.desktop calligra-2.3.87/flow/stencils/Sybase/dataserver.desktop --- calligra-2.3.86/flow/stencils/Sybase/dataserver.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Sybase/dataserver.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -2,12 +2,14 @@ Name=Dataserver Name[bg]=Сървър за данни Name[ca]=Servidor de dades +Name[ca@valencia]=Servidor de dades Name[de]=Datenserver Name[el]=Εξυπηρετητής δεδομένων Name[et]=Andmeserver Name[it]=Server dati Name[nb]=Datatjener Name[nds]=Datenserver +Name[nl]=Dataserver Name[pl]=Serwer danych Name[pt]=Servidor de dados Name[pt_BR]=Servidor de dados diff -Nru calligra-2.3.86/flow/stencils/Sybase/ltm.desktop calligra-2.3.87/flow/stencils/Sybase/ltm.desktop --- calligra-2.3.86/flow/stencils/Sybase/ltm.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Sybase/ltm.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -2,6 +2,7 @@ Name=Log Transfer Manager/Rep Agent Name[bg]=Мениджър за пренос на журнали/Агент за копиране Name[ca]=Gestor de transferència de registres/Agent Rep +Name[ca@valencia]=Gestor de transferència de registres/Agent Rep Name[et]=Logiedastuse haldur/vastaja Name[it]=Gestore di trasferimento/Agente di replica Name[nb]=Loggoverføring/rep. agent diff -Nru calligra-2.3.86/flow/stencils/Sybase/repserver.desktop calligra-2.3.87/flow/stencils/Sybase/repserver.desktop --- calligra-2.3.86/flow/stencils/Sybase/repserver.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Sybase/repserver.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -2,6 +2,7 @@ Name=Replication Server Name[bg]=Репликиращ сървър Name[ca]=Servidor de rèplica +Name[ca@valencia]=Servidor de rèplica Name[de]=Replikations-Server Name[el]=Εξυπηρετητής αντιγράφων Name[es]=Servidor de replicación @@ -9,6 +10,7 @@ Name[it]=Server di replica Name[nb]=Replikeringstjener Name[nds]=Replikatschoonserver +Name[nl]=Replicatieserver Name[pl]=Serwer replikacji Name[pt]=Servidor Replicação Name[pt_BR]=Servidor de replicação diff -Nru calligra-2.3.86/flow/stencils/Sybase/rsm.desktop calligra-2.3.87/flow/stencils/Sybase/rsm.desktop --- calligra-2.3.86/flow/stencils/Sybase/rsm.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Sybase/rsm.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -2,12 +2,14 @@ Name=Replication Server Manager Name[bg]=Управление на репликиращ сървър Name[ca]=Gestor del servidor de rèplica +Name[ca@valencia]=Gestor del servidor de rèplica Name[el]=Διαχειριστής εξυπηρετητή αντιγράφων Name[es]=Gestor de servidor de replicación Name[et]=Replikatsiooniserveri haldur Name[it]=Gestore server di replica Name[nb]=Replikeringsstyrer Name[nds]=Replikatschoonserver-Pleger +Name[nl]=Replicatieserverbeheer Name[pl]=Menadżer serwera replikacji Name[pt]=Gestor do Servidor Replicação Name[pt_BR]=Gerenciador de servidor de replicação diff -Nru calligra-2.3.86/flow/stencils/Sybase/stableq.desktop calligra-2.3.87/flow/stencils/Sybase/stableq.desktop --- calligra-2.3.86/flow/stencils/Sybase/stableq.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Sybase/stableq.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -2,10 +2,12 @@ Name=Stable Queue Name[bg]=Стабилна опашка Name[ca]=Cua estable +Name[ca@valencia]=Cua estable Name[el]=Σταθερή σειρά αναμονής Name[et]=Stabiilne järjekord Name[it]=Coda stabile Name[nb]=Stabil kø +Name[nl]=Stabiele wachtrij Name[pl]=Stabilna kolejka Name[pt]=Fila Estável Name[pt_BR]=Fila estável diff -Nru calligra-2.3.86/flow/stencils/Value_Stream_Mapping/collection.desktop calligra-2.3.87/flow/stencils/Value_Stream_Mapping/collection.desktop --- calligra-2.3.86/flow/stencils/Value_Stream_Mapping/collection.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Value_Stream_Mapping/collection.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -1,6 +1,8 @@ [Desktop Entry] Name=Value Stream Mapping Name[ca]=Correspondència del valor del flux de dades +Name[ca@valencia]=Correspondència del valor del flux de dades +Name[et]=Väärtusvoo analüüs Name[it]=Associazione sequenza di valori Name[nb]=Verdistrøm-mapping Name[pl]=Mapowanie strumienia wartości diff -Nru calligra-2.3.86/flow/stencils/Value_Stream_Mapping/happy_face.desktop calligra-2.3.87/flow/stencils/Value_Stream_Mapping/happy_face.desktop --- calligra-2.3.86/flow/stencils/Value_Stream_Mapping/happy_face.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/flow/stencils/Value_Stream_Mapping/happy_face.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -1,9 +1,12 @@ [Desktop Entry] Name=Happy Face Name[ca]=Cara feliç +Name[ca@valencia]=Cara feliç Name[el]=Happy Face +Name[et]=Naerunägu Name[it]=Faccia felice Name[nb]=Smilefjes +Name[nl]=Vrolijk gezicht Name[pl]=Szczęśliwa buźka Name[pt]=Cara Feliz Name[pt_BR]=Cara feliz diff -Nru calligra-2.3.86/karbon/CMakeLists.txt calligra-2.3.87/karbon/CMakeLists.txt --- calligra-2.3.86/karbon/CMakeLists.txt 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/karbon/CMakeLists.txt 2012-01-28 07:04:48.000000000 +0000 @@ -44,7 +44,7 @@ set(karbon_KDEINIT_SRCS main.cpp ) -kde4_add_app_icon( karbon_KDEINIT_SRCS "${CMAKE_CURRENT_SOURCE_DIR}/pics/hi*-app-karbon.png" ) +kde4_add_app_icon( karbon_KDEINIT_SRCS "${CMAKE_CURRENT_SOURCE_DIR}/pics/app/hi*-app-karbon.png" ) kde4_add_kdeinit_executable( karbon ${karbon_KDEINIT_SRCS}) if (Q_WS_MAC) diff -Nru calligra-2.3.86/karbon/data/karbonpart.desktop calligra-2.3.87/karbon/data/karbonpart.desktop --- calligra-2.3.86/karbon/data/karbonpart.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/karbon/data/karbonpart.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -2,6 +2,7 @@ Name=Calligra Scalable Graphics Component Name[bg]=Компонент за векторна графика в Calligra Name[ca]=Component de gràfics escalables del Calligra +Name[ca@valencia]=Component de gràfics escalables del Calligra Name[cs]=SVG komponenta pro Calligra Office Name[da]=Calligra-komponent til skalérbar grafik Name[de]=Calligra-Komponente für Vektorgrafiken @@ -9,6 +10,7 @@ Name[it]=Componente per grafica vettoriale di Calligra Name[nb]=Skalerbar grafikk-komponent for Calligra Name[nds]=Calligra-Komponent för Vektorgrafiken +Name[nl]=Vectorafbeeldingencomponent voor Calligra Name[pl]=Składnik skalowalnej grafiki dla Calligry Name[pt]=Componente de Imagens Escaláveis do Calligra Name[pt_BR]=Componente de imagens vetoriais do Calligra diff -Nru calligra-2.3.86/kexi/kexiutils/CMakeLists.txt calligra-2.3.87/kexi/kexiutils/CMakeLists.txt --- calligra-2.3.86/kexi/kexiutils/CMakeLists.txt 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/kexi/kexiutils/CMakeLists.txt 2012-01-28 07:04:48.000000000 +0000 @@ -21,6 +21,7 @@ KexiContextMessage.cpp KexiTitleLabel.cpp KexiLinkWidget.cpp + KexiLinkButton.cpp KexiAssistantPage.cpp KexiAssistantWidget.cpp KexiAnimatedLayout.cpp diff -Nru calligra-2.3.86/kexi/kexiutils/KexiAssistantPage.cpp calligra-2.3.87/kexi/kexiutils/KexiAssistantPage.cpp --- calligra-2.3.86/kexi/kexiutils/KexiAssistantPage.cpp 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/kexi/kexiutils/KexiAssistantPage.cpp 2012-01-28 07:04:48.000000000 +0000 @@ -19,8 +19,10 @@ #include "KexiAssistantPage.h" +#include "utils.h" #include "KexiTitleLabel.h" #include "KexiLinkWidget.h" +#include "KexiLinkButton.h" #include #include @@ -45,7 +47,7 @@ QLabel* descriptionLabel; KexiLinkWidget* backButton; KexiLinkWidget* nextButton; - KexiLinkWidget* cancelButton; + KexiLinkButton* cancelButton; QPointer focusWidget; }; @@ -62,7 +64,7 @@ if (back) { *button = new KexiLinkWidget( QLatin1String("KexiAssistantPage:back"), - KStandardGuiItem::back().text().replace('&', ""), q); + KStandardGuiItem::back().plainText(), q); (*button)->setFormat( i18nc("Back button arrow: back button in assistant (wizard)", "‹ %L")); } @@ -115,23 +117,11 @@ d->descriptionLabel->setContentsMargins(2, 0, 0, space); d->descriptionLabel->setWordWrap(true); d->mainLyr->addWidget(d->descriptionLabel, 1, 1, Qt::AlignTop); - /*m_backButton = new KPushButton(KStandardGuiItem::back()); - m_backButton->setFlat(true); - m_mainLyr->addWidget(m_backButton, 1, 0);*/ - /*m_nextButton = new KPushButton(KStandardGuiItem::forward()); - m_nextButton->setFlat(true); - m_nextButton->setContentsMargins(space, 0, 0, 0); - m_mainLyr->addWidget(m_nextButton, 1, 2);*/ - //KAcceleratorManager::manage(this); - d->cancelButton = new KexiLinkWidget( - QLatin1String("KexiAssistantPage:cancel"), - KStandardGuiItem::cancel().text().replace('&', ""), - this); - d->cancelButton->setContentsMargins(0, 0, - d->cancelButton->fontMetrics().width(QString::fromUtf8(" ›")), 0); - connect(d->cancelButton, SIGNAL(linkActivated(QString)), - this, SLOT(slotLinkActivated(QString))); + d->cancelButton = new KexiLinkButton(KIcon("close")); + d->cancelButton->setToolTip(KStandardGuiItem::cancel().plainText()); + d->cancelButton->setUsesForegroundColor(true); + connect(d->cancelButton, SIGNAL(clicked()), this, SLOT(slotCancel())); d->mainLyr->addWidget(d->cancelButton, 0, 2, Qt::AlignTop|Qt::AlignRight); } @@ -175,10 +165,13 @@ else if (d->nextButton && link == d->nextButton->link()) { next(); } - else if (link == d->cancelButton->link()) { - emit cancelled(this); - if (parentWidget()) - parentWidget()->deleteLater(); +} + +void KexiAssistantPage::slotCancel() +{ + emit cancelled(this); + if (parentWidget()) { + parentWidget()->deleteLater(); } } diff -Nru calligra-2.3.86/kexi/kexiutils/KexiAssistantPage.h calligra-2.3.87/kexi/kexiutils/KexiAssistantPage.h --- calligra-2.3.86/kexi/kexiutils/KexiAssistantPage.h 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/kexi/kexiutils/KexiAssistantPage.h 2012-01-28 07:04:48.000000000 +0000 @@ -53,6 +53,7 @@ private slots: void slotLinkActivated(const QString& link); + void slotCancel(); private: class Private; diff -Nru calligra-2.3.86/kexi/kexiutils/KexiCategorizedView.cpp calligra-2.3.87/kexi/kexiutils/KexiCategorizedView.cpp --- calligra-2.3.86/kexi/kexiutils/KexiCategorizedView.cpp 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/kexi/kexiutils/KexiCategorizedView.cpp 2012-01-28 07:04:48.000000000 +0000 @@ -65,6 +65,7 @@ setSelectionMode(QAbstractItemView::SingleSelection); setMouseTracking(true); setViewMode(QListView::IconMode); + setResizeMode(QListView::Adjust); KexiCategoryDrawer* categoryDrawer = new KexiCategoryDrawer; setCategoryDrawer(categoryDrawer); } diff -Nru calligra-2.3.86/kexi/kexiutils/KexiLinkButton.cpp calligra-2.3.87/kexi/kexiutils/KexiLinkButton.cpp --- calligra-2.3.86/kexi/kexiutils/KexiLinkButton.cpp 1970-01-01 00:00:00.000000000 +0000 +++ calligra-2.3.87/kexi/kexiutils/KexiLinkButton.cpp 2012-01-28 07:04:48.000000000 +0000 @@ -0,0 +1,127 @@ +/* This file is part of the KDE project + Copyright (C) 2012 Jarosław Staniek + + This program is free software; you can redistribute it and/or + modify it under the terms of the GNU Library General Public + License as published by the Free Software Foundation; either + version 2 of the License, or (at your option) any later version. + + This program is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Library General Public License for more details. + + You should have received a copy of the GNU Library General Public License + along with this program; see the file COPYING. If not, write to + the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, + * Boston, MA 02110-1301, USA. + */ + +#include "KexiLinkButton.h" +#include "utils.h" + +#include +#include +#include +#include + +class KexiLinkButton::Private +{ +public: + Private() + : usesForegroundColor(false) + { + } + bool usesForegroundColor; + //! Used to remember the orig icon so setUsesForegroundColor(false) is possible + KIcon origIcon; +}; + +KexiLinkButton::KexiLinkButton(QWidget* parent) + : KPushButton(parent), d(new Private) +{ + init(); +} + +KexiLinkButton::KexiLinkButton(const KIcon &icon, QWidget* parent) + : KPushButton(icon, QString(), parent), d(new Private) +{ + init(); +} + +KexiLinkButton::KexiLinkButton(const QPixmap &pixmap, QWidget* parent) + : KPushButton(KIcon(pixmap), QString(), parent), d(new Private) +{ + init(); +} + +KexiLinkButton::KexiLinkButton(const KGuiItem &item, QWidget *parent) + : KPushButton(item, parent), d(new Private) +{ + init(); +} + +KexiLinkButton::~KexiLinkButton() +{ + delete d; +} + +void KexiLinkButton::init() +{ + setFlat(true); + setText(QString()); + setCursor(QCursor(Qt::PointingHandCursor)); + setSizePolicy(QSizePolicy::Fixed, QSizePolicy::Fixed); + setForegroundRole(QPalette::Text); + QStyleOptionButton option; + option.initFrom(this); + int m = style()->pixelMetric(QStyle::PM_ButtonMargin, &option, this); + setFixedSize(iconSize() + QSize(m*2, m*2)); + d->origIcon = KIcon(icon()); +} + +void KexiLinkButton::setUsesForegroundColor(bool set) +{ + if (d->usesForegroundColor == set) + return; + d->usesForegroundColor = set; + setIcon(d->origIcon); +} + +bool KexiLinkButton::usesForegroundColor() const +{ + return d->usesForegroundColor; +} + +void KexiLinkButton::changeEvent(QEvent* event) +{ + switch (event->type()) { + case QEvent::EnabledChange: + case QEvent::PaletteChange: + updateIcon(KIcon(icon())); + break; + default:; + } + KPushButton::changeEvent(event); +} + +void KexiLinkButton::updateIcon(const KIcon &icon) +{ + if (!d->usesForegroundColor) + return; + QColor c(palette().color(foregroundRole())); + QPixmap pixmap(icon.pixmap(iconSize())); + KexiUtils::replaceColors(&pixmap, c); + KPushButton::setIcon(KIcon(pixmap)); +} + +void KexiLinkButton::setIcon(const KIcon &icon) +{ + d->origIcon = icon; + if (d->usesForegroundColor) { + updateIcon(d->origIcon); + } + else { + KPushButton::setIcon(d->origIcon); + } +} diff -Nru calligra-2.3.86/kexi/kexiutils/KexiLinkButton.h calligra-2.3.87/kexi/kexiutils/KexiLinkButton.h --- calligra-2.3.86/kexi/kexiutils/KexiLinkButton.h 1970-01-01 00:00:00.000000000 +0000 +++ calligra-2.3.87/kexi/kexiutils/KexiLinkButton.h 2012-01-28 07:04:48.000000000 +0000 @@ -0,0 +1,68 @@ +/* This file is part of the KDE project + Copyright (C) 2012 Jarosław Staniek + + This program is free software; you can redistribute it and/or + modify it under the terms of the GNU Library General Public + License as published by the Free Software Foundation; either + version 2 of the License, or (at your option) any later version. + + This program is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Library General Public License for more details. + + You should have received a copy of the GNU Library General Public License + along with this program; see the file COPYING. If not, write to + the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, + * Boston, MA 02110-1301, USA. + */ + +#ifndef KEXILINKBUTTON_H +#define KEXILINKBUTTON_H + +#include "kexiutils_export.h" + +#include + +//! A flat icon-based button without background that behaves like a link +class KEXIUTILS_EXPORT KexiLinkButton : public KPushButton +{ + Q_OBJECT +public: + explicit KexiLinkButton(QWidget* parent = 0); + + explicit KexiLinkButton(const KIcon &icon, QWidget* parent = 0); + + explicit KexiLinkButton(const KGuiItem &item, QWidget *parent = 0); + + explicit KexiLinkButton(const QPixmap &pixmap, QWidget* parent = 0); + + virtual ~KexiLinkButton(); + + /*! If true, foreground color of the current palette is always used for painting + the button's icon. This is done by replacing color. + The foreground color is QPalette::Text by default, and can be changed + using setForegroundRole(). + The icon is expected to be monochrome. + Works well also after palette change. + False by default. */ + void setUsesForegroundColor(bool set); + + /*! @return true if foreground color of the current palette is always used for painting + the button's icon. */ + bool usesForegroundColor() const; + + void setIcon(const KIcon &icon); + +protected: + virtual void changeEvent(QEvent* event); + +private: + void init(); + void updateIcon(const KIcon &icon); + + class Private; + Private * const d; +}; + +#endif diff -Nru calligra-2.3.86/kexi/main/KexiMainWindow.cpp calligra-2.3.87/kexi/main/KexiMainWindow.cpp --- calligra-2.3.86/kexi/main/KexiMainWindow.cpp 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/kexi/main/KexiMainWindow.cpp 2012-01-28 07:04:48.000000000 +0000 @@ -328,6 +328,7 @@ invalidateActions(); d->timer.singleShot(0, this, SLOT(slotLastActions())); + connect(d->mainWidget, SIGNAL(currentTabIndexChanged(int)), this, SLOT(showTabIfNeeded())); } KexiMainWindow::~KexiMainWindow() @@ -2874,6 +2875,7 @@ invalidateProjectWideActions(); d->updateFindDialogContents(); d->updatePropEditorVisibility(viewMode); + showDesignTabIfNeeded(currentWindow()->partItem()->partClass(), viewMode); return true; } @@ -3208,7 +3210,7 @@ d->executeActionWhenPendingJobsAreFinished(); } #endif - closeTab(window_partClass); + showTabIfNeeded(); return true; } @@ -3391,20 +3393,8 @@ // activeWindowChanged(window, previousWindow); } invalidateProjectWideActions(); - - if (viewMode == Kexi::DesignViewMode) { - kDebug() << "PART CLASS: " << item->partClass(); - switch (d->prj->idForClass(item->partClass())) { - case KexiPart::FormObjectType: - d->tabbedToolBar->showTab("form"); - break; - case KexiPart::ReportObjectType: - d->tabbedToolBar->showTab("report"); - break; - default: ; - } - setDesignTabIfNeeded(item->partClass()); - } + showDesignTabIfNeeded(item->partClass(), viewMode); + setDesignTabIfNeeded(item->partClass()); return window; } @@ -3495,7 +3485,6 @@ if (!it->neverSaved()) { //only add stored objects to the browser d->navigator->model()->slotAddItem(*it); } - setDesignTabIfNeeded(it->partClass()); return openObject(it, Kexi::DesignViewMode, openingCancelled); } @@ -4434,6 +4423,22 @@ d->tabbedToolBar->addSearchableModel(model); } +void KexiMainWindow::showDesignTabIfNeeded(const QString &partClass, const Kexi::ViewMode viewMode) +{ + closeTab(""); + if (viewMode == Kexi::DesignViewMode) { + switch (d->prj->idForClass(partClass)) { + case KexiPart::FormObjectType: + d->tabbedToolBar->showTab("form"); + break; + case KexiPart::ReportObjectType: + d->tabbedToolBar->showTab("report"); + break; + default: ; + } + } +} + void KexiMainWindow::setDesignTabIfNeeded(const QString &partClass) { switch (d->prj->idForClass(partClass)) { @@ -4449,7 +4454,6 @@ void KexiMainWindow::closeTab(const QString &partClass) { - kDebug() << "CLOSE OBJECT"; switch (d->prj->idForClass(partClass)) { case KexiPart::FormObjectType: d->tabbedToolBar->hideTab("form"); @@ -4457,7 +4461,18 @@ case KexiPart::ReportObjectType: d->tabbedToolBar->hideTab("report"); break; - default:; + default: + d->tabbedToolBar->hideTab("form"); + d->tabbedToolBar->hideTab("report"); + } +} + +void KexiMainWindow::showTabIfNeeded() +{ + if (currentWindow()) { + showDesignTabIfNeeded(currentWindow()->partItem()->partClass(), currentWindow()->currentViewMode()); + } else { + closeTab(""); } } #include "KexiMainWindow.moc" diff -Nru calligra-2.3.86/kexi/main/KexiMainWindow.h calligra-2.3.87/kexi/main/KexiMainWindow.h --- calligra-2.3.86/kexi/main/KexiMainWindow.h 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/kexi/main/KexiMainWindow.h 2012-01-28 07:04:48.000000000 +0000 @@ -60,6 +60,7 @@ virtual ~KexiMainWindowTabWidget(); public slots: void closeTab(); + protected: //! Implemented to add context menu void contextMenu(int index, const QPoint& point); @@ -214,10 +215,13 @@ // see KexiMainWindowIface virtual KToolBar *toolBar(const QString& name) const; - + + //! Shows design tab when switching between objects or views. + void showDesignTabIfNeeded(const QString &partClass, const Kexi::ViewMode viewMode); + //! Sets currently visible tab when switching to design view, according to object type opened. virtual void setDesignTabIfNeeded(const QString &partClass); - + //! Hides tabs when they are closed (depending on class) virtual void closeTab(const QString &partClass); @@ -346,6 +350,9 @@ One example is Project Navigator. @see KexiMainWindowIface */ virtual void addSearchableModel(KexiSearchableModel *model); + //! Shows Context sensitive ToolTab when changing current Object Tab + void showTabIfNeeded(); + signals: //! Emitted to make sure the project can be close. //! Connect a slot here and set \a cancel to true to cancel the closing. diff -Nru calligra-2.3.86/kexi/main/KexiMainWindow_p.h calligra-2.3.87/kexi/main/KexiMainWindow_p.h --- calligra-2.3.86/kexi/main/KexiMainWindow_p.h 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/kexi/main/KexiMainWindow_p.h 2012-01-28 07:04:48.000000000 +0000 @@ -1010,13 +1010,18 @@ void KexiTabbedToolBar::Private::showTab(const QString& name) { + //kDebug() << "name:" << name; + //kDebug() << "toolbarsForName.value(name):" << toolbarsForName.value(name); + //kDebug() << "toolbarsIndexForName.value(name):" << toolbarsIndexForName.value(name); if (q->indexOf(toolbarsForName.value(name)) == -1) { int h = 0; - for (int i = 0; i < (toolbarsIndexForName.value(name) + lowestIndex); i++) { + // count h = invisible tabs before this + for (int i = lowestIndex; i < toolbarsIndexForName.value(name); i++) { if (!toolbarsVisibleForIndex.at(i)) h++; } - q->insertTab((toolbarsIndexForName.value(name) - h + lowestIndex), toolbarsForName.value(name), toolbarsCaptionForName.value(name)); + q->insertTab(toolbarsIndexForName.value(name) - h, + toolbarsForName.value(name), toolbarsCaptionForName.value(name)); toolbarsVisibleForIndex[toolbarsIndexForName.value(name)] = true; } } @@ -1381,6 +1386,8 @@ virtual bool queryExit(); protected slots: void slotCurrentTabIndexChanged(int index); +signals: + void currentTabIndexChanged(int index); private: void setupCentralWidget(); @@ -1435,6 +1442,7 @@ if (m_mainWindow) m_mainWindow->activeWindowChanged(cont->window, (KexiWindow*)m_previouslyActiveWindow); m_previouslyActiveWindow = cont->window; + emit currentTabIndexChanged(index); } //------------------------------------------ diff -Nru calligra-2.3.86/kexi/migration/mdb/src/keximdb/keximigrate_mdb.desktop calligra-2.3.87/kexi/migration/mdb/src/keximdb/keximigrate_mdb.desktop --- calligra-2.3.86/kexi/migration/mdb/src/keximdb/keximigrate_mdb.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/kexi/migration/mdb/src/keximdb/keximigrate_mdb.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -43,10 +43,13 @@ Name[zh_TW]=MS Access Comment=MS Access (MDB) Import Plugin for Kexi Comment[ca]=Connector d'importació de MS Access (MDB) per al Kexi +Comment[ca@valencia]=Connector d'importació de MS Access (MDB) per al Kexi Comment[cs]=Modul Kexi pro import MS Access (MDB) Comment[et]=Kexi MS Accessi (MDB) impordiplugin Comment[it]=Estensione in importazione MS Access (MDB) per Kexi Comment[nb]=MS Access (MDB) import-programtillegg for Kexi +Comment[nl]=MS Access (MDB)-importplug-in voor Kexi +Comment[pl]=Wtyczka importu MS Access (MDB) dla Kexi Comment[pt]=Controlador de Importação do MS Access (MDB) para o Kexi Comment[pt_BR]=Plugin de Importação do MS Access (MDB) para o Kexi Comment[ru]=Драйвер миграции MS Access (MDB) для Kexi diff -Nru calligra-2.3.86/kexi/migration/mysql/keximigrate_mysql.desktop calligra-2.3.87/kexi/migration/mysql/keximigrate_mysql.desktop --- calligra-2.3.86/kexi/migration/mysql/keximigrate_mysql.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/kexi/migration/mysql/keximigrate_mysql.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -59,10 +59,13 @@ Name[zh_TW]=MySQL Comment=MySQL Import Plugin for Kexi Comment[ca]=Connector d'importació de MySQL per al Kexi +Comment[ca@valencia]=Connector d'importació de MySQL per al Kexi Comment[cs]=Modul Kexi pro import MySQL Comment[et]=Kexi MySQL-i impordiplugin Comment[it]=Estensione di importazione MySQL per Kexi Comment[nb]=MySQL import-programtillegg for Kexi +Comment[nl]=MySQL-importplugin voor Kexi +Comment[pl]=Wtyczka importu MySQL dla Kexi Comment[pt]='Plugin' de Importação de MySQL para o Kexi Comment[pt_BR]=Plugin de Importação do MySQL para o Kexi Comment[ru]=Драйвер миграции MySQL для Kexi diff -Nru calligra-2.3.86/kexi/migration/pqxx/keximigrate_pqxx.desktop calligra-2.3.87/kexi/migration/pqxx/keximigrate_pqxx.desktop --- calligra-2.3.86/kexi/migration/pqxx/keximigrate_pqxx.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/kexi/migration/pqxx/keximigrate_pqxx.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -58,9 +58,12 @@ Name[zh_TW]=PostgreSQL Comment=PostgreSQL Import Plugin for Kexi Comment[ca]=Connector d'importació de PostgreSQL per al Kexi +Comment[ca@valencia]=Connector d'importació de PostgreSQL per al Kexi Comment[et]=Kexi PostgreSQL-i impordiplugin Comment[it]=Estensione di importazione PostgreSQL per Kexi Comment[nb]=PostgreSQL import-programtillegg for Kexi +Comment[nl]=PostgreSQL-importplugin voor Kexi +Comment[pl]=Wtyczka importu PostgreSQL dla Kexi Comment[pt]='Plugin' de Importação de PostgreSQL para o Kexi Comment[pt_BR]=Plugin de Importação do PostgreSQL para o Kexi Comment[ru]=Драйвер миграции PostrgeSQL для Kexi diff -Nru calligra-2.3.86/kexi/migration/sybase/keximigrate_sybase.desktop calligra-2.3.87/kexi/migration/sybase/keximigrate_sybase.desktop --- calligra-2.3.86/kexi/migration/sybase/keximigrate_sybase.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/kexi/migration/sybase/keximigrate_sybase.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -44,9 +44,12 @@ Name[zh_TW]=Sybase Comment=Sybase Import Plugin for Kexi Comment[ca]=Connector d'importació de Sybase per al Kexi +Comment[ca@valencia]=Connector d'importació de Sybase per al Kexi Comment[et]=Kexi Sybase'i impordiplugin Comment[it]=Estensione di importazione Sybase per Kexi Comment[nb]=Sybase import-programtillegg for Kexi +Comment[nl]=Sybase-importplugin voor Kexi +Comment[pl]=Wtyczka importu Sybase dla Kexi Comment[pt]='Plugin' de Importação de Sybase para o Kexi Comment[pt_BR]=Plugin de Importação do Sybase para o Kexi Comment[ru]=Драйвер миграции Sybase для Kexi diff -Nru calligra-2.3.86/kexi/migration/txt/keximigrate_txt.desktop calligra-2.3.87/kexi/migration/txt/keximigrate_txt.desktop --- calligra-2.3.86/kexi/migration/txt/keximigrate_txt.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/kexi/migration/txt/keximigrate_txt.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -35,10 +35,13 @@ Name[zh_TW]=文字 Comment=Text Import Plugin for Kexi Comment[ca]=Connector d'importació de text per al Kexi +Comment[ca@valencia]=Connector d'importació de text per al Kexi Comment[cs]=Modul Kexi pro import textu Comment[et]=Kexi teksti impordiplugin Comment[it]=Estensione di importazione da testo per Kexi Comment[nb]=Tekst import-programtillegg for Kexi +Comment[nl]=Tekstimportplugin voor Kexi +Comment[pl]=Wtyczka importu tekstu dla Kexi Comment[pt]='Plugin' de Importação de Texto para o Kexi Comment[pt_BR]=Plugin de Importação de Texto para o Kexi Comment[ru]=Драйвер миграции с текстовых файлов для Kexi diff -Nru calligra-2.3.86/kexi/migration/xbase/keximigrate_xbase.desktop calligra-2.3.87/kexi/migration/xbase/keximigrate_xbase.desktop --- calligra-2.3.86/kexi/migration/xbase/keximigrate_xbase.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/kexi/migration/xbase/keximigrate_xbase.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -40,9 +40,12 @@ Name[zh_TW]=xBase Comment=xBase Import Plugin for Kexi Comment[ca]=Connector d'importació xBase per al Kexi +Comment[ca@valencia]=Connector d'importació xBase per al Kexi Comment[et]=Kexi xBase'i impordiplugin Comment[it]=Estensione di importazione xBase per Kexi Comment[nb]=xBase import-programtillegg for Kexi +Comment[nl]=xBase-importplugin voor Kexi +Comment[pl]=Wtyczka importu xBase dla Kexi Comment[pt]='Plugin' de Importação de xBase para o Kexi Comment[pt_BR]=Plugin de Importação do xBase para o Kexi Comment[ru]=Драйвер миграции xBase для Kexi Binary files /tmp/zZ3vRDbxE1/calligra-2.3.86/kexi/pics/action-close.svgz and /tmp/BxERTtUs6S/calligra-2.3.87/kexi/pics/action-close.svgz differ diff -Nru calligra-2.3.86/kexi/pics/CMakeLists.txt calligra-2.3.87/kexi/pics/CMakeLists.txt --- calligra-2.3.86/kexi/pics/CMakeLists.txt 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/kexi/pics/CMakeLists.txt 2012-01-28 07:04:48.000000000 +0000 @@ -5,6 +5,7 @@ kexi-logo-white.png calligra-logo-white-glow.png calligra-logo-black-glow.png + external-link.png DESTINATION ${DATA_INSTALL_DIR}/kexi/pics) add_subdirectory(oxygen) Binary files /tmp/zZ3vRDbxE1/calligra-2.3.86/kexi/pics/external-link.png and /tmp/BxERTtUs6S/calligra-2.3.87/kexi/pics/external-link.png differ Binary files /tmp/zZ3vRDbxE1/calligra-2.3.86/kexi/pics/hi16-action-close.png and /tmp/BxERTtUs6S/calligra-2.3.87/kexi/pics/hi16-action-close.png differ Binary files /tmp/zZ3vRDbxE1/calligra-2.3.86/kexi/pics/hi22-action-close.png and /tmp/BxERTtUs6S/calligra-2.3.87/kexi/pics/hi22-action-close.png differ Binary files /tmp/zZ3vRDbxE1/calligra-2.3.86/kexi/pics/hi32-action-close.png and /tmp/BxERTtUs6S/calligra-2.3.87/kexi/pics/hi32-action-close.png differ diff -Nru calligra-2.3.86/kexi/plugins/autoforms/kexiautoformhandler.desktop calligra-2.3.87/kexi/plugins/autoforms/kexiautoformhandler.desktop --- calligra-2.3.86/kexi/plugins/autoforms/kexiautoformhandler.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/kexi/plugins/autoforms/kexiautoformhandler.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -3,10 +3,13 @@ ServiceTypes=Kexi/Handler GenericName=AutoForm GenericName[ca]=AutoForm +GenericName[ca@valencia]=AutoForm GenericName[da]=AutoFormular GenericName[et]=Automaatvorm GenericName[it]=AutoForm GenericName[nb]=Autoskjema +GenericName[nl]=AutoForm +GenericName[pl]=Auto-formularz GenericName[pt]=Formulário Automático GenericName[pt_BR]=Formulário automático GenericName[ru]=Автоформа @@ -16,10 +19,13 @@ GenericName[zh_TW]=自動表單 Name=AutoForm Name[ca]=AutoForm +Name[ca@valencia]=AutoForm Name[da]=AutoFormular Name[et]=Automaatvorm Name[it]=AutoForm Name[nb]=Autoskjema +Name[nl]=AutoForm +Name[pl]=Auto-formularz Name[pt]=Formulário Automático Name[pt_BR]=Formulário automático Name[ru]=Автоформа diff -Nru calligra-2.3.86/kexi/plugins/forms/kexiformhandler.desktop calligra-2.3.87/kexi/plugins/forms/kexiformhandler.desktop --- calligra-2.3.86/kexi/plugins/forms/kexiformhandler.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/kexi/plugins/forms/kexiformhandler.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -38,7 +38,7 @@ GenericName[nb]=Skjemaer GenericName[nds]=Kiekwarken GenericName[ne]=फारम -GenericName[nl]=Forms +GenericName[nl]=Formulieren GenericName[oc]=Formularis GenericName[pl]=Formularze GenericName[pt]=Formulários @@ -62,6 +62,7 @@ GenericName[zh_TW]=表單 Name=Form Name[ca]=Formulari +Name[ca@valencia]=Formulari Name[cs]=Formulář Name[da]=Formular Name[de]=Formular diff -Nru calligra-2.3.86/kexi/plugins/forms/kformdesigner_kexidbfactory.desktop calligra-2.3.87/kexi/plugins/forms/kformdesigner_kexidbfactory.desktop --- calligra-2.3.86/kexi/plugins/forms/kformdesigner_kexidbfactory.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/kexi/plugins/forms/kformdesigner_kexidbfactory.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -4,9 +4,12 @@ Name=Widgets Plugin for Kexi Forms Name[ca]=Connector d'estris per a formularis del Kexi +Name[ca@valencia]=Connector d'estris per a formularis del Kexi Name[et]=Kexi vormide vidinate plugin Name[it]=Estensione degli oggetti dei moduli di Kexi Name[nb]=Skjermelement programtillegg for Kexi-former +Name[nl]=Widgetsplugin voor Kexi Forms +Name[pl]=Wtyczka elementu interfejsu dla formularzy Kexi Name[pt]='Plugin' de Elementos para os Formulários do Kexi Name[pt_BR]=Plugin de Widgets para formulários do Kexi Name[ru]=Модуль виджетов для форм Kexi diff -Nru calligra-2.3.86/kexi/plugins/forms/widgets/mapbrowser/kformdesigner_mapbrowser.desktop calligra-2.3.87/kexi/plugins/forms/widgets/mapbrowser/kformdesigner_mapbrowser.desktop --- calligra-2.3.86/kexi/plugins/forms/widgets/mapbrowser/kformdesigner_mapbrowser.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/kexi/plugins/forms/widgets/mapbrowser/kformdesigner_mapbrowser.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -4,9 +4,11 @@ Name=Map Browser Plugin for Kexi Forms Name[ca]=Connector de navegador de mapes per a formularis del Kexi +Name[ca@valencia]=Connector de navegador de mapes per a formularis del Kexi Name[et]=Kexi vormide kaardibrauseri plugin Name[it]=Estensione di navigazione mappe per i moduli di Kexi Name[nb]=Kartleser-programtillegg for Kexi-former +Name[pl]=Wtyczka przeglądarki map dla formularzy Kexi Name[pt]='Plugin' de Navegação por Mapas para os Formulários do Kexi Name[pt_BR]=Plugin de navegação em mapa para formulários do Kexi Name[ru]=Модуль просмотра карт для форм Kexi diff -Nru calligra-2.3.86/kexi/plugins/forms/widgets/webbrowser/kformdesigner_webbrowser.desktop calligra-2.3.87/kexi/plugins/forms/widgets/webbrowser/kformdesigner_webbrowser.desktop --- calligra-2.3.86/kexi/plugins/forms/widgets/webbrowser/kformdesigner_webbrowser.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/kexi/plugins/forms/widgets/webbrowser/kformdesigner_webbrowser.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -6,9 +6,12 @@ Name=Web Browser Plugin for Kexi Forms Name[ca]=Connector de navegador web per a formularis del Kexi +Name[ca@valencia]=Connector de navegador web per a formularis del Kexi Name[et]=Kexi vormide veebibrauseri plugin Name[it]=Estensione del browser web per i moduli di Kexi Name[nb]=Kartleser-programtillegg for Kexi-former +Name[nl]=Webbrowserplugin voor Kexi-formulieren +Name[pl]=Wtyczka przeglądarki sieciowej dla formularzy Kexi Name[pt]='Plugin' de Navegação Web para os Formulários do Kexi Name[pt_BR]=Plugin de navegador Web para formulários do Kexi Name[ru]=Модуль веб-браузера для форм Kexi diff -Nru calligra-2.3.86/kexi/plugins/forms/widgets/webbrowser/WebBrowserWidget.h calligra-2.3.87/kexi/plugins/forms/widgets/webbrowser/WebBrowserWidget.h --- calligra-2.3.86/kexi/plugins/forms/widgets/webbrowser/WebBrowserWidget.h 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/kexi/plugins/forms/widgets/webbrowser/WebBrowserWidget.h 2012-01-28 07:04:48.000000000 +0000 @@ -44,6 +44,7 @@ public KFormDesigner::FormWidgetInterface { Q_OBJECT + Q_PROPERTY(QString dataSource READ dataSource WRITE setDataSource) Q_PROPERTY(QString dataSourcePartClass READ dataSourcePartClass WRITE setDataSourcePartClass) Q_PROPERTY(QString url READ url WRITE setUrl) diff -Nru calligra-2.3.86/kexi/plugins/queries/kexiqueryhandler.desktop calligra-2.3.87/kexi/plugins/queries/kexiqueryhandler.desktop --- calligra-2.3.86/kexi/plugins/queries/kexiqueryhandler.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/kexi/plugins/queries/kexiqueryhandler.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -63,6 +63,7 @@ Name=Query Name[bg]=Заявка Name[ca]=Consulta +Name[ca@valencia]=Consulta Name[cs]=Dotaz Name[da]=Forespørgsel Name[de]=Abfrage diff -Nru calligra-2.3.86/kexi/plugins/reports/kexireporthandler.desktop calligra-2.3.87/kexi/plugins/reports/kexireporthandler.desktop --- calligra-2.3.86/kexi/plugins/reports/kexireporthandler.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/kexi/plugins/reports/kexireporthandler.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -62,6 +62,7 @@ Name=Report Name[bg]=Доклад Name[ca]=Informe +Name[ca@valencia]=Informe Name[cs]=Hlášení Name[da]=Rapport Name[de]=Bericht diff -Nru calligra-2.3.86/kexi/plugins/scripting/kexiscripting/kexiscripthandler.desktop calligra-2.3.87/kexi/plugins/scripting/kexiscripting/kexiscripthandler.desktop --- calligra-2.3.86/kexi/plugins/scripting/kexiscripting/kexiscripthandler.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/kexi/plugins/scripting/kexiscripting/kexiscripthandler.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -7,7 +7,7 @@ GenericName[bg]=Скриптове GenericName[br]=Urzhiaouegoù GenericName[ca]=Scripts -GenericName[ca@valencia]=Seqüències +GenericName[ca@valencia]=Scripts GenericName[cs]=Skripty GenericName[cy]=Sgriptiau GenericName[da]=Scripter @@ -63,6 +63,7 @@ Name=Script Name[bg]=Скрипт Name[ca]=Script +Name[ca@valencia]=Script Name[cs]=Skript Name[da]=Script Name[de]=Skript diff -Nru calligra-2.3.86/kexi/plugins/tables/kexitablehandler.desktop calligra-2.3.87/kexi/plugins/tables/kexitablehandler.desktop --- calligra-2.3.86/kexi/plugins/tables/kexitablehandler.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/kexi/plugins/tables/kexitablehandler.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -64,6 +64,7 @@ Name=Table Name[bg]=Таблица Name[ca]=Taula +Name[ca@valencia]=Taula Name[cs]=Tabulka Name[da]=Tabel Name[de]=Tabelle @@ -71,6 +72,7 @@ Name[et]=Tabel Name[it]=Tabella Name[nb]=Tabell +Name[nl]=Tabel Name[pl]=Tabela Name[pt]=Tabela Name[pt_BR]=Tabela diff -Nru calligra-2.3.86/kounavail/kounavail.cc calligra-2.3.87/kounavail/kounavail.cc --- calligra-2.3.86/kounavail/kounavail.cc 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/kounavail/kounavail.cc 2012-01-28 07:04:48.000000000 +0000 @@ -46,14 +46,14 @@ bool KoUnavailPart::loadOdf( KoOdfReadStore & odfStore ) { - m_doc = KoXml::asQDomDocument( QDomDocument(), odfStore.contentDoc() ); + m_doc = KoXml::asQDomDocument( odfStore.contentDoc() ); return true; } bool KoUnavailPart::loadXML( const KoXmlDocument &doc, KoStore *) { // Simply keep a copy of the whole document ;) - m_doc = KoXml::asQDomDocument( QDomDocument(), doc ); + m_doc = KoXml::asQDomDocument( doc ); return true; } diff -Nru calligra-2.3.86/kounavail/kounavail.desktop calligra-2.3.87/kounavail/kounavail.desktop --- calligra-2.3.86/kounavail/kounavail.desktop 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/kounavail/kounavail.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -2,6 +2,7 @@ Name=Unavailable Calligra Document Name[bg]=Неналичен документ на Calligra Name[ca]=Document Calligra no disponible +Name[ca@valencia]=Document Calligra no disponible Name[cs]=Nedostupný dokument Calligra Name[da]=Utilgængeligt Calligra-dokument Name[de]=Nicht verfügbares Calligra-Dokument @@ -9,6 +10,7 @@ Name[it]=Documento Calligra non disponibile Name[nb]=Utilgjengelig Calligra-dokument Name[nds]=Nich verföögbor Calligra-Dokment +Name[nl]=Niet beschikbaar Calligra-document Name[pl]=Niedostępny dokument Calligra Name[pt]=Documento do Calligra Indisponível Name[pt_BR]=Documento do Calligra indisponível Binary files /tmp/zZ3vRDbxE1/calligra-2.3.86/krita/data/paintoppresets/Airbrush_300.kpp and /tmp/BxERTtUs6S/calligra-2.3.87/krita/data/paintoppresets/Airbrush_300.kpp differ Binary files /tmp/zZ3vRDbxE1/calligra-2.3.86/krita/data/paintoppresets/Airbrush_600.kpp and /tmp/BxERTtUs6S/calligra-2.3.87/krita/data/paintoppresets/Airbrush_600.kpp differ Binary files /tmp/zZ3vRDbxE1/calligra-2.3.86/krita/data/paintoppresets/Aquarelle_paint.kpp and /tmp/BxERTtUs6S/calligra-2.3.87/krita/data/paintoppresets/Aquarelle_paint.kpp differ Binary files /tmp/zZ3vRDbxE1/calligra-2.3.86/krita/data/paintoppresets/Aquarelle_smudge_water.kpp and /tmp/BxERTtUs6S/calligra-2.3.87/krita/data/paintoppresets/Aquarelle_smudge_water.kpp differ Binary files /tmp/zZ3vRDbxE1/calligra-2.3.86/krita/data/paintoppresets/Basic_Airbrush.kpp and /tmp/BxERTtUs6S/calligra-2.3.87/krita/data/paintoppresets/Basic_Airbrush.kpp differ Binary files /tmp/zZ3vRDbxE1/calligra-2.3.86/krita/data/paintoppresets/Basic_erase.kpp and /tmp/BxERTtUs6S/calligra-2.3.87/krita/data/paintoppresets/Basic_erase.kpp differ Binary files /tmp/zZ3vRDbxE1/calligra-2.3.86/krita/data/paintoppresets/Basic_erase_soft.kpp and /tmp/BxERTtUs6S/calligra-2.3.87/krita/data/paintoppresets/Basic_erase_soft.kpp differ Binary files /tmp/zZ3vRDbxE1/calligra-2.3.86/krita/data/paintoppresets/Basic_ink_05.kpp and /tmp/BxERTtUs6S/calligra-2.3.87/krita/data/paintoppresets/Basic_ink_05.kpp differ Binary files /tmp/zZ3vRDbxE1/calligra-2.3.86/krita/data/paintoppresets/Basic_ink_10.kpp and /tmp/BxERTtUs6S/calligra-2.3.87/krita/data/paintoppresets/Basic_ink_10.kpp differ Binary files /tmp/zZ3vRDbxE1/calligra-2.3.86/krita/data/paintoppresets/Basic_ink_ballpen.kpp and /tmp/BxERTtUs6S/calligra-2.3.87/krita/data/paintoppresets/Basic_ink_ballpen.kpp differ Binary files /tmp/zZ3vRDbxE1/calligra-2.3.86/krita/data/paintoppresets/Basic_ink_tilt_10.kpp and /tmp/BxERTtUs6S/calligra-2.3.87/krita/data/paintoppresets/Basic_ink_tilt_10.kpp differ Binary files /tmp/zZ3vRDbxE1/calligra-2.3.86/krita/data/paintoppresets/Basic_ink_tilt_20.kpp and /tmp/BxERTtUs6S/calligra-2.3.87/krita/data/paintoppresets/Basic_ink_tilt_20.kpp differ Binary files /tmp/zZ3vRDbxE1/calligra-2.3.86/krita/data/paintoppresets/Basic_mix.kpp and /tmp/BxERTtUs6S/calligra-2.3.87/krita/data/paintoppresets/Basic_mix.kpp differ Binary files /tmp/zZ3vRDbxE1/calligra-2.3.86/krita/data/paintoppresets/Basic_mix_oil_over.kpp and /tmp/BxERTtUs6S/calligra-2.3.87/krita/data/paintoppresets/Basic_mix_oil_over.kpp differ Binary files /tmp/zZ3vRDbxE1/calligra-2.3.86/krita/data/paintoppresets/Basic_mix_over.kpp and /tmp/BxERTtUs6S/calligra-2.3.87/krita/data/paintoppresets/Basic_mix_over.kpp differ Binary files /tmp/zZ3vRDbxE1/calligra-2.3.86/krita/data/paintoppresets/Basic_mix_over_wet.kpp and /tmp/BxERTtUs6S/calligra-2.3.87/krita/data/paintoppresets/Basic_mix_over_wet.kpp differ Binary files /tmp/zZ3vRDbxE1/calligra-2.3.86/krita/data/paintoppresets/Basic_mix_small.kpp and /tmp/BxERTtUs6S/calligra-2.3.87/krita/data/paintoppresets/Basic_mix_small.kpp differ Binary files /tmp/zZ3vRDbxE1/calligra-2.3.86/krita/data/paintoppresets/Basic_mix_soft.kpp and /tmp/BxERTtUs6S/calligra-2.3.87/krita/data/paintoppresets/Basic_mix_soft.kpp differ Binary files /tmp/zZ3vRDbxE1/calligra-2.3.86/krita/data/paintoppresets/Basic_paint_05.kpp and /tmp/BxERTtUs6S/calligra-2.3.87/krita/data/paintoppresets/Basic_paint_05.kpp differ Binary files /tmp/zZ3vRDbxE1/calligra-2.3.86/krita/data/paintoppresets/Basic_paint_25.kpp and /tmp/BxERTtUs6S/calligra-2.3.87/krita/data/paintoppresets/Basic_paint_25.kpp differ Binary files /tmp/zZ3vRDbxE1/calligra-2.3.86/krita/data/paintoppresets/Basic_paint_fill.kpp and /tmp/BxERTtUs6S/calligra-2.3.87/krita/data/paintoppresets/Basic_paint_fill.kpp differ Binary files /tmp/zZ3vRDbxE1/calligra-2.3.86/krita/data/paintoppresets/Basic_paint_shade.kpp and /tmp/BxERTtUs6S/calligra-2.3.87/krita/data/paintoppresets/Basic_paint_shade.kpp differ Binary files /tmp/zZ3vRDbxE1/calligra-2.3.86/krita/data/paintoppresets/Basic_smudge_detail.kpp and /tmp/BxERTtUs6S/calligra-2.3.87/krita/data/paintoppresets/Basic_smudge_detail.kpp differ Binary files /tmp/zZ3vRDbxE1/calligra-2.3.86/krita/data/paintoppresets/Basic_smudge_hard_grain.kpp and /tmp/BxERTtUs6S/calligra-2.3.87/krita/data/paintoppresets/Basic_smudge_hard_grain.kpp differ Binary files /tmp/zZ3vRDbxE1/calligra-2.3.86/krita/data/paintoppresets/Basic_smudge_hard.kpp and /tmp/BxERTtUs6S/calligra-2.3.87/krita/data/paintoppresets/Basic_smudge_hard.kpp differ Binary files /tmp/zZ3vRDbxE1/calligra-2.3.86/krita/data/paintoppresets/Basic_smudge_oil.kpp and /tmp/BxERTtUs6S/calligra-2.3.87/krita/data/paintoppresets/Basic_smudge_oil.kpp differ Binary files /tmp/zZ3vRDbxE1/calligra-2.3.86/krita/data/paintoppresets/Basic_smudge_over.kpp and /tmp/BxERTtUs6S/calligra-2.3.87/krita/data/paintoppresets/Basic_smudge_over.kpp differ Binary files /tmp/zZ3vRDbxE1/calligra-2.3.86/krita/data/paintoppresets/Basic_smudge_soft.kpp and /tmp/BxERTtUs6S/calligra-2.3.87/krita/data/paintoppresets/Basic_smudge_soft.kpp differ Binary files /tmp/zZ3vRDbxE1/calligra-2.3.86/krita/data/paintoppresets/Block_mix_tilt.kpp and /tmp/BxERTtUs6S/calligra-2.3.87/krita/data/paintoppresets/Block_mix_tilt.kpp differ Binary files /tmp/zZ3vRDbxE1/calligra-2.3.86/krita/data/paintoppresets/Block_paint_dirty_square.kpp and /tmp/BxERTtUs6S/calligra-2.3.87/krita/data/paintoppresets/Block_paint_dirty_square.kpp differ Binary files /tmp/zZ3vRDbxE1/calligra-2.3.86/krita/data/paintoppresets/Block_paint.kpp and /tmp/BxERTtUs6S/calligra-2.3.87/krita/data/paintoppresets/Block_paint.kpp differ Binary files /tmp/zZ3vRDbxE1/calligra-2.3.86/krita/data/paintoppresets/Block_paint_squary.kpp and /tmp/BxERTtUs6S/calligra-2.3.87/krita/data/paintoppresets/Block_paint_squary.kpp differ Binary files /tmp/zZ3vRDbxE1/calligra-2.3.86/krita/data/paintoppresets/Block_paint_tilt.kpp and /tmp/BxERTtUs6S/calligra-2.3.87/krita/data/paintoppresets/Block_paint_tilt.kpp differ Binary files /tmp/zZ3vRDbxE1/calligra-2.3.86/krita/data/paintoppresets/Block_smudge_tilt.kpp and /tmp/BxERTtUs6S/calligra-2.3.87/krita/data/paintoppresets/Block_smudge_tilt.kpp differ Binary files /tmp/zZ3vRDbxE1/calligra-2.3.86/krita/data/paintoppresets/Block_tilt_paint.kpp and /tmp/BxERTtUs6S/calligra-2.3.87/krita/data/paintoppresets/Block_tilt_paint.kpp differ Binary files /tmp/zZ3vRDbxE1/calligra-2.3.86/krita/data/paintoppresets/Block_tilt_paint_smudge.kpp and /tmp/BxERTtUs6S/calligra-2.3.87/krita/data/paintoppresets/Block_tilt_paint_smudge.kpp differ Binary files /tmp/zZ3vRDbxE1/calligra-2.3.86/krita/data/paintoppresets/Block_tilt_smudge.kpp and /tmp/BxERTtUs6S/calligra-2.3.87/krita/data/paintoppresets/Block_tilt_smudge.kpp differ diff -Nru calligra-2.3.86/krita/data/paintoppresets/CMakeLists.txt calligra-2.3.87/krita/data/paintoppresets/CMakeLists.txt --- calligra-2.3.86/krita/data/paintoppresets/CMakeLists.txt 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/krita/data/paintoppresets/CMakeLists.txt 2012-01-28 07:04:48.000000000 +0000 @@ -1,117 +1,90 @@ install( FILES -Airbrush_300.kpp -Airbrush_600.kpp -Aquarelle_paint.kpp -Aquarelle_smudge_water.kpp -Block_tilt_paint.kpp -Block_tilt_paint_smudge.kpp -Block_tilt_smudge.kpp +Basic_Airbrush.kpp +Basic_erase.kpp +Basic_erase_soft.kpp +Basic_ink_05.kpp +Basic_ink_10.kpp +Basic_ink_ballpen.kpp +Basic_ink_tilt_10.kpp +Basic_ink_tilt_20.kpp +Basic_mix.kpp +Basic_mix_oil_over.kpp +Basic_mix_over.kpp +Basic_mix_over_wet.kpp +Basic_mix_small.kpp +Basic_mix_soft.kpp +Basic_paint_05.kpp +Basic_paint_25.kpp +Basic_paint_fill.kpp +Basic_paint_shade.kpp +Basic_smudge_detail.kpp +Basic_smudge_hard.kpp +Basic_smudge_hard_grain.kpp +Basic_smudge_oil.kpp +Basic_smudge_over.kpp +Basic_smudge_soft.kpp +Block_mix_tilt.kpp +Block_paint.kpp +Block_paint_dirty_square.kpp +Block_paint_squary.kpp +Block_paint_tilt.kpp +Block_smudge_tilt.kpp Curve_curvy.kpp Curve_ink.kpp Curve_recurvy.kpp Curve_smooth.kpp -Deform_move.kpp -FX_airbrush_color_HSY.kpp -FX_airbrush_glow.kpp FX-explode.kpp -FX_glaze_paint_overlay.kpp -FX_glow.kpp -FX_soft_decrease-saturation.kpp +FX_color_HSY.kpp +FX_decrease-saturation.kpp +FX_deform_move.kpp +FX_glow_add.kpp +FX_glow_screen.kpp +FX_overlay.kpp FX_splat_starfield.kpp Grid_square_25.kpp Hatch_crispy.kpp Hatch_cross_regular.kpp Hatch_cross_small.kpp -Hatch_diag_fat.kpp -Hatch_diag_M.kpp Hatch_diag_S.kpp +Hatch_diag_fat.kpp Hatch_moire.kpp Hatch_noisy.kpp -Ink_ballpen.kpp -Ink_line_10.kpp -Ink_line_5.kpp -Ink_tilt_10.kpp -Ink_tilt_20.kpp -Ink_tilt_30.kpp -Mixbrush_circle_hard.kpp -Mixbrush_circle_soft.kpp -Mixbrush_impressionism_paint.kpp -Mixbrush_impressionism_smudge.kpp -Mixbrush_paint_circle_50.kpp -Mixbrush_paint_circle_detail.kpp -Mixbrush_paint_circle_dirty.kpp -Mixbrush_paint_circle_soft.kpp -Mixbrush_paint_oil_over.kpp -Mixbrush_paint_smudge_over.kpp -Mixbrush_paint_structure_over.kpp -Mixbrush_paint_wet.kpp -Mixbrush_paint_wet_over.kpp -Mixbrush_smudge_circle_50.kpp -Mixbrush_smudge_detail.kpp -Mixbrush_smudge_over.kpp -Mixbrush_smudge_rake_2.kpp -Mixbrush_smudge_rake.kpp -Mixbrush_smudge_rake_solid.kpp -Mixbrush_smudge_soft.kpp -Mixbrush_texture_001.kpp -Mixbrush_texture_cells.kpp -Mixbrush_texture_dirty.kpp -Paint_block.kpp -Paint_block_tilt_fill.kpp -Paint_block_tilt.kpp -Paint_circle_05.kpp -Paint_circle_25.kpp -Paint_circle_50.kpp -Paint_circle_chalk.kpp -Paint_circle_erase.kpp -Paint_circle_eraser_soft.kpp -Paint_circle_fill.kpp -Paint_circle_soft_20.kpp -Paint_dry_bristle.kpp -Paint_knife.kpp -Paint_squary.kpp -Paint_texture_chalk.kpp -Paint_texture_dirty_square.kpp -Paint_texture_rake.kpp -Paint_texture_splat_2.kpp -Paint_texture_splat.kpp -Pattern_texture_floor.kpp -Pattern_texture_noisy_big.kpp -Pattern_texture_noisy_cells.kpp -Pattern_trees.kpp +Pencil-tilt-sketch.kpp Pencil_2B.kpp -Pencil_chalk.kpp Pencil_HB.kpp +Pencil_chalk.kpp +Pencil_draw_shade.kpp Pencil_shade_texture.kpp -Pencil-tilt-shade2.kpp -Pencil-tilt-shade.kpp -Pencil-tilt-sketch.kpp -SB_chrome.kpp -SB_fur.kpp -SB_ink_dirty_02.kpp -SB_ink_dirty_xl.kpp -SB_ink_fat.kpp -SB_ink_line.kpp -SB_ink_small.kpp -SB_ink_speed.kpp -SB_shade_wash.kpp -SB_sketch_detail.kpp -SB_sketch_soft_fat.kpp -SB_sketch_soft_shade.kpp -SB_sketchy.kpp -SB_sketchy_shade_small.kpp -SB_sketchy_wires_02.kpp -SB_sketchy_wires.kpp -SB_speedpaint_dirty.kpp -Shape_basic.kpp +Pencil_shade_tilt.kpp +Rake_paint_dry_bristle.kpp +Rake_paint_texture.kpp +Rake_smudge.kpp +Rake_smudge_2.kpp +Shape_basic_fill.kpp Shape_smooth.kpp -Smudge_detail.kpp -Smudge_hard_grain.kpp -Smudge_hard.kpp -Smudge_oil.kpp -Splat-granular.kpp +Sketch_2.kpp +Sketch_chrome.kpp +Sketch_detail.kpp +Sketch_fur.kpp +Sketch_ink_dirty.kpp +Sketch_ink_dirty_xl.kpp +Sketch_ink_line.kpp +Sketch_ink_small.kpp +Sketch_shade.kpp +Sketch_shade_wash.kpp +Sketch_speedpaint.kpp +Sketch_speedpaint_shade.kpp +Sketch_wires.kpp +Splat_mix_cells.kpp +Splat_paint_texture.kpp +Splat_paint_texture_2.kpp Spray_splat.kpp -Texture-dirty.kpp -Texture-hair1.kpp -Texturizer_001.kpp +Texture_dirty.kpp +Texture_hair.kpp +Texture_mix_over_structure.kpp +Texture_paint_chalk.kpp +Texture_paint_floor.kpp +Texture_paint_noisy_big.kpp +Texture_paint_noisy_cells.kpp +Texture_paint_trees.kpp DESTINATION ${DATA_INSTALL_DIR}/krita/paintoppresets) Binary files /tmp/zZ3vRDbxE1/calligra-2.3.86/krita/data/paintoppresets/Curve_curvy.kpp and /tmp/BxERTtUs6S/calligra-2.3.87/krita/data/paintoppresets/Curve_curvy.kpp differ Binary files /tmp/zZ3vRDbxE1/calligra-2.3.86/krita/data/paintoppresets/Curve_ink.kpp and /tmp/BxERTtUs6S/calligra-2.3.87/krita/data/paintoppresets/Curve_ink.kpp differ Binary files /tmp/zZ3vRDbxE1/calligra-2.3.86/krita/data/paintoppresets/Curve_recurvy.kpp and /tmp/BxERTtUs6S/calligra-2.3.87/krita/data/paintoppresets/Curve_recurvy.kpp differ Binary files /tmp/zZ3vRDbxE1/calligra-2.3.86/krita/data/paintoppresets/Curve_smooth.kpp and /tmp/BxERTtUs6S/calligra-2.3.87/krita/data/paintoppresets/Curve_smooth.kpp differ Binary files /tmp/zZ3vRDbxE1/calligra-2.3.86/krita/data/paintoppresets/Deform_move.kpp and /tmp/BxERTtUs6S/calligra-2.3.87/krita/data/paintoppresets/Deform_move.kpp differ Binary files /tmp/zZ3vRDbxE1/calligra-2.3.86/krita/data/paintoppresets/FX_airbrush_color_HSY.kpp and /tmp/BxERTtUs6S/calligra-2.3.87/krita/data/paintoppresets/FX_airbrush_color_HSY.kpp differ Binary files /tmp/zZ3vRDbxE1/calligra-2.3.86/krita/data/paintoppresets/FX_airbrush_glow.kpp and /tmp/BxERTtUs6S/calligra-2.3.87/krita/data/paintoppresets/FX_airbrush_glow.kpp differ Binary files /tmp/zZ3vRDbxE1/calligra-2.3.86/krita/data/paintoppresets/FX_color_HSY.kpp and /tmp/BxERTtUs6S/calligra-2.3.87/krita/data/paintoppresets/FX_color_HSY.kpp differ Binary files /tmp/zZ3vRDbxE1/calligra-2.3.86/krita/data/paintoppresets/FX_decrease-saturation.kpp and /tmp/BxERTtUs6S/calligra-2.3.87/krita/data/paintoppresets/FX_decrease-saturation.kpp differ Binary files /tmp/zZ3vRDbxE1/calligra-2.3.86/krita/data/paintoppresets/FX_deform_move.kpp and /tmp/BxERTtUs6S/calligra-2.3.87/krita/data/paintoppresets/FX_deform_move.kpp differ Binary files /tmp/zZ3vRDbxE1/calligra-2.3.86/krita/data/paintoppresets/FX-explode.kpp and /tmp/BxERTtUs6S/calligra-2.3.87/krita/data/paintoppresets/FX-explode.kpp differ Binary files /tmp/zZ3vRDbxE1/calligra-2.3.86/krita/data/paintoppresets/FX_glaze_paint_overlay.kpp and /tmp/BxERTtUs6S/calligra-2.3.87/krita/data/paintoppresets/FX_glaze_paint_overlay.kpp differ Binary files /tmp/zZ3vRDbxE1/calligra-2.3.86/krita/data/paintoppresets/FX_glow_add.kpp and /tmp/BxERTtUs6S/calligra-2.3.87/krita/data/paintoppresets/FX_glow_add.kpp differ Binary files /tmp/zZ3vRDbxE1/calligra-2.3.86/krita/data/paintoppresets/FX_glow.kpp and /tmp/BxERTtUs6S/calligra-2.3.87/krita/data/paintoppresets/FX_glow.kpp differ Binary files /tmp/zZ3vRDbxE1/calligra-2.3.86/krita/data/paintoppresets/FX_glow_screen.kpp and /tmp/BxERTtUs6S/calligra-2.3.87/krita/data/paintoppresets/FX_glow_screen.kpp differ Binary files /tmp/zZ3vRDbxE1/calligra-2.3.86/krita/data/paintoppresets/FX_overlay.kpp and /tmp/BxERTtUs6S/calligra-2.3.87/krita/data/paintoppresets/FX_overlay.kpp differ Binary files /tmp/zZ3vRDbxE1/calligra-2.3.86/krita/data/paintoppresets/FX_soft_decrease-saturation.kpp and /tmp/BxERTtUs6S/calligra-2.3.87/krita/data/paintoppresets/FX_soft_decrease-saturation.kpp differ Binary files /tmp/zZ3vRDbxE1/calligra-2.3.86/krita/data/paintoppresets/FX_splat_starfield.kpp and /tmp/BxERTtUs6S/calligra-2.3.87/krita/data/paintoppresets/FX_splat_starfield.kpp differ Binary files /tmp/zZ3vRDbxE1/calligra-2.3.86/krita/data/paintoppresets/Grid_square_25.kpp and /tmp/BxERTtUs6S/calligra-2.3.87/krita/data/paintoppresets/Grid_square_25.kpp differ Binary files /tmp/zZ3vRDbxE1/calligra-2.3.86/krita/data/paintoppresets/Hatch_crispy.kpp and /tmp/BxERTtUs6S/calligra-2.3.87/krita/data/paintoppresets/Hatch_crispy.kpp differ Binary files /tmp/zZ3vRDbxE1/calligra-2.3.86/krita/data/paintoppresets/Hatch_cross_regular.kpp and /tmp/BxERTtUs6S/calligra-2.3.87/krita/data/paintoppresets/Hatch_cross_regular.kpp differ Binary files /tmp/zZ3vRDbxE1/calligra-2.3.86/krita/data/paintoppresets/Hatch_cross_small.kpp and /tmp/BxERTtUs6S/calligra-2.3.87/krita/data/paintoppresets/Hatch_cross_small.kpp differ Binary files /tmp/zZ3vRDbxE1/calligra-2.3.86/krita/data/paintoppresets/Hatch_diag_fat.kpp and /tmp/BxERTtUs6S/calligra-2.3.87/krita/data/paintoppresets/Hatch_diag_fat.kpp differ Binary files /tmp/zZ3vRDbxE1/calligra-2.3.86/krita/data/paintoppresets/Hatch_diag_M.kpp and /tmp/BxERTtUs6S/calligra-2.3.87/krita/data/paintoppresets/Hatch_diag_M.kpp differ Binary files /tmp/zZ3vRDbxE1/calligra-2.3.86/krita/data/paintoppresets/Hatch_diag_S.kpp and /tmp/BxERTtUs6S/calligra-2.3.87/krita/data/paintoppresets/Hatch_diag_S.kpp differ Binary files /tmp/zZ3vRDbxE1/calligra-2.3.86/krita/data/paintoppresets/Hatch_moire.kpp and /tmp/BxERTtUs6S/calligra-2.3.87/krita/data/paintoppresets/Hatch_moire.kpp differ Binary files /tmp/zZ3vRDbxE1/calligra-2.3.86/krita/data/paintoppresets/Hatch_noisy.kpp and /tmp/BxERTtUs6S/calligra-2.3.87/krita/data/paintoppresets/Hatch_noisy.kpp differ Binary files /tmp/zZ3vRDbxE1/calligra-2.3.86/krita/data/paintoppresets/Ink_ballpen.kpp and /tmp/BxERTtUs6S/calligra-2.3.87/krita/data/paintoppresets/Ink_ballpen.kpp differ Binary files /tmp/zZ3vRDbxE1/calligra-2.3.86/krita/data/paintoppresets/Ink_line_10.kpp and /tmp/BxERTtUs6S/calligra-2.3.87/krita/data/paintoppresets/Ink_line_10.kpp differ Binary files /tmp/zZ3vRDbxE1/calligra-2.3.86/krita/data/paintoppresets/Ink_line_5.kpp and /tmp/BxERTtUs6S/calligra-2.3.87/krita/data/paintoppresets/Ink_line_5.kpp differ Binary files /tmp/zZ3vRDbxE1/calligra-2.3.86/krita/data/paintoppresets/Ink_tilt_10.kpp and /tmp/BxERTtUs6S/calligra-2.3.87/krita/data/paintoppresets/Ink_tilt_10.kpp differ Binary files /tmp/zZ3vRDbxE1/calligra-2.3.86/krita/data/paintoppresets/Ink_tilt_20.kpp and /tmp/BxERTtUs6S/calligra-2.3.87/krita/data/paintoppresets/Ink_tilt_20.kpp differ Binary files /tmp/zZ3vRDbxE1/calligra-2.3.86/krita/data/paintoppresets/Ink_tilt_30.kpp and /tmp/BxERTtUs6S/calligra-2.3.87/krita/data/paintoppresets/Ink_tilt_30.kpp differ Binary files /tmp/zZ3vRDbxE1/calligra-2.3.86/krita/data/paintoppresets/Mixbrush_circle_hard.kpp and /tmp/BxERTtUs6S/calligra-2.3.87/krita/data/paintoppresets/Mixbrush_circle_hard.kpp differ Binary files /tmp/zZ3vRDbxE1/calligra-2.3.86/krita/data/paintoppresets/Mixbrush_circle_soft.kpp and /tmp/BxERTtUs6S/calligra-2.3.87/krita/data/paintoppresets/Mixbrush_circle_soft.kpp differ Binary files /tmp/zZ3vRDbxE1/calligra-2.3.86/krita/data/paintoppresets/Mixbrush_impressionism_paint.kpp and /tmp/BxERTtUs6S/calligra-2.3.87/krita/data/paintoppresets/Mixbrush_impressionism_paint.kpp differ Binary files /tmp/zZ3vRDbxE1/calligra-2.3.86/krita/data/paintoppresets/Mixbrush_impressionism_smudge.kpp and /tmp/BxERTtUs6S/calligra-2.3.87/krita/data/paintoppresets/Mixbrush_impressionism_smudge.kpp differ Binary files /tmp/zZ3vRDbxE1/calligra-2.3.86/krita/data/paintoppresets/Mixbrush_paint_circle_50.kpp and /tmp/BxERTtUs6S/calligra-2.3.87/krita/data/paintoppresets/Mixbrush_paint_circle_50.kpp differ Binary files /tmp/zZ3vRDbxE1/calligra-2.3.86/krita/data/paintoppresets/Mixbrush_paint_circle_detail.kpp and /tmp/BxERTtUs6S/calligra-2.3.87/krita/data/paintoppresets/Mixbrush_paint_circle_detail.kpp differ Binary files /tmp/zZ3vRDbxE1/calligra-2.3.86/krita/data/paintoppresets/Mixbrush_paint_circle_dirty.kpp and /tmp/BxERTtUs6S/calligra-2.3.87/krita/data/paintoppresets/Mixbrush_paint_circle_dirty.kpp differ Binary files /tmp/zZ3vRDbxE1/calligra-2.3.86/krita/data/paintoppresets/Mixbrush_paint_circle_soft.kpp and /tmp/BxERTtUs6S/calligra-2.3.87/krita/data/paintoppresets/Mixbrush_paint_circle_soft.kpp differ Binary files /tmp/zZ3vRDbxE1/calligra-2.3.86/krita/data/paintoppresets/Mixbrush_paint_oil_over.kpp and /tmp/BxERTtUs6S/calligra-2.3.87/krita/data/paintoppresets/Mixbrush_paint_oil_over.kpp differ Binary files /tmp/zZ3vRDbxE1/calligra-2.3.86/krita/data/paintoppresets/Mixbrush_paint_smudge_over.kpp and /tmp/BxERTtUs6S/calligra-2.3.87/krita/data/paintoppresets/Mixbrush_paint_smudge_over.kpp differ Binary files /tmp/zZ3vRDbxE1/calligra-2.3.86/krita/data/paintoppresets/Mixbrush_paint_structure_over.kpp and /tmp/BxERTtUs6S/calligra-2.3.87/krita/data/paintoppresets/Mixbrush_paint_structure_over.kpp differ Binary files /tmp/zZ3vRDbxE1/calligra-2.3.86/krita/data/paintoppresets/Mixbrush_paint_wet.kpp and /tmp/BxERTtUs6S/calligra-2.3.87/krita/data/paintoppresets/Mixbrush_paint_wet.kpp differ Binary files /tmp/zZ3vRDbxE1/calligra-2.3.86/krita/data/paintoppresets/Mixbrush_paint_wet_over.kpp and /tmp/BxERTtUs6S/calligra-2.3.87/krita/data/paintoppresets/Mixbrush_paint_wet_over.kpp differ Binary files /tmp/zZ3vRDbxE1/calligra-2.3.86/krita/data/paintoppresets/Mixbrush_smudge_circle_50.kpp and /tmp/BxERTtUs6S/calligra-2.3.87/krita/data/paintoppresets/Mixbrush_smudge_circle_50.kpp differ Binary files /tmp/zZ3vRDbxE1/calligra-2.3.86/krita/data/paintoppresets/Mixbrush_smudge_detail.kpp and /tmp/BxERTtUs6S/calligra-2.3.87/krita/data/paintoppresets/Mixbrush_smudge_detail.kpp differ Binary files /tmp/zZ3vRDbxE1/calligra-2.3.86/krita/data/paintoppresets/Mixbrush_smudge_over.kpp and /tmp/BxERTtUs6S/calligra-2.3.87/krita/data/paintoppresets/Mixbrush_smudge_over.kpp differ Binary files /tmp/zZ3vRDbxE1/calligra-2.3.86/krita/data/paintoppresets/Mixbrush_smudge_rake_2.kpp and /tmp/BxERTtUs6S/calligra-2.3.87/krita/data/paintoppresets/Mixbrush_smudge_rake_2.kpp differ Binary files /tmp/zZ3vRDbxE1/calligra-2.3.86/krita/data/paintoppresets/Mixbrush_smudge_rake.kpp and /tmp/BxERTtUs6S/calligra-2.3.87/krita/data/paintoppresets/Mixbrush_smudge_rake.kpp differ Binary files /tmp/zZ3vRDbxE1/calligra-2.3.86/krita/data/paintoppresets/Mixbrush_smudge_rake_solid.kpp and /tmp/BxERTtUs6S/calligra-2.3.87/krita/data/paintoppresets/Mixbrush_smudge_rake_solid.kpp differ Binary files /tmp/zZ3vRDbxE1/calligra-2.3.86/krita/data/paintoppresets/Mixbrush_smudge_soft.kpp and /tmp/BxERTtUs6S/calligra-2.3.87/krita/data/paintoppresets/Mixbrush_smudge_soft.kpp differ Binary files /tmp/zZ3vRDbxE1/calligra-2.3.86/krita/data/paintoppresets/Mixbrush_texture_001.kpp and /tmp/BxERTtUs6S/calligra-2.3.87/krita/data/paintoppresets/Mixbrush_texture_001.kpp differ Binary files /tmp/zZ3vRDbxE1/calligra-2.3.86/krita/data/paintoppresets/Mixbrush_texture_cells.kpp and /tmp/BxERTtUs6S/calligra-2.3.87/krita/data/paintoppresets/Mixbrush_texture_cells.kpp differ Binary files /tmp/zZ3vRDbxE1/calligra-2.3.86/krita/data/paintoppresets/Mixbrush_texture_dirty.kpp and /tmp/BxERTtUs6S/calligra-2.3.87/krita/data/paintoppresets/Mixbrush_texture_dirty.kpp differ Binary files /tmp/zZ3vRDbxE1/calligra-2.3.86/krita/data/paintoppresets/Paint_block.kpp and /tmp/BxERTtUs6S/calligra-2.3.87/krita/data/paintoppresets/Paint_block.kpp differ Binary files /tmp/zZ3vRDbxE1/calligra-2.3.86/krita/data/paintoppresets/Paint_block_tilt_fill.kpp and /tmp/BxERTtUs6S/calligra-2.3.87/krita/data/paintoppresets/Paint_block_tilt_fill.kpp differ Binary files /tmp/zZ3vRDbxE1/calligra-2.3.86/krita/data/paintoppresets/Paint_block_tilt.kpp and /tmp/BxERTtUs6S/calligra-2.3.87/krita/data/paintoppresets/Paint_block_tilt.kpp differ Binary files /tmp/zZ3vRDbxE1/calligra-2.3.86/krita/data/paintoppresets/Paint_circle_05.kpp and /tmp/BxERTtUs6S/calligra-2.3.87/krita/data/paintoppresets/Paint_circle_05.kpp differ Binary files /tmp/zZ3vRDbxE1/calligra-2.3.86/krita/data/paintoppresets/Paint_circle_25.kpp and /tmp/BxERTtUs6S/calligra-2.3.87/krita/data/paintoppresets/Paint_circle_25.kpp differ Binary files /tmp/zZ3vRDbxE1/calligra-2.3.86/krita/data/paintoppresets/Paint_circle_50.kpp and /tmp/BxERTtUs6S/calligra-2.3.87/krita/data/paintoppresets/Paint_circle_50.kpp differ Binary files /tmp/zZ3vRDbxE1/calligra-2.3.86/krita/data/paintoppresets/Paint_circle_chalk.kpp and /tmp/BxERTtUs6S/calligra-2.3.87/krita/data/paintoppresets/Paint_circle_chalk.kpp differ Binary files /tmp/zZ3vRDbxE1/calligra-2.3.86/krita/data/paintoppresets/Paint_circle_erase.kpp and /tmp/BxERTtUs6S/calligra-2.3.87/krita/data/paintoppresets/Paint_circle_erase.kpp differ Binary files /tmp/zZ3vRDbxE1/calligra-2.3.86/krita/data/paintoppresets/Paint_circle_eraser_soft.kpp and /tmp/BxERTtUs6S/calligra-2.3.87/krita/data/paintoppresets/Paint_circle_eraser_soft.kpp differ Binary files /tmp/zZ3vRDbxE1/calligra-2.3.86/krita/data/paintoppresets/Paint_circle_fill.kpp and /tmp/BxERTtUs6S/calligra-2.3.87/krita/data/paintoppresets/Paint_circle_fill.kpp differ Binary files /tmp/zZ3vRDbxE1/calligra-2.3.86/krita/data/paintoppresets/Paint_circle_soft_20.kpp and /tmp/BxERTtUs6S/calligra-2.3.87/krita/data/paintoppresets/Paint_circle_soft_20.kpp differ Binary files /tmp/zZ3vRDbxE1/calligra-2.3.86/krita/data/paintoppresets/Paint_dry_bristle.kpp and /tmp/BxERTtUs6S/calligra-2.3.87/krita/data/paintoppresets/Paint_dry_bristle.kpp differ Binary files /tmp/zZ3vRDbxE1/calligra-2.3.86/krita/data/paintoppresets/Paint_knife.kpp and /tmp/BxERTtUs6S/calligra-2.3.87/krita/data/paintoppresets/Paint_knife.kpp differ Binary files /tmp/zZ3vRDbxE1/calligra-2.3.86/krita/data/paintoppresets/Paint_squary.kpp and /tmp/BxERTtUs6S/calligra-2.3.87/krita/data/paintoppresets/Paint_squary.kpp differ Binary files /tmp/zZ3vRDbxE1/calligra-2.3.86/krita/data/paintoppresets/Paint_texture_chalk.kpp and /tmp/BxERTtUs6S/calligra-2.3.87/krita/data/paintoppresets/Paint_texture_chalk.kpp differ Binary files /tmp/zZ3vRDbxE1/calligra-2.3.86/krita/data/paintoppresets/Paint_texture_dirty_square.kpp and /tmp/BxERTtUs6S/calligra-2.3.87/krita/data/paintoppresets/Paint_texture_dirty_square.kpp differ Binary files /tmp/zZ3vRDbxE1/calligra-2.3.86/krita/data/paintoppresets/Paint_texture_rake.kpp and /tmp/BxERTtUs6S/calligra-2.3.87/krita/data/paintoppresets/Paint_texture_rake.kpp differ Binary files /tmp/zZ3vRDbxE1/calligra-2.3.86/krita/data/paintoppresets/Paint_texture_splat_2.kpp and /tmp/BxERTtUs6S/calligra-2.3.87/krita/data/paintoppresets/Paint_texture_splat_2.kpp differ Binary files /tmp/zZ3vRDbxE1/calligra-2.3.86/krita/data/paintoppresets/Paint_texture_splat.kpp and /tmp/BxERTtUs6S/calligra-2.3.87/krita/data/paintoppresets/Paint_texture_splat.kpp differ Binary files /tmp/zZ3vRDbxE1/calligra-2.3.86/krita/data/paintoppresets/Pattern_texture_floor.kpp and /tmp/BxERTtUs6S/calligra-2.3.87/krita/data/paintoppresets/Pattern_texture_floor.kpp differ Binary files /tmp/zZ3vRDbxE1/calligra-2.3.86/krita/data/paintoppresets/Pattern_texture_noisy_big.kpp and /tmp/BxERTtUs6S/calligra-2.3.87/krita/data/paintoppresets/Pattern_texture_noisy_big.kpp differ Binary files /tmp/zZ3vRDbxE1/calligra-2.3.86/krita/data/paintoppresets/Pattern_texture_noisy_cells.kpp and /tmp/BxERTtUs6S/calligra-2.3.87/krita/data/paintoppresets/Pattern_texture_noisy_cells.kpp differ Binary files /tmp/zZ3vRDbxE1/calligra-2.3.86/krita/data/paintoppresets/Pattern_trees.kpp and /tmp/BxERTtUs6S/calligra-2.3.87/krita/data/paintoppresets/Pattern_trees.kpp differ Binary files /tmp/zZ3vRDbxE1/calligra-2.3.86/krita/data/paintoppresets/Pencil_2B.kpp and /tmp/BxERTtUs6S/calligra-2.3.87/krita/data/paintoppresets/Pencil_2B.kpp differ Binary files /tmp/zZ3vRDbxE1/calligra-2.3.86/krita/data/paintoppresets/Pencil_chalk.kpp and /tmp/BxERTtUs6S/calligra-2.3.87/krita/data/paintoppresets/Pencil_chalk.kpp differ Binary files /tmp/zZ3vRDbxE1/calligra-2.3.86/krita/data/paintoppresets/Pencil_draw_shade.kpp and /tmp/BxERTtUs6S/calligra-2.3.87/krita/data/paintoppresets/Pencil_draw_shade.kpp differ Binary files /tmp/zZ3vRDbxE1/calligra-2.3.86/krita/data/paintoppresets/Pencil_HB.kpp and /tmp/BxERTtUs6S/calligra-2.3.87/krita/data/paintoppresets/Pencil_HB.kpp differ Binary files /tmp/zZ3vRDbxE1/calligra-2.3.86/krita/data/paintoppresets/Pencil_shade_texture.kpp and /tmp/BxERTtUs6S/calligra-2.3.87/krita/data/paintoppresets/Pencil_shade_texture.kpp differ Binary files /tmp/zZ3vRDbxE1/calligra-2.3.86/krita/data/paintoppresets/Pencil_shade_tilt.kpp and /tmp/BxERTtUs6S/calligra-2.3.87/krita/data/paintoppresets/Pencil_shade_tilt.kpp differ Binary files /tmp/zZ3vRDbxE1/calligra-2.3.86/krita/data/paintoppresets/Pencil-tilt-shade2.kpp and /tmp/BxERTtUs6S/calligra-2.3.87/krita/data/paintoppresets/Pencil-tilt-shade2.kpp differ Binary files /tmp/zZ3vRDbxE1/calligra-2.3.86/krita/data/paintoppresets/Pencil-tilt-shade.kpp and /tmp/BxERTtUs6S/calligra-2.3.87/krita/data/paintoppresets/Pencil-tilt-shade.kpp differ Binary files /tmp/zZ3vRDbxE1/calligra-2.3.86/krita/data/paintoppresets/Pencil-tilt-sketch.kpp and /tmp/BxERTtUs6S/calligra-2.3.87/krita/data/paintoppresets/Pencil-tilt-sketch.kpp differ Binary files /tmp/zZ3vRDbxE1/calligra-2.3.86/krita/data/paintoppresets/Rake_paint_dry_bristle.kpp and /tmp/BxERTtUs6S/calligra-2.3.87/krita/data/paintoppresets/Rake_paint_dry_bristle.kpp differ Binary files /tmp/zZ3vRDbxE1/calligra-2.3.86/krita/data/paintoppresets/Rake_paint_texture.kpp and /tmp/BxERTtUs6S/calligra-2.3.87/krita/data/paintoppresets/Rake_paint_texture.kpp differ Binary files /tmp/zZ3vRDbxE1/calligra-2.3.86/krita/data/paintoppresets/Rake_smudge_2.kpp and /tmp/BxERTtUs6S/calligra-2.3.87/krita/data/paintoppresets/Rake_smudge_2.kpp differ Binary files /tmp/zZ3vRDbxE1/calligra-2.3.86/krita/data/paintoppresets/Rake_smudge.kpp and /tmp/BxERTtUs6S/calligra-2.3.87/krita/data/paintoppresets/Rake_smudge.kpp differ Binary files /tmp/zZ3vRDbxE1/calligra-2.3.86/krita/data/paintoppresets/SB_chrome.kpp and /tmp/BxERTtUs6S/calligra-2.3.87/krita/data/paintoppresets/SB_chrome.kpp differ Binary files /tmp/zZ3vRDbxE1/calligra-2.3.86/krita/data/paintoppresets/SB_fur.kpp and /tmp/BxERTtUs6S/calligra-2.3.87/krita/data/paintoppresets/SB_fur.kpp differ Binary files /tmp/zZ3vRDbxE1/calligra-2.3.86/krita/data/paintoppresets/SB_ink_dirty_02.kpp and /tmp/BxERTtUs6S/calligra-2.3.87/krita/data/paintoppresets/SB_ink_dirty_02.kpp differ Binary files /tmp/zZ3vRDbxE1/calligra-2.3.86/krita/data/paintoppresets/SB_ink_dirty_xl.kpp and /tmp/BxERTtUs6S/calligra-2.3.87/krita/data/paintoppresets/SB_ink_dirty_xl.kpp differ Binary files /tmp/zZ3vRDbxE1/calligra-2.3.86/krita/data/paintoppresets/SB_ink_fat.kpp and /tmp/BxERTtUs6S/calligra-2.3.87/krita/data/paintoppresets/SB_ink_fat.kpp differ Binary files /tmp/zZ3vRDbxE1/calligra-2.3.86/krita/data/paintoppresets/SB_ink_line.kpp and /tmp/BxERTtUs6S/calligra-2.3.87/krita/data/paintoppresets/SB_ink_line.kpp differ Binary files /tmp/zZ3vRDbxE1/calligra-2.3.86/krita/data/paintoppresets/SB_ink_small.kpp and /tmp/BxERTtUs6S/calligra-2.3.87/krita/data/paintoppresets/SB_ink_small.kpp differ Binary files /tmp/zZ3vRDbxE1/calligra-2.3.86/krita/data/paintoppresets/SB_ink_speed.kpp and /tmp/BxERTtUs6S/calligra-2.3.87/krita/data/paintoppresets/SB_ink_speed.kpp differ Binary files /tmp/zZ3vRDbxE1/calligra-2.3.86/krita/data/paintoppresets/SB_shade_wash.kpp and /tmp/BxERTtUs6S/calligra-2.3.87/krita/data/paintoppresets/SB_shade_wash.kpp differ Binary files /tmp/zZ3vRDbxE1/calligra-2.3.86/krita/data/paintoppresets/SB_sketch_detail.kpp and /tmp/BxERTtUs6S/calligra-2.3.87/krita/data/paintoppresets/SB_sketch_detail.kpp differ Binary files /tmp/zZ3vRDbxE1/calligra-2.3.86/krita/data/paintoppresets/SB_sketch_soft_fat.kpp and /tmp/BxERTtUs6S/calligra-2.3.87/krita/data/paintoppresets/SB_sketch_soft_fat.kpp differ Binary files /tmp/zZ3vRDbxE1/calligra-2.3.86/krita/data/paintoppresets/SB_sketch_soft_shade.kpp and /tmp/BxERTtUs6S/calligra-2.3.87/krita/data/paintoppresets/SB_sketch_soft_shade.kpp differ Binary files /tmp/zZ3vRDbxE1/calligra-2.3.86/krita/data/paintoppresets/SB_sketchy.kpp and /tmp/BxERTtUs6S/calligra-2.3.87/krita/data/paintoppresets/SB_sketchy.kpp differ Binary files /tmp/zZ3vRDbxE1/calligra-2.3.86/krita/data/paintoppresets/SB_sketchy_shade_small.kpp and /tmp/BxERTtUs6S/calligra-2.3.87/krita/data/paintoppresets/SB_sketchy_shade_small.kpp differ Binary files /tmp/zZ3vRDbxE1/calligra-2.3.86/krita/data/paintoppresets/SB_sketchy_wires_02.kpp and /tmp/BxERTtUs6S/calligra-2.3.87/krita/data/paintoppresets/SB_sketchy_wires_02.kpp differ Binary files /tmp/zZ3vRDbxE1/calligra-2.3.86/krita/data/paintoppresets/SB_sketchy_wires.kpp and /tmp/BxERTtUs6S/calligra-2.3.87/krita/data/paintoppresets/SB_sketchy_wires.kpp differ Binary files /tmp/zZ3vRDbxE1/calligra-2.3.86/krita/data/paintoppresets/SB_speedpaint_dirty.kpp and /tmp/BxERTtUs6S/calligra-2.3.87/krita/data/paintoppresets/SB_speedpaint_dirty.kpp differ Binary files /tmp/zZ3vRDbxE1/calligra-2.3.86/krita/data/paintoppresets/Shape_basic_fill.kpp and /tmp/BxERTtUs6S/calligra-2.3.87/krita/data/paintoppresets/Shape_basic_fill.kpp differ Binary files /tmp/zZ3vRDbxE1/calligra-2.3.86/krita/data/paintoppresets/Shape_basic.kpp and /tmp/BxERTtUs6S/calligra-2.3.87/krita/data/paintoppresets/Shape_basic.kpp differ Binary files /tmp/zZ3vRDbxE1/calligra-2.3.86/krita/data/paintoppresets/Shape_smooth.kpp and /tmp/BxERTtUs6S/calligra-2.3.87/krita/data/paintoppresets/Shape_smooth.kpp differ Binary files /tmp/zZ3vRDbxE1/calligra-2.3.86/krita/data/paintoppresets/Sketch_2.kpp and /tmp/BxERTtUs6S/calligra-2.3.87/krita/data/paintoppresets/Sketch_2.kpp differ Binary files /tmp/zZ3vRDbxE1/calligra-2.3.86/krita/data/paintoppresets/Sketch_chrome.kpp and /tmp/BxERTtUs6S/calligra-2.3.87/krita/data/paintoppresets/Sketch_chrome.kpp differ Binary files /tmp/zZ3vRDbxE1/calligra-2.3.86/krita/data/paintoppresets/Sketch_detail.kpp and /tmp/BxERTtUs6S/calligra-2.3.87/krita/data/paintoppresets/Sketch_detail.kpp differ Binary files /tmp/zZ3vRDbxE1/calligra-2.3.86/krita/data/paintoppresets/Sketch_fur.kpp and /tmp/BxERTtUs6S/calligra-2.3.87/krita/data/paintoppresets/Sketch_fur.kpp differ Binary files /tmp/zZ3vRDbxE1/calligra-2.3.86/krita/data/paintoppresets/Sketch_ink_dirty.kpp and /tmp/BxERTtUs6S/calligra-2.3.87/krita/data/paintoppresets/Sketch_ink_dirty.kpp differ Binary files /tmp/zZ3vRDbxE1/calligra-2.3.86/krita/data/paintoppresets/Sketch_ink_dirty_xl.kpp and /tmp/BxERTtUs6S/calligra-2.3.87/krita/data/paintoppresets/Sketch_ink_dirty_xl.kpp differ Binary files /tmp/zZ3vRDbxE1/calligra-2.3.86/krita/data/paintoppresets/Sketch_ink_line.kpp and /tmp/BxERTtUs6S/calligra-2.3.87/krita/data/paintoppresets/Sketch_ink_line.kpp differ Binary files /tmp/zZ3vRDbxE1/calligra-2.3.86/krita/data/paintoppresets/Sketch_ink_small.kpp and /tmp/BxERTtUs6S/calligra-2.3.87/krita/data/paintoppresets/Sketch_ink_small.kpp differ Binary files /tmp/zZ3vRDbxE1/calligra-2.3.86/krita/data/paintoppresets/Sketch_shade.kpp and /tmp/BxERTtUs6S/calligra-2.3.87/krita/data/paintoppresets/Sketch_shade.kpp differ Binary files /tmp/zZ3vRDbxE1/calligra-2.3.86/krita/data/paintoppresets/Sketch_shade_wash.kpp and /tmp/BxERTtUs6S/calligra-2.3.87/krita/data/paintoppresets/Sketch_shade_wash.kpp differ Binary files /tmp/zZ3vRDbxE1/calligra-2.3.86/krita/data/paintoppresets/Sketch_speedpaint.kpp and /tmp/BxERTtUs6S/calligra-2.3.87/krita/data/paintoppresets/Sketch_speedpaint.kpp differ Binary files /tmp/zZ3vRDbxE1/calligra-2.3.86/krita/data/paintoppresets/Sketch_speedpaint_shade.kpp and /tmp/BxERTtUs6S/calligra-2.3.87/krita/data/paintoppresets/Sketch_speedpaint_shade.kpp differ Binary files /tmp/zZ3vRDbxE1/calligra-2.3.86/krita/data/paintoppresets/Sketch_wires.kpp and /tmp/BxERTtUs6S/calligra-2.3.87/krita/data/paintoppresets/Sketch_wires.kpp differ Binary files /tmp/zZ3vRDbxE1/calligra-2.3.86/krita/data/paintoppresets/Smudge_detail.kpp and /tmp/BxERTtUs6S/calligra-2.3.87/krita/data/paintoppresets/Smudge_detail.kpp differ Binary files /tmp/zZ3vRDbxE1/calligra-2.3.86/krita/data/paintoppresets/Smudge_hard_grain.kpp and /tmp/BxERTtUs6S/calligra-2.3.87/krita/data/paintoppresets/Smudge_hard_grain.kpp differ Binary files /tmp/zZ3vRDbxE1/calligra-2.3.86/krita/data/paintoppresets/Smudge_hard.kpp and /tmp/BxERTtUs6S/calligra-2.3.87/krita/data/paintoppresets/Smudge_hard.kpp differ Binary files /tmp/zZ3vRDbxE1/calligra-2.3.86/krita/data/paintoppresets/Smudge_oil.kpp and /tmp/BxERTtUs6S/calligra-2.3.87/krita/data/paintoppresets/Smudge_oil.kpp differ Binary files /tmp/zZ3vRDbxE1/calligra-2.3.86/krita/data/paintoppresets/Splat-granular.kpp and /tmp/BxERTtUs6S/calligra-2.3.87/krita/data/paintoppresets/Splat-granular.kpp differ Binary files /tmp/zZ3vRDbxE1/calligra-2.3.86/krita/data/paintoppresets/Splat_mix_cells.kpp and /tmp/BxERTtUs6S/calligra-2.3.87/krita/data/paintoppresets/Splat_mix_cells.kpp differ Binary files /tmp/zZ3vRDbxE1/calligra-2.3.86/krita/data/paintoppresets/Splat_paint_texture_2.kpp and /tmp/BxERTtUs6S/calligra-2.3.87/krita/data/paintoppresets/Splat_paint_texture_2.kpp differ Binary files /tmp/zZ3vRDbxE1/calligra-2.3.86/krita/data/paintoppresets/Splat_paint_texture.kpp and /tmp/BxERTtUs6S/calligra-2.3.87/krita/data/paintoppresets/Splat_paint_texture.kpp differ Binary files /tmp/zZ3vRDbxE1/calligra-2.3.86/krita/data/paintoppresets/Spray_splat.kpp and /tmp/BxERTtUs6S/calligra-2.3.87/krita/data/paintoppresets/Spray_splat.kpp differ Binary files /tmp/zZ3vRDbxE1/calligra-2.3.86/krita/data/paintoppresets/Texture_dirty.kpp and /tmp/BxERTtUs6S/calligra-2.3.87/krita/data/paintoppresets/Texture_dirty.kpp differ Binary files /tmp/zZ3vRDbxE1/calligra-2.3.86/krita/data/paintoppresets/Texture-dirty.kpp and /tmp/BxERTtUs6S/calligra-2.3.87/krita/data/paintoppresets/Texture-dirty.kpp differ Binary files /tmp/zZ3vRDbxE1/calligra-2.3.86/krita/data/paintoppresets/Texture-hair1.kpp and /tmp/BxERTtUs6S/calligra-2.3.87/krita/data/paintoppresets/Texture-hair1.kpp differ Binary files /tmp/zZ3vRDbxE1/calligra-2.3.86/krita/data/paintoppresets/Texture_hair.kpp and /tmp/BxERTtUs6S/calligra-2.3.87/krita/data/paintoppresets/Texture_hair.kpp differ Binary files /tmp/zZ3vRDbxE1/calligra-2.3.86/krita/data/paintoppresets/Texture_mix_over_structure.kpp and /tmp/BxERTtUs6S/calligra-2.3.87/krita/data/paintoppresets/Texture_mix_over_structure.kpp differ Binary files /tmp/zZ3vRDbxE1/calligra-2.3.86/krita/data/paintoppresets/Texture_paint_chalk.kpp and /tmp/BxERTtUs6S/calligra-2.3.87/krita/data/paintoppresets/Texture_paint_chalk.kpp differ Binary files /tmp/zZ3vRDbxE1/calligra-2.3.86/krita/data/paintoppresets/Texture_paint_floor.kpp and /tmp/BxERTtUs6S/calligra-2.3.87/krita/data/paintoppresets/Texture_paint_floor.kpp differ Binary files /tmp/zZ3vRDbxE1/calligra-2.3.86/krita/data/paintoppresets/Texture_paint_noisy_big.kpp and /tmp/BxERTtUs6S/calligra-2.3.87/krita/data/paintoppresets/Texture_paint_noisy_big.kpp differ Binary files /tmp/zZ3vRDbxE1/calligra-2.3.86/krita/data/paintoppresets/Texture_paint_noisy_cells.kpp and /tmp/BxERTtUs6S/calligra-2.3.87/krita/data/paintoppresets/Texture_paint_noisy_cells.kpp differ Binary files /tmp/zZ3vRDbxE1/calligra-2.3.86/krita/data/paintoppresets/Texture_paint_trees.kpp and /tmp/BxERTtUs6S/calligra-2.3.87/krita/data/paintoppresets/Texture_paint_trees.kpp differ Binary files /tmp/zZ3vRDbxE1/calligra-2.3.86/krita/data/paintoppresets/Texturizer_001.kpp and /tmp/BxERTtUs6S/calligra-2.3.87/krita/data/paintoppresets/Texturizer_001.kpp differ Binary files /tmp/zZ3vRDbxE1/calligra-2.3.86/krita/data/profiles/Adobe.icm and /tmp/BxERTtUs6S/calligra-2.3.87/krita/data/profiles/Adobe.icm differ Binary files /tmp/zZ3vRDbxE1/calligra-2.3.86/krita/data/profiles/Apple.icm and /tmp/BxERTtUs6S/calligra-2.3.87/krita/data/profiles/Apple.icm differ Binary files /tmp/zZ3vRDbxE1/calligra-2.3.86/krita/data/profiles/CIE.icm and /tmp/BxERTtUs6S/calligra-2.3.87/krita/data/profiles/CIE.icm differ diff -Nru calligra-2.3.86/krita/data/profiles/CMakeLists.txt calligra-2.3.87/krita/data/profiles/CMakeLists.txt --- calligra-2.3.86/krita/data/profiles/CMakeLists.txt 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/krita/data/profiles/CMakeLists.txt 2012-01-28 07:04:48.000000000 +0000 @@ -1,19 +1,9 @@ ########### install files ############### install(FILES - Adobe.icm - Apple.icm - CIE.icm - ColorMatch.icm lcmslabi.icm lcmsxyzi.icm - NTSC.icm - PAL.icm README scRGB.icm - SMPTE-C.icm sRGB.icm - srgbspac.icm WideGamut.icm - ycc601.icm - ycc709.icm DESTINATION ${CMAKE_INSTALL_PREFIX}/share/color/icc/krita) Binary files /tmp/zZ3vRDbxE1/calligra-2.3.86/krita/data/profiles/ColorMatch.icm and /tmp/BxERTtUs6S/calligra-2.3.87/krita/data/profiles/ColorMatch.icm differ Binary files /tmp/zZ3vRDbxE1/calligra-2.3.86/krita/data/profiles/lcmsxyzi.icm and /tmp/BxERTtUs6S/calligra-2.3.87/krita/data/profiles/lcmsxyzi.icm differ Binary files /tmp/zZ3vRDbxE1/calligra-2.3.86/krita/data/profiles/NTSC.icm and /tmp/BxERTtUs6S/calligra-2.3.87/krita/data/profiles/NTSC.icm differ Binary files /tmp/zZ3vRDbxE1/calligra-2.3.86/krita/data/profiles/PAL.icm and /tmp/BxERTtUs6S/calligra-2.3.87/krita/data/profiles/PAL.icm differ Binary files /tmp/zZ3vRDbxE1/calligra-2.3.86/krita/data/profiles/scRGB.icm and /tmp/BxERTtUs6S/calligra-2.3.87/krita/data/profiles/scRGB.icm differ Binary files /tmp/zZ3vRDbxE1/calligra-2.3.86/krita/data/profiles/SMPTE-C.icm and /tmp/BxERTtUs6S/calligra-2.3.87/krita/data/profiles/SMPTE-C.icm differ Binary files /tmp/zZ3vRDbxE1/calligra-2.3.86/krita/data/profiles/srgbspac.icm and /tmp/BxERTtUs6S/calligra-2.3.87/krita/data/profiles/srgbspac.icm differ Binary files /tmp/zZ3vRDbxE1/calligra-2.3.86/krita/data/profiles/WideGamut.icm and /tmp/BxERTtUs6S/calligra-2.3.87/krita/data/profiles/WideGamut.icm differ Binary files /tmp/zZ3vRDbxE1/calligra-2.3.86/krita/data/profiles/ycc601.icm and /tmp/BxERTtUs6S/calligra-2.3.87/krita/data/profiles/ycc601.icm differ Binary files /tmp/zZ3vRDbxE1/calligra-2.3.86/krita/data/profiles/ycc709.icm and /tmp/BxERTtUs6S/calligra-2.3.87/krita/data/profiles/ycc709.icm differ diff -Nru calligra-2.3.86/krita/data/splash/splash_screen.xpm calligra-2.3.87/krita/data/splash/splash_screen.xpm --- calligra-2.3.86/krita/data/splash/splash_screen.xpm 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/krita/data/splash/splash_screen.xpm 2012-01-28 07:04:48.000000000 +0000 @@ -1,548 +1,35949 @@ /* XPM */ -static const char * const splash_screen_xpm[]={ -/* columns rows colors chars-per-pixel */ -"440 286 256 2 ", -" c #060603", -". c #090703", -"X c #050806", -"o c #0B0A05", -"O c #060A0B", -"+ c #0D0D0A", -"@ c #110D06", -"# c #110E0A", -"$ c #170D09", -"% c #0E1107", -"& c #0E110C", -"* c #141206", -"= c #14120C", -"- c #1A150D", -"; c #17180B", -": c #1C190E", -"> c #0B0E11", -", c #120F11", -"< c #0D1213", -"1 c #0F1617", -"2 c #141512", -"3 c #1A1611", -"4 c #151815", -"5 c #1C1A13", -"6 c #151A1B", -"7 c #1C1D1B", -"8 c #211B0E", -"9 c #221D14", -"0 c #271C16", -"q c #231E1A", -"w c #1B230F", -"e c #1D211A", -"r c #242215", -"t c #2A2316", -"y c #2E2B13", -"u c #24231B", -"i c #2B241B", -"p c #27291A", -"a c #2C2A1D", -"s c #33271C", -"d c #322B1D", -"f c #36331C", -"g c #191D22", -"h c #221F22", -"j c #1D2324", -"k c #172835", -"l c #242524", -"z c #2B2522", -"x c #252A27", -"c c #2A2925", -"v c #2C2C2B", -"b c #332C23", -"n c #362A26", -"m c #3A2D24", -"M c #332E2A", -"N c #2D322A", -"B c #353224", -"V c #3B3325", -"C c #393A27", -"Z c #32312D", -"A c #3B342B", -"S c #3D3A2C", -"D c #2C2E32", -"F c #2C3335", -"G c #343433", -"H c #383733", -"J c #3B3A35", -"K c #3C3C3C", -"L c #493719", -"P c #42352C", -"I c #453928", -"U c #433B2D", -"Y c #443C33", -"T c #463B37", -"R c #4A3D34", -"E c #513D34", -"W c #3C412B", -"Q c #3C4338", -"! c #44422C", -"~ c #4A452B", -"^ c #444234", -"/ c #4B4334", -"( c #4C4A34", -") c #43423C", -"_ c #4C443B", -"` c #454A39", -"' c #4D4A3C", -"] c #524435", -"[ c #504C32", -"{ c #534B35", -"} c #5A4837", -"| c #52453B", -" . c #534B3C", -".. c #5A4C3C", -"X. c #585537", -"o. c #54523C", -"O. c #5B533C", -"+. c #6C5828", -"@. c #654F35", -"#. c #63573C", -"$. c #26384D", -"%. c #4A3F40", -"&. c #324B5C", -"*. c #434343", -"=. c #4B4A44", -"-. c #4A4946", -";. c #544C42", -":. c #564B47", -">. c #5A4D43", -",. c #4C5446", -"<. c #555244", -"1. c #5B5344", -"2. c #5B5A45", -"3. c #54534B", -"4. c #5C544B", -"5. c #5D5A4C", -"6. c #4D5253", -"7. c #595854", -"8. c #625444", -"9. c #635B44", -"0. c #6A5947", -"q. c #63554B", -"w. c #6A5549", -"e. c #645B4C", -"r. c #6B5C4C", -"t. c #645C53", -"y. c #655956", -"u. c #6B5D53", -"i. c #735D54", -"p. c #5B6353", -"a. c #686349", -"s. c #6B634C", -"d. c #74674C", -"f. c #656254", -"g. c #6C6353", -"h. c #6C645A", -"j. c #6A6859", -"k. c #736454", -"l. c #736A54", -"z. c #7B6C55", -"x. c #73655B", -"c. c #7A6558", -"v. c #746B5B", -"b. c #7B6C5C", -"n. c #727253", -"m. c #787358", -"M. c #7C735C", -"N. c #636064", -"B. c #696865", -"V. c #746C62", -"C. c #776966", -"Z. c #7B6D63", -"A. c #6C7268", -"S. c #7C7363", -"D. c #797568", -"F. c #797976", -"G. c #9D6409", -"H. c #C17D12", -"J. c #826C5A", -"K. c #8C7756", -"L. c #83735C", -"P. c #87785B", -"I. c #846D64", -"U. c #837464", -"Y. c #8A7567", -"T. c #847A64", -"R. c #8B7B64", -"E. c #83756A", -"W. c #847B6B", -"Q. c #8B7C6B", -"!. c #937B66", -"~. c #937D6C", -"^. c #867B74", -"/. c #8B7C73", -"(. c #947D74", -"). c #A17D77", -"_. c #7D8272", -"`. c #CB8C27", -"'. c #898367", -"]. c #8C826C", -"[. c #948963", -"{. c #97876A", -"}. c #93836C", -"|. c #9A916C", -" X c #8C8373", -".X c #8A8579", -"XX c #938474", -"oX c #9A8574", -"OX c #948A74", -"+X c #9B8B74", -"@X c #94847B", -"#X c #9B857A", -"$X c #958A7B", -"%X c #9B8C7C", -"&X c #9B927A", -"*X c #A38A76", -"=X c #A28D7C", -"-X c #A79271", -";X c #A3937C", -":X c #A89679", -">X c #E7B053", -",X c #32679E", -"X`.G.G.*.K *.K T *.*.K *.*.*.*.K *.K *.*.*.*.*.C.mXK *.*.*.*.*.*.$.*.*.*.*.K *.K *.*.K K *.K *.*.K *.K *.*.*.*.*.K *.*.*.K *.*.K *.K *.K *.*.K *.*.*.*.*.K *.K *.*.*.K *.K *.*.K *.*.K *.*.K *.*.K *.*.K *.K *.*.$.*.*.*.*.K *.*.K *.*.*.K *.*.K *.%.*.$.*.*.*.*.*.*.*.*.*.*.*.*.K *.*.*.*.*.*.*.*.*.*.*.*.*.*.*.*.*.*.*.*.*.*.*.*.*.K *.*.*.*.*.*.*.*.*.*.*.K *.*.*.*.*.*.*.*.*.*.*.K *.*.*.$.K *.*.*.*.*.*.*.*.*.*.*.%.$.*.K *.*.*.*.K *.*.*.*.*.*.*.*.*.*.*.*.*.*.*.*.*.*.*.*.K *.*.*.*.*.*.*.*.*.*.*.*.*.*.*.*.*.*.*.*.*.*.*.*.*.*.*.*.*.*.*.*.*.*.*.*.*.*.*.*.*.*.*.*.*.*.*.*.*.*.*.*.*.*.*.*.*.*.*.*.*.*.-.*.*.*.*.*.*.%.*.*.*.*.*.*.*.*.*.*.*.*.*.*.*.*.*.*.*.*.&.*.*.*.*.*.*.*.*.*.*.*.*.*.*.*.*.*.*.*.*.*.*.*.*.*.*.*.*.*.*.*.*.*.*.*.*.*.*.*.*.*.*.*.", -"K *.K *.*.K *.*.*.*.*.*.*.*.K *.K *.*.*.K *.K *.*.K *.*.*.K *.K *.*.*.*.K *.*.*.*.K *.K *.K *.*.K *.*.K *.*.K K K *.K *.K *.*.K *.*.K / G.H.>X>X>X>X`.G.E T ) *.*.K K *.*.K *.K *.K *.K *.K K *.F.mX$.%.K *.*.K *.K K *.*.*.K *.*.K *.*.K *.*.*.*.*.K *.*.K *.*.K *.K *.*.*.%.*.*.*.*.*.K *.*.*.K *.*.K K *.*.*.*.K *.*.*.K *.*.*.*.*.*.*.*.K *.*.*.*.K K *.*.*.*.*.K *.*.K *.K K *.*.*.*.K K *.*.*.*.*.*.*.*.*.K *.*.*.%.*.K *.*.K *.*.*.K *.K K K *.*.*.K *.K *.K *.*.K *.K *.K *.*.K *.*.*.*.*.%.*.*.*.K *.*.*.*.*.%.*.*.*.*.*.K *.*.*.*.*.*.*.*.*.*.*.*.*.*.*.*.*.*.*.*.*.*.*.*.*.*.*.K *.*.*.*.*.*.*.*.*.*.*.*.*.*.*.*.*.$.*.*.K *.K *.*.*.K *.*.*.%.*.*.*.*.*.*.*.*.*.*.*.*.*.K $.%.%.*.*.*.%.%.*.*.*.*.*.*.K *.*.*.*.*.K *.*.*.*.K *.*.*.*.*.*.*.*.*.*.*.*.*.*.*.*.*.*.$.*.*.*.*.*.*.%.*.*.*.*.*.*.*.*.*.*.*.*.*.%.*.*.*.*.*.*.*.*.*.*.*.*.*.*.*.*.*.*.*.*.*.*.*.*.*.*.*.*.*.*.*.*.*.*.*.*.*.*.*.*.*.*.*.", -"*.K *.K *.K K K K K K K K *.*.K *.K K K *.K *.K K *.K K *.K K *.*.K K *.*.K %.%.K *.K *.*.*.K *.*.K K *.K *.*.*.*.K *.*.*.K K *.K *./ G.G.>X>X>X>X>X`.G.I K K *.*.*.*.*.K *.*.K *.*.*.K *.*.*.*.N.bXK *.*.*.K *.*.*.*.K K *.*.K *.K K *.*.*.K K K *.K *.*.K *.K K *.*.*.*.K K *.*.K K *.*.K K *.*.K *.*.*.*.K *.*.*.K *.K *.*.K K *.K *.*.K *.*.*.K *.*.*.*.K *.%.K *.*.*.*.*.*.K *.K *.*.*.*.*.*.K *.K K *.K *.*.*.K *.*.*.*.*.*.*.*.K *.*.*.*.*.*.*.K *.*.*.*.*.*.*.K $.*.*.*.K *.*.*.*.K *.K $.%.*.*.*.*.*.*.*.*.%.$.*.K *.*.*.*.*.*.*.*.K *.*.*.*.K *.K K *.K *.*.K *.K *.*.*.*.*.*.*.*.K *.*.K *.*.K *.*.K *.K *.*.*.*.*.%.*.*.*.*.*.*.*.*.*.*.*.*.%.$.*.*.*.*.K *.*.*.*.*.*.*.*.*.*.*.K *.*.$.*.*.*.*.*.*.*.*.*.*.&.%.*.*.K *.*.*.*.*.*.*.*.*.*.*.*.K *.K *.*.*.*.K *.*.*.*.*.*.*.*.K $.*.*.*.*.*.*.*.K *.*.*.*.*.*.*.*.*.%.$.*.%.*.*.*.*.*.*.%.&.*.*.*.*.*.*.*.*.*.*.*.*.*.*.*.K *.*.*.K *.*.*.*.*.*.*.*.", -"$.*.K *.*.K K *.*.K K *.*.K K *.K *.*.K K K K *.K K *.K *.K *.K K K *.K K *.K $.*.K *.*.K K *.*.K *.*.K *.K K *.K *.*.K K *.*.K K ^ G.G.`.>X>X>X>X`.H.G.n K K K K K *.K *.K K *.K *.K *.K K *.K F.bX*.K K K K *.K *.*.*.*.K *.K %.*.%.K K *.*.*.*.K *.K *.*.*.K *.K *.*.K K %.K K *.K *.*.*.*.*.K *.K *.*.K *.*.K *.*.K *.K *.K *.K *.K K *.K *.*.K K *.K *.*.*.*.*.K *.K *.*.K *.*.K *.K *.K K *.K K *.K *.*.K *.K *.K K *.K *.*.K %.$.K *.K *.*.K *.K *.K K *.K *.*.*.%.%.*.*.*.*.*.K *.*.*.*.*.K K *.*.K *.K K *.*.*.K *.K *.*.K *.K K *.%.%.*.*.*.K *.*.$.*.*.*.*.*.*.*.*.K K K *.*.$.*.*.*.$.*.K *.K *.*.*.K *.*.K *.*.*.*.K *.*.%.$.%.*.K *.*.K *.*.*.*.K *.*.*.*.K K *.K *.*.*.*.*.*.*.*.*.*.*.*.*.K *.K *.K K *.K *.*.*.*.*.*.K *.*.*.K *.*.$.%.*.*.*.*.*.*.*.*.*.*.*.*.*.*.*.*.*.*.K *.*.*.*.*.*.*.*.*.K *.K *.*.*.*.*.*.*.*.*.*.*.*.*.K *.*.*.*.*.K *.*.*.*.K *.*.*.K *.%.%.*.*.*.*.*.*.*.*.*.*.*.*.*.", -"%.K K K K *.K K *.K *.K K *.K K K *.K *.K *.*.K *.*.K *.K *.K *.K *.K *.*.K *.K K *.K K K *.K K *.K K *.K *.K K *.K K K *.K *.K Q G.G.`.`.>X>X>X>X`.G.L l K K *.*.K K *.K *.*.K $.-.*.K *.K K *.C.bXK *.*.K *.K *.K K *.K *.D > O O > > k K K *.K *.K *.K *.K *.K *.K h > > > > > > , K K K K K *.K *.K K *.K K *.K K *.K %.D 1 , g K *.*.K *.K *.K O > > O > K *.K *.K *.K K *.K *.*.K *.K *.*.K *.K *.*.K *.*.K *.K *.*.K *.K K *.*.*.K *.*.K *.*.K *.*.K *.*.*.K K *.*.K *.K K *.K *.K *.K *.*.*.*.K *.K *.*.*.K K *.*.*.K *.*.K *.*.*.K $.*.K K *.*.%.*.%.K *.K K *.K *.K *.*.*.*.K %.%.K *.%.*.K *.*.*.K *.K *.*.K *.K *.*.*.*.K *.*.*.*.K *.K *.*.K *.*.*.$.%.*.*.*.*.*.*.K *.K *.*.*.K *.K *.K *.*.K *.*.*.*.*.*.*.*.*.K K *.*.*.*.K *.K *.*.*.*.*.*.K *.*.K *.K *.*.K *.*.*.*.K *.*.*.*.K *.*.*.K *.*.K *.*.*.*.K *.*.K *.*.K *.*.K K *.*.*.%.K K *.*.*.K *.*.*.K *.*.*.*.&.*.*.*.K *.*.*.*.*.*.*.*.*.%.", -"K *.K *.K *.K *.K *.K *.K K K *.K K K K *.*.K K K K *.*.K K K K K *.*.K K *.*.K K K *.K *.K K K K *.K K K *.K K K *.K K *.K *.K G.G.H.`.>X>X>X-XH.G.L $ l H K K K K K *.*.K K *.K K K *.K *.*.K F.bXK *.K K *.K K *.K *.K *.D G wXwXwXwXwXF.$.*.*.K *.*.K *.*.K *.K v X N.wXwXwXwXwXbXwX*.K K *.K K *.K *.K *.K K $.K K *.h X *.6X6XN.K *.K K *.K K 4 wXwXwXwXwX*.K K *.K *.K *.K K *.K K *.K *.*.K K *.K K *.K K K *.K *.K *.K *.K *.K *.K *.K *.K *.K *.*.*.K K *.*.K *.*.*.*.*.K *.K *.*.*.*.K *.K *.*.*.K *.K *.*.K *.K *.K K *.K *.*.K *.*.K *.K *.*.*.K *.*.*.*.*.K *.K *.*.K *.*.*.K *.*.%.*.K *.K K *.K K *.K K *.K K *.$.%.*.K *.*.K *.*.K *.*.K *.K *.*.*.K *.*.K *.*.*.*.K *.*.K *.K *.*.K *.K *.*.*.K *.*.*.K *.*.*.*.*.*.*.K *.*.$.%.%.*.*.*.*.K *.*.K K *.K *.*.*.K *.*.*.*.*.K *.*.*.K *.*.*.K *.*.*.K *.*.*.*.*.K *.*.*.*.*.K *.*.K *.$.%.%.K *.*.*.*.K *.*.*.*.K *.%.K *.K *.K *.*.$.%.*.*.*.*.", -"K K K K K K K K K *.K K *.K K *.K *.K *.K K K *.*.%.K K *.K *.K K K K K K K K K *.*.K K K K *.*.K K K *.K K K *.K K *.K K K T +.G.`.`.>X>X>X>XH.G.G.$ 0 D G K *.*.*.K K K K *.K *.*.K K K K K *.B.bXK *.*.K *.K K *.*.K K K D *.ZXmXmXmXmXF.*.K K *.K K K K K *.K G X *.mXmXGXmXmXmXmX6.*.*.K K K *.K *.K *.K *.*.%.*.K K O B.mXmXGXmXqXK *.*.K *.K h mXmXmXGXbXK K *.K K K *.K *.*.K *.K K *.K K *.*.K *.K K *.*.K K *.K *.K *.K *.K K K *.K *.K *.K *.K K K *.*.*.K *.K K K K K *.K *.K K K K K *.K K K K *.K *.K K *.K *.K *.*.K *.K *.K K *.*.K K *.K *.*.K K K K K *.K *.*.K *.K K K *.K K *.K *.*.*.*.K *.*.*.*.*.*.*.*.*.K *.K *.K *.*.K K *.*.K *.K *.*.K K *.*.*.*.K K K K *.K *.*.K *.*.K K *.*.*.K *.*.K K *.*.K *.K K *.K *.K *.*.K *.K K *.K *.*.K *.*.*.*.*.*.K K *.*.K K K K *.*.*.K *.*.K *.*.K K *.*.K *.K *.K K *.K *.K *.K *.*.*.*.K *.*.*.*.*.K *.*.K *.K K *.*.*.*.*.*.*.*.K *.*.*.K *.K *.", -"K *.K *.K K K K K K K K K *.K K K K *.K K K K K K K *.K K K *.K K *.*.K *.K K *.K K K *.K K K K K K K *.K *.K K K K K K T E +.G.H.`.>X`.`.>XH.G.G.- 3 h G K K *.K *.*.K K *.*.K K K K *.*.K K K F.mX$.K K K K K K K K *.K K D *.GXmXmXGXmXF.K K K K K *.*.K *.K K O k mXmXGXmXmXmXmXB.K K K K *.K K K *.K K K *.K K *.*.G 1 mXGXmXmXmXmXN.K K K K G h mXmXGXGXbX*.K K *.*.K K *.K *.*.K *.K *.K K K *.*.*.K *.K K *.K *.*.*.K K *.*.K *.K *.*.K *.K K *.*.*.K K K K *.K K *.K *.*.K *.K K *.*.K K *.*.K K *.K K K K *.K K *.*.K K *.*.K K *.K K K *.*.K *.K K *.*.K K *.K *.*.K *.K K *.*.K K *.K *.K K K K *.K K K K *.K *.K K *.K *.*.K *.K *.*.K *.K K *.K K K *.*.K K *.K *.*.K *.*.K *.K *.*.K *.K *.K *.K *.*.*.*.K *.K *.*.K *.*.*.*.K *.*.*.*.K K *.*.*.K *.*.K K *.*.*.K *.K *.*.K *.K K *.*.K *.K *.K K *.K *.K K *.*.*.*.K *.K *.*.*.*.K *.*.*.*.K *.K *.K *.*.K *.*.*.K %.*.K *.*.*.K *.*.K K *.*.K ", -"K K K K K K *.K K K *.K K K K K K K K K K *.K K K K K K K K K K K K K K K K K K K K K K K *.K K K K K K K *.K K *.K K *.T L G.H.`.`.`.>X`.H.G.G.@ , h n G K K K K K K K K K K K K *.K *.K K *.K N.bX*.K K K *.K *.K K K *.K D *.mXGXGXmXGXF.*.K K *.K K K K K K , , bXGXmXmXGXmXGX6X*.K K *.K *.*.*.K K *.K K K %.K K K G F GXmXGXmXGXGX6X$.K *.*.K h GXmXGXmXbX*.K K *.K K K K K K K K K *.K *.*.K K K K K *.K *.K K K K K K *.K K *.K K K *.K K K *.K K K K *.K *.K *.K K K *.*.K K *.K K K *.K K K *.*.K *.*.*.K K *.*.K K *.*.K K *.*.K K *.*.K *.K K *.K K K *.*.K *.K %.$.K *.*.K K *.*.K *.K *.K *.*.K *.*.K *.K *.K K *.K *.K K *.K *.K K *.K *.*.K *.K K *.K *.K K *.%.K *.K *.K K *.K K *.K *.K *.K *.K K K K *.K *.K *.K K K K *.K *.K K K *.*.K K K *.K *.K *.K K K *.K *.K *.*.*.K *.K K *.*.*.K *.*.K *.*.*.*.K *.K *.*.K *.K *.K K *.K K *.K *.K *.K *.*.K *.K *.K *.$.*.K *.K *.*.*.K *.*.K *.*.", -"K K K K K K K K K K K K K K K K K K K K K K K K K K K K K K K K K K K *.K K K K K K K *.K K K K *.K K K K K K *.K K K K @.G.H.H.`.`.>X`.H.G.G.8 + 7 v G K K K K K K *.K K K *.K K K K *.K K K K F.bXK *.*.K K K K *.K K K T D *.GXmXmXGXGXF.K K K K K K *.K K g X wXmXGXmXGXmXGXqXK K *.K K *.K K K K *.K K *.K K K *.K K G GXmXGXmXGXmXF.*.K *.K J h mXGXGXmXmXK K *.K K *.K *.K K K *.K K *.K K K K K K K K *.K *.K *.K *.K *.K K K *.*.*.K K K K *.K K *.K *.K K K *.*.K K K K K K K K K K K *.K K K *.K *.K K *.*.K K K K K K *.K K K *.*.K K K K K *.K K *.K K K *.K *.K K K K K *.K K *.*.K *.K *.K K K *.K *.K *.K K K *.K *.K K K K K *.*.K K K K *.*.K K K *.K *.K *.%.*.*.K K *.K *.*.*.$.K *.K *.*.K *.K K *.K *.K *.*.K *.*.K *.*.K K *.K *.K *.K *.K K *.K K *.K *.K *.K K *.K K *.*.%.K *.K K *.K K *.K K K *.*.K *.K *.K K *.K K K *.K *.K *.*.K K *.K $.*.K *.K *.K K *.K K *.K K *.*.K *.K *.K ", -"K K K K K *.K K K K K K K K K K K K K K K K K K K K K K K K K K K K K K K K K K K K K K K K K K K K K K K K K K K K K I G.G.H.`.`.`.`.H.H.G.8 , 6 v G G K K K K K K K K K K K K K K K K K K K K B.bXK K K K K *.K K K K K K v *.GXGXGXmXmX2XK K K K *.K K K l X F.GXmXGXGXmXGXbX*.K K K K K K K K K K K K K K K *.K K K K K wXGXmXGXGXmX*.K K K K G h GXGXmXGXbXK K K K K K K K K *.K K *.K K K $.*.K *.K *.K K K K K K K K K K K *.K K K K *.K *.K K K K K K K K *.K K K K *.K K *.K *.*.K *.K *.K *.K K K K K K K K *.K *.K *.K *.K *.K K K K *.K *.K *.K K *.*.K K K K *.K *.*.K K K *.%.K K K K K K K *.K K K *.K K *.*.K K K K *.*.K *.K K K *.*.K *.K K K *.K *.K K K K $.K K K *.K K K K K %.K *.K K K K K K *.K K K K K K K K K K K K *.*.K K *.*.K K *.*.K K *.K *.*.K *.K K *.K *.*.K K %.$.K K *.K *.*.K K *.*.K K *.K *.K *.*.K %.$.*.K *.K *.K K *.*.K *.%.K K K *.K *.*.K *.K K *.*.K K *.K *.K *.", -"K K K K K K K K K K K K K K K K K K K K K K K K K K K K K K K K K K K K K K K K K K K K K K K K K K K K K K K K K K R G.H.H.`.`.`.`.H.G.G.8 , 7 l G K K K K K K K K K K K K K K K K K K K K K K C.bXK K K K K K K K K K K K D *.mXGXGXGXGXF.K K K K K K K D X 6.mXGXGXGXGXGXmX6.K K K K K K K K K K *.K K *.K K K K K K K K 6.vXGXGXbXN.K K K K K G l GXGXGXmXmXK %.K *.K *.K K K *.K K K K K *.%.K K K K *.K K K *.K K K *.K K *.K K K *.K K K K K K K K K K K K K K *.K *.K *.K K K K K K K K K K K K K K K *.K *.K K K K K K K K K K K K *.K K K K K K K *.K K K K *.K K K K K *.*.K K K K K *.K *.K K *.K *.K K K K K K K *.K *.K K K *.*.K K K K K K K K *.*.K K K K *.*.K *.K K *.K *.*.K K %.*.K *.K *.*.K *.*.K *.K *.K *.K K K *.K K K K K K K K *.K K K K K *.*.K K K K K K *.*.K K K K *.K *.K *.K K K *.K *.K K K K K *.K K K *.%.K K *.*.K K K *.K K K K K K *.*.K K *.K *.K *.*.K K K K K *.*.K K ", -"K K K K K K K K K K K K K K K K K K K K K K K K K K K K K K G K K K K K K K K K K K K K K K K K K K K K K K K K K ] G.G.H.H.`.H.`.H.H.G.L $ 3 l G H K K K K K K K K K K K K K K K K K K K K K K F.bXK K K K K K K K K K K K D *.GXGXGXGXGXF.K K K K K T G O K GXGXGXGXGXGXGXN.K K K K K K K K K K K K K K K K K K K K K K K K K *.6.K K K K K K K K h GXGXGXGXmXK K K $.K K K K K K K K K K K K K K K K K K K K K K K K K K K K K K K K K K K K K *.K K K *.K K K K K K K K K K K K *.K *.K K K K K *.K *.K K K K K K %.$.K *.K K *.K K K *.K K K K *.K K K K K *.K K K K K *.K K K K K K K *.K K K K K K K K K *.K K *.K K K K K K K *.K K K K *.K K *.K K K *.K K *.K K K K K K K K K K K K K K K K K K K K K K K K K K K *.K K K *.*.K K *.K K *.K *.K K K *.*.*.K K K K *.K *.*.K K K K *.*.K K K *.K K K *.K *.K K K *.*.K K K *.K K K K *.K *.K K *.K K K *.*.K *.*.K K K *.K K K *.K K K K *.*.K K K K *.", -"G K K K K K K K K K K G G K K G K K K K K K K K K K K K K K K K K K K K K K K K K G K K K K K K K H K K K K K P R G.G.H.`.`.H.`.H.H.G.L $ $ l G G G K K K K K K K K K K K K K G G K K K K K K K N.bX$.K K G K K K K K G K K D *.GXGXGXGXGXF.*.K $.K K K > g mXGXGXGXGXGXGXF.K K K K K K K K K K K K K T K K K $.K K K K K K K K K K K K K K K K K G l GXGXGXGXbXK K K K K K K K K K K K K K K K K K K K K K K K K K K K K K K *.K K K K K K K K K K K K K K K K K K K K K K K K K K K K K K K K K K K K K K K K K K K K K K K K K K K K K K K K K K K K K K K K K K K K K K *.K K K K K K K K *.K *.K K K K K K K *.K K K K K *.K K *.K K K K K K *.K K K K K K K K K K K K K K K K *.K K K *.K *.K K K K K K K K K K K K K K K K *.K K K *.*.K K *.K K *.K K K K K K K K K K K K K K K K K K K K K K K *.K K K *.K K K K K K *.K K K *.K *.K *.K K *.K *.K K *.K K K K K K K *.*.K K *.K *.K *.K *.K K K K K K ", -"K K K G K G K G K K K K K K K K K K G K K G K G K K K G G K K K K G K K G K G K K K K K K G K K K K K K H K K I G.G.H.H.H.H.`.H.H.G.L . 3 i D H K K K K K K K G K K K K K K K K K K K K K K K K F.bXK K K K K K K K K K K K v %.GXGXGXGXHXF.K K K K K 2 > bXGXHXGXGXGXHXqXK K K K G K K K K K K K K K D h 6 > > , g T T K F > + > 1 g K K K K K K K h GXGXHXGXmX> , , > G K v , 2 > > , , > , > , , > , > > > > , g h D K K K K K K K K K K K K K K K K K K K K K K K K K K K K K K K K K K K K K K K K K K K K K K K K K K K K K K K K K K K K *.K K K K K K K K K K K K K K K K K K K K K K K K K K K K K K K K K K K K K K K K K K K K K K K K K K K K K K K K K K *.*.K K K K K K K K *.K K K K K *.K K K K K *.*.K K *.*.K K K K K K K K K K K %.K K K K K K K K K *.K *.K K K K *.K *.*.K K *.*.K K K K K K K K *.K %.K K K *.K K K K K K K K K K K K K K K K K *.*.K K K K K K K K K K K K K K *.K *.K *.", -"G K K K K K K K K K K G K K K K G K K K K K K K K G K K K K K K K K K K K K K K K K K G K K K G G K K K K K M +.G.H.H.H.H.H.H.H.G.+.+ 2 h D G G K K G K K G K K K K K G K K K K K K K K G K G K N.bXK K K K K K K K K K G K D -.GXHXHXGXGXF.K K K K h qXGXHXGXHXGXHXbXK K K K K K K K K H K K K v O O G N.6XqXwXbXB.$.K v K wXwXwXwX6XK K K G K G k GXHXGXGXGXwXwXwXwXbX*.h -.wXwXwXwXwXwXwXwXwXwXwXwXwXwXwXwXwXqXF.N.D F K K K K K K K K K K K K K K K K K K K K K K K $.K K K K K K K K K K K K K K K K K K K K K K K K K K K K K K K K K K K K K K K K K K K K K K K K K K K K K K K K K K K K K K K K K K K K K K K K K K K K K K K K K K K K K K K K K K K K K K *.K K K K K K K K K K K K K K K K K K K K K K K K K K K K K K K K K K K K K K K K K K K K %.K K K K K K K K K K K K K K K K K K K K K K *.K K K K K K K *.K K K K *.K K K K K *.K K K K K *.K K K *.K K *.K K K K K K *.K *.K K K *.K K ", -"K K K G K G K G K G K K K G K G K K K G K G K G K K K G G K K G K G K G K K G K G K K K K G K K K K G K K H G.G.G.H.H.H.H.H.H.G.+.# 2 h n G K K K K K K K K K K K G K K G K G K K K G K K K K K B.bXK K K G K K K K G K K K D *.HXGXHXHXGX2XK K K l A.HXHXGXGXHXGXmX*.K K F K K K K G K K K G h X *.mXGXGXHXGXHXHXF.T K v 6.GXHXHXHXwXK K K K K K k HXGXHXHXHXHXHXHXHXHX-.j N.HXHXHXHXHXHXHXHXHXHXHXHXHXHXHXHXHXHXHXGXGXqX*.*.K K K K K K K K G K K K K K K K K K K K K K K K K K K K K K K K K K K K K K K K K K K K K K K K K K K G K K K K K K K K K K K K K K K K K K K K K K K K K K K K K K K K K K K K K K K K K K K K K K K K K K K K K K K K K K K K K K K K K K K K K K K K K K K K K K K K K K K K K K K K K K K K K K K K K K K K K K K K K K K K K $.K K K K K K K K K K K K K K K K K K K K K K K K K K K K K K K K K K K K K K K K K K K K K K K K K K K K K K K K K K K K K K K K K K K K K K ", -"G K K K G K K K G K K K G K K K K G K G K K G K G K K G K G K K G K K G G K K G G K K K G K G K G K G K H +.G.G.H.H.H.H.H.H.G.G.$ , h v D G K K G K K K K K G G G K K K K K K G K K G K K K H K C.bXK K F K K G G K K K K K D *.HXHXHXHXHXF.K G D -.HXHXHXHXHXHXGX6.K K K G K K K K K G K K G X 7.GXHXHXHXHXHXHXHX2XK G h 6.HXHXHXHXwXK K K K K G l HXHXHXHXHXHXHXHXHXHX*.j N.HXHXHXHXHXGXHXHXHXHXHXHXHXHXHXHXHXHXHXHXHXHXmX$.K G G K K K G K K K K G K K G K K K K K K K K T G K K G K K K K K K K K K K K K K K K K K K K G K K K K K K K K K K K G K K K K K K K K K K K K K K K K K K K K K K K K K K K K K K K K K K G K K K K K K K K K K K K K K K K K K K K K K K K K K K K K K K K K K K K K K K K K K K K K K K $.K G K K K K K K K K K K K K K K K K K K K K K K K K K K K K K K K K K K K K K K K K K K K K K K K K K K K K K K K K K K K K K K K K K K K K K K K K K K K K K K K K K K K K K K K ", -"G K G K G K G K K G G K K G G K K K K G K G K K G K K K K K G K K G K K K G K K K K G K K H K K K H G K } +.H.H.H.H.H.H.H.G.G.# > h l G K K G G K G K G G K K K K K G G K G K K K G K G G G K K F.bXK G K K K K G K G K K G D *.HXHXHXHXHX6XK G X D GXHXHXHXHXHXHXB.K K K K K K K G G K K K K l 2 GXHXHXHXHXHXJXHXHXF.G K v 6.HXHXHXHXwXK K G K G G l HXHXHXHXHXHXHXHXHXHX*.l N.HXHXHXHXJXJXHXHXHXHXJXHXHXHXJXHXHXHXHXHXJXHXHXwXK K K K G K K K G K K K G K K K K G K K K K K G K K K K K K G K K G K K K K G K K K G K K K K K K G K K K G K K K K K K K K G K K G K K K K K G K K G K K G K K K K K K K K G K K K K K K K K K K K K G K K K K K K G K K K K K G K K K K K K K K K G K K G K K K K K K K K K K G K K K K K K K K K K K K K K K K K K K K K K K K K K K K K K K K K K K K K K K K K G K K K K K K K K K K K K K K K K G K K K G K K K K K K K K K K K K K K K K K K K K K K K K K K K K K K K K ", -"K G K G K G K G G K K K K K K K G K G K G K K G K G K G G K G K K G G K G K G K K G K G G K K G J H K E *.+.H.H.H.H.H.H.G.G.$ > h v D K G K G K K G G K G K K G K G K K K K G K K K K K K K K G N.bXK K G K K G K K G K G K v -.HXHXHXHXHXF.$., 2 mXJXHXJXHXHXHX6XK G K K G G K G K K K K G G g N.HXHXHXHXHXHXJXHXJX^.K K h :.HXJXHXHXvXG K K G K G l JXJXHXJXJXHXJXJXJXJX*.F 2XKXHXJXJXHXJXJXHXJXJXJXJXHXKXHXJXJXHXHXHXHXHXJXHX*.K F K K K K K K K K K K K K K K K K G K K G K K K G K G K K K G K G K K G K K G K K K G K K K K K K G K K K K G K K G K G K K K K K G G K K K K K G K K K K K K K K K G K G K K K K K G K G K K G K K G K K K K G K K K K K G K K K K K G G K K K K K K K K K K K K K T G K K K K K K K K K K K K K K K G K K K K K K K K K K K K G K K G K K K K K K G K K K K K K K K K K K K K K K K G $.K K K K K K K K K K K K K K K K K K K K K K K K K K K K K K K K G K K K K K K K K ", -"G K G K G K G K K G G G G G G G K G K G K G G K G K G K K G K G G K K G K G K G G K G K G K G K J J ] _ -.G.H.H.H.H.H.G.G.8 + 6 h D G G G K K K G K G K K G K K G K G K G G K G G K G G K G K G B.bXK K K G F K G K K G K G l -.JXJXJXHXKXF.g O bXHXJXJXHXJXJXbXK K K K G K K G K K G G K K K 6 F.HXJXJXJXJXbXF.A.B.6.K K v 6.JXHXJXJXwXK G K G K F h JXHXJXHXGXB.N.B.B.B.K G 6.B.B.N.B.B.N.B.B.N.B.N.B.N.B.B.B.N.F.qXHXJXJXHXJX2XK K K K G G K K G K G K G K G K G K K G K G K G K K K G K G K K K G K K K G K G K G K K K K G K G K K K G G K K K K K K K G K K G K K K K K G H K K K K G G K K G K G K K K K G K K G K K K K K K K K K K K G K K K K K G K K G K G K K K K K K G K K G K K K G K K G K K K G K K K G K K G K K K G K K K K G K K K G G K K K G K K K K K K K K K G K K K K K K K K K K K G K K K G K K K T K K K K K K K K K K K K K K G K K K K K G K K K K G K K K K K K K K K K K G K K K ", -"K G G K G K K G G G K G G K G G K G G K G K G K G K K G K G G K G K K G G K G K K G G K G K G G K / _ F.mXy.H.H.H.H.H.G.8 + 4 l D G H K H G G K G K G K K G K K K G K G K G K G G K G K G K G K N.bXG K G K K G G K G K G K D -.JXJXJXHXJXF. 6XJXJXJXJXJXJXmXK F G K K G K K K K G K K G K G , wXJXJXJXJXbXG K G G K G K h 6.JXJXJXJXvXG K G K G G h JXJXJXJXGXK G K G K G K G K K G K G K H K K G K J G K J K K K x 2XJXJXJXJXwXK K G K G K K K K G K K G K K G K K K G K K G G K K G K K K G K K K G K K G K K G K K G K K K G K K G K K G K K K G K G K K K G K K G K K G K K K G K K G G K G K K K K K K G K K K G K K K G G K K K G K K K G K K G G K K K K K K K K G K K K G G K K K K G G K K K K K K K K K K G K G K K K K K K K K G G K K K G K K K K K K K K K G K K K K K G K G K G K G K G K K K K G K G K K K K K K K K K K K K K K K G K K K K K H K K K G K K G K G K K G K K K K G K K K G K K ", -"G K G G K G G G K K G K G G K K G G K G G G K G K G G K G K G G K G G K K G K G G K K G G G J H R ' F.wXbX7._ G.G.#.} I . 3 l M G G K G G K K G K G G G G K G G K G G K G K G K K G K G K G K G B.bXK G G K G K K G K G G K l -.JXJXJXJXJXB.*.JXJXJXJXJXJXGX6.K G K K G K G G G K G G K K G K , bXJXJXJXJXN.K G K K G K G D 6.JXJXJXJXwXK K K G K G v JXJXJXJXmXG K G K G K G K K G G K K K G K G K H F K K G J G G v 6.JXJXJXJXbXK G K G K G G G G K K G K G G G K G K K G G K K G G K K G K G K G K K G K K G K K G K K G K G K K G K K G K K G K K G K K G K K G K G G K G K G K K G K K K K K K G G G G K K G G K K G G K K K K G G K K G G K K G K K G K G K G K G K K K G K K K K K G K K K K K G K G G K G K K K K K K G K G K G K G K K G K K K K G K G G K G K K K K G G K K K K K K K K K K K K G K G K K K K K G K K G K G K K G K G G K K K K G K K K K K K K K K K K K K K K K G K K K K K K K K K ", -"G K K G G G G K G G G G K G G G G K K G K G G K G G G G G K G K G K G G G K F K K G J G K K G Y _ B.bXbX7.*.-.-.6.*.] + 4 h v G K G K G K K G K G K K G K G K G G G K G K G G K K G G K G G K K B.bXG K K G K G G K G K K G v -.JXJXJXLXJXB.mXJXJXJXJXJXJXN.K G G K G G G K K G G K G G K G G , bXJXJXJXJX7.K K G K K G G z 6.JXJXJXJXvXG G G K G D v JXJXJXJXGXK G K G K G K K K G G D h , 2 2 1 2 < 1 2 , 2 2 , 1 , -.JXJXJXJXbXK K G K G K K K G K G K G G K K G K G G K K G K K G K G K G K G K G G G K G K G K G K G K G K K G K K K G K G K G K G K G K K K G K K G K K G G K G K G K G K K G K K K G K G K G G K K G G K K G K K G K K K K G K K K G K K G K K G K G K K G K K G K K G K K G G K G K K H K K G K K G G K K G K G K K G K K K K G K K K G G K K K G G K K G K G K K G K G K G K K G K K K K G G K G K K G K K G K G K K K K G G K G K K G G G K G G K G K K G K K G K K K G K G K G K K K ", -"G G G G G K G K G K G K G G K G G G G G K G G K G K K G G G G K G G K G G G G G G G G K G G K ;.y.bXJX7.K -.6.y.-._ + 2 h v G G G G G K G G G G G G K G G G G K G K G G G G K G G K G G G K G G B.bXK G G K G G G G K G G K z 6.JXJXJXJXKXF.LXJXKXJXJXJX2XG G G K G G K K G G K K G K G G G K > mXJXJXJXJX7.G G K G K G K z 6.JXKXJXJXbXK G K G K D h JXJXJXJXGXG K G K G K G G G v O X K A.6XqXqXqXqXqXqXqXqXqXqXqXqXbXJXJXLXJXbXK G K G K G G K G G K G K K K G K G K K G K K H G K K K G K G K G K K K G K K K G K G K G K G G K G G G K G K G K G K G K G G G K G K K K G K K G K K K G K G G K G K G K K G G K K G K K K K G K G K G K G K G K G K G K G K K K G K K G G G K G G K G G K G K G K K K G G K G G K G K G K G G K G K G K K K K G G K G G K K K K G G K K K G K K G K K G K K K K G K K G K G K K K K G K K G K G K K G K G K K K K K G K K G K K K K K K G K K G K G K G G K K K G K K K G K ", -"G G G G G G K G G K G G J G G G G G G K G K G G G K G G J G J G G G G G K G K G G J G G F F ' 7.wXJXB.K -.6.7.3.| + 2 h x G G G G G K G G G G H G K K G G G G G G K K G G G G K G K G K G K G K B.bXK K G K G K G G G K G K h -.LXJXJXJXKXF.GXJXJXJXLXJXbXK K K G G G G K G G G G K K G G G K > bXJXLXLXJX6.K G G G G K G h 6.LXJXLXJXbXK G G K G G v JXLXJXJXGXK G G G K G H H z . *.GXJXLXJXJXJXJXJXLXJXLXJXJXJXKXJXLXJXJXLXJXbXG G K K G G K G G K G G K G G K G G K G G K G G K G G K G G K G G K G G K G G G K K G G G K G K G K K K G G K G K K G G K G K K G G K G G G K G G K G H K K G K G G K K G K K K K K G G K G H K K G K K G K G K G K G K G K G G K K K G K K K K K G K K G K G K G K G G K G K K G G K G K K K K K G K G K K G K G K G K G K G G K G K K K K K G K K G K G K G G G K K K K G K G K G K G K G K G K G K K K G K G K G K K G K K G K K G K G K K K G K K G K K K K G K G K G K G ", -"G K K G G G G G G G G G G G G K K F G G G G G G G G G G F H G G G K G G G G G G G F F F F *.3.qXmXB.*.*.6.N.3.| = , 6 c D G G G K G G G K K G H G G G G G K G K G G G G K G G G G K G G G G G H B.bXG F G K G G K G G G G K v 6.JXLXJXLXJX2XF.JXLXJXJXLXJX6XG G K G G K K G G K G G G G K G G , mXJXJXJXLX7.G K F K K G G D 6.JXJXJXJXbXK G G K K D l LXJXLXLXGXG K G K G G K D 6.JXJXLXJXLXJXLXKXLXJXJXLXLXJXLXJXLXJXLXJXJXLXmXG K G G K K G K G G K G J K G G K G G G K K G G K K G G K G G G K G K K G K G K G G K G K G K G K G G G K G G K G G K K G G K G G K G G K K G K G G K K G G K G K K G G K G G G G K G K G K G G G K G G K G K G K G K G K G K G G G G G G G G G G K G G K G K G K G K K G K G G K K K K G G H K G K G G K G K G K G K G K G K K K K G G G G G K G G K G K G K G K K G G K K G K G K G K K K G K G K G G K K G K G G K G K K G K K G K G K K G G K K G K K G G G K K G G K G K ", -"K G G F K G G G G G K G G H G G K G G G K G G G G G G K H G G G G G G K K G G G F D j 2 q -.6XwXB.*.*.6.7.3.-.- + 4 l D G G G G G G K G G G G G G G G G G K G G G G K G G G G G G G K G G G G G N.bXG G G G G K G G G G G G l 6.JXLXLXJXJX6XG mXJXLXLXJXJXLXF.G G G K G G G K G G K K G G G K > vXLXLXJXJX7.G G K G K G G l 7.LXLXJXLXbXG K G G G G v JXJXLXJXGXG G G G G K H 7 6 HXKXLXJXJXLXLXJXLXLXJXLXJXLXJXJXLXJXLXJXLXLXLXmXG G G G G G K G K G G K G K G G G G K G G G G G G G K G K K G G G G G G K G K G G G G G K G K G G G K G K G K G G G G G K G G K G K G G K G K G K G K G G K G G K G G K G K G G K G K G K G K G K G G K G K G G K G K G G K G K G G K K G G K G K G K K G K G K G K G G K G K K K G G G G K K G G G K G K G G K G K G G K K G F G G K K G K G G G K G K G K K K G G G K G G K K G G K K G G K G K K G K G G K G K G K K G H K G K K G K G G K K G K G G K G K K K G K K G K K ", -"G G G G G G G G G G G G F G G G G G G G G G G G G G G G G G G G G G G G D G G F D v h # G B.F.N.*.-.6.N.7.-.0 + 4 l v G G G G H G G G G G G G H G H G K G G G G K G G G G G K G G G G G G H G H B.bXG K G G G G G G G K G G l :.LXJXLXLXLX6XH 6.LXJXLXLXLXLXJX6.G G G G G G G G G G G G H G G , mXLXJXLXLX6.G G G G G G G l 6.LXLXLXJXbXG G G G G D h LXLXJXLXHXG G K G G G G O 2XLXLXJXLXLXLXJXLXJXLXLXLXJXLXLXLXJXLXLXLXLXJXJXbXG K G K G G G G G G K G G G G G K G G K G K G K G G G G G G K K G K G G G G G K G K G G G G G G K G G G G G K G K K G G G G K G G G K G G G G G K G G G K G G G G G K G G G K G G G G G K G G G G G K G G G G K G G G K G G K G K K G G K K G G G K G G G K G G H G K G G K G G G K G G K G G G K K G K G G K K G G K G G K G K G K G K G G K K G G K G K G G G K G K G G K G G K G G G G K G K G K G G K G G K G K G G K G G K G G K G K G G G K G K G G K G G G K G G K G G ", -"G G G G G G G G G G G G G G G G G G $.Q Q Q &.F H H H G G G G G K D G G G G G F N.2X*.g Y y.B.-.-.6.7.7._ s + 6 l v G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G B.bXG G G G G G G H G H G G z 6.LXLXJXLXLX6XD F F.LXJXLXLXJXLXHX*.G G K G H G G G G G G G K G > mXLXJXLXLX=.G K G G G G G x 6.LXLXLXLXbXG H H G G G v LXLXLXJXGXG H G G G G D X HXLXLXLXLXLXJXwXF.F.F.F.F.F.F.F.qXmXLXLXLXKXLXLXmXG G H G K G G G G G J G G K G G K G G G G T G G G G G G H G G K G G K G G T G G G K G G K G G H H G K G G G G K G K G G G G H K G K G H K G G K G G K K G G K G K G G G G G G H K G K G K K G K G G K G K G G G G K K G G G G G G G K K G K G K G G K G K G G G G K G K G K G K G K G G G G G K G G G K G G G G G G G G G K G K G G G G K K G G K G K G K K G G K G G K K G G K G K K G H G K G G K G G G K G K G G G K G K G G K G G G G H G K K G K G K G K G K G K K G G K ", -"G D G G G G G G D G G G G G G G H $.4X4X3XFX5X3X$.K F G G G G G G K ,XG D K D *.bXbXA.D v -.*.*.6.7.N.*.i O 2 h v Z Z G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G N.bXG G G G G G G G G G G G h 6.LXLXLXLXLX2XG G G wXLXLXLXLXLXLXmXK G G G G G G G G G G G G G , mXLXLXLXLX6.G G G G G G G j 7.LXLXLXLXbXG G G G G M h LXLXLXLXHXG G G K G G v z LXLXLXLXLXbXK G G G G H G G G F G G 7.LXLXLXLXLXbXG G H G G G G G G G G G G G G G G G G G G G G G K G G G H G H G G G G G G G G G G G G G G G G G G G G K G K G G G G G G K G G G G G G G G G G G G G G G H G G G G K G G K K G G G G G G G G G G G G K G G K G G K G G H G G K G K G G G G G G G G G K G G K G G K G G K G G G G G G G K K G K G G K K G G K G G K K G K G G G G G G K G G G G H G G G G G G K G G K G G G K G G G G G K G K G G K G K G K K G G G K G K G G G G G G K K G K G G G G G K G G G G G K G G K G G ", -"G G G G G G G D Z G G G G Z G G G $.,X,X3X5X5X4X&.F D G G G F G K &.,XG 6.$.D 6.GXHXB.D 2 ) *.-.7.7.-.l + 2 l x D Z G G G G G G Z G D G G G G G G G D G G G G G G G G D G G G G G G G G G G G G B.bXK K G G G G G G G G G G v 6.LXLXLXLXLX6XG G G H mXLXLXLXLXLXLXbXG G G G G G G G G G G G G > mXPXLXLXLX6.G G G G G G G v 7.LXLXLXLXbXG G G G G G l LXLXLXLXGXG G G G G G l 6.LXLXLXLXHXK G G G G G G G G G G G G h bXLXLXLXLXmXG G G G G G G G G G G G K G G G G G G G G G G G G G K G G G G G G G G G K G G G K G G G G K G G H G G G G G G G G G G G K G G G K G G G H G G G G G G G G G G G K G G G K G G G H G G G G K G G G G G K G G G H G G G G K G G G K G G G G K G G K G G K G G G G G G G G G G G G G K G G G G G G G G G G G G K G K G H G K K G K G G K G G G K G K K G G K H G G G G G G G G G K G G K G G K G G K G G G K G G G K K G G K G K G K G K K G K G G K G K K G K G K G K G G K K G ", -"G G D G D G M G G G Z G G G G Z G D K &.,X,X4X4X3Xv Z G G G Z G G &.1XD GXLXPXPXPX6.G G G G G G Z l 7.PXLXPXPXbXG G G D G D D LXLXPXPXHXG G D G D G g B.PXLXPXLXwXG G G G G G G G G G G G G l 6.PXPXLXPXmXG G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G D G G G G G G D G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G K G G G G G G G G G G G G G G G G G G G G G G G K G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G K G G G G G K G K G G G K G K G G G G K G G G G G G G G K G G G G G G G G G G G G G G ", -"D G D G Z G M D D G Z G D Z G D D v j j w 1 % &.&.6 l D v G F D D ,X3X5XK G G D x h 6 2 > O D x h c D D G G M G G D G D G D G Z G G D G Z D G Z G G G Z G G G G G M G Z Z G G M G Z G Z G B.bXG M M G D G G G G G G G l 6.PXPXLXPXPX6XG G G G G G G qXPXPXPXLXPXPXGXK G D G G D G G G G + GXLXPXPXPX6.G M G G D G F l 7.PXPXPXPXbXG G D G G n D PXPXPXPXHXG G G G G G g F.PXPXPXPXwXG G G D G G G D G G G G G h 6.PXLXPXPXbXG G G G G G G G Z G Z G G G G G G G G G G D G G G D G D G G D G G G G D G G G G G G G G G G G G G G G G G G G G G G G G G G D D G G G G G D G G G G G G G D G G G G G G G G G G G G G G G D G G G G G D G G G G G G D G G G G G G G G G G G G G G G G G G G G G G G G G G H G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G ", -"M G Z G Z M D G G v G D Z G v G G Z N N j j 1 1 2 6 l v D K $.,X1X3X3X5XG K D D l h 6 , + 4 F 6 h v M G D G Z D G Z G Z M G D G D G Z D Z G Z G D D Z G D D G n D G Z D G D G D G D G D G N.bXG D G G D G M G D G G D j 6.PXPXPXPXPX6XG Z Z D G G G F mXPXPXPXPXPXIXbXG G Z M M G G D G + GXPXPXPXPX6.G D G D G G G j 7.PXPXPXPXmXD G G G D v l PXPXPXPXJXG D G D M G g F.PXPXPXPXwXG G Z G M D G G G G D G G l 6.PXPXPXPXmXG G D G D G G G D G G G D G G D G G D M G G G G D G G G G G G G G G G G G G D G G G G D G G D G D G Z G G D G G G G G G Z G G G G G G G G G G G G G G G G G G G D G G D G G G G G D G G G G G G G G G G G G G G G G G G G G G G D G G G G G G G D D G G G G G D G G G G G F G G G G G D G G G G G G G G G G G G G G G G G G D G G G G G G G G K G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G ", -"D Z Z D G v G M D G G v G D M D G D D D c c k j 6 g x &.3X3X3X3X4XFX5X D j 2 l D D G G D G n D G D G G G Z G D Z G Z G v Z G v G G v G Z G Z D D Z v G D Z D Z G v v G N.bXv D v G G Z D G G D Z G l 3.IXPXPXPXIX6XG D Z Z G Z G D K JXPXPXPXIXPXPXqXD Z D G G Z G G + GXPXIXPXPX6.G G G D Z D G l N.IXPXPXIXbXG G G G G v v PXPXIXIXJXG G G v G G l A.IXIXPXIXwXG D G G M G Z Z G D G D Z 6 6.IXIXPXIXmXD D D G G Z G G G G Z G G Z Z D G G G G G D G G G D G G D G G D M G D G G Z G G D G D G M G Z G G Z G Z G G D G D G G G D G G G D D G D G G D Z G G Z G D Z G G G G D G D G G G G G G G G G M G G Z G G D Z G G G Z G G Z G G G G G G D G G G G G G G G Z G G Z G G G Z G G G G G G G Z G G G G G G G G M D G Z G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G G D G G G G G G G D G D G G G G G G G D G G G G G D G G G G G D G G G G G G G G G G G G ", -"Z D D Z D Z v G G v Z D v G D G Z D Z Z D v &.&.F j &.3X4X4XKXFX5X5X5X6.F G v l h 6 2 > O X O h D > 6 l n D D n G D G D D G D n v G v G G v G v G D D G v G G v D v G G G Z G G G G Z G M G G Z B.bXZ M G G v G D Z G D G v l 6.IXIXIXIXIX6XG Z G D Z D Z G Z -.LXIXIXIXIXIXIXB.G G Z D Z D Z > GXIXIXIXIX6.G D G D G Z v l 7.IXIXIXIXbXG D G D G v v PXIXIXIXJXG G G G G v D 7.IXIXIXIXHXD G Z D G D G G D G Z G v wXIXIXIXIXbXG G M D G D G Z D D G Z D G D G Z Z D D Z G Z Z Z G G Z G Z D G G G G Z G G D Z G G D G G D G G Z G D D G G Z Z G G D G Z Z G G G G Z G Z G G G G D G G G Z G D G G G Z G G D D G D G G D G G G G Z G Z G G G D G G G G G D G G G G G G M G G D G G Z G D G D G G G G D G G Z Z G D G G Z Z Z G D M G G G G G G G D G G G Z G G G G G Z G G D D G Z G G G G G G G G G G M G Z Z G Z G G G G G G G Z G G G G G G Z G G G Z G G G G G Z G G G G G G G G Z Z G G G G G G G G G G ", -"Z D Z D D Z Z Z D G v Z v G Z Z Z Z N N Z Z v &.,X3X4X3XFXFXIXFX4X5X5XG G D l h 7 4 , + X k $., 2 l c D G D n n G n G G M D D Z D G v v G v G v G M D G v v G Z D G v v G G v v G D Z D G G D N.bXG D G v G v G v G M G D l 7.IXIXIXIXIXqXF D v G G D Z D D G B.IXIXIXIXIXIXPX3.D G v Z D G + HXIXIXIXIX6.M D G M Z G G l 7.IXIXIXIXmXG Z G D D v D IXIXIXIXJXD G G v Z Z D G IXIXIXIXIXB.+ 1 1 2 4 4 1 4 2 > + X F LXIXIXIXIXF.G v G Z Z Z Z v G Z G G G D G Z D D G Z G Z G D G D Z Z Z Z G D G D G G M G Z Z Z G G G G Z G G D Z D Z Z G G G Z G D Z G G D D G Z G D G G Z G D G Z Z Z G Z G G G M D G G G G G Z G M G G Z G D G G G G G G G Z D Z G Z M G D G G G G G M G G Z G Z G G G G D Z G Z D Z D G Z G Z G D Z G G G G D G G G G G Z G D G D G Z D D G G G G Z G Z G G D G D G G G M G D G G G D G G G Z G Z G D G D G G D Z D G G G D D G G G Z G Z G G M G G G G Z G G G G G G G G G G G G G M G ", -"D Z M D Z D v v Z v Z D D v G v D D Z B D D x v &.,X4X4XUXUX4X5X5X4X > 6 l v n D D D D D D D D G D M v G v G G v G v G v Z G v G Z Z G Z D M G v v G G v Z D G v Z v N.bXZ Z v G v G v G v G Z D h 7.UXIXIXIXIX6XD D Z Z D Z D Z Z v G qXIXIXUXIXIXIXJX*.v G D Z Z O HXIXIXUXUX:.D G v G D D v l N.IXIXIXIXmXD D n G G v v IXIXUXIXJXM D v G G D Z l HXIXUXIXIXUXHXbX6X6X6X2X2X6X6X6XbXmXPXUXUXIXUXIX7.Z G Z G D G D G G D M D M G Z Z G G Z Z D D G D Z G Z G D G Z G M G M D G D D G D D Z M D G D Z D G G G D D Z D Z G M G M D G Z M M G D G D G G Z D G G D D G M D G D G Z D Z M Z D G G D G D Z G v G D Z D Z Z G D G D G Z G D G M D M D G D G D Z G Z D Z Z Z G G D G G G Z G D G G G G D G D G G G n G G D G Z G G G Z G G Z G Z D D G D G Z G G Z Z G D Z G G D G D G G G D G G D G M G G G Z G G G G Z G G G G Z D G G G G D G G G D D G D G G Z G D D G D G D G G D G G ", -"D M D M D M D Z v Z Z v Z Z M D D D Z 3X4X&.v l e &.3X5XKXKX5X4X4X5XK G l j h 6 2 , g D k $.,X1 4 l n D D n D D D Z D M D D M D D Z D Z D M D Z v D G v Z D Z v v v Z D Z D Z v v G v D D Z D G N.bXD M D D G v v G D Z D D l 7.IXIXUXUXUX6XG D D Z v G D Z v G Z M mXUXIXIXUXIXIXGXG Z G D D + HXUXUXIXIX3.G D Z G v Z D h 7.IXIXIXUXbXD G M Z M v v IXUXIXIXLXZ Z G Z D Z Z D B.IXUXUXIXIXUXIXUXIXIXUXIXUXUXIXIXUXUXIXUXUXIXZXv G D G v G G v D Z v G D Z v G D D Z D Z D G Z Z Z D Z G D M D D G Z D G D D G G D D G D G D Z D Z G Z M G G v Z G Z G Z D D Z Z D G Z Z D G Z D Z G Z Z G v Z D G G D G M G D Z G Z D Z Z G D G Z G D M G G v D G G D Z Z G D G Z D G D D M G G D Z D G D D G G D G Z Z Z G D G D Z Z G G G Z G D D G D D G D D G Z G G Z G D D G D G G D G M D Z G G Z D D G D G G M Z G G D G G G G D G D G G G D Z D G G G D G G Z G G G Z G G Z G G Z G G G G Z G G Z D G G G G G G M G G ", -"D Z Z v v D Z D G D v Z v D v D D v F ,X,X,X&.l e g 3X5X4X4X4X3X5X&.D h h h h j v D K &.,X1X1X1X,X&.$.$.&.$.n D M D M D n D G M D M Z v D D Z D v Z v G D M D Z v G D M D Z v G M D v Z v G M D 7.bXZ v D Z v G Z v Z D D M l 7.UXUXUXIXUXqXv M D v G v Z v G D D D G JXUXUXUXUXUXUXwXD v Z v + JXIXUXUXUX6.n G D Z G v M l N.UXUXUXUXmXD M D D D v v UXUXUXUXJXD D v D D M D Z G bXUXIXUXUXUXUXUXUXUXUXIXUXUXUXUXIXUXUXIXUXPX-.G Z M D Z Z D G D Z G v D Z G v G M Z Z Z D D Z G D D Z Z v D G n D D Z M G Z Z M Z D Z M Z Z D Z Z D Z D D Z G D D D Z D G G D D G Z D G Z D Z Z D Z D D G G D M G M D G D Z M D D Z G Z D D Z v G v Z D Z D G Z D D Z D G D G D M G D G G G D Z Z G Z Z M G Z M G D D G D G Z G D G D v D Z D D G Z Z Z G M G Z Z Z D D D G M Z Z Z Z D G Z Z G Z D Z G G Z G D G D G Z D Z Z D Z D D Z G G D Z G Z G Z G v G G D D G D D M G D Z G D G Z D Z Z D D G G Z G Z G D D G D G D G ", -"M v v D D D D D v v D D v Z Z v F N N $.&.&.l l j 6 3X4X4X4X4X4X&.D F F D F $.*.&.&.1X1X1X1X1X1X,X,X,X,X,X,X$.D D v D M D D D M M D M D M D D M G v G v v v D D v G v D v v M D v D D Z v v v G B.wXD G Z Z D v D M D M v D h 7.UXUXUXUXUX6XM D Z D Z Z D v Z M Z D D *.PXUXUXUXUXUXUXF.M D G + JXUXUXUXUX:.D D Z v D Z D l N.UXUXUXUXmXM D Z D Z v v UXUXUXUXJXM D M D Z D Z D v G bXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXPXB.D Z D Z D D M Z v M Z D G M D G G Z D D D D Z M D D Z D Z D G G Z D D Z Z D Z Z D Z D Z D Z Z D Z Z D G Z G v D Z Z M G Z D Z D Z Z D D G M Z Z M D Z D Z Z Z D G D G M G M M Z G Z D M Z Z Z Z G Z D Z D G v G v D G M Z Z Z D Z D G G n M G M D G D M G D G v G Z D Z G Z M D D G M G v G v v G G M D Z G D D Z v G v G Z G D G D G G D D G G D G Z Z G Z D M D G G D D Z D G G Z Z G Z M G M Z Z D Z G G Z M D M G Z Z G G Z D G Z D G G M G Z G Z Z G G D D M M G D D G D G G ", -"D v D M v M v M D v M v D v D v N N x j j k 7 l j e 3X4X4X4X4X5XN. 2 h h h l l v v v v v v v v v v v v v v v M D v v v M v v D v v v D D D M N v v v D v v Z v v N.bXM v v v v v v v v M M v v v v v v D v v v v v v v v v v v v v M v v v v v v v v v v v v D v D v M v v M v v v v v v v D D v v v v v D v v v v Z D v G v v v Z v v Z v D v v v D v M N v v D v v D v v D D M D n D Z v Z M D v G v v v D N D Z v v D v D v Z M D M v N D D D D D v Z M D D v D Z M D D Z M D D Z D M G v v Z Z v D v v Z v D D Z Z v v v v D v v v v G v v v D Z v v Z G v G v v v v v D D v Z M D D D Z D v v v v M v D M Z D v G v D v M D D D M D v D M D v Z v D Z v Z D D M M Z Z D v Z v G D v D Z Z D D M Z D D G M N M Z v Z v G Z v Z Z D D Z M Z v v G Z v v G v G G v G v M D v Z D Z D M D M Z D D Z Z v D Z v D Z v v Z Z v G v M D Z D Z D D Z G v M D Z D Z v Z D v Z G v G v ", -"v v v v v v v v v v v v v v v v v v v v v l l c $.4X3X4X3X3X3X3X3X3X3X1X1X3X1X1X1X1X1X1X1X1X,Xk , h l l c l l v v v v v v v v v v v v v v v v v v v v v v v v v v v v v v v v v v v v v v v D v 7.bXv D v v v v v v v D D v v v v v v v D v v v v M D M v v v D v v v D v v v v v v v v v v v v Z D v v v v D v v Z v v M v v v M D v v v M v v v D v v v v v v v v v v v M v v D v D v v M D v v v v v v M v v v v v v v v v v v Z v D M D v M D v v Z v v D v D v v D v M D v M D v v v v Z v v v v D v v D v v v v v v v v D v v Z Z v v D M v v v v Z D Z D M D Z D v v Z D v v Z G v v v v v Z G v v Z M v D v v Z v v D M Z D D N Z v D D Z v v v D M v D M Z v v Z v D v v D v M D D v M M D v D v Z D v v v D Z Z D v v D D Z v M v D Z D D v D Z D v Z D v D M D v D G v v Z D Z D v v D v v v G v G v M D M D Z D D M v G v Z Z D D Z v G Z D Z D v Z D M D M D D Z D v Z D Z v Z v G D M G v D Z D M ", -"v v v c l v v v v v x v v v v v v v x v x x e x &.4X3X3X3X3X3X3X3X3X3X3X3X1X1X1X1X1X1X1X1X1X&.> k 3 h z v v l v v v v v v v v v v v v v v D v v v v v v v v v v v v v v v v v v v v v v v v v v p.wXD v v v v v v v v v v v v v v v v v v v v v v v v v v v v v v v v v v v v v v v v v v v v v v v v v v v v v v v v v v v D v D v v v v v v v v v v v v v v v v D v v v v v v M v M v v D M v Z v v v v v v v D v v v v v Z v v v v M v v v v M v v v v v v Z v Z D v v M v v Z v v v D v v M v G v v v v v v v v Z D v v v M M v D v v M v D v v v v v D D v v D M D v v G v D Z v v M D v v D M D v D v v D Z v v v D v D v v v D D D v v Z D v M D D M D M v D Z v M D D Z G v D Z v D D N v D Z v D M D Z M D M D v Z D Z M v Z v M D D D v v Z v D Z D D v v M D v v v v D Z Z v v Z D Z M Z v v v Z v v v v v Z v v v v D Z v v D D D Z v v v D M D v D v D D Z M M D v M D v v D v v Z v v D Z D v D D ", -"v c v v v v v v c v v v v x v v c v v c x x j x ,X4X4X3X3X4X3X3X3X3X1X1X1X3X1X3X1X1X1X1X1X1Xk > j ,X$.v v v v v v c v v v v v v v v v v v l v v v v v v v l v v c v v v v v v v v v v v v v x v N.bXv v v v v v v v v v v v v v v v v v v v v v v v v v v v v v v v v v v v v v v v v v v v v v v v v v v v v v v v v v v v v v v v v v v v v v v v v v v v v v v v v v v v v v v v v v v v v v v v v v v v v v v v v v D v v v v v D v v v v v v v v D v v v v v v v v v v v v v v v v v D v v v v v v v N v Z v v v v v v v D v D v D v v N v Z v M D v M M v v v v v v v v v v v v v v v v Z v v D v v Z v Z v v v Z v M v v v v M v M v v D v v v v v v v v M v D v v v v v v v v D M v v M v v v D v D D v D v v D D v v M D v D v v v v M M D v v v v M D M D v D v G Z D v v D v D v v M D D v Z v Z D Z G Z D v v G v Z v Z D Z M M v v v G v Z D Z D M M Z v v v D D Z N D D Z Z Z v D D Z v v M D M v ", -"l v v v v v v v v x v v v v v v v v v v c c x j $.3X3X3X3X3X3X3X3X1X1X3X3X1X1X3X1X1X1X1X1X&.> , g D ,X,X$.v l v v l v v c v v v v v v v v v v v c v v c v v v c v x v c v l v v v c v v v v v v B.wXv v v c v c c v v v v v x v v x v v v v v x v v v v v v v v v v v v v l v v v v v v v v v v v v v v v c v v v v v v v v c v v v v v v v v v v v v v v v v v v v v v v v v v v v v v v v v v v v v v v v v v v v v v v v v v v v v v v v v v v v v v v v v v v v v v v v v v v v v v v v v v v v v v v M v v v v v v v v v v v v v v v v v v v v v v D v v v v v v v v v v v v v v v v D v v v v v v v v v v v v v D D v M v v Z D D v v v v v M v v D v v v v v v v D N M v v v M v v D v D M v v v v v D M v v Z v v v v D v M v v D v v D v v D v v Z v v v v v v v v v v v v v Z v v D v v v v v D D M D v v v v v D D v D v M D v D Z D v v v v v v M D D v D v v v v v D M v D v v D D v Z Z v D M M D ", -"v v v l l v v l v v v l v l c v c v v x x c N p w ,X3X4X3X3X3X3X3X3X3X3X1X3X1X1X1X1X1X1X1X$., , h h $.&.&.l v v v v v l v v v v v l v v v l v v x v v v v v x v v v v v v v v v v v x c v v v v 7.bXv v v c v v v v c v v v v v v c v v c v v c v c v v v l v v v v v v v v v v v v v v v c c v v c v v v v x v v v v v v v v x x v v v v v v v v v v v v v v c v v v v v v v v v x v v v v v x v v v v v v v v v v v v v v v v v v v v v v v v v v v v v v v v v v v v v v v v v v v v v v v v v v v v v v v v v v v v v v v v v v v v v v v v v v v v v v v v v v v v v v v v v v v v v v v v v v v v v v v v v v v v v v v v v v v v v v v v v v D v v v v v v v D v v v v v v D v v v v v v D v v v v v v v v v v v v v v v v v D v v Z v v v D Z v v v v v v D M v v v Z v M D D v M v N v v Z D v v v v v v v Z v D v M v v D v v v v v v v v G v v D v v v v Z v v D M v v D v M v v M v v v D v v v v z ", -"v l v l v v v l v l v v v l l v v v l v v v l l h &.4X3X3X3X3X1X,X,X,X1X1X1X1X1X1X1X1X1X1Xk > g h h h h l l l v v v l v l v v v v l v c v v v l v l v v v v v l v l v v v v z v l v v l v v v v N.wXD v l v v l v l v v v v v v 6.qXmXmXmXmXqXl v v x v v v v v v v v v v v v v v l v v h v N.mXZ v F.6Xv v v v v v x v v v v v v v v v v v v v v v v v K 6XbXmXmXmXmX6.l v v v l v v v c v v c v v v v D v v l v v v c v v l D mXN.l v v v v l v v v v x v v v l v v v v v v v v l v v v l v v v v v v v v v v v v v v v v h D v v v v v l v v v v h D v v v v l v v v v v v v v v v v v v v v v v v v v v v D v v v v v v v v v v v v v v v v v v v v v v v v v v v v v v v v v v D n v v v v v v v v v v v v v v v v v v v v v v v v l v v v v v v v v v v v v v v v D v v v v v v v v v v v v v v v v v v v v v v v v v v v v v v D v v D v D v v n D v v v v v v v v v v v v n v v v v v v D D v v v D v v ", -"l v v l l v l v v l v l c v v v l v l v l v v l g $.,X,X,X3X3X,X&.k &.,X,X1X,X,X1X1X1X1X1Xg , g h h h 7 g l l l l v v v l v l v v v v v l v v v v v v l v l v l v v v l l v v v v v v v v l v l N.bXv c v v v v v v l v l v l 6.JXJXGXGXGXGXwXv v x v l l v l v l v x l l v l c v v v z D v B.KXG D bXHXv v v l l v v v c v l v v v l v l v v x v v z D GXJXHXGXGXGXGX7.v v v v v v v l x v v v v v v l h v v v v v v v v v v v JXF.v v v l v v v v l v v c v v v v v v l v v v v v v v v v v v v l v v v v l v v v v v v v v v v v v v v v v v v v v v v l v v v v v l v v v v v l v v v v v v v v v l v v v z l v v v v v v v v v l v v v v v v v v v v v v v v v v v v v l v v v v l v v v v v v v v v v v v v v v v v v v D v v v v v v v v v v v v v v v v v v v v v v v v v v v v v v v v v v v v v v v v v v v v v v v v v v v v v v v v v v v v v v v v v v v v v v v v v v v v v v v v v v v v v v v v ", -"v l v v v l v l v v v l v v v l l v v l v l v v k &.&.1 k ,X,Xk X 6 &.,X,X,X,X1X1X1X,X> h h h h h h h l l v l v v l v v l v l v v l v l l v v l l v l l v v l v v l l v v l l v v l v v v l N.wXl v l v x x v v v v l v l qXJX*.v v v l v v v c v l v v v v v v D v v v c v v l l v v v F.JXD v G K l v D D v v x v v x D x l v l v v v v v l v l 6.JXbXl v D l v l v v v l v v v v v v D v v x v l v v v z z v v v l l v v JXF.v D v l v l v v v v v v x l v v v l v v l v v v v v v v v v l v v v v v v v h v v v v v l v l v v v v v v v v D v l v v v v v v v v v v v v v v l v l v v v v v v v v v v v v v v v v v v v v v l v v D v v v v v v c v v v v v l v v v v v v v v v l v v v l v v v v v v v v v v v c v v l v v l v v v v v v v v v v v v v v v v v v v v v v v v v v v v v v v v v v c v v v v v v v v v D v v v v v v v v v v v v v v v v v v v v v v v v v v v v v v v v v v v v v v v v ", -"l v l v l v l v l v l v l l l v v v l v v l l l $.&.1 > X ,X,XO X O O O O O k ,X1X1X,X, 7 h D v l l l l l v v v l v l v v l v l l v l v v l v l v v v v l v v v l v v v l v v l l v l v l v 7.bXv v v l v c l l v l v v x mXHXD v z v v l v G 6XGXN.l B.wXGXGXmXF.D x 2XGXGXGXGXGXqXD l C.JXGXF.6XbXG mXF.v v l x 2XmXG F 2XmXGXGXbX7.l l v l v D B.JXB.v v v v v v H qXGX7.v B.wXGXGXmXF.D c v F.bXmXGXmXF.v v D 6XmXGXGXGXJXF.v F 6XGXGXGXmX6XG v D F.mXGXbX7.wXGXGX6XG v l v v l v l v l v v v l v l v l v v v l v l v v v v l v v l v l c z v v v v l v v l v v l v v l v v v v v v v l v v l v l v v v v v v l h v v l v v v v v h v l v v l v v v v v v l v v v v v v v l v v v v v D v v v v v l v v c v l v v v v v z v v v v v v v v l v v v l v v v l v v v l v v v v v l v v v v v v v v v v v v v v v v v v v z v z v v v l v v l v v v v v v v v v v v v v v v v v v v v v v v v v v v v v v v ", -"v l l v v l v l l v l l l v l v l l l v l v v l &.l 2 2 % ,Xk X , 2 2 2 , + X X k ,X,X$.> g h l v l l l c l v v l v l l v l v z l v l v l v l v l v l v l v l l v l v l v l v l v l v v v v l N.wXv l l v l v v l v v l v v bXHXv v v l v l v F.JXbX6.K JXbXqX6XmXJXN.v N.6X6X6X6XwXJX2Xl A.JXqXN.qXmXv wXGXD l v v GXwXD F.JXqXqX6XHXHXc c v v v l N.JXB.D D l v v v F.KXbX*.*.JXbXqX6XmXJX6.l 7.JXwXqXqXmXKX*.x 2XJXmXqXqXmXJXF.D N.JXbXqXqXbXJXF.D K KXmXqXGXJXJXqXmXJXA.D l v v v v v l v v l v l v v v v l v v v l v v v v l v v l v v v v l l v v v v v v v l v v v v l l v v v l v v v l v l v v l v l l v l v v v l v v v v v l v l v l v v v v v v l v v v l l v v v v v v c v v l h v v v v v l v v v v v v v v v v v v l v v v v v v v v v v v v v v v v v v v v v h v v v v v v v c v l v l v v v v v v l v l v v v v v v v v v v v v v v c v v l v v l v v v l v v v v v v v v v c v v v z l v v ", -"l v l l l v v l v x l v l l c l l v v l l l l v k q 6 4 1 ,X6 & 3 6 7 7 2 2 2 , > O k &.> 1 h l l l v v l x v l l v l v l l v l v v l v l v l v l v l v l v l v v l v l v l v l v l v l l l l v 7.bXx v v l v l l v l l v l l mXHXl l l v l v l 6XGXD v F.JXD z l 7.HXqXl v v 6.N.N.N.GXwXl A.KXD c wXmXv 7.JX7.v x 7.JX7.v mXwXl v D 6XJX6.v l v l l B.JXGXmXmXmXmXmX6.wXmXG z 2XGXD x v B.JX6Xx qXGXl v x A.JXF.D bXmXc l v K JXF.l qXHXx l v v mXwXv N.JXK c G JX6Xl v GX6Xv v v l v l l v v v v v l v l v l v v l l v l v l v l v l v v l l v v v v v l l v v l v v l v l v v v l v v v l v v v v v v v v v v v v v v v l v l v l v v v v v l v z v v l v l v l v v v v v l v l x v v v v v l v v l v v v l v l v l l v l v v v v v v l l v v l l v l v v l v l l v l v v l v v l v v l v l v v v v v v v l l v v v v v v v v c v v v l v v l v v l v v v v v v v v v v v v v l l v l v v v v v v v D v v v ", -"l l l v l v l l x c v l v l v l v v l v v v l l l j e e k ,X1 w h j l h h 7 h 6 1 , > + > , h l v l c l l v l l l l v l v l l v l v v l l l l v l l v l v l v l l l v v l l v v l v l v v l l v N.wXl v l v v v v v l v l l v bXHXl l v v l l v 6XGXl c F.JXv N.mXJXmXN.v G mXKXJXJXJXJXwXD F.JXD v wXmXl v GXwXl v wXGXv l GXqXF 6XHXJXbXG v l v l v N.JXHXGXmXmXGXmX3.wXmXx l 6XGXx B.mXJXmX7.x wXmXD F.mXJXmX-.x bXbXl v x v JXF.x 6XGXl x l l bXbXl N.JXT v D JXF.v v mXqXl v l v l v l v l l v l v l v l v l v v v v l l v v v v l l v v v l v v l l v l v l v l v v v v v l v l v v l v l l v l v l v v l z v v l l v v l l v v l v l l v v v l v l l v v l v v l l v v l l v v l v l l v l v v l v l v l v v v v v v v v l v l v v v l v v v v v v v v v v v v v l v v v v l v v v v l v v l v v v v v l v v v v v l l v v v v l v v l l v v v v v l v l l v v v l v v v v v v v v l v l v l v l v v z v ", -"l v l v l l l v l c l l v l l v l l l l l l l l l l e j j &.6 e h l l c l l l h h 6 , , 1 g h l v l l v l l x c v l l l v l l v l l l l v v l l v l l l v l l l l v l l l v l l l l v l l v l l 7.bXv l l l l l l l v l l v l mXHXl v l l v l l 6XGXv v F.JXGXJXmXN.x x l B.JXF.-.*.7.JXwXv B.JXZ v wXmXv x 6XJXG D JX6Xl D mXGXJXJXwX*.l v l v l c l N.JXB.l v l v l v wXmXx D 6XJXGXJXbXN.l v v wXHXHXJXbX7.x v x bXbXx c l v JXF.x qXGXl v l v mXwXv B.JXK c D JXF.v x GXqXx l v l v l v v l l v l v v l v l v l l v l v v l l v l v l v l v v l l v v l v l v l v l v h v l v l v v l v l v v l v l v l l v l v v l v l v v v l v v l v v v l v v l v v l v v v l v v l v v v l v v l v v l v v l v v l v v l l v l l v l l v v l v l v v v l l v l l v l l l l v l v v l l v v v l l v v v l v l v x x c v l D h l v v v v l v l v l v v v v l v l v v v v v v l v l v l v l v l v v v v v v v v l v l v v ", -"l l l l l l c l v l l v l v l l l l x l l l l l l h l l l j g 7 l l l c l l l l l l 7 4 6 h l l l l x v l l v l c l x v v l l x v l v l l l v l v l v l l l v v l v l v v l v l l v v l l l l v N.wXv c l v l v c x v l c x v bXJXj v l l v l v qXmXl v F.KXbX6.l l x l v qXmXv x v l mXwXh F.JXD l wXmXl l *.JXB.B.JX*.D l GXHX6XG l x v v l l l l v N.JXB.l l v l v l wXmXl h 6XKXwX6.l c x x k wXJXwX-.v v l l v bXbXv v l v JXF.v qXGXl x v l mXwXv B.JXK v v JXF.v l GX6Xl x l v l v l v v l v l v v l v l l v v l l v l v l v l v l v v l x l v l c l v l l l v l l v l l v l v l v l v v v l v l l l v l v l v l l v l v l l v h v v l l l v l v l v l v l v l v l v l v l v l v v l v v l v v l v v v l l v v v v l v v l v v v l v l v v l v l v l v v v v v h v l v l l v l v v l v l v v l v v l v v l v v l l v v l l v v l v l l v l v v l v v l v v l v v l v l v l v v l v v l v l v v l v l v v ", -"l v l l l l l l l l l l l l l l l v l c c c l l l l l l l h 7 l l l l l v l x l l l l l l l l l l l l l l l l l l x l l x l c l l l l l v l l l l l l l l v l l l l l l l l l l l l l l l v l l 7.bXl l l l l l l l l l l l l bXJXF.l l v l l l 6XGXl l F.JXG z x l x v l 6XGXv l l v GXqXl A.JXZ l wXmXx v l mXmXmXmXl x l mXwXl v v x l l l v v l l N.JXB.v l v l l l wXmXv v 2XHXD c c l x j z qXGXx l l l v l l bXmXz l l *.JXB.l 6XHXv l x l GXwXl N.JXJ x v JXF.l h GXqXx v l l v l v l l l v h l l v l v v l l v v l v l v l v l v l l v v v l v x v l v v l l v v l l v l v v l v h l l l v l v v v l v l v l v v l v l v l l v v l v v v l v l v l v l v l v l v l v l l v v l l v l v v l v l l l l v v l l l l v l l v l l v l v v l v l l v l v v h v l l v v v l v v v v l l v v l l v v l l v l v v l l v v v l v v v l v l v v v l v v l l v v l v l l v v l v l v l v v l l v x v l l v v l l v ", -"l l l l l l l l l l l l l l l l l l l l l l l l l l l l l h h l l l l l l l l x l l l l l l l l l l l l l v l l l v l l c l l l l l v l x l l c l l v l l l v l l c v l l l l v l v l l l l l l N.wXl l l c l v l x l v l l l -.JXJXHXGXGXGXwXl qXGXl v G JXmXbXbXwXbXF.c 6.JXmXbXbXmXJX6.l A.JXv l wXmXv l l A.JXJXF.c l l F.JXbXwXbXwXvX6.l l v l l N.JXB.l l l v l v wXmXl l *.JXmXbXbXbXbXF.v 6.JXmXbXbXbXwXB.l B.KXmXbXbXGXJXK l 6.JXGXbXbXmXJXA.v N.JXK c n KXF.l l GXqXl l v l v l l v l v l l v l v l l l v l l v l l l l v l v l l l l l l l c l v v l v l v l l v v l l v l l v l l l l v l l l v v l v v l l l v l l l v v l l l l l l l l v l v v c l l v v v v l v v l l v v v l l l l v v v z v l l v v l v v l v l v l l v l l l v l v l v l v v l l v l l l v l l c l v v l l v l v l v l v v l l v v l l l l v l l v l v l v l v l l v v c l v l v l v l v l v l v v l v l l v v l v v l v l v ", -"l l l v l l l l l l l l l l l l l l l l l l l l l l l l l l 7 l l l l l l l l l l l l l l l l l l v l l l l l l l l l l l l l l l l l l l l l l l l l l l l h l l l l l l l l l l h l v l l v l K N.x l x l x l v l l l l v l l 6.wXmXbXbXmX6Xl F.wXl l c 6.wXbXbXmXbX6Xl l 7.bXbXbXbXB.v l N.bXv c F.wXl l l D 6X6Xx l l v D B.bXmXbXmXbX6.l v l l l 7.mX6.l v l l l l F.qXv l l 7.wXbXbXbXbX2Xl l 7.bXbXbXmXbXF.h D B.bXbXbXwX-.l l l N.wXbXbXbXF.x x 7.bXG l v bXN.x l wXF.l l l l l v l l l v l l v l l v l l l l v l l v l l v l l l v v l l c l v l l l l l l v l v l l l l l l v l l v v l l v l l l l l l l l v l l l v v l l v l v v l l v v x l l l l l v l l l h l l l v l l l l l v v l l l l l v l v l l v l l v l v l l v l v l v l v l v l v l l l v l v v v l v v l v l l v v l v l v l l v l v v l v l v l v l l v l v l v l v l v v l l l v l v l v l v l l v v l l v l v v x l v l l v l v l ", -"l l l l l l l l l l l l l l l l l l l l l l l l l l l l l l l l l l l l l l l l l l l l l l l l l l l l l l l l l l l l l l l l l l l l l l l l l l l l l l l l l l l l l l l l c l l l l l v l l l l c l l l l l l l l l l l l v l l l l l l l h h l l l l l l x l l l l l l v l l l l l l l l l v l l l l l v l c l l l l l l l v x l l x l c v l l l l l l v l l v l l v l l x l v l c l l l z v l l l v l l l l v l h l c l l l l v v l l l h l l l l l x l l l v l l l l v l v l l v l l v l l v l l l l l v l v z l v l l l l l l l l l l l l l l l c l v l l l h v l l v v l l l v l l l v l v l l v l v l v l v v v l l l l v l v l v l l l l v x v l v l v l v l l l v l v l v v h v l l v l v v l v l v l v l l v l c l v v l l l v l v l l l l l l v l v v l l l l v l l v v v l l l l l l v l l v l l l l l v l l v v v l l v l l l v l l v v v l l l l v v l l l v l l v l l v l c v l v l v l l v ", -"l h l l l l l l l l l l h l h l l l l l l j l l l l l l l l l l l l l l l l l h l l l l l h l l l l l l l l l l l l l l l l l l l l h l l l l l l l l l l l l l l l l x l l l l l l l l l l l l l l l l l l l l l l l l l l l l l l l l l l l l l l l l l l l l l l l l l l l l l l c l l l l l l l l l l l l l l l l l l l l l l l l l l l l l l l l l l l l l l l l l l l l l l l l l l l l l l l l l l l l l l l l l l l l l l v l l l l l v h l l D l l l c l l l l l l l l l l l l l l l l l l l l l v v l l l l l l l l l l v v l l l v l v l l v l l l l l v l l v l l l l l v l l l v l l l l l l v l l l l l l l l l l l v l l l l l l l v l l l c l l l l l l l v l l l v l l l l l l l l l l l l l l l l l l l l l x l l l l v l v l l l v l v v l l l l l l l v l l v l l l l l v v v l l v l v l l l v v l l l l l l l l v l v v l l l v l l l l v v l l l v v l l v l v l l v v l v l l l l v v l ", -"l l l l l l l l l l l l l l l l l l l l l l l l l u l l l l l j l l l l l l l l l l l l l l l l l l l l l l l l l l l l l l l h l l l l l l l h l l l l l l l l l l l l l l l l l l h l l l l h l l l l l l l l l l l l l l l l l l l l l l l l l l l l l l l l l l l h l l l h l l l l v l l l l l l l l l l l l l l l l l l l l l l l l l l l l l l l l l l l l l l l l l l l l l l l l l l l h l l l l l v l l l l l v l l l l l l l l l l l l l l l l l l l l l l l l l l l l l l v l l v l l l l l l l l l l l l l l l l l l l l l l l v l l l l l l l l l l l l v l l l v l v l l l v l l l l l v l l l v l l v l l l v l l l l v l l v l l l l l l l l l l v v l l l l l l l l v l v v l l l v l l v v l l c v l x c l l l v v l l v l l l v l v l l z v l l l v v l l v l l l l l l l x l l v l l v l v l v l v v l v v v l l l l l l l l v v l l v l v v l v l l l v l v l l l l l l v l v l v l v l v ", -"h l l h h l h l l l l l l e l l l h l h l l q l l j l h l l l q u j h l l u l l h l l l l l u l h l h l h l l h h l h l l l l l l l l l l l l l l l l l l l l l l l l l l l h l l l l l l h l l l h l l l l l l h l l l l l l l l h l l l l l l l j l l l l l l l l l l l l l l h l l l l h l l l l l l l h l l l l l l l l l l l l l l l l l l l l l l l l l l l l l l l l l l l l l l l l l l v l l l l l l l l l l l l l l l l l l l l l l l l l l l l l l l l v l l l v l l l l l l l l l l l l l l l l l l l l l l l l v l l l l l l v l l l l l l l l l l l l l l l l l l l l l l l l l l l l l l l l l l l l l l l l l l l l l l l l l l l v l l l c l l l l l l l l l v l l l l l l l l l v l l l l l l l l l x l l c l l l l l l l l l l l l l l l l l l v l l l l l l v l l l v l l c l l l l l l l l l l l l l l l l l l l v l l v l l l l l l l l l l l l l l v l l l l v l v l l l l l l l l l l l ", -"l j l l j l u l l l l l l l l l l l h j l u l l u l l l h l h l l l j l l j l l h l l l q l l h q l l l h l l l l l l u l j l h h l l l l 7 l l l l h l l l h l h h l l l h l j l h l l h l u l l h l l l h q l l j l u l q l h j h l l l l u l l l l l l l l l l l l l l l h l l l l l l l l l l l u l l l l l l l l l l l j l l l l l l l h l l l l h l l l u l l l l l l l l l l l l l l j u l l l l l l l l l l l l l l l l j l l l l l l l l l l l l l l l l l l l l l l l l l l l l u l l l l l l l l l l l l l l l h l l l l l l l l l l l l l l l l l l l l l l l l l l l l l l l l l l l l l l l l l l l l l l l l l l l l l l l l l l l l l l l l l l l l l l l l l l l l l l l l l l l l l l l l l l l l l l l l l l l l l l l l l l l l l l l l l l l l l l l l l l x l l l l l l x l l l l l v l l l l c l l c l l l l l v l l c l l c l v l l l c l l l c c l v l l l c l l x l l l l l v c l l c ", -"q h l e q l h j h j q l 7 l 7 l h l h l l h h j j h u j j u 7 l q l l q l h l h j u l h l l j l l j l l l j l q h l h l h l u l l j u l l l l l l u j l h u l l l l h l l l l u l l u l l j l h l l u j u l l l l h l l j l l l l l l q l h l j q j l l h j l l h l h l l u l l l 7 7 l l l l q j l l h l l l h l 7 l l l l u l h h l l l l l e l l l l l j l l l l l h l l l l l l l l l l l l h l l l l l l h l l u l l l l l u l l l l l l l l l l l h l l l l l u l h l l l l l j u l j l l l l l l l l l h l l l l l l l l l l l l l l q l l l l l l l l l l l l l l l l h l l l l l l l l l l h l l l l l l l l l l l l l l l l l l l l l l l l l l l l l l l l l l l l l l l l l l l l l l l l l l l l l l l l l l l l l l l l l l l l l l l l l l l l l l l l l l l l l l c l l l l l l l l l l l l l l l l l l l l l l l l l l l l l l l l l l l l l l l l l l l l l l l l l l l l l c l l l x l l l l ", -"l j l h l l l h l e l 7 l l l 7 h l u j u j l q q h j h h l l l h j j l u l q u l e e l l j 7 l l h j q q l l l e l h j u l j l l 7 j h l 7 l 7 7 l h l j u l j j h l h q j l l q h u j u j j q u j u j l l l l l l h l l l l l l u l l h l l l l l l h l l l q h l l l l j l l l l l l l l j l l l h l 7 l h l l l l l l h j h l l h l h l l l h e l l l q h l u j l l u l j q l h h j h l l j h h l h l l l j l h l q h u l l l l l e l h h l l h l h u l l u h j l l l l j l h l l l l l l l l l l l l l l l l l l l u l l l l l l l l l l l l l l l l l u l l l l l l l l l l l l l l l l l l l l l l h l l u l l l l l l l l l l l l l l l l l u l l l l l l l l l l l l l l l l l l l l l l l l l l l l l l l l l l l l u l l l l l l l l l l l l l l l l l l l l l l l l l l l l l l l l x l l l l l l z l l l l l l l l l l l l l l l l l l l l l l l l l l l l l l l l l l l l l l l l l l l l l l l l ", -"l u h l e h u j h l l 7 l h h l j u h l l h j l l l u l l u j h l q l q h j l j l h l h q l l h u j h l u j h u l h l u j h q l l l u h l l h l h l u j h l q l u l u j l l 7 h j l l h l h l l h l h l h j q j 7 l q j q j h u j h j h l e h l j h u j l q l j u l j h l l 7 h l 7 h l h j q l h u j l l l e l 7 h l 7 l l u l h h l l l u j l l l l h l l j l l l h l l h l l l l l u l l u l l l l l l h l u l j l l j l l h l h h l l l l e l e l l j l h l l l h l j u l h h l l l h l h l l l h h l h l j e l h l h l l j u l l l h j l l h l l l l h l l l j h l u l l j h l u l j h l h l l h l l l l l l l l l l l l j l l h l l l l l l l l l l l l l l l l l l l e l l l l l l l l l l h l l l l l l l l l l l l l l l l l l l l l l l l l l l l l l l l l l l l l l l l l l h l l l l l l l l l l l l l l l l l l l l l h l u l l l l l l l l l l l l l l l l l l l l l l l l l l l l v l l l l l l ", -"h l l h l j q h l l h u q l l u u h 7 l l h l h h j l j 7 7 l l h l u l l l l h h j j l h u j l h q l l h l h l j l h e l h l l q j l q l h l e j h l 7 h l h j h l l l q l q l l h l u h h l l l l j l u j u j l l l l l 7 h l l j h u j u l u u l 7 l u j h h l h l j u h e l h u j u u j u l l q l l q l u l l l l l u j l l j u u l j u u h h j l j h l h l l 7 l j 7 l l 7 7 l u j h l l h e h e l 7 7 l l j l u l e h q l j u e l 7 7 l l l l l l l l l l q l h l l j l l l l h l l l l l h l j l l h l u q l l l l l u l u j l l l l l l j u l l l h l j u l l l l l h l l l l h l j l l l u l l l l l l l l u l u j l l l l j l h 7 l l e l l j l l l l h h l j l u l l l j u l l l l u l l j l l l l l l l j l l l l l l l l l l l l l l l l l l l l l l l l l l l l l l l l l l l l l l l l l l l l l l l l l l l l l l l l l l l l l l l l l l l l l u l l l l l l l l l l l l l l l h l l h l l l l ", -"l 7 l e u l l l 7 l l j l h h j j l l l u j u l l l q l l l u h l h h j h q j u l u u l h l u l l j e h h h l h q l l l h h q j l h j l h l h l u l l l l h l q q j u l j h l h j u j l j u l 7 e l u h l l l l j h u l l l j l q l h l l l h j l h 7 l l h l u u j l l j l l l j l h l l h j h j l j q l j h l l e j u q l q l h l j u l h l l l l q l j u l 7 l j l q l h l l 7 l l l l q q l l l l l l l j h u l h j l l l l l l l l l l h l e l j u h j q l l j h u u l h u e l l e h l q l l h u l 7 l l l l j h u j h h l l l l 7 7 l 7 l h l u l l e l u l h j h l l l u l e l l l l l u h l l u l h l h l l l j l h l l h u l l l l l l l l l l l e l u l h l u l l l l l l l l l l h l l l u l l q l l l u u l h l l l h h h l l l l l l e l l l l l h l l l u h l h l l l l h h l l l l h l h h h h l l l h l l l h l l h l l j h l l l l l l l l l l l l l l h l l l l l l h l l l l l l l l l l l l ", -"q.;.=.;.<.<.:.;.;.:.:.;.-.:.:.:.:.<.' _ T Z Z Z Z S Z A Y J Z H H n A J A G H H M M N M v A J A G G A z z z z h 7 4 2 1 6 6 6 1 1 2 2 2 1 2 2 6 2 1 2 2 7 h v G H Q ) *.' =.=.=._ .;.=.' <.<.<.3.<.;.| _ _ | ' ' ' ( ;.4.e.u.g.h.f.7.1.;.<.' T Y T A H R _ / _ J c c W / ' .o./ S U U U S S J | 5.3.<.2.1.' Y V Z A H Z Z S J A Y ^ _ _ ;.>.| ;.4.y.h.f.t.f.h.u.4.' ' ' ;.1.8.q.:. .1.4.1.q.2./ U ^ | 1.4.4.:.;.:.>.;._ _ :.e.y.4.4.:._ J J J J Y ' 4.4.3.-.' ' =.-.=.:.7.4.:.) J H H J ^ | :.4.q.4.4.;._ | .;.;.3.4.3.4.;._ T Y | 1.q.4.4.;. .5.7.5.;. . .' ;.7.u.g.h.g.j.y.y.4.:.=.<.' _ / Y H H J Z N M G Z Z S ^ ;.4.5.1.4.4._ Y C W ^ S S Y _ .' _ _ S M n Y _ Y _ T A H Y P T <.=.=.4.e.g.j.h.t.y.5.<.' ` ' <.' ' _ =.:.<.2.<.;.;.' ' ' ' _ ;.;.;.=.' ^ J H Z v h g 2 2 6 2 6 2 6 2 2 6 2 6 2 6 6 6 6 4 6 7 z b z z M A H J Y Y J n Z Z Z Z A H A H A n Z J J H Y K A K H G A G J T R :.4.4.4.4.:.4.e.", -"1.;.q.t.q.:.;.:.t.4.;.;.q.y.N.y.t.y.7.<.-.T H J J J ^ _ Y S Z A K P J J Y S ^ Y Z V A Z J ` ` T T T P A n n z z q 2 2 2 2 1 , < , 2 < < , 1 , 2 1 < > > , 4 h G H H ' 4.4.4.4.4.<.:.4.5.5.2.O.2.a.g.e.e.e.o. .<.1.e.j.b.Z.Z.v.i.k.g.u.u.y.q.;._ -.-.A H ;.>. .( A S { o.( ~ .8.q.} Y ^ S ! ` 1.j.f. .2.c.j...U S Y T S b S _ R ^ | 1.2.2.k.u.u.v.V.v.B.h.l.S.W.W.V.e.( 2.s.j.g.j.e. .;.t.j.e._ A n S T ' | _ >.r.8.1.;._ J _ :.;.:.;._ S ^ -.<.4.y.V.E.C.C.V.7.3.;.:.t.C.Z.S.E.v.4.3.;.-.P R ;.:.>...;._ / .>.:.q.e. ._ ._ S M V Y 1.g.x.t.<.<.u.g.g.r.2. . .u.E.W./.Z.y.B.C.V.V.b.u.u.u.8...8.( U _ ) A B Y Y Y C ! 2.v.g.<.1.g.g.>.^ W ^ J Y 1.e.O.{ ( X.O._ Z C ' .<._ Z J _ ) _ 4.u.r.s.k.d.i.c.c.b.S.m.g.f.1.o.o.2.2.<.f.j.e.4.2.5.5.4.1.;...q.:.3.4.:.) G K G g 4 , > < 2 1 , < 1 1 2 , 1 1 , 1 2 2 2 3 3 u z n z n P Y Y Y R T ^ S Z A B A T P P Y Y P J Y P G A _ _ T P Y A Y %.:.3.f.j.y.y.x.j.2.1.", -"s.g.Z.x.t.t.1.t.v.y.e.q.y.v.x.y.h.j.j.7.4.:.Y J R T T _ S S Y Y Y Y T Y J Y T _ H V A S ) _ _ -.T P T P n z 0 h 7 2 2 1 , > > > > > < < > > > 1 1 , > > > > 1 l H K 3.t.u.3.3.5.1.<.5.p.a.a.a.a.a.l.S.v.e.5.D. X X XOX@X$XQ.U.I.b.z.l.k.u.1.;.;.3.-.n A T q.{ I [ O.a.X.X.X.2.1.8.4. .^ ( o.2.j.S.m.m.S.v.f.>._ ! .' B U ( . .} #.a.9.d.k.J.T.T.D.V.y.C.C.].Q.W.W.x.o.' a.M.j.j.j.u.8.j.v.' A A A A U U R U R 8.g.e.q.u.f.4.1.4.;.] O.g.v.B.h.C.^. XW./.^.E.^.S.V.Z.^.Y.Y.(.^././.C.i.h.x.q._ { O.#.4.q.t.q.q.g.u. .R U U U S A M A P >.b.u.5.g.k.l.z.x.8./ 2.V.U.T.Y.}.Z.V.x.C.E.E.U.v.v.s.0.0.#.X. .o.` C V ' .U .2.g.m.j.l.v.D.a.o.` ^ ! .2.1.1.1.X.X.#.O.X.~ ~ 2.1.Y M H =.3.=.;.e.g.d.z.m.L.U.U.Q.$X.X.XOX X XD.t.f.S.m.n.s.s.a.f.a.f.5.1.8.e.<.4.f.7.=.Q G h < > > > > < 1 < > > > 1 > > > , > > 1 , > 2 q z 0 z A R R P Y / _ | ^ A S A Y _ R U R Y Y Y Y T Y V Y _ T Y R Y T 4.3.t.j.x.x.x.V.x.u.r.", -"W.T.b.x.U.E.i.w.c.v.v.V.V.C.i.C.Z.Z.S.l.q.t.:._ | ' ;.T R T R R _ R U Y Y Y ^ ' R Y R ' ' ' ' E R R :.E z 0 n z 3 2 < 2 < > , > O > > > > > > 6 6 , , > > > > , v 3.f.v.g.2.2.j.j.m.n.a.d.s.f.n.j.n.a.5.g.XXtX9X9X&X&X%X@XU.Q.(.R.b.L.z.x.8. .1.:.A n n P | [ X.#.#.#.a.j.a.#.O.f.l.O./ { ( o.n.S.M._.D.j.<.;.4.2.o.U V ~ . .{ #.d.X.9.k.b.~.oX].V.S. X^.$XtXOXOX%XQ.s.' S ^ 5.g.M.U.I.t./ Z V A B A S P E ._ / / | / T C Y <.4.1.s.M.b.g.V. X7X7X@X X(.@X@X X/.(.^.(.2X(.(.(.(.@X#X/.x.x.Z.c.a.#.0. .S J T _ :.| E ] | ^ S S A V M n A | i.Q.Q.M.g.o.U U 1.x.Q.+XoX%XrXXX/./.b.M.}.+XQ.b.k.o.#.d.w.X.( { / V ^ 1.1...' <.m.].'.S.S.l. .( ^ ( f.M.a.1.9.a.a.0.9.#.X.X.X.( n Z M T <.3.o.2.z.v.v.b.Q.}.Q.Q.$X8X9X=X=XeX7XS.a.0.j.s.d.s.a.s.j.j.m.v.j.g.2.2.f.j.f.-.j < > > > > > 1 e 1 > > > > > > O > > , 1 1 2 , q z z 0 n | E E R | 1. .' ' _ R ' _ Y U U / _ / / ' _ Y Y .' ;.:.| 4.q.4.l.Z.v.Z.c.V.Z.S.D.", -"D.m.M.Z.I.Z.Z.c.x.v.S.S.S.C.i.C.Z.Z.D.W.x.x.i.:.:.| R Y T T R _ _ T / Y Y ^ Y Y / >.8. .Y Y T P P E :.P i z M q 2 > < 6 g 6 6 1 6 6 g 1 1 > > , g 1 , 1 > O > 1 l c ) g.v.e.g.v.l.M.D.d.a.a.f.5.5.<. .v.&XdX0X0XtX&X(.Y.(.(.8X8XQ.J.J.L.M.x.9.e.| A n S _ o.X.#.#.a.+.a.2.X.X.g.OX'.2.X.#.1.v.W.Y.T.T.T.x...>.u.;.P m B ] 9.9.O.#.z.#.o.S.;X:X=X;X&X&X%X(.;XfXdXyXyXrX].<.a H | ] } >.} P n Z S Y Y Y A P P E P R U S A S / e.s.s.v.L.Y.].%XeX#X#X%X$X@X@XoX#X@X(././.7X7XeX2X).@X$X$X7XeX%XQ.E.S.l.k.u.:.J S A P R E I R U S Y Y J H A n m R >...] ] ' B B g.XXrXpXfXlXuXoX(.eX;X%X;X=XtX%Xg.( a.z.0. .O.9. .f b R q.t. .1.M.Q.R.'.'.D.l.X.o.( a.]. Xj.X.#.#.9.a.a.9.X.X.o.^ Z M J :.u.e.x.U.z.c.b.(.(.@X@XW.E.~.=X;X;XrXtXXXi.o.9.e.e.a.2.5.j.D.D.m.v.e.t.j.2.Y v h 2 O O < > < 1 e < > 1 1 1 6 6 6 6 g g g 1 < 2 2 h z q v _ } E R Y Y U / 1.4.;.Y J U Y / ^ / _ | | R Y ~ U _ >.:.4.i.h.U. XS.V.V.C.V.S.S.S.", -"<.f.v.U.b.U.U.b.c.Z.S.E.E.Z.C.I.S.b.l.T.Y.k.r.4.;.>._ R R T Y T _ _ _ R _ ' ' / I / ( U U J P P P P E T P M z # + 2 > < < 1 1 6 1 6 h l l x x v l 6 1 1 < > < g j l M 1.M.x.s.v.l.j.'.M.s.f.5.3.4.| v.9XrX:XyXuXrX&X/.^.@X#X8X(.Y.Y.R.'.L.g.g.q.Y M Y | o.O.X.#.d.#.a.#.a.s.M.'. XD.a.X.0.k.U.T.J.Y.}.].d.#.8.E P n S .#.9.O.{ a.d.O.s.Q.%X;XiXgXyX|.+X+X}.;XfXdXgXfX;Xv.G J E | ] } } ] | Y n n P U P P I I E I R A S .u.q.u.U.Q.$XtXtXrX%X=X=X=X%X%X#X{.@X@X@XXX/.@X7X2XeXeX%X.X9X8XeXrXyXtX.X^.b.e.e.a.~ V I R ~ E R Y A V T P z A R ;...E ] ] | ' Z ^ W.rXfXkXuXtX8X(.XX(.=XpXpXiX=X$XS.e.9.0.#.o.#.#.1.| A n Y 4.e.9.x.}.R.P.T.R.M.s.2.X.n.].]._.n.#.9.#.0.#.9.2.2.X.2.' P V ' y.g.k.U.].(.Y.(.=X#X%X#XY.(.;XyXtX;X9XuX%Xq._ 4.4.2.j.m.D._.n.M.v.u.l.n.' z l j 6 > > > 1 4 6 x x k x x x g 6 1 1 , 1 > , , 2 # 3 z b U _ T I P P U / U R | R Y ' | / / / / _ / R U / / Y .:.:.4.g.b.Q.E.x.v.Z.Z.x.Z. XW.", -"_ u.E.E.Z.S./.E.C.c.c.I.I.I.J.Z.I.Z.c.b.W.M.e.q.4.1.| Y _ | ' Y Y T ^ ' ;.E ;.E / / Y m R _ T T T R R | T n 3 + > < + O > 1 6 1 < 4 e j g l D F K D j g g g 6 g h c S <.v.v.j.D.D.m.'.M.j.2.2.5.' ./.sXtXrXeX(.XX(.~.(.(.eXeX~.!.{.!.R.z.u.:.S B M J ' X.X.+.d.a.a.a.d.L.|.rX&X XD.f.9.9.x.U.D.XXoX=XR.r.r...U P Y >.8.#.#.O.o.X.O.a.S.W.S.XXyX-XoX{.-X*X}.%XdXkXzXBXgX]._ n T ] } } | } | _ | R P A A ! U V P P P A ] r.i.k.U. X=XeX=X=X&XtXtXuXrXrX0X%X%X@X$X%X%X$X$XeX=X).eX=XrXrXeXeXeXrXrXtX9XW.b.k.g.e.R V P R I P P P m V Y T .| .| >...| / S N 3.$XkXNXzXsXtX#X*X=X*X*X*X*XeX/.E.D.M.#.X.1.8.#.#.#.#.] n V ` q.0.k.~.=X+XXXQ.Z.k.8.e.m. X].&X|.}._.a.#.a.a.#.X.X.X.` A M Z Y q.g.J.!.!.~.Y.~.#X#XoX(.(.(.@X#X*XyXiXpXb.U ' 4.;.5.D.'.D.m.v.v.j.V.v.o.M l j j g g 6 j x Z K J F j j 6 1 > 1 1 1 1 > O < > + > 2 M ;._ R R T | _ T U V U U T / ' _ _ _ | R T _ ' _ R Y | ;.>.y.g.R.Q.v.S.W.S.v.V.S.W.D.", -"T. XXX}.Q.W.^.W.E.Z.x.Z.U.S.Z.L.E.E.Z.c.Y. Xx.u.4.R A m A P R / ' _ U / T T T E >.| R _ .;.;.E ;.| R ;.E h o , + & < > O 1 1 1 1 1 6 e g h l x F F F D x l g 6 g v H ;.j.j.a.M.S.m.D._.m.p.t.1./ g.tXkXeX#X(.(.#X#X).).).=XoX~.~.{.!.P.z.q.Y b B A / 1.X.[ X.#.a.d.P.|.yX:XOXOX$X].n.e.e.Z.D. X$X%X Xg.8. .! B Y e.9...} @.#.O.X.9.M.$X$X#X;X;X*X*X:X:X{.+X+X9XuXlXVXhXtXg.M P R T R | | / 4.x.S.l.9.( C f V I _ q.r.b.I.oXrX&XuXlXzXiX=X%X0XtX8X X@XaXkXfXkXaX$X7X8XjXsXsXtX=X{.oX=X8X%X$X&XuXzXzXfXuXrX~.L.k.r.q.| P P s P } g.M.z.b.e.] E _ ) R T V Y D.fXCXCXkXpXeX=X;X*X:X:X*X*XeXeX#X7X{.m.2.o.8.#.@.X.#.9.{ B B U ;.w.L.XX%X+XQ.S.v.e.g.S.W.OX+X&X;X&X'.m.d.n.+.[ X.X.o.Y A Z M .g.z.R.oXoX~.).#X#X#XeXeX8X8X#X(.#XeXpX$X2._ 3.p.e.S.'.S.D.S.x.t.g.p.' H x 4 4 j x N F F F F D j j j 6 6 1 , 1 g < > > < > > + + M | | E | | E / | | / R ' ' ) T T T R T T _ ' R A B B U / q.i.V.].U.b.E.W.S.M.U.U.S.U.", -" XQ.~.Q.}.XXQ.E.v.u.k.S.D.W.S.U.Q./.W.x.c. XQ.h.:.T J Y | | ._ R _ | R R R :.>.>.| _ | ] ' | :.| _ *.| J l , > O < 1 < > > 6 6 1 < 6 j l l j x x j D Q K F j j e u G =.h.C.f.s.M.'.M.'.M.j.y.| 1.W.dXlXpXoX(.#X(.~.(.~.Y.(.#XXX}.}.}.k.>.T M b S ^ X.a.X.~ X.#.a.[.:X:X&X|.OXXX].M.x.8.4.x.S. X@XXXv.>.~ V a W <.o.( O.#...#.#.X.a.{.OXQ.@X=X;X-X:X:X*XoX:X;XOXD.^.%XfXcX&X>.M H P T T _ 1.v.W.W.m.n.L.L.Q.rXdXyXuXyXXX}.rXiXiXfXgXNXzXtXtXtXtX9X%X8XjXlXgXCXvX7X XaXnXkXaXsXyX;X&X0XaXtX&XlXZXCXlXlXdXyX*X!.(.tXyXyXyX#XU.J.P.m.P.].R.l...T T G P A A e.rXkXrXOXW.E.#X;X*X*X*X*X=X=XeX*XY.!.OX'.9.#.8.8.8.O.{ { 1. .C B A .e.S.].].Q.M.s.q.g.v.U. X.X&X&X&X0X|.n.a.a.+.X.O.2.' ^ S z J T ;.S.OX{.oXoX(./.W. X#X(.(.(./.).pXlXuXW.1. .j.m.U.S.M.W.Z.u.g.C.y._ Z h 6 j j Z Q F x N N j j j j j g > 1 6 1 > O 2 1 O < O 2 c J | E E | | ;.....| .;.=.:.:.T R | :.T Y _ | | .R U ' u.Z. X].c.J.Y.Q.R.Y.T.T.M.M.", -"e.x.U.R.S.t.8.c.z.z.R. X'.D./.U.Z.E.W.D.v.U.XXv.f.t._ Y R P Y S A A ' >._ T ;.:.P R T R Y R / E T E _ A Z l , + > O 6 g > > 1 6 1 6 6 x x l j v D x D F K G F j 6 7 c T 5.j.j.j.D.'.M.T.S.m.e.<.j.W.OXoXrXsXeX#X{.~.!.E.Q.Q.(.@XXX'.u.R A M i b ` j.n.X.[ @.#.d.n.{.:X:X|.&XOXOX].l.u.4.4.V.E.@X@XE.t./ V V ! <.2.O.#.#.#.#.} #.#.a.P.{.}.}.%X;X:X:X*X;X+X{.|.&X8XsXpXNXMXfXY.E P A Y _ .b.XX(.$XyXgXMXzXhXgXgXfX*X#XtXzXlX=XiXVXCXCXDXDXZXZXDXSXSXZXnXVXVXCXlX@XE.7XkXnXCXVXzXAXDXDXSXAXDXDXDXCXCXcX:X=XlXgXiX=XeXfXfXdXhXMXzXfXrX].~.}.x.E T T P A >.OXlXNXpXiXpX=X+XoXoX+X-X;X;XrXrX#X~.'.|.P.a.#.#.#.8.8.O.X.1.e. .A n B / g.W.+XXXY.g.4.a.g.l. XOXOX&X&XdX&X'.a.a.X.X.X.9.j.u.T z z S P >.M.'.].].Y.Q.Q.Q.U.~.(.eXtXuXeX$X$XE.4.o.9.l.U.U.Q. XD.j.h.g.4.H l 6 e N F N N N x D F j j x D j g 1 1 6 > > 1 6 1 O > O 4 x M Y T R R R ] ] / R _ U ^ :.| _ :.>._ Y A M Y T Y Y =.t.g.M. XD.V.U.~.E.U.R.T.D.].].", -"t.V.b.e.;. .u.I.M.P.].T.l.Z.Q.^.S.c.k.V.S.L.Q.S.e.` A A A M P T T T / >.>.T T H Y / ;.E ;._ R R T ;.| A v c < O > < 6 j g 1 1 1 6 e 6 j N x p v D x v D Z G F c j h 7 M :.j.j.3.f.D.T.T.U.l.2.2.n.S.Z.I.(.eXtXoXz.z.U.M.l.m.T.}.oXC._ b Z c a C .j.a.o.X.X.#.0.d.m.'.&X&X&X$X0X].l.e.;.4.V./.@XS.4.n d d S 2.2.O.O.@.#.@.} { } #.0.K.|.+X{.}.;X:X:X:X:XtX*X{.!.yXNXZXBXBXMX*Xw.I P A J ' b.).rXNXNXMXMXMXMXMXzXgXiX*XgXzXVXzXzXZXDXDXDXDXDXZXSXZXDXDXCXlXxXCXmXaX(.aXZXZXlXlXZXDXSXDXDXDXDXDXDXDXZXZXBXMXBXcXfXtXpXzXhXhXgXgXgXNXNXsX).!.J./ U P P R l.iXMXBXSXZXMX*X{.oX;X:X:X:XiX:X).).-X|.}.J.#.X.} [ O.#.#.X.O.X.a. .V s s P t.Q.(.Y.V.3.2.f.s.].OXOX&X&XOX'.m.d.#.+.X.X.9.g.f._ B u M G P :.E.XX!.T.M.m.M.M.z.R.rXtX@XY.I.I.Z.g.1.9.l.T.T.D.D.5.e.h.t._ b 7 7 j D F F F N N D x x j x x j g g 6 1 1 1 g e < > > O e D v B _ ./ R R ' T _ R Y A A A T :.| Y _ ;.T S A A A G ;.f.E.Q.S.S.v.x.c.U.R.U.z.b.T.", -"j.r.q.1.1.t.Z.Z.l.S.Z.b.v.b.R. XW.I.c.V.g.i.R.W.v.1./ Y P P T K -.P / 1.>.R T T ` | | | T | | E | .T V v G 6 > > > 6 F x 1 , 1 6 6 6 j D x c D G v v G G D l j x v q h .g.o.a B <.j.U.b.O.X.f.A. X(.^.E.Y.Y.I.z.U.M.z.n.m.'.}.L.T a N D p U 1.{ .' o.O.X.9.0.d.m.'.&X&X'._.&XQ.z.a.Y _ h.S.x._ s s a a _ O.o.#.#.@.@.@.9.s.l.R.;X:X+XK.J.!.-XiXyX:XrXiXrX*X{.).iXNXNXBXBXMX*X1.P m R q.J.=XpXNXgXiXgXhXVXxXlXlXgXhXBXVXCXAXZXSXDXDXSXCXZXSXZXSXDXZXDXCXnXZXZXtX/.vXZXZXnXZXDXSXZXSXSXSXAXZXDXHXDXZXBXBXAXBXVXlXNXBXNXMXBXMXgXNXMXMXiX~.J...I A R r.rXMXZXBXMXMX-X}.oX:X:X:X:X-XiXiX).J.J.'.-X:XoXL.d.d.#.[ [ X.#.@.X.O.R a b z n 3.v.E.f.S ` m.z.].{.'.OX&X XT.m.a.a.#.X.2.X. . .1.<.z z M n n w.Q.}.'.m.n.M.L.m.k.M.E.E.E.^.Q./.Z.e.1.r.W.D.j.| b B 4.f.H 7 j l j j N F Q F k D F F x x D j 1 g g 1 1 6 D x 1 > > > j F b J | ;.>. .;.R T | >.| R Y T %.:.;.A A Y Y P P Y A _ 4.l./.E.h.v.V.C.I.~.XXR.J.c.E.", -"..q.r.l.S.C.b.b.b.u.t.c.Q.XXR.W.S.x.Z.Z.x.k.b.T.W.u.;.R T P P Y U / ./ R P T -.T Y Y A U U R ] E R Y M M G l > > 1 6 j j 1 < 6 6 6 j j j x Z D G D N D F x x j j l l 7 B 5.<.c B ;.a.S.x./ .j.W.XX7X(.E.~.Y.I.L.L.b.M.S.'.m.9.R B ^ ) Z v | 8.] U / .X.X.#.9.d.M.'.].OXOXOX&XR.b.a.J G T J n i p a v ^ | o. .{ 8.w.w.z.rXkXfXpXiXMXgX|.d.d.{.:X:X*X-X*X*X*X;X*X*XiXMXMXNXBXgXv.U V >.c.Y.rXsXfXpXfXgXMXVXlXkXlXBXBXBXAXDXZXBXCXCXnXsXuXdXzXzXxXkXlXVXnXvXCXZXaX^.sXCXnXxXnXCXVXlXfXfXfXfXkXsXNXZXCXVXSXDXSXBXCXVXgXfXNXNXNXMXMXiXiXgX*XJ.i.` B ] XXNXZXBXMXMXiX!.*X=X:X:X*X*X=X:X-X[.d.d.|.gXgXdXpXlXgX|.d.#.@.#.X.9.9. .S z z z z A ^ Y c ` j.b.}.+X|.OX+X/.Y.M.n.a.X.X.X.( / / 1.q.R z G %.Y A ' g.P.T.L.M.P.L.L.T././.E.(.(.#XQ.s._ .v.n.4.' n S t.3.e e x x l x x x N F x D F F D D l j 1 g g 1 1 6 j j 6 < > < x Z z A Y T | | T J A Y | T / _ T T T %.:.J B I I ^ ^ / ;.j.].Q.V.C.V.D.C.i.I.~.~.oXI.c.", -":.q.4.t.u.t.b.XXoXU.c.U.].Q.L.J.z.c.C.c.x.l.g.x.W.Z.>._ | ;.| R U ( ^ P / E T T R _ ) Y A B U R Y Y P Z Z G j & < 6 g e j 6 6 6 1 j j j N G Z F G D x D x N N j g j l u 5 J <.' <.f.v.V.<.C ' Z.@X(.@X/.E.Y.U.J.z.b.b.U.M.z.9.I V ' t.:.A T ;.;._ Y ^ o.X.X.#.+.#.M. XXXOX].|.].L.b.o.S T Z q l l 7 p J ) ^ ] ( I I ..J.%XpXkXkXlXMXMXNXzX|.d.K.:XiX:X-X-X=X=X;X=XoX=XgXgXMXNXCX%X| A ;.x.@XiXMXgXiXgXMXhXcXNXzXBXSXZXCXBXAXBXZXxXlXlXkXkXlXlXgXkXsXkXkX0XaXnXCXeXE.uXCXsXrXaXlXlXpXsXkXgXlXsXaXvXvXNXCXZXSXZXBXZXCXzXhXMXNXMXpXgXgXiXsXtXY.x.] V r.fXBXBXgXsXiX).).eX*X*X*X*X*X:XrX|.J.d.-XzXBXMXfXlXlXlXuXXXz.O.! ! o.{ / ` H l e c l u A C Q j.L.Y.OXOXOXoX}.W.m.X.X.@.O.{ ./ Y | ..;.T T q.8.^ U ] 0.z.P.L.L.L.b.U.E.Y.I.(.(.@X/.g.Y C a.V.f.t.;.;.=.p 5 u l j h D G N x k D F G D H J x 6 g 1 , 6 6 g 7 e j 1 > < x Z Z J Y T T %.Y M A R | _ R R T E T T | / I R / ' ' _ 1.W. Xb.x.x.B.v.B.x.Z.Z.E.(.Q.C.", -":.i.u.k.x.k.c.R.~.Q.R./.U.i.r.g.v.E.I.x.k.u.u.i.^./.y.R R / | / / / / / | _ T E T ' <.:.;.T Y A J S H H M G g O O < 1 1 g g h g j g 1 j K K F D D x j l x H F j j j l j = 7 3.V.j.l.S.B._ S >.E.(.(.+XXXW.U.L.J.J.U.U.b.0...[ R 1.f.e.:.T P R / / / / .[ X.+.X.X.d.}.XXXX].].'.L.x.] n v e l x u l W Q U U / | P ] L.!.~.#X;XtXsXMXMXNXMXMX{.J.J.{.:X:X:XiXrX%XoX(.(.pXMXiXNXNXpXV.S Y c.tXiXMXgXgXMXNXNXMXMXgXZXSXCXZXDXZXZXZXVXCXNXlXxXlXgXzXzXkXkXlXjXlXnXxX=XE.%XcXcXkXdXkXzXzXNXNXMXNXxXlXNXNXNXNXVXZXSXZXSXSXVXNXNXMXNXMXgXgXMXpXuXeXg.U / Y.zXMXiXiXMXeXQ.XX%X;XtX&X-XtX-X!.J.J.:XMXMXgXgXzXiXeX=X*X~.~.k.R I ` ^ U ^ ^ Z u l x 7 i b B <.M.T. X$X XOXXX'.a.X.X.X.[ [ ` ~ U U R T P Y 4.f.e.| R ] ..k.U.L.J.z.U.Q.E.~.).).(.(.b. .S ' D.v.r.B.D.=.o 4 l j j g l H F j D D x x D G *.F 6 g g j j g g 6 1 6 > O > c Z B J J A P P R _ ;.| | R T Y R ' | T P P R R T _ R R i./.Z.i.t.t.u.c.Z.C.C.i.i.c./.Q.", -"x.V.t.r.d.z.x.b.S.I.E.Y.I.u.4.5.x.Y.Y.C.x.v.c.c.x.E.c.| | T R P P R _ Y S _ _ / | ' | ..>.| P n A H J A G D g O O > < 1 1 g j 7 j j x x l k D l h l c j v K v e h g x g o X S v.s.x.Z.y.J U a.}.(.(.~.OX+XE.z.z.U.Y.b.s.o. .{ 9.n.a.<.<.-.T ] / / ] { ( ( X.X.X.X.n.|.}. X$X&X].b.>.P n a l N N x C ` ` ~ U Y ^ ' l.'.!.~.(.;X;X:X*X(.pXMXBXMX*X#.d.*XiX;X=X9X$X@X(.Y.eXsXgXsXNXcXS._ =.E.tXpXNXNXfXMXBXNXNXNXVXAXSXZXZXZXZXNXgXxXlXgXsXfXdXlXxXlXiXsXNXjX.XW.L.c.w.b.Y.Q.9XdXfXdXgXgXzXzXgXlXgXsXNXNXzXZXZXSXSXSXSXZXCXNXNXNXMX:XgXNXpXeXeXb./ 4.#XVXNXgXpXpXoX{.{.+X%X=X+X:X:X|.#.d.:XBXBXMXiX{.oX=X*X=X~.~.~.T.w.R J Y Y ^ / ' Z x N x p a n U 8.S..X$X$X@XoX{.a.[ X.o.o.{ ~ R ~ ~ T %._ =.' ;.j.S.5.] { 1.x.Y.Y.J.b.S. X*X*X(.(.oX}.s.Y Y i.U.g.v.y.z + < g k j g j Q Q l j v l 7 x F x l x D l j e 6 6 1 < > > O > l H H A A n n A A _ ;.| / / R _ ^ Y Y R T Y T T R R R 4.E.c.i.J.b.b.V.S.Y.Z.u.4.q.V.U.E.", -"b.g.x.z.x.x.0.e.x.V.v.i.i.r.4.<.e.Z.I.x.h.b.I.c.8.i.I.y.E R R P P P T R Y T Y ] | / Y R | :.R J V A H A G v > O O O O > 6 6 4 g j j j F K G D 1 l G l h G H D e g 6 7 6 O + 2 T u.V.y.T Y .M.oX(.(.~.}.~.L.b.L.z.g.r.g.O...r.b.1.~ e.g.:... .~ / / R _ { [ X.[ X.n.].$X$X].].W.e.Y A z t v l c J ' ' ' / ^ ^ 1.x.l.b.R.Y.(.%X+X*X-XiXMXBXMXMXgXY.m.*X:X:X;X:XrX%X%X7X).pXBXZXZXaXj. .u.E.eXtXsXMXiXiXMXBXBXBXAXAXBXZXZXZXZXgXsXNXlXpXpXkXkXlXpXuXtXuXsX Xh.x.Z.b.k.l.V.g.V.0XjXjXjXyXdXzXzXdXfXpXlXgXkXlXVXZXZXAXAXZXNXNXBXNXgXgXhXgXyXeX#XS.,.;.^.xXCXZXzX=X(.%X=X=X*X*X:XfX:X{.J.!.gXMXMXMXMXpXeX=XiX+X].'.D.x.g.u.;.Y / ' ( ` ` B N N v u M P / g.]. X].'.OX'.a.X.( ( X.o.U Y / _ ] >.| X.j.<. .v.S.w...8.w.w.i.I.Y.b.Q.~.!.~./.].].z.=.Y ;.l.b.e.A + . + 6 g 6 g j Z K x e v G 6 6 D G F D j h g j 6 6 4 > > O O X 2 Z Z Z G Z V P _ | | / R _ | E R R R T T T T P R T | x.S.t.u.I.b.c.v.U.C.x.4.-.4.h.g.g.", -"b.k.s.x.8.1.2.g.l.j.l.x.c.U.r.<.q.x.i.i.x.c.Z.V.q.:.i.C.>.P U R R P E R R R R R | | | ' _ T _ / P J J K H q O X O O O O > 6 g 6 g g g j D D D D D j < g l x g 6 6 6 g g e G T 3.D.B.-.H Y a.].}.!.Y.~.+X}.b.z.T.g.^ C >.k.b.M.k.X.1.T.'.9.! ! U U R R U ( X.[ [ X.s. X$X.X.X].M.;.P S z b B S ' <. .;.' ^ Y _ e.g.d.b.u.w.E.XXR.).*XMXNXMXMXMXiX:X+X{.{.-XiXiXpXsXtXeXeXpXpXiX).q.R | 8.Z.8XuXfXgXMXiXMXBXBXBXBXSXSXSXSXDXZXNXNXxXpXpXNXxXdXuXkXuXjXlX0XS.U.OXrX9X7X7X9X XV. XjXlXjXjXdXdXfXzXkXiXpXNXxXCXZXZXSXAXCXZXNXNXMXMXMXgXMXgXiXuX%Xm.2.Y _ B.@XdXiXyX0XtXsXsXfXgXyX-X{.).*X:XMXMXMXMXNXsX*X~.!.XXS.2.f.v.x.x.q.) Z W o.o.o.( ` S M c n Y C 2.W..X.X.X$X_.#.[ ! ( X./ U R / ! R R R s.].M. .9.b.b.L.i.} I ] L.Y.c.L.!.).Q.]..X].D.1.J A <.Z.x._ ) v 2 j j 6 6 e j x j 1 1 l v D D D x g g g 6 6 6 1 > O O O X X + c H H T J Y ) ) _ | | ' R E E R T T / R / ^ P P P q.S.f.| q.c.c.x.b.x.i.u.q.4.h.V.g.v.", -"v.z.z.x.w.>.4.r.4.>.l.W.].R.k. .e.b.c.i.C.c.x.h.u.4.y.I.g./ ^ T T P P T T E E T R R ;.| T J Y R ^ _ ) H l & X X O O O O O O > 1 1 1 6 6 g j v k D K G D D h , > < 6 6 g G J z z 4.7.z z _ g.R.!.Y.Q. X}.R.z.U.W.a.` ^ / 8.c.v.s.f.l.M.'._.[ ~ ] Y Y Y P ] X.X.X.2.p.D..XT.'.T.r./ U M M ^ 3.f.f.5.1.' ) J T 3.u.x.z.g.e.>.w.Q.XX!.!.*XpXNXMXsXNXlX&XL.0.l.!.oX%X8X%X7X7X$X{.z.1.Y ~ O.8.b.%XyXyXiXiXiXiXpXiXiXBXDXZXZXSXSXBXZXZXZXlXkXlXkXkXuXtXaXjXtX.XOXuXlXcXjXdXdXcXjX%X X@XaXaXaXuXpXuXkXxXdXcXSXSXBXZXDXDXBXSXSXlXrX:XyXdXiXgXfXdX9X Xs.2.] P ~ #.m.{.+X%X0X7X7XrXOXS.s.l.}.:XfXMXMXMXNXiX*X!.!.*XL.8.8.e.l.v.v.h.=.V S ^ o.2.2.2.e.:.J Z A A ' l./. X.XOX_.9.X.X.X.o.W U Y J _ ./ 9.'.'.M.a.r.r.z.x...^ R / z./.b.c.Y.(.(.I.^.^.E.y.P 0 A e.1.v Z Q D j g 1 > > 1 l v F F D D D D j g 6 1 1 1 1 > O O O O O O X O 1 v H T T T T P Y / _ E T E E T T P T T T R R R | h.g.4.e.g.c.I.c.k.x.V.x.q.:.i.E.Q.U.", -"u.0.x.b.C.C.t.3.q.g.S.M.b.b.c.r.k.b.c.c.i.b.b.V.V.j.e.u.h.| A Y P A P T | E R E E P P P H H H Y _ -.T l O X O O O O O O O O O > , g 6 6 h x l l D D D F F D l g 6 6 1 l H 7 = q M Z 5 V 5.m.U.Y.Y.E.Q.Q.L.P.U.v.9.( ( / ] e.g.l.e.o.n.'.|.[.a.8.>.R R =.O.X.[ [ X.2.a._.n.s.e.( U U ) ;.5.5.p.` ' 5.<.) %.*.q.h.b.S.g.z.Z.J.}.oX{.{.oX=XiXMXiXMXgXOXz.O.o.L.%X8X@XQ.v.r.k.d.9.o./ / O.r.x.L.=XpXiXrXtXeXsXpX=XMXZXDXZXSXSXZXZXZXZXVXcXnXxXjXtX9XrX$X&XtXkXfXkXkXdX:XdXjXfXfXfXtX%X@X9X9XuXkXVXnXcXcXCXCXZXZXSXZXBXSXBXpXrXfXpX:XtXtXpXyXOXM.g.e. .R { O.a.z.s.0.I.(.#X%X@Xk.O.0.U.;XfXgXiXNXpX*X(.*XoX*X~.c.J.x.f.v.h.j.4._ _ / 2.9./ ( e.7.7. .Y A S | g.V.m._.#.X.X.X.X.X.( ` T _ 2.9.s.|.|.'.9.} d.l.k.1._ ' / / 4.v.I.Z.I./.Y.Y.I.(.I.C.>.h q G b 5 + c H g < 6 6 g x G K H G D v x j j g g g 1 1 O O O O O O X X X O X , z T T T T A G P P T E %.%.T T T T T H Y P P :.u.q.f.V.b.b.c.k.i.c.c.x.i.i.i.c.b.b.", -"m.z.l.V.x.u.4.:.q.d.l.l.z.c.i.i.r.k.c.c.I.c.U.L.v.u.>.:.>.P V Y R T T T T ] T E q.>.P n M H J ^ ' S 7 O X X O O O O O O O O O O O > < 6 g g 6 g g j g g x x G G G Q K Q D 6 4 4 7 q u _ g.Z.Y.I.Y.I.E.Q.L.U.c.>.| ] ^ / / 1.j.e.( ! X.M.|.OXn.9.} ' R R | { { ] ( O.a.n.l.2.o._ R 4.e.<.4.5.5.o.o.9.o.' ) =.r.g.l.z.n.T.oXoX}.}.c.J.{.!.*XiXgXgXgXXXJ.U.W.$XrX+X].XXY.k.d.d.n.'.M.O...u.z.l.W.#XtXpXeXiXMXZXgXiXNXZXDXZXZXBXZXBXlXCXDXCXsXrX9X$X7XuXkXuX:XyXkXdXyXpXdXfXpXyXyXfXdX0X9X0XeX8XaXZXAXCXVXCXZXZXZXZXSXZXMX:XcXCXzXyXiXpXeXXXS.x.l.e.] 8.P.P.d.d.i.z.'.{.~.=XyX+XR.L.J.*XMXgXgXiXoX!.!.J.J.*XoX{.}.T.V.j.g.u.4.T T ..1.e.1.2.t.3.4.1.4.3.Y _ >.f.j.n.9.O.[ [ [ X.( _ / | 2.s.D.|.|.m.} I } k.s. .W J ` >.| 4.b.I.Y.Y.Y.Y.I.Y.Y.i.i.T h h l 3 4 7 Z Q K K F F v v c j e l l 7 6 g 6 6 > O O O O O O O O X X X O X O + i Y T J G M n m T :.:.E E E R P P T T J P T ;.4.f.x.v.b.S.c.k.c.x.s.k.g.r.v.b.j.", -"m.g.g.g.k.u.y.h.S.U.M.l.g.z.r.0.i.x.b.i.i.i.c.U.b.k.y.w.w.T P U R ^ R R T U P R T P P A A A z u c q X X X X X O O O O O O X X O O X > , 1 6 g j g 1 g x x Z F F F F D e 1 1 6 4 5 Z | r.U.Y.J.I.I.Y.U.L.b.r.w.z.M.8.:.f.A.v...! ~ ~ m.&X&X].z.r. .^ Y _ { ( { / .o.#.8. .' ( 2.f.4.1.:.4.4.e.r.e.| S S | e.x.V.S.n.L.!.!.oX*X!.!.*X!.!.-X-X:XiX-X{.;X&XyXrX].m.M.Q.~.{.'.T.'.T.Z.q.t.b.k.U.E./.uXiX:X:XNXBXpXsXNXVXNXMXZXZXMXuXzXCXxX0X0X8XW.#XtXrXeXiXgXlXpXuXtXtXfXlXfXyX;XdXjX.X.X0X(.aXZXCXcXzXBXBXBXVXCXBXMXiXMXMXiX:XiXfXiX~.~.U.b.b.9.e.Z.Y.R.T.}.}.!.K.z.z.].tXrX;X%X~.:X:XiXyX~.T.~.oX!.!.{.}.{.~.M.V.S.g.x.y.-.T _ o.5.f.e.3.4.5.1.1.y.3./ | | <.,.' ( { [ X.[ ` J ) <.a.M.|.&X|.a.L ~ R 4.D.j.5.<.q.S.k.q.i.I.Y.^.Y.Y.K.Y.Y.J.q.T l 7 j 7 2 1 j G F F F H D l j 6 6 7 7 6 6 6 > O X O O X X O O O X X X X X X X X + i c u b A A J S J E P P P R R R T Y T P ;.q.u.g.k.c.b.b.c.c.C.c.r.e.r.v.S.M.l.", -"g.q.r.k.L.Q.Z.c.i.r.c.l.l.v.l.k.u.u.s.k.i.i.i.b.z.0.w.u.i...P Y _ ! J A A H T >.4.>.2.1.;.T l h q , X X O O O O O O X O O O X X O 1 j D j j j 6 x F H G x j 6 , > , 1 4 q | e.g.Q.].L.Y.I.I.I.i.} E } 8.u.C.D.V.A.a.~ ~ ~ ~ X._.&X:X@Xv.e.' J ^ ( ~ ~ ~ / ] { 1.1. .' e.t.4.4.:.3.<.;.5.3.R R | 1.g.g.v.x.s.!.*X{.!.*X-X-X*X*XoXQ.}.-X+X{.{.R.z.z.U.M.j.l.T.R.P.L.}.rXrX7XV.g.I.J.J.I.Z.%XzXiX:X:XMXNXCXVXNXxXcXnXCXxXjXnXCXnXrX7XS.Z.tXCXvXiXiXgXsXsXsXsXtXsXlXkXuXdXcXnX7Xj.E.%XuXNXCXcXjXcXcXcXzXgXlXxXCXnXfX:X:XdXfXOXR.J.s.M.b.i.E.7XaXtX~.Y.!.{.U.x.v.W.S.l.b.U.Y.}.:X&XQ.Y.(.oX-X:X-X{.{.*X*XY.i.i.h.l.5.;.| / ` <.2.;.;.;.4.3.o.a.7.<.;.1.o.] / { ] ( ~ ( ^ ^ <.a.M.&X&X|.m.~ I ~ U ] h.D.C.E.Z.r.o.] E ..c.I.I.E.E.Y.Y.b.8.4.T 3 , 1 < < < 6 j F Z G G p 6 j j j D g 1 O X X O X X X X X X X X X X X , i u B ) :.4.:.:.:.] P m m P Y / U P Y 1.g.0.w.i.b.C.i.i.i.u.u.r.i.r.x.l.g.b.", -"Y.g.r.d.z.R.U.x.c.x.r.w.j.j.x.i.u.i.k.c.k.i.c.z.z.z.i.i.i.y.R S C B V J T %.>.%.R ' 1.s.i.y.4.4.:.z # + O O O > O O O O X X X O X X X O 1 h D G k j j x F x 7 4 > > 1 1 2 , q ' q.k.U.T.R.~.I.i.w.....d.k.S.E.Z.D.D.g.( U ~ L L L X.'.rXuX].f. .P / ( ( ( X.[ { X.;.| _ ' o.,.-.4.7.5.p.f.5.` H R } o.j.v.k.r.x.U.{.oX!.!.*X!.{.*X;X+XQ.%X}.k.d.b.L.M.r.0.m.S.R.oX+XyXzXiX@X@X#Xx.w.J.I.Z.x.E.iXfX:XiXiXlXCXZXCXVXzXxXxXaXuXnXnXkX8X@XS.^.vXCXNXaXeXiXiXsXiX(.eXsXpXaXtXjXnXnXaXD.Z.(.uXNXAXcXkXzXBXVXVXVXCXZXCXdX;XyXdXgX;XL.b.v.v.x.r.I.8X(.(.sXpX*X{.{.!.U.b.0.j.S.U.M.k.m.OXOXXX%X;X*X*X{.-XT.T.%XY.L.b.x.x.v.5._ / Y J ;.t.t.5.<.3.;._ <.4.<. .o.2.O.X.[ [ ` ' ` U ! 5.l. XtX&Xm.[ ! ! I ! I 1.S.E.b.S.W.b.u.0.{ ..t.x.E./.U.U.I.t.4.T q , 1 < < & 1 e j N D N j j x D x 1 > O X X X X X X X X O X X X X X O O X X O 7 T 4.4.y.i.t.4.:._ R | 4.:.P P B A C U _ t.u.x.c.C.c.k.i.h.x.i.r.i.c.c.l.x.g.t.", -"].Q.L.z.P.].b.g.S.S.q.R >.y.g.h.u.u.u.x.c.c.c.g.i.V.w.w.u.4.T T R -.' E :.y.i.C.D.F..X.XD.B.h.E.7X7X/.B.:.-.%.G D h h h M M n M n z 1 O O X O O X O g D K F F x 6 2 1 > 1 6 6 > , q T >.x.W.Q.Q.W.l.8...r.d.0.M.]. XW.S.b.| I ~ ! f ~ [ ( 2.XXdXtXU.8.P R { ./ ( X.9.9.4.=.| 5.2.5.7.:.3.' ` 5.p._ S R ] ` <.v.M.T.].S.T.}.-X{.~.{.+X XT.Y.T.'.Q.L.b.x.9. .r.Y.XX;XgXMXzXlXgXgXiX=X*XE.;.R } ;.q.k.W.&X;X;X=X:XBXVXcXcXcXzXhXpXuXlXnXxX0X$X.X.XaXnXnXuXuXpXpXpX*X/.eXsXkXsX0XjXcXxXjX].^.7XpXCXAXkXdXgXBXNXcXzXVXCXcXyXtX%X%X%XU.u.>.| ' U >.^.8XyXgXzXMXgXiXNXkX*X!.Z.8.;.u.S.U.P.'.T.T.T.P.|.-X{.OX|.OX XS.D.].S.V.j.<.' _ R S o.f.<.^ ' :.:.4.3.4.4.] ...1.{ { ( ( <.` ^ / g.].tXdX'.#.[ [ ~ f ~ [ I 1.c.T.~.XX.Xk.8.g.e.:.u.V.Q.W.Q.U.u.:.T 9 + > 1 1 > < 1 4 e x F F D D 6 O O O X X O > q v D D D G D h l v Z K *.:.:.C.7X2X^.C.h.h.Z. X.XS.C.C.y.4.-._ _ ' _ U T 4.u.w.u.x.f.e.x.g.x.k.r.u.i.k.h.g.1._ ", -"'.(.Q.U.U.M.g.g.B.h.1.| 4.j.h.j.j.u.q.t.l.x.q.4.y.:.:.4.y.q.T T ;.| :.w.i.^.7X XQ.E.V.g.5.:.:.C.^.^.(.qX^.C.y.7.y.N.7.y.B.C.2X2X2XF.y.K D v g > > O X > g l x g 1 < 1 6 1 6 1 + , M _ :.l.Y.Y.b.g.a.1.e.9.O.a.T.T. X&XQ.q.P I ! C I ` ` ~ a.W.9XdX%Xc.| Y { .{ ~ S _ .| / :.e.4.<.3.3.5.| _ e.f.=.T | _ H Z ) f.v.s.a.2.z.!.XX+X+X@XT.v.a.O.s.m.x.r.} 8.S.+XrXyXfXgXMXBXBXBXBXMXsXsXeXq.m P | ;.g.'.OX:X;XiXyXdXfXuXzXkXcXMXfXfXnXZXVX8X X X9XxXnXkXuXdXpXaXuX(.(.tXsXpXsXsXjXcXcXkX$XW./.uXCXBXhXdXfXcXkXfXfXkXfXyXiXpXtX%X XS.g.;._ P S c.tXlXNXBXNXNXBXBXMXlXsXiXeXOXl.<. .e.l.g.e.e.y.M.'.{.*X|.{.D.s.q.r.j.j.2.Q A J _ / / 1.s.1./ :.4.3.:.-.4.q.>.| | E / U / { ( ( Y .U.rXtX$X'.9.~ [ [ ! L ~ C U g.OX&XT.W.W.s.e.a.1.1.0.x.I.U.S.5.:.T l + + 6 6 < 6 1 < 6 j x j 4 O X O > < g l D -.N.^.2X2X2XI.y.7.y.y.y.4.y.C.@X7X/.^.D.i.3.3.e.s.U.Q./.7X/.Z.y.4.=._ ' / R y.i.>.;.y.j.e.r.x.l.a.r.u.i.g.x.g.1.=.", -"!.Y.E.D.M.M.l.f.y.4.:.4.4.5.y.x.v.h.t.w.g.v.u.3.3.3.:.;.3.5.;.T >.i.E.@X(.^.D.c.i.x.V.x.u.h.h.V.Z.I.E.$X$X/.h.y.j.C.F.7XeXtXaXvXaXqX2XC.C.N.N.N.:.T D 2 , > > > , 6 g 6 g h > O 2 v ) 5.j.g.f.9.9.8.e.9.O.#.#.k.U.9XuXW.' n I ! L ~ ~ ~ X.U.&X&XtXyX'.5.` R ] { R z n E ;.T R Y Y Y Y _ 3.i.i.V.3.Y Y A M J H z b S .9.o.2.d.b.Y.{.K.'.'.m.2.5.r.8.8.b.Y.eXsXsXiXiXgXMXMXBXBXBXMXgXzXcXOXe./ U U 8.z.S.&XfXpXiXpXpXiXVXZXSXBXgXgXVXZXZXtX^. X9XnXnXfXtXpXpXsXsXqX2XtXsXiXpXuXyXlXCXlX9XQ./.uXAXSXnXkXkXcXCXAXcXdXdXiXtXiXiXeXZ.f. .U R .r.&XNXhXgXhXMXBXMXBXMXgXlXfXiXyXOXU.r.X.0.k.t.u.S.].'.!.~.L.z.d. .4.4.' C c N J Z Z U Y / 5.v.j.t.3.T T T H T | :.;.Y n B / [ ~ ! ` p. XdXtX&X&Xz.~ [ X.~ ~ ~ C V 2.OXdX.Xl.u.r.1...#.9.0.0.8.0.g.f.:.Y u & O 1 h 6 6 g 1 < > > > > h F *.-.7.7.B.C.C.(.aXvXvXqXqXeX/.Z.V.h.h.Z.@X$XXXE.D.C.C.B.h.t.l.M.l.x.V.V.E.@X/.Z.y.:.%.:.q.:.:.3.3.<.<.a.g.g.g.r.u.x.x.u.4.1.4.", -"~.~.M.g.M.T.l.t.q.w.g.h.5.' E w.g.v.i.>...r.g.<.*.3.' / <.f.7.i.^.7X9X9X.X.X8X@XJ.J.I.i.i.V.f.h.i.C.Z./.%X@X(.U.M.V. XtXtXsXsXvXvXvXqX^.I.C.N.N.N.x.C.N.7.K g > O > O > g 1 > O 4 c H 4.<./ o.9.#.O.#.} { ..} k.@XuXtXj.B c ~ ~ [ X.[ ~ #.OX9X0XdXdXOXj.` U / ] { R P ;.%.T H s t b M J :.>.-.J e u A J -.y.i.B.4.G D Y ,.j.z.J.d.m.M.M.M.m.z.b.z.b.~.(.(.eXsXuXsXpXhXhXMXNXNXMXNXhXgXcXkXY.8.0.d.0.0.9.L.rXtX;XsXgXsXZXZXZXcXxXCXZXZXCXaX.X^.0XlXjXaXyXiXMXsXrX/.^.7XsXlXpXrXfXfXkXbX0XXX&XlXAXSXAXlXjXCXAXAXcXfXfXpXyX:X*Xx.8.e.s.k.8.9.$XcXMXMXMXMXhXMXBXMXMXsXlXgXgXfX=XQ.}.R.J.M.L.M.L.M.L.U.z.c.J.L.r.' H c Y g.j.f.5.T A M u u Q <.3.T M M z q M S / | R A Y o.( ! Q ;.S.0XjXaXrX9XR.X.[ @.[ ~ ~ U B Y U.uXuX/.q...X.} { O.9.#.#.{ { 5.;.M l 4 O , g 6 > > > O O h *.N.B.A.A.B.N.N.C.F.7XvXvXvXaXaXaXeXeXE.v.Z.E.@X&X%XQ.I.C.C.h.u.i.i.C.S.S.W.%X#X@X7X7X7X7XC.y.y.y.>.%.3.,.^ o.u.9.} >.e.c.g.q.' ' e.g.", -"b.Y.Y.T.T.T.b.u.u.r.i.V.e.| E E R | >.w.8.r.9.' J Y 1.>.;.C.6X7X7XU.v. X$X7X@Xz.8.8.8.q.:.:.| _ ;.8.x.U.].OX8X9X&X&X%XtXeX(.(.#XaXxXCXCXnXaX2XB.N.N.N.F.2X^.6.D g 1 > > O O O , l u a ^ ! W X.2.X.{ { { 1.1.s. XrXuX X| a f R [ [ +.~ [ s.OX&X&XdX&X$XW.5./ Y / 1.o./ P T T <.s.r.t.3.<.:.' A l u N :.y.B.u.u.E.E.7.G h u S l.K.z.n.M.T.P.R.R.}.oX*X%XoX(.pXMXsXkXkXlXzXgXNXBXBXBXMXgXMXBX:Xs.1.d.J.U.x.k.oXeXeXtXNXNXCXZXSXcXlXSXDXDXAXuXE.W.$X7X(.rXiXgXiX9XaXaXwXaXaXeXsXfXpX+XQ.&X&XT. XcXDXDXDXCXvXAXAXCXcXlXpXeXrX:X}.u.b.U.Z.r.} z.gXBXhXBXMXhXMXBXMXgXNXzXpX:XgXzX;X(.).=XoXR.T.].P.L.J.c.z.J.b.O.C 7 l Y h.^.j.q.q.f.f.-.v u b ^ ;.3.<.5.f.4.4.` ^ Y Y .1.<./ J ` p.'.$X0X0X&X9X].a.~ ~ [ ~ ~ ~ b a 2.OXeXeXY.r.8.X.{ { X.#.#.{ ~ / C p l e > O O O X O > 7 K N.6X2XC.y.N.y.A.7XaXvXCXvXxXtX(.(.eXtXeX{.OXOX%X#X@XR.U.v.4.;.T ;.>.q.e.1.1.a.W.=X%XXXR.I.^.7X7X2XC.q.>.' A J ;.r.e.1.q.>.R | | _ :.f.g.", -"R.U.L.Y.I.I.I.k.t.u.u.w.1.8.>.E R Y T :.u.:.B i n z A :.Z./.(.C.x.k.M.OX Xu. .] U U ..e.q.4.;.<.t.i.g.d.m.S.M.M.'.{.].].eXaXeXY.J.!.=XeXaXsXvXaX2XF.B.B.^.qX7X^.:.h , 6 , > O , u c S S ! / o.X.o.( ( 8.r.g..X9XOXOXj.B i f ~ [ [ ~ L [ d.&XyX0XjXxX0X.XV.t.) ` ;.^ A Y _ 4.S.T.S.C.V.m.s.1.1.:.3.D.S.q.E 3.S.rX(.S.B.%.c u u / M.P.L.J.}.*X{.U.XX=XeX=X*XiX:X:XgXNXlXNXMXMXZXBXMXMXVXcXhXhX&X2.X.m.Q.Q.U.(.pXaXuXsXxXNXAXAXlXxXDXDXDXDXuXV.U.fXkXuXiXpXdXrX9XaXqX7X7XpXpXpXdXyXrXrXkXdXD.].nXDXDXDXZXxXcXSXcXjXxXuXeXiX:XR.Y.~.W.g.>.r.;XhXhXhXMXMXhXNXBXBXBXgXpXgXMX:XiX=X).*X).=X].'.].+XR.P.L.P.g.C e r c :.V.S.$X0XV.-.' h.E.i.=.:.9.2.j.v.A.D.C.D.j.,.Q A S ^ ' Y .l.D.0XdXjX0X0XyXOX#.I ~ ~ +.[ ~ f p Q S.}.#XeXY.r.r.8.] ] } } ] ] ! I B c 7 2 O + 1 4 6 H B..XqX2XN.N.B.C.7XaXaXaXuXrX(.U.J.(.eXsX).(.|.{.'.z.z.z.d.a.s.a.1.1.>.y.7.5. .U / .1.z.{.XXc.i.C.E.2X(.c.] b b s i S 2.9.| R R R E >.1.8.g.", -"r.L.U.L.J.i.c.u.q.:.] >.8...| . .' ^ T P z 9 5 7 5 H t.x.y.C././.@X2XE.7.3.t.g.e.4.:.2.f.g.e.9.9.1.a.d.'.|.'.P.M.P.'.T.XX*X}.K.'.m.m.P. XOX&XuXrX^.C.A.F.2X2X/.^.F.y.*.v 6 2 u Z C B f U { { ! / ( 8.0.g.W. X X*XQ.' B y f [ ~ [ ~ ! [ n.tXlX0X0XjXlX0XW.Z.| b A A A ` ;._ ^ .| ;.:.f.j.j.S.F.F.^./.W. XwXdX9XXXQ. X^.V.=.l z _ k.J.Y.!.!.J.c.XXtX;X=XeXpXiXgXgXgXgXgXMXMXNXMXMXNXNXcXgXcXgXm.9.M.].Y.b.b.).tX9XaXlXVXCXAXcXnXDXDXSXZXtXU.Q.uXuXXXoX:XiXfXeX/.(.@X/.(.tXyXyXrX@X/.tXrXY.].lXZXZXDXDXAXnXAXCXcXVXuXeXuX+Xb.L.U.Y.s.#.R.cXcXMXBXBXhXhXAXBXhXiXiXpXkXhXgXMX-X-X:XtXtX~.b.M.{.{.M.J.9.C a b .b.XXXXQ.8X0XaXqXE.E.Q.Y.^.U.v.j.B.y. .' :.<.' ' ;.Q B A Z P q.I./.0XjXdXOXdXkX$Xa.! [ [ [ ~ [ L p C 2.$X@X~.Q.Z.g.i.e.o.` / { / I f a B B u 2 7 F 6.B.^.7X7X6X^.F.C.F.6XaX0X&XOXR.M.m.K.K.'.%XoX!.!.P.P.P.P.R.|.P.a.a.5.e.2.q.u.j.y.4.4.y.y.r.u.C./.7X.X^.E.C.y.w.:.n q 9 3 5 B ^ T / ] | >.} ;.<. .", -"} 8.b.L.c.r.t.4.4.4.>.E E / | ] ( ' =.Y i 9 5 q 7 u J =.G n T V..X2XI.q.:.i.U.@X@XD.u.4.9.0.r.d.a.a.a.g.'.|.|.'.}.].T.P.L.L.n.'.[.[.'.[.'.P.P.R.{.@XZ.C.2X6X2X6X7X6XB.*.l h c H S C ! _ .} ~ ! o.r.r.e.U.XXQ.@XtXk.C B f ~ X.+.[ ~ ~ [ z.rXjXdX$X9X&X$X Xl./ d C Q ` 5.j.4.:.=.' T / 5.a.2.e.v.V.V.v.D.dXcXjX&XyXuXeXrXtX X3.z P k.T.L.{.!.Y.R.+X:XiX;XrXiXgXgXzXgXMXiX:XgXBXZXzXhXhXBXMXMXhXOX9.a.R.}.R.J.Y.Q. XtXlXlXnXAXnXSXDXDXZXnX9XW.U.].&XoXoX;X:XuXrX/.^.@X/.(.:XyXdXtX@X7X7X(.M.Q.uXCXSXSXSXnXcXAXcXcXkX+X(.(.Q.U.E.~.U.#.d.yXBXhXNXNXMXhXhXAXBXfXyXsXpXkXhXhXMX:X-X:XeX;XXXR.T.oX{.P.L.#.m V 7. X9X0XeXuXtX&XaXnX7XS.Z.c.C.x.5.e.y.4.R _ ' .,.5.B.7.Q S M M ] z.XX%X&X0X%XtXxX9Xa.[ [ ~ ~ [ X.W f y U Q.rXXXQ.W.v.8.a.9.{ U ~ { { / U P U S i j D -.F.@X7X.X2X7X^.C.E. XY.U.L.J.L.R.!.'.{.P.m.J.K.K.P.'.{.OX+X{.m.a.t.u.g.r.q.w.q.4.y.^.7X^.V.q.:.y.C..X^.y.T z P T G q q 9 r u b _ ;.' / | | Y ! / ", -"q.8.r.Z.Z.x.i.y.8.| R E P E ' ' ,.` B q 5 q u 7 q u 0 h n %.:.| / _ q.N.C.C.I.I.b.x.x.x.b.c.J.I.T.W.S.S.T.P.m.P.R.OXOX'.m.P.'.[.'.[.K.{.[.[.{.R.P.'.R.U.E.^.^.D.A.^.B.F 4 r C f f ~ ' ' / U ~ O.a.e.e.b.W.XX%X%X X>.f f W [ X.~ +.I ~ X.m.dXlX&X$X9XOXXXQ.z.1.V B S =.j.Z.C.B.4._ ^ _ ' ' ;.p.V.j.x.v.].9XuX9X;XdXlXaXsXnXxX9Xf.o.l.L.z.Y.!.}.XXOXyXfX:X=XpXlXgXgXgXyXiXgXgXNXBXBXhXMXBXMXNXMXfXb.} d.L.Y.L.I.I.Q.8XkXxXZXBXzXCXSXZXCXnXrX].T.M.U.Z.U.#XfXfXiX+X(.#X@X8XuXdXdX7XE.C.Z.U.Q.].jXZXSXSXDXnXcXcXcXcXlXOXQ.Y.L.L.Y.L.r.8.].fXgXzXzXgXhXhXBXBXdXiXiXiXMX:X:XMXzX:X:XyXiX;X+XXX}.!.M.M.M.f.>.C.aXnXnXaXfXcXlX9XrXfX&XW.C.B.B.j.3._ ;.E T T -.q.V.A.B.j.=.S b H p._.}.oX+X$X$XtXkX0Xs.( ~ ~ [ +.X.[ f y n u.%X%X].].].d.X.X.9.X.~ ~ [ / / / V f z 5 h K B.^.^.E.^./.W.'.'.P.P.Y.K.{.!.{.'.!.[.P.{.P.J.[.|.}.R.K.'.{.J.J.U.Q.~.Y.b.c.x.x.h.V.S.z.V.Z.B.y.4.=.R | >.T z 0 u i q q e 7 9 u A ,.o.] / ^ C U ", -"y.q.q.h.v.Z.E.u.| P P P T ' >.:. .c 5 q q q 7 q u i z G :.x.y.;.U Y -.h.eXtXY.Z.h.r.u.i.w.q.w.i.M.S.I.U.U.m.d.s.l.m.'.].'.M.'.P.J.K.!.'.K.[.'.'.T.'.}.{.Y.I.Z.v.C.A.,.x c B I f I ( ] ! ! { 9.a.1. .e.Z.W.~.XX@Xn.~ f f W [ [ ~ ~ ~ ( ( m.;XjX0X&X$XOXXX].D.3.B u ) 3.<.u.D.V.B.t.| / ' ' 5.V.D.S. X$X8X&XrXuXtXrXrX(.@XaXnXaX$X.X$X].M.l.!.XX(.%XtXiXiX:XiXgXiX:XgXgX:X:XMXgXgXVXNXzXMXBXNX:XdX#X8.8.k.l.l.b.U.@XrXNXNXNXlXdXCXDXZXZXCX&XT.M.S.Q.I.V.E.tXgXiXtXtXaXtXuXpXdX$XE.Z./.Q.J.S.W.aXZXSXSXDXcXhXcXhXcXkX%X}.R.J.z.z.k.O.g.rXfXfXBXNXzXzXVXAXgX:XMXgXiXMXhX:XhXiXrX;XuXpXuX=X+XXXP.M.D.OX&XOX$XjXnXaX2X$X9X;X&XyXrX9X$X.XF.A.D.B.:.T _ _ 4.i.V.A.m.<.=.2.J a W p.D.OX@X$X7X$XtXjX&Xl.{ [ ~ ~ [ [ ~ W f m | W.XXQ.'.T.v.a.X.#.a.0.} I R { / C f V b l Z 4.C.V.V.D.Y.].{.P.K.!.K.!.Y.K.P.K.!.L.'.P.P.K.'.'.L.z.d.d.L.T.L.J.J.J.i.t.q.w.k.a.a.z.b./.aX@Xt._ U P ;.r.y.T n t i u 5 5 u q q 9 C ;.8.| ^ Y R ", -"R R 8.x.C.x.r.} E P T R ' =.>.-.z 5 3 0 q q q q z B A b i P R P B U ^ 1.].dX0X^.F.A.n.l.k.9.9.z.Y.R.P.L.].'.a.d.m.m.m.'.'.'._.P.L.'.'.P.'.P.P.'.P.m.].OXR.U.R.XX%Xx.A M B m f L ] ] R / .0.s.9.O.8.c./.XX/.%XD.-.n S ! L [ [ W ~ [ [ X.S.%XuX0X&X.XOX].].A.7.G z T 4.T T <.h.B.V.5.' :.y.h.V.D. XXX9XjX&X.X0XjX&X/.(.;XyXkXkX6XV.S.OX Xb.P.*X=XeX=X:X:X-XiXgXiXgXgXiXMXgXgX:XgXCXNXgXMXNXkXfXfX&Xu.' l.m.n.x.v.Q.tXlXNXzXcXhXcXAXAXSXlX^.v.].dXCXjX0X^.I.eXiXtXtXeXrXtXpX&XW. XtXxXzX&XE.Z.7XCXDXZXAXcXcXBXkXdXfX&XE.z.z.z.M.a.X.m.dXlXzXNXVXzXlXCXBXhX:XgXgXMXMXgXiXMXiXiX:XiXiXtXeXeXY.J.U. XW.b.T.&XlXsXrX9X].'.&XdX&X X0XuX@X/..X^.D.h.>.R ;.B.C.C.f.;.S T <.J 0 T i.W. X.X.X$X7XtXtX(.l.X.X.[ [ ~ ~ ~ W ~ B c e..XOXOX].Z.x.4...9.s.e. .U ! ^ I f V f B a *.^.8X~.Y.Y.!.*X!.P.P.!.{.'.P.P.!.P.L.U.'.R.Y.P.n.d.d.+.n.].L.P.R.Y.J.i.u.i.i.d.x.M.C./.eXrXS.O.R V A R / B i A A a r 5 5 q q 0 9 9 S >.>.R _ Y ", -"P R :.u.x.w.>.w.} P R _ / _ | A 7 5 9 0 0 9 q b B A P z z i 0 0 b B B ~ o.v.7X$XD.].M.9.o.9.s.k.L.M.P.J.OXtXP.s.n.z.d.a.n.&X&XM.d.K.P.P.L.m.P.P.P.'.].OX].L.c.b.Q.8.b n m f I [ [ ] >.1.8.#.#.@.#.x.I.^.U.Q.XXe.z i ! f W X.( X.[ [ ( o.M.%XrXtX&XOX$XOXD. Xj.J A =.3.) ' 4.u.B.B.V.e.q.y.h.V..X$X.XyXjXOX_.&XdXjXxXlXgXiX:XaXjX8XW.]. XY.~.~.=XeX:X:XtX:X:XiXgXiXgXMXiX:XgXgXdXlXZXNXNXxXVXxXyX}.v.5.s.D.n.g.m.OX:XiX:XgXzXkXCXAXZXCXlX.XW.tXAXSXZXlX0X/.@XuXuXtX8X9X9XyX;X%XtXnXZXSXCX7XU.9XcXCXAXAXVXhXzXdXdXkXtXXXk.0.z.M.a.9.P.-XdXcXNXcXhXVXVXiX:XgXgX:XgXgX:XiXMX:X:X-X=XrXeXeXeXoXP.T.$X X X9XtXtX&XuXgXhXhXgXdX&XD.0XlX%X@X7X XV.h.y.q.x.D.y.y.t.6._ ^ .` G -.D./.^..X X@X8X=XoX(.s.[ ~ ~ [ ~ ~ ~ ~ W C r V v.].T.Z.C.E.i.>.8.0.#.8...] / ] [ I f B N Z x./.I.U.L.R.}.{.!.'.R.P.P.K.d.J.K.b.T.9XOXl.s.n._.n.n.OX&XT.P.K.J.J.i.y.w.#.i.W.W.^.8X#Xi.| U d B z 0 i z z A Y U V a u q q 0 5 3 9 P >.T R R ", -"..E E P P P R ...._ .;.] ._ z 3 q 9 q q q a C R Y n i i i 0 i m d V ^ ! .S.#XY.V.^.D.g.t.c.c.b.T.L.M.].&X].d.n.n.d.+.P.|.[.n.m.K.n.K.L.z.M.T.[.{.|.OXQ.R.~.@XM._ A A f P [ ! ! ...1.9.9.9.8.x.E.V.u.U.%XR.| b I ~ f L [ ~ [ [ [ ~ ( x.Q. X&X+X+XXX XW.j./ _ %.:.:._ -.:.y.B.h.S.v.t.4.y.D.^. X.X0XjX.XD..X:XdXyXpXgXfXyX&XtXjXjX9XD.M.W.Y.}.:XiXeX=XiXiXiXiXiXgXgXiXiXgXdX:XdXVXCXMXkXrX;X|.P.d.a.0.m.T.!.{.rXfXzXiXdXcXxXCXZXZXVXaX^.v.XXnXCXmXnXlXaXrX%X9X$X$X7X9X9XyXuXlXCXCXCXxX XS.&XzXmXCXZXCXcXlX9XdXlXtX&X}.R.U.S.a.a.d.P.|.rXfXzXNXBXhX:X:X:XMXMXpXiXiX:X:X:X:XrX*XrXtXeX(.~.!.M.W.aXvXuXuX0XdXdXkXdXdXdXdX XS.tXkX0X^.^.F.V.4.4.i.Z.x.q.y.7.4.=._ >.' ) T <.j.D.$X#X%X0X+X~.Q.a.[ ~ ~ ~ X.[ ~ L W U B m 9.OX#XZ.x.I.E.k.O.#.#.#.#.....] ] [ L B W C <.E.@X].D.Q.].{.'.Y.L.L.n.K.K.K.K.P.m.].|.P.d.n.K.d.n.OX&XQ.L.J.Y.J.c.c.w.g. X.XS./.qXC.E R U B d m i i l i i V / / C t 9 9 7 5 3 5 z _ >.| :.", -"} E } } | ] U ~ o...| R Y B 9 5 7 3 q q i z S Y U n 0 i 0 n A S / ./ ` ( _ 8.W.^.x.S.@XI.r.i.b.c.b.U.].$XdX&XT.n.n.d.n.|.|.z.L.P.m.P.K.'.P.P.P.!.{.~.Q.(.eXeXeXU._ B d f I ~ { O.O.1.1.#.8...i.E.I.x.Z.(.&XS./ r y L f ~ ~ [ [ [ [ ~ ! 9.Y./.Q.&X*X/.E.S.4.^ J Y T ) _ ;.y.I.x.y.f.j.j.j.B.^.F.D._.aXdXOXV.S.&X&X-X;XyXdXrX0X0X$XjX9Xf.f.R.].U.(.eXtXtXiXiX:XiXMXgXiXiXiX:XhXMXyX;XiXdXXXP.z.d.d.m.d.0.i.U.}.}.9XdXzXgXdXdXcXZXZXZXNX=XW.W.rXxXCXZXZXcXdXuX$X.X/..X.X$X%XuXgXNXCXCXnXlX%XQ./.rXCXZXZXAXlXjXdXdXjXuX&X}.~.U.r.e.n.n.n.n.m.{.&XuX;XrXgXMXMX:X:XiXgXMXMXiXgXMXsXyXrX*X~.R.R.L.9.l.eXaX%XrXdX&X;X=X;XyXdX9XD.S.9XwX6XD.C.E.D.A.f.B.V.4.y.B.h.t. .) _ ^ J J ) f.W./.@X&X$XQ.~.J.{ ! ~ X.[ +.~ W ~ ! S y r .Q.%X/.x.V.E.Z.r.} @.@.#.O...O./ [ I d d V 1.~.rXrX&XOXOXXX(.Y.P.K.K.P.n.m.'.P.m.P.-XP.s.+.n.d.[.:X9XXXU.J.c.c.x.r.r.S..XS.V.@XI...] ] ( ] ] I I f b i u r b U T A b z u 7 q 7 8 u A Y R ", -"E } } } ] ] .<.1.R m A P z 3 = 3 q q z z M b b q 5 9 i P / >.1.| ' U U / / .u.C.u.y.C.I.i...w.~.(.Q.XX%XyXlXrXK.d.a.d.{.OXP.m.m.P.P.K.P.'.}.!.!.{.R.Q.rXtXeX(.g.R B B R ] ~ { { 9.8.8.8.1.t.E.Q.I.J.^.#XW.e.b ; p f W ~ ~ ~ +.[ ~ ~ ~ @.z.Y.~.+X@XE.u.;.Y J J S S ^ ' y.V.j.j.u.j.x.5.y.C./.D.V.A..X0X0XD.g.$XdXuXyX&X;X&XOX0X&XtXtXD.e.M.Y.L.I.).aXeXpXiX:XiXgXgXiXdXgXMX:X-X[.K.K.[.[.d.d.d.n.K.d.+.8.J.!.oX*XeXsXxXpXgXBXAXSXCXuX~.oXuXVXNXnXCXZXZXlXyX$X/. X@X6X^.$XaXxXCXCXxXxXNXxXeX/.@XaXSXSXSXAXkXdXlXfX&X+XoX{.d...8.d.z.d.d.d.n.'.'.M.L.}.:X:XgX:X:X:XgXMX:XiXpXpXiX;X}.J.P.Q.l.a.W.aXeXeX=X+X;XuXrXrXrXtX^.9.Y.dX0XD.A.Z.E.F.V.5.e.V.B.t.j.v.m.2._ Y G A J J ` 1.x.S.$X@XY.[.n.~ W W ~ ~ +.~ L ~ ! S r * V g.(.XXZ.b.E./.Z.8.8.#.#.9.#.} [ ~ [ I m f ] J.oX9XtX9X XT.~.!.R.[.'.P.L.m.P.L.J.K.-XR.s.a.n.].yXkXyX@XW.Y.XXS.1.1.g.S.v.u.x.c.q._ R R Y ^ ' :.8.{ { S p u 9 i n Z b z a u 7 2 3 5 z J S ", -"E R I ] ] } >.| P V S S z u 7 7 3 3 q 3 # 2 5 5 e r p ^ :.1.;.| _ ' _ ^ / ] .1.y.u.y.q.w.r.8.0..X8X X X@XoXuXpX}.[.L.z.].].m.d.d.n.L.L.L.'.R.].{.-X{.&XrX=X#XE.q.U A U I ! [ { O.9.8.8.8.q.l.U.J.z.k./.@Xg.U ; ; w C [ ~ ~ ~ ~ L ~ ~ ~ { l.Y.Y.E./.Z.q.:._ N c J ^ Y <.h.V.p.7.4.g.t.4.B.F.7X6XA.j.A.F.0X.Xg.].dX&X&XdXdX:X|.&X&X&XjXD.4.g.R.R.I.!.eXkXiXP.P.:XgXMXgXhXMX:X{.K.K.K.n.n.[.n.d.d.d.n.a.#.8.b.!.*X*X(.sXlXlXCXDXSXZXlXXXY.%XlXNXVXvXxXZXCXCXlXrX/.W./.^./.tXlXnXCXnXnXnXCXVXsX7XQ.&XxXCXAXSXnXlXgX;X}.%X+X~.x.q.e.d.d.d.n.d.d.'.K.z.K.P.P.{.:XMXMXhXhXgX|.J.~.iXiX=X!.P.}.S.f.q.^.aX#X=X=X@XrXuXrX&X9X0XZ.g.$X0X_.D.v.S./.$XF.p.<.y.j.7.f.g.M.v.<.) T H l Z ' ;.9.S.W.S.U.[.a.[ ~ W L ~ ~ ~ ~ ~ ~ a w ; r _ U.XXS.u.V.I.I.k.8.9.9.9.0.#.{ ~ [ ~ V m R d.}.oX%XrX%X{.|.}.R.P.P.P.L.d.d.d.d.L.{.T.j.P.[.;XdX&X&X$X^. X$XD.4.t.g.r.q.u.i.q.>.>.| R Y K %.;.;.;.2.o.A u q q 5 5 * * 4 3 3 3 7 u c M Y ", -"] E R R ] / / P P R Y z q u q 4 , 2 q 3 o , 7 e r c ^ 4.1._ / ' ./ A I | } | | t.h.h.i.i.V.x.u.v. XW.M.U.Q.@XuX;X=X%X%XdX&X].S.d.z.P.P.P.M.S.P.{.-X:XyX+XoX@Xx.R V A U U ~ .9.9.#.O.8.q.u.v.g.k.r.z.XXS.f.H = ; r W [ [ [ ~ [ ~ L ~ ~ [ a.].R.U.Z.u.4.5.) p Q ,.S ' f.h.h.j.4.=._ 3.A.A.F.^.A.7.7.A.F..X$Xj.A.$X&X&X;XdXdX&X&X&X&XjX/.e.e.b.XXQ.L.M.{.-X!.!.{.{.-X-X:X-X'.!.{.K.K.[.n.'.n.d.d.a.d.d.9.s.v.M.{.=X=XuXlXuXpXAXAXCXkX#XXXtXpXdXnXkXtXjXnXNXnXuX8XW.U.2XeXaXnXCXnXuXtXVXxXyXpXrX X#XlXCXBXhXrXfXzX;X&X;X].U.M.r.e.s.0.d.c.n.P.P.m.K.K.{.oX}.{.-X:X:X:XOX{.P.{.*XY.Y.!.].Q.z.5.4.7XlX:XyX=X%XtXtXtXyXdX%Xj.A.7XF.A.A.p.j.D..X_.F.B.3.' ,.7.t.u.v.y.^ ^ :.J z =.5.e.j.E.M.'._.+.~ ~ W L ~ +.~ ~ X.[ f ; ; 7 _ x. X Xx.x.i.x.u.8.1.1.1.#.8.9.[ ~ ! U P V | Y.rX(.%XyX-X|.{.L.M.m.P.L.J.s.n.R.}.tX9X&X&X8XyX;X X].D.S. X Xj.a.D.V.f.u.x.g.4.| | ;.' P A T T T / _ <.4.Y i u q 5 + o 5 4 2 # 3 u 7 9 b ", -"} } ] R I U V M P T T v q u u 2 + 2 3 , o 3 u e t R ....| / 4.u.u. .V U | E T | ;.e.x.u.V.^.D.t.e.W. XW.OX%X}.@X$XXXXX@X0X&X X8X9XXXQ.L.d.n.M.].*X-XgX:X%XtXE._ V V V S ! ~ O.9.X.} ..#.q.c.V.y.u.V./.W.v.5.c = ; y C W ~ L ~ [ [ ~ ~ ~ W X.z.'.U.9...4.) u N -.) ^ 7.h.v.x.y.3.:.3.f.C.C.A.V.5.=.:.B.C.F..XD.m.9XtXrXyX;X&X&XOX$XrXjX0Xy.:.>.u.Q.XX].P.[.-X|.{.K.K.K.'.].Y.].{.[.[.n.d.[.[.L.[.z.a.a.9.l.M.M.'.Q.].yXlXVXNXxXlXNXsXoX@XsXsXrXcXnXkXlXnXCXZXxXsX%XE.#XaXCXCXCXVXuXsXVXxXrXdXyX X7XaXxXcXzXcXVXlX;X'.L.P.L.b.5.1.a.s.z.P.P.'.[.n.n.[.{.}.Q.R.'.P.K.K.P.{.-X-X!.!.!.(.L.q. .| V.aXdX8X$X$X0XdXtXyX&XdXXXk.F.6XD.V.p.o.<.p.A.D.C.V.t.' ,.4.y.C.V.h.<.J _ _ i M =.2.<.a.'.'.n.~ f ~ ~ ~ ~ W ~ ! L ! C w * = n q.S.XXI.i.i.i.v.r.<.q.1.} 8.9.{ ~ I V B V M 4.@XtXeXrXdXdX|.P.K.z.M.'.{.{.&X%X*XrX&X.XOXXX%X+XOX9X.XW.$XT.a.g.].].x.s.k.e.| ( _ _ _ P E 8.y.e.X./ .1.:.A 9 u 7 = + = 4 2 # 3 u i u B ", -"E E R / I P P A M n J V q 9 q 2 + 3 4 & + 3 u 9 s / .U V _ y.g.t.t.../ R R | :.9.s.s.M.W.Q.E.m.Q.eXqX.X@X.XS.@X9XS.V..X0X0X@X8XeXeX*X{.m.n.L.|.=X-XrXeXsXeXx./ U I V / ( O.9.o. .{ o.O.r.c.S.Z.C.I..Xm.2.` u 5 w p f L f f L ! [ [ ~ ~ ( 2.j.M.9.| | A u v *._ ) y.C.l.y.4.5.f.p.A.7.7.B.D.f.p.2.2.f.j.F.6X'.j..X&X$X%X%XrX%XXX+XrXdX0XE.4.E T >.U.$XQ.T.'.|.[.P.[.'.M.v.V.v.J.K.P.P.P.'.'.U.!.P.z.r.8.8.i.J.{.OXOXrXcXVXcXlXcXkX*XJ.@XkXrXkXAXBXAXcXcXCXSXCXtX.XS./.sXZXZXCXnXCXCXAXCXlXpXjX'.D.0XlXnXcXVXcXfX&XXX*X{.U.i...q.k.J.R.T.R.oX'.P.'.P.m.m.v.M.M.T.'.[.[.'.OX]./.(.oXc.;.T =.5..XjXdX0X.X'.%XrX%X$X&X&XM.x..X6X'.A.5.<.2.p.j._.f.3.5.j.j.f.5.7.V.V.j.X.! ' J q i ^ .' e.V.j.X.~ ! ~ ~ ~ U f f L y y p w 7 a / e.W.(.Z.Z.I.I.Z.e.1.1.| { 1.e.' / ( Y A ^ / V.uXtX;X;XiX;X{.m.n.P.+X&X9X0X#X7XtX9X^.V.E.%X}.'. X.X X$X&X].D.'.].M.z.l.g.8. .` ! ^ ] q.c.j.n.s.~ C _ <.Y i i u = o = 5 2 = 3 9 9 i V ", -"E | | / I P I P m m M M q 5 q q 7 5 7 = + = q p B ` .( ! ;.f.2.>._ _ 4.f.1.1.} ..a.m.M.S. XR.T.%XaXeX/././.^.8X&XW.Z. XaX$X/.$XtXeX%XR.z.l.T.oXrX;XoX).eX8Xu.| ' ` o.q.>.] ' ] ( / ' u.k.u.C.I.x.E. Xl.' V m y y y f W L f f L ~ L ~ ~ { e.j.f.2.| / b b ` Y _ 7.h.g...;.u.j.f.j.p.j.j.B.2.` <.2.2.j.f.j..X.XA..XtX8X$X8XtX*XoX+XrXdXjX@X;.0 z T T h..XOXW.M.M.K.m.M.4.:.c.k.0.s.d.a.a.m.P.m.d.d.d.>.8.r.r.I.Y. XQ.oXuXgXcXAXZXiXc.i.=XkXkXcXcXcXBXjXtXlXcXnXnXqX^.wXZXCXnXlXuXcXZXBXBXsXlXzX'.9.S.fXCXBXcXcXfX+XY.}.Q.b.t.y.4.8.i.d.l.M.W.l.d.d.a.f.a.g.s.1.g.J.J.P.S.T.'.@XW.4.T n q p j.tXuXdX0X]..X$XeXeX%XrXdX XZ.^.^.m.j.j.5.o.o.` p.j.j.A.t.7.p.f.7.=.7.v.l.2.) T K z B ` <.t.u.q.8.] ~ ! L f f f f L L y y p a Z J .M.@XZ.x.V.u.g.g.1.] ] { .| | .4.;.' .] c.;X:XoX#XeX;XOXK.d.z.!.+XeXeX@X(.8X0XD.V.W.9X@XW./.^.@XaX0X$X^.D.W.z.l.l.e.q.8.#...e.:.R | .2.a.{ ! ~ / R d 0 7 & 2 7 2 5 u q 5 i m ", -"] } ] P I I A B b m M b 5 - 9 i q q l = + u z U / ... .o.o.1.1.:.e.S.Q.I.x.u.x.Q.M.0.M.@X@X@XqXaXeX(.E.(.Y.#X9XU.E.rXrX%X-X;XtX*Xb.l.d.L.oXrXdXrX2XtXaX^.:./ o.2.5.' _ / o.o.~ R .g.V.y.x.Z.U.~.L.0.| R U C W S W [ W f f ! L f ~ 2.f.j.g.e.<.<.S B ) _ | 5.7.3. .4.V.g.q.g.v.m.j.f.>.' ' ` ' 2.2.2.V.D.'.S.'.&X9X8X0X8X%X%XoXrXuX0XeX/.>.A A J Y | g.D. X/.l.b.b.} R a.d.0.s.0.9.e.s.m._.m.e.8.R P | >.r.J.U.%XkXCXVXNXBXNX+Xr.x.rXVXcXcXnXlXyXuXkXzXcXCXnXaX.XuXVXNXlXxXpXrXiXzXVXMXBXxXOXr.k.tXVXzXlXNXNXyX~.L.v.w.;.T T ' >.w.U.W.n.f.9.0.r.r.r.x.1./ 8.m.U.T.'.'.V.9./ S S A U s.8X;XrXdX&XOX&XeXeXtXrX9X&XW.Q.D.A.p.<.f.5.<.,.o.' 5.j.A.A.B.f.5.p.j.:.=.4.f.f._ ` Y b U ;.4.e.i.u.9.o.~ C C f f f ~ ~ W W ~ L U _ 4.u.E.].L.b.y.i.I.w./ / ( O./ R | ;.e.2.' | r.@XrX8X8XtXtXtX{.n.d.d.R.eXrX@X7XeXaX@XS./.eX@XE.E.Y.(.tXtX8X@X7XXXg.g.W.S.x.k.J.J.U.v.q.1.o.o.` X.o...} | A i 9 o e v r p u 5 - q V ", -"} I P I P P A Z M m m i 9 8 - - 9 0 u = . = a z V Y U ] r.b.M.T.S.c.v.U.U.b.C.Z.E.@XOXT.+X&XW.E.(.eX=XoX(.Q.E.@XeXoX=XuX;XoX+X&X#XI.s.g.M.+X:XyXtXqXeXaX2Xi.;._ ;.5.f.<. .' o...] { q.b.I.i.x.c.b.U.L.0.>. ./ .2.{ [ L y f f ! W W 1.a.e.a.1.;.=.^ C ' 4.a.j.f.5.7.v.V.f.=.5.D.v.f.,.' ;.;.3.=.,.p.3.o.p.D.V.s.M.&XrX%XeXeX=X%X@X9XlXuX#XQ.q.:.T A z 3 = a :.S.E.b.e.] P R 8.g.g.u.a.e.<.o.a.D.S.e./ A i m } k. XrXaXlXuXiXNXNX%Xk.x.rXxXzXcXcXjXjXZXCXzXcXcXjX9X XtXlXsXxXxXVXNXfXgXVXkXzXzX].r.Z.tXVXlXrXiXzXpXeXW.g./ b b P ;.u.U.Z.<.' 2.s.i.d.k.u.:.P A ] 0.z.'.j.Q q = : B U / o.v.&X&XyXdX&X@X=XeX8X8X0X&X Xj.j.D.V.5.=.5.p.,.,.2.,.,.` 7.j.B.A.5.3.B.B.h.y.y.j.f.2.1._ A T _ ] 4.t.u.a.X.L ! ! f y L [ [ X.X.[ [ .1.h.U.R.z.k.j.J.I.c.' ! ~ o.' _ ..1.r.4._ _ ;.x.%XtX8XeXtXeX;X}.z.d.s.U.eX7X@X#XtXtX(.7X#X(././.Y.@X8X%X/.E.@X0X XY.$X Xb.c.J.I.S.V.v.z._.D.m.l.#.! ] / f c t + 5 p r 5 : - = r B ", -"E I P f P Y A B s d V n 0 - - - * : 9 @ . 5 i i a U ^ .k.T.].~.~.U.c.I.R.}. XW.b.OXyX&X%X{.M.C./.rXrX@XU.S.E.#XrXXX8X9X%X%X9X9XY.g.g.S.eXuXrXtXeXeX7X(.g.| ;.4.7.v.V.h.4.Y R 1.e.8.s.v.b.b.x.g.k.b.b.g.a.<.( / I I ! I y s y f C X.l.v.u.1./ R ) J ` 5.e.9.e.=.,.7.f.5.,.7.j.B.7.,.K N Q =.,.,.3.p.` ,.p.A.5.<.j.].$X8XtXtXuXXXD.$XjXjX9X Xf.3.<.g.M.s.! r * r U e.v.4.U Z V / | .) J Y =.4.y.h.Z.y.^ C d I ~ r.oXtX9XyXzXNXgX$Xv.l.*XkXhXcXCXnXCXCXNXyXuXcXnXrX@XlXxXlXpXuXNXCXnXxXcXcXlXdXW.l.T.dXcXcXfX:X*X=XW.8./ m d S ' v.S.k.8.<.=.S U } ..' U V H _ s.v.1.A 9 5 z ' g.x.t...1.A.$X&XjXdXW.S.$XtX0X$X$X XT.a.,.j.B.7.=.7.p.=.,.=.` A F Q ,.5.j.j.2.3.4.t.4.*.<.2.X.g.e.^ _ | R R 4.h.D.f. .Y B b y d U I C I [ X.#.9.g.S.b.c.y.i.c.b.V.p...#.{ U | t.x.V.g.5.5.| ..Z.(.7XeXaXaXrXuX%Xz.r.s.Q.0X&X@XoXeX8X7XeX(.Y.I.U. X8X%X/.Z.E.$X$X%X&XQ.M.W. X X_.M.b.Q.@XQ.].T.a./ U C r i p - . = e ; ; : - 5 9 d ", -"I R ] P J M c c c s b a 9 9 5 - 5 q 5 o + 9 i i t a / 1.a.m.d.z.Q.Q.c.q.x.Q..XT.v. XdX.X/.@X/.W.7XtXrX(.^.XXrXuXrX8X9X#X@X8X&XW.s.l.Q.0XtXrX=X*X*X).(.E.>.U _ :.f.S.E.V.1.Y V U ] } 8.k.g.s.r.g.V.C.x.g.g.o.! ~ ! I I U ] | ] | a.m.W.U.Z.e./ | ) ) f.u.q.1.2.:.-.,.3.5.j.B.3.Q Q *.*.H N Q ,.` ,.p.,.6.p.A.5.=.p.^.9XeX8XtXuX&X$X&XjXjX9X].t.j.V.z.M.P.m.9.Y m r t U ' | _ b t i a a u v T 4.q.>.1.y.-.C S V I O.].rXdXxXzXgXsX&Xz.z.=X;X-XhXVXdXtXxXkXrXrXkXnXaX.XsXxXlXeXeXsXsXtXlXZXcXyX0XXXs.M.;XgXgXlXcX:XXXc.] V m V S 2.u.>.1.q.3.T i q i i t a J ' ] ! m t t B _ j.T.R.U.k.x.t.n. XOXjXkX$X&X9X0X&X&X0X9XD.2.' p.v.p.3.p.p.*.Q ` J Z Q -.Q ` ' 2.j.j.5.4.:.' 4.1.1.e.j.t._ _ / ..v.E.W.D.v.q.| ;.;.R R I C I / ] 0.k.k.g.x.Z.k.w.r.b.h.<...[ I A T 4.D.^.B.4.:./ Y i.2XeX7X).eXeXtXuX%XU.g.x.].rX=X*XtXeX#XeXeX%XR.Q.$XrX9X@X^.^.@X/.%XrXY.U.].].D.p.9.x.Q.Y.x.v.m.f.' S p p p p 5 % = 5 5 5 : 5 5 9 n ", -"Y P P n b Z Z B b v b q 5 5 5 5 5 9 3 o * 5 p y p y B ( n.n.l.v.v.x.8.T T y.v.T.b./.9X X7X/./. X%X7X#X@X7XaXtX%X=XuXrXoX=X%Xv.e.M. X@X7X7X@X@X}.~.+X#XU.1.A A _ x.E.C.V.4.R U V f / s.j.u.g.V.T.I.i.i.0.r.9.~ ! ~ / { >.8.y.x.Z.b.I.L.b.c.x.x.g._ S 4.w.i.e.<.4.7.t.4.| ` =.` =.=.) ) Z Z ,.7.3.p.,.,.,.p.j.5.=.7.D.@X8X7X7XrX&X&X0XaXjX9XT.a.V.B.:.0.s.d.m.P.p.` / | R U .' c r p u q M T E } 8...;.K c b A R e.E.8XfXNXNXMXgX+Xz.L.#XeXrXyXiXyXuXxXVXzXaXtXaX$XD.8XaX0XaXCXCXkXtXuXiXfXyXiX(.l.J.:XzXzXxXzXdX%XS...U Z x c _ >.w.q.} T P z q q q z Z 1.| U E ] ~ .j.E.v.0.s.9.5.B.V.v. XuXlXuX$X&X;X|.OX$X7X.XS.2.` p.j.7.,.,.p.7.3.-.*.Z H *.Q ) ` ` ,.) =.f.u.5.4.4.e.l.l.<.S ' x.b.c.V.b.S.b.x.i.g.g.>.] { } } I E q.u.k.u.y.M.T.b.k.r.x.q.U V V U T q.x.V.V.4.T P P 8.I.#X(.(.(.).*X8X$X@XW.l.a.U.=XeX#XtXtX).rXdXyXoXXX@X%XXX/..X@X@X#X=XI.I.I.g.4._ / q.k.J.S.m.D.s.! d N p p t - @ $ 5 5 7 : 9 5 - s ", -"R P b i i M A c a V M 5 # 3 3 3 3 5 3 # o 5 c N c p B / s.S.z.M.s.e.l.1.' 4.v..XE.E.8X7X7X/./.@XtXeX%XeXsXaX=XoX(.Y.oX;X%Xz.1.D.7X$X(.#XeXeX#X@X%XeXU.>. .^ Y ^ | :.1.| U B V R 8.u.Z.b.c.k.x.U.L.d.0.8.i.L.r.[ ! ~ 1.r.q.q.i.U.S.U.Q.b.i.i.V.x.e.' _ | :.<.<.3.<.3.=.U J =.=.` Q ^ _ =.=.7.4.=.,.,.=.,.p.p.5.3.j.D.7XeXeXtXtX9X7X7XjXxX8XE.M. X/.U.R.L.].dXcXcXtX~.I.b.d.d.d.O.U i z l M T P R } :.T Y Z c i M 4.W.%XuXfXlXVXtXL.0.b.8XtXfXrXoXeXyXtXpXtX8X0XeXW.V.@XtXrXrXuXsXpXpX=X@XyXuXtX*Xd.d.P.fXcXlXfX;XOXv.' a p Z A S ] >...T T T M i i b R e.s.a.l.L.K.{.fXxXlXyX'.M.T.Q./.W.W.OXdXlXdX$X$X&XdX&X9X9X.XA.5.,.2.f.7.) -.p.7.-.7.7.-.) Q K *.=.` ` Z Q ,.2.2.,.;.e.o./ _ :.r.x.g.u.k.U.R.U.L.x.r.8.e.9. .~ E E i.J.i.y.u.l.U.L.r.k.z.c.c.r.o.J A A P :.<. .T A Y T ;.q.E.#X(.(.=X=X%XXX.X&X%XM.r.L.eXeX(.~.XX#XrXfXuX%X=XrX&X@X/. X7X8X(.E.^./.u.1. .8.c.r.j.S.m.m.a.U B a B c u - o @ 5 5 5 5 - ; = q ", -"R I s s s n n z n A h , $ 9 8 9 9 9 - o + - p a a a C ! a.M.l.Z.v.v.'.m.f.f.].7XW.S./.@X8X(./.tX0X8XtXeX#X#X@XOX+X@X#XXXk.1.j.^.@XXX@XoXtXeX#X8XrXE.4.T ' ;._ V A / o.! d U <.t.u.x.C.W.R.L.J.L.L.k.0.s.L.J.0. .( o.s.l.x.L.k.e.e.b.S.b.S.Z.x.U.D.e.' ` ' :.<.3.3.,.' ,.;.6.-.*.Q ,.,.*.3.5.Q G ,.7.=.=.p.7.,.' <.v.7X0XeXaXtX7X@X$XdXjX XW.6X0X&X~.R.XXkXkXuXfXNXxXyX=X+X].m.n.m.n.v.A.B.q.} E T R R A m Y S z b / T.rX+X9X%Xk.#.#.J.+XrXyX%X=X;XiXiXtXeX8X%XrX%XQ.$XtXeX=XtXuXpXpXrX&X;XyXrX{.d.#.9.b.8X#X%XrXj.S p a S S B C / / E ] :.t.v.j.l.M.M.d.m.OXrXtXpXVXNXfXiXlXdX'.'.W.&X9X.X_.&XkXrX7X8X0XtX&X9X0XOXj.,.` -.6.5.-.,.7.*.Z Q 4.=.` Q Q *.Q *.=.,.=.o.2.p.,.<. .` R ;.u.E.x.h.E.S.Z.W.v.9.e.b.S.l.j.2.[ / { k.I.J.w.r.J.J.L.U.Y.].U.k.g.j.7.' S n | :.R V P ;.1._ Y q.(.eXeX=XeXrX7X@X@X#XQ.l.0.U.8X#XoX+XoX+X%X%X;X;X;XrX0XQ..X&X$X].D..X&XS.f.r.U.E.j.A.m.M.S.a.W f p p a q = . ; 9 9 9 5 : : ; 5 ", -"R U n m P P m A A q 8 9 5 9 5 5 : 9 : + o ; 9 i s d f I O.M.j.S.Y.W. X].T.].&X0X.X].$X$X/.I.(.%X=X%X%XoXoXoX+X;X;XXXU.v.m.'..X2X@XrX:XtXeXeX#XeX@X1.P :.<.^ S V V d B V / <.f.4.4.f.V.D.'.S.x.k.i.w...k.Y.c.r.r.s.a.s.n.d.r...] r.v.v.l.D.v.h.S.W.p.( <.<.1.;.,.=.Q *.` Q H *.*.,.,.Q Q ' ,.,.Q 3.7.,.7.N.,.` =.` a.'.0XaXaX0X@X@X/.9XjXlXnXDXDXxX+XR.;XxXxXfXfXcXzXiXeX#X@XP.n._.:X&XdXlXkX(.V.q./ U n u b J W t t e. X$X&Xb.O.#.0.z.}.rX:X;X;XiXpXeX#XrXrX7X9X$X X7XtX8XtX=X;XfXfX:X&X*X:X;X'.d.0.O.2.W.$X.X^.<.r n Y A d r b J _ t.I.%XkXjXtXdX&Xm.m.T.OX&XrXsXlXkXkXlXzXgXOXT.&XCXDXAXcXdXdX7XW. X&XuX9X9X$XD.,.' <.,.,.p.6.7.7.) S ` <.` Q ` ,.=.) Q K Q ` Q Q =.,.3.;.' =.;.y.W.S.v.C.Z.V.V.j.4.;.1.a.s.v.s.a.0.r.d.L.Y.y.1.l.d.k.b.E.E.b.z.x.2.5.q. .^ V f s m P T ' ;._ Y i.eXeX=X=XtXaXtXeX(.(. XS.b.b.Y.oXeXeX@X%X#X%X%X@XoX$X/.U.XX$XOX X&X9X$X XE./.U.W.D.m.v.v.X.C f p a t 9 = . @ 9 5 - 9 9 r w 5 ", -"I P m P P I P A z 0 9 9 8 9 $ 3 - 9 : o . * 8 0 a i f ! O.v.D.D.]. XD.W.OXOX&X&X&X9X&X].U.U.Y.oXrXrX%XoXoX&XrX}.l.e.x.W..X6X6X7X8XtXaX9X8XeXeX8XZ.| _ _ S y C ! / I d U / | ..8.g.v.v.M.S.L.w.w.b.>.R k.R.k.k.x.g.l.m.k.k.s...>.;.u.Z.Z.V.x.S.^.'.j.^ ` <.3.' ` Q Q Q H G G H Q *.*.Q Q Q Q ,.` G ` 5.p.7.=.) ` ' .f.^.7X8X@X X.XrXzXnXAXCXAXDXSXnX;X&XkXkXpXlXBXCXfXeXeXeXOXM.'.dXdXdXfXlXxXyX@XS.2.S q u b S B t b ` o.' R ..d.d.d.Y.:XgX:X;XiXpX8X#XtXrX8XrX.XD..X7X7XtXrXOXyXfXdX;XgXiX+XP.d.d.a.o./ ' ' ^ c u Z Z b t a ' e.S.%XkXVXkXuXkXxXtXP.T.-XtXeXqXkXCXcXkXgXzXfXOXrXSXDXDXAXAXcXhXjX&X X^..X&XOXD.2.` ` ' ` ,.p.B.3.H H ` 3.' J H &.Q ) Q J H H K K Q ` ) <.2.;._ | j.^.^.C.i.Z.C.V.5.;.;.1.s.0.l.M.d.z.l.x.b./.w.S r.b.r.i.E.S.v.b.v.s.9.<._ ` U I / U V f d S _ ' 8.^.7XeX8X8XeXvXtXeX7X7X$X^.S.u.r.Y.%X8X%X@X@X%XrX=X@XE.U.U.XX9X9X&XOXOX@X XQ.U. X].S.M.x. .B y y y r * * . = 5 - ; ; : 8 5 5 ", -"I P P P R R P z 9 3 3 9 8 $ 8 9 9 : = o . . @ 9 b z y f ] 2.V..X_.D.m.M.].OX$X X X&XD.M.Q.XX%X8X%X$X@X~.Q.Y.l.a.9.c./. X.X.XOX(.).@X.X.X7XeX(.C.4. ./ f p B ` / ~ o.( ! R ..w.8.r.j.M.L.b.k.J.Y.c.U U k.J.z.b.k.k.M.T.v.c.g.>.| 1.g.v.Z.S.E.XX@XF.v.1.R =.3.3.<.=.Q H F Z v b Z Z G K G Q *.K Z v M ) ,.` ` ` =.,.3.7.D..X7XqXqXjXkXtXjXSXAXAXSXZXDXlX%XtXxXVXcXzXyX%X@X7XeXtX=X*XyXdXdXkXlXNXkXyXOXl.<.B 5 a c a J ` ! C d L } l.d.k.M.'.|.*X+X(.^.^.(.tX%X&X0XS.g.S.0XeXrX=X~.Q.XXXX{.+X}.Y.l.d.z.f.~ y f W Q J Z c z l 7 ! 9.M.oX:XzXNXxXlXfXdXrXOX&XrX%X@X(.9XdXcXhXNXhX+X+XBXDXDXSXAXAXAXjXdXjXdX7X$X6X$XA.p.2.' ` ` =.,.-.Q Z N G ) -.) *.Q G v N N N H K K Q ) ` o.2.] Y 1.Z./.@X^.I.C.I.V.g.1. .9.l.k.b.U.m.k.d.z.b.Z.q.C _ E.W.b.L.T.L.l.a.0.8.o.( ~ ` { { ~ ] ! a p C _ ;.q.Z.@X8X(.(.#X8X7X2X6X.X.X.XE.u.q.r.M.R.E.Q.@XrXrX9XoX(.U.M. X&X$XOXXXXX@XZ.M.W.W.T.g.8.R d p f d 8 = . o o - 9 9 8 ; - : 5 ", -"s s b B P P n t - 5 5 8 - 8 t 9 : : = o @ o * ; 8 p V S [ ..a.A.'.].Y.W.OXF.M.x.x.Z.b.D./././.^. X$X$XY.s.9.g.v.W. XQ.#X8X(.(.2X).%XXX^.^.2XE.u.| A B V C / / U ! O.O.( .q.k.w.f.v.M.z.z.b.Y.Z.| z A >.l.M.c.b.m.b.v.f.v.W.U.b.b.U.E.W.Q.E.U./.S.V.8.R ` ` W ) Q Z N Q Q G D Z G v v K *.T N x v G Q =.=.,.3.6.6.) H W 5.B.F.0XdXOXOXcXSXAXCXCXZXAXCXtXtXaX9X@X$X$X].S.Z.Z.W.=XiXyXdXfXfXkXxXxXdX&XL.8. .d r i z Y .o.1.s.z.z.s.d.Y.yXfXfXpXtX#XE.C.I.%XrX&X].v.x.v.^.rXrX@XJ.W.XXXXrXdXfXdXrXz.e.s.l.n.s.1.<.=.Z p z u B .a.{.dXgXVXzXgXzXfXrXtXuX$XS.b.S.E.(.%X@X%X;XrX&XdXAXSXBXcXAXAXCXjX&X0XjX6XA.A.3.C W ` p.,.,.' ` ;.*.F x N N K Q H v v D M N G Q Q Z H Q Q J ' / _ q.Z././.^.^.^.E.U.b.v.b.Y.Q.k.s.z.z.k.v.v.z.g._ M n 4.D.W.m.l.z.J.l.9.0.s.1./ / { { I ! [ I B V B ^ 4.V.^.(.(.^./.#X#X2X.X X$X.X^.6XD.x.s.0.k.Q.7X$X/.XX@X/./.U.S.b.l.v.U.~.}.T.T././.Z.1.] R I V b : * = o o o ; 8 8 r 9 8 : : ", -"V V n n z i v i = $ 8 9 9 8 8 8 9 9 - + @ * * * ; r d V U 1.e.2.j.Y.].].'.].W.V.k.v.Y.].E.C.E.E. XA.f.f.1. .p.j.B. X0X0XtXeX/.(.eXoX+X~.I.E.C.y.R t s U / U R ] #.} ( O.x.q.8.k.v.g.a.s.m.l.0.q.S q K e.l.S.S.b.M.'.z.u.x.m.M.L.z.j.j.v.l.M.S.].^.x.q.E A J Z S W Q H Q *.Q F F F D x N x u l x N F *.,.,.:.=.Q N N Z D Z ,.7.f._.|.&XdXcXVXVXBXDXDXSX0XW.D.^.7X7X/.U.W.$XuX&X.X;XiXfXkXfXuXaXlXlXdXOX0.| ~ a z n Y .s.P.R.J.k.z.W.&XrXjXzXxXxXlXlXlX;X%XrX^.V.v.V.Z.S.$XyX=XkXnXkXjXxXcXlXwXtXeXU.z.n.P.'.L.r.| S n i n ' o.d.&XzXcXzXiXfXzXzXkXuX8X].9X0XXXZ.C.(.7X(.E.W.].jXDXSXAXCXAXAXcXdX$X$XZ.u.7.=.Z G W N F Q <.<.<.=.H N N x l p N x x F G G H Q Q H H Q K G Z J U ' t.D. XF.V.B.j.b.l.l.b.I.L.m.l.s.U.Y.b.M.S.z.k.4.M q R t.j.M.l.a.0.l.b.e.O.g.l.o.( X.X.[ I ~ ~ V t d ;.y.I.(.Y.~.(.).eX(.(.rXuXuX0X^.B.h.9.1.O.q.u.Z.W.^.E.S.Q. XS.v.M.D.W.~.'.{.'.U.i.8.8...I f i 5 : = % + * o : 8 : : 8 8 8 r ", -"S b n A z i z b 5 @ @ @ - 8 9 9 9 t : @ o o @ * $ 8 y s I } 9.1.<.5.v.U.W.].XX].}.+X=X@X.X@X(.@XW.j.r.e.e.h.S.A.B.W..X X@X(.I./.XX+X%X~.I.^.u.-.U d f U I V U ~ / } 1.e.a.e.8.9.e.e.u.i.<.;.e.;.z M <.<.{ g.l.e.a.e.8.1.1.q.r.r.q.e.e.u.S.P.'.'.XXM.4.) J ` J H G H K K J F D F F F F p r e e x F Q -.6.-.K F F N N x p c x -.p.A..X0XaXdXcXAXAXZXAXCX&XD.V. X/.E. XdXAXSXDXSXnX0X$XrXkXcXcXhXlXxXzXrXz.#.o.A u z Y z.OX+X{.}.z.T.tXrX%XzXcXxXlXjXjXnXlX&XU.c.b.Q.W.E.Z.b.R.rXxXxXjXlXlXlXxXtX XrX$XY.'.}.~.{.{.s.P z s _ 9.#.T.dXzXhXgXfXzXxXjX%X$XdXCXAXSXSXCXaX(.E./.Q.m.D.kXSXAXAXDXAXcX0X0X8X^.x.7.Q x e x j N F Q Q -.3.,.Q N F p e p p j F G F F F F H H Q Y K G *.%.J _ t.S.$XW.V.V.g.e.e.a.9.u.u.q.>.1.e.e.r.y.x.s.| 1.T n H t.r. .1.l.r.w.r.0.0.0.a.r.<.( { } ~ f I ~ f f ) ;.i.Q.Y.(.eX(.(.(.Q.(.@X(.(.C.C.D.Z.e.8.8.e.V.^..X^..X.X9X&X].!.oX}.}.P.P.d.1.8.8.1.( f a 9 $ = = = o o @ : r 8 r 9 9 * @ ", -"m b B n z i z z 9 $ $ $ @ @ 8 9 r 9 - @ @ o @ @ @ $ ; t I ~ ] 1.5.| .9.g.v.z.v.M.}.%X$X6X7X(.^.Z.c.c.e.u.E.6X/.^.$XqX.XW.U./.(.oX%X#X(.(.^.u.T U B I I V C / ~ U / 1.2.<.1.1.9.e.u.u.>.| 1.3.A r i U U S .l.g.8.r.0.r.g.l.k.g.8.1. .;.r.z.z.'.OXS.4.=._ =.*.H H H G H G D x j l D D c p c x Z N N Q F G J Q Q x p u c u e u K ,.p.F..X.XdXAXAXAXCXCXdXT.j.g.S.0XxXZXDXAXnXAXAXCX9X X&XdXcXhXkXfXfXdX&Xm.O./ S _ v.].P.P.'.Y. X]. XrXkXxXzXnXnXkXnXNXpX;XQ.E.{.OXQ.(.@XQ.}.rXfXcXxXjXCXxXnXxXaX9XQ.W. XR.Y.Y.'.].s.Y ` ' X.M.:XlXfXlXzXMXlXjX$XW.aXZXAXCXZXSXSXZXxX8XJ.s.l._.dXAXCXAXAXcX&X.X.XC.4.' Z e e x x j e x Q Q F Q H N N W N c x p l N D j l x F H G H K J T -.-.) =.p.^.7XW.B.V.q. .o.o.e.x.c.c.r.9.a.2.8.c.j. .U P z 0 9 Y e.o.{ 9.k.i.0.a.9.#.#.8. .C U / I I B I I V ^ ;.y./.(.*X=XeX(.@X(.E.(.7X8X(./. X/.x.e.s.m.l.S./..X.XOX%XOXT.z.M.M.k.s.O./ .q.8.{ ! y 9 5 # @ # @ o @ @ - t t 8 - = @ * ", -"d m m b i 0 z n 9 # # = # = = = - - = . o o o + + + = ; f ! I ~ o.o. ...| :.q.4.e.v._.'.D./.%X7XE.C.B.C.C.V.V.@XrXrX7X.X^.OX/.^.(.Y.(.7XW.j.;.Y S S V C I / / U Y <.t.4.>.8.s.r.1.| _ | / R J i t n ' . .f.g.k.J.J.s.s.n.s.d.d.d.2.( ' 2.t.t.I.(.S.y.=._ -.) G H J G J K K D D D D x j e p N N e 4 w w e e l l 4 : 5 7 7 u e u N ) 3.V.^.%XcXAXCXcXnX&XM.j.U.rXkXnXnXAXAXAXAXAXZXvX%X/.$X9XuXkXlXcXcXhX].n.2.^ 5.Q.~.R.P.}.}..XS.].lXcXnXCXAXfXtXnXnXzXtX X(.(.(.Y.(.(.~.#XaXnXCXsX9XlXZXCXCXVXkXW.v.].}.!.Y.!.~.P.{ ( a.n.OXlXcXzXfXiXtX%X@XW.9XnXCXCXAXAXSXCXCXnXkXrXS.n.D.dXcXmXAXZXkX7X/.y.*.K N p e u 5 5 2 4 5 e l e e e e w x N x e w e x k x x F Q Q F H H H H Q =.*.<.f.S./.x.q.q.../ ( a.n.v.c.z.k.r.g.M.l.g.g.e.;.;.) b 9 h P _ _ ( | } 8.i.k.#.} 8.e./ V V ! ^ C V C A S T 4.i.(.8X/.(.(.Y.@XXXU. X0X8X@XQ.v.h.b.b.b.v.S.@X@X/.Q.Q.D.j.e.4.4.:.=. .| <. .I U V r * 2 # o o o o o o = : : - @ $ # 2 ", -"f n M s i 0 z n q # = # + = = o o # @ . . o o & & + + @ : c I U U U ! { 1.1.o.;.<.2.S..X XW.Q.Q.E.Z.E./.E.y.Z.XX=XeX X/.$X XQ.@X(.^.@XE.4.| ' A B ~ ^ B V P R R ) 4.y. .| >.1.~ ! | o._ ' ' b 9 b _ _ ' 2.2.1.k.P.L.e.0.l.l.P.P.T.S.n.l.m.x.y.y.E.I.g.o.Q K *.G H J J J T F F F F F x e 4 4 e p j e 1 6 e & = O % * = 2 7 r e u c N G =.C.@XjXcXbXcXjXOXM.OXuXuXdXcXAXCXAXAXAXCXCXCXsX(.@X@X.X7X0XjXcXcXdX].s.[ z.+X~.Q.].}.Y.I.S.&XcXcXAXAXSXCXcXnXCXVXrXW.^.(.(.Y.Y.(.Y./.jXnXVXVXxXCXAXAXCXBXkXOXU.T.}.!.K.K.R.T.2.O.m.OXdXcXjX;X%X$X$XXX^./.kXCXmXCXAXAXBXCXZXxXpXkXuX].S.&XcXcXnXxXaX^.y.%.G N p e u 7 5 = % % % % & 2 4 e 4 j e e 5 5 e e N Q Q F F Q Q N F S J ) Q J ) 3.A.^.Z.t.y.k.v.g.l.M.T.L.P.J.k.0.l.M.M.s.O.o.;.' ;.^ i 5 A ;._ ' ;./ R E >...] 8.r.1./ R Y A Z J ! Z B ) ;.E t.E.I.Y.(.(.E. XW.W.@XtX#X^.Z.V.^.^.D.D.^.^.S.Q.%XXXl.2.o.| ;.5.5.` U C C U C p ; = # # # + o o o o @ = @ @ @ # $ # ", -"V B m i z b b z 5 $ # # 2 3 = # # = % % o X + % = > # + = * r C C N s C 1.9.o.] O.O.2.l.W.].E.W.Z.x.Z.E.V.V.Z.I./.(.^./..XQ.XXQ.D.D.^.C.q.>.] B p C ^ V a N U S S <.1.| ..8... .2.<. .<.<.b i v b m Z B ' 2.f.0.d.z.r.k.b.z.z.z.b.z.n.M.S.n.g.x.C.E.v.2.Q K *.*.) T K Q K F F F F F F D l g 1 4 u x N x e 2 % . . o % = = 3 5 5 7 e l J ;.y./.tXjXcX9X|.&X:X:XdXdXcXAXVXnXVXBXBXCXAXlX@X@XXXXX9X0X0X0XdXuX&Xm.X.s.XX~.P.!.Y.Y.#XpXxXCXAXCXCXCXCXCXAXVXAXtXD.^.(.(./.(.(.C./.lXCXZXZXCXZXAXCXCXZXNXxXyX~.P.K.J.R.}.T.X.a._.&XdX0X&XOX&X0X$X.X^.eXCXZXCXCXCXAXZXAXAXkXyXuXdXdX&X.XwXkXaX0X^.6.` H l 7 7 e 4 & % % % O + = 2 e c Z N e 4 7 e j N Q $.H G F F K H Q Q *.) J T -.t.V.D.b.l.h.c.U.S.M.n.z.d.d.J.J.u.s.z.s.0.s.4.S M Z B i i u S <.<.;.4.1.>.>.8.>.:.e...T R U M z A Y Z i A :.8.h.W.^.I.I.(.#X X.X/.^.(.(.E.C.C.F.E.S.V.D.E.D.'.m.s.O.o... .#.9.{ V f C U A r = & + + + + + o O o o + # = = 3 = # # ", -"A V n b i t a a q - - = $ # # # + % O + + . % O + < + O % % 5 a A A Z C e.g.q.5.1.' .2.u.f.f.V.Z.Z.V.S.^.^./././.@X7X/.W.v.9.q.h.v.f.1.1.| V Z a 9 u b A A B Y | ' ] ] U U T S Z V V b z B z z M A A ^ 3.j.j.z.k.r.J.Y.z.z.J.J.k.s.k.S.D.W./././.D.4.` H K K -.-.-.-.-.*.*.*.K *.*.Q G D j w 4 e 7 4 = 2 7 4 = = % & + + # - 5 5 u u A T _ V..X'.T.9XzXdXdXdX:XfXVXAXCXAXSXAXBXAXxX@X X{.|.+X|.&X&X:XtXOXD.f.5.U.R.!.[.K.{.NXxXzXhXCXZXCXCXCXcXAXCXCX&XM.Y.#X(.Y.~.#X^.^.sXZXZXZXxXCXCXVXZXVXsXkXNXpX!.{.!.P.R.l.4.j._.&XdX&XyX:X;XOX XXXY.(.nXAXnXAXAXAXAXZXcXdXdXzXjXkXfX].S.'./.B._ T Z q 7 4 5 = = & % % % % 5 e e = * 4 e e 5 4 u N F Q *.*.Q *.*.*.*.-.,.,.` G Z ) ,.5.V. X XW.D.S.M.s.s.z.L.z.c.J.U.k.0.s.x.l.r.>.P S A v b n M i b Y U n Y / _ | | ' ;._ Y S S M n q 9 b Z M E 8.1.r.l.i.w.t.V.F.E.7X/.^./.E.E.S.Z.v.S.S.v.g.j.p.o._ / .e.l.s.1.V z A J z ; # + + + + > > o + o + > + = o * $ = - , ", -"s z a u r a Z V 9 - 5 : # @ @ @ o o O % & % + % + O + O & O O o + + & 4 = u H T -.:.7.7.7.y.4.3.3.y.x.i.e.u.V.v.x.x.x.y.1./ } d.k.8.>.| R _ | =.Y u 7 5 e u x N n n V b i i p t b M n d m b i b V V R >.t.<.5.j.M.m.1.s.R.P.P.b.z.J.z.r.=.3.y.7.y.A.B.7.T G J l e e u l 7 6 4 2 6 7 e 6 w x x e l r 5 7 4 5 u p e 5 4 = = 2 - - : 5 5 p Z H T | f.].%XaXxXaX0XdXhXdXdXcXCXSXDXDXSXCXaX$X.X}.XXoX&X&X&XuXfX9XS.V.f.5.L.].P.P.;XdXjXhXlXBXCXCXxXkXnXAXCXBXOXM.XX#XQ.P.{.oX/.Q.tXNXVXZXnXlXCXCXCXcXlXlXlXpX=XR.P.R.M.r.g.h.'.uXdXrX&X:XdX+XXX#X@X#XjXZXSXAXSXAXCXxXaX&XdXyXyXdXhXdX.XD.f.' T U b i q - = * 2 ; 4 3 5 7 u i e 4 4 5 3 9 u c c l 5 6 j 6 2 4 6 7 e e p u e N H H *.6.B.V.7.4.7.,.1.s.z.m.J.c.L.U.z.8.r.V.u.r.4.q.t.:.A M n z b z b Y U n a t a z i b b a b N u e h 7 5 l K _ E ] ] ] .q.V.y.T R 3.g.g.g.j.M.j.5.e.h.j.4.3.4.7.7.7.y.4.=.` J c 9 , 2 # o X . % % + + + O + O + > + O X . . o # $ - - ", -"M B n b s n A z - ; - * $ + o o o % o O O O % & = 2 < + < 2 < 2 & ; & < 1 2 2 l v v G Q ) -.-.f.^.E.C.C.f.g.j.2.' ;.4.| U / j.a._ Y J A Z b c 9 = = # , + 2 4 e 7 q Z S M n M V Z V b 9 * o o . . # h M Z z c v ^ ( _ | | 1.s.k.c.g.;.) G N u j G *.*.-.K G Z q 1 4 4 7 5 7 z c l g 1 2 1 1 1 w u 5 5 e p r r e p x e e 5 5 7 q - = 5 u b A S ;.5.f.$XkXkXuXyXjXdXdX&XOXdXnXCXBXcXfXrX9XXX].XXrXuXrX0XtXfXaXD.p.V.l.r.0.v.OXyXdXdXdXhXkXiXuXeXkXCXAXAXcX9X X9X%XQ.E.}.$X$XXXiXCXZXZXnXdX;XyXuXxXNXkXsXiX:XR.s.d.x.v.V.f.].uXaXtX&X&XyX&XXX X(.$XaXjXcXcXVXcXjX7X9XdXdXdX&XdXjXdX^.f.<.' S A c r 3 - - 5 5 4 2 7 u i q 7 r p u 7 7 q 5 5 2 & & 4 6 g c c l 7 e e 4 4 4 c H G Q -.-.*.M u x N H =.5.l.k.r.r.:.<./ R | P m i z M v 7 o o o o o @ q S P V V S Z B Z c 5 7 e 6 2 # # < # 2 9 h n H J ^ T 4.y.y.' ( <.2.' ' f.j.f.j.Z.S.^.C.y.3.*.K J D N x e < 2 2 2 2 2 2 2 & 1 & % + = 2 < > + + + + . + o @ @ @ * ", -"Z B n B n m b 9 - * * o % * . . X o o & & + O % 2 2 2 2 2 5 6 7 e e e e 5 6 4 2 = 2 e l v H *.-.4.V.x.j.f.4.;._ J T ) ^ S S ^ B q , # # . $ 3 5 5 5 9 5 & + + = = 2 5 z S J Y K ) J i - = = # + # # o o . + 2 q c n z M M J T R ) K H j e 6 < > , g D v 7 , 4 6 4 6 4 e N ) ` 6.6.F e e 6 6 w w u u p c a p r e x x l p 7 5 5 5 - = = : u B Y ` <.5.l.OXdXdX&X9X.XT.P.T.].$XrXtX0XtX0X@X].XX X$X0XtXtXaXaX0XD.j.j.Z.g.a.m.$X;XyXgXNXCXxXsXsXlXCXAXAXAXcX9X].&X&X/.Y.$X9X$XQ.;XcXSXDXAXcXhXfXNXCXVXNXgXrX%X}.z.0.v.S.j.j.W.aXaXtXtX0X$X/.]. XQ.$XaXqX$XdXdX&XOXS.V.T.$X&X&XdXdXQ.g.5.' ^ S a r 2 = = 5 5 5 5 e p x p u 7 e a N p z u 7 5 w e e e j *.7.3.*.J x w 7 7 6 7 2 2 7 v F e < < 1 w j F K ^ ^ / R A N v M Z z 0 $ O . + + # + # # # # 5 b T Y ! ~ Y Z u 3 = = & X + = 5 5 5 5 9 , , + > # $ q A S S ^ ^ ^ S S _ ' e.j.j.l.v.7.*.T H v l e 4 & 1 6 7 7 6 7 e l e 7 4 2 4 4 2 2 & + + + + + X o . . @ o $ ", -"0 r i s t z a 5 = = % o o o o @ % O % O O o o + & & < 2 < 2 = = 4 1 4 1 2 2 & > & & 1 1 4 7 l v M G M Z H Z b z l c z p 7 e 4 # 5 h z z b A Y A n z u q 5 e c N c u u z M M z c p p u i M z 9 l z q 3 5 5 3 u i a q = 5 c G c 6 e e e e j j 6 g 6 1 , > O , z c c x l F 6.6.6.,.Q Q C W N x x l u e p p N c p e p u c u 5 2 3 4 5 5 4 = 7 i V J ' <.e.D.'.v.a.9.O.9.l.T.'.D.E././.D.j.j.v.l.h.D.7XwX0X$XD.V.v.j.D.D.s.n.'.OX&XuXlXZXZXZXCXCXCXCXAXZXnX$XS.OX&X(.~.%XrXOXW.;XBXSXAXBXAXSXZXCXBXNXlXsXeXXX'.d.e.v.D.j.v.v.E.@X7X9X.Xv.g.g.j.j.B.F..X.XD.T.'.Y.g.2.2.5.f.A.].m.2.1.' J B a 9 5 3 3 5 4 ; 5 e x p p r p i a p p u u l x c N F G F K K -.3.3.) N j p x x e + + , 6 1 6 6 6 k x e 6 e 4 9 Z Z u 2 3 u z h q q 5 5 5 q z l q M M i 9 i b b b c B z 9 9 i b l 5 3 7 r a B C T P z z n l , , 9 9 9 r t u z v M M Z A M Z n M v g 6 2 2 < & O < 4 6 4 4 2 = 4 4 & & & 2 2 O + O X O + + % o o o @ @ o @ ", -"5 9 r 9 9 i u : = . . . % % * + + o % O X o O % + & + & 2 2 1 & & % & < < O O < < + & O < O O O 2 , , + + % # + o o @ - 9 0 h z h T y.q.%.P A P U A s 0 u b b b A V z z n b q 3 @ @ 3 z M M 0 5 i z z Z M Z J ) J S n B A J ) H N D j j j x j e j 6 > > > & & j G Z x x j x F k j N F N N x x N N x e p u p B Z c p r u u p e 4 2 e 5 ; 4 5 5 r b S V m C W ! V V U ^ / [ ~ / R S M z u i B B b A _ _ =.7.4.4.4.t.V.D.n.P.'.m.P.%XuXNXZXSXSXCXCXCXSXZXlXE.z.;X&X X~.(.eX#XM.].NXZXZXBXBXSXSXSXZXlXrX#XU.Q.OXz.a.D.j.5.<.3.q.y.-.Q W S Z V B t q i v Z U ] ] ] _ _ S C A ^ W f a S H a 5 5 5 5 - 5 5 2 7 e p p u e u b B a p p c l l x N x x F F F x j x x w k j c G F 6 & > < > 1 g g j D D j e c v v H J C B c n A _ =.H n n V z z z 9 q z n i $ @ # 9 i z n z z A n n b z 0 q n m P P P P ;.q.:.n h n h q 0 3 $ + + + # + + # 2 2 O > O + > + > > > > + < > 2 2 = & & % 2 & < < + + O + + % O o o + + = o @ @ ", -"u t i z i z 9 # o o + % * % % o % O O O O % % % + + < 2 2 4 & & 4 w < & & & O > < O > O & O X O O > > X O = # + - 0 m m n n n n n n E } E s s s s m 0 9 q i z i n T Y q q 0 0 - $ 0 P H q q 5 q z B Z z 5 3 i _ h.g.O.9.1.U G N F F F x j j e e j 6 1 & > > 1 x ,.p.,.N x k k x F k j j j j x x e e e c c c c B Z p u r e u c u 5 e u 7 2 5 9 p a s p r p p u 9 5 5 9 r : : 8 8 9 5 5 7 5 l B B c c c l 7 h G T _ R Z Z e.W.'.P.~.*XeXNXAXAXAXAXSXDXCX;Xz.L.&X+X}.XX/.=X*Xv.M.yXCXCXCXAXSXSXZXkX*X{.Y.z.Y.U.o.V S =.=.*.G q h l l c v V B u 5 7 q 9 - 8 8 8 ; w 5 ; : r a f p w a z c u 5 5 4 5 u 6 5 l l p c e u b Z B x p p 5 7 e x N x j e g k k F F x k N W 7.B.Q e < > > < 6 g g 1 6 j j N N D F D S / 2.5.2.g.2.Z 9 ; 0 A A z z q 9 5 l T V 8 3 5 0 h q z S P m i z i 9 9 s m n 0 s m } >.T n G A n n n M n q $ + , > + + > O X O O + + O % % > & + O > < 1 2 & % 2 1 < % & + O + % O % O X o % + = * @ @ ", -"q u q q q q 2 + * % % * ; 5 * o % & o % o O X O + % & & + < % % % % % O O O X O O O > O O O O O X > > + . . = q z z m P E T P n 0 0 s n s s s m P i 0 t b m P n U Y i 9 , 0 z P _ Y q + . . , 3 2 2 = 5 c Z C <.u.o.9.a.o.Q F F H N F x e < 1 6 1 > O > 1 1 Q A.D.A.,.Q k j F F $.F x k j g e p x Z ' ) G H =.7.<.` N u u p c u e l e 5 = = : : 8 9 u 9 5 : 8 8 - 5 = - 8 5 - 5 r u 9 9 9 u z c c c l e 3 5 e 5 - - 5 i ' M.(.~.Y.(.~.R.oX:XzXCXlX%XXXY.M.+X+X}.Q.Q.=X#XS.m.].uXCXZXgX-X*X!.~.~.Q.].].j.V 8 8 * 5 e e 2 7 l z v D z i u 5 4 q l i u 9 8 8 ; 2 ; : : : - 9 r e 5 : 5 - 5 5 7 u u e c c c e u N *.3.4.' G Q =.Q x e j j j x x k F $.$.k j x W ` j._.j.Z < > > > , 6 g 1 6 j x W N D F G ` 2.f.2.O.e.` B Z t 2 = - # 2 + . . # n =.-.n u 5 2 q M Y J A P n z q 0 m P s s s s L m h z n T T P P n z q q # . X > > > O O O > > > > O O O X X X + + o % % % % % & & O & % O % + O + + + # = ; - = ", -"5 2 3 5 7 5 = . + . * * % % o o o o % O % & % % % + & O X + O o o O X O O O O > O < < > O o O O X X O O O + - 3 3 3 8 0 A } :.E T T P 0 0 s s m P Y A n Z Z A U U ) ) z 7 q z P Y i $ o X . X . % 4 l x v v b / o./ U I C N Q ` Z N G F N 6 < 6 6 > > > > 1 e 6.D.D.D.p.*.W k F $.F k x e j e c Q =.*.=.=.3.B.A.A.j.;.n t c l r e e u 5 + * * ; : - - 2 3 : : * * : 5 r q r u u t c u 5 9 r q u l x H *.H x e 4 7 u 9 i z z P 8.c.Y.oX{.J.z.z.T. XQ.Q.S.z.}.oXU.c.D.#XY.v.M.U.Q.Q.!.L.K.K.oX{.U.x.;.A a p q q u 5 4 e v K T G z u q 9 5 5 4 l l a t r r u r r : * ; * = 5 3 ; : 5 $ @ @ = 7 e e 7 u c c r C 2.V.D.D.f.,.6.,.,.,.S j p j j k x k F N x N ` _._.S.j.Q 6 < < O O < h 4 2 e x F N N F Q Z n m U ^ o.2.A b Z N c u 2 + . . . . $ n T A q 5 4 Z *._ T R A M M M P P P s s s 0 i n P T :.w.E s 0 5 - 5 5 , X X O o O > + > > > O O O O + O o . X % + O O O O + + O + O o + + + o o . @ @ @ ", -"q 7 7 5 q 4 # + + * = = + o o o o + . . O + & + O + + + O X + + & O % & + O > 4 > > > > & + + X X X O + + + , 0 q h n P T E T E T Y s 0 i m s b n 0 u t z c l l 7 = = 4 3 2 2 # o o . . . + 4 l G ` ^ ) ` S S | .J C C B c H Q D D x N N e 4 6 j 1 < 1 1 j j ` p.p.A._._.p.p.,.$.Q k k e 1 e v _ *.=.=.=.7.A.A.v.f.y.' N a e 2 2 7 7 2 % o = ; : : - * = 7 5 : * = = ; : 5 ; ; ; e p u u r 8 - - 3 7 v ) Q Q c e 5 5 5 9 u z 0 i U r.I.U.R.R.U.].{.}.L.v.XX7XQ.U.].+XY.M.P.].@XE.J.R.Q.Y.M.9.A i 0 z l 7 3 5 w r N J ' Y l 4 4 - : r t q u q 9 5 - * : ; = = * * : w 5 + = = 5 5 = = o % ; 7 7 2 5 e p S 2.j.j.V.A.B.6.,.,.` ` Q c 6 1 g k k Q $.Q p._._._._.p.p.Q e 6 1 < < 6 6 6 6 e N x c N N H G n n P A ( 1.^ V J Y J ' ) Z u 3 + . . o o # # 3 , , 3 - , 7 z l l v z 0 n n n s d i s P E E T E %.E n n z i u 3 # o O + O O X X & O < > O < < O O O O & & & O O + o & + + + + % O & o + . o + o @ # = ", -"q 5 3 7 e 4 # + = 2 = o + o $ o o + o + + O + + % + . + + X + o o % & % 2 O O + O > + O X O O O + < 2 + O . . $ $ q 0 3 h z z z n n a i A m n P T =.=.| .:.:.,.:.| T U T E -.J i 0 3 + + 2 7 l z i u i p c z b Z Z b S V B N F J x x Z c l j j e e 6 1 6 g 6 e &.A._.n.A.A.A.A.p.&.F x F k k j G _ _ *.=.,.,.p.f.f.f.B.3.Z u 5 3 3 7 5 = o + # = = - - 8 r a N u 5 ; = - : ; * * = = = 5 5 p p i i u 7 u M A H H v u q 5 5 l b z z s R r.E.].}. X+X&XoXR.T./.@XQ.R.!.+X].P.'.OX;X@XXX@X XS.1.P b i d z i 5 5 u p b A A A M c e u z t u u 9 5 - - $ @ - - : - * : w p a z r 5 ; @ * # + % % % 4 5 3 : e c S 5.V.j.p.p.p.,.,.,.*.) ) v k k F x k W ,.p._.n.p.2._._.p.W 6 6 j 1 1 e e h l j j D G D Z G D n P A B B A B b c i i a i p p u q = . + 3 q b T %.T T P T :.3.-.=.;.;.-.*.-.J V m P s s 0 0 z z s i 0 0 9 5 = . . X + , 2 > X X O O O > O > % O + & & & & O % X o + % o + & + % O + & O o + o % % o + + ", -"l q 5 5 7 = + = 2 = + + $ o . o # # + + % 2 2 3 3 3 - = 2 2 % o O % & & 2 + < O > > > > O > > = & = = o . . . . + , 3 h n n T P T | _ P n P :.y.x.c.i.V.W.Q.S.j.C.^.(.).(.(.^.I.i.R i q u 7 5 3 2 5 5 4 ; ; : 5 t c B Z V V c c l l N c c N x j j N j 1 < 6 6 1 N p._._._._._.6X_.F._.N.6.6.6.K -.7.7.=.` =.3.h.j.p.j.j.<.Z M l l q 2 2 + + # = 5 a m m C ! ~ ^ A C S C a d B c r - ; ; = 2 7 5 9 i z u u 7 7 5 B J B i 9 5 i z 0 0 i C g.S.U.!.XX+XQ.U.T.b.U.U.U.z.J.}.L.M.P.T.~.%X+X].U.S.t.M i t s s q 5 5 t S Y a 5 9 7 e u u u 9 7 3 - 5 = - 5 t m B s i V Y C U _ / R m f V a 5 = = # o = 2 7 e x x H p.A.p.p.p.p.-.Q *.6.p.6.*.*.6.6.6.A._._._._._._._._._.,.k w k j 1 1 j x j e N N x N c e l l Z V Z Z N p 9 5 3 3 4 : = 5 5 5 3 7 e l b | b.].Y.^.2X2X^.I.V.x.C.^.I.x.x.B.h.y.| I m Y ^ Y T P S A n 9 9 $ . . X X o , 2 + & 2 1 + X O & > O % % O & & % O O % % & = & 2 4 1 2 2 2 & % @ o o o o @ * % ", -"l q 5 4 5 & + = 2 O + # # 3 9 $ 5 5 3 = 2 5 q u u 7 4 5 4 e 4 4 % & o X + + 5 2 2 < 2 , , 2 + + & % * = = & , , $ 0 n P E T P P B V V P P ;.q.V.Q.XX/.(.#XOXz.s.i.I.(.~.!./.(.Y.R.k.| M 5 - 2 3 5 q 5 5 4 7 9 i A S H Y A Z b a j u u e l F F x N x w & > 1 k 6 1 W p._.A.A.p.A.A.A.A.p.6.-.6.7.-.*.-.,.=.;.t.V.A.A.D.j.) D c D v 4 = % + 3 z Z ' 3.o.' 1.o.` ^ S Z m y r 9 8 t b p p r ; 2 = = 3 - 3 5 7 5 : 5 a Y A t 9 r 5 p i A | e.T.OX+XrX*XOX~.~.~.Q.$X@XU.L.T.+X@XQ.].}.}.}.+X&X].}.b.1.R V t 0 q p i n U S r 5 2 2 e e : = = = = 2 5 5 p p a r 8 8 t a V A U / .1.1.{ O.2.` N u 3 = = = u D Z x G =.B.A._.A.p.,.=.-.-.*.*.,.7.6.-.6.B._._._.p.p.n._._.p.x 6 6 g 1 % 1 e Z F p x N l l e e e v Z B V S Z C n q 7 5 = 5 5 4 5 5 3 2 p A ;.J.~.].).Y.Y.(.).I.k.u.Y.eX#X^.(./.E.x.o./ P A B V P P R R P A q 5 3 3 3 # # # = % + % < = & 1 1 < 4 4 2 + O O & & % 2 7 e 4 5 4 6 l u u 2 = = : 5 5 5 5 * @ + ", -"q q 7 3 3 2 # + + + # # = 3 9 q q 9 9 q q q l c u 7 e 7 e 4 4 5 4 & = & % + + 2 2 2 & + < # 2 = = = = * ; & = = 3 0 P >.w.:.P 0 0 I :.r.V.g.4.C.(.Y.i.i.I.Y.x.C.E.2XI.I.!.oXoX~.~.M.;.B q = 9 p u q q t v A J R R Y J ^ S Z V b r e c c v G H N x x p & O & 6 e w W _.p.` &.Q ,.p.6.,.6.p.7.7.3.B.7.T ) =.^ _ 4.h.B.7.=.F N F W j 4 % 4 N =._ _ 2.9.( W C c p r 5 9 t t t u : - - 9 a t r w 5 5 5 = - : 5 9 5 9 b A Y S B B p a W o...e.d.].tXoX=XcXNX;XXXrXpXrXE.x./.tXaXeX%XkXBXfX&X&X&X'.n.9.o. .V d b m m Y R m t 5 3 - 5 5 : * = : 9 p r p r 8 ; - : r t i p : ; u a N W W o.j.p.` ,.,.Z * * 4 x G D v H =.p.p.p.=.W ` Q W ) f.j.7.t.f.p.,.,.p.,.,.Q Q ,._.A.F 1 1 1 O & 6 x N v H H H N x e e p B N d U S C U R Y A B c 5 7 u u u 7 4 u S 2.I.(.(.#X(.I.Y.).!.I.I.J.I.I.i.c.Y.Y.c.r.c.i.y.:.d 8 s P >.q.:.n 8 $ $ $ $ * = = = = = = & > 2 , < 2 = + + + 2 2 2 2 & ; e e e e e e u u q i u 9 9 q q 9 3 = # ", -"7 5 q 3 2 , & & 2 > + , 2 = $ - 8 - - 5 9 q i u 5 4 4 7 2 ; 4 = = 5 e c c 7 = 2 2 4 6 7 2 = # = % = 5 9 5 = = = 3 z E E E E T m S q.q.>.c.c.q.q.i.i.I.~.eX=X2XI.I.^.(.).!.}.@XQ.Y.I.1.S q 5 : 9 p i n J S C C _ ;.R J S V d m V a u N H H G x N F F x 1 O & 4 e x Q Q ,.` ,.,.,.,.p.p.p.j.A.f.p.B.D.4.K T ) S Q 6.7.6.*.F D N j 4 & 3 W j.V.v.f.o.S p e 7 4 1 + + . . # - 5 r : - 8 r y f f i t p r 5 : 5 5 9 i B n T T B a y I o.z.&X$Xl.d.M.OXdXgXgXNXxXrX%XrX$XW.%XrXeXaXlXkXgXgXfX{.m.d.'.;X{.s.] P s s V U P B A i 5 9 9 : 9 9 u p a B N t r ; : 9 r 5 * % o o % % ; e w w c ` X.j.j.A.7.v % 4 e x D N Q ,.p.p.,.C J ` Q Q j.F.y.f.j.A.j.j.p.,.p.,.,.,.&.,.Q N N w 1 & O 1 j D D c x G H Z N p C f y d A S S _ ;._ V C S C b c p e 5 : r _ t.I.(.(.(.(.!.!.Y.Y.I.I./.).8XE.C.y.y.q.u.b.i.y.u.:.b V R R E E P 0 8 $ $ - : : 5 2 2 & & 2 4 6 6 2 2 2 2 u c l e 5 = 2 2 4 5 5 5 4 q t i u 5 - 8 5 5 # # # , # ", -"q q 7 q 3 & + = 2 # + + # # 3 5 8 5 - 8 9 i i 0 u u q 5 = 5 e v H J Z N M M u l c v u u z u 7 # + + + # = @ @ 8 z A A z n P %.%.=.y.u.c.Z.I.U.S.i.i.I.XXeX).E.I.J.I.Y.!.~.oX#X#X#XI.r.` q 5 9 a S A B A C N B ) ' J B A ^ ^ X.9.o.W Z v v v x N N N j & < 6 u e e 1 w F ,.p._._._._.$X_.j.j.j.B.p.C.A.,.K Q N N &.p.p.,.F D l u - @ u 3.j.V.l. .s i p e 4 O . X . . . o % * : 8 8 y P d 9 9 9 u t q i b b z n P m t f [ d.R.dX0X'.n.s.&XgX:X:XyXfXrXoX+X].T.OX&X+XtXuXuX:XgXgXXXm.m.}.;X:X'.#.~ s s V ^ s a V b i t t t t r r f V t 8 8 ; * = . . . . . X & 6 e p t f 1.n.j.j.-.7 = w e c v Q 7.p.p.Q N G Q Q p.F.A.7.B.j.B.D..X6X.X_._._.,.Q x 1 w e e e w & 4 x F D l j x Z C Q ^ <.a.o.J Y S Z W _ S N f f B B J Z r 5 8 i | h.^.#X#X(.(.(.(.Y.I.J.J.Y.tXuXQ.I.i.I.E.S.Z.C.C.C.y.;._ _ M z n G n z 3 % = = o o . . = 7 c l l l v l l z N c c Z H H c e ; 4 7 q i t t a t 5 : - 5 3 3 , # # # ", -"q q q q 2 + + + # + + # - - = = - 3 9 7 q z n n Y _ T G p a Y .>.;.<._ T 3.:.T b l z H _ =.R n 7 # + # = = u U Y n n b P %.T %.4.i.C.^.W.^./.~.Y.c.d.M.eX7XI.i.i.J.J.I.~.(.XXtXlXjXXX2.C B A Z S J S S U U ! ..r.;.U ^ 2.n.s.a.#.a.o.Y G N x c x D u % 7 p e & < % 1 N p._.jXdX&X0X0X.XT.s.2.3.7.7.B.B.-.H N F W ` ,.Q C Z B q - 2 S 2.r.s.' y r 5 = + . . . . . @ * $ - i B s 8 8 t i 0 i U Z 9 b P P f ~ #.R.+X;X{.n.X.l.pXzXfXyXpX;XtXsXsX XS.;XhXgXeXtXsXpXfXhX;Xd.#.M.|.|.+XR.@.L d I U a i H M i p r r 8 9 m n r - * * . . . . . X X X X % : r 0 B 3.f.p.;.a = 5 a B c N ,.,.Q F Z Z Q ,.A.A.p.,.3.4.j..X$X0X&X0X0X0X_.6.x O % & 1 e e 4 1 x G D D x N H Q <.2.2.n.m.f. .! ) 4.2.{ ~ Y U V C S A V B b P j.0XlXsX#XY.(.^.I.i.J.J.i.I.eXeXJ.i.I.(.(.E.^./.E.C.y.:.T T R G n z n T A q = = = = = z J _ ' J M z M A _ 3.;.J / ;.:.2.| Z i c J ^ / P m n d r : 5 5 $ = - 3 5 + ", -"u u q q 2 . + + O % = 5 9 - = = # 3 4 r Z Y R R ;.| T ^ Q S / | .| .| E ;.;.4.4._ _ e.j.2.:.q.4.A 9 5 3 q U T V z v Y _ Y Y 3.Z.Z.Q.@X/.Z.C.(.*XoX}.L.XX8XY.c.J.i.i.I.I.I.Y.uXxXuXQ.s.o. .:.Y U _ _ / _ 2.8.1.4._ Y o.s.a.#.X.X.a.9.o.H Z N N x F j 4 e e 1 O < & 1 Q p.N._._.0X0X6X.X9X].f.p.f.p.B.j.p.Q F F F ` 3.Q C W C w # q _ 5.9.( d r : * % . X X X . . X . X . . = = = t s s q 9 9 t i B U b b U I I [ K.&X;X+XP.#.d.&XMXzXiXlXZXNXZXVXvXeXXX=XlXNXNXVXZXkXfXzXzX}.9.a.{.:X:X[.K.~ L U U m n A d t i u r a f s 8 = = o . . . . . . . X . * * 5 r S 3.5.<.A - = l C C C =.,.Q Q F G =.A.j.p.y.f.p.f..X9X$XOX0X0X.X_.p.6.F & > & < 1 w 6 4 x F x N N Z Q ' 2.X.o.2.a.2.9./ Y 1.8.O.5.1.| / ' _ P / | _ <.j.@XaXuXoXI.I.I.C.i.c.c.Z.Y.8X XL.~.(.#X^.c.I.(.(.^.V.h.;.J T ) Z z z A T B 9 - 5 u ) y.y.<.j.V.:.T :.q.4.4.:._ / ] | | / J A T _ _ 1...T | R b r 8 3 , 3 - 9 0 2 ", -"5 5 u p 3 = 2 2 = 7 5 i p 9 8 q 9 5 r A Y S Y T 4.u. .U Y J ^ ^ R / .| 4.| / / ..e.g.Y.$XS.y.y.k.8.V q u S S S B b n S Y R _ u.U.U.I.E.U.I.i.L.U.{.:X{.R.oXI.w.w.J.i.c.J.I.Q.#X0X%XU.d.( / >.q./ ^ ;.;.;.o._ ^ 4.' S 2.d.a.a.#.X.#.#.X.` W Z x x x e e 5 & % O > 1 e $.p.6.&._._..XA.j._.$X Xj.7.p.D.F.A.` N Q *.,.` S Q Q N 5 = c <.t.<.A 9 = = * * . X X X o . . X . . . X . . o + o @ 9 S U t 5 t V B C R Y V I I @.z.{.{.L.a.n.yXhXzXBXzXNXZXCXNXvXpXaXeX8XuXxXxXZXZXlXkXNXzXfX|.a.d.'.|.[.J.@.L V U U Y P V f t r a S n 5 @ @ * . . . . . . . . . O . . . . . . o = ; : r ^ 3.p.' u = 5 B S ) ` ,.,.*.F D 7.A.A.B.t.r.j..X6XD.f.D..X_._.p.p.p.k 1 1 & < % & w w e N N N H Q ` 2.a.#.2.a.s.s.0.] P 4.2./ ' .o.1.1.U R 1. .` <.g.Q.rX&X+X)./.I.C.c.i.u.i./.@XT.OX=XI.I.I.C.I.(.Y.E.E.Z.4.T U Y Y n z n J R B q z R y.u.q.j..XqXE.g.q._ R | 4.4.| R I ^ ` Y S J Y 2.g.:.R P U ! m 0 8 9 q 9 0 s q ", -"5 5 9 7 * o = = % * - 8 9 r b b t t S Y B Y _ 8.x.r.R A H J Y P _ h.y.y.h.u.t.V.c.x.c.Z.I.E.V.r.g.e.R T Y b a v c b V A P P ;.v.Z.E.@X(.Y.I.i.c.Q.:X~.J.oXtXoXI.I.).I.~.OXE.b.@XrXW.8.I m | 1.2.~ ' ;.! U ^ ^ 3.' A { #.d.d.d.a.#.[ #.9.` C x N D e 4 1 % & > > 6 6 Q p.p.p.p.p.A.A.B.y.D..XD.f.j.A.A.p.p.Q ,.-.` ` ` B a u = = N ' <.^ c e = = = % . X X X o + . . . . X X X . . . . o = : 9 B Y B y p d s d m V P I I @.d.#.@.[ d.-XhXNXNXBXNXCXZXZXlXuX8X%X%X7XeXvXNXNXZXCXxXVXMXMXlXOX#.~ @.d.d.[ ! f V B n d s y p p f V a 7 3 # + . . O . . X X . + % % ; r B Q ,.' z 3 5 i z V ) Q *.&.Q *.3.7.C.V.y.v.W._.A.N.A._.p.,.p.p.p.6.F 1 1 < % & & 6 1 e Q H F Q ' 1.O.X.9.+.d._.d.9.U A >.;./ ^ U ( 4._ / >.>.` B ( a.Q.uX+XY.oX#XY.Y.(.~./.eXuXQ.M.OX%Xb.k.k.i.Y.(.(.^.I.x.;.P P J Z l b b z M T T | u.u.i.Z.S.S.Z.J.I.S.j.1.y.i.t.x.e.Y S W U S V _ e.g.4.R A V ~ V 0 0 n z 0 0 9 - ", -"e u q 5 . + = = * ; - : i a s n i _ <.^ ' 4.4.s.g.>.A V =.t.;.;.h.x.u.W.^.V.Z.k.i.I./.Q./.#X6XD.u.;._ P a z b v b C R R R >.y.E.7XtXeXeX7X7XE.E.%X(.Q.#XiXeX).).).).~.Y.M.U.9XuX X5.S i i S <.^ B ' ;.' ^ ^ <.=.S { d.z.n.d.n.a.a.a.O.( ` Q H N 4 4 < & & 1 > > & W ,.p.N.p.6.B.F.A.B.j.A.F..Xj.7.f.p.p.6.,.*.Q ,.3.S Z b 9 u S ,.` A N e @ . . . X X X . + . . X . . . . o u G *.=.C B a d f s t 0 i s f ~ +.d.@.[ #.|.zXMXpX;XiXNXZXDXDXVXvXxXfX$XtXlXxXZXZXGXCXcXpXyXhXNXzX].O.[ @.#.@.L y f z i s f V a y C _ 4.-.G 2 . . . . . . . O . + . . . X X % 2 e c W Q ` Z q z H n A =.-.*.` ,.7.y.y.7.7.A..XD.j.N.A.A._.p.p.p.p.,.,.j > < < < > & 4 4 j F H J ` ~ o.a.#.a.a.a.'.n.0.! I >.| U Y .;.Y n | ;.A i p ` k.%XpX%XU.J.Y.~.(.(.I.).eXiXoX].OX XS.^.%X#XeXeXeX@Xb.w.| _ _ Y n b M n z z R ;.q.Z.^.8X#XE.W.E.c.r.b.T.E. XE.h.D.h._ 4.a._ B U e.x.g.5.1./ / ..A q A n h q 8 - = ", -"5 q q 5 * . . + 4 q 5 3 : 9 a t n m i A =.;.4.4.y.v.S.g.-.n ;.x.r.4.V.v.g.S.W.^.Z.i.I.Y.E.Y.Q./.$X$XD.g.y. .n n n n z Z Y R | q.V.h.e.e.I.eXuX%XU.U.#XtXtX8X(.Y.I.(.*X@X~.XX~.Q.rXlX$X4.b n n a p c b ^ <./ U 4.S.Z.9.s.m.'.m.n.s.d.a.o.` .<.` Q j 1 2 < & & O O < c ) ' 3.B.f.p.f.V.A.A.j.j.B.,.` 7.A.B.p.6.Q Q Q ' ) / _ J t e W ` W e e ; X . X . . o . o . . . X . X . . . . . . X . + c ;.4.| U A I U P i : - 9 f [ +.@.@.@.!.iXMXNXpXeXkXSXDXDXJXSXlXaX8XXX&XkXnXSXDXDXDXDXMX:XiXBXlXrXT.@.@.#.@.L t 3 5 9 B U I U U U <.y.=.e . . + . X X . . . X . . . . X o X + . . . + . O 4 e e Q =.C u z T Y P _ ) Q *.,.6.A.A.B.-.*.f.M.j.j.B.A.A.j.p.j.p.,.' J 7 % + + > < 1 4 e j N Q ,.( ( 9.l.l.s.l.m.P.d.a.r.S.b.;.J | <.M u z i b A a A k.rXlX%XR.XXoXoXOXOXQ.I.I.(.tXdXtX XS.W.rXuX+Xb.r.9.s.x...E | T n i b M z H :.t.x.(.#X@XXXR.E.Q.E.J.x.S.W.W.Z.h.V.i.4.u.B.T P | h.v.j.e.t.1.o._ B z M n z u - 8 - ", -"5 4 q 5 % X + % = 5 u r : 5 5 9 0 b i q A _ :.3.t.v.W.D.y.Y :.j.y.e.V.S.M.U.S.S.S.x.L.T.P.S.W. X].OX&X.XD.4.m i 0 z z H / E E ..r.e.r.b.OX&XQ.L.}.%XrX%XI.k.u.Z.Y.L.b.U.(.=XoXY.;XlX#X| i n J b b l 9 i B J >.x.E.S.r.m.'.M.s.2.a.X.' ` ;.:.o.` F w & 4 2 2 < 1 7 G ' ' 2.f.h.7.e.M.D.D. X X_._.p.W N ` ,.,.,.,.*.J -._ ^ Y A t p W &.x 6 4 % X . . o X X X o . . + + . . . . . X . . # + + . 5 H Y U U U I R A i r - f L ~ } ~ d.*XiXMXgXkXkXnXSXDXDXDXZXaXeXuX%X&XrXkXSXDXHXDXDXBXMXNXMXMXgX*X#.L ~ [ I t 8 q i C I V / / ~ / C = . + % o . . . o o . . . . + . X o . . . . . . X X 1 e 6 N Q A u b J Y _ :.=.K ` ,.p.,.,.Q v Q B._._..X_.A._.v.2.<.j.a.2.<.=.N 4 2 2 2 1 4 1 e H =.o.<.<.<.=.2.5.2.l.P.T.j.j.U.c.u.' U Z u 7 l M V A i s q.eXsX%X}.+X%X~.U.T.Q.^.c.k.d.W.8XrX$XU.z.}.rX].l.8.e.k...E P S M i i z z T u.Z.@X%X(.~.XXY.I.Q./.V.C.U.U.U.U.V.D.h.y.i.y.| / y.D.V.y.t.4.<._ B 5 z z q q - - q i ", -"l u 7 2 o X X % & & 3 5 ; = = - 8 9 9 - z Y Y ;.4.4.y.D.S.4.2.j.v.x.S.S.v.v.V.S.Z.v.S.Y.'.W.S. X7XXX X.XZ.;.n z i b A A A T R R q.u.S.$X@X}.].XXuXeXY.U.M.D.].$XOXQ.W.U.@X%X@X%XaXxX7X_ q n P i i b u 7 5 m q.r.U.W.x.M.m.X.` o.2.<.,.2.;.' =.*.N 1 w 4 2 4 u N ) ;.:.4.t.j.5.=.f.T.T.M._._._.D._.p.Q l W Q ` Q G G T _ / | W Z N N x w 1 % X . . . . o o + . o . % = o X X . . # # + + . . % 5 i S U B V b t s 0 s ~ L L L J.:XNXsXNXZXZXVXZXZXZXDXZXkXCXlX9XlXcXcXDXDXGXZXCXVXZXNXsXMXMX:X#.L L ~ L s 0 b a B B V / C a : o + + + + + . X X . . . . % + . o o . + + . + + . . X % < e x Z B A | ;.' _ T S H Q ,.Q Q N 6.A.F._._._..XW.D.v.3.4.g.S.s.<.<.` J v 7 6 4 4 w e H ,.' o.<.2.<.2.2.( ( a.D.l.b.Y.k.q. .b : e c u 0 n A a r <.tXxXtX@X@X$XQ.S.^.XX%X$XT.D.M.S. XuXrXY. XOXOXW.u.u.1.P P P S S M z M z A q. XOXW.}.oXE.E.Y.E.D.V.V.Z.c.k.b.b.W.S.V.V.v.4.4.D.V.5.4.e.;./ Z 9 5 q t : - - - 5 9 ", -"7 u u 2 . X . o o . = * = ; = = $ 3 3 - q B S _ 1.4.f.h.<./ 4.x.V.S.c.l.V.B.v.S.Z.v.S. XW.v.V..X/.@XtX9Xr.P n i z M S S S S A m ] e.j.l.v.W.&X%XXXY.U./.0XdXdXdXdX0XtXaXsXuX#X7XtXjXW.U 9 b U m a a e = q -.u.q.V.S.j.g.2.( ` ./ ` ' o.' / 1.:.l 1 e 4 7 u v J ^ _ 4.f.p.y.j.7.p.D.OXOX_.A._.D.A._.p.Q W Q Q Q ` =.4.t.1.q.<.` Q N 1 % X X . . . X o X + * * % . . o o + . . X o o o + . . . # - p U Y C d i i 0 y L L L @.K.iXgXsXNXVXNXnXmXZXZXDXCXnXvXaX7XaXnXCXZXZXZXZXNXnXNXZXNXiXpX:Xd.L L L L 0 0 z a B C C V r - . . . X . % # . . . . . . . . % + . . @ = % + + . . . . X X X & 6 Z ) _ 4.q.4.4.:.' ) H Q Q F ,.A.A.D.D._._..X7X.XV.y.y.f.f.2.f.,.` ) H v l 4 e 4 1 A p.o./ ` ,.` ` ( ( ` o.g.g.l.W.x.e.8.J : 4 u i b B V i r _ 7XlX;XoX7XsXaXaXtXtXuXsXuXtX7XQ.T.Q.oX%X%XD.v.x.f.5.Y A S S P S V M 0 z z S S.rX$XR.Y.~.b.Z././.S.V.x.i.k.b.v.v.V.S.V.j.e.;.t.j.y.5.>.R S d 5 = 5 - = = - * = - ", -"5 7 7 + . . . . + $ = = = = - - 3 5 5 M J U Y _ :.T V C 1.t.h.h.u.v.S.V.x.L.Q.XXXX/.x.u.E.W.v.W.8X(.>.P S z l M S Y _ Y A m m U _ 1.x.^.7X0X#X/.U.Z.S.W.].W.j.5.q.k./.tXaXtXrX$Xf.C r i Z V Z p - % 7 T >.8.Z.D.f.<.X.<.' o. .' ` ^ ^ ' f.<.e 2 e e e N H W ` S ' F._.A.F.F.A.D.Z.^.'.D._.D.D..Xj.K F Q Q ,.p.j.p.g.a.' C Z ` Z 2 . X . o . X . + o % = 4 = . + . . . . = = = + . . . . . = * : C J i z i 0 8 L L L @.*XvXNXCXNXBXNXZXVXNXCXxXuX%X9X$X^.7X7X#XtXxXNXnXCXZXCXBXBXNXNXiXL.] L L L 8 0 b s d ^ B - = = + . . + = * % . . . . . . . . . @ = = + + X . . o . . . . o 5 S ^ b A 1.j.f.e.5.4.) K K J =.B.D.C.F.S._.'.D.A.A.A.A.A._..Xj.^ W ` J N c e e 7 2 v y.f.] / Y T ' o.` ( .2.1.v.(.Z.w.>.A - = : c V I n r p ) V.rXuXuXtXeX/.y.q.q.c.E./.W.Z.b.W.XX%X0X@XS.h.1./ A V C C W ^ S Z b a n V A y.0X$XJ.J.Y.U.s.b.(.+X].b.b.b.S.S.l.f.g.y.e. .V P | 1.U U R U i - - - : = @ = = = = ", -"3 q # . . . + + 2 5 2 = = 5 5 - 5 - q V U Y Y M M S _ 4.R R g.y.j.Z.x.i.Z.b.g.u.w.w.u.b.U.T.XX/.w.P A M z z J Z S Y J A A V V J Y 4.v.v.u.| U Y V p r 9 r r 9 9 i :.(.0XeX#Xe.N p p i z s t : r 7 u _ 1.q.I.E.v.j.f.<.^ ( .) J ^ ) 5.f.` w 5 e e p Z ) ) Q Q ` A..XA.B.A.j.D.S.D.S.'._.m.j.A.,.*.Q F ,.7.3.,.f.T.{._.5.` ` C ; . o o . . . . + X X + o * 5 7 = . . . X . . + + + o % + . . . + = = = 9 z z q 9 3 8 I } } J.uXNXCXNXNXZXZXZXZXZXvX%X}.{.].E.S.E./.(.oXeXxXZXCXZXBXBXNXNXBXlX*Xd.} } s 3 0 9 i B a - * = = + X X . . + + o o . . . . . . o = e 2 * o + + . . o . . o o . . 5 U ` ` h. X'.D.j.3.3.6.Q G ) Q 7.A.h.V.D._.S.S.F.B.B.B.n._..Xp.J Q W ` ` N u l e 2 q 4.j.1.R J J _ 2.' / 1.f.g.V.Q.I.w.8.Y 9 9 w : y m B u u u m u.%X8XeXE.T i r r i i q r m P U R 4.x.V.h.:.Y U V B A Z A A B J Y b z H A R x.OX@XQ.Q.x.q.>.w.r.k.L.S.h.x.j.g.V.e.^ ;.;.J n n V / R T b - - 5 3 5 - = - - 3 = ", -"q 5 o . . X . . . . + = % # = 5 3 = = 5 b Z a 0 3 5 9 q i B :.4.:.u.q.8.W.W.e.....8.r.8.r.].9XU.;.A n n v Z J P A H J Y _ T Y T A z u i n V m p 9 ; * * * - = $ # , A t.Z.;.- X = c B p : r a w v 4.u.l.S.h.1.u.t.` ` ` ` ` ' ^ ' p.f.S 6 e u N N N ^ _ J ` ` 2._.n.,.6.A.m.D.D.V.W.v.,.Q C Q ) H Q ,.,.,.7.f.M.S.S.D.D.j.5.Z ; o X X o X . + . + = 5 3 7 c 7 * % . . . . + . + X X . . + 2 = = = q q 5 3 5 - s #.J.oXkXVXVXZXBXBXZXZXZXxXeXoXXX].R.OXrX8X/.oX%X#XtXVXZXZXBXBXBXBXZXBXiX!.d.I t $ 8 8 9 q - $ = = = + X . . + % + % . . . . % = a c 5 2 5 = + X X o . o . o . % 5 Y f.m.D.D.m._.m.B.7.3.3.-.J H Q H K -.4.C.E.S.^.D.A.A.6.p._.A.,.=.Q Q ` Q N N u u 4 q =.g.;.R ' ' ) ' o._ 1.j.2.1.Z.I.i.t.| p 8 r : : a A a = . . 9 4.V.3.z # + % % = # @ = ; 9 r b S Z z i s A P Y Y U S J Y S S Y A b n M P 8.^.8XE.q.3.4.8.>.>.r.Q.S.5.u.u.<.r.=.n z q q q 0 q z M u - = 5 9 5 2 = = = o . . ", -"5 # . . . . . . O . . . . . . + = = # = = 2 5 5 r u q q - - 3 9 s R P z A ;.1.x.v.v.x.e.e.q.1.t.V.j._ A z 9 + + 3 q i i v A Y S b c p p q 3 # o . . o = = = : 9 5 5 5 3 # $ o = @ o + o = u t 9 r r t r J r.u.s.v.u.3.e.4.' ' 5.1.' _ ` ' j.7.Z 7 e u c C B A ) =.,.' ,._._.A.A._.A.h.C.D.D.p.` H K Q ` W ,.3.,.p.p.j.D.j.j.B..X$X.Xv.Q w % X X o . . + = 4 u 5 = % 7 u 7 . . + + . . . X X . . % 2 & + = $ 3 9 5 $ 8 E R.*X=XlXVXVXCXBXNXZXxXeX/./.}.R.%XBXSXZXZXNX@XW. X@XeXaXCXZXCXBXNXBXBXiX*X{.c.m 8 - 8 9 = $ = = 2 = + . . . . . . . . X o . . 7 c 5 % 2 7 5 - + + . . . o % . % u | S.}.OXS.j.n.M.A.f.p.7.3.<.^ Q Q Q Q K -.f.D.D.x.B.A._.p._._.j.` ,.=.` W C B C N l 7 l ) j.a.) _ ' ,.5.<.^ { e.8.>.i.k.r.r.2.f r r r r 9 t 5 + + # o @ = . + = 3 5 7 5 3 5 - = * @ . . . 2 5 9 u i b M J Y Y Z z q 5 * # 2 q z A | i.C.4.3.4.y.y.h.V.Z.u.1.| m f R A 0 q 5 q q z z i u 9 3 - = * = = 2 + . . . ", -"3 o . + + . . . . O . . . . . . X o + o + = + + # # = - # # # - r m A U n S ' ' ;.;.| Y A n b S A b u - = % o % : q 5 3 5 5 5 5 : : ; * @ @ + = 2 5 5 5 5 5 5 * = + = + o @ + . + % 3 5 7 5 - t i p r f .e.r.g.9.' 7.4.=.=.;. .o.( W W 3.f.,.c 4 e N N B C C S ` ,.Q Q 2._._._.A.B.B.B.F._.F.A.A.6.Q J ^ 2.p.<.,.p.A.D.A.n.D..X0XfX.X4.S e 7 7 1 + . = = = 5 7 + . + = = + + + o . . . . . + * = @ + # - 5 8 0 P i.~.*X).pXZXNXNXZXCXNXtXeX/.c.Q.dXVXCXZXZXCXCXxX8XM.T.XX$XyXzXCXBXMXBXZXiX(.*X}.e.m 3 9 5 $ $ $ $ = , o . . . . . . . . o + = 2 = o . = 7 5 3 # + . o % & 5 4 u Y u.%XyX=X~.E.S.M.D.f.7.6.7.f.1./ Q Q p.F.F.A.F.A.B.v.A.A..X$XA.o.o.o.,.` Q W f N C N 4 7 Z p.j.` Q ^ ^ ,.<.' ( .r.1.| r.s.4.1.! a r p c r : 9 e 5 & % + o + o % = = = = 3 3 q 3 3 5 3 = + # @ # = 2 5 5 3 5 3 2 = 5 e 3 = # , , q i n P A B B S ) <.<.>.| ) A V U S b 9 * = @ $ = = # # = = + o o + o . . . . . ", -"o . . O . X . + . + . . . . o $ + + o . . . + + # o @ # @ @ o @ - 9 i i r 7 5 u 9 3 $ # @ $ = = 3 2 + + + + . . . . . o # # = = - = 5 : 2 5 5 5 3 2 = 5 2 = # = = # = + + # + . = A J 5 - u B a w V / ^ _ 1.t.u.g.p.=.J ^ ' _ ' ` ( ^ ,.7.J l 4 e p f f A ` ( Q ,.,.,.` p._.wXF.j.N.B.D.A.A.A.B.N.7.Q ) <.3.5.p.p.j.M.D.D._.$X0XxXdX_.j.,.N x u = . . # = = ; 5 = o . + = = + . + o o o X . + * ; 5 - @ * = $ 3 3 b q.J.!.!.(.eXNXZXNXNXkXeXeX(.i.Q.kXcXkXjXZXVXxXkXkXcXuXP.l.OX&X;XzXNXVXCXNX#XY.~.R.c.| 0 3 - 8 $ = * 3 q 3 @ . . . + . . + . = = = . o # 3 5 2 3 2 # o % 1 e l Q 7.j. XxXkX;XOXQ.W.D.D.j.f.y.y.4.;._ =.7.B.A.A.A.A.A.j.f.B..X0X_.2.` ,.,.,.` X.` C p N c e e p W 3.o.` ~ ` ` ` ^ J ^ 3.u.g.b.k. .Y ' ( a t b f r * u ^ a + O % + = o + + = = = # 3 3 $ 2 3 7 q 3 3 = - - - = # # # o . . . . . . + o # - 5 3 * = % % = 5 q r 9 5 p c u 5 * o @ o # # # o . + o o . o o + + X . . . O ", -". . . . X . . . + . . O . . . . . . . o % % o + # @ $ = # $ = 5 u q q 5 : = = # # # o o o . . . . . . . . + + = # = 3 2 3 5 9 5 5 5 4 = = = = = # = = + o # # # 2 2 + + + + o B 4.U - p ' ` y y ( .! ) _ >.U.D.5.J c r b _ ' ( o.^ ^ J c e e e N B C B ( ( W W o.,.,.p._._.7X.XD._._..X7X7XF.^._.3.^ ' 5.j.j.A.A.D.D.D.$X&X0XlXcXdX&XA.W e 5 @ o o = = = = * * + + X + % O + . + X X X + e z s U 1.8.I 8 8 9 8 8 U u.L.R.(./.^.8XNXNXyX#X%X/.i.(.VXZXCXgXkXnXZXcXxXcXAXAXhXS.a.+X;X*XsXVXkX#XY.~.~.Y.I.w.n - 8 8 $ i ~ ..{ P z i 4 . . + . + X + % + o # o # = $ = # # @ o o * e c ` ^.0X0XlXdX&X%X XE.D.D.A.p.B.N.4.' ) j.F.F.6XqX0X.X_.D. X.X$X'.j.2.,.,.,.Q W ~ W f B N x e e p N ` ! ^ ` ,.,.` c e v <.M.Q.M...| | ' O.^ r d U J 9 5 ' 4.a o . + o = = 2 # + + + + # # 2 = = - 2 3 3 7 q 9 9 5 3 5 2 = = + + . + . . . . . . o o . @ $ = = ; 5 5 u q u 3 3 # # , , + + + + % o + . . . . . . . . . ", -". . . . . . . . . O . . . . . . . . . . . + + % o . . o = 3 3 - 3 3 = - ; 4 5 : 3 - 3 - $ - - + . + . + o = = = = 5 5 = = # = = = - = = # + = % # = # # @ + + + + + + 2 5 1 . a | s._ b J _ ^ S / .b B ' 4.r.g.2.Z u e 5 c J J S N u t Z N c e e c a B J o.` C W W ` ` <.9.n./.tXjXjX0X6X0X7X6X0XdXm.) T ,.p.p.j.n.m._.|.&X$X0XlXlXdX&XT.f.W * . @ o o o . o % + o o + o % % % . . . . # u c B ..9.X.#.@.L 8 ; ; t } M.Q.OX@X^.E.E.XX(.Y.(.E.w.^.nXZXCXZXCXzXnXCXjXcXCXAXAXSXxXb.r.}.XXY.oXE.E.(.~.oX#XY.Z.] 0 8 - n ] @.[ @.8.| M M e . . . + % % + + . . o o @ o o @ # . + o 5 Q v..XjXjXkXuX%X@X$X/.S.D.v.j.p.y.-.Y ' F.qX.X6XeX0X9X9XjXjX9XD.j.1.( ( _ ^ W W [ o.S B N u e 7 l Z Z u p C W H Z e 4 7 u _ g.g.2.| ^ c C <.` U { / A B | 5.^ 9 . . 5 7 = # + + o + + # # = % + + o # = = = - 3 2 = = = = 5 3 = # = + + . . o o + = : * = - - 5 5 = 5 = * 5 8 - , 5 5 # o . . o + . + . . . o . . . . . O ", -". . . . . . . . . o o O . . . . . . . . . . o . o . o o @ @ # o $ # # # = = $ = - = - # - 3 3 # o + o o o o * o o = = = = = $ # = = # + o o o o # # + o o o o o . + + o % . # M T ] i. .B ^ V C O.o.Y B w b 1.g.x._ e 4 p u p Z D Z G Z S J J N p p Z Z N Q o.^ C S Y ^ ^ ' v. X X@X8XuXaX7X#XeX8X8X9XD.7.,.<.5.f.j.n.A._.}.&X X$XjXjXfXzX$XM.5.t @ @ @ o o o o o @ o @ . . . @ $ 5 q q c Z C z / 0.m.P.{.P.0.d 8 s E @.L.oX@X+X{.(.}.%X=X(./.u.V.sXZXZXZXZXZXMXsXzX;XfXSXZXAXSXSXrXr.x. X%XeX(.(.(.-X).*X!.d.@.L y 8 R x.].|.L.k.q.P z J Z l q 7 = + o o + o @ o @ . @ @ @ @ # + = B 4.D.dXcXjXkXaX%X@X9X$XS.M.j.A.B.j.<.=.f..XqX8XeXeX7X8XaXaX6XOXOX Xp.~ ` _ ~ ! W [ ( C N N c c c A Q J H Z N l N N u u e 4 i ;.v.v.| s u A ` 2.X.S U S V 4.j.' Y i @ o + + . . . + + . + + % o % + % o + % @ + # # = $ = = 2 = o + o o o + o + + = = = = = - = = = % = = $ $ $ $ @ # # o . . . . . . + % . . . . . . . X o ", -"+ . . . . . o o . # # # o . . o . X . . . . X . . O o o . @ o @ o o o # + # # # $ = - - - - # @ . X . o . o % * % # # = 2 = # + # # + o % . + + + . . . . . + o . . . . = n _ E 8.b.4.S ) ` / .~ U b r ) h.r./ r % ; 4 & + + % % 4 4 7 7 e w w 4 p N p C ( ( C C ! ^ T ` p. X&XrX7X%XuXlXtX=X7X@XF.B.f.f.5.t.j.m.A.'.|.|.+X&X.X0XjXzXcXzXE.e.R 8 @ * # + # # # # o + % * 8 i n M A z Z :.t.4...J.:XdXfXfX+X#.L P P } J.oX~.{.-X{.].XXeX%Xi.2.^.lXZXDXDXZXZXBXpXlXMXNXZXBXBXSXSXaXc.1.c.eX&X/.~.).!.!.oX{.J.I L L L l.:XdXaXfX8Xg...4.4.*.M z Z H N u = % o o @ . @ @ @ @ @ @ = e _ s..XcXjXcXuX#XoX=XrX;XOXS.j.n.j.5.5.h.f.B./.7X7XeXsXjX0X$X&X0X&X_.,.` / ` ^ W W ( ( N p N u 4 4 e 5 7 e e % % + % + * 4 = * b 5.j.t.C q B S ~ ./ ' A H h.v. .Y Y q o . . o X + . . . . X X O % + X o + % # # # # # # = # # + @ = = o o o o . + = 2 - - 3 - = = % + = # o o o # o o o o + o . . . . . . . . . . . . . o + ", -". . + . . . . o + o # o o . + + . . . . . . . X . o o o o o o # # o @ o + = $ 2 - - - - 3 - # + o o o o o o o = = = + # = = # o @ @ o o . X . + + + . . . . . . . . . + 2 i Y U P >.M.5.S S / ] ^ V p - u A V B r * % * * % % + % % % O & & < w e e c Z p F ( [ ! ! S ^ J ` o.n. X@X%XaXaXdXfXyX#X7XC.=.5.7.' R :.v.S.'.].OXOX&XOXXXrXfXhXnXuXb.1.A - . @ # # - $ # # 5 u b S A B z i z A ;.4.x.(.=XyX;XtXyXyX&XJ.J.w.@.c.*X+XoX{.*X].Q.XXu. .S.9XcXCXZXZXSXZXBXNXgXNXZXZXZXCXCXZXsX@Xk...b.}.E.(.*X*X!.*X}.d.} 0.K.'.:XdX;X9X9XaX$XW.x.:.T M i a c B C Z b p ; @ = @ - = @ @ @ 8 R 8.U.dXcXfXfX%X~.*X%X$X$X8X XD.f.=.Y ;.7.7.4.D.@X@XaXfXaXaXtX$X].'.a.( ` _ T S C ! ( ` N x N x l u 4 % + O O & & % % + * * * * @ i U C B 9 - p C ( .` B Y h.j. .A Y V q = . X . X . . . . X o % % o o o % % + + + = = = = = # @ @ @ @ o % o o + . o = $ - 5 = = = = = # o . o # , # o o @ . . + . . . X . . . . o o . X . + ", -". + . . o o o . o o o X . o o . + . % + % . X . . . o o $ o o # # # # + + # , $ = 3 - = # # # o . . . . o % o % * * o + # + # # @ o o + + . . . + . . X . . . . + o 5 q c Y ^ U <.D.y.M a B ! U t : y ^ ^ C B w ; ; * * * = % < < % O O O > 4 e w e Z W Q o.( ! W C ` =.` ,.j.D.E. X X%XrXsXkXaX0X.X7.;.;._ T / f.T.'. X.XOXXX}.XXrXjXcXVXcX=Xx.| a * = = - - 9 h M A Z b n M b b a a Z :.i./.rX#X*X:XyX;XfXrXR.J.K.d.0.E.*X{.~.XXXXXXx. .v.%XtXkXVXZXSXZXBXZXfXtXlXZXZXSXCXZXnXsXeX@Xr.| L.@XoX!.).-XoXz.8.J.K.J.!.:XgXdXdXtX%X8XeXZ.u.:.M c a b B d d C A Z z t 9 * * * @ $ f ..J.rXcXcXcXpX&XXX@XoX}.]..X^.D.<._ T R :.;.B.7X0XaXfXuX0X.XOXOXM.m.s.o.` _ T S S S ` ' H C F e 7 e = % O O > O & % * % * - ; * = t J U / U 8 8 y ^ U B c T V.V._ V / ) z q 3 o X X . X X X . o + O % O o o o . + o + + @ @ # * = * @ * o . % . . . + o # = - 2 5 5 = = = # o + # , $ o $ + . o . o o . . % o o o . o o . o + ", -". o . . o o o + . % o . . . . . o o $ @ o o o . o . . o $ o $ # + + o + @ # + $ # $ # # # + . o o . X . . % % @ @ @ # @ @ # # o + o o o o . . . X X . . . . . # 7 i P S m b _ v.j.) z a W ` ! ! .o.! W p ; * * ; ; : ; ; & % + X O O O & 5 & ; p W Q ' W V I ^ ` =.' ,.j.D..X6XOX(.XXeXqX7XqX7XB.3.| =.=.Q .z.(.eXeXY.~.XX$XtXkXMXMXBXVX=Xw.P 8 @ - i Z V Z B z p c n b z a d a n >.v. X8X*X:X:X;XtXtX(.J.K.[.K.d.d.K.~.~.P.~.R.>.i.eXrXuXNXZXZXZXZXZXCXpX=XsXZXZXZXZXZXVXpXuX8XE.:.r.oX!.!.).{.J.0.M.}.!.K.J.).pX:X:XdX;X%XrX].j.=.Z z b p m B b i a z Z C S d e = # 9 R k.:XBXzXxXlXsXrX@XQ.R.!.tXrXE.r.! ` ' =.2.3.F.qX(.@XqX0X.X^. X6X_.A.a.o.' <.` ! W C W ` Q N e 4 w 1 O O & O + O % ; ; ; : ; * * * ; y C ( o.{ ! S ` S p v ' Z.x.P a Z Y B t 5 % . . X X O . . X . % o + + + = o + # o * % o * % . . . . . o . . o # # $ o @ o + # # + + # # # + o + o . o @ . . . . . * o . . . o o o ", -"X + o . . o . . . . . o o % + o o . . . . . . . o o . . o o + + + o o # # # # # # # # # + + . . . . + . . . o o @ @ @ # o # # + # # o o o . . o X . O o 5 i i i b n U y.t.Y u w B ! [ [ X.( W f ; * * * * * * = ; w e q 2 + + + + = = 5 p B Q ` ( ! ! W o.' ' <.m._.6X7X&X(.E.7XtX7XqXqXF.f.3.` =._ ' k.~.tXpX*X!.OX X@XtXNXNXNXNXNXiXJ.../ A m d m m C _ ' ' ' / ^ Z m V ;.x.S.$X;X;XuXyXdX:X(.J.i.K.[.K.K.d.i.J.!.}.{.i.] Z.%X;XuXgXZXZXZXZXZXVXsXrXtXCXAXBXZXSXVXfXsX8X@Xu...L.!.{.!.J.J.J.m.L.K.J.d.J.*XdX:XyXtXrXtX XV.y.T B z A T T _ | ' R V m d B C U / 4.R.dXBXBXBXCXlXrX(.Q.Q.Q.oXsXtXQ.a. .` Q ,.3.B._.qX7XeXaX.XE.^.7X$X X_.9.` ' o.` W ! ` <.o.C c w & & O o . . + 2 4 e w * ; * * * * ; = w B [ o.o.~ ! ! f : l _ h.u.J d p t i u - . . X X + % O X . + + + % # o * % % o o o . . . . . . . + o # # # = # o + # # + o # + + o o o o . . . o o o . . . o . . o % @ . ", -"o o o o o % . % = = o o % + + + o . . . o . o o o $ . o o o + # + + o + # # # # o $ # o o . . . . . . . o o . @ o o = # o o # # + + o . . . + + O . . X . # 9 8 a Y J T e.4.H e = p ! { ~ [ ! a ; * ; t y r t 8 8 y a u u M Y J v u u l Z Q C U <.o.C W ! o.' ` ' g._..X XD.S.F..X0XqX6X2XF.B.Q H Q ;.2.a.T.rXgX:X'.].OX@X*XsXNXNXZXNXNXuX@XQ.$X8X8X9X7XW.l.S.D.l.>.| _ V :.C./.W.].%XyXfXiX:X+X*X*X!.J.K.z.r.c.~.~.Y.!.}.w.R x.oXyXfXzXBXBXZXZXZXNXlXsXsXVXSXZXBXBXhXfXfXrX@Xw.T b.!.!.!.~.K.0.d.K.K.K.[.&X;X;XyXdXiX:XOXS.E.E.j._ U .:.q.Z.I.c.k.Q.@X%X%XOXXXXX8XfXCXBXCXxXxXtX(.@X%X@XQ.;XkX#XV.t.2.^ S Q *.A._.^.7XtXqX2XE.C.S.]..X_.f.o.Q ' o.~ W ! X.X.W W C N e e u M Y A z p p p e : w r r t 8 ; ; w f X.[ ! ! W r ; c Q f.5.^ J C i r : o X . . . . + % % % % & % + # % 2 = o % o o . . . o . . . . + # @ # = # @ + + + + + + # + + o . . @ o . o . . . . . . . + + + # o ", -"o o o o . . % * = # o + = + o o o . . o o . . . o . . $ $ + + + = # + # # # o o @ + # o o . . . . . . . . o . . o # = = o o + # + + # + . . + . X X O X X . 2 q i b Z B Y 5.:.v e 2 * 8 f f y w ; * r d y d y t V / .<.2.t.V.E.^.u.J c v Z A N ` <.^ W ^ ^ ` ' ` <.e.n.m.A.D.F.F.F..XqXF.F.F.p.Q Z Q ' :.2.g.~.iX:X+X&X+XQ.~.eXsXeXiXNXZXCXuX$XOX$XXXXX0XtXrXtX8XOXR.a...t.Z.XX XM.l.Y.yXdXyX;X;X{.*X=XP.z.K.Y.!.Y.).!.!.J.] >.Z.~.iXpXgXZXZXBXBXBXNXpXgXlXCXBXZXZXBXcXfXdX%XQ.i.T r.[.!.{.!.!.Y.J.J.J.K.-X{.*X;X:X:XdX:XT.v.U.XXXXb.a.1.i./.oXeXiXeXrXoXXX}.XX}.%XfXCXCXNXtXeXsX(.Y.}.$X&X&XfXuXE.t.4.' ^ S F K A._.D.6X0X6X^.F.D.S.M.A.j.p.X.` ^ ^ ! W W ` ,.Q C S v p c =.Z.^.E.k.e.1.o.( ^ a t y d f t ; * ; p f a p w ; ; p K 5.1.C a c a r 9 = X . + . o X % + % + + o . + = = o . . . o % . . . . . . . o # # # # # + # # # # X + # # # # + @ . . . . o . + + % + + = % + ", -"@ o + + o o o = # o o # # + # + o . O . . . . . . + + + + . + # o + o + # 2 2 = # # # o + . . . . . + . o o o @ o + o + o + X X + + X . . . X + . . + X X O , z B Z c c ^ u.;.a e - * * ; 8 8 ; ; ; y y y m P U o.1.8.j.V.h.u.V.I.y.T u Z Z N N S W B C W J _ ;.,.:.e.D.D.F.D.F._.F.6XqX^._.A.&.Q x S / ;.;.;.r.oXyXQ.M.}.*XiXiXiX=X*XtXsXxXlXjXfXkXpXuXuXyXrXoXY.(.!.J.d.r.c.z.s.s.m.M.{.-X;X;X;X].R.+X}.P.!.{.=X*X(.!.!.L.E >.Z.~.fXNXNXNXNXBXBXNXgXpXpXsXNXBXSXBXMXNXfXdXtXY.u.R 8.!.!.!.oX=X=X(.K.K.{.!.K.oXyXyX:X-X].M.z.0.a.z.d.s.d.L.!.!.!.*XyXyXdXdXgXzXgXlXzXkXuX%XXXeXsXsXiXOXU.U.%XdXY.#.>.;.,.Q Z F Q N._.F.F.wX6XF.F.D.D.D.^.V.3.o.o.` ` C W W W Q C N c V b z 1.V.Z.i.k.z.M.s.O.9.o.U C C y y p ; ; ; ; ; ; ; * : 8 A 3.1.C a c B Z i % X . o X . . X + + + + . + . o o o o + + . . . . . . . . + + # # # # = = 2 + + + o o # o o o . o o o . . . . o o o o + # # + ", -"o o o + % o o o + + + o o + # o o o o o . . @ + + + + . + # + o # + + = # # # o + + + o . . . . + + . X . o @ o # + o . . . . O . . X X . + O + X + . . X X . $ b v p c p J 4._ a r * * : 8 ; ; w ; y C ! ( | >.4.u.x.Z.Z.D.E.c.Z.E.V._ Z b Z C B Q ` ^ W W P ' 3.:.3.4.C..X^.F.^.F._.6X2X6X_.p.p.$.j W _ ) ;.4.s.z.OX@X~.tXiXgXNXsXsXsXtX*X%XrXfXVXCXlX;X].R.~.~.~.*X{.{.P.i.8.#.d.P.'.'.P.!.{.oX}.P.P.T.~.~.~.!.{.!.{.K.J.z.] >.E.}.iXlXNXNXNXBXBXBXNXiXiXsXZXSXBXBXBXVXkXuXrX Xx.R 1.K.z.R.{.{.{.!.K.~.R.P.K.!.OXOX{.'.T.!.P.z.d.a.a.z.Y.-X*X[.!.!.!.R.OX:XzXBXlXyXrXoX@XrXfXsXNXNXsXuX%X].&X'.s.w.8.=.` ` Z x *.6.N._.6X6X_.F._..XD.^.^.j.3.,.<.2.` S ` Q Q Q N Z C s b S 1.V.C.C.Z.W.U.M.x.g.s.1.o.o./ I V y : ; : : ; ; * ; r B =.1.V a i N B i + X O O X o X + o . . . X . . X . + . . o o o o + . + . o # . . . . . + o + + + + # # # # # + # # o . o o o o @ . . o o + o + $ = o # o ", -"# o + + + o + + + + + o . + + + o $ o o . . o . . . + + . # + + + + + = # 2 # + o + # + + . O . + + + . + . # o o . . . . . . , , 2 + + + o . + . . # i a r r a _ 4.U p r : ; * ; * ; : w f [ o. .r.U.W./.W.b.V.D.E.Z.x.I.x.%.B B a f B Q <.` Q ! ^ ;.4.-.3.7.y.A.F.C.j.j.F.2XF.F.B.p.,.Q N N _ .' X.#.d.P.uX;XiXNXNXMXNXsXlXNXiXeX=X}.;XNXxXrX}.}.%XiXsXpX:X|.J.i.d.m.L.R.'.'.m.J.L.U.L.P.P.J.Y.!.K.{.!.!.*XK.@.0.E 8.E.XXyXsXNXNXNXCXZXCXVXkXsXNXVXZXZXBXBXNXlXpX=X Xv.R 1.c.w.J.{.'.[.!.K.!.L.M.'.P.P.M.m.P.M.Y.!.P.P.z.9.0.!.*XiXgXgX:X{.].OXyXBXgX&XoXrX&XyXxXxXNXsXsXNXlXeX;X&Xm.d.9.' =.| Q v N $.6.p.A.F.F.F.F.B.B.D.F.D.f.4.=.<.2.o.W Q ` 2.` W B B V B B :.B.x.C.C.W.U.v.l.W.].T.v.e. . .~ y : ; ; * ; * * ; r p _ 2._ p 9 r a e . X o o O + + + & * % . . X X . X X X . + % o . . . + & o . . . o # + + o # # # + # # . o # # # o o o o o o O . . o o o o o # o o o ", -"# # + # o o + + # + o . o o o + # o . . . . . . . + . + + + + o o o . . + . + + o + # o . . . o X X O . . o . . . 3 i u 5 3 3 = # o o . X + # 9 u r a n ...V i t 8 @ * : * ; ; y ! 2.k.W.XX~.OXXXS.j.v.^.^.I.x.C.N.T V ( ! p C W ` Q W ~ ( ,.-.*.3.B.N.7.7.7.f.h.B.A.A.B.p.3.p.Q k W ' o.8.e.d.d.i.~.tXtXsXNX=X*XMXCXNXfXgXzXhXMXiX*X+X&XOX~.=X:X*X).c.#.0.z.P.L.].].P.P.'.P.M.M.b.L.Y.P.K.[.!.!.!.*Xd.X.} I @.T.oXrXkXNXlXNXBXZXBXzXkXkXNXNXNXZXBXNXMXgXgXrXQ.c.E / 8.@.J.{.K.'.!.P.L.P.R.].P.K.n.m.P.P.J.K.].P.U.K.0.@.J.*X*X:X|.].&X:X|.:XgXxXlXgXhXzXVXVXiX{.iXNXsXyX;XR.s.k.k.q.8.8.` N N ,.N.p.N.N.A.A.B.j.5.f.y.7.B.y.=.K ,.,.` ` Q ` ` Q B a U _ Z :.C.C.I.E.Q.E.j.g.M.XX].XXOXW.e.| C 8 ; ; * * 8 * r p r C .R z i r y 5 X X o o o % % & 2 4 4 e t r * X . . X X X . . . . . . . X + . . o # o o o # + o + + $ o o . o o o . o o o . . . o + . o # # @ # o o ", -"# + + + + + o + o o o + o o + o . o o o . o . . . + O o + # o X o . . @ o = * 3 # # # $ # . . . . . . . . . . . . 2 7 7 5 2 2 A -.4.;.S u 5 - - - 3 # o X 5 z u i d / .B 9 r 9 ; * ; ; 8 w t 2.R.OX@XL.W.Q.M.j.l.v.b.c.Z.D.C.B.:.A R Y c N W Q Q W Q Q Q Q Q ,.p.7.3.3.t.D.^.^.6X6XF.7.=.p.-.H ) ' 8.e.r.K.P.U.I.~.iXfXdX:X*XrXBXZXBXMX:X-X).{.!.oXoXY.!.!.-X{.d...r.z.z.L.R.!.Y.[.'.L.R.XX'.T.T.M.J.P.!.!.!.{.R.} ~ I P } L.+XrXuXNXlXsXNXNXNXzXdXfXkXxXcXBXzXgXgXfXyX;X}.M.] I ] E #.*X}.R.Y.P.M.M.L.R.L.].+XR.P.P.P.K.~.R.m.z.J.#.@.K.{.-X!.Y.!.-X{.[.[.{.*XgXMXCXBXfX%X|.:XfXkXrXQ.T.L.T.I.k.0...| =.K -.7.,.j.2X6X6X^.E.C.e.,.,.7.7.,.K Q ` W Q W S W N N a S ^ J 7.C.E.E.C.C.Z.v.g.g.v./.E.U.@X].S.{ w ; : * * * ; w r r U ;./ n 0 t a 3 X . % 3 : - = : 9 Z ' :.:.| z + + 5 q q 5 # . . . . . . . . . . . . o = # # # 3 3 = # o . @ o o o o o . . o . . . . o o % + o o # + + . o ", -"= # + + = + o + # + + # + o . + . o o $ o X . . + O . . X o o # $ # = = ; ; = : 5 # # # $ = 9 z P R U T ) J u # . # 5 z T T T :.<.-.-.=.=.S S ^ ' ;.:.q.E G b z 9 , + . 5 u r t m . .m ; : 8 * * $ * * * t 1.T.}.R.z.L.T.P.v.l.g.i.x.V.D.A.V.B.:.A B c N N C =.,.` Q W Q ,.` o.3.3.f.F. XeXtXuXaXqXC.t.t.*.J ) | 9.0.z.R.L.J.T.}.gXCX:XoX=X;X;X*X|.:X-X-X-X-X!.{.{.{.).{.K.J.0.0.z.P.J.L.!.{.!.R.'.P.~.}.M.T.P.d.L.P.P.R.{.K.d.} E P R g.Y.eXtXtXsXNXNXBXVXVXVXxXkXxXVXBXBXzXNXzXiXrXrX$XY.0.P I ~ @.K.~.R.T.M.'.M.z.m.l.L.%XXXM.P.'.}.}.R.z.J.K.d.#.@.J.{.{.oX{.{.[.[.-X-X{.*XoX%X;X9X;X&X;XNXSXfX XL.J.J.K.x.0.#. .T H -.7.j.^.wXwXaXaX7X(.Z.4.:.-.3.,.=.Z C ` o.<.` C c N c f C 7.B.C.C.E.C.C.V.h.l.b.U./.U.U.@X+XU.} w ; * * * - * ; * 9 U 1._ n i a c 2 + 3 u z b A <.e.<.=.;./ R P _ =.-.-.:.-.R / Y i : + . 2 l T / Y Y T S r - - # # = 3 - - - * - = # $ = + o o . . o o o . . . . o o . o o # o $ . ", -"$ + + # + . . o + = + + + # o + o , , $ . . . O X . . . o @ # @ 3 9 u u r u 9 - 8 q q q u n Y T :.:.C.0X6XW.f.x . 3 S 4.%.T %.=.` S ^ =.| ^ _ / Y _ 4.q.y.C.C.:.H z = = c t p b ' .f 8 9 : * * ; ; * ; s 9.U.E.XXQ.b.s.k.v.m.C.k.i.x.B.B.i.q.B a B N N W W Q ,.` W Q ` Q ,.p.5.f.D.7X7X7XtXyXtXrXL.q.7.:.) ) 2.e.0.L.L.J.J.{.:XfXcXgX+X{.oX:XyX:X:X-X{.!.K.K.K.!.{.~.!.J.@.@.#.d.R.L.b.L.~./.Q.b.x.S.b.d.d.a.z.L.K.'.P.J.z.d.@.L s s 1.S.@XeX).iXNXNXBXVXMXNXlXkXkXzXBXBXBXBXxXuX8XrXXXx.] s 0 L E #.J.Y.P.].'.P.a.d.k.r.V.S.l.M.].}.R.z.M.T.P.0.#.#.@.K.{.K.!.K.K.K.{.*X-X:XrX:XyX*X}.}.-XzXzXyX&XU.J.J.J.x.e.1...R *.3.6.7.^.eXaXtXaX7XqX6XF.p.p.7.' Q ` ` W ` ` ` W x a B B p J 7.y.N.x.x.i.Z.b.v.l.k.k.U.XXXX/.V. .p ; ; 8 * * - 8 8 9 I o._ b i z p # . 5 b T :.V.B.7.1.' ` ` ) _ ' ;.;.T Y P %.| / o.:.B = + G h..X0X8Xx.| =.E T b 0 u q 9 - - 5 p t i i 5 = # @ o o . . . . . . . . = , # o o # , $ $ ", -"= + o o . + % = + o o o + % o . + # $ o . . . + o . . . o # - 5 9 5 5 q 0 i i M A M n H =.;.R T q.^.rX0X7X.X-.# 3 _ q.:.P n R ' _ ^ :.4.4.e.4.<.;.1.y.C.^.^.E.y.Y 9 X = z z t s ` _ B t y 8 * * : 8 8 - i ;.x.b.U.XXXXz.l.S.U.E.C.I.i.t.w.u.y.S w d d p N W Q W W W C W ` ` ,.h.A.F.6X2X^.2X7XaX7Xg.' =.*.G W 1.r.b.U.z.L.J.Y.+X+X;XzXgX*X~.!.:X:X-X!.!.K.d.d.K.[.!.J.J.K.d.#.0.#.z.R.Y.I.V.h.y.e.V.S.V.s.X.a.n.K.J.K.!.K.d.I f 0 s R R 8./.#XeXeXiXNXBXBXcXNXxXfXNXNXNXNXCXxXfXtXrX7XT.| R R 0 y f @.z.P.R.P.n.d.+.#.#.r.V.T.g.e.r.v.b.L.R.R.d.#.w.d.d.K.K.J.K.!.L.d.d.!.!.~.+XyX*X~.}.;XlXfXOXOX}.L.P.J.m.M.l.r.;.J H ) =.,.Z.qXaX7X^.2X2X^._.A.p.` ` Q N W W Z H Q W a p a c u K y.N.y.q.h.U.Y.Y.U.z.d.J.'.R.c.c.y.T p w 8 8 * * * r r t V | / i i i 5 X # u ) h.F.^.F.y.t.4.,.' <.5.4.1.;.| :.E T m R .4.S . 5 4.^.7X0XrXZ.;.T -.4._ M i B B m s t r 9 - 5 9 - = # @ . . o o . . . . . % # $ o o . # + o ", -"+ # o o o o . o o o o $ o o . . o + o o + . . . o * - - - $ = - : - : 8 r i i n A P M n T / R R q.C./.qXtX7X$Xj.i Z 4.t.:.P _ q.1./ U ' :.| ;. .1.s.W.$X^.^.F.V.q.-.P , o i Z s B ' ` a 8 8 8 @ * 8 8 ; ; d ;.q.e.k.b.I.L.L.U.I.E.E.C.y.:.:.y.y.A r a i i Z N f W W N N W Q ` ` 7.D.B.h.V.F.^.6X6XF.:.P H N Z S ;.x.S.E.S.T.J.I.oX:X%XyXVXBXfX*X*X:X:X*XK.0.d.0.d.K.d.z.L.R.J.s.9.X.#.s.l.V.h._ V .Z.S.u.>.O.#.d.d.d.J.L.t.Y v e t I #.X...E.%X).eXaXsXNXNXzXVXlXpXNXCXVXNXlXsXiXrX=X$Xx.} 8.O.L r c Z _ e.z.z.d.s.a.#.} ..x.T.j.T Z ;.c.b.k.0...8.8.r.L.!.J.J.L.m.n.d.0.d.K.-XiX;X~.*XgXBXMX*X;X;X{.L.L.T.T.S.Z.x._ v M B S Q t..X6X^.F.F.B.f.A.v.2.` ` ~ C x Z W Q B B N r a a z _ 4.y.4.4.u.I.I.Y.I.Z.U.S.U.b.i.w.u.) r ; ; 8 * * * 8 9 9 f X.' d a M q . 7 T =.5.D.^..X.X.XS.a.o. .' ' =._ ^ | 1.1./ R | y.3.t A C.7X8XtX8X/.C.:.T P R / S B A M b s a u 9 - 9 5 - - - - - - @ o . . o + o o # o o o . $ . ", -"+ + + + o . + o o @ . o o . o o o o o $ o $ = $ : : t s b b t 9 : : : u B R Y P J A T ;.;.] ] u.C.^.(.@X%X%X7Xv.) =.y.4.| ;.<.q.o./ Y / ;.;...o.a.S..X$X@X0X Xy.:.q.u.T , i Z a s / ( B 8 : 9 ; * 8 t w ; t | u.y.V.Z.b.U.U.Y.E.Y./.I.y.:.7.7.7.M i B i q p N C W W p W W ! [ X.<.5.4.4.A..X6X^.C.7.T J C C H H _ 4.t.Z.W.Y.K.J.].;X+X].*XNXSXNX:X:XyX{.K.J.z.d.d.J.n.m.b.U.R.P.P.s.n.P.Y.Z.t.R ( s.v.i.8.>.1.8.9.r.8.R V K *.:.y.2.~ @.] / v.7XeXaXaXtXsXlXxXBXNXzXNXzXlXxXsXtXtXrX%X(.u.} } [ ! 1.y.-.=.C A ..r.a.2.9.} } e.l.v.<.Y | c.K.'.P.i.k.z.J.Y.U.J.J.z.P.d.d.z.K.K.*X:X*X:XNXAXgXoX~.=X+XJ.L.T.R.T.g.q.:.T Z A Q Z C *.f.D.(.^.^.B.6.f.p.( o.` W W B p C Q W N u 7 v z i Y y.q.q.1.u.U.U.Y.U.U.E.U.I.J.i.i.i.Y ; * r y ; * 8 8 ; 8 I .U c V A 5 3 %.h.5.1.x.$X0X&X7XQ.v.9.' . .| / / / ] >.>.:.;.g.f.) :.D.8X8X7X/./.E.C.q.T .4.3.W A J W ^ Y b r 9 ; 9 r t b d i 9 : - = $ @ o o o . o o . + . $ ", -"+ o = % . . + . . + o . . . o o # # - - 9 8 8 8 8 8 8 9 s m s 0 0 q p Z | 1.4.T S :.5.1.1.e.i.u.w.^.(.I.XX9X.XA.;.' 5.j.4. .] / / ] ' ' _ R ..r.j.c.Z.(.7X8X$XW.C.i.x.q.n q A B m R .P t : 9 - * 8 t 8 * 8 n :.e.Z.^.Q.Q.J.I.Q.E.E.S.u.q.7.y.>.m p u = 4 c B ! W N W W C ` ` ( ` o.2.t.^./..X.XF.=.B Q W v M H _ :.>.r.M.Q.].T.'.|.{.R.*X=XiXNXiX!.K.d.#.d.0.0.d.z.d.#.X.{ k.U.].].].].b.r.r.L.M.a.9.r.w.>.8.r.9.9.] A ,.j.V.W. Xa.] I L I x.Q.^.(.C.~.sXNXNXNXVXxXxXxXgXlXeXI.E.@X/.Y.u.P I I ] g.W.D.v.g./ A | >.e.r.} >.q.e.9.f.m.m.r.s.m.'.'.].J.L.i.E } #.d.J.s.#.d.J.0.J.K.{.fXlXiX:X{.!.%XXXR.!.{.R.m.9...;.^ Z N B Q Z D 5.^.6X/./.V.4.7.,.` ` ` ` J U C f C A x l 4 5 u u A q.u.q.q.i.U.R.U.Y.Z.U.Y.~.Y.i.w.} d ; ; r t * * 8 8 8 t ^ ' S B S M 8 J B.B.V.V./.eXrX%XQ.x.k.g.e. ._ ` ] . .R R ;.} q.r.| *.3.S.@X$XE.Z.^.c.u.i.x.e.3.<.5.) S ' 5.;.R m t 8 r t d d 0 9 : - - 8 3 - 3 - $ # o o . . . + ", -". % o + + . . . . . . $ . . o o # 9 9 8 - ; 8 8 - - - 9 9 0 i b m s n Y S C U / 1.e.;./ <.u.e.>.:.i.C.V.^.8X9XD.;.Y ;.u.>.1.>.] | . .Y Y R 1.2.2.4.q.V./.Y. X7X^.C.B.V.:.q z S B R 1.~ t : - * * 8 t t ; - m } >.g.(.(.Y.Y.I.I.I.E.l.t.q.%.>.:.a 5 u 7 = 5 4 w p W W p ` 5.e.' o.j.D.v.D.^.D.^.D.Q S =.Q b A M U :.1.1.s.R.}.'.].}.{.:XiXtXeXiXMX:XJ.w.#.a.@.#.d.n.K.K.9...a.M.'.{.P.l.r.k.z.m.P.M.e.] >.w.w.8./ / A Y f.j.f.V.&XjXrX8.L 8.W.(.2XI.I.tXNXNXlXzXxXzXNXxXzXlXfX@Xi.^.(.^.I.| C n.uXuX Xx.g.g.5.S P ] ..w.i.w.1. .l._.M.n.V.v.s.n.'.{.m.d.#...d.L.K.d.0.#.@.#.@.@.!.pXgXiXrXiXMX-X{.R.R.[.{.J.u.8.8.| S A B c Q ,.G 3..X/.F./.Z.C.D.2.o.' ,.X.C B C C x e 5 4 5 e u q V 1.>.:.4.w.c.U.T.S.L.U.Y.~.I.w.>.E a * w y 8 * * - - 8 a / 2.Y b a 9 h y.C.B.C.(.eX/.S.E.t.8.#.1.1./ ^ / _ .o...>.>.| 1.q._ ^ :.W.%X.XM.V.D.i.>...q.4.| ' 3.t. .! U U U Y B B b a t 0 8 8 9 9 - - 5 5 8 $ 9 0 # o . + + . ", -"# o + % % . + . . + X + o o # 3 q 9 - - ; - : - 5 - 9 9 q q t 9 9 i A P S _ { X... ._ _ 4.5.<.| .e.k.j.Z..X0XF._ A 4.t.| >.q.q.:. ._ ^ T | ..9.g.r.t.x.I.E.^.@X0XE.y.N.7.z z A B ^ <._ y r : * * ; p y - - n } ..c.XXQ.Y.Y.Y.Q./.C.1.1.4.>.y.:.b 5 l z 5 5 l 4 p N p p W 3.3.' ' f.j.v.Q.$X.X.Xp.G K ) Z b b M ] r.u.t.w.i.P.'.'.!.*X:XdXdXfXiXNXBXsX*XJ.@.#.l.[.{.|.[.d.a.'.'.-X-X!.{.;X;XoXm.z.W.q.n P P P R A 9 r / g.'.jXjXjXbXjXn.C <.E.Y.U.g.].yXiXiXMXZXCXNXCXCXzXiXpXyXS.v. XQ.b.R I ].nXbXjXlXyXQ.f.C 8 i E E P T P P v.T.n.P.+XpX=X~.[.[.[.[._._.n.K.[.|.'.s.#.#.m.:XlXVXfXpXsXiXiXiX{.P.'.}.J.r.i.k.i.9.U v B B Z *.J Y C.7X6X^.I.V.l.a.o.` ' ` W w a N u e u 2 5 p p t S 4.1.:.4.:.t.I.~.W.U.Q.Q.].U.2.../ i - : t r ; * * 8 8 y ( <./ V n 9 G B.y.y..X9XOXU.E.S.x.0.r.r.8.| _ ^ ) _ .o.e.1.' .j.7.H 3..X8XOXn.f.h.4.| .1.r.:.| / >.8...' / S C B r w r t t 9 8 8 - - - - 8 - - 8 0 8 - # . . @ ", -"+ + o o . . . . O + + . o # - - 8 9 8 : 5 8 - - - 3 5 8 9 t t : - i P R | ' .O.} o.;.;.e.e.1.;. .>.g.j.Z..X.XD._ A 1.4.| .:.4.;.<.<._ _ | 1.e.r.b.E.S.h.C.(.sXlX%XC.N.4.c u Z B U o.` p : r : * ; r r * - m R 8.b.'.Q.U.U.I.Y.x.q.4.4.:.T E E B 5 q 3 = 7 l 4 w y C B N J ,.` ` 2.j.M. X$X.X^.-.G K H Z Z Y | #.#.e.u.i.d.n.m.K.{.iXgXgXgXsXgXsXiXNXSXeXd.M.].[.{.|.m.#.X.a._.K.!.!.-X-X*X:X*XU.E.8.n P P | / 8 * a s.9XcXmXDXCXbXwXn.f o.Q.E.v.S.OX;XiX=XiXNXNXsXNXNXtX;XyXyXOXj.M./.L.I I '.bXbXAXDXCXfX@X<.q $ n E P P n P r.L.{.yX:X*X-X*X{.[.n.n.+.+.+._.[.{.[.P.s.P.zXZXgXfXfXlXlXpX:XiX:X!.P.P.l.x.x.g.9.#.O./ S Z N H Y M y.6X.X^.C.C.h.1.` ` ' C B C N p 4 e e 4 = 5 5 r R | T _ :.4.q.w.I.W.S.U.W.Q.W.v.>.R y - ; 9 8 ; * 8 8 : d ' 1./ A b - P g.j.S.tXlXuX/.h.h.S.U.k.r.y.4.;.^ T ) / o.9.2. . .f.<.Z ,. X$XT.n.j.q.=.=.;.q.f.e.......} ..] | ./ m 5 ; 9 a d 8 8 - - - - - 8 8 9 0 8 5 8 3 $ @ . ", -"@ + . . + . . o . . . # - - 9 9 8 ; : - : 9 8 8 8 0 9 9 9 0 8 5 r n ] E P / } | .. .| .1.:.;._ / 8.t.u.l.^.$XD._ S 4.1.] / / ^ U ~ O.<._ _ 1.8.i.Q.W.M.D.7XaXtX8X^.i.x.y.M - b C ^ <.' y : : : * ; w ; * ; b ..x.M.S.'.T.S.W.x.:.>.' ^ T T T :.' G M q = 4 4 6 w j N c Z ,.,.W ! ' e.Z.S.S.^.D._ K *.Z c Z R :.8.[ { 9.0.J.'.T.J.*XiXiXgXsXgXsXMXsXgXgXiXyX;X|.'.'.n.+.+.a._.K.|.[.!.*X-X-X:X:X+XU.8.P m P _ a : a 4.rXcXcXDXDXCXnX0Xa.y } Q.L.g.'.=X+X;X=X*XpXgXlXlXyX+X*X=X;X&XS.g.T.L.R C M.jXnXAXDXCXNXxX X` r - m T P n P r.'.=X:X-X-X:X-X!.!.[.[.n.n.+.n._.[.[.|.:XrXdXkXlXlXgXlXgXpXyXtXrXY.L.L.P.g.q.1.} } #.| J B N Y -.H ;.F.^.S.C.C.7.=.` ` ,.' B p N e & ; 5 2 5 i x H ;.:.T R T ^ ;.>.>.b.W.S.U.E.b.U.k.| i ; - 5 ; ; ; 8 ; ; C <.<._ n i - U g.g.l. XtXdXtX XS.Z./.U.u.2._ _ .1.<./ ~ Y R _ .g.2.s ;.^.7XW.l.u.4.;.R T ;.<.4.:.| | E } { R I ] U a r r 8 t 0 0 8 3 8 8 9 5 - : - 8 9 - : - - o ", -"@ # * % . . + . . . o 3 r t i i 8 - - 8 - 8 9 9 8 8 t t 9 t d z a J | U I / ] E | R R >.1.| T T :.4.e.u.i.^.7X^.;.T g.u.#.9.a.e.2.9.s.s.o.S / | ..j.D. X$X@XW.^.^.Z.x.x.i.R 9 i C ( 2.<.W t 8 ; * ; ; ; * * d r.b.x.M.Y.'.Y.c.} / | ` S H T T :.=.T T J z 5 # 2 1 w N N p C o.` ( .5.j.^..XD.f.J ) -.H N H Y ` 0.#.O.9.s.m.P.P.K.K.!.*XiXpXpXNXsXpXNXpX{.!.*XiX:X:X'.d._.[.[.[.|.-X(.(.*X:X-X*X+Xz.| m n m d a ` f.^.kXCXcXAXVXxXAXcXd.s @.I.d.j.&XyX:X:X=X*XtXzXzXlX=XXX%X;X:XdXOXg.v.L.I f '.mXAXzXCXVXzXVXdXD.2.S i n n n A ..U.*X-X-X-X-X(.~.{.|.|.[.K.n.n.[.:XgX:X*XT.%XlXsXgXlXMXfXpXtXoXQ.R.J.m.P.m.w.:.4.9.1._ _ J N K =.G H j./. XD.B.f.' W ` ( C p N p ; 2 4 = 7 Z T T T ;.:./ P A ^ R R E ..S.T.E.M.x.i.b.>.r * : : ; ; * 8 8 y Q <.<.) B q i >.v.l.v.S..XW.].$X$X XD.a.;. .Y R 1.g.s.9.9.1.5.2.1.b.r.P 4./.8X/.Z.x.e.q.:./ ^ .4. .T | >.| | T P R / B d a t 0 t z 0 0 0 0 0 9 - * - - 8 i t r 0 - ", -"# = = + + + o . o @ $ 9 i s s t : ; - 8 8 0 0 8 8 0 0 i 9 8 s B Z Z U / ] | / | ;.E ;.| :.q.q.q. .| s.v.V.^.0X^.8.R x.k.8.0.0.a.0.s.a.n.2./ R >. .} 9.v.S.Z.C.E.W.l.l.y.:.H 8 i C ~ o.o.C t 9 : : 5 : : ; * d e.c.k.k.b.U.M.>.E ] .) ` _ *.K T q.:.%.%.J r + # # & 4 7 w r W ` ` ` 5.F.F.V.j.) A J Z x N J A C .#.X.X.9.i.z.J.K.Y.!.=XiXsXsXsXMXNXNXiX[.|.:X:X:XhX|.K.[.[.[.[.|.-X!.~.:X:X-X{.'.z. .B i i t ) p.j.E.tXcXBXCXCXVXZXnXj.y ] r.0.W.=XrX:X:X*X#XyXgXgXgXrXoX%XtX=X;X&XM.9.8.I f ].AXAXcXAXVXcXcXrXW.j.5.A i z i P #._.{.|.-X:X&X+X*X-X-X{.[.K.K.[.:XhXhX:X:X|.%XlXzXMXNXMXgXpXiX=XR.K.[.K.J.r.8.;.=.o.^ Z H H v l H J J 3.C.D.D.V.,.` ` ` C r e 5 2 % & % & c T -.%.:.:.Y Y R / / ( ] R / 4.S.S.x.u.x.Z.4.r o * ; : - - 8 8 i ` <.=.Y v q z R :.y.x.x.W.S.b.U.b.f.<.;.1.<./ .e.s.e.e.r.q.e.2.8.U.u.R g. X0X/.Z.V.9.] { X.1.:.' R _ ;._ T T E | _ U n M n i 8 9 i i 9 0 8 9 9 9 : - - 9 i y t s 8 ", -"+ = = = = = . o $ - 8 0 t 0 0 8 8 5 5 9 0 t t 9 8 0 z 0 - r n A n I / R R / _ Y Y _ =._ %.E >.O./ { f.m.V._.6XD.1./ s.s.O.1.>.8.w.8.1.5.2.>.} ..>...O.g.S.Z.x.x.M.D.v.4.-.A 2 5 B ` e.r. .i 9 9 = ; - ; * * y ;.V.v.v.b.z.1.U R | | 1.4.1.4.=.M v A A b u 2 + # + # 2 7 j u r c c c B =.7.7.=.Q Z x l c N Z H G Z ;.1.8.w.w.w.J.K.K.!.sXNXNXiXiXBXzXsXiX|.:XhX:X:X-X|.[.n.[.[.[.|.-X*X{.*X*X|.&X|.m.1.V i i J 3.t.j.S.7XdXCXDXZXcXCXaXy.s I { g. X#XrXtXrXrX=XtXlXgXiXeX#XeXeXeX*X|.Q.1.I I V S.cXnXcXAXAXBXyX}.M.f.5.,.B i i P a._.[.OX-X-X|.{.-X-X-X[.[.n.n.[.|.|.:X:XdX-X&XkXNXsXMX:XpXNXMX:X!.K.K.J.w.8.r.e.<.^ B H G M c l x N H Q 3.7.y.) z c N x e l p e & + & % + 4 h v D v l A 8.q...w.O. .] ^ _ e.b.b.b.b.b._ ; * : : ; - ; 8 ; B o.e.e.T i 3 h _ E w.C.E.Z.g.c.E.v.e.1.1.:.| _ 5.2.e.q.q.8.O.8.o.O.U.r.S t.F..XZ.x.S.s.] { 9.O.>.T _ _ T U Y / Y U ^ U B M A n 8 - q i 0 9 q 9 r r 9 8 3 9 t y 0 0 8 ", -"o o + = # . o # = - - 8 t t t 8 r 9 8 8 0 8 9 0 0 i u - 9 d V m f I P I / ' U S T E ;.<.4.| ..1.;.4.g.v.l.D.^.D.4.U 0.k.u.f.e.r.u.r.9.1.1.1.>.8.t.s.9.1.f.v.b.c.l.D.U.g.4.T 7 5 B ` e.q./ a ; ; * * ; - * * 9 R g.E.E.c.8.| / / ;.t.q.1.:.q.:.A z z 3 # + + + % + # 2 2 4 4 e e e a N Z H ` N l e l x c D G G M b Y q.k.8.@.z.R.J.J.J.{.pXMXsXMXdXgXdXgXdX[.[.|.:X:X-X-X|.[.K.[.-X-X:X!.oXyX:X:X{.L.k.R m ..g.t.t.x.E.(.!.=XCXBXkXjXtXq.d s ~ b.(.*XeX*XrX;X~.#XiXMXiX*X@XeXeXeX=X+X].g.U y s l.jXcXcXAXzX+X~.T.v.j.e.g.g.| A R s.M.|.&X-X*X[.{.-X-X|.[.[.[.-X-X|.|.-X|.[.{.yXjXsXtXfXgXiXzXfX!.K.K.K.J.0.#.a.x.5.S B Z G G v c l j x l G ) H z N c w e 4 2 2 2 O & + + + + + , 0 n n E q.>.} >.r.4._ ( ;.| r.S./.E.q.B : * * : ; - ; ; * m o.e.1.S q $ t | 8.c.Y.I.v.b.I.x.e.9.e.q.>.' ;.2.2.1.w.r.a.9.9.a.a.l.1.C t.^.2XC.v.C.k.q.1.:.>.1.4.:.;._ U Y U / / U U U B S P z - 8 s z r 8 8 9 8 8 9 : 8 9 t t 0 8 ", -"# o + = o # # = - - * 8 i s t y 0 0 0 0 0 8 9 t 0 9 9 i z s t d P P P I / S Z Y ;.8.:.2.8. ./ .;.<.r.x.v./.6X.X<.B o.| ^ ^ ;.r.r.u.u.s.9.9.o./ >.e.8.a.m. X X%XrX9XXXb.i.:.z 3 u S <.e.2.V : : * * - ; * * 5 M | } E P P ;.' | 4.1.:.;.;.4.q.T R H q # + = = = = = = = 2 6 p l c c c u e 7 e e < & & 4 u c c v S Z U ..0.k.L.m.J.K.J.Y.K.).pXiX&X:XgX|.K.n.|.:X:X:X-X-X-X[.[.|.-X-X:XoX!.*X:X|.P.s...8.8.0.k.e.9.d.z.(.}.}.rXiXdXdX0Xr.L y O.Z.Z./.*X=X=XoXQ.#XsXsXtX(.Q.%XtXeX(.D.S.j./ t L b.0XdXhX:X=X}.XXY.z.n.s.d.x.e.e.4.1.s.].;X:XoX-X-X-X-X-X[.[.-X-X-X-X:X:X:X'.z.S.&XpXyXuXlXyX!.P.!.K.J.z.L.J.d.8.| J H Z v v l 6 2 % % 4 7 7 q r p x x x p q 3 6 2 > = 2 # # # # # h T T E y.w.>.:.1.1.;._ ' ' Y Y E | T c ; % ; * * @ - : 9 ^ 9.e.1.P z ; Z s.c.I.#XrX%X%XXXW.l.e.q.w.] _ 3.5.e.u.i.8.a.f.( U U 1.' B y..X/.D.x.j.t.q.;.=.' :.e.q.4.;._ U P U / R V U V t 0 n q 0 8 0 i 9 9 0 9 : 9 t r r i n 0 3 ", -"= @ % = o * # - ; : ; * : 8 8 9 8 9 8 - 8 9 8 - - 8 0 0 0 t d U / ~ I R / ` A Y 4.u.9.1.' ^ P U ^ Y >.i.E.@X7X^.:.a ! R t t C / 1.w.i.r.r.a.1.o.q.b.U.R.XX&XrX%XQ.W.Q.U.Z.>.q - 5 B _ 1.2.S r : ; ; : ; * = : A | E R E E :.3.4.4.q.5.4.1.q.8.T Y S 5 o + # = = + = 2 4 e 7 u l u e 5 5 4 w e < & 1 1 2 u v Z Z N v A } w.d.l.d.J.J.K.J.J.J.P.dXkXdXyXyXR.d.P.{.-X-X-X:X:X-X|.|.|.-X:X:X~.*X:X&XP.9.a.e.2.9.s.s.a.n.j.W.&XOXyXyX:XuXuXM.I I #.M.Z.S.(.%X%X~.XXrXsXkXiXeX#X(.*XoXQ.T.M.d.] f ] E.jXdXrXyX%XXX+XU.v.d.9.d.k.8.1.a.r.s.P.&XrXoX*X:X:X:X|.|.-X:X:X-X-X-X|.|.P.z.OXyX:XdXNX:XK.J.P.J.J.J.x.z.d.d.#./ M G G v l z 4 4 4 = O < w w 4 e 7 e p u e e e 2 = = = = % + o @ t Y P E w.y.q.q.q.q.q.4.;._ T P R E | M ; % * 5 8 * * 8 i ^ 1.<./ m 9 $ M r.b.I.U.R.~.=XeX#X(.Y.U.i.w.:.5.f.e.r.q.>.;.` b i z | Y i e.@XoX XU.j.>.U S V S Y ;.5.r.e. .R P R U I U U P P z 0 i i 0 $ - 8 0 9 - - 8 0 9 : 5 r - $ ", -"* = = = @ @ = - 8 r r * ; * @ - - : ; * $ 5 - $ $ 8 0 i 0 t s B / / / / / _ J Y :.9.1.=._ T U Y ! S R 1.E.E.Z.D.=.s / ~ a a i V R ] ..r.g.j.f.2.x.b.c.c.U.Q.T.J.M.W.Q.U.l.| 0 3 5 t Y 2.s.' p : * * 8 8 ; @ - n _ ] 1.w.y.y.4.4.q.4.| . .1.8.R V ^ Z - # o . . + = 2 l c x e 6 4 2 4 7 4 & % O O 2 & & 7 l l p N Z Y | ..q.s.z.d.J.L.~.!.I.Y.~.$X&X%XkXkXT.!.:X|.:X-X-X-X:X:X-X[.-XhX:XoX~.%X].d.a.l.a.O.a.g.l.n.n.j.m.'.OXrXyX=X=XjX'.! I #.l.x.x.U.XXoX/.8XtXuXpXuXuXeXoX+X~.W.M.m.m.} L #.%XjX&X8XyX;X@XW.M.l.s.l.k.r.9.<.r.s.9.l.OX*X~.-X:X:X-X-X-X:X-X-X-X-X-X{.{.P.+XcXuX+X*X=X!.K.!.!.L.J.J.z.k.0.0.} R A D z z l l 7 2 = 1 & O < 4 4 4 4 4 4 7 u c c e 2 = . X + % % 5 S T B / w.>.>.:.>.8.q.4.t.e.q.>.| >.T z * * ; w ; * - 8 n <.s. .C u 3 2 Z >.i.Q.R.m.z.b.Y.(.I.k.b.k.r.r.j.M.j.:. .| ^ B a i b .R m t.^.E./.S.o.U A U U Y Y _ ' .8.| R R / ~ / / | R m s 0 i u 0 - @ - $ - - $ ; : ; = = * = ; ", -"= = = * @ $ $ - r d a 8 - $ @ @ = : 5 5 5 - - $ - i a i s s s s A ^ U ` Y U C R ] 8.5.;.J S J A A A P :.Z.C.C.V.' m ( / a y d V f f I U ( o.e.m.M.g.8.#.0.d.d.K.U.W.Q.z.#.U 0 3 - u A | e.| t 5 : * ; - - @ * i / e.e.q.q.t.f.t.q.q.1.2.1.( ] ] ] _ B 5 5 9 * + o o o = = 2 & + & + + < & O O O O + O < e l e N M b n E >.w.g.l.z.z.J.b.J.J.J.d.R.rXoXeXxX&XR.-X{.{.-X|.[.|.|.-X-X-X:X-X-X*X}.P.a.d.m.s.8.r.r.v.M.d.f.j._.&X7X8XXX@XkX9X8.L } s.q.k.E.@X(.(.eXuXuXkXiXtX%X}.oXoXW.r.9.d.} L z.kXuX}.+X+X+X XM.x.j.M.S.l.f.a.e.x.b.9.s.P.OX=X:X-X|.[.|.-X-X|.|.|.|.{.}.{.'.yXlX#X&X&XL.J.J.J.P.P.J.J.d.r.y.:.R P n n M v u e 7 & + + o o X O % & & O O & 1 = & & + + o + 4 5 5 u S ' _ | q.1.1.1.8.w.w.u.h.y.q.8.q.4.Y 9 ; $ : : * - ; 8 A 4.5.) a 9 2 = z / i.E.].'.L.M.x.u.4.8.e.l.S.l.9. ./ C A V d d d t d ( R d q.Z.x.V.x.R S S A R U B ` 1.1.1.] P A / / ^ _ _ n i s s s t s s - - - - 8 8 5 * @ = # * : 0 ", -"= @ o = @ @ @ - 8 d t r 8 - $ * * o * 4 = - - $ 8 i m n m m T E V Y U R T P R / / ] ../ B n P A T T R >.u.g.V.v.Y a S I d B B V I f f ! _ ! S _ 1.g.c.u.s.z.d.a.r.z.E.z.9.~ 9 = 5 t C .q.5.A * ; * ; - * = - 5 V | ..>.q.u.u.g.r.8.8.e.f.e. .^ d q p z z i i 3 + + + . + + + 2 4 4 1 + % O O % + + O O 6 l e c G Z n R >.q.g.c.L.J.z.J.J.i.J.J.L.oX*XXX+X&XOXR.+X|.-X|.|.|.|.-X-X[.|.:X:X*XoXP.a.2.e.s.r.r.r.k.z.M.x.j.m.]. XW. X XtXdXz.I { #.8.x.Q.U.I.eXsXtXyXfXiXiXtX(.C.Y.S.u.O.} I ] }.lXrXOX|.}.}.U.v.g.g.M.v.j.a.g.s.d.r.9.l.].OX-X:X-X[.[.|.-X-X-X|.|.|.|.|.'.OXrX%X(.%X].c.d.J.I.T.m.J.J.R.b.i.q.E P G A H z 7 c 4 % o O O o % O & > 4 5 4 < + X O O X + # 5 r r c C u u B ' >.g.j.w.8...w.r.q.e.w.>.} >.V - * @ * - ; * @ 9 _ 1.<.^ Z u 2 = i | r.L.M.l.9.a.r.r.r.s.l.g.O.I I ~ U I V B f V V C Z / P z ;.V.c.g.e./ A S S P A a I .o.] ( ( ~ U / / ` S P E T s s m f s - = * = - - ; * = + * - 8 0 ", -"= + & = # o = : t 0 8 8 9 5 - - * @ * $ = $ $ 9 t b B n b B ' .] ] I I R ] | .~ C I I s 0 P P n P R _ q.f.v.5.A p A C f B d f V P U ` ^ U P P ] ] 1.q.r.9.a.d.d.b. XS.e._ u - 5 t o.g.0.l.4.p r ; ; : * * : 8 y U | } r.r.>.8.d.k.0.e.2.^ a 5 9 u b B n i q q = = = . o + + & & 1 1 & & % > % + + > > 4 7 l l l T 3.;.=.| ;.>.c.J.U.R.M.P.[.!.P.U.XX@XY. X Xx.U.:X:X:X-X|.-X*X-X-XK.K.'.K.'.n.9...9.e.r.r.i.i.v.v.b.l.s.x.S.].].].dXdXL.] V R e.l.z.U.oXiXpXtXyXpXiXrXpXeX(.Z.l.l.5.U I X.}.aXeXOX|.|.M.u.z.S.v.v.b.g.2.s.s.d.9.1.l.].'.m.K.J.K.-X:X:X*X-X-X:X:X+XL.z.(.E.Y.#X/.J.[.[.[.L.L.Y.R.U.c.>.>.w.} | T M l u u 7 2 > < O O o o % > < 2 = < + + + . . + = 5 0 i i d z i q 9 p B .e.k.r.r.r.....g.0.} ] P 9 ; - = = ; * : 9 n e.r.s.u.S q = = b .0.T.D.M.l.k.8.r.8.#.X.} } I C ` ./ I C f d f a d U B u ) u.V.c.r./ U B V R B 0 f P U U ! ( ] ] R S U ~ / 1.R d d m m s 9 = * ; * * $ # $ - ; : 8 8 ", -"@ = = = = = = : 8 t 0 8 : 5 - * @ @ = $ = - , 5 p A S S B B ! ' / ] U P R R / ( / ~ / ^ f 0 s V Y T ' :.j.y. .` S b C B b n P I ~ .o.^ U P P I | . ./ | #.O.9.g.b.Q.E.q./ r = = - C 9.0.g.2.m r - * * - - : : t A R ] R R >.g.x.g. .V 8 : q b B B a a 0 9 9 p u = o 3 i A V e 2 1 & & O & & > + > > + > 3 z z l Z ^ T A Y ' | E } r.l.M.P.P.K.R.Q./.U.g.1.| P E 1.M.'.'.R.XXoX{.[.[.{.'.'._.#.{ r.k.e.2.>.w.k.v.M.l.V.v.u.b.].'.|.:XdX~...i m :.2.x.+XrX;XuXyXtX;X*X=XeXtXaX/.r.5.' a f 9.+XdX9X].}.'.z.k.b.c.v.D.v.u.1.O.#.a.a.1./ 2.'.'.'.[.[.[.-X{.'.!.{.}.z...E R ] 8.k.L.XX}.P.K.P.L.d.d.e.] E ..E P P T S c l z l 2 + O + X % O % O O < , 2 2 z H A i = # 3 r r r 5 r p b M M z q 8 t P 1.d.b.t. .( ] U R V 9 : 5 - ; ; * : t ! g.g.l.1.b = & * B <.j.].].v.a.2...>.T R } } E I V C R E ../ U I I f i f B B ^ | >.u.u.;./ U J V i 9 B R ~ / / ( _ / P U ] E _ | / V I R Y B 9 - ; * * * = * @ - - 8 9 0 ", -"= 5 5 = = # 5 5 9 i a r : - : : - : 3 = $ # 0 z b ^ .! I U ( ~ ! ./ R / ~ .o.o.( ^ U s t t t M ) 1.4.:.P A T S i i s m n n n C ~ ' U V P P E ] / R I O.a.X.O.r.c.E.V.e.` q % = = C s.j.s.2.B r ; @ * @ = - * ; i S T Y A Y ' U i 9 : r B A B p t r 9 5 5 5 9 p Z Y y.i.T _ _ p & < O & O O & + O , > > 3 7 q z M Z _ | R | 1...9.z.l.z.L.L.'.Y. X.Xg.k.w.R P / o.5.v.E.(.(.U.0.#.d.d.d.'.n.~ ] k.b.9.w.w.r.i.a.l.S.V.x.i.c.Y.P.{.eXeXI.w.s t U a.W.&X*X=X:XyXyXtXtXtX;X=XrX&Xv.<.A 0 m 0.}.dX9X'.P.P.n.g.x.b.M.j.e.s.9.9.#.s.d.9.I ( m.'.m.K.+.d.n.R.'.Y.M.r.1.} R P | k.s.z.XXU.z.R.K.K.z.d.l.8.>.1.R P | T b v c u 4 = + O O O % + O > < > > , M T Y >.v.q.P m i 9 5 4 5 7 u z b Z A s 0 8 8 y T _ J A S Y A r * * * = * * * : t ^ e.j.m.e.m * o = n :.g.Y.T.l.9.X.1.u.:.R E [ E I I B P R E I V V V n m p p a ) ' Y R 4.4.:./ m i i b U U U / o.<.` / R R ] ] U ` ' C S _ ' A m t : * @ - - - - 5 8 - 8 0 ", -"- 5 5 3 = = r a i i b s i r 0 8 = - - ; - 0 A A Z Y e.f.{ ! o. .! .:.R | 8. .{ . ./ R P s i i i b C R U U Y ` S 9 r a t i s d d B / R I I P I / ] R ..0.a.9.9.9.g.T.T.g.' r + & = ^ s.n.n.2.W r * @ - = @ * @ o o 5 u q q 5 5 8 r a b s s s d p r r 5 : q a V ' l. X8X(.Z...| J 7 + O O & O O O + + O O 6 e l Z J S R _ R _ o.r.v.M.z.J.J.z.P.m.m.V.c.}.rX8X%XXXl.8.q.q.1.9.O.[ #.n.P.n.z.#.L [ x.x.0.0.i.d.d.9.9.z.Z.x.c.S.].XX}.8XY.r.8.I 0 .W.OX%X;X=X=X;XrX;X=X=X%X&XrX%XXXU.I 0 R 8.d.].&X].}.}.m.j.b.M.j.9.a.g.s.0.0.0.z.s.I I s.n.n.K.n.#./ O.0.#.8.8.0.M.}.oX8XtXE.d.L.b.c.J.z.J.z.n.S.v.1._ / / _ Y J J N e 7 4 + + + O O O & > > % $ q -.| q.I.#X%XW.g.| Z p e ; e q i u a a i d f d t 9 5 5 p p u = o @ * * * = = * : t / a.l.m.s.C = = # n 1.k.R.U.s.0.d.a.e.1.{ } } R I P A U ] I f d d i u i y 8 r J _ Y P P Y V d s i 0 s U _ / ' ( ' ;.| / ' 2.( U o. .Y ;.u.;.S S Y b 9 - - - - $ 8 9 t s s ", -"9 t r 9 - # 5 q t s s b n a q - * * = ; 9 a b z s n R q.1.U U ^ d U :._ Y / R R / ] / I m s s d y i s s V U S m i r d y t i B U U U U U R U S z C } | 8.r.0.d.d.a.k.l.z.l. .8 % = z >.1.1.2.' B ; * * * * * @ * . % * % o @ 3 u p a a r 9 8 : r t 5 5 5 s Y | x.E.E./.Y.I./.E.r./ p + > + + O + + O O O > > 2 x J Z J T m U _ a.l.d.l.z.z.z.b.M.M.Q.(.oXrXkXzXcXfXOXM.a. .( X.a.o.a.m.P.d.d...f | b.V.Z.b.k.r.0.9.r.k.k.r.r.j.D.Q.R.I.l.w.| E T q.E.E.(.tX*X*X=X%X%X=X#X%XeX=X~.U.E...A E w.r.M.].R.R.U.x.r.0.k.s.r.a.2.2.l.v.v.v.v.~ V a.d.d.L.z.2.2.O.{ ! { s.P.-XNXVXlXsXrX@X~.(.Y.I.c.z.m.M.n.g.r.<./ P M T H H Z e 2 , X O O + + O O O O + 2 v | g.~.~.I.E.W.W.S.t._ S c 9 : r r 5 5 8 q t b s a u = o . = = o @ @ * $ - = @ - 9 V 1.1.{ 1. .u o @ n e.k.J.b.i.0.J.J.0.1.X.O.{ V B P Y U U C I ! S m t p s q 9 t B C P m s t s s i i i A R Y / ! ^ ^ Y Y ' ,.C m R R R >.:.U a m B b u 5 - - $ = 9 t B V V ", -"q 9 r i 8 @ $ 5 9 q r u t i : - - - - ; u a r s Y n n M Y A V H p r S ^ Z C U / / ^ / U d t i t d f m V n s b t 9 q y V f s V U V m m V B A B u V { [ ] ..r.J.0.w.r.0.i.k.] ; o o r R } ..>.4.S : - * * ; * * o % o . * 7 z z i p 9 5 9 9 5 5 5 u e v Y ;.g.U.U.S.g.e.t.c.#XoXc.1.A 5 < + X + O O + O O O + X 7 J ) J T R R e.M.s.0.z.z.d.M.R.}.#XoXeXtX+XY.W.%X:X}.R.d.O.2.O.O.s.d.n.z.z.r./ f 2.b.c.c.I.S.n.a.r.r.r.r.r.e.j.M.v.x.r.o.| | E | w.Y.Y.(.oX%XeXyXrXoXeXeX*X*X~.Y.R.U.>._ ;.| ] #.d.l.u.g.s.w.w.w.e.g.s.9.v.S.V.h.v.S.;.z ' s.d.n.n.n.a.X.#.1.8.b.'.+XyX#XE.Q.*XyX;X=X=X(.T.z.M.D.v.e.g.g.;.Y R R T ) H 2 . . X + + O O + O + O = u T 4.Z.XXY.c.k.u.x.E.E.I.k. .C a r u 9 5 5 9 9 - 9 u u c p 5 = o * o @ @ - @ = * - t / 1.O...' S 5 . + r 1.k.0.r.r.0.0.J.r.q.E ] I s t P P V V f I ! U m s C U t 9 u i V V f f f d d a p s m U R / ( ` ! A S T c 8 d U V U U B c S U t p i 5 - = = - ; 9 i a i ", -"b a u q 9 - @ - : 9 r 9 - 8 ; * ; 5 q : t s q i S n s s m B A _ ^ C J b c A _ .{ U S S d t t t s d d V C B a r 9 t U / L d I / I L m V f m a y C R R E r.d.r.#.0.8.8.j.g.~ : . . 8 P ] ;.g.V.4.t 8 - - * * * * * . ; r q 0 q 5 q q 9 9 9 - $ 5 n R 1.v.E.(.U.q.>.u.g.g.S. X@XU.g.T 7 & X + O O + X O + O + O $ c ^ _ T E | ..g.9.#.d.L.R.L.z.R.oX(.b.k.Y.Q.U.Y.!.K.K.~.OX|.+XOX|.|.'.J.r.0.U N 4.Z.i.I.b.T.M.k.x.r.1.q.k.x.b.z.l.g.1. .E E >.>.8.b.Y.I.Y.~.].].b.8.c./.Y.Y.I.Y.S.j.3.:.;.R / } 9.z.b.b.b.x.i.8.8.g.e.a.M.T.S.V.v.S._ u ` a.d.[.|.|.{.[.OXOX/.R.L.Y.P.L.~./.b.0.J.XXQ.v.U.Q.T.l.e.q.u.e.| R T T ` J u + + + . O + O + X . O O # z :.g.W.XXQ.b.t.t.e.q.i.^.(.S.g.o.Y d 5 - - 5 q 0 9 9 q r r u 9 = * @ @ * @ ; = * 5 C g.z.a.| U b # . X r .g.a.8.w.w.@.i.J.q.R E m s s m V V V f I R R P s I E d 9 9 0 d V I V s s d t s 0 z S U | .o.] C d V U P ] | V B Z a p S J u 9 t 9 5 9 * @ - ; - 8 9 ", -"a a y r 5 ; @ * : 9 t 9 8 5 9 5 - : a B b z 9 u A J m b B B V A B r p a d C ..8.] I I B i s s f I V m f f d t 9 9 s I R s s s P I P I L P L P d p n A P { k.b.z.x.#.9.x.5.U : o . : I 1.u.j.j.o.t * @ @ * @ @ @ = - - 9 9 9 5 5 : 9 9 9 - - b ;.i.I.E.E.Y.L.k.1.4.e.g.b.E.Q.U.b.h.3.v = O O + + X X + X O O + O 3 v A Y | e.a.9.e.8.s.L.z.....k.x.O.9.{.}.L.T.P.[.K.'.{.'.{.*X|.{.{.-X{.l.0.U r 4.C.u.u.M.L.c.0.8.9.8.q.r.c.c.i.c.r.1.8.>.E >.w.;.:.u.I.b.T.&X'.v.x.M.OXOXU.L.S.2.3.4.8.1./ :.8.8.s.b.x.v.l.0.9.a.0.0.k.M.T.v.f.j.S.` 9 ' s.L.|.&X{.{.|.%X].(.{.J.!.!.K.U.Y.oXE.1.9.l.a.1.e.l.z.r.4.4.8.0.8._ ) H l & . O O O + > O O + + O < 2 A t.b.R.Q.R.E.g.t.4.:.q.C.I.Q.T.U.V.e.^ i 5 3 8 8 5 5 7 9 9 5 5 = = - * @ * * * = ; a 2.D.v.2.| A - . . a .u.v.8.w.i.J.J.i.E m A n d f U V f L P V I I f s f [ I r 8 t a f d m m P f V d t d U U U / ./ f d d i a V P B Z S d V ^ Z 9 q c a S b = - 8 9 8 8 t ", -"u t a t 9 - * = : 8 9 9 8 9 9 8 - ; p B z a 9 t A R ^ Y m a V S d ; : r r V ] } / I U C d d V y t f b s y s t r q y C ' R f f m L P R / I V U V B V U I ! #.r.q.r.w.k.b.<.B : . . : V o.g.v.V.j.B = % * * * * * @ ; ; * : 9 9 5 9 9 5 - 9 U e.x.x.i.k.i.r.k.l.y.q.i.x.Y.~.Y.I.(.Q.j.J 5 < + O O + O X . O O O + . o : 5 B 8.S.g.8.r.j.e.| | >.r.r.a.U.~.U.k.d.K.P.!.{.|.[.{.{.[.|.|.{.{.L.a.m 9 :.C.g.a.m.S.b.s.8.#.w.r...w.u.y.q.;.:.>.>.| | E .<.;.i.Q.+X}.'.T.P.m.R.{.oX!.0.] 1...] w.E >.>.| o.8.k.i.q.8.k.a.1.e.Z.'.D.m.n.l.S.` : ! n.P.[.}.}.!.[.+X}.~.+X!.K.K.J.c.J.J.~.M.#.a.9. .] } z.v.e.9.z.v. .z 5 = & + O X + O O + O O + O O + 7 ;.v.E.(.U.U.].V.y.e.4.u.v.v.j.g.k.j.j.h.4.b - 3 5 : 5 5 r t 5 * = = % @ * o @ @ @ = S j.D.v.f.] m ; . . p Y 4.b.u.w.i.w.i...P I I A d I U C C R I I L V f m / { V t r r a d a a f s s I V s m S U S / ] ^ b i r 5 9 A A m v V U R R A i i p c B r - 9 9 9 9 8 t ", -"a t s a 9 = @ o = : 0 9 - 8 9 r 9 8 9 u i m B n V A U J B r B ^ C 9 8 9 9 m I I ! U C B y V U C y d d d i s t 9 : r d ./ d m V m f R / C f V V V R .] #.l.k.e.r.8.c.Z.:.Z : o . : Y 8.g.W. Xh.Z = + . o o o * @ @ % * ; 8 9 u u u r r S e.h.g.u.h.g.u.g.L.E.y.4.4.q.c.(.~.!.).#XU.5.c + + O & O O + O O O O X + . o 5 V _ O.g.V.5.' ' | | } d.T.M.c.b.J.K.|.|.{.%X%X{.[.|.|.}.R.oX{.'.k.B 9 -.S.v.s.j.M.v.j.j.g.y.w.>.] E ;.>.] ;.:.%.E P E o.f.E.#X%XR.J.P.L.J.m.L.P.R.*XoXI.w...I P E | >.{ ] | | | } >.w.0.9.a.x.A.V.n.n.m.f.S 9 C A.[.}.}.!.{.|.-X!.~.oX(.!.{.{.J.J.J.J.P.K.s.} | | ] { r.M.j.1./ b 3 . X O X O X + O O O + O + O < H j.^.(.~.U.~.W.e.4.7.4.h.M.v.g.u.u.x.j.u.y.:.n q r r r q 5 5 * * = % % o o * @ o o 5 =.D.F.V.2.o.d * + + 5 S 8.C.u.w.8.w.d.r.O.{ ] P m f n B U ] I f s s d n | / y r r r t t y d m m f V f d d B V U U R C d 8 8 5 p S ` b t M Y A m A B V z r r 5 : 5 9 8 - 8 9 ", -"B n d i 8 * = * = : 9 9 8 - 9 9 9 r 8 t a b m S Y V n T J u u U A r 8 t d I P I ~ J C a d f U I y a d B d s t r r r b ' ^ t r t t s U ] C d d d d U .1.9.O.8.e.q.r.b.s._ c o + o : V U U f.W.f.J 4 + + o o % o o o o o = * 3 5 q i c C _ e.j.j.j.g.g.l.z.U.E.y.4.4.>.x.XXoX).(.oX}.D._ ; + % O + O X X O O X + . . % 7 7 - 9 s i i U ;.<._ ( 9.d.m.b.U.!.'.{.-X|.P.P.{.{.|.|.|.{.}.XX'.P.9.B u n 5.W.D.D.V.e. .5.j.u.w.>.>.] 8.8.@.| / E T T :.u.U.#X*X*XoX!.!.L.z.L.~.~.oX*XeX).Z.w.| P T E } >.>.>.| >.>.>.w.g.s...' 4.A.m._.M.' i a A j.'.{.{.XX{.{.|.{.oX'.K.{.-X{.{.'.K.J.n.z.k.../ ] :.=.Z p p r : = q 5 & X o X X X O O O + O O O o l 4.D.@X#X(.oXoX].t.3.5.4.j.D.M.v.k.g.g.j.u.h.q.Y B d t 9 5 - = % o o % o o % @ o + . 9 ' V.D.3.! ~ f - # . = b :.Z.Z.k.r.w.@.} O.9...U s d f b U } I y 0 t t d | R 9 r w w 8 y d d a a y V I V d d V R / P P L t 0 9 s Y Z 9 i T Y m U T S M z a 9 r q 9 : - ; 8 8 ", -"s s i t 9 - = = : = ; 9 8 - - - 8 : : r n B y p S A b M b u 5 q q 9 9 t b d I U I Z C B d y f d f V m a d i i t 8 t U .V t 8 : 8 t V ~ I d m s y I / ] } R ] 8.w.b.I. .a * . . + 5 M Y U ~ 1.1.T 5 . % * o o % o * = + o * u Y =.' _ / ' e.x.l.f.e.v.D.j.V.D.q.:.1.<.c.}.oX*XoX{.@X.Xv.Z + O + + O X X X O O o . . 2 l 2 $ @ $ 8 - ; t A ;.r.d.z.z.l.L.J.!.[.[.L.m.m.'.{.|.{.P.[.|.[.L.L.;.c u p m 4.v.j.e./ J _ =.;.| } E E R E { / / P E :.:.x.@X#X*X*X~.P.Y.Y.U.Q.~.~.oX(.).(.Y.y.>.;.T E E E >.E E | | } } } >.| R ;.j.l.s.' c u p B 2.U.P.{.+XR.'.{.{.!.P.K.m.L.[.[.K.L.z.z.l.l.x.q.;.M q = * ; = = % 5 u = X X . O O O O O O O + + , T S. X@XoXoXXXXXQ.u.;.4.' f.S.g.c.Z.k.e.f.y.y.4._ ^ ^ / _ V 9 @ o o * % * o o o % + + u _ 1.' Y U U s - o . . 3 A t.U.g.q.>.R E { { / f s f m B U ] f 0 8 8 8 t U | V 8 : t a a a d d d d y s d V V A S S V f d s 0 8 r 9 9 5 i n n B J A i b Z b r 8 - 9 : ; ; 9 8 ", -"8 0 0 i r : = $ = 5 - 9 8 : : : : 5 p 8 : d c r z B c u ; = = = - $ ; 8 9 d f f V S B d s y t f d s 8 ; 8 0 s t r V / U s 0 t 9 8 8 d I L s m V d f R } } P P E q.I.e.s 4 # . o + 5 B U ! S ! <._ 5 . # = = % % % o 5 r y S 2.e.5.a.{ ` _ <.5.e.e.2.a.7.Y Y f.2.>.....c.~.oX{.*X@XXXOX Xp.5 + O O O X X X X X X 4 u u x C S ( 8./ 9 $ - n 8.u.k.m.P.T.T.K.d.d.b.M.'.m.'.[.K.{.{.[.'.n.d.L 9 5 5 9 z _ 4.y.:.3.K u n 1.>.:.>.T V m b K :.C.I.J.U.#X*X*X*X}.L.K.K.T.Q.Y.R.}.(.(.*X~.J.z.Y.x...U s n Y | ;.| 4.| i i R :.4.y.q.U i 7 5 q t ] n.P.}.OX'.'.R.R.L.m.K.P.J.z.J.K.R.R.L.z.v.l.<.i = - s | q.T Y M t q q $ . . X X O X O O O O O n D.eX%XXXoX*X+X+X Xg.| >.>.u.>.d ] g.g.r.t.4.4.:.| _ o.e.e.q.:.Z i 5 = @ @ @ # # = + o r [ ] U U U U b = . . + % : S j.v...] P P ( .I y a m m d V P s 8 8 t t t P ._ C 8 a d t 8 : r p d a t y d b V U P V V p 8 - ; ; 2 ; 5 5 5 i Z H c e v p : r r 8 - 9 : 8 r : ", -"9 0 0 0 9 - # @ + = 3 8 ; : t t r t r 8 - 5 B Z N e ; ; = = = = - - - - 8 d I I d t r t y t d d t 8 r 8 r : : r C 1.R s s s s t t s I I P n Y U s 0 P >.E P L ..S.c.V * = + . + . = a c f I ] / B : . + + = % * 5 b C U / ..1.O.1.2.o.! S | 5.5.4.5.y.5.Y B _ <.e. .E c.(.oXoXoX+XXX.X$X].J . X X X + X X X X = : a 1. XjXxXdXXXk.U i 8 $ 8 s ] U.OX].R.z.d.L.J.z.P.P.[.|.-X-X|.|.'._.n.! : e 7 u r t A Y b q 5 r S <.w.q.E A M M Z i.#X~.Y.K.oX*X(.(.*X!.J.J.U.z.L.J.Y.oX*X).*X=X}.Y.Y.~.R.| a M A A _ y.t.;.b 5 5 0 n J b 9 9 7 7 q 8 ] P.P.'.|.{.-X+X}.}.'.m.l.L.L.d.z.T.XXOXl.~ s ; @ 5 s | b.#XaXsXaXD.| z 3 $ . X X X X O + O O , -.7X8X%XXXoXoX*X%XXXu.Y } w.1.R d _ g.s.e.1.q.4._ A / >.8.q.>.1.1. .U S z 5 $ # = % . % : f [ U V d d a = . + + o @ ; ` M.c.] R U / ( y r f A m m I I s 0 s s y t s n ' .a : : : : : : : y V s y a t 9 t B U S t 8 - 4 % * = = = # - 3 u b B i : * 9 t q 9 0 9 8 : 9 ", -"i i i i u 3 o o # $ @ * 8 r t r t 8 : 9 9 : 5 t r ; * 4 ; = = = - - - r f U U f r 8 t t d B a 8 8 9 8 8 r r r * r a d m n s 0 s d m I I s 0 n V y t V R U I I 8.g.] 5 . O o . + # z Y P B f d f p = . o # = * 4 q n I | 1.#.O.8.2.5.<.! S X.s.1.5.f.5.e.) Z ) e.f.) R S.E./.8X+X+X8X0X7X.Xy.z % X O O + - i :.@XpXaXrXuXyX~.l.e.u.^.@XV./ I ] .] ] O.#.#.s.z.K.K.K.[.[.'.K.d.a.a.~ w 7 7 e e r u u 5 = 5 a Y 4.>.T A Z M b S i.!.K.K.J.!.(.).).*XK.K.Y.P.d.M.T.J.Y.).*X).(.~.J.Y.Y.!.8.b v M G A R q.q.S r 5 2 5 p p r e 7 h 5 t .d.n.'.'.'.[.!.K.z.z.d.8.O.8...R / o.^ C ] L.+XW.e.f.P.OXyXiXuXaXtXU.R 9 3 o X . O + , G B./.8XeX7XoX+X~.U.'.j.Y ' r.2.^ S <.5.4.g.9.9.r. .A R :.4.t.2.o.8.#.{ R M 5 $ = = o + o * i d d V L P V 9 . . + + o * i 1.r.] I E R U d i A A i t m I L s f s 0 t m s i t : : w r 9 ; : : : r d f y p r 8 t I ^ U d 9 ; * : 5 - - 2 - = 3 u u - 5 r : 9 r t 9 9 q - @ ", -"t q 9 9 9 # + . o = @ - - - q t r w : 5 5 = $ - 9 5 : 4 ; = # = - : 9 a b b b t t r t d m t : 8 9 8 : 8 : 5 * @ @ * * 8 t 8 9 d V m d V s 8 q 8 8 t a t b U P s t t : . X + % ; 0 T >.q.1.U a d p # o + % * * : q B | ..8.8.o...>.>.;.U U #.0.e.2.( _ 4.t.5.;.5.3.A 1.z.r.u.R.%XrX8X XV.B.-.5 O O O % 3 S v.;XsXuXeXrXtXoXOXuX8X#XeXtXOX1.i i i d .a.a.n.J.K.[.[.[.'.|.'.P.L.a.! p 5 : : u i z u 5 3 5 c T T P m V b A ,.x.(.eX(.!.Y.Y.!.~.(.J.J.J.L.z.z.P.P.J.J.Y.!.!.Y.!.!.Y.*X=X(.j.:.n n A n Y ;.S u e 5 5 l c u u 5 5 r a ' l.M.'.|.[.[.{.{.].T.M.n.d.a.{ d i r B n.&X;X%X8XrX;X|.+X:XyX:XyXtX@Xt.b , O + . O , l :.V.S. X8X0X&XE.r.j.V.^ A 4.5.<.5.t.<./ >.5.1.r.:.A Y 1.<.;.;.<.9.8.8.| b 3 $ = = % . . = a M V ] e.e.O.R i ; o % . @ 9 s s s P P d t i 8 : r t q m V m A P d 8 t q 8 - = * o ; 9 : ; : : 8 : 8 s B a y r 9 t b d d t 5 5 5 * # # = 3 9 5 5 2 * 5 5 : : q u u : - - - ", -"t r 8 t 8 $ o # o * - 9 - = @ @ * * ; 9 - = # # = 5 5 - - = = - - = - t r : : r r r y i q : : 8 8 : : 9 : * % @ = = % * o @ * : q s m m 9 # , - 8 a a a a b z i i 0 $ o * 5 Z .4.t.i.C.y.:.M z 5 o @ @ # = * 5 i U 1.9.8.8.1. . .>.| V / q.g.j.2.! U <.y.t.;.;.H A f.v.a.a.l.W././.^.^.C.M . + . . o u =.E.~.=XuXaXtXrXtXxXZXBX;X@X#XrX'.;.z 9 b e.D.T.S.z.P.!.{.{.{.:X|.Y.g.| B C .( z 5 i i 2 = 2 - $ 3 n _ ;.;.4.j._.j.u.(.#X*X*X).).!.!.I.J.L.P.J.b.J.Y.I.I.Y.!.(.~.).*X*X*X^.y.A.^.j.1.>.:._ i * * 5 ; = 7 z u 9 B ( ` B S 4.v.P.|.:X-X+X+XQ.M.M.M.'.S.1.i 8 A r.OX;XOX(.aXnXCXkXuXuXuXaXyXoX}.Z.T 2 . O O . o = T V.E./.@X.XS.x.g.g.V.<.n T 4.4.y.t._ S ' p.p.f.1.P S ;.4.:.:.1.....8.>.S 0 - $ # o . O # q b T >.u.C.b.x.q.E M 7 # . 8 t t i n n i i a i - * = 3 i M n i t - @ . @ * @ ; @ @ * : 5 ; : : w : ; : t d p r : 8 8 8 0 9 - : 5 * $ = = 3 q 5 # $ = - 5 - = * * * * ; 5 5 ", -"r 8 t i 0 3 , $ @ : 9 - - $ - * = * * = # @ # # $ 3 - 5 8 5 - - - - 9 9 5 5 : : r r : ; - r r 8 : r q 9 - = * o o o . % = o @ * - - = @ o . @ 8 a i 5 5 5 q q q q 9 5 i U ' 4.a.q.2.q.y.:.T Y n 5 . @ o + = = r b R r.8...8.8.1.1...! U .4.7.5.2.^ Y <.1.<._ v c _ s.a.j.l. .J :.C.^.v.H # + + + X X 5 A e.b.Y.@XeX8XOXtXnXSXSXNXoX@XrXS. ._ Z i P 1.u.l.l.s.z.{.-X-X}.b.1.! n / s.R.R.l.' i - o + . o o $ 0 n U / <.p.3.Z M >.U.~.oX!.).).).Y.I.Y.Y.Y.J.T.].!.I.!.(.oX~.!.).Q.Z.T z H 7.7. .R A i - = + + o o # 3 b <.S.].M.1.V A | a.P.-X:XrXQ.g.s.l.l.e.' a i P ;.8.].yX}.eXZXZXSXxX&X%X7X%X}.!.l. .b 2 X . . X + o 5 ' V.D.C.;.P 4.x.u.j.j.) z S _ ;.4.-.^ ' 5.5.e.1./ U _ 5.q.>.>.8.O.0.q.P b 5 = @ + = o $ 9 A T T :.4.q.q.q.u.2.) Z 0 $ 0 q t i 0 9 : q z t = . . o # - - = # @ o @ @ @ . @ . o = : r r r r r r 9 * ; r r r : 8 q i q - = * - 5 5 5 3 2 3 # # @ o $ * @ * = * * = - 8 ", -"0 t r t 9 8 5 $ @ ; : - - : - = = - = $ @ @ # - 9 9 - - $ 3 ; - * 9 i t r r r 9 : * * ; 8 - : 9 r 8 - - = % o o . . + + # = * o o @ , q 9 o o # - - 5 5 - o $ q n T -.q.y.h.v.S.D.v.h.i.w.| >.q.n @ . @ o = = p B ^ ..o.1.o...#.9.] S ~ >.4.4.5.1.U A ^ W ` _ b b =.r.l.f.` i q i s a q 2 + + + + 2 + . = 5 0 P g.T.v.a.d.m.;XCXDXZXdX$X$XXXW.u.1.Y b P U R | .o.j./.Z...] P z Y g.}.oX{.%X9XT.U $ o o . # o , u a a r p u 9 5 z 1.U.%X*X!.!.!.~./..XOX!.P.'.'.{.'.P.~.Q./.@X@Xi._ u 8 7 q z i s a 9 = o + o . + : =./.&X0X&X&X].e.P d C / 8.U.W.r.1. .( ^ S S b Y :.c.Q.@X@X=XvXZXSXzX[.n.0.s.z.T.0.f 9 5 + X 2 2 + o % + - i n z 0 9 b | g.x.e.T a S ./ Y A B ' 2.5.5.1.| U U 1.t.8...8.8.8. .A z 9 = # o + . - P q.>.:.y.i.h.V.S.V.l.h.4.;.E P c - # $ 3 9 5 - ; # + + 0 0 - @ . @ * = * o o . . . + @ @ $ : 8 8 8 : 8 8 - @ ; ; r u r q 0 i - = - 3 - = = - q 5 - = @ @ = - ; $ = - - - - ", -"t 9 : 9 8 $ - - $ $ ; - - 9 : 5 5 5 5 = = 3 5 9 3 - 3 $ @ $ - - - 9 9 9 9 r 9 ; - @ $ : 8 : - : - ; - * * o o o % o o o . + @ . @ $ 3 9 , o + - 5 2 = . $ z | i.y.:.4.h.V.h.f.f.2.f.V.C.w.w.w.i.;.t . @ . = 5 p A ~ ] ..q.1.} 0...U U ' 1.>.1.o. .^ J W ( a.v.4.P n ! ( W B a b z r : = = 2 # . + . + . & A ;...k.z.d.s.d.m.'.hXZXZXcX$XU.U.Q.Q.U.1.n b B b S .Y n s r 0 m P E 8.k.{.{.(.XXOX&Xb.n X o . o + $ 5 z t t q i i t q u R C.8XoX(.(.$X9X$X Xk...j.'.].+XoX}. X9X7Xh.Y q 5 i h l u q t a 5 + + + . X . T XX&XXXXXOXOXY.s.>./ P s 8 t t V _ ' B p b c S u.^./.Y.E.^.eXNXZXBXdX_.n.d.d.d.z.k.| ) z . . . . . . . . O + + + = - - q n z p C ] .C c Y j.m.1._ S C _ 1.q.q.1.' ! C ] q.1.>.1.o.../ C C t 5 # # @ $ z } i.w.} 8.v.D.u.2.e.f.x.Z.C.q.q.V.h.T 0 # o = 3 : = # # 3 8 - * . @ o @ . . o o o @ % + $ - = ; ; ; - ; 8 - - * = = 9 i 9 9 q r - - = = = = 2 - 5 9 5 ; - ; 9 u 9 9 5 - : : ", -"q 0 0 9 - $ - - * * = = * * * - 3 - = 5 r p t 5 = = - $ $ @ @ $ r t 9 : ; = * * * - - - - - ; : 5 8 9 5 = # @ @ @ . . % . o o o @ @ . @ @ . . o o # q =.i.i.x.V.y.:.:.) n 8 q i a ' V.v.>.} ..@.] b = o o # 9 C A A / | e.r.s.g.1./ Y | O...r.e.1._ =.2.2.l.g.r.R n s V _ S c l u : ; & + & + O . . + ; i z N c # u h.~.z.#.d.s.M.P.L.&XlXrXXX9XeX/.U.S.Q.S.Y u b o.f.f. .m t ..U.OX%XtXeX*X|.{.*XoX}.{.XXy.i = . X + o 3 i c u q 0 u 9 u u l H B.^.OXW.W.6XE.C.>.R y.C./.7X/.XX9X X7.G q q u q q q 7 u i 5 = + . . o # A C.eXoX}.}.{.].OX&XtX:X$XXXM.R t S 2.j.e.Y i t .S.U.J.~.#XrX#X+XfXzXOXn.K.b.l.r.0.L. X3.= 5 c d b u , o . o & & % O 2 3 7 z N C ` _ Z p N <.g.g.u.1.;. . .1.e.r.4.<.` ! ` 2.e.2.e.1.../ f B a 5 # # o * P 8.} } } 8.Z.j.U a p 8 0 P :.:.3.B.Z.Z.V.y.T 3 . . o . + . @ . . @ o o . o . . @ o o @ @ = 5 5 : : ; = - : 5 8 $ $ = = = : 5 9 u 5 # @ # # - 2 @ * 5 u q 8 ; = - - = * $ ; * ", -"i s 0 9 - o @ # % % @ * = * ; : 5 i B A d r r 5 : : - - = # o @ : u 5 * $ @ @ @ * ; 8 $ @ - : : - - 5 3 = $ # @ @ o . o o . o o o o o o o o o q P :.u.h.i.q.=.:.*.Z c 9 - , 2 2 = n h.Z.>.] E E | _ u o o @ 5 i b Y o.1.1.e.r.e. .^ / 1.1.O.9.e.1.` Z d S e.x.^ 9 9 i B S B u e 7 ; 4 2 2 # + O o * v =.5.<.' _ M u 8.U.a.a.s.r.v.Q.R.S.^.^.U.XXeXuXpXrX$X.X5.U .1.O.9.l.Y.+XyXrX&X|.oX%X-X+X{.{.(.~.~.XXV.Y q 5 & . o = 2 2 = 2 3 2 = 2 q e q l Y y.j.S M %.P A n A T T n R x.1.A x e q q 2 > 2 2 = = 3 2 = . o * 9 0 ;.I.!.'.}.{.|.{.+X*X*X{.OX+X:X:XXXM.g.1.<.1.| / x.XX$XyXgXfXyXQ.M.Q.W.M.'.m.l.s.d.9.z.M._ p B Y ] e.5._ q # . o & 2 6 2 5 u u i b B a u r a _ i.| B B V ] ..e.g.r.2.X.( ! o.a.a.8.8.q.} P n p - o o @ a ..} E E } i.Y.q.t = 3 = - 3 8 c J T ;.:.t.C.Z.y.;.n - + $ . . . @ % o . % o o o o @ o o @ $ 9 9 8 - 9 : * - - 3 - = % @ @ $ = 5 9 - # + $ = 5 5 - 5 5 - q b B a u - - ; - * * ", -"i t 8 0 - # . @ o . + * * 5 r t r r t t 9 8 ; - - 5 3 5 5 3 # + o + @ @ $ = - - - 8 - ; - ; 8 8 8 9 8 - = # # o o o . . X o o o o o o o @ 2 z :.C.C.t.Y M z M b a i i q 0 9 3 3 - n q.b.8.] } } ..<.C * o o = 5 i U 9.d.8.X.9.O.] | .1.1.<.1.9.X.W N N Z _ ) p : u u e 5 9 7 q 5 2 = % + . X u .j.l.1.{ a.D.u.Y 4.z.a.s.M.v.x.Z.Z.u. .b.+X;XoX;XyXyXdXdX%XOXOX{.{.}.:XyX-XoX@X~.~.*X=X%X-X-X~.}.R.R.#X7Xy.0 7 2 # + # = = = * = = = = 3 u u 7 5 M 4.H q M A m b m m i i _ _ t u u u q 5 2 2 2 # = 3 = = % + = 5 5 A C.0X*X!.~.}.!.|.#XoX*X*X~.!.{.-X:X:X&XXXXXOX+XXX+XuXdXyXrX&X+X&X Xa.( g.M.m.m.l.a.a.s.l.' ' v.S.a.2.e.j.u.Y : . . + # = 3 5 5 5 5 5 9 u u 5 m _ Y n C A _ e.e.8.1.1.1.' _ / 9.r.1.e.s. .C b 5 = o o 9 ~ #.} } E E i.I.:.i - 3 : : e q i i z n n b A ;.x.Z.i.| z , $ + @ . @ . o o o . o o o o @ = = - 8 9 9 9 9 - - $ - - 3 3 = = = o @ @ # # $ 3 5 5 3 : 5 ; $ 9 i y t t t t t - * % ", -"9 0 9 9 5 - $ @ . X . o @ * r a s r 9 r t - = ; - 3 - = $ o + # $ - - = $ - = = = - - 8 q 0 0 0 s s q 9 ; * # o o . o . o . o o . . $ 3 q n A | >.R s 5 r z a s c a a z z q q 0 8 s ..k.w.} E ] ] { ^ w o + # - i .d.l.s.s.9.{ ~ } e.e. .2.e.s.a.W N Z c r 5 u u e 5 * 5 5 = 2 2 2 & . . # , 3 ^ j.s.1.8.a.].0XD._ T g.l.a.b.W.l.x.v.V.g.8.k.P.].+X&X:X;X@X}.{.|.OX$X%X*X*X;X:X*X(.~.+XoX*X=X-X;XoX}.]. X@XC.| 9 4 2 # = & 5 Z Y C u - - 3 q z q 0 u ;.-.z z n b m n b i V ;.Y z u p a 9 = = 5 z H Z c 4 = = % 2 5 z 4.E.@X(.!.(.=X:X:XrXOX}.Y.!.(.*X:X:X:X+X&X$X+XoX{.{.+X9X&X;X%X}.U.g.9.l.M.n.s.z.D.l.a.n.2.J <.W.%XU.X.X.X.x.x.n = 2 + o = 2 5 = 3 9 5 ; : u u 9 9 p c D Z T y.u.8.8.>.e.5.( R 1.s.e.a.l.a._ r + + . o a _ / E ] E E w.u._ i 5 9 r e a C b i b z b q 8 9 m E ;.T M z q $ = o o @ o . . . o o o + = @ ; 9 i n z s i 9 8 8 - = = # = - - - - = * o o @ # 3 5 - : : 8 9 i r 8 y a y 5 = . % ", -"9 9 0 8 r 9 = @ o . . . @ = * ; r r 8 : q u 9 9 : - # # # - 5 r q r r 9 = - # 3 : 9 9 z A P m P P n i 9 q - # + o . o o o o @ @ - 0 0 8 0 z z 0 8 0 0 P P P m i s U P A z 0 z h 8 i E r.i.8.} } U ~ ( a * + + o a o.k.l.z.d.X.! ~ 8.k.j.a.e.e.q.' N N u 7 p p u e 2 = 5 9 5 $ = 2 = o @ : V v 9 Y 9.#.a.9.d.].0X7X7.Y .9.n.m.D.v.s.z.R.}.b.>...d.Y.T.S.Q.R.J.z.P.R.R.(.~.}.oXoXoX/.XXyXiX;X*X=X:X:XtX%X(.^.S.t.b 4 3 # + o 5 z S ' _ M 5 = 9 z z i i A _ n r i t z z i t V T c u u a i 9 - r S ' ^ B p 5 % . = 5 9 Y h.E.^.(.%XeXeXiXtXOX9XdX;X(.(.oX{.oX}.].Q.W.R.L.J.J.{.R.T.W.L.s.} 0.Q.%XU.r.s.M.T.m.n.2.~ _ h.7XrX_.X.+.a.9.s.P - C C ; % 3 = = - q q = * 5 u q u u 5 l v S <.0.s.s.d.s.e.{ ! ~ X.a.d.g.e.^ : o + + 2 Z ^ P U } ..8.r.4.Y q q i 0 i M Y U P s s m V m m 0 8 q h z 0 0 9 i q - @ % . . o . o @ @ # 5 8 q n A P A A m s i q 9 5 = = - - 5 q 9 r r 5 = $ o # = 5 9 0 i 9 : 8 t r ; * % o . ", -"3 9 0 5 5 5 = @ o o + . o $ @ @ * - w r 9 - = + . . . . + ; - : : ; : : - - 3 q i n P P Y T n P m P T R A A b 9 * . o o . % : t b V m n 3 $ 0 z n m m P P P A U ;.| T m n z 0 0 0 0 T 8.u.r.>.} U ~ o.~ 5 . . o y S I { o.~ I I / 0.s.0.r.1.q.3.Q B p = * w 5 5 i i u 9 9 3 3 7 4 % % y ! ! i q _ 9.a.s.X.a.'.9X7Xy.) ` ( 2.z.v.T.S.l.L.+X%XI.g.z.z.l.S.OXoX{.oX}.Q.T.Q.Y.Y.L.L.L.oXfXzXNXzX;X(.).eXeXXX$X XE.Z._ 7 q 2 + + = 5 i Y *.) u $ 5 u q i t p A M 9 p p p i z z A A l u u u u 5 = b ' / C t 3 # + % 5 9 z :.v.C.@X%X@XeX*XoX~.&XhXzXfXiXXXI.L.U.R.'.Q.XX+XoXoXoX-X{.z.k.l.g.k.Q.*X#Xb.z.U.U.S.n.' ~ ` :.D.tX8X_.a.a.#.#.e.P $ a ! W w . % 5 4 = 9 u 9 u u t 5 5 4 2 7 a C { O.#.0.a.s.s.1.U I ! { X.! C S w . . + c ;.| Y R } 1.e.8.;.S 5 5 q 0 h b H U | / I U Y I P m P n l 4 # 8 z B b s 0 * o o o o o # i n V B P Y P P P P P A A Y b z 5 - = 5 9 5 5 8 : = # o . o o @ @ - 8 8 r 5 ; * @ # @ + . ", -"3 0 q 9 5 5 5 5 5 = . . o o o o . . . . . . . % . . . . . . o @ o @ @ @ = = 5 z P T T P P m s s m R R P P S B 9 + o o . - d A n b 0 , q z A :.x.i.E I I V V / ] I s n n s i 0 q q T q.r.w.8.q.1.O.e.5.N X . % y W d f V f V U ] e.0.0.#...8.e.o.C e 2 = = : w r e 5 5 9 - 5 4 # . d #.n.n.' b ' o.X.a.X.a.].yX7XC.' ^ ( X.v.T.Y.b.k.c.~.*X+Xz.s.0.d.].{.{.*X{.*X{.{.*X=X;X;X;X+XiXgXdXzXcXdXoX(.*X X^.$X X^.7XV.M q 2 + % + o 3 u z Z l = 5 l q q i t z n q e 3 2 9 i z b b u u u u 7 3 5 b M i q = X + + + 5 i T E.OX_.$X&X].(.*X!.*XgXMXgXfXcX:XoX=X;XrXyX;X+X#X#X+XOX{.{.P.a.5.p.M.$X%XQ.g.z.U.D.D.p.X.Q o.3.C.9X;X[.+.X.a.X.#.A q o.n.n.Q 4 . # q 5 3 5 5 7 9 q 5 ; = = 2 l Y :.e. ./ >.1.8.1.^ A C f C f f C r . * ! 2...{ O.X.O.0.r.e.n - e p 0 s n z b U ] U V f C I ..c.i.:.G z h $ t B d z r * o o . $ 0 M J P Y R P P s z P I R R T Z i - = o @ @ o o . . o o . . . . X o . . @ . + . . o . o o . ", -"5 0 0 9 9 5 - - 9 p : o . . o o o * * % o o o . o o . o o = = . # = $ o . o o - i b P P m n m s n m P I Y Z n n n 5 @ @ : u t 9 @ $ $ z D n G ;.u.t.U m V d t A I m m m s i i z 0 3 n ;.| } 8.1.9.O.X.0.U + % a U V C / C P / ..o...} ..8...! S c = & = 4 : e u u u p 5 ; 9 3 o r X.n.a.s.v.;._ ( X.#.#.9.n.OXdXB.B Q o.( .8.r.l.S.M.c.U.}.P.a.d.T.].P.L.K.!.*X+X*X=XoX*X-XoX:XzXkXdXfXgXhXgX;X(.b..X0X X XuX0X| i 5 < X + . . , 7 q l l 3 3 q q 9 q h h q 4 + + # 2 q u q u u u 5 5 5 l q q q + . X . + = r a e.uX9X].$X0X X~.).=XpXzXgXgXfXzXdX-X*X:X*XoX+X+XoX~.T.W.Y.oX'.v.a.s._.W.Z.c.M.L.s.a.2.o.o.` W ) W.dX'.d.X.O.O.~ .^ <.l.a.p.n.` 3 # 3 5 - 5 0 i i r 5 5 2 & & 7 M A T 1.1.:.8... .( S V I ! f I U 9 . 5 / 9...O.9.#.1.1.1.o.i 3 u i 0 s n n s A R d r d I f E i.i.T G n n h ; . $ 9 i u : * @ 0 n n m Y I I P s s m m m V P B b u * @ . . @ ; $ . o # # o . X + + o @ . . @ + o + + . . o @ ", -"3 8 , 3 5 5 5 = 3 p u 5 = 5 3 5 9 5 3 @ . o # # o @ o . o = @ @ @ = = * = # @ * t d t s b m n i s I I P P m V m n s 9 q i 9 # . 2 v Z z b M _ t.u.` V S V r t I E P n n z s i u 5 @ - Y / | ...1.O.} 0./ = # t V f I / ~ / / ] / ] .8.q.| U Z 5 % = 7 a p p a c n B a 5 q q 9 C a.a.9.s.T.d._ ~ ~ X.X.d.n.'.|.2.0 Z ' ' Y I ] a.M.Q.S.l.d.d.0.s.Q.OX'.M.P.!.|.]..XOX!.{.!.L.*XfXMXiXiXfXhXcXNXoXY.%X0X0X&XrXsX^.o.N e 2 X . . X + + + 7 u u 5 3 7 9 2 % = % # + & & # $ 3 q 7 2 3 u u 5 + + . + 2 l S f.$XpXrX%X8X$XXXR.:XMXsXsXiXMXiXgXyXoXY.!.~.R.].}.}.|.}.E.Q.'.|.W.u.d.s.s.b.I.T.M.a.{ Y Y ] R z n S.;XM.a.+.X.X.( ( .l.T.a.a.n.X.C : 9 u q b H M b p a c p 7 2 2 u A Y | >.>.o...] ( / ~ ] / f ~ I 8 o . 9 { 0.#.2.8.1.| .<.V @ ; q z z z s m m T R n 8 t V I V | u.>.P n z M A c # . $ q 0 9 0 m s P m m s L L E s f V s d s 9 t 9 * @ * * = = = o % % = o . o o . + o o o # 5 5 5 5 3 3 = 5 ", -"9 3 - - - 5 - - - u a u 5 9 5 = = - 3 = * o o + o o o o o = o - - = + o @ = * - 9 t 0 0 s b d s d m m s s s A A n m b q 5 - # $ z H Z b Y ' _ ;./ V S o.{ V f U E P n q 9 9 5 % . . # A >.>.| ;.o./ ] #. .u . * 8 m U C U I I / ] / ] o.>.} / A 9 : 4 = 5 9 u c B B b v z q 4 7 r I X.X.X.l.L.s.' ( [ X.X.a.d.'.&Xm.M K =._ | ' ( X.d.v.k.J.J.J.r.r.S.Y.].}.oX{.]. X&XOX|.[.z.S.@XtXgXiX:X:XdXlXiX=XtXeXOXOX].8XkX$XD.2.Y Z l 4 . X X . # = = , + + . + % . . + 2 + . + o + . . + 2 = 2 % . . . + 2 z H _ f.D.&XaX%XQ.(.#XeXtXtXsXiXyX:X:XgXiX*X(.I.L.}.}.{.}.}.+X+X+X{.R.W.U.r.r.l.L.b.d.k.d.{ ] ;. ./ | G T .XOXm.d.a.9.X.{ { X.m.S.j.X.#.X.W q 5 5 q i b Z Z N p 5 5 5 = 2 = u B R >...| / / ] ( U ! I B U y ; $ @ n ..#.~ _ e.:._ 4.>.i . o # $ 3 9 0 q m A Y V m V { ~ L P ;. .T T J z Z M 5 = 2 $ 5 0 n n m m n m P s s m m s d b s t 0 8 - = @ - $ @ @ = = = o + o . o o . o o o + 2 3 3 3 3 5 q 5 u ", -"m 9 - - = = * * : a B a 9 5 - - 3 = - = = o o o @ o o o o = * = = - = * * * * : 0 t 8 8 9 s s s m P P L I L P P P A M 0 $ 3 5 3 2 5 u B ) =.;./ B V ! _ ! C ! ~ ! P u 3 # . . . . X o q :.t.:.>./ f ~ 0. .u + = - t C I S V f / ] .o. .| R f t r e : ; : r B Y ^ W B u u 4 2 5 b ] X.2.a.v.n.n.o.` X.X.a.n.d.'.OXD.H T q.' Y ^ ` o.g.n.d.k.d.d.b.U.M.M.U.T.R.'.}.XX+XOX!.P.L.Q.~.oX:XgXiXNXcXxXeX#X=X#XOXD.v.XXvX0XD.S.M.:.Z Z u % . . X . o o . X . + 2 O . X . O . . o o o . X . . 2 c Z Y 3.M.D.'.yXjX.Xb.Y.#X*X*X%XuXxXNXpXiXiXoX~.oX~.'.'.}.{.OXXX'.'.'.P.M.M.Z.b.x.l.l.z.c.z.0.| R Y U ] 5.' =.^.].n.d.d.a.X.{ ( 2.v.n.l.X.X.{ U i 5 3 q i z A Y S J N 5 : 5 3 5 r r B / o.;.' / / ! f U S S B 8 - $ $ A 8.#.L m :.1.8.e.R - . X O . o = 5 i P / / I C U ! C m U >.:._ ^ b q 5 = 2 7 - 8 i P P P P P P P s L P s i s i u 9 t t 0 ; = * = * = = = * * = . o % # + o o = # 2 3 3 2 - - 5 5 a ", -"V b - $ 2 2 * % : r a r ; : - - - : = = * = * = o # $ $ = * 4 : - = * = : : : ; 9 d i 9 0 i i s P P n P I E E R P Y S A u - 3 , . . = r s U .U d C ! y y f / o.{ I z z q = + o + + $ 5 b :.q.>.| ( | 9./ r # # - - 9 a U / ] ] U ! o. .U s s n B Z u r s A P P A S Y Z e 4 5 q V ] X.2.l.D._.n.2.` ( X.2.a.a._.&Xv._ ;.9.O.2.j.f.o.2.s.m.z.s.0.b.U.b.b.R.].R.L.J.Y.}.].'.R.P.}.=X;X*X:XsXlXxXuX@XeXeX#X XS.n.$XkX7XW.T.W.g.^ S N e 7 % . . . # = . X X . . = 7 u B A | V.W.S.D.9XjXD.v.Z.(.#XeX*XrXlXgXgXpX=X#X;X-X{.{.].].@XQ.U.z.m._.[.T.z.S.S.m.a.a.d.z.r.#.>.u.u.2.1.9.=.<.T.OXm.a.a.X.{ ' o.f.m.D.n.9.X.X.! b q 9 q l Z T V m Z C C t q t z Z B p t U | _ I U / ' ` S p 9 : : = $ b | @.] / | >.e._ u @ # . + . + = p z m U X.1.~ f m S _ V d ] | V y 9 @ o # 2 # 3 0 m P P P E E E L P I P f s s a u q t y 8 $ ; - - = = = ; : 4 = = % = o o + = = # # = = = - 3 5 5 i ", -"C U a = = = * 5 e 5 9 5 = 5 : - - = # @ = = * = # @ $ = 3 5 5 5 - $ = * = * * * ; r b a i s s s s E | / R R / I A P R R b - @ @ @ . : i t b C V A V d y p C / { { / B p i t * o + + # 2 5 A :.| / / ( o.U q = + ; 5 5 ; 8 a B V m V W V i n Y n s z A _ ' ] | >._ A V A l 9 5 z V ~ } 1.a._.n.a.,.o...{ { 2.s.'.$Xg.>.8. .( f.D.W.v.1.e.z.d.d.s.b.L.M.n.l.b.W.OX{.{.XX]. XT.T.T.Q.+X;X%X*XyXuX XE.7XaX@XS.M.W.8X7XF.S.S.T.z.o.A i b J G q . . . . z Y 9 . X . . . . + l Z G l t S 9.W. XS.Z.@X0X7XD.v.D.8XrX~.c.&XdXyX;X;XeXQ.L.n.M.].+XoX+X=X&X}.T.b.z.d.m.m.m.s.u.s.0.8.r.b.C.Z.4.{ X.2.1.M.OXn.a.X.X.X.o.<.<.a._._.n.#.[ ~ C p e 5 a Z Z U ;.:.' =.;./ A s c S Y d y C U P V V B a 5 = 5 5 3 + = i / } ] ] U | | b 9 2 = = + . 4 u t a S ' [ { ~ B a s n P V I ~ d p r @ . + % + 3 A ;.R E I I E E .| } | b i d t t p y 8 - @ @ * = = = $ - 5 r 5 * % o + = = 3 3 = # # - 5 5 - - = 9 ", -"I C a * + = c p r 5 9 5 * - = = = = @ # * = - - - 5 - = o = = - - $ 4 = = * * = = = 5 5 9 i s z m T ..] ~ I P P R ] R m i 0 9 $ . o 9 t a C b t d d d B d a V I U ^ _ V a t 9 o # = = 5 w z 4.t.| ~ ..o.B 9 3 + & = # o * - : 8 m V d a T E P s V | 1.| >.r.w.E >. .S V 0 9 i A ! ~ X.X.+._._.#.` ` [ [ [ 2.2.a.l.g.u.t.O.<.f.S.C.C.x.8.9.s.O.w.d.m.M.M.L.U.Z.S.~.Y.T.S.j.1.f.j.q. .l.R.R.}.OX X^.Z.E.E.D.l.v.^.^.^.D.S.'.T.s.Y h n M Z K M , . . + A B.W.t.z . X . 7 G H N M b z / g.R.Q.V.C.^./.E.v.D.D.W.W.E.E.].|.{.T.'.g.1.5.g.a.0.b.L.L.R.P.L.Z.Q.P.K.J.m.n.r.w.r.e.r.Z.I.E.D.2.o.2.j.h.x.s.O.a.X.X.X.~ .2.a.n.m.9.#.[ W W B 5 5 v A U :.q.q.u.u.1.| >._ B c ` .U a d P m 8 - - # = = 2 + = 5 q R 9.{ ] ..t.| i 5 3 2 = % & u p p A ^ ~ U I a y y d a a t r f B p c : o o = q u z P / P I P P I .} | P a i d t 9 : ; * - = = @ $ = - ; 5 * @ % % = : 5 2 - 3 = # # = = - ; = # ; 5 ", -"V z 9 = + + * u 9 5 : ; = = = 5 5 : = = = % = = $ 3 3 = # o . o = ; : = = % = * ; : : - - 8 9 z n m I | / Y S B I R E P R A 0 # o @ * : r b s r p a i b B a a V P I R J a i p 5 * * * * : m 8.k...] } { s 8 i 5 # + @ = = 9 9 - 8 t s R } T B J ;.1.| .>.>.>.>.q.q.' J u 9 a S ~ ! [ [ X._.n.a.f.;._ ( X.a.X.X.a.e.g.a.o.X.j.D.D.D.T.l.9.e.q.8.z.Y.R.U.c.u.y.r.k.c.l.1.^ | 4.3.) U / g.L.e.i ; M ;.f.S..X.X/.0X8XE.V.C.W.Q.x.Y z G D n n G A l + . 7 ,.j.j.g.=.5 . . # l J A N v Z Z B | M.S.M.A.D.^.7X(.E..X$XV.e.=.i * W g.b.e./ Y ;.5.4.| ] 0.x.c.k.r.s.v.S.P.R.P.s.<.q.9.r.S.E.U.Q.I.t.;.;.f.j.g.a.X.#.a.X.` _ 5.j.f.n.n.2.{ ~ L W S p 7 c ^ ;.q.>.;.<.;.>.] ] >._ C S / .Y s 9 ; 5 q 4 = + + + O 5 u 5 A ..| ] q.k.;.u 3 = = * = w p p a U R R C B t a B f p p y r y a 9 5 * o o = u P P A P R P P P U | _ P b n 0 9 8 : 5 : : : - = = - - 5 - = . o @ = 3 5 3 = # # 3 = = = 5 5 = = = = 4 ", -"i u q 2 + + o * : 9 5 = @ * - 5 5 4 * % = = = @ # = = , # # = + & 2 ; * o + = ; 8 r i 9 5 - $ - 0 z n P A B B V m I P E P n q # @ . * 9 t q r 8 t y a t c B A U P P P n b z p ; & = * o - B >.e.] P U C 9 : q 7 = + o = = # @ o @ 0 R / R U _ q.4./ _ >.:.>.>...1.>.R M c u y W ! ! ~ ( X.a.n.n.f.=.W ( X.a.O. .o.e.s.2.{ O.S.9X.X X].'.l.e.:.>.w.b.b.q.>.1.) V m U I m V n b n Y _ _ ( V - . o o % Z B.^./.W./.7XE.x.B.h.b.x./ G G A A n n J ) M o 2 =.v.h.i.J . . , A R A Z b M B b M >.l.V.m.m.V.^.7X/.E./.C.3.z @ . o % : C | _ Y S B a s d V U R d P / 1.4.i.L.z.q.>.o.O.M.Q.E.E.@X(.u.;.| 2.s.9.X.X.X.X.X.W ^ 4.d.n.n.a.X.{ ~ ~ ~ W z u C Y | >.;.<.:.| ....] ;.7.<.! U / ) A : . o & # + # o + # u q 5 z R U I >.e.' z # . + * & 5 u a b V I I V V C B p a p p p r r r r 8 # o % - i P T T P P P m m m V P A b q - $ 5 5 u r w : - @ @ @ - = * % * = @ $ # $ # # - = - # $ = * 5 4 = = * = ", -"a u 5 = + # # # = % = 5 = : : ; 2 = o o = % @ = # # = $ # # = @ = % % o o + * : r 9 8 5 9 9 3 $ - u r r b B d n s P m s m s m 0 $ o * q i t 9 s f d a d B V U V s V n B V V i - 3 # o . # b _ .R A Y a 3 3 5 2 o . . X . . . - s m A A J .8.:.| _ .q.1.4.1...] ' Y c r r p S ~ W ~ X.2.n._.n.v.*.S ( X.X.X.X.2.M.M.2.1.o.l..X.X^.C.E.Z.y.q.q...R Y / S m a a a a t d i y s P m A ^ S 5 = @ o + + + l 4.B.f.v./.7XD.j.y.b.b.4.;.T T %.K ^ ` ' H # 2 =.h.A # 8 Y %.T T Y J ) | | u.S.M.l.v. X.X^.x.l.V.*.5 + + + o @ = 0 U / V d d d d d a a y i s d B Y / U / 4.4.8.m.'.L.I.^.2XE.r.O.1.u.S.x.X.X.X.X.X.X.U 5.L.m.n.a.2.X.! W W W a 9 r m R .] >.1.>.....( | :.4.>.^ A V A V t o . . . . . . # 5 5 5 5 M P V / ' U u # + + 2 # - c A B m d f m V I B m a d C m r 5 t d 9 # @ * r B m s s P P d P m m s 9 t 9 - = 5 9 9 5 5 9 9 = o . . o = o = = = @ * = @ @ # = = @ # @ % = * 4 : 4 2 = ", -"i i u 2 + + + $ = + + 2 5 4 = = = = % + o o + # @ # + # = # % = = % = o o o o * : 8 9 - - 5 5 - - : 5 : 5 b n i s I P I E P n 0 3 # @ : i m d V P f V C C B m s d d C m b B i - # o . + > u T >._ Y A 5 4 5 2 2 # % + X X o 9 m A A Y Y U ' ;...| / | 2.1. . ./ / _ T S A v p C ~ W ~ X.X.X.+._.V.:.A ' a.X.X.X.l. XE.a.5.1.e.^..X^.I.Z.C.E.u.>.S Z S S B d d z b d s L R ..8.#.] I m u u r 5 # + X + X 5 ,.A.v.V.^..X.XD.Q.U.u.| A A M Z N J Y n = + 5 2 l ) 7 X 3 , = 9 A P A n V B B Y .c. XQ.E.Q. XD.V.v.v.) 2 X + + = q t q i P R { 9.1. .A s s f s s s b n Y S B S ;.v.Q.'.R.E.^.(.Z.w.O.o.r.W./.9.X.#.X.a.` S 2.M.m.n.#.X.X.~ f f C c v C C / / / / | 8.o. ._ R | | >.| Y P A S Y z $ . . o o % + = 2 5 = b / / >.>.S 5 # + . # # 9 B V a s B d i s V I V S A V B m a a t - # = 9 i V U I P L P s n d s 9 8 9 - * * - 5 = 5 5 : 5 = o o % + % % = = @ = = = o = # @ # o o @ = = = % * - 5 # ", -"u 9 9 = + + # # @ o + = = 4 ; = = + # + = + @ @ o # # # = = = = = = + # + o @ * @ = = - - 5 5 ; - 3 5 5 * 9 0 0 0 d P s m n i 9 5 $ @ $ 9 b n s s s t t d V I V V C V a m V 0 ; $ # # = = r C 1.8./ B 5 * = + # # . O + o - s A n B P E ..1.| . . .O.1. .( ./ ~ ^ A Y _ Z d B f f W ,.X.X.n.a.l.4.C W X.X.[ X.v.I.Z.g.9.:.u. X@XI.Z.U.E.E.x.P V J S m d d s b V P ] i.c.k.0.l.r.P i q i z M i 4 % + . u ,.f.A.D.$X$Xl.~ V d b z b B p p p t 9 - : d J Z % = n 7 3 Z J z 5 5 u a i z Z B b b d m U 1.W.$X_.D.v.f.T $ . . + = 7 z v i i i i ] l.x.r.k.i.w.] P A B d a m B S S B T V.].T.M.I.E.#X^.y.>.o.f.D.S.j.X.X.9.X.W Q p.A.n.a.X.X.[ ~ C f f p S _ C V _ ` ` / ] 1.<.| _ E E .<./ P M d b V h $ o o . o * @ + = = i R :.q.>.A 5 # # + # - - t B B B A B b B U I d t f n s s B s ; @ @ 3 9 9 m V V m n m s 0 9 - 3 5 5 = = - 9 - - * * % # # % = + # = = = = = = - = * o o . o # + + % = = ; : 2 2 # ", -"9 r r = + . o o = = # # = ; 5 5 2 + # # = o . o o # @ # = = * = = - 5 = = # * = @ = @ @ # $ # o @ = = 5 - = $ 0 0 s s s t b n 0 9 8 @ o - p b a s t t y d V V d d y p a a d 0 8 q 9 $ = = 9 B e.8. ./ t @ o o + . . . % o o = u s f s s R >.o.( | | .| .;.| R / R / e. .B B d y C [ X.X.X.a._.M.g.Q W X.2.X.X.0.x.Q.D.e.>.V.@X/.E.U.W. XE.4.Y ^ S d d s f L f / 0.J.w.w.0.g.s.r.E m n M b q - 5 M u o + W 3._ ' _ ^ Y V V n i 5 - = * ; % = - ; ; ; : a B : 5 q q J z - = = * = * = $ * = 9 t b B C S / R ' <.3.,.a o . = z z - = q z b b m .d.k.r.w.i.c.c.e.^ m f V d b m J T T y.W.].Y.E.Y.8X(.y.q.g.W.T.g.9.{ X.O.` N ' n._.n.9.[ X.X.! f f a N S <.1./ ' ' ' | _ | .>.;.=.;.:.| V z m A m q $ o o o o . . @ @ @ @ a _ / q.1.b 3 # 2 = 5 r 9 u m b s y s a C V d y t 0 i i i i q = . - 9 q r s i 9 s s 0 8 8 - $ = 5 - * @ @ = @ = = % = # # + = = 3 3 2 - - = = = @ * o o . o # # # # 2 ; : 5 = # + ", -"9 t 5 * # + o o o # . # 2 5 5 : + # + # + o o + # # $ = 3 - - 5 5 3 = $ = = = = ; = = @ @ = = = # * # = 3 $ $ 5 u t t 9 5 5 u q 0 0 - o $ 9 i z i a b s d y a a y s p y p p i z n n 0 - # 5 V 1.>.R A d t 9 - # 2 5 - @ o . @ - s P i 9 z U / R Y R :.1.>.| T | :.| | 2.( S B p f W ~ X.X.X.+.a.d.m.7.B U O.[ 2.g.h.W..XW.q.q.Q.XXE.E.D.u.;.T J B d V R ] E P } d.J.d.w.0.0.w.8.w.E z n v 5 # = u z i u - $ - d A t 9 s A d q - * @ @ $ @ = = * = = ; - * * 8 r - - 5 5 ; = - $ $ - * = @ # = = @ @ * : r a s 0 : p S t = - - i b s 9 $ , 0 n z V ..r.#.8.9.r.u.k.c.u.R P I ~ U f f M Y Y 1.l.m.Z.E./.V.>.y.^.$XL.l.j.o.[ X.W W s.M.n.a.9.X.X.~ C f f y c S o.1.R ' | ` ' >.| >.} R Y J R P i 0 m U p ; # o o $ 3 3 $ $ : r a a V ] 8.:.M = = 9 i B B c z a s f y i b a y d y i i a d d q - o . 5 i 0 i 0 5 8 0 s 0 0 - $ $ = * = = = # * = * o & = = = = 2 # # # 3 3 3 - - 3 = = + . + o o + o + # * : 9 3 # o ", -": 9 5 ; # + + + o o # # 3 9 9 = # # + + + o # = $ = = 3 5 5 5 5 = = + # $ = = # = 2 2 = = - - = = = # + o $ . $ 5 5 9 - : 9 9 q i z 9 + o - 9 i B f d d d d d s i i a N N a i s i s i i 5 9 V ./ B b t r 5 = 5 5 u q # @ @ # # i B n i i P T Y U | 4.:.' | | | >.^ ` ' ' A d y y f W [ X.X.X.a.n.d.9.! d ! ] O.s.j.v..X7XV.| r.E.U.Z.e.T M q 9 b ! U I I d I #.d.0.w.r.J.%XoXJ.w.%.A l * - 9 s b z z s i 0 8 5 9 9 9 : - * @ * = = - : - * @ * * o @ ; : - 5 5 u i 9 9 5 : 8 $ @ # - @ = - = - 3 $ = @ @ - ; - 9 5 : 9 9 q b n z s n i 9 # - i C ..r.L.$X].j.f.g.e.g.8.I P I ! R U b q v V ` e.v.I.c.q.:.D.7XU.s.k.a.X.` W V ` #.n.L.d.X.X.X.( C f f p a ^ 1.| Y | 1._ | :.>.>.>./ P Y _ P t i n B 5 @ o o o 9 z q q 3 $ 5 r a A U ' _ b : 9 i z b M s i u c B d a a a d B d m V f f i 8 - o = i z q q 0 9 - 8 9 9 - # @ @ . o @ = - - = = % = = = # # # + # # , 3 3 3 9 5 - 5 = = = = # o o + + o * 5 q 5 2 + ", -"9 9 9 5 + O o o $ , # = = - - = # # + # # # = 5 5 5 5 5 = - = = 2 = + # = % % = * = = = = = = $ = = # + o o o o @ - 5 9 q t ; - 9 9 9 = o # 5 9 p f f V B V f i t s a b s a i i i q 9 u i i z N a s i r = = 5 i i q b 9 @ + + + % ; i b b V R Y ! | <.;.' _ _ .;.` ` 2.3.H a y f f f W X.a.X.a.d.a.a.2.V n ' o.s.m.j.V. XS.:.4.V.x.r.| v - # z J W S A A P | r.J.c.g.e.E.rX#XXXi.P 0 - 5 s P P s c z i t 8 - - ; ; = * @ = * - - 5 5 5 8 : = * @ * = - - 3 5 5 5 : 9 : 9 - - - - @ @ # - 5 5 3 5 5 ; $ @ @ @ * ; 8 5 - - : t z i s m I m i 3 - i ^ M.OX%X#Xb.4.j.v.c.e.] V I I P R J 0 $ q n ' r.v.g.>.q.^..Xn.g.s.o.X.` N U 1.X.a.n.2.X.X.( W C f f p t _ u.1._ | 3.| ' | >.:.<./ Y R T b z s u $ o o o $ $ h z h z z - - : r z b c z i s i q 9 u a i i t d B d s t r d B B V B d 0 0 5 @ + - 9 9 : - - 0 8 5 3 = @ o o o . * * = = = = * = = # $ $ # + # # + = = = 3 3 $ 3 3 5 5 2 5 = = & # = = = = 3 $ # $ ", -"r t u 2 o + o o $ , 3 = = = 2 = 3 = # 2 2 = = 5 = - = - 3 - = - 2 = = # # * o = = = * * = = - = @ = = # o o # # o # - 9 9 - o $ - - 5 - + @ = 5 p d V f V B s p b A B m d i z i i u 5 9 p B s 9 - ; * = 5 u i q q i n z $ o # o + + 5 q i n T | ) _ ;.1.1. .o.8.' ! ` <.a.' d d f f f W ~ X.X.[ a.m.Y.M.>.B V ! o.j.f.v.^..XV.5.<.1.) i ; - i U S C V A _ . .g./.W.k.i.E.(.c.e.E 0 - n 8.V.E.U.e.A t 8 * - - - $ @ @ = - - - 5 5 5 5 = = $ @ o @ o @ $ = @ @ - : 5 : * @ @ = * @ @ o @ # $ ; = = 3 3 - ; * - = @ @ * = - : : r z R z.U.L.i.;.s - a <.u.Z.XXb.0.d.].W.r.>.| U m A P P P 0 - : a ' 1. .8.v./..Xj.j.j.` C f B f.M._._.X.` X.[ ~ W f f C y b ;.e.1._ _ <.1.' | >.8.1._ ^ ' T i q 9 3 $ o o o o 9 s z i 0 9 i i - = * - ; r n z 8 8 9 r t i t y a d d b a a d V f B m i 9 9 $ o # 3 - ; - @ $ 8 9 9 3 $ . o # # @ * = = = = = = = = @ = = = 2 = = # = 3 3 , 3 3 - 5 5 2 = = 2 = = = = 2 = * = # # # ", -"p B i 3 + + o = 5 5 5 = 2 3 4 q 3 , , 7 5 = = - = = 2 5 5 7 : = = = = # # % # % = = = = # = = = = @ + = o o = = o # 3 i q $ $ 3 9 9 8 5 3 o o 3 9 0 s V C m p p a B B f d t i b a i p c N a t 9 5 5 ; r i t a 9 9 i s i 9 # + + . + $ 3 5 3 h T %.R >.w.y.8.>.| A A R 4.h.y.Z t B B W W W ~ ~ ~ [ _.|.OXn.S p S 2.j.j.V. X7X6X X5.Z r - 5 i A U V n n U :.q.4.j.m.a.2.#.8.b.x.:.A q | Z.E.#X#XXXQ.' : ; - - @ @ @ * * - = - - = $ # = # @ # @ o # o @ o % o * * 5 ; ; * % o o @ . @ @ . @ = = = @ @ @ = - ; = - * * @ * * ; - - i r.XX{.oXoXI.x.I r _ q.x.l.O.a.X.9.b.g.1.q.>.P M n P P b q 8 - e ^ j. X@X#X^.j.j.j.5.A i _ U.&XOXa.~ ` X.[ W W C C f a W t.r.| R Y ^ :.7.2.a.r.<.T =.T 9 - 5 - # # + + o # q i s i 9 9 i a u 3 # 5 5 u z z n s i d d V B y a d B d d a d f C B a 9 5 = o o , 9 5 9 5 - @ 8 q q - . @ - @ @ @ @ @ @ = = = * = = = 3 = = = + # = = 2 2 - 3 - = = = = = 5 = 2 7 3 2 3 5 5 5 = # # ", -"a B a - + o 2 u u z i - 3 q q q q 4 3 $ & & & 4 5 4 ; = = : 5 5 : 4 = = = = % = = * = = $ # @ = = = = + @ # $ = # o , 0 9 - # # = - - , # # . o 3 5 9 q b V b d B y d d f B U C V C a r : r y u i q 5 r u u i q 9 i b b 0 5 + o + . o , 3 # $ A E T E 8.i.q.T S A A A n V Y p w B B C W W W [ W L X.'.|._.5.W N ` 3.x.W.(.7X8XS.V = 5 u i n A P V / r.r.| .. .o.n.a.~ ~ { U A V Y t.Z.Y.*X#X~.R.M.S @ @ @ @ @ @ o * = = = = # * = * # @ = * @ @ o @ o % o o . * = * % + % o o o @ o @ @ * * = @ @ = = @ = = * @ o * o @ @ @ @ $ - | J.T.Q.#X(.L.M. .A Y S ` ( ! [ e.g.o./ ] :.x.y.U m V m a q q 7 ; ' .X8X#XQ.j.f.3.T b _ k./.%XM.[ X.W W ~ W f p B f e M ^ A M A A Z S :.4.5. .U U R z o # = # o # o o # q z n s 9 - p z i i 9 5 u a v i q u b B V U ! S B b s V d d B B V p 9 : 5 = . . @ 3 $ = 3 = # $ $ q 5 @ . @ = = @ @ @ @ = = = @ @ @ = * = = o = o & + 2 = $ - 5 : ; 4 4 4 2 2 = = = = 2 3 7 5 u 4 3 9 ", -"d m a : # # 3 9 b V z q q z z 5 3 3 , 2 * & 2 2 * = 4 ; : 9 r 5 5 = = = = % % * % = = ; - - 3 # @ = = = @ @ = - - # . @ - 8 , 3 # $ 8 $ , $ o . o 5 9 3 5 b C V C C V B A S a i t p e w 5 5 5 r 9 5 r r 9 r u q - 0 b 0 9 9 $ # o + # # = o . q T P P P P R P A A T T J G T N 5 p d y N C ~ ~ ! ~ ~ n.|.W.h.3.Z N ' y.x.^.8X7Xf.u : 5 9 b V A V V ] b./.k. ./ ! a.s.2.9./ t r C q.b.U.#XXXJ.d.d.e.C . @ @ @ @ . @ = * = # . @ = = @ = @ * @ . o @ o o o o @ % % o @ @ @ @ o o * o o o o o * * * @ @ = - * o = = % . o o @ @ @ @ $ I r.i.c.Y.(./.I.J...a 5 c o.p.a.n.X.! ` o.I.7Xi.P V V V C z q 5 ; B V.8X7XS.j.y.T n Y 4.x. X X9.X.[ [ ~ W f f B f r p G J P R _ / U S T Y S U Y _ P - . % + o o o o @ 3 9 9 z n 9 9 u i t t r 9 5 5 5 5 5 - 5 9 r u p a S V B V B B A C p : : 5 = o . . # # $ 3 $ @ = - 5 = . o # = - = @ = 5 - = - = $ - - - = = = + + % # = 2 = - 5 5 : = 5 : 2 = = 2 = 2 = , 3 7 3 l z i q ", -"U B n r # # 5 l J ^ Y A A z q q 5 5 2 # = 4 ; 5 5 ; : 4 4 5 = ; : 3 = = o * = + % = 2 ; - 5 5 3 - = = : 5 5 = = $ $ o . . @ $ # # 3 8 $ # 3 # # # # q 9 9 s V V C C C B n u 5 5 3 * . o % = = 5 r r 5 : 9 r i t 8 9 0 8 9 q q # @ # o o o + . = H _ R ] _ *.T Y Y P T Y A Y Y 9 r V d d W ~ W ~ X.~ [ n. XD.v.;.B G <.5.t.u.j.p.C : u i M S B B V P 8. X].X.! I ~ e.u.;.Z a ^ g.I.U.@X~.c.0.0.0.~ 5 @ # @ @ * @ o % = * * # * # @ @ * @ o @ @ * @ o o % % o % o @ # @ * . @ o o % % * o o . @ * = = @ @ = o = * = * o * @ @ @ o @ s #.r.q.1.h././.L.z.2.A a S <.f.X.` ~ ( g.7X^.:.A V C B Z b r w w ~ f.g.j.f.t.) M H :.D.W. Xn.[ ~ ( W W W C y B C r u J M H P Y ^ U Y T %.R R / _ z @ o o % o o o # 5 0 9 - 5 p 9 9 u t q r 9 9 r : 4 2 # o o . @ - 5 r c C B V B B B c r 5 7 - # + o # 3 $ 8 8 - = = # + . . o - - @ - 5 - = = = - 3 5 - = - = = = % = = = = 3 2 5 ; : 4 = 3 5 = 5 5 2 = 2 = $ , q q q b J S ", -"/ C i - # = 7 a Z _ Y S J n u 5 7 5 : ; 2 = = = = = 4 4 ; ; 4 * - = = = % = = # = = - - , - , # - ; - ; r e 5 * # # o o o o . . $ = 5 - # # # # @ . @ = - $ @ o @ = = $ # # # + o . . + = = 2 7 e : : r r t r r 5 - 0 i q i 5 = o o o # . o . . u ) _ R R _ T Y U ^ _ / J R / s : a B V C C W [ [ X.X.a.D.W.Q.v.;.b M =.5.j.x.f.S : t b B A V V C T <.l.m.a.X.[ C t 8 s S o.j.z.U.oXU.r.8.r.8.I 8 o @ o @ @ @ # @ @ * o o % @ % o o o o * o o o o % % % o % % % * % % % % % % % o % % o o % o o * o * o o % * = * @ @ o @ @ @ . @ $ t { g.e.1.l.XX(.M.z.e.R V 9 : a / { X.n.T.u.>.U V S S C B a 9 r ' v.j.s.1.` v H 5.v.D. Xm.2.X.` [ W ~ W W f V a : B ;.| R T J Y Y Y R _ T T ' H 3 . + . + . o + @ - q t u u q 3 5 r r 9 u 9 5 w 5 : = 2 o o . o o = = * * * = $ = @ + * ; = o o # = 2 = = 5 - $ @ @ . . . o o @ = ; r u r * = ; ; = 2 2 3 - = = % = = % = = = = * 5 : = = - - 3 - = - = 5 3 3 7 9 q z A T P ", -"I Z r # 5 l a v c Y ^ b i z l 5 q q 5 7 4 = = = 2 5 * = 5 5 = = # # # + + + + # @ = 3 - 3 # $ # @ * - ; : 5 e 5 # + @ @ o . o @ o + = - # # # 3 - o . . o + + @ o $ - 3 = # + . . . . o o % = = 5 u t 0 8 9 t u 9 - 9 i i u u 5 # $ # # + . . . + M _ P A T T _ J C U S Y | >.T w p C C V I ~ [ [ X.2.2.f.U.XX@Xx.| M M ;.r.u.8.Z w i B A U P n Y .o.( a.m.d.! t i Y | { 2.l.L.oXR.0.8.u.8.s $ @ @ @ @ @ . o @ @ * o o o . + * o % o o % o o % % . . % o o o . % ; o . o o . o o o . % % o % o . o . % . % % . * @ @ * @ . @ @ @ @ @ * A e.g.9.k.~.XXU.g.4.' _ S t b .n.n.O./ ;.| C B A Z f B i 0 ^ e.a.8._ c Z 3.D.OX].D.p.2.,.X.[ ~ W W W f V 9 t Y ;.| P R Y A Y / Y T Y / _ p . . . o o % o . # 5 i u t p 9 - r r t t 0 0 p u 5 = * % o o . o o % % = = = * = + % + o o o . @ 2 = # # # = $ $ . . . . o # o * * : 5 5 : ; - % + = # = 2 3 - = + + + + + # = = # = 5 5 5 * - 5 = = = 5 - 5 q q 0 q z z s n ", -"~ S q 3 z A A B B U T S b u e u 9 7 5 9 5 5 ; 3 ; 2 = = = = = # o o o + + + o o @ = - - - # $ # @ $ ; - = - - 5 3 3 # # . . . . o . o @ # # = = # # o o o o o + @ # # @ + + . + + . . . + o + = 4 r q 9 8 0 z i q 9 0 q b i c u 3 , $ + + o . . 5 T _ Y A Y T T Y T T T _ E | b 5 B U L C ~ [ [ [ X.s.v.S.S.D.C.B.;.M B :.u.;.S b a M A P P M ~ .{ ~ ~ 9.l.( J ;.;.R o.k.U.oXY.0.#.g.>.t $ @ @ @ @ @ @ @ @ @ @ o o . * o + o * o % % o o * % . . o . o . o . . . . . . . o o o o . . o * % % % . % . . + o . o o @ . . @ @ @ @ @ @ @ * d 9.g.8.i.Q.@XE.t.=._ ' _ Y <.j.X.! ~ ] { I f n V n V s i Y 1.e. .c B ,.B.D.A._._.m.f.2.X.[ [ ! L C W a 5 A ' T _ Y R R A Y ^ U Y R _ Z * . + o o % % = 2 7 u a i t u 5 5 9 p a 0 9 0 q 5 - @ * o o . . . o o + + . o + # o o o o o o $ # = = $ + o . . . . o . o o # = = 5 5 : * * - ; = # + # = = - - = + o + + o o o . o @ = - = = = - 5 5 3 5 5 5 9 0 0 q q i n Y ", -"/ V q 5 b T Y B R R A n i q q q u q u 5 5 5 3 2 4 = + & = = @ = $ = # o + o + # = = $ - $ # # # $ @ - - - - 5 - $ 3 5 8 @ $ o o . . . . . o o # # 3 $ @ o o @ o o o o o # # + + = + + + + . o o o * - $ $ 8 q i 0 n 0 9 q i i i 5 5 3 + + o + . h H T Y A Y Y T _ T ;.T T :.T 9 b U ! W ! { X.( X.s.M.D.D.V.^..Xh.| M B 1.;.A Z b n P P P P ! ~ ( ~ I I Y U Y T P .k.S. XU.0.0.l.e.i @ @ @ . @ @ @ @ @ @ . o @ * * * % % % % * * o % o . . . o . o . o % o % . % % . % X o o o % . . o . % ; ; % % % * * % . @ @ @ @ @ @ @ @ @ * o @ * V u.i.8.k.XX XV.e./ ~ / ^ Y W W f ~ ~ ! ~ V P P A n n B Y ;.( a C 3.D..XS.n.S.D.n.a.,.X.X.~ ! f ~ W 9 0 %.:.T ' T ;.| A S J Y J T J q . . . . o o # 5 5 5 c t a u 9 i v z r : - - 3 $ # @ . % % o o + # % o + + + . + . o + o . . o # # = o . o . . . . $ . o @ 3 5 5 = = 5 : ; 5 5 = o o = + # = - * = = # + o # + % * * * $ = = = # = = - - - - 5 q q z z u q b A ", -"I s 5 9 b R Y P T P P s z 0 q q 5 5 9 3 3 - 3 = = o # # + o % = # # $ + # # + # = - - * - $ - $ # # - - = = - - 5 5 3 3 # 2 $ . . . . . o o o o # 3 2 # $ # + % % + # # o + + + o + o . + o @ . . @ @ $ * @ - - 9 0 0 0 0 t i p q 5 = # % . + . * Z ` _ T S S U _ | E T T %.R 9 : C ! W W ( X.X.( ( a.n._.A. X X_.m.4.V d C S M s n U U f C ~ ~ W y W X.X.` ` W ;.u.S.Q.b.e.0.x.e.d * o @ @ @ @ @ @ @ o o o @ @ ; - * * * * % % % o o o o o % . o o o o o o o % o o o o o o o . . % o o . % % % * % % = = 4 = o o @ @ @ . @ @ @ @ * * * * I 0.k.r.d.W.Q.Z.0.{ ( ( ` ;. .f y f ~ W W W ! W f b V H B t A 7.D. XY.M.D.m.d.X.[ ` [ X.[ ~ ! ! f ; t _ T T Y ) _ T A H T T _ T z + . . % o = 3 9 u a i i i i q 5 5 * % * = = . . o o o o o o . o o o + + + + + = # # o = = = = # + . . . X . . . . $ @ $ 3 5 3 3 5 = = - 5 3 = @ = ; = = - - $ - = # # o # + o = = = @ @ @ * o @ = - 5 3 - 5 q 9 8 q u b n n ", -"R b q q z S T A s 0 z 0 0 5 0 l z u 5 9 q 5 3 2 = o # = @ # @ @ # # # # # # # # @ @ - - - - 3 3 $ # = = = 5 3 = 2 - = 3 3 5 3 o . . . . . o . o . # # # = = 2 = 2 2 = = # = # + + o + o o = o @ - 5 - = 5 3 @ $ o $ i A d 9 t m i 3 + # + + + . O 5 Z T Y V M n P T T T T E | A : a ! ~ ( o.X.X.X.X.X.p.j.m._.$XOX_.C.:.a : V Y s m A B f W C y f W X.2.o.( ( o.j.S.W.V.2.9.k.e.s @ @ o @ @ @ @ @ o @ @ @ @ * ; - * * % % o % % o o o o o o . . X o o o o % o o o % % o o o o % . . o o . o X . % % * % * ; : = @ @ @ . @ @ @ @ @ o o o @ - U v.d.8.r.Z./.U.0.` ( ` ' 5.2.W y y W W f C S a z S b ; B u.C.D. XOX'.m.n.a.X.X.X.X.X.[ ~ ~ I 8 : Y ' Y T P R R A P M M J T M # + . + # # 9 i a 0 q s b 9 @ # o * 5 5 * 3 5 = = % % % o o o o = = = % = = 2 = $ $ # # # # # . . . . . . . . . $ 5 - # 3 3 5 5 - 3 - = = = = $ 8 - = - - - @ # # # # $ # = = @ @ o @ o o @ @ @ = - 9 5 3 5 q q q 5 7 0 i ", -"P Z u 9 b Y :._ i q z z q q q z q 5 5 5 5 = = = = @ o @ * @ * = # # + # # # # $ @ - - 8 - @ - 5 5 # # 2 = = = 5 3 = = = 3 5 3 $ . . + . . . X o $ = = = = + + + + = = = = + = # = = + + % % @ 9 b z i u a r = # # $ q a d d s s b - o + o + % . X 7 Y R A K A n P T T P T 1.| p ; f [ X.o.~ ( #.X.[ X.j.S.A..X&X_.F.C.e.n z n d s V m W C y f [ X.X.! W W ( 2.D.W.v.e.<.f.9.V * . @ @ o @ $ @ . o o @ * % * * @ o o % % % o o % o o o . . % o o o o o o o % % % . o o o o . o . o o X o o o * o * % % % % * = @ @ o @ @ o @ @ @ o @ * @ @ - R k.r.>.w.E.~.b...~ ~ ! _ o.o.~ f f f C B B n n n i ^ V.C.E..X.X'.M.D.f.{ X.a.X.~ W X.{ [ s $ b e.2.T R R T A n H P P T P 2 . . X + + . o o o 5 b s s s i 0 - $ = # * p i 0 i z c 5 * = @ o # + = = # $ # $ * = = @ + o # = 2 # + + o X . X o . # , 9 5 - - # # 3 3 - = ; * # - 5 - = = - 8 - = # $ # # 2 # o % o @ @ # = % @ = = - = 3 5 3 3 8 q h q 0 z n ", -"I B a i b ;.l.1.b q i z b v c q 3 - = 3 - = = # * * * # # + * + + # + # , # # # @ - - ; * - - 8 - - = - 5 5 - - = # = 3 5 3 - - * % o . . . + = = = $ = = = = = & % 2 = & = # & + % = . + # - q 0 9 q p t 9 - - * ; u t 9 r t 9 q 3 = # o + + + . . . q A T A M M A %.E E E | ;.a ; w W ! ~ W ~ X.X.[ o.o.r.s.m.$XdX0X.Xc.>.P s s y V f y y C [ X.2.` W W ~ X.n.M.n.O.o.a.2.C - * o @ @ @ @ . @ @ @ o * % * % = = = % % o o o % o o X % % . . . . X o o o o . % . . . o . . X o o % . % o . o o o . . . = * = = = * * = * @ @ o @ * @ @ @ . @ 9 R t.q.} q.M.U.g.{ ! U ! ` o.X.W W y a C V t 0 n U 4.S.@XtXtX.Xn.j.9.X.o.X.X.X.~ W W ! B 5 - A o...] E :.T M n m A Y G 3 . . . . % * = % = 5 q 9 t u 9 r 9 = 3 * - q i t q r r r = % . % = # # + # 3 = $ = * = = = = = = $ 3 3 # % o . o o o $ 8 - - 5 = # $ - : : 5 5 = = - 5 - $ $ - - - - # # # # # # + + # + = * * * * * * 2 # = 3 5 - , 0 0 z i z n ", -"U Z p v B _ 1._ i u 9 q i b n h - = = 3 3 # + # % * $ # # % + % + . + # + # # # $ * = ; - - @ - : - * = 5 5 - - = * # q q 9 - # = o o o . + + # # = @ $ = = # + o = * ; 2 = # = = % = = # $ q i i i q q t t r - * = - - * 5 q 5 = 2 = + + + . . . 3 n i u a b P T R R ] R z % @ u S a d / ' ] o.( ' o.s.U./.7X2X/.E.w.R M t a f y y C ~ ( o.` W S S / O.s.a.{ o.e.e.Y 5 = + o o @ @ o @ @ * @ * * * % % + % % . . . o . . o . + . . . . X o . X o o % + . % + X + o . . X . . . . o + . o . + . % % % % % % * * = * @ @ @ * @ @ . @ @ @ = i ' q.8...1.a.a.<.` W W ^ ( [ ` ! C y f B r s A _ y.^./.(.7X_.V.a.o.o.o.( ' [ W t B S 7 + # B / R R R R A b z i M b = X o + * + + 2 3 3 5 9 : = = $ * ; 5 u t q t t r q 9 7 % o = = = * * # # $ , = * * * # $ = = # $ = = % o . o . # $ $ - 5 5 5 = = * 5 - - = * * = 5 = * = * * ; $ # o o + + + + + + o % o = * * * = = # , 3 2 = 3 9 z n z u p ", -"c 9 5 5 5 z Z v u 5 3 2 3 7 7 5 - # # + + o + + + + . + . . . o O . X X . . . o . o + @ @ @ @ @ = o o o o + + # o o o o # # @ o . + . . . + . . . . . o o o o . + o o + . . . . . . . + . . # , = # # # # $ 3 - = o . . . . + + + + + . . X . . X 3 7 = - 3 0 z b z z i q = X , 5 q r c a p a B Z H Y =.:.:.7.:.:.%.A i 5 ; % w w N B p p u t c i c V B B B A S a 5 o . o . . . . . . . @ o . . X X . X . X . X X . . . . . . . . . . X . . . . . . . . . . . X o o . . . . . . . . . o # 9 z A A Z b Z B B p p t a p a c p w w : ; 7 z Y :.:.:.:.4.-.) H S B c p p p N q 5 5 + X 2 5 i z z n q 3 3 $ 3 7 3 . . . . + # # + + + . . . . o = : 3 = = = = = = = = . X . + o . + . + + o . . . . o # o . . + . . . . . . . @ @ o # = & . . . + = # o + + . # = = $ # # @ # o o o . . . . . X . o . X + . + + X X + o o o # = 3 7 q 5 3 = ", -"z 5 5 u u z A N u 7 5 3 # # - 2 = 3 3 2 + o o o + + + + . . + . . . . . . + . o + # o @ # @ @ = # o o o + # # + o o o o o o . . o # o o . . . + + . o o o o o = # + @ o . o . o + # + + O . . , 3 2 # 3 = = - = - = = # @ o # # # + = = . . . + 2 3 = 2 4 l z q 0 9 3 7 3 q z z s z B B p r B S J Y :.3.:.:.%.:.T M q : w w w p c p a p p a c C m b n A S z 9 # . . . . . o . . . . . . . . . . . . . . o . X o X . . . X . . . . . . . . . . . . . . . . . . . . . . = q M Y A b i B N p p p p a f a a r w w ; q M :.>.:.:.:.:.=.J Y H p p c M v z z z u q 3 3 7 q q z h q 3 = # 2 = + . . = # # = + + + + + 2 2 = = = # # = = 2 3 # . . + o # o . o o o o # + = + o o + . o + + . . . + . # o o + . . + + + . . # + + # + + # = = = = + + o o + o + . . . . . + . + + o + + + . + o + # # 3 = # $ , # 2 2 ", -"a - = u l v Z c 7 5 5 5 3 , # # = 2 5 3 3 , # # + X . + + + . + + . O . . # # + . . . # = @ o = = o * o o # # + + o O . . . . o o o o o + . . o + . . o o o @ = * = = o o + = 5 2 # + + # # . + # = # - = # = 3 = = 3 2 # # # = = = 2 2 . . + - 2 # - 5 4 5 3 5 5 , , 5 q z b b Z V C b B S Y J Y :.7.:.%.:.:.Y q 5 w p p p N a t p t r a b z b A J A i 8 @ . . . . . . . . . . . . . . . X X . o o X . . X . . . . . X . + + o o . . . . . . . . . . . . . . . . . . = 5 q b A n d d N p p u p p a N p w w w ; z T %.%.%.:.:.=.P P J C B B B V b i b b u 3 2 3 5 9 3 4 5 5 2 # = = o . . . . + = 3 2 5 = + % = 3 = * 2 = # $ = 2 # = # + X + = & o = 3 2 # o o # + # + = + o o . + . . + . o o o o + o . . . . . . + o + # + + + = o * @ @ # o # o o . + + + X X X X + + . O o O o o + # # 2 3 3 2 2 , # $ 2 5 9 ", -"c : - 7 p N Z z u 7 9 q 7 5 = . = # = = # # $ = # # = = + o . + + . X . + + + . . + + o @ = @ $ = + % % + + + + # . . . . + . . o o + + . . + . + + . # + o # # + o o o + # , 3 # # o # . + + + + # = $ = = = # = = = # # , # 2 = o = = = + . . X . . . X . + 2 = 2 2 3 5 5 5 3 = = 5 i a z b V M M M V A P P Z T :.4.:.Y G M i r r r r p p z p p u p p Z b n B A 0 3 , # . . . . . . . . . o o . o X X X . X X X X X . . . X . X l ) 6.2 . . G B.B.B.-. -.K . . -.+ v 7.. X . 7.+ O X -.N.N.B.3.4 . . . . o o . . . . F -.. . . # = 9 b A 1.C.b b b a e u p a p 7.p B A.p K B.C.3.=.q.3.T y.B.P M n Z m V n b b z u 3 2 = 2 3 3 B.D.A.A.B.G + . . . . X . . . . + = 3 # = 2 = # $ # = = - # 3 $ # = = # # # X . + o K F.r = = - + y.B.= % ,., # + # + + o . . + . . + o o o . X o . . O o # n 7.o # # # + = o @ o = + . + X + % % + + . . + + . + + o + = = = = # 2 = # = $ # 3 3 9 q ", -"u 4 2 7 c ^ qXbXbXaXbXu 3 l F.bXbXwXaXq @ # # = 3.bXwXwXwXwX-.. F.qX+ . o . l wX7.+ + o # # # # = # % = % + . + o . O . . o o . o o o o + . . . . # # + # # # o o o # + # # $ o # $ + . + . . + + + = 2 = = + = = $ 2 # # # 3 # = = & = = + . . . . . X . + X . + = = - = 2 3 = 3 3 3 u r u z M n A M M n m I P n A T :.:.*.H z p r w p r w t t p e e p c z z s m n 0 3 $ o . . X X . . . . . o . . o . . . . . . X . . X . . X A.wXJXv . mXUXUXUXUXmX bXZX + 7.UXbX bXGXX . wXUX6X mXUXUXUXUXUXA.. o . . . . . F.mX. . . o = 5 z M .XHXa c a u u u u u S UXj.Q UXp D.mXHXC.:.;.P n jXmXP P b n Z V m b z u i q 5 , = 2 5 UXUXUXUXUXUX7.o + + . X . X . . . + 2 $ = = = # # , # = 2 # # # # 2 = 2 = + + + + . + JXUXqX+ @ = *.UXUX-.c UX-.+ + + # # + . . . + o o + o o o X o . O . . O B.HXo # # o = = # # = % o + + . . + . . . + . X . + + = * % = # # # # # # # 2 , , 3 - 5 7 ", -"i 3 2 q Z IXUXLXKXLXLX5 5 PXUXLXLXLXKXu @ @ # = 6XUXLXLXJXPXUXB.-.UXF.. . . bXIXl + o o o = # = = # o + + + + . O o O . . # + . o o o o . . + + + . . # # $ + # $ . # # + $ # # + . . # # + + + . + = = = # # # = # , - # # # + + = = = = = . . X . X . . . + + + . . = 2 = + = = + = 5 u 5 5 r i z M G M b n b b B A P Z J *.T _ T Z p w r r p y p p w u z c z i i B B q = # . . . . . . . X . X X . o X X . X . X . . X . . . 6X^.PX2 Z UXB. A.IX+ X bXUXJX JXqX. 6 IXLXLX . mXbXX . % mXJX. X . . . = + F.GX. . o # 2 5 i n ^.HXz b M b c p p p t ' y Q UXB qXbXLXy.T A A P jXmXC S b z A M Z i u q q i q 3 # = $ UXB.2 = 4 JXmX% 2 = 2 = . . . . 2 2 = 5 5 # # # # = 3 3 2 # # # $ = 5 3 + + o + + + 2 UXJXLX+ # o wXLXUXh.+ K = # + # + # 2 # 2 + . . o . # # + + + X o o 3 , A.HX+ # 3 3 5 3 $ = @ o o . + + . X . . + . X . + + = & % o % o = = = # # 2 - 8 9 5 5 - 5 ", -"i 9 i i .XUX3.b z s z 9 B.UXT 5 # 2 = # = $ # + 6XIX+ # = i KXmX+ bXPXl + 7.UXD.. . o o @ + + = = = * % . . . . X . . . O # + . o o o o . + . . o . # o + o # # + # , # + + + + . + + + . + . . . . . + = = # # = # # # , # # + & = = = # @ . . . + . . + + . . = = + + + # 3 u r 5 e 5 q i z M b z z n A *.4.4.:._ T A T =.T n a w w r p p r r r a i u q z Z n q $ + . . . . . X . X X . . . . . X X X . . . . . . . . . 7.*.bX 7.UX G UXF . LXmXUX= 2 UX7. B.IX*.UXQ . mXjX. . j.UX. . . X . F.PXUXUXUXmX. 5 bXUXUXPXqXn 6XUXUX6XUXUXUXUXGXc p UX` ` UXJ ^.^.bXT T -.:.4.mXUXUXUXUXbXv 4.UXc q q wXbXq q 2 + o UXB.2 + bXmX+ LXUXUXUXPXB.. , GXUXIXwXJXUXLXK # :.LXUXUXIXwX# # qXPXUXUXGXl . X o . = UXqXUXG # # JXqXUXB.# UXZ # bXUXT PXUXUXUXLXB.. , mXUXUXIXbX# X B.LXUXUXUXHX. wXUXUXUXUXmX= o o + . X . . . . . X + . . . . + % = % = % + # + = = 2 , , 3 4 3 3 q ", -"n z n n wXIXC v z i n z 6XUX3 2 # = = = = + o # 6XIX= # @ & mXmX+ u IXmX2 LXGXX . . + + % + # = = = = # # # = # o o . . . o o + # # $ . . $ . . o o # o o o o o o , $ + + $ + + + + + . + + + . + + o o # # # = $ # # # # , # o + # # o o o o . . . + + o # o . o + # = 5 7 9 5 5 5 e u i q z n h z n _ :.:.T %.:.:.%.T %.%.P b r r p r e r p t i 9 5 0 z A b 9 # . . . . . . . . . . . X . . o . X . . . . X X X . . B.UX . 7.l + IXA.7 UX7.UX*.*.UXe . GXbX JXwX mXbX. X . _.JX% X X . = UX6XN v GXZX. F.LXJ v F.IXY ^.JXT v *.=.,.=.LXA.p IX=.' UX/ E %.T :.:.-.%.:.bXLXj.-.^.UX6.-.UXz u 7 wXbX9 0 q 3 # UXB.:.7.F.IXaX+ M M v v F.PX 7.LXK N.UXwXK JXwX+ bXJX*.G 6XUXl b UX3.H %.HX^.X + . + # UX7.PXF.+ G UX-.UX7.2 UXZ c UXB.= v Z D M 2XKX. t.JX*.K 3.LX-.. PXwXZ Z mXHX$ u G H J _ IX-.+ + + % . . . + . o . + . + o = + o * = = + = # + # # , 3 3 3 2 5 q n ", -"V z n n wXUXA Z a p i n qXUX2 = = = = 2 = # + = 6XUX,.,.:.f.IXB.. o A.UXGXUXH . . + . + + = % = = % = # # = 3 = o o . O O o # + $ $ , o . . . o o o X o $ o # # # $ , + + + . . o . . + + o . . + + o # # # , $ # # 2 # o + o # . + . o # o + . . X . + + + # # o . o 2 2 = 2 3 5 5 5 7 q q 5 9 0 z n A -.-.:.4.:.:.y.y.;.T T Y S N r y p c w p p q 8 5 q z n z 5 o . . . . . . . . . . . X X . X X . . . . X . 7.UX. + UX7.. GXbX-.UX= LXF.6XLX. c UX,.. F.IX% mXLXGXGXHXUX.XX . X . ; UXe . F.mX. bXqX# F.LXLXA 6XHXq 5 aXLXLXLXUXF.p UX<.3.UXR T %.>.y.:.:.4.:.bXGXT n l PXy._ UXi q 9 wXbX5 3 2 - = UXGXUXUXUXHXG # *.GXLXLXLXPX B.GXo + LX-.. qXbX= GXF.o # 3 UXJ *.IX# # $ wXwX. O + . , UX7.bXGXX ^.PX$ UXB.= UXG H UX+ . *.GXLXLXPXLX. F.GX2 $ o JXj.. UXG o , C.JX# 7 aXLXLXLXUX3.# = + + . o + . + X + . . . . = = * = = 3 = # # $ 2 2 2 2 # = - i n b ", -"Y M n A aXUXR A B c d a qXUX7 2 2 * = c ) T K 3 6XUXUXUXUXUXUX7 . . + HXUXqX. + . . + . o o = + o + o o + = 2 # o . # . . o # o , , , # . . . + O . o # # o # , , $ # + + . + + . . + . . + + . O . . o # # # # = = # + o # = 2 2 + + # + + # + . . = 2 = - = o o # 3 3 3 5 5 7 5 5 q 9 5 q 0 z z A *.| :.7.y.7.y.h.4.T H A J C p w p u u r p u 7 u z n n z $ . . . . . . . . X . . . . o . X X . . . . . . . B.UX + UX6.X 6XJX2XJX. bXbXmXbXX 6XUX7.7.F.UX7. mXJXqXqX6X*.o o o . . 4 UXl . F.mX bXJXPXHXB.q b ^.HXi 3.PXD.7.j.PXF.u IX3.7.UXT P -.y.y.y.y.y.7.nXmX*.z i LXy.*.UXq q q wXmX7 3 3 = = UXF.LXHXq 2 2 + bXmX*.*.wXIX A.GXo o LX:.o qXbX4 GXF.. + 3 UXK %.UX+ . + wXwX. + X + < UX7.7.UX2 GXbX# UX7.= UXZ H UX# + mXmX-.-.wXPX+ F.ZX< # + HXB.. UXJ o # A.HX# N.LX7.-.B.IX-.& % . . + X + + . . + + . + = = o % # # = # # # # 2 = # - = = 9 d B s ", -"P J V n wXUXY A B V b b 7XUXu 2 3 4 4 F.UXUXUXG 6XUX=.*.) 7.PX6X+ O + A.UXc + . + X . + + + # + o + = = 3 3 = + $ , # . O . + # # $ $ # . . O + o o X # , # # # # # # , $ $ + + $ + + + + . + . . + o o X + # 2 # + . . + 3 3 # $ = = 2 # # # # . . X # 2 = = = # o o 2 5 3 3 q q u 5 5 q 9 u z 0 n T _ T :.7.y.y.:.y.y.:.Y B Z C N p r u p p c u u u z M A z $ . . . . . . . . . . . . . o . . o . . X X X . + 7.UX. = UX6.. 7.UXGXbXX 6XJXIXF.. JXUXUXUXUXUXmX mXbXX . . . X X o . . 5 UXu . . F.mX bXJX3.. . 2 z 6XHXz 2XGXe p p HXF.u UX5.4.UXJ T 7.y.3.:.y.y.:.bXZX*.Y z PXB.*.UXq 5 3 wXbX5 3 3 3 # IXB.K IXbX2 3 # LX,. . J PXO D.GX# = LX:.* qXbX4 mX^.o o # UXJ -.IXo + . wXwX+ . + + = UX7.4 UXC.UXN.+ UXB.= UXG H UX= # PX*.. o -.LX+ F.GXo # . JXN.. UXJ + # B.HX3 wXbX# o + LX3.% o + X . . . X + . + + . = = o o # = - # , = - 2 - 2 3 3 2 3 r i a b ", -"A V A n wXUXA b m V n s qXUXi 3 3 , 3 G 7.7.7.q 6XIX= # + + mXGX+ + . B.UXl + . . O . . o o # o + % # = = + + o + + o . . + # # # # # + . . + . + . + $ , # # # + # # # + + . $ . + . + + + . + o $ o . o + # , + o + o o = = # $ # $ # # 2 = # . . . . = 2 2 = = = # # , 3 5 5 q 5 5 5 5 5 q u z A R _ _ | 4.y.q.:.:.4.q.:.T A B c a a a p p c p u 5 z Z n u # . . . . . . . X . . . X . X . . . . . X v UXbX7.7.GXIX2 . 4 UXUXA.O 6.UXUXQ *.UXK 2 3 2 A.UX7 mXbX. . . . . . X X . PXD.v G mXbX. .XGXG v v H M 6XHXz A.LX3.*.;.LXj.x UX,.<.UX*.:.y.:.:.y.:.7.:.6XLXB.y.B.UX) M UX6XT -.LXbXq 3 3 # o UXB.# 3.UX6X# . HX6Xv v F.JX. A.GX= 2 LX6.= qXbX= bXLXK G qXPXu =.IX+ . + bXwXo o o + , UX7.+ ZXPXIXh + UXB.# UXG J UX2 # JX6XG Z 6XHX+ F.mX# # # HXB.. KX2XG M mXmX$ ^.HXJ H -.UXZ o o o . + . . + . . . + + % % = + # # = = 2 3 3 3 3 3 2 2 5 5 i z s c ", -"A P A M 7XUX.XA m f d d .XUX6X5 q 8 3 9 3 3 , 3 6XUX= # # u LXqX# + . B.UXl + + o + + + o o + # # # # # + + + . + + + o . . + # # # # # + . . + O . . , , # o # + # 2 , $ o $ + + + . $ # + + + # . o . . o # # # + - # # = = = + # # @ # # = + + . . . # . . = 5 5 3 3 3 # $ , 5 5 5 q 7 5 3 3 7 u l A T ' | | :.:.4.y.7.7.7.y.:.S c a B a a p p p p u u z n n q @ . . . . . . . . . . . . X X . . X . . . . . A.JXUXUXHXB.. . . mXHX4 > AXwXo wXJX . . ; IXA.mXbX . . X X X . X . A.LXUXUXGXc . q mXIXUXUXUX3.^.JXz l mXUXUXUXmXp p UX3.<.UXy.q.7.y.y.y.:.:.:.:.ZXUXUXIXaXl 7 6XPXUXUXUXbX4 3 , + # UXB.5 q F.UXB.o -.LXUXUXLX6.o C.GX# # LX-.% qXbX= Y GXUXUXPXB.= *.UXo . . wXwXo o o # , UX7.+ 7.IXwX# + UXf.= UXM G UX2 # -.LXUXUXJX3.# F.GX$ + # HXN.. B.LXUXUXHXJ o 4 GXUXUXIXqX+ o o + . + + o . + + . . % = # + # + # = = # = 3 $ 3 3 3 5 9 u M S B a ", -"A A n n ) PXUXUXUXIXUXi n LXUXUXIXUXUXh 3 3 7 3 6XUXUXIXUXUXPXJ # # . B.UXl + + # + . + # + o # # # # + + o o o . + % . . o # = # # $ # . + + . . . o , 3 # . o # $ # o + + . # $ + + + # # + # . # + o o . + # # = - = @ # = o + # # o # # = # = + . + = & . . # 5 5 2 2 3 3 # - 5 9 q q 5 5 5 q i v P T ) / R =.-.:.3.:.q.:.4.:.T i z z a u p p p u q q i n B u # . . . . . . . . . . X X . . X . . . . . X . . . X . X . . + . . . . . . . X X X o . X . . . . . . . . . . . . . - i v z q q 5 i B a r p a B i b =.q.y.y.y.:.:.:.:.%.) ) _ ^ H z u 7 2 2 3 5 mXaX3 # # 3 3 = 3 5 3 + . o 3 = o + # , # # # + + # o % = $ o @ = # # $ = . o # o + o + o o o # # + + $ $ , + + $ , = # o o = 5 = . o . . O o + , # # 2 , # . . + + . . o o o o o # = # + + # o o + o + + + + o . . + = = & + + = 2 3 5 4 7 5 3 3 u u q z B b i i ", -"A n n A Y :..XwXwXwX0Xm n J .XwXqXqX7Xh q q q 4 :.6X6X6X6XF.5 @ = # . Z 6X3 + = # + + o . o o + + + + # @ + # # = % o . . o # = # + # # + + . . . o $ 3 9 , o + + # o # + + . + + + $ . o o o o + . O . . . # # $ # $ 2 = o = = # $ @ + = = 2 # # = + + = = = + = = 2 3 2 # # # 3 3 3 3 7 3 5 z M T T T R R =.:.:.:.y.y.y.y.7.-.b h z u p w e e u q i b n b 5 . . . . . . . . . . . o o . X . . . . . . . . . . . X + . . . . . . . . . . . . . . . . . . . . = q M A l l u u e 5 e r p w 9 M 4.:.:.q.y.7.:.:.:.%.) Y T R J b i K LXLXLXLXIX*.# # - = 3 2 2 # o . . # 2 # . + , # # # # # + # = = @ # o = = # = 2 # + . + o + + # o # # o # + + # + + + + + . + # o o 3 5 # o o o o o o o # + # $ # # . . . + + # # , # o + o # # + + + o o + + # + + o . + + + 2 = = = % = 3 5 5 7 7 5 7 q q u u v v b n b ", -"U A Z Z Z A S A B b s b B B c B i u q q 7 5 q 3 5 7 5 = % = # = , # o . + . + # + o o o o # + + + + + + + + # # + + o . . . + # + + o , o o + . o o # 5 3 $ # + X o $ # o o # . . . . o $ . o o o o o o @ @ # # $ # @ # # o # # # = + + + = = = # + X . + = 2 + . O # 3 3 2 3 5 7 , $ # - 5 3 9 i n J T T | T T :.=.-.:.:.y.q.:.:.K n z u u r w 5 7 7 u b M b 3 . . . . . . . X X . . . . . . . . X . . . . . . . # q b A l q 4 e ; ; e p p c z ) 4.:.4.y.3.-.:.:.' Y T R _ _ J z i h 7.7.7.:.q 3 9 5 5 = 3 2 % X . + = # + . . X + # # = 2 # + + = = + + + = @ @ = # # + + o o . + $ . o o # + . o + + o o o o + o @ o # 3 3 $ # o o o o . # # + + # # = . . X + + # # # # # # # + + # + . + o o + # + o o . + . = = = = % % = 5 9 3 3 3 3 0 z q h v v v B Z z ", -"A A Z C C B S J c i 0 b B c a b b u u u q 5 3 3 $ 2 3 5 = = = # , $ + o . + . # , + # o + # # # # + # # # # # # @ + o + o + # = # # o , # . o + o $ # 3 3 3 2 # # o o o # + # . . + + $ o o # o o o o o o o o o # # = # # # # # = # o # = = = + = + + . . + + + = + . + 3 5 3 # 2 3 3 $ , = 3 3 3 q b A P T T T P T | _ _ :.7.:.7.y.%.h h c p e 5 ; 5 5 u z n b 5 + . . . . . . . . X X . X . . . . . X . . . X . . . # q M M l q 5 5 ; e p r u u Z ;.y.4.y.4.%.*.-.-.Y Y U / T T A z q 3 2 = = = = 7 7 3 = : 5 2 + X % + # # + . . X + # = # $ # # + + = = = + # # $ = = # + o o o o . . + + . . + + # . + + # o # + o @ # $ 3 3 2 3 # # + o . o o # # = $ # + . . . + + + # # # # + + + # # # + o # # # # + o o . o + + = = = & 2 5 3 , 3 3 5 7 q q 0 z b M z b C z " -}; +static const char *splash_screen_xpm[]={ +"391 295 35651 3", +"Qt. c #464645", +"Qt# c #474745", +"Qta c #474746", +"Qtb c #484846", +"cSO c #000000", +"bau c #000090", +"bat c #00009f", +"bdm c #0000b6", +"bdl c #0000bc", +"a56 c #0000f7", +"a57 c #0000ff", +"bdk c #0001c8", +"bas c #0003ae", +"a9s c #000795", +"bdj c #000bd8", +"bar c #000cba", +"a6m c #001094", +"a9r c #0014a8", +"baq c #0016c8", +"bdi c #0016e7", +"a29 c #0018ff", +"a6l c #001ba5", +"a9q c #001cb9", +"a3o c #001f95", +"bap c #0021d5", +"bdh c #0021f1", +"a9p c #0026c4", +"a3. c #0027fc", +"a6k c #0029b7", +"a3n c #002ba6", +"bdg c #002bf9", +"a0m c #002c97", +"aZ9 c #002cff", +"bao c #002de0", +"a9o c #0032d2", +"bdf c #0034fd", +"a6j c #0035c6", +"a3m c #0038b8", +"ban c #0038ef", +"a0l c #003aa7", +"aXs c #003c98", +"a0. c #003cfc", +"fW2 c #003ea6", +"a9n c #003ee1", +"bde c #003efc", +"fZ3 c #0040ab", +"a6i c #0041d4", +"bam c #0042fa", +"a3l c #0044c7", +"aXd c #0044fb", +"bdd c #0045fd", +"a0k c #0047b9", +"aXr c #004aad", +"a9m c #004af0", +"bal c #004bfc", +"aUh c #004da0", +"a6h c #004de4", +"aXe c #004efe", +"aRe c #005096", +"a3k c #0051d7", +"bak c #0054fb", +"a0j c #0055ca", +"a9l c #0055fa", +"aXq c #0058c0", +"aT7 c #0059fb", +"a6g c #005af2", +"aUg c #005cb5", +"a9k c #005dfe", +"a3j c #005fe8", +"aRd c #0061a8", +"aOk c #00639e", +"a0i c #0063dd", +"aT8 c #0064f8", +"a6f c #0064fd", +"aXp c #0066d3", +"aLs c #006797", +"aID c #006994", +"aUf c #0069c8", +"a3i c #006cf8", +"aRc c #006ebf", +"aQ6 c #006fff", +"a0h c #0072f0", +"aOj c #0073b8", +"aXo c #0076e7", +"aLr c #0079b1", +"aUe c #007adf", +"aIC c #007daa", +"aRb c #0080d7", +"aOa c #0081ff", +"aFJ c #0083a0", +"aOi c #0084d1", +"aLq c #0089c9", +"aCN c #008c96", +"aIB c #008fbf", +"aLi c #0094fe", +"#Tm c #009540", +"axh c #009699", +"azV c #00969d", +"aFI c #0097b8", +"#6g c #009a6a", +"#K# c #009f1c", +"#Wp c #00a04b", +"aCM c #00a0b5", +"#Nz c #00a12b", +"#Gz c #00a20f", +"#3h c #00a363", +"#QC c #00a436", +"aIu c #00a4ff", +"#C7 c #00a504", +"aas c #00a780", +"#9k c #00a97f", +"adv c #00a985", +"#zv c #00aa00", +"#Tl c #00aa49", +"#ZW c #00aa5d", +"axg c #00aaaf", +"azU c #00aaba", +"#Gy c #00ab25", +"#C6 c #00ae13", +"#K. c #00ae29", +"#Ny c #00af3a", +"#Wo c #00af5d", +"aFC c #00b0fe", +"#zu c #00b205", +"#3g c #00b274", +"#QB c #00b348", +"#C5 c #00b81d", +"#Gx c #00b92b", +"#Tk c #00b95c", +"aar c #00b99e", +"adu c #00b9a9", +"#J9 c #00bd36", +"#ZV c #00bd69", +"#zt c #00be09", +"#9j c #00bf97", +"#Nx c #00c046", +"#Wn c #00c170", +"aCG c #00c1fc", +"#6e c #00c293", +"#QA c #00c457", +"#3f c #00c88b", +"#C4 c #00c923", +"#Gw c #00c931", +"#Tj c #00ca6c", +"#zs c #00cb11", +"#J8 c #00cc43", +"#Nw c #00d054", +"azO c #00d1fe", +"#ZU c #00d280", +"#Qz c #00d666", +"#C3 c #00d72f", +"#Gv c #00d840", +"#Wm c #00d97e", +"#zr c #00da23", +"#J7 c #00db51", +"#Nv c #00e162", +"axa c #00e2ff", +"#Ti c #00e37b", +"#C2 c #00e73f", +"#Gu c #00e74f", +"#zq c #00e831", +"#J6 c #00ec5e", +"#Qy c #00ec75", +"auv c #00f1ff", +"#C1 c #00f34e", +"#zp c #00f43c", +"#Gt c #00f55b", +"#Nu c #00f670", +"#zo c #00fb47", +"#C0 c #00fb56", +"arz c #00fbff", +"#Ta c #00fc54", +"#J5 c #00fc6b", +"aal c #00fcb1", +"#Nk c #00fd27", +"aoK c #00fdfe", +"#JS c #00fe0c", +"#Qo c #00fe3a", +"#Qp c #00fe46", +"#zn c #00fe4d", +"#Gs c #00fe63", +"#29 c #00fe81", +"#Ge c #00ff00", +"#Gf c #00ff0a", +"#JT c #00ff20", +"#Nl c #00ff35", +"#T# c #00ff48", +"#zm c #00ff50", +"#CZ c #00ff5a", +"#ZN c #00ff73", +"#6. c #00ff98", +"#9c c #00ffa6", +"ado c #00ffc3", +"agr c #00ffd1", +"aji c #00ffe4", +"al0 c #00fff5", +"cT5 c #010000", +"a9a c #0100ff", +"fU. c #013c97", +"fZ4 c #013f9f", +"aLj c #0197f8", +"#6f c #01ab7c", +"aCF c #01befc", +"aam c #01fcb5", +"bdn c #0200b1", +"cYn c #020100", +"efk c #020202", +"a9t c #02038f", +"agy c #02a18d", +"c1d c #030200", +"c4i c #030205", +"a9b c #0302fb", +"dH9 c #030503", +"aO# c #037cf7", +"#C8 c #039608", +"aIt c #039af8", +"#Gd c #03fa05", +"#ZM c #03fa74", +"dnK c #040000", +"bdo c #04009f", +"dl5 c #040200", +"c2K c #040303", +"c5H c #040406", +"cW9 c #040500", +"c1c c #040604", +"a58 c #0419f7", +"bdc c #044ef2", +"#ZX c #048f59", +"#9l c #048f74", +"#zw c #04a000", +"agx c #04b5aa", +"#59 c #04f991", +"#3. c #04fb8b", +"c8p c #050201", +"cT6 c #050300", +"cZO c #050302", +"dKx c #050304", +"cVI c #050500", +"cVH c #050501", +"baj c #055bf0", +"a9j c #0564f3", +"aFK c #056999", +"coL c #05b31b", +"azN c #05c4f5", +"#Wf c #05f96d", +"dbg c #060100", +"c7b c #060200", +"diw c #060401", +"cZT c #060402", +"dex c #060503", +"cX. c #060602", +"dgy c #060604", +"dKy c #060606", +"fRb c #063b89", +"aUi c #063d98", +"aOl c #064f99", +"a6e c #066bf4", +"aQ7 c #0675f7", +"aXn c #0683ed", +"#QD c #068a3b", +"coh c #06b122", +"azT c #06b8c7", +"coC c #06d12a", +"#JR c #06f612", +"adn c #06f6be", +"#CL c #06ff00", +"bdp c #07008e", +"d#R c #070100", +"dna c #070201", +"dl6 c #070202", +"c95 c #070300", +"c5O c #070302", +"dbh c #070604", +"c8g c #070607", +"cX# c #070702", +"dF2 c #070705", +"dM2 c #070707", +"dRt c #070808", +"a3h c #0774f5", +"d0L c #077b07", +"a0g c #077df1", +"aUd c #0788e7", +"d0M c #079703", +"coi c #07b625", +"coG c #07d12c", +"coD c #07d528", +"dkg c #080400", +"dcI c #080401", +"dkh c #080402", +"dlj c #080403", +"aSU c #080602", +"dsR c #080607", +"d#S c #080704", +"c96 c #080705", +"ebc c #080708", +"dT1 c #080807", +"dM3 c #080808", +"c64 c #080909", +"fN9 c #08377e", +"d0T c #08830b", +"#GA c #088918", +"aRa c #088ce0", +"aOh c #088fda", +"aLp c #0897d2", +"aIA c #089fc8", +"aCL c #08a8c8", +"coH c #08cc2a", +"coF c #08d22a", +"coo c #08d32b", +"cot c #08d429", +"dl4 c #090501", +"c1f c #090502", +"dgz c #090503", +"dlk c #090504", +"duY c #090506", +"c8q c #090604", +"duX c #090607", +"aST c #090703", +"cZS c #090704", +"c4r c #090705", +"dyq c #090708", +"dgx c #090806", +"do1 c #090808", +"dPe c #090809", +"aPZ c #090905", +"dqV c #090906", +"dT2 c #090909", +"c63 c #09090b", +"cYm c #090a05", +"dyr c #090a07", +"aPH c #090e08", +"#Ka c #098723", +"d0S c #09a008", +"aFH c #09a4c8", +"coK c #09b521", +"coI c #09c529", +"adt c #09c8b8", +"#9i c #09cda1", +"col c #09ce26", +"con c #09d22b", +"coE c #09d328", +"cos c #09d428", +"cop c #09d429", +"cou c #09d42a", +"coq c #09d529", +"cor c #09d52a", +"#Wl c #09e28b", +"#Nt c #09f37d", +"#zl c #09f45a", +"#J4 c #09f476", +"dix c #0a0604", +"fcT c #0a0605", +"duZ c #0a0606", +"c2U c #0a0705", +"dn# c #0a0708", +"c1m c #0a0806", +"dcJ c #0a0807", +"dwH c #0a0809", +"dwI c #0a080a", +"aVY c #0a0905", +"dq7 c #0a0908", +"d6F c #0a0909", +"cG0 c #0a090a", +"c4s c #0a0a08", +"dqU c #0a0a09", +"dWC c #0a0a0a", +"aPY c #0a0b06", +"ewM c #0a0b09", +"dCp c #0a0b0a", +"aBe c #0a0c07", +"dbZ c #0a0f09", +"akO c #0a1009", +"akN c #0a110a", +"ahY c #0a120a", +"aQ5 c #0a6aea", +"coj c #0abf27", +"coJ c #0abf28", +"aaq c #0ac6aa", +"cok c #0ac826", +"com c #0ad029", +"#6d c #0ad19b", +"#3e c #0ad49b", +"cov c #0ad732", +"#ZT c #0ada95", +"#Th c #0ae987", +"#Qx c #0aef83", +"#CY c #0af264", +"#Gr c #0af36d", +"bvb c #0b0603", +"c2T c #0b0704", +"dey c #0b0705", +"duW c #0b0708", +"duV c #0b0809", +"bkn c #0b0903", +"cZW c #0b0907", +"cGY c #0b0908", +"c9W c #0b0909", +"dlg c #0b090a", +"dn. c #0b090b", +"dD8 c #0b090c", +"cP7 c #0b0a06", +"cGZ c #0b0a08", +"cN# c #0b0a09", +"erI c #0b0a0a", +"dKz c #0b0a0b", +"bw0 c #0b0b06", +"c5P c #0b0b08", +"ebg c #0b0b09", +"dp. c #0b0b0a", +"eka c #0b0b0b", +"epb c #0b0b0c", +"aD8 c #0b0c07", +"as4 c #0b0c08", +"a9c c #0b0dec", +"#V# c #0b0e0d", +"#11 c #0b0f0e", +"anr c #0b100a", +"aeY c #0b130b", +"#NA c #0b8334", +"axf c #0bb8bb", +"arA c #0beaea", +"fcU c #0c0605", +"dew c #0c0805", +"dgw c #0c0806", +"du3 c #0c0807", +"aVX c #0c0905", +"c97 c #0c0908", +"dAv c #0c090a", +"dCn c #0c090b", +"btq c #0c0a03", +"cYr c #0c0a08", +"dq6 c #0c0a09", +"dlf c #0c0a0a", +"cG1 c #0c0a0b", +"dCo c #0c0a0c", +"f#Y c #0c0a0d", +"cU# c #0c0b06", +"aP0 c #0c0b07", +"cLO c #0c0b08", +"cZP c #0c0b09", +"cN. c #0c0b0a", +"do0 c #0c0b0b", +"aYY c #0c0c06", +"ayq c #0c0c07", +"cYl c #0c0c09", +"cYo c #0c0c0a", +"emC c #0c0c0c", +"cG2 c #0c0c0d", +"cG3 c #0c0c0f", +"aYZ c #0c0d09", +"cW8 c #0c0d0a", +"cZN c #0c0d0b", +"bk2 c #0c0d0c", +"f#W c #0c0d0f", +"aPX c #0c0e08", +"avT c #0c0e09", +"#ID c #0c0e0d", +"aqc c #0c0f0a", +"#YC c #0c0f0e", +"ewJ c #0c0f10", +"aSA c #0c1009", +"aqd c #0c100a", +"akP c #0c110b", +"ahZ c #0c120b", +"a28 c #0c1de8", +"agw c #0cc5b6", +"agq c #0ceec6", +"#We c #0cf064", +"#9d c #0cf0a7", +"dpF c #0d0604", +"du4 c #0d0708", +"d#U c #0d0805", +"c69 c #0d0806", +"du5 c #0d0808", +"du0 c #0d0809", +"dbi c #0d0906", +"fcS c #0d0907", +"djD c #0d0908", +"d6O c #0d090a", +"dcK c #0d0a07", +"ds9 c #0d0a09", +"dlh c #0d0a0b", +"dm9 c #0d0a0c", +"bko c #0d0b04", +"c98 c #0d0b08", +"cXc c #0d0b09", +"dng c #0d0b0a", +"dp# c #0d0b0b", +"djA c #0d0b0c", +"dF4 c #0d0b0d", +"f#X c #0d0b0e", +"cSV c #0d0c07", +"cKd c #0d0c08", +"cP8 c #0d0c09", +"dqW c #0d0c0a", +"bxw c #0d0c0b", +"dRs c #0d0c0c", +"dm7 c #0d0d0a", +"cFf c #0d0d0b", +"dT3 c #0d0d0c", +"dnh c #0d0d0d", +"c8f c #0d0d0f", +"cG4 c #0d0e0f", +"as3 c #0d0f0a", +"#L9 c #0d0f0e", +"#IE c #0d100f", +"et8 c #0d1011", +"aPI c #0d110a", +"aq# c #0d110c", +"#Va c #0d1110", +"ans c #0d120c", +"anq c #0d130c", +"eKv c #0d1313", +"fLa c #0d3272", +"fW3 c #0d4499", +"auA c #0d4746", +"ajo c #0d6664", +"aat c #0d7f83", +"#zx c #0d900d", +"bav c #0e0492", +"dkf c #0e0905", +"dcL c #0e0906", +"dls c #0e0908", +"dwR c #0e0909", +"dki c #0e090a", +"c1l c #0e0a07", +"dli c #0e0a09", +"ds5 c #0e0a0b", +"cGX c #0e0b09", +"dlt c #0e0b0a", +"dm8 c #0e0b0b", +"dI# c #0e0b0c", +"ds8 c #0e0c0a", +"doZ c #0e0c0c", +"djB c #0e0c0d", +"cKe c #0e0d08", +"c7c c #0e0d09", +"c4t c #0e0d0a", +"aVZ c #0e0d0b", +"fiC c #0e0d0c", +"c4j c #0e0d0e", +"aBd c #0e0e09", +"dD9 c #0e0e0b", +"aHr c #0e0e0c", +"bk3 c #0e0e0d", +"ehF c #0e0e0e", +"dsO c #0e0e0f", +"cGH c #0e0f0a", +"#L8 c #0e100e", +"#M. c #0e100f", +"#E5 c #0e1111", +"ey7 c #0e1112", +"#IC c #0e1211", +"#Bu c #0e1213", +"ddA c #0e130d", +"aeZ c #0e150d", +"abZ c #0e150e", +"dA. c #0e1818", +"auB c #0e3f40", +"ajp c #0e5959", +"#CK c #0eff00", +"#N# c #0f0000", +"ekw c #0f0909", +"e20 c #0f090a", +"eh1 c #0f0a09", +"ffH c #0f0a0a", +"ds6 c #0f0a0b", +"ekv c #0f0b09", +"eh0 c #0f0b0a", +"dwJ c #0f0b0b", +"ds4 c #0f0b0c", +"d#T c #0f0c09", +"flM c #0f0c0a", +"eku c #0f0c0c", +"dqT c #0f0c0d", +"aWa c #0f0d0b", +"do9 c #0f0d0c", +"djz c #0f0d0d", +"dsQ c #0f0d0e", +"f#Z c #0f0d0f", +"cRC c #0f0e09", +"bWQ c #0f0e0a", +"b20 c #0f0e0b", +"bIt c #0f0e0c", +"doY c #0f0e0d", +"dAu c #0f0e0f", +"fcP c #0f0e11", +"cVc c #0f0f0b", +"aW# c #0f0f0c", +"aHq c #0f0f0d", +"bGc c #0f0f0e", +"aNf c #0f0f0f", +"ayr c #0f100b", +"bsY c #0f100c", +"bk1 c #0f100d", +"bMt c #0f100e", +"cDf c #0f110b", +"aHe c #0f110c", +"aqb c #0f110d", +"#E6 c #0f1110", +"aqa c #0f120d", +"#E7 c #0f1211", +"#76 c #0f1312", +"ah0 c #0f140e", +"#xJ c #0f1413", +"#E4 c #0f1414", +"#mZ c #0f1515", +"aG9 c #0f1610", +"fZ5 c #0f4087", +"#CM c #0fec13", +"flN c #100909", +"dwQ c #10090a", +"d1N c #10090c", +"e55 c #100a07", +"efE c #100a0a", +"fiB c #100a0c", +"dlT c #100b08", +"da3 c #100b09", +"dt. c #100b0a", +"d88 c #100b0c", +"d4i c #100b0d", +"d4j c #100b0e", +"cU. c #100c0a", +"c05 c #100c0b", +"d1L c #100c0c", +"c2O c #100d09", +"c8c c #100d0b", +"ekt c #100d0c", +"dRu c #100d0e", +"dqS c #100d0f", +"b05 c #100e0a", +"cdn c #100e0c", +"doX c #100e0e", +"dsP c #100e0f", +"cIB c #100f0a", +"cOE c #100f0b", +"cOF c #100f0c", +"bGb c #100f0d", +"bzJ c #100f0f", +"dsN c #100f10", +"cFe c #100f11", +"bnt c #10100b", +"aHs c #10100e", +"aKe c #10100f", +"ayC c #101010", +"aBf c #10110c", +"aM6 c #10110d", +"bBT c #10110f", +"cIJ c #101111", +"aSB c #10120a", +"#Pp c #101211", +"aVA c #10130c", +"#IF c #101312", +"erA c #101314", +"#Bw c #101412", +"#Bv c #101413", +"#xG c #101415", +"aMR c #10150e", +"etZ c #101616", +"dC. c #101918", +"#mM c #101a1b", +"aFD c #10acea", +"aoL c #10ede6", +"bdq c #11008b", +"a9# c #1100fb", +"e56 c #110a09", +"dEl c #110a0a", +"efI c #110b0a", +"efF c #110b0b", +"ffG c #110b0c", +"d4d c #110c0c", +"dKY c #110c0d", +"cmQ c #110d03", +"cps c #110d04", +"fcV c #110d0b", +"djE c #110d0c", +"edv c #110d0d", +"ds3 c #110d0e", +"d89 c #110d0f", +"cVM c #110e0c", +"c6Y c #110e0d", +"ds0 c #110e0e", +"ds1 c #110e0f", +"cmP c #110f08", +"bkm c #110f09", +"c4o c #110f0c", +"c2J c #110f0d", +"c9C c #110f0e", +"dlu c #110f0f", +"c9V c #110f10", +"dRv c #110f11", +"cKf c #11100b", +"bp0 c #11100c", +"cVJ c #11100d", +"cII c #11100e", +"fcO c #111012", +"bYR c #11110b", +"as5 c #11110c", +"a1S c #11110d", +"b4Z c #11110e", +"bOk c #11110f", +"dWD c #111110", +"ayB c #111111", +"cBh c #11120a", +"bns c #11120c", +"aHd c #11120d", +"aM5 c #11120e", +"aP8 c #111212", +"avS c #11130e", +"#xI c #111312", +"e8Q c #111315", +"#E8 c #111413", +"ant c #111510", +"#xH c #111514", +"akQ c #111610", +"dfy c #111611", +"ab0 c #111710", +"aMQ c #111711", +"djk c #111713", +"ewA c #111717", +"dDV c #111a19", +"dKd c #111a1c", +"aCO c #11669e", +"ax# c #11cce7", +"#Nj c #11ec23", +"aoQ c #120000", +"eGi c #120807", +"eZZ c #12090b", +"dIC c #120a07", +"e54 c #120a08", +"e2Z c #120a09", +"efH c #120a0b", +"efG c #120a0c", +"efD c #120b0b", +"flO c #120b0c", +"dIw c #120c0c", +"dIz c #120c0d", +"d1M c #120c0e", +"cuD c #120d03", +"cr4 c #120d04", +"dAG c #120d0c", +"dta c #120d0d", +"dKA c #120d0e", +"ck# c #120e04", +"aVW c #120e09", +"c8h c #120e0b", +"d6R c #120e0d", +"ds2 c #120e0f", +"aWb c #120f0b", +"d#G c #120f0d", +"cYc c #120f0e", +"dpa c #120f0f", +"dPf c #120f10", +"bnu c #121009", +"bk0 c #12100e", +"doW c #12100f", +"cXd c #121010", +"duP c #121011", +"bpZ c #12110a", +"bnr c #12110b", +"cGL c #12110d", +"cLP c #12110e", +"aEl c #12110f", +"cSt c #121110", +"d1J c #121111", +"dqR c #121112", +"aSS c #12120c", +"bSy c #12120d", +"b21 c #12120f", +"aEm c #121210", +"aNe c #121211", +"aBv c #121212", +"as2 c #12130e", +"aS8 c #121311", +"aHf c #12140f", +"dRo c #121413", +"aJ6 c #12150f", +"emu c #121516", +"eo5 c #121517", +"#5a c #121615", +"#lq c #121619", +"c9i c #121710", +"aq. c #121711", +"dwm c #121716", +"aG8 c #121812", +"dqz c #121817", +"et0 c #121818", +"a.T c #121912", +"dHU c #121a1a", +"dFM c #121b1a", +"#jx c #121b1c", +"a0# c #124fe5", +"#C9 c #127926", +"arF c #130807", +"eWS c #13090b", +"eZY c #13090c", +"e2Y c #130a08", +"e53 c #130a09", +"eWR c #130a0b", +"eWQ c #130a0c", +"dy0 c #130b07", +"eT5 c #130b0a", +"ebs c #130b0b", +"dIy c #130b0c", +"fcR c #130c0c", +"dIx c #130c0d", +"dyA c #130d0d", +"dyy c #130d0e", +"d6P c #130d0f", +"bxp c #130e0a", +"cZV c #130e0b", +"dyz c #130e0d", +"em0 c #130e0e", +"d6Q c #130e0f", +"dwK c #130e10", +"cx. c #130f03", +"ce4 c #130f09", +"cST c #130f0d", +"dZl c #130f0e", +"dM4 c #130f10", +"dF5 c #130f11", +"c2A c #13100f", +"djC c #131010", +"aZa c #13110c", +"bMr c #13110d", +"cSU c #13110f", +"c5F c #131110", +"dI. c #131111", +"dD7 c #131112", +"cNn c #13120e", +"bUM c #13120f", +"b08 c #131210", +"cRj c #131211", +"dAq c #131212", +"cVd c #13130f", +"djy c #131310", +"aEn c #131311", +"bD2 c #131312", +"aEt c #131313", +"a6n c #131398", +"cDe c #13140e", +"cGG c #13140f", +"aHp c #131410", +"aY0 c #131411", +"duM c #131412", +"bk5 c #131413", +"bk4 c #131414", +"aJ7 c #13150f", +"as0 c #131511", +"dwA c #131512", +"dRn c #131514", +"#L7 c #131616", +"#Bt c #131617", +"ehA c #131719", +"ae0 c #131812", +"dhA c #131815", +"duB c #131817", +"eMK c #131818", +"eDq c #131819", +"eKw c #131919", +"dMF c #131c1d", +"#kO c #131c1e", +"aXt c #13309c", +"a3# c #133fe1", +"f25 c #13459f", +"auw c #13d9e0", +"#T. c #13e753", +"ajh c #13e7cc", +"al6 c #140005", +"e2X c #140909", +"eT4 c #140a0b", +"fiA c #140a0d", +"eZW c #140b09", +"eZX c #140b0a", +"eT3 c #140b0c", +"dGt c #140c09", +"dj8 c #140c0a", +"eWP c #140c0b", +"dPC c #140c0c", +"ebt c #140c0d", +"dxe c #140d0a", +"e9c c #140d0b", +"e9b c #140d0c", +"dNn c #140d0d", +"erS c #140d0e", +"flL c #140d0f", +"dIA c #140e0d", +"dwP c #140e0e", +"e#o c #140e0f", +"cht c #140f08", +"d6S c #140f0e", +"d87 c #140f10", +"d9. c #140f11", +"ccJ c #141006", +"brP c #141008", +"aYX c #14100a", +"bhu c #14100b", +"fiD c #14100e", +"c4h c #14100f", +"ds7 c #141011", +"cpr c #14110b", +"dwU c #14110e", +"dt# c #14110f", +"do8 c #141110", +"c2L c #141111", +"b4Y c #14120c", +"bht c #14120d", +"bQk c #14120e", +"c4u c #14120f", +"c5E c #141210", +"bYU c #141211", +"duO c #141213", +"dF3 c #141214", +"cDg c #14130d", +"cHc c #14130e", +"aM4 c #14130f", +"bOi c #141310", +"bIs c #141311", +"cOG c #141312", +"czl c #14140c", +"cIz c #141410", +"cDG c #141411", +"dCi c #141412", +"bzM c #141413", +"aEs c #141414", +"chs c #14150d", +"aJ5 c #14150f", +"ayv c #141510", +"as1 c #141511", +"dZj c #141512", +"fcN c #141517", +"ayp c #141611", +"#Po c #141614", +"#YB c #141615", +"ej8 c #141618", +"ej7 c #14181a", +"aD4 c #141913", +"#Bx c #141918", +"erG c #141919", +"a.U c #141a13", +"aPG c #141a14", +"dmU c #141a16", +"eyY c #141a19", +"erB c #141a1a", +"#hy c #141a1c", +"abY c #141b14", +"dHV c #141c1d", +"dC# c #141d1c", +"fU# c #14438d", +"#3i c #147676", +"eIY c #150a0a", +"dK0 c #150b09", +"dxd c #150b0a", +"e9d c #150c0a", +"dKZ c #150c0b", +"eT2 c #150c0d", +"eWO c #150d0a", +"dl3 c #150d0b", +"c8l c #150d0c", +"eWT c #150d0d", +"dRU c #150d0e", +"d1O c #150d0f", +"eT6 c #150e0b", +"dEr c #150e0c", +"dyB c #150e0e", +"e9a c #150e0f", +"dIB c #150f0d", +"d9# c #150f0e", +"dNm c #150f0f", +"ck. c #15100a", +"dnz c #15100d", +"c5D c #15100f", +"dAH c #151010", +"fcQ c #151011", +"b6k c #151107", +"cw9 c #151108", +"cmO c #15110d", +"bn0 c #151110", +"dCq c #151111", +"dq5 c #151112", +"du1 c #151113", +"cj9 c #15120e", +"cFd c #151210", +"dhU c #151213", +"cEZ c #15130c", +"c5Q c #151310", +"c2I c #151311", +"bWT c #151312", +"dhT c #151314", +"dlv c #151315", +"cdu c #151410", +"cv# c #151411", +"b6Y c #151412", +"eu. c #151413", +"et9 c #151414", +"eFP c #151416", +"btr c #151510", +"cmM c #151511", +"aW. c #151512", +"aEo c #151513", +"aNd c #151514", +"aBu c #151515", +"cu7 c #151516", +"e8R c #151517", +"cj8 c #15160e", +"aD9 c #151610", +"avY c #151611", +"aHg c #151713", +"#M# c #151716", +"dwz c #151815", +"#Sd c #151817", +"ewI c #15181a", +"aJX c #151913", +"aJW c #151914", +"#77 c #151918", +"#E9 c #151919", +"#xF c #15191a", +"ab1 c #151a15", +"#IB c #151a1a", +"#gc c #151a1d", +"erF c #151b1b", +"a.S c #151c15", +"dy# c #151c1a", +"ep. c #151c1b", +"efe c #151d20", +"dO0 c #151f20", +"ajn c #15726b", +"adw c #157793", +"#Qn c #15e53a", +"#Nm c #15e74b", +"al1 c #15eadc", +"e2W c #160a0a", +"eLb c #160b0b", +"fcX c #160b0e", +"e52 c #160c0a", +"eZ0 c #160c0c", +"dGp c #160c0d", +"eRC c #160c0e", +"flK c #160c0f", +"dy1 c #160d09", +"dxg c #160d0b", +"eGj c #160d0c", +"ehZ c #160d0d", +"dGo c #160d0e", +"dxi c #160e0b", +"eh2 c #160e0d", +"ebu c #160e0e", +"dRV c #160e0f", +"cao c #160f05", +"dii c #160f0d", +"dGm c #160f0f", +"cpt c #161003", +"czq c #161007", +"b98 c #161008", +"drC c #16100c", +"dbc c #16100e", +"dyx c #161010", +"bzx c #16110b", +"dj5 c #16110e", +"cGW c #16110f", +"dCA c #161110", +"dlr c #161111", +"czp c #161209", +"cr3 c #16120a", +"cEY c #16120d", +"bkZ c #161210", +"bn1 c #161211", +"dKB c #161213", +"a1R c #16130d", +"cpq c #16130e", +"bKC c #161310", +"dAx c #161311", +"cZF c #161312", +"dT4 c #161313", +"dRx c #161314", +"cmN c #16140f", +"cFr c #161410", +"bMs c #161412", +"bBP c #161413", +"d8U c #161415", +"czm c #16150c", +"cw5 c #16150f", +"cKv c #161510", +"cfO c #161511", +"cLQ c #161512", +"b07 c #161513", +"bxv c #161514", +"ez# c #161515", +"aM7 c #161611", +"cP6 c #161612", +"aSV c #161613", +"aKd c #161614", +"cIK c #161615", +"av7 c #161616", +"cG6 c #161617", +"fkf c #161618", +"cFx c #16170f", +"b5. c #161711", +"aBa c #161712", +"bGa c #161713", +"ch4 c #161714", +"aS7 c #161715", +"cFi c #161717", +"e8P c #161719", +"aPJ c #161810", +"aYz c #161811", +"dyj c #161816", +"dMV c #161817", +"efj c #161818", +"bre c #161912", +"bDb c #161913", +"dKr c #161917", +"aMS c #161a12", +"#12 c #161a19", +"eIe c #161a1b", +"gzJ c #161a22", +"ah1 c #161b15", +".3q c #161b1c", +"aJS c #161c14", +"ewB c #161c1c", +"ehz c #161c20", +"#7I c #161d15", +"ep# c #161d1d", +"#jY c #161e20", +"dDW c #161f1e", +"#l2 c #162021", +"dTK c #162122", +"fLb c #163970", +"auz c #165253", +"#Wq c #167363", +"bqx c #16810f", +"auu c #16d3e2", +"#JU c #16e63b", +"aoP c #170102", +"#JI c #170811", +"baa c #1709ef", +"eNv c #170c0c", +"dvp c #170d0b", +"eWU c #170d0c", +"e51 c #170d0d", +"dUp c #170d0e", +"dEk c #170d0f", +"dxf c #170e0b", +"dGs c #170e0c", +"dGq c #170e0e", +"dUo c #170e0f", +"dPB c #170e10", +"fiz c #170e11", +"dPD c #170f0f", +"ePy c #170f10", +"dpt c #17100d", +"dWX c #17100f", +"d6J c #171010", +"dNl c #171011", +"can c #17110a", +"dvu c #17110d", +"dnA c #17110e", +"dim c #17110f", +"dCz c #171110", +"dcu c #171111", +"dWE c #171113", +"b4f c #171209", +"ccI c #17120b", +"dtF c #17120e", +"dil c #17120f", +"bnZ c #171210", +"dEm c #171211", +"dwT c #171212", +"dPg c #171213", +"c65 c #171310", +"dq8 c #171312", +"dT5 c #171313", +"du2 c #171314", +"cr1 c #171410", +"bQl c #171412", +"df1 c #171413", +"c2z c #171414", +"djM c #171416", +"ce3 c #17150c", +"bkp c #17150e", +"cw6 c #17150f", +"cpp c #171510", +"aP1 c #171511", +"cGK c #171512", +"cfJ c #171513", +"dyn c #171514", +"dwC c #171516", +"crZ c #171610", +"bWR c #171612", +"cp8 c #171613", +"bvg c #171614", +"brQ c #171712", +"b40 c #171714", +"bQm c #171715", +"cxC c #171716", +"av6 c #171717", +"cG5 c #171719", +"brk c #171812", +"aqe c #171813", +"dF1 c #171814", +"buM c #171815", +"bk6 c #171817", +"eId c #171819", +"ddL c #171913", +"aJ4 c #171914", +"ebb c #171917", +"#IG c #171918", +"e5G c #17191b", +"emt c #171a1c", +"eDr c #171a1e", +"bgk c #171ad1", +"bFm c #171b14", +"avQ c #171b15", +"bo. c #171b17", +"#E3 c #171b1c", +"bwS c #171c15", +"aDY c #171c16", +"asZ c #171c17", +"aML c #171d15", +"byW c #171d16", +"dhB c #171d19", +"doz c #171d1a", +".2r c #171d1d", +"#lw c #171d1f", +"emA c #171e1d", +"aT6 c #1758e1", +"azW c #1769a4", +"aFB c #179dea", +"d3h c #17a317", +"#9b c #17e79b", +"ba# c #1802f7", +"eWV c #180c0b", +"eGD c #180c0c", +"flJ c #180c11", +"ekF c #180d0f", +"eRD c #180e0c", +"ezE c #180e0d", +"e#s c #180e0e", +"e57 c #180e0f", +"dAL c #180e10", +"eWN c #180f0d", +"eT7 c #180f0e", +"eRB c #180f0f", +"dGn c #180f10", +"dxh c #18100d", +"dCD c #18100e", +"dIo c #18100f", +"dyC c #181011", +"b99 c #181107", +"flD c #181112", +"chu c #181206", +"ce5 c #181207", +"dke c #18120e", +"dKX c #181211", +"df0 c #181212", +"bYQ c #18130d", +"d#H c #181310", +"c6Z c #181313", +"d#N c #181411", +"dhW c #181413", +"dwL c #181415", +"cr2 c #181510", +"cr0 c #181511", +"cGI c #181512", +"c9U c #181513", +"dpb c #181514", +"dRw c #181516", +"bvc c #181612", +"cfP c #181613", +"c.K c #181614", +"dCm c #181617", +"cz1 c #181713", +"csy c #181714", +"aBj c #181715", +"doV c #181716", +"cDH c #181719", +"bgl c #1817c8", +"ce2 c #18180d", +"bkl c #181811", +"aM3 c #181812", +"c.V c #181813", +"b8T c #181816", +"cxB c #181817", +"aBw c #181818", +"fkg c #18181a", +"chr c #18190e", +"bTX c #181911", +"bY2 c #181912", +"bRM c #181913", +"ayu c #181914", +"dyk c #181917", +"e5F c #18191c", +"bRL c #181a13", +"bkg c #181a14", +"aB# c #181a15", +"#Sc c #181a19", +"eFQ c #181a1b", +"bpn c #181b14", +"e2t c #181b1e", +"#Vb c #181c1b", +"et7 c #181c1d", +"bPy c #181d15", +"aG3 c #181d16", +"aG5 c #181d17", +"aWs c #181d19", +".4v c #181d1e", +"dk5 c #181e1a", +"eo6 c #181e1e", +"et1 c #181f1f", +"ec7 c #182022", +"dDU c #182120", +"dKc c #182122", +"ec6 c #182123", +"#f4 c #182424", +"bgg c #183cf1", +"bgd c #1851f4", +"al5 c #19080d", +"d45 c #190c04", +"e2V c #190c0b", +"eLa c #190c0d", +"en# c #190d0f", +"e50 c #190e0e", +"dRP c #190e0f", +"e5Z c #190e10", +"dvq c #190f0d", +"ew8 c #190f0e", +"esf c #190f0f", +"e5Y c #190f10", +"eGt c #190f11", +"dy2 c #19100c", +"dGr c #19100e", +"faa c #19100f", +"dNo c #191010", +"dEp c #191011", +"dcA c #19110f", +"d9h c #191111", +"dtb c #191112", +"cDk c #19120a", +"cBl c #19120b", +"dj4 c #191210", +"dIn c #191211", +"eBr c #191212", +"d4h c #191213", +"cuC c #19130c", +"dwS c #191312", +"dPA c #191313", +"dT6 c #191314", +"cka c #191407", +"cBk c #19140d", +"dez c #19140f", +"cuz c #191411", +"bOh c #191412", +"do2 c #191413", +"dAw c #191414", +"ffB c #191415", +"b2m c #19150b", +"dcM c #191511", +"c1g c #191512", +"dyF c #191513", +"dq9 c #191514", +"d#s c #191515", +"bn2 c #191516", +"cuy c #191610", +"aZ# c #191612", +"b8S c #191614", +"c5G c #191615", +"dhV c #191616", +"djL c #191617", +"aZb c #191712", +"cGJ c #191713", +"cVe c #191714", +"duU c #191715", +"bSz c #191716", +"b2l c #19180e", +"cDS c #191813", +"cnr c #191814", +"csz c #191815", +"bOj c #191816", +"c4# c #191817", +"efl c #191818", +"b0h c #191910", +"cSW c #191912", +"cux c #191913", +"cX0 c #191914", +"cRi c #191915", +"dfN c #191916", +"aEk c #191917", +"av5 c #191919", +"cFh c #19191a", +"fbp c #19191c", +"b2k c #191a0f", +"bJR c #191a12", +"aPW c #191a14", +"bY1 c #191a15", +"b80 c #191a16", +"aS6 c #191a18", +"epc c #191a1a", +"cTO c #191b16", +"#YA c #191b1a", +"eBg c #191b1c", +"e2u c #191b1e", +"by0 c #191c15", +"bl# c #191c19", +"dAp c #191c1b", +"a#i c #191c1c", +"bkh c #191d15", +"bA4 c #191d16", +"a#h c #191d1c", +"eFO c #191d1f", +"bLD c #191e17", +"anu c #191e18", +"aTj c #191e1a", +"bp9 c #191e1b", +"doy c #191e1c", +"duA c #191e1d", +"bDa c #191f18", +"aG6 c #191f19", +"dsB c #191f1d", +"#oh c #191f1f", +"#7H c #192019", +"anp c #19201a", +"ej6 c #192023", +"bgj c #1921de", +"dFN c #192221", +"e2p c #192223", +"ea7 c #192325", +"a0n c #192aa1", +"bgh c #1934ee", +"fZ6 c #193e74", +"fRc c #194481", +"bgf c #1944f4", +"bge c #194cf3", +"aXf c #195ede", +"enN c #1a0702", +"eLc c #1a0c0d", +"d2B c #1a0d05", +"d90 c #1a0d06", +"eNw c #1a0d0c", +"arE c #1a0d0e", +"euQ c #1a0e0d", +"eNu c #1a0e0e", +"d7A c #1a0f06", +"eBM c #1a0f0f", +"eGu c #1a0f11", +"d9Z c #1a1008", +"dvr c #1a100d", +"eD5 c #1a1010", +"dUk c #1a1011", +"dAK c #1a1012", +"d15 c #1a1013", +"bzt c #1a1108", +"drB c #1a110f", +"dEq c #1a1110", +"dyG c #1a1111", +"dCC c #1a1112", +"dRQ c #1a1113", +"cr5 c #1a1205", +"dj2 c #1a1210", +"d4k c #1a1212", +"dyD c #1a1213", +"dvt c #1a1310", +"c91 c #1a1311", +"emZ c #1a1312", +"dyE c #1a1314", +"cDj c #1a140e", +"c8k c #1a1411", +"dij c #1a1412", +"c9P c #1a1413", +"epm c #1a1414", +"bpx c #1a150e", +"bkY c #1a1512", +"djN c #1a1517", +"ccH c #1a160e", +"b6W c #1a1611", +"ddY c #1a1614", +"dwO c #1a1615", +"ddZ c #1a1616", +"cDh c #1a1711", +"cDE c #1a1713", +"a1T c #1a1714", +"c6R c #1a1715", +"bp1 c #1a1716", +"do7 c #1a1717", +"dwD c #1a1718", +"czo c #1a180f", +"c9O c #1a1816", +"bvf c #1a1817", +"dhS c #1a1819", +"b4e c #1a190e", +"b0i c #1a190f", +"cBi c #1a1911", +"bYS c #1a1915", +"cDF c #1a1916", +"c.M c #1a1917", +"cNb c #1a1919", +"aSC c #1a1a11", +"cRD c #1a1a14", +"cIA c #1a1a16", +"c.L c #1a1a18", +"aP7 c #1a1a19", +"ayA c #1a1a1a", +"cFg c #1a1a1c", +"aVB c #1a1b12", +"bWW c #1a1b15", +"b1e c #1a1b16", +"bvp c #1a1b18", +"cdm c #1a1b19", +"ehG c #1a1b1b", +"e8O c #1a1b1d", +"bA6 c #1a1c15", +"avR c #1a1c17", +"aWj c #1a1c19", +"dyl c #1a1c1a", +"aKh c #1a1c1b", +"dAo c #1a1c1c", +"d1C c #1a1c1d", +"dKq c #1a1c1e", +"aMT c #1a1d16", +"aY1 c #1a1d19", +"d6A c #1a1d1d", +"eZm c #1a1d20", +"byX c #1a1e17", +"bFl c #1a1e18", +"att c #1a1e1b", +"#Bs c #1a1e1f", +"bPz c #1a1f17", +"ae1 c #1a1f19", +"a5o c #1a1f1b", +"dFX c #1a1f1e", +"#xE c #1a1f20", +"eyZ c #1a1f21", +"bNs c #1a201a", +".5y c #1a2020", +".Q2 c #1a2021", +"dA# c #1a2122", +"dz9 c #1a2321", +"dCb c #1a2322", +"e.4 c #1a2425", +"bgi c #1a2bea", +"#hf c #1a2d2a", +"fW4 c #1a4381", +"#vj c #1a4519", +"#vi c #1a4719", +"#vh c #1a4919", +"#vg c #1a4b19", +"#vf c #1a4f19", +"#ve c #1a531a", +"#vd c #1a561e", +"#u9 c #1a582c", +"#vc c #1a5921", +"#vb c #1a5a24", +"#va c #1a5b25", +"#v# c #1a5b27", +"#v. c #1a5c28", +"ary c #1adbe0", +"enO c #1b0701", +"arG c #1b0707", +"ePD c #1b0c0c", +"ePE c #1b0d0d", +"e2U c #1b0d0e", +"fcY c #1b0d11", +"eZV c #1b0e0e", +"eGC c #1b0e0f", +"eaa c #1b0f07", +"fab c #1b0f0e", +"eEb c #1b0f0f", +"epL c #1b0f11", +"dw2 c #1b100e", +"eD6 c #1b100f", +"dNp c #1b1010", +"eIP c #1b1012", +"flI c #1b1014", +"dtA c #1b110f", +"dpu c #1b1110", +"dPE c #1b1111", +"dEo c #1b1112", +"dRR c #1b1113", +"dvs c #1b1210", +"dAM c #1b1212", +"dCB c #1b1213", +"dgk c #1b1312", +"dyw c #1b1313", +"fcW c #1b1314", +"dNk c #1b1414", +"dgm c #1b1512", +"d6I c #1b1515", +"dM5 c #1b1516", +"dq2 c #1b1517", +"db. c #1b1613", +"dhX c #1b1615", +"c9N c #1b1616", +"ffC c #1b1617", +"daV c #1b1618", +"cBj c #1b1710", +"aVV c #1b1711", +"cuA c #1b1712", +"c5u c #1b1715", +"cZu c #1b1716", +"c9B c #1b1717", +"cam c #1b1810", +"bBO c #1b1815", +"d4c c #1b1818", +"dM1 c #1b1819", +"czn c #1b1911", +"aV0 c #1b1916", +"bUN c #1b1917", +"dsS c #1b1918", +"duQ c #1b1919", +"ewK c #1b191a", +"dqQ c #1b191b", +"a55 c #1b19e0", +"b6j c #1b1a0f", +"bX5 c #1b1a12", +"cBV c #1b1a15", +"bYT c #1b1a16", +"ca5 c #1b1a18", +"cOH c #1b1a1a", +"atl c #1b1a1b", +"bV4 c #1b1b11", +"bnq c #1b1b14", +"cuw c #1b1b16", +"ayw c #1b1b18", +"ca4 c #1b1b19", +"cIL c #1b1b1a", +"atk c #1b1b1b", +"fke c #1b1b1c", +"fee c #1b1b1f", +"b28 c #1b1c16", +"bY0 c #1b1c17", +"bxG c #1b1c19", +"dwB c #1b1c1a", +"dH4 c #1b1c1b", +"d39 c #1b1c1d", +"#Pn c #1b1c1e", +"dMT c #1b1c1f", +"cTN c #1b1d17", +"ayn c #1b1d18", +"aE. c #1b1d19", +"aTb c #1b1d1a", +"aTc c #1b1d1b", +"#V. c #1b1d1c", +"dZb c #1b1d1d", +"dTV c #1b1d1f", +"b0g c #1b1e16", +"bsT c #1b1e17", +"bn9 c #1b1e1b", +"dym c #1b1e1c", +"dAm c #1b1e1d", +"#Sb c #1b1e1e", +"eo4 c #1b1e20", +"eZn c #1b1e22", +"aSz c #1b1f18", +"bFk c #1b1f1a", +"bie c #1b1f1b", +"#Sa c #1b1f20", +"aG2 c #1b2019", +"aA6 c #1b201a", +"aBz c #1b201c", +"#xK c #1b201e", +"dwn c #1b201f", +"dMO c #1b2021", +"eff c #1b2023", +"avP c #1b211a", +"dmR c #1b211f", +"emz c #1b2121", +"#4M c #1b221b", +"aG7 c #1b221c", +"#F. c #1b221f", +"dMN c #1b2222", +"ea8 c #1b2325", +"#kI c #1b2425", +"dMG c #1b2526", +"#lj c #1b2527", +"#hq c #1b2728", +"dWj c #1b2729", +"##F c #1b2d2d", +"#io c #1b2f2b", +"a59 c #1b34da", +"#vk c #1b4419", +"aOb c #1b88d9", +"#Qq c #1be055", +"alZ c #1be1d5", +"al7 c #1c0205", +"eIX c #1c0e0e", +"d7z c #1c0f07", +"dW1 c #1c0f0f", +"eGv c #1c0f12", +"eNo c #1c1012", +"dy4 c #1c110e", +"epI c #1c1110", +"d2a c #1c1111", +"eNn c #1c1113", +"dWY c #1c1211", +"dUn c #1c1212", +"d6N c #1c1213", +"dRT c #1c1214", +"dAJ c #1c1313", +"dAI c #1c1314", +"e#n c #1c1316", +"dtE c #1c1412", +"dIv c #1c1414", +"d1P c #1c1415", +"dZm c #1c1418", +"brO c #1c150c", +"dgn c #1c1513", +"ddX c #1c1515", +"ffD c #1c1516", +"cuE c #1c1609", +"b8f c #1c160a", +"d#t c #1c1616", +"dWF c #1c1618", +"cEX c #1c1714", +"dfZ c #1c1716", +"c60 c #1c1717", +"b0j c #1c180d", +"cDi c #1c1813", +"dnL c #1c1814", +"dZk c #1c1816", +"c0Y c #1c1817", +"dys c #1c1819", +"bgm c #1c18c3", +"b97 c #1c1911", +"cw7 c #1c1912", +"dnJ c #1c1914", +"dbd c #1c1915", +"c6Q c #1c1917", +"dT0 c #1c191a", +"b8e c #1c1a10", +"bWS c #1c1a17", +"c.J c #1c1a18", +"ebd c #1c1a1b", +"cBL c #1c1a1c", +"e8S c #1c1a1d", +"cIT c #1c1b16", +"aWc c #1c1b17", +"b06 c #1c1b18", +"b6X c #1c1b19", +"cNa c #1c1b1a", +"emD c #1c1b1b", +"cDI c #1c1b1c", +"d1B c #1c1b1e", +"bhs c #1c1c16", +"aBi c #1c1c17", +"bD1 c #1c1c18", +"cfI c #1c1c1a", +"aBk c #1c1c1b", +"av4 c #1c1c1c", +"dMU c #1c1c1d", +"fcM c #1c1c1e", +"dZa c #1c1c1f", +"fbq c #1c1c20", +"b4d c #1c1d11", +"bDf c #1c1d15", +"aMU c #1c1d17", +"at# c #1c1d18", +"bia c #1c1d1d", +"dRm c #1c1d1e", +"dWx c #1c1d1f", +"cj7 c #1c1e14", +"cmL c #1c1e17", +"at. c #1c1e18", +"btz c #1c1e1a", +"a5j c #1c1e1b", +"bp8 c #1c1e1c", +"#Pq c #1c1e1d", +"aNh c #1c1e1e", +"dTW c #1c1e1f", +"e5H c #1c1e20", +"bpo c #1c1f18", +"bl. c #1c1f1c", +"aqB c #1c1f1d", +"dD3 c #1c1f1e", +"d8T c #1c1f21", +"#U9 c #1c201f", +"#E2 c #1c2021", +"#U2 c #1c2022", +"bHB c #1c211a", +"akR c #1c211b", +"ayI c #1c211d", +".9m c #1c2121", +"#7J c #1c221c", +"dsD c #1c2220", +"eo9 c #1c2222", +"dP# c #1c2223", +"#mf c #1c2224", +"aeX c #1c231c", +"erC c #1c2323", +"#hL c #1c2325", +"emv c #1c2423", +"dAc c #1c2524", +"dAb c #1c2625", +"d8J c #1c2627", +"#eb c #1c2628", +"#kC c #1c2727", +"#hO c #1c2728", +"dQ9 c #1c2828", +"dK. c #1c2928", +"dY0 c #1c2a2b", +"aZ8 c #1c36de", +"fLc c #1c3b67", +"fO. c #1c437c", +"aLt c #1c4ca7", +"aLh c #1c86da", +"coB c #1cbe35", +"aoJ c #1cdddb", +"#28 c #1ce17e", +"eed c #1d0e07", +"e2T c #1d0e10", +"eIO c #1d0e11", +"fac c #1d0f0f", +"eK7 c #1d0f11", +"eK4 c #1d0f12", +"eK5 c #1d0f13", +"d9Y c #1d1008", +"esq c #1d100e", +"esg c #1d1010", +"eia c #1d1011", +"fiH c #1d1012", +"ePF c #1d1110", +"euE c #1d1111", +"epK c #1d1112", +"d9i c #1d1113", +"dUq c #1d1211", +"eIQ c #1d1213", +"flH c #1d1214", +"d4t c #1d1313", +"ffJ c #1d1314", +"ffI c #1d1315", +"dRS c #1d1415", +"dZn c #1d1418", +"dlU c #1d1512", +"dj1 c #1d1513", +"da4 c #1d1514", +"emY c #1d1515", +"f#3 c #1d1516", +"dxl c #1d1610", +"dEn c #1d1615", +"did c #1d1617", +"ddW c #1d1717", +"cuB c #1d1812", +"cDD c #1d1914", +"c9X c #1d1915", +"b8R c #1d1916", +"dm4 c #1d1917", +"dll c #1d1918", +"cBK c #1d191a", +"bX6 c #1d1a10", +"cFc c #1d1a16", +"c06 c #1d1a18", +"cYb c #1d1a19", +"bDm c #1d1b12", +"aMV c #1d1b16", +"e#c c #1d1b1c", +"cu4 c #1d1c16", +"cIS c #1d1c18", +"b41 c #1d1c1a", +"aS5 c #1d1c1c", +"doQ c #1d1d1a", +"aBl c #1d1d1b", +"atj c #1d1d1d", +"bvk c #1d1d1f", +"cpo c #1d1e18", +"ayo c #1d1e19", +"duL c #1d1e1b", +"cBM c #1d1e1e", +"e2s c #1d1e22", +"bzQ c #1d1f1a", +"bvq c #1d1f1b", +"a2d c #1d1f1c", +"dAn c #1d1f1d", +"#rZ c #1d1f1e", +"dRl c #1d1f20", +"dZ# c #1d1f21", +"a3p c #1d1f9f", +"bLF c #1d2016", +"bwV c #1d2019", +"aJY c #1d201a", +"#IH c #1d2020", +"dTU c #1d2021", +"d1A c #1d2022", +"bTW c #1d211a", +"bfb c #1d211d", +"awa c #1d211e", +"#YD c #1d2120", +"#ES c #1d2122", +"bHC c #1d221d", +"awc c #1d221e", +"#xD c #1d2222", +"#Br c #1d2223", +"ewC c #1d2224", +"bwT c #1d231c", +"bo# c #1d231f", +"duC c #1d2320", +"dqC c #1d2321", +".Oi c #1d2323", +"#4L c #1d241d", +"dyc c #1d2423", +"ahX c #1d251d", +"e.5 c #1d2526", +"e5B c #1d2527", +"dDX c #1d2625", +"#j0 c #1d2627", +"#eX c #1d2729", +"d3Z c #1d2b2c", +"aXc c #1d4adf", +"bgc c #1d5aeb", +"agz c #1d6c9e", +"#zy c #1d7e22", +"axb c #1dc6d5", +"#ZO c #1ddd7e", +"ajj c #1de1cf", +"aoR c #1e0000", +"eSg c #1e0a03", +"ePC c #1e0e0f", +"eIS c #1e0e11", +"eRF c #1e1010", +"eGw c #1e1012", +"eIR c #1e1013", +"d44 c #1e1109", +"exf c #1e1111", +"d1S c #1e1212", +"eGs c #1e1213", +"dy3 c #1e1310", +"dZF c #1e1313", +"d9g c #1e1314", +"flG c #1e1315", +"er3 c #1e1414", +"ebv c #1e1415", +"d4y c #1e1416", +"d14 c #1e1516", +"d9a c #1e1615", +"ffE c #1e1617", +"dcD c #1e1714", +"c90 c #1e1715", +"dRy c #1e1716", +"dh7 c #1e171a", +"f#4 c #1e1818", +"dEa c #1e1918", +"dct c #1e1919", +"dni c #1e191a", +"bnY c #1e1a12", +"cw8 c #1e1a13", +"bhv c #1e1a14", +"d#O c #1e1a15", +"cSM c #1e1a17", +"cX7 c #1e1a19", +"dwM c #1e1a1b", +"bIr c #1e1b18", +"cSE c #1e1b1a", +"cBJ c #1e1b1b", +"bn3 c #1e1b1c", +"dsM c #1e1b1d", +"brp c #1e1c16", +"c2P c #1e1c19", +"cu5 c #1e1c1d", +"ccG c #1e1d12", +"cL2 c #1e1d17", +"cDT c #1e1d18", +"cp7 c #1e1d19", +"cLR c #1e1d1a", +"aV9 c #1e1d1b", +"ckM c #1e1d1c", +"ez. c #1e1d1d", +"bn4 c #1e1d1e", +"fef c #1e1d21", +"cQv c #1e1e17", +"cOW c #1e1e18", +"aHc c #1e1e19", +"cQq c #1e1e1a", +"cLS c #1e1e1b", +"ca3 c #1e1e1c", +"#uH c #1e1e1d", +"#uG c #1e1e1e", +"ffy c #1e1e20", +"bFq c #1e1f17", +"bUW c #1e1f18", +"b67 c #1e1f19", +"aHh c #1e1f1a", +"#sl c #1e1f1e", +"#rY c #1e1f1f", +"e5E c #1e1f22", +"b2j c #1e2016", +"bX4 c #1e2019", +"cEW c #1e201b", +"aWk c #1e201d", +"#r0 c #1e201f", +"dPc c #1e2021", +"dWw c #1e2022", +"a1p c #1e211a", +"dD4 c #1e2120", +"e#b c #1e2122", +"e2v c #1e2123", +"eZl c #1e2124", +"#E1 c #1e2223", +"bNr c #1e231c", +"aym c #1e231d", +"a5n c #1e231f", +"dmQ c #1e2322", +"#Bq c #1e2323", +"dPa c #1e2324", +"erz c #1e2325", +"eBc c #1e2326", +"doB c #1e2421", +"#xC c #1e2424", +"eML c #1e2425", +"ems c #1e2426", +"e5C c #1e2427", +"#7G c #1e251e", +"emB c #1e2525", +"d8K c #1e2527", +"#1x c #1e261e", +"dP. c #1e2625", +"dCa c #1e2726", +"dOZ c #1e2829", +"dTG c #1e2c2c", +"dWi c #1e2c2d", +"##E c #1e3130", +"#he c #1e332e", +"#vl c #1e4119", +"fUa c #1e437a", +"f26 c #1e4c94", +"eUL c #1f0a03", +"eNq c #1f0e11", +"eL# c #1f0f10", +"eK8 c #1f0f12", +"eEc c #1f1010", +"esr c #1f1011", +"eNp c #1f1014", +"ePz c #1f1112", +"eK6 c #1f1114", +"dPF c #1f1212", +"dyH c #1f1313", +"fiE c #1f1314", +"dy5 c #1f1410", +"drs c #1f1413", +"d16 c #1f1414", +"ffK c #1f1416", +"d60 c #1f1514", +"dUl c #1f1515", +"dNj c #1f1516", +"e#r c #1f1517", +"e#q c #1f1518", +"cx# c #1f160c", +"dro c #1f1613", +"dWZ c #1f1614", +"dAO c #1f1615", +"dcp c #1f1617", +"dcv c #1f1716", +"deh c #1f1717", +"dCy c #1f1718", +"bBD c #1f1812", +"dcE c #1f1814", +"dgl c #1f1816", +"die c #1f1818", +"ewL c #1f1919", +"dlw c #1f191a", +"c.I c #1f1a16", +"da2 c #1f1a19", +"dfY c #1f1a1a", +"djK c #1f1a1b", +"aYW c #1f1b14", +"cfF c #1f1b15", +"cT2 c #1f1b17", +"cRw c #1f1b18", +"cQi c #1f1b1a", +"cZt c #1f1b1b", +"d#r c #1f1b1c", +"cRx c #1f1c18", +"c0X c #1f1c1a", +"dCr c #1f1c1b", +"dE. c #1f1c1c", +"bX7 c #1f1d10", +"dgB c #1f1d15", +"a1Q c #1f1d16", +"csr c #1f1d17", +"c8o c #1f1d1b", +"cOO c #1f1d1c", +"dhR c #1f1d1e", +"e8T c #1f1d20", +"bFt c #1f1e14", +"cKn c #1f1e19", +"cva c #1f1e1a", +"cDN c #1f1e1b", +"cfH c #1f1e1c", +"eDy c #1f1e1d", +"cu6 c #1f1e1e", +"aqu c #1f1e1f", +"cM9 c #1f1f1b", +"ca2 c #1f1f1c", +"aBm c #1f1f1d", +"cIM c #1f1f1e", +"aqt c #1f1f1f", +"aS4 c #1f1f20", +"fiu c #1f1f22", +"b6i c #1f2014", +"cFy c #1f2018", +"aM2 c #1f2019", +"bSI c #1f201a", +"avU c #1f201b", +"buL c #1f201c", +"#q0 c #1f201f", +"#rx c #1f2020", +"edc c #1f2021", +"aPK c #1f2118", +"bki c #1f211a", +"bid c #1f211d", +"aZl c #1f211e", +"#qZ c #1f2120", +"dMS c #1f2122", +"d38 c #1f2123", +"bnk c #1f221b", +"dAl c #1f2221", +"ehD c #1f2223", +"#Ma c #1f2322", +"dMP c #1f2324", +"eDs c #1f2326", +"aJR c #1f241d", +"aDZ c #1f241e", +"aH. c #1f241f", +"aNi c #1f2420", +"#II c #1f2422", +"#75 c #1f2423", +"dRk c #1f2424", +"bJP c #1f251d", +"aWr c #1f2521", +"dk3 c #1f2523", +"dWv c #1f2525", +"eFR c #1f2526", +"eKu c #1f2625", +"dKn c #1f2626", +"d6u c #1f2627", +"d6t c #1f2728", +"dKe c #1f2729", +"etX c #1f272a", +"dRb c #1f282a", +"dz4 c #1f292a", +"#d8 c #1f292b", +"dOV c #1f2b2b", +"dMC c #1f2c2d", +"eIE c #201011", +"exe c #201112", +"ea# c #20120b", +"euI c #201211", +"eBR c #201213", +"ebB c #201312", +"dZE c #201313", +"ekG c #201314", +"ehY c #201315", +"dpv c #201413", +"em1 c #201414", +"d11 c #201416", +"dtB c #201513", +"eGk c #201514", +"dW3 c #201515", +"er4 c #201516", +"det c #201613", +"dZB c #201615", +"dPz c #201617", +"foK c #201618", +"eBw c #201715", +"eh3 c #201716", +"dIp c #201717", +"de. c #201718", +"d#I c #201816", +"dKW c #201818", +"ffF c #201819", +"a14 c #201912", +"dcz c #201916", +"dF6 c #201a19", +"d1K c #201a1a", +"diA c #201b15", +"cdk c #201b16", +"bkX c #201b17", +"c94 c #201b19", +"cGV c #201b1a", +"csq c #201c14", +"c9T c #201c19", +"c0Z c #201c1b", +"c7a c #201c1c", +"f#0 c #201c1d", +"c62 c #201d1b", +"d4b c #201d1e", +"bs1 c #201e19", +"bp2 c #201e1c", +"bBd c #201f18", +"cHd c #201f19", +"cxG c #201f1b", +"ckU c #201f1c", +"a5f c #201f1d", +"b8U c #201f1e", +"ckL c #201f1f", +"as6 c #20201b", +"c.U c #20201c", +"cNh c #20201d", +"aqq c #20201e", +"anL c #202020", +"bHE c #202119", +"bUV c #20211a", +"bSH c #20211b", +"avX c #20211c", +"aEd c #20211d", +"bic c #20211e", +"aBn c #20211f", +"#pr c #202120", +"#ob c #202121", +"bzW c #20221d", +"aWi c #20221e", +"aZm c #20221f", +"#oc c #202221", +"#pm c #202222", +"dKp c #202224", +"bV3 c #20231c", +"bfa c #20231f", +"bce c #202320", +"a#j c #202322", +"buF c #20241d", +"bkf c #20241e", +"bvv c #202420", +"#sa c #202422", +"#Ps c #202423", +"#IA c #202425", +"eBh c #202426", +"aSv c #20251e", +"aD3 c #20251f", +"dfz c #202520", +"atu c #202521", +"bNt c #20261f", +"ap9 c #202620", +"brW c #202622", +"dqA c #202624", +"dZ. c #202626", +"d1y c #202627", +"ec8 c #202629", +"#By c #202724", +".KZ c #202726", +"eo7 c #202727", +"ej9 c #202827", +"erx c #20282a", +"dDY c #202928", +"ej5 c #20292a", +"#hK c #202a2b", +"dFJ c #202b2b", +"dHQ c #202d2c", +"fRd c #204472", +"d3m c #20ae24", +"crf c #20c938", +"#Gg c #20da35", +"#Gc c #20ea14", +"ba. c #2100fe", +"eXz c #210b05", +"e0L c #210c05", +"eiO c #210f08", +"eZ1 c #210f10", +"eNr c #210f13", +"epU c #211011", +"eBN c #211111", +"eZU c #211112", +"epT c #211211", +"ezL c #211212", +"e2S c #211213", +"eIT c #211215", +"fiI c #211314", +"em7 c #211414", +"d2# c #211415", +"dyM c #211514", +"dW2 c #211515", +"flF c #211516", +"dBa c #211610", +"drr c #211615", +"dW0 c #211616", +"dUm c #211617", +"flE c #211618", +"des c #211716", +"eh9 c #211717", +"e#p c #211718", +"ezk c #211719", +"foT c #21181a", +"dAN c #211917", +"d6T c #21191a", +"bgn c #2119bd", +"dpE c #211a18", +"dic c #211a1b", +"dik c #211b18", +"dhZ c #211b1b", +"c8d c #211b1c", +"brq c #211c14", +"diB c #211c16", +"dlS c #211c18", +"bMq c #211c19", +"cSS c #211c1a", +"eIk c #211c1b", +"daU c #211c1d", +"bDX c #211d19", +"cT1 c #211d1a", +"cRs c #211d1c", +"dcP c #211e17", +"cxz c #211e18", +"cQp c #211e1a", +"d#F c #211e1d", +"d1I c #211e1f", +"bFw c #211f14", +"bpw c #211f18", +"cKw c #211f19", +"czS c #211f1f", +"ey9 c #211f20", +"bV5 c #212013", +"bve c #21201b", +"cKc c #21201c", +"cZR c #21201d", +"ch3 c #21201e", +"cP9 c #21201f", +"anK c #212020", +"aS3 c #212021", +"bTY c #212116", +"cYt c #212119", +"bpt c #21211c", +"aBp c #21211f", +"dH5 c #212120", +"#oT c #212121", +"#tf c #212122", +"bA7 c #21221c", +"bUU c #21221d", +"bBV c #21221e", +"aBo c #212220", +"#oS c #212221", +"#ps c #212222", +"byY c #21231c", +"cWJ c #21231d", +"bxM c #21231e", +"bn8 c #212320", +"#m0 c #212322", +"#oO c #212323", +"brf c #21241d", +"bX3 c #21241e", +"dyi c #212421", +"#t# c #212422", +"#qY c #212423", +"#xv c #212425", +"dH3 c #212426", +"bnj c #21251e", +"aB. c #21251f", +"b#l c #212522", +"#YE c #212523", +"#Se c #212524", +"#Bd c #212526", +"e5D c #212528", +"bel c #21261f", +"bHD c #212620", +"atw c #212622", +"a.V c #212623", +".M7 c #212626", +"ey0 c #212629", +".Yg c #212727", +"d6y c #212728", +"d8P c #212729", +"eDp c #212828", +"d37 c #212829", +"etY c #21282a", +"#oe c #212929", +"ehy c #21292b", +"erD c #212a29", +"emr c #212a2b", +"efd c #212a2c", +"d8y c #212d2e", +"dY1 c #212d2f", +"d6m c #212e2f", +"#vm c #213e19", +"fO# c #214370", +"cro c #21b62d", +"cq1 c #21ca3d", +"#Qd c #220806", +"eRG c #221112", +"d2A c #22120b", +"e21 c #221213", +"euR c #221313", +"eGr c #221314", +"eNm c #221315", +"e#z c #221414", +"efR c #221415", +"eDP c #221515", +"d18 c #221516", +"fr5 c #221518", +"d4s c #221615", +"d17 c #221616", +"fr4 c #221618", +"d65 c #221717", +"er0 c #221817", +"eDO c #221818", +"dGl c #221819", +"dZA c #22181a", +"dlP c #221918", +"dWW c #22191a", +"fiy c #22191b", +"b6l c #221a0e", +"d#D c #221a1b", +"dy9 c #221b15", +"#N. c #221b17", +"dj3 c #221b19", +"bpy c #221c14", +"dE# c #221c1c", +"dKC c #221c1d", +"cu3 c #221d14", +"diz c #221d16", +"dgC c #221d17", +"c68 c #221d1a", +"a1U c #221d1c", +"cVC c #221d1d", +"b2Z c #221e16", +"cpZ c #221e17", +"a4X c #221e18", +"cFb c #221e19", +"d#M c #221e1b", +"cX6 c #221e1c", +"cSF c #221e1d", +"dwN c #221e1e", +"cE0 c #221f17", +"cnj c #221f19", +"czO c #221f1a", +"c6P c #221f1d", +"cal c #222017", +"ch0 c #222019", +"css c #22201c", +"cZQ c #22201e", +"cW3 c #22201f", +"ffz c #222022", +"aMW c #22211a", +"bpv c #22211c", +"ckI c #22211d", +"aHo c #22211e", +"bzP c #22211f", +"csu c #222121", +"b8d c #222216", +"bkk c #22221a", +"ch7 c #22221d", +"aEc c #22221e", +"bi# c #22221f", +"anG c #222220", +"aKc c #222221", +"#ma c #222222", +"cnl c #222223", +"fbw c #222224", +"fit c #222225", +"bRN c #22231a", +"bSG c #22231c", +"bpu c #22231d", +"avZ c #22231e", +"bIz c #22231f", +"cnk c #222320", +"bvo c #222321", +"#m# c #222322", +"#mb c #222323", +"#pq c #222324", +"b4c c #22241a", +"cFz c #22241c", +"cTM c #22241e", +"bxH c #22241f", +"aWm c #222420", +"aWl c #222421", +"#mc c #222423", +"#hn c #222424", +"bnl c #22251e", +"aik c #222523", +"#jw c #222524", +"#f3 c #222525", +"#xz c #222526", +"eZo c #222528", +"bLE c #22261e", +"bnh c #22261f", +"aD5 c #222621", +"#cJ c #222625", +"#xu c #222627", +"d8S c #222628", +"bFj c #222720", +"ddB c #222721", +"atv c #222723", +"dwo c #222725", +"dya c #222726", +"eo3 c #22272a", +"buG c #222821", +"dsC c #222826", +"dMQ c #222828", +"ery c #22282b", +"gzD c #22282f", +"#4K c #222922", +"#oi c #222928", +"ewz c #22292b", +"emw c #222a29", +"dAa c #222a2a", +"eFN c #222a2c", +"#jU c #222b2d", +"dx7 c #222c2c", +"dB7 c #222c2d", +"dYX c #222d2f", +"#lg c #223030", +"##G c #223434", +"aRf c #223ca8", +"fW5 c #224271", +"axi c #2262a2", +"crn c #22b432", +"cqX c #22c53b", +"cq8 c #22c83c", +"crj c #22c93b", +"cq7 c #22c93d", +"cq0 c #22ca3e", +"crg c #22cb34", +"crh c #22cb38", +"cq2 c #22cb3c", +"cq5 c #22cb3d", +"#CJ c #22f905", +"bdr c #23008f", +"e3J c #230d06", +"ePB c #231013", +"eT8 c #231213", +"eID c #231215", +"euF c #231313", +"euP c #231314", +"ePx c #231315", +"fcZ c #231317", +"eD3 c #231415", +"d7y c #23150c", +"dRW c #231515", +"eD2 c #231615", +"d4z c #231616", +"epA c #231618", +"dtC c #231715", +"d1T c #231716", +"eWJ c #231717", +"d4u c #231718", +"e9# c #231719", +"dA8 c #231811", +"dvb c #231816", +"efJ c #231819", +"dEj c #23181a", +"e2Q c #231918", +"dem c #231919", +"dRO c #23191a", +"del c #231a18", +"den c #231a19", +"bBy c #231b0f", +"bva c #231b16", +"dlQ c #231b19", +"flC c #231b1c", +"cF. c #231c16", +"dcs c #231c1d", +"ccK c #231d0e", +"cE9 c #231d16", +"ddV c #231d1d", +"bab c #231ddc", +"a13 c #231e17", +"cBH c #231e18", +"d#E c #231e1d", +"cSL c #231f1c", +"c0W c #231f1e", +"dm5 c #231f1f", +"dPd c #231f21", +"cxA c #23201d", +"dhY c #23201e", +"dd0 c #23201f", +"dZi c #232021", +"b96 c #232117", +"aZc c #23211c", +"cdl c #23211d", +"cBI c #23211e", +"cYd c #232120", +"cst c #232121", +"cQ. c #232122", +"csx c #23221d", +"a5e c #23221e", +"bxF c #232220", +"c2y c #232221", +"ati c #232222", +"cp2 c #232223", +"aPL c #23231b", +"cVN c #23231d", +"bOs c #23231e", +"bBS c #232320", +"anF c #232321", +"dhM c #232322", +"#sg c #232323", +"aS2 c #232324", +"flv c #232325", +"aYA c #23241c", +"bDg c #23241d", +"b5# c #23241e", +"bQu c #23241f", +"bty c #232421", +"#oU c #232423", +"#ls c #232424", +"#lr c #232425", +"bMx c #232520", +"aTd c #232522", +"afn c #232523", +"#oV c #232524", +"#lt c #232525", +"#jZ c #232526", +"bUY c #23261f", +"anv c #232620", +"bKG c #232621", +"#cl c #232625", +"#eN c #232626", +"ddD c #232721", +"#rQ c #232724", +"#Pr c #232726", +"#xi c #232728", +"#xw c #232729", +"eWc c #23272a", +"aMK c #232821", +"ayH c #232824", +"acl c #232825", +".6E c #232828", +"dPb c #232829", +"e.6 c #23282b", +"bfc c #232925", +"dyd c #232928", +".Jf c #232929", +".RR c #23292a", +"cio c #232a21", +"dwl c #232a27", +"eIc c #232a2c", +"d36 c #232b2c", +"eZg c #232b2d", +"dB9 c #232c2a", +"dRj c #232c2b", +"#lv c #232c2d", +"e5A c #232d2e", +"ec5 c #232d2f", +"e.3 c #232e2e", +"#gu c #232f2f", +"fOb c #23385b", +"fZ7 c #233b64", +"dYg c #238521", +"crm c #23bb37", +"cqW c #23c237", +"cqY c #23c83c", +"cq9 c #23c93a", +"cri c #23c93c", +"cqZ c #23c93d", +"cq6 c #23ca3d", +"cq3 c #23cb3c", +"cq4 c #23cb3d", +"cr. c #23cc3d", +"eNx c #241012", +"enP c #241109", +"enh c #241112", +"eRE c #241213", +"ePA c #241215", +"ec. c #24130c", +"eNt c #241314", +"eD4 c #241415", +"en. c #241416", +"eZT c #241515", +"ew5 c #241516", +"dZz c #241517", +"fiF c #241518", +"dUr c #241616", +"frO c #241618", +"e#t c #241718", +"dry c #241816", +"drt c #241817", +"d4D c #241818", +"d1R c #24181a", +"drq c #241918", +"e2R c #241919", +"eBv c #24191a", +"dUj c #241a1b", +"czr c #241b10", +"dj9 c #241b19", +"dCE c #241b1a", +"dyv c #241b1b", +"d86 c #241b1c", +"cmR c #241c0e", +"dei c #241c19", +"dPh c #241c1c", +"eBq c #241c1d", +"dAy c #241d1d", +"eui c #241d1e", +"dpJ c #241e18", +"cFa c #241e19", +"cxy c #241f17", +"c2r c #241f1e", +"bs4 c #24201b", +"cSN c #24201d", +"c5N c #24201f", +"gzf c #242021", +"c4m c #24211d", +"doR c #242120", +"e8U c #242224", +"aSR c #24231d", +"bs2 c #24231f", +"aEj c #242320", +"cSu c #242321", +"aSW c #242322", +"cIZ c #24241c", +"bnp c #24241d", +"bs0 c #24241e", +"bOt c #24241f", +"aZf c #242420", +"aEh c #242421", +"anH c #242422", +"cnm c #242423", +"aie c #242424", +"bhr c #24251d", +"cRg c #24251e", +"aBg c #24251f", +"aJ8 c #242520", +"aqi c #242521", +"aqs c #242523", +"#rX c #242524", +"#hz c #242525", +"#oQ c #242526", +"e5I c #242527", +"by1 c #24261f", +"bQx c #242620", +"aBb c #242621", +"a2e c #242623", +"#ux c #242624", +"#mi c #242625", +"#eO c #242626", +"b0f c #24271e", +"brd c #242720", +"#uy c #242724", +"#rp c #242725", +"#ck c #242726", +"#cm c #242727", +"#da c #242728", +"dgK c #24281e", +"bni c #242821", +"asY c #242822", +"dfx c #242824", +"aHu c #242825", +"#qT c #242826", +"#R7 c #242827", +"#Pf c #242829", +"bpk c #242922", +"ah2 c #242923", +"awb c #242925", +"dFW c #242928", +".7T c #242929", +"dTT c #24292a", +"e#. c #24292b", +"ewD c #24292c", +"#13 c #242a26", +"dmS c #242a28", +"dFV c #242a2a", +"eDo c #242a2b", +"eZk c #242a2c", +"eWb c #242a2d", +"#X9 c #242b24", +"emy c #242b2b", +"d1w c #242b2c", +"eo8 c #242c2b", +"dHW c #242c2d", +"#kN c #242c2e", +"eV8 c #242c2f", +"eo2 c #242d2e", +"#n7 c #242d2f", +"ea6 c #242e2f", +"#f7 c #242e30", +"dTJ c #243030", +"dTN c #243131", +"#ip c #243736", +"fLd c #243b60", +"#vn c #243c1d", +"fOa c #243f65", +".9R c #245027", +".9y c #245028", +".9x c #24502a", +".9Q c #245127", +".9z c #245328", +".9A c #245529", +".9P c #24562a", +".9B c #245729", +".9C c #24582a", +".9M c #24582b", +".9D c #24592a", +".9E c #24592b", +".9F c #245a29", +".9N c #245a2a", +".9O c #245a2b", +"aIv c #2499da", +"crl c #24bf38", +"crk c #24c539", +"#6# c #24d694", +"#Qe c #250908", +"fa0 c #250b06", +"e94 c #250d08", +"fc8 c #251112", +"elj c #25120b", +"eNs c #251216", +"eIN c #251315", +"ezK c #251415", +"ePG c #251416", +"edw c #251419", +"eng c #251514", +"d9o c #251516", +"dA3 c #251613", +"ekC c #251617", +"dA4 c #251712", +"d9s c #251716", +"d2. c #251718", +"d9j c #25171a", +"d10 c #251818", +"er5 c #25181a", +"dZD c #251919", +"dtD c #251a17", +"dtq c #251a18", +"dpp c #251a19", +"dlM c #251a1a", +"d4x c #251a1b", +"dZo c #251a1e", +"dgu c #251b18", +"eup c #251b19", +"dlL c #251b1a", +"dKV c #251b1c", +"dej c #251c1a", +"dl2 c #251d19", +"drp c #251d1a", +"dek c #251d1b", +"ded c #251d1e", +"dAF c #251d1f", +"cF# c #251e17", +"djO c #251e20", +"dkm c #251f1a", +"dh6 c #251f21", +"bBL c #25201c", +"cZE c #25201f", +"cRv c #25211e", +"edh c #25211f", +"cZs c #252120", +"flw c #252124", +"aZe c #25221d", +"bQj c #25221f", +"cTX c #252221", +"dsL c #252222", +"dqP c #252224", +"aVU c #25231b", +"cp0 c #25231e", +"bi. c #25231f", +"duN c #252321", +"aPM c #25241d", +"csD c #25241f", +"cOS c #252420", +"csA c #252421", +"cG9 c #252422", +"ath c #252424", +"aJ3 c #25251f", +"aEg c #252522", +"cp1 c #252523", +"atg c #252524", +"atp c #252525", +"cDW c #25261e", +"cKb c #252620", +"bOr c #252621", +"#qd c #252625", +"#gd c #252626", +"bsS c #252720", +"bQv c #252721", +"bOv c #252722", +"aZn c #252724", +"aTe c #252725", +"#dz c #252726", +".zF c #252727", +"byZ c #252821", +"bvw c #252824", +"#dA c #252826", +"#cK c #252827", +".Hp c #252828", +"#cn c #252829", +"e8N c #25282b", +"dgL c #252920", +"#5b c #252926", +"#dy c #252928", +"#LX c #252929", +"#xx c #25292a", +"d8L c #25292c", +"bNu c #252a22", +"bhl c #252a23", +"ayl c #252a24", +"a8j c #252a25", +"ayG c #252a26", +"#Sf c #252a29", +"d6z c #252a2a", +"eb. c #252a2c", +"ey1 c #252a2d", +"dmV c #252b27", +"dmT c #252b28", +"dsE c #252b29", +"#Bp c #252b2a", +"#xl c #252b2b", +".Q# c #252b2c", +"cf8 c #252c24", +"efh c #252c2b", +".Qa c #252c2c", +"#1y c #252d26", +"ehx c #252e2f", +"#ll c #253031", +"e.W c #253032", +"dWg c #253435", +"#vo c #253b1f", +"fUb c #25436d", +"#.5 c #25502a", +"#.J c #25512a", +"#.I c #25512c", +"#.4 c #25522b", +"#.K c #25532b", +"#.3 c #25542b", +"#.L c #25552c", +"#.2 c #25562c", +"#.M c #25572b", +"#.1 c #25572d", +"#.N c #25582c", +".9G c #25582f", +"#.S c #25592b", +"#.O c #25592c", +"#.P c #25592d", +"#.Z c #25592e", +"#.T c #255a2b", +"#.R c #255a2c", +"#.Q c #255a2d", +"#.0 c #255a2e", +"#Tn c #255c78", +"dYo c #258622", +"cqU c #25b335", +"cqV c #25bd33", +"#y7 c #25ff00", +"fdM c #260a06", +"eSf c #260c07", +"e6W c #260d07", +"e6X c #261009", +"eIZ c #261214", +"eiP c #26140a", +"ekO c #261415", +"esh c #261515", +"d67 c #261617", +"d66 c #261717", +"fvc c #261719", +"d9f c #26171a", +"d9n c #261818", +"fiG c #26181a", +"dA7 c #261914", +"edC c #261919", +"d9m c #261a19", +"eZN c #261a1a", +"ezj c #261a1c", +"dKU c #261a1d", +"ewR c #261b1a", +"d1Q c #261b1d", +"dID c #261c1a", +"dnw c #261c1c", +"dd9 c #261d1e", +"de# c #261d1f", +"dy8 c #261e18", +"epl c #261e1e", +"dRz c #261e1f", +"dge c #261e20", +"bnv c #261f16", +"dxm c #261f19", +"da9 c #261f1c", +"b4X c #262018", +"daT c #262020", +"f#1 c #262022", +"dcf c #262023", +"dnO c #26211b", +"c4l c #26211e", +"cVD c #26211f", +"f#5 c #262120", +"cRr c #262121", +"cfE c #26221a", +"czP c #26221e", +"cSK c #26221f", +"efr c #262220", +"cVB c #262221", +"cWV c #262223", +"bxs c #26231e", +"c9D c #262321", +"duT c #262322", +"bp3 c #262323", +"cZM c #262422", +"aV8 c #262423", +"djx c #262424", +"cQ# c #262425", +"cqe c #262520", +"aM8 c #262521", +"cSv c #262523", +"aqv c #262526", +"a8f c #262624", +"aw# c #262626", +"aQ. c #262627", +"bFr c #26271e", +"bkj c #262720", +"bQw c #262721", +"aHi c #262722", +"#rW c #262726", +"#pp c #262727", +"fis c #262729", +"buH c #262821", +"c9j c #262822", +"aWn c #262825", +"aTf c #262826", +"#oR c #262827", +"#ge c #262828", +"#qc c #262829", +"b6h c #26291d", +"bwU c #262922", +"bGg c #262923", +"#p8 c #262927", +"#bU c #262928", +"#bV c #262929", +"#Bn c #26292b", +"brc c #262a23", +"bJQ c #262a24", +"#sb c #262a27", +"aqD c #262a28", +"#d6 c #262a29", +"#iv c #262a2a", +"#EZ c #262a2b", +"#Ph c #262a2c", +"aMM c #262b24", +"avO c #262b25", +"a#l c #262b27", +"a#k c #262b28", +"#eJ c #262b2a", +"#U5 c #262b2b", +"#xA c #262b2c", +"d6v c #262b2d", +"d8O c #262b2e", +"doA c #262c29", +"#F# c #262c2a", +"dyb c #262c2b", +".Q. c #262c2c", +".Qb c #262c2d", +"e2r c #262c2e", +"aVt c #262d25", +"#1w c #262e26", +"dov c #262e2b", +"dWu c #262e2d", +"dFO c #262f2d", +"#jP c #263032", +"#md c #263131", +"d1s c #263133", +"dWm c #263232", +"dWf c #263233", +"dMB c #263333", +"d3U c #263335", +"fRg c #263654", +"ajq c #263a61", +"fW6 c #263e65", +"fRe c #264369", +".1y c #26522b", +".1z c #26522d", +".2v c #26542a", +".2P c #26542b", +".2Q c #26542c", +".1A c #26542d", +".2w c #26552c", +".2x c #26562b", +".2O c #26562d", +".1B c #26572d", +"#.U c #26572e", +".2y c #26582c", +".1C c #26592e", +".2z c #265a2c", +".2N c #265a2e", +".1D c #265a2f", +".2M c #265b2d", +".1G c #265b2e", +".1E c #265b2f", +".1F c #265b30", +".2A c #265c2c", +".2B c #265c2d", +".2L c #265c2e", +".2D c #265d2c", +".2C c #265d2d", +".2E c #265d2e", +"cqT c #26ad37", +"e3K c #27110a", +"ess c #271315", +"eLd c #271415", +"egt c #27150e", +"foW c #271616", +"ew4 c #271617", +"ffL c #271619", +"ew9 c #271715", +"#Qc c #271716", +"d9p c #271718", +"fc0 c #27171a", +"eZS c #271818", +"d4A c #271819", +"eGf c #27181a", +"eWK c #271918", +"e#y c #271919", +"ebA c #27191a", +"d12 c #27191c", +"dA5 c #271a13", +"eZO c #271a1a", +"fvb c #271a1c", +"dKR c #271b1b", +"d13 c #271c1e", +"bxo c #271d15", +"dpq c #271d1c", +"ewQ c #271d1d", +"d9b c #271d1e", +"btp c #271e17", +"dGu c #271e1c", +"dEs c #271e1d", +"dtc c #271e1f", +"dEb c #271f1f", +"dGf c #271f20", +"b4g c #272013", +"cpY c #272016", +"cBG c #272019", +"d4e c #272020", +"a4Y c #27211a", +"dpI c #27211b", +"gwS c #272122", +"bWP c #27221b", +"bDW c #27221d", +"bxr c #27221e", +"da1 c #272220", +"dnj c #272222", +"czR c #272322", +"eFY c #272323", +"d#q c #272324", +"deC c #27241d", +"aZ. c #272420", +"c2q c #272422", +"brm c #272520", +"c2p c #272523", +"dnf c #272524", +"e8V c #272526", +"ffA c #272528", +"cFp c #272621", +"aP2 c #272622", +"aEi c #272623", +"b42 c #272624", +"aqr c #272625", +"aqx c #272626", +"bhq c #27271e", +"aPV c #272720", +"bno c #272721", +"ak2 c #272725", +".xI c #272726", +"aqw c #272727", +"czk c #272822", +"ata c #272823", +"#rw c #272827", +"#iT c #272828", +"bDe c #272922", +"cOD c #272923", +"aE# c #272924", +"b#k c #272926", +"#n5 c #272928", +"#dE c #272929", +"#eQ c #27292a", +"bpm c #272a23", +"a4s c #272a24", +"aBc c #272a25", +"#t. c #272a28", +"#cI c #272a29", +"#cj c #272a2a", +"#eZ c #272a2b", +"#xt c #272a2c", +"btB c #272b27", +"#ro c #272b28", +"aqC c #272b29", +"#aL c #272b2a", +"#eP c #272b2b", +"#xy c #272b2c", +"#Pi c #272b2d", +"eWd c #272b2e", +"aJT c #272c25", +"daH c #272c26", +"aBx c #272c28", +"#d1 c #272c2a", +"#bf c #272c2b", +"#d# c #272c2c", +"#Ix c #272c2d", +"ed# c #272c2f", +"e.9 c #272c30", +"dk6 c #272d29", +"dqB c #272d2b", +"d1x c #272d2c", +".P9 c #272d2d", +".Qc c #272d2e", +"e2q c #272d31", +"d1z c #272e2d", +".QP c #272e2e", +"dY9 c #272e2f", +"dTR c #272f2e", +"eFM c #272f30", +"eTs c #272f32", +"et6 c #27302f", +"#ln c #273031", +"d8I c #273131", +"dO1 c #273132", +"dTL c #273133", +"#ht c #273233", +"ecY c #273234", +"dWl c #273333", +"d6n c #273436", +"#lk c #273536", +".8z c #27512c", +".8d c #27512d", +".8c c #27512e", +".8y c #27522d", +".1Y c #27532c", +".8e c #27532d", +".1X c #27542b", +".8x c #27542f", +".1W c #27562d", +"#.Y c #27562f", +".8w c #275730", +".8g c #27582d", +".8v c #27582f", +".1V c #27592e", +".8h c #27592f", +".8u c #275930", +".1U c #275a2e", +".2K c #275a2f", +".2I c #275a30", +".2G c #275a31", +".1T c #275b2f", +".2F c #275b30", +".1Q c #275c2e", +".1R c #275c2f", +".1S c #275c30", +"aT9 c #2772d4", +"fgC c #280b07", +"eUK c #280d09", +"e93 c #280e09", +"e0M c #28130c", +"fad c #281315", +"foX c #281415", +"eEd c #281416", +"eL. c #281617", +"ezM c #281618", +"eec c #281711", +"eBL c #281718", +"ec# c #281811", +"foV c #281818", +"ezB c #281819", +"eWM c #28181a", +"eZP c #281919", +"em8 c #28191a", +"d91 c #281a13", +"e#x c #281a1a", +"edu c #281a1b", +"d61 c #281b1b", +"dw1 c #281c1a", +"dtv c #281c1b", +"eDN c #281c1d", +"euo c #281d1c", +"dnt c #281d1d", +"dIu c #281e1f", +"dZp c #281e20", +"dcq c #281f20", +"ezf c #282021", +"bDN c #28211b", +"dr. c #282121", +"dyt c #282122", +"db# c #28221f", +"fiv c #282226", +"a15 c #28231c", +"c5I c #28231f", +"c8e c #282321", +"d#u c #282322", +"dcb c #282323", +"dl9 c #28241d", +"a4W c #28241f", +"cQh c #282423", +"aZd c #28251f", +"czQ c #282522", +"cON c #282524", +"dfX c #282525", +"aHt c #282627", +"bFs c #28271e", +"cKx c #282720", +"bts c #282721", +"aM1 c #282722", +"cnq c #282723", +"ch1 c #282724", +"cSw c #282725", +"bxx c #282726", +"av3 c #282727", +"aJZ c #282823", +"aEe c #282824", +"cLX c #282825", +"anI c #282826", +"anM c #282828", +"gsM c #282829", +"eWk c #28282a", +"cFw c #282921", +"bTV c #282922", +"cEV c #282923", +"aBh c #282924", +"bsZ c #282925", +"ckJ c #282927", +"#tj c #282928", +"#m7 c #282929", +"bRK c #282a23", +"bSJ c #282a24", +"dm2 c #282a25", +"aTg c #282a28", +"#n0 c #282a29", +"#d7 c #282a2a", +"#de c #282a2b", +"bNv c #282b22", +"bnm c #282b24", +"#uC c #282b29", +"#aK c #282b2a", +"#bo c #282b2b", +"#br c #282b2c", +"a1o c #282c25", +"bhm c #282c27", +"#78 c #282c29", +"#pg c #282c2a", +"#aM c #282c2b", +"#bp c #282c2c", +"#Bm c #282c2d", +"#Pj c #282c2e", +"eZp c #282c2f", +"d8M c #282c30", +"b.v c #282d26", +"aEx c #282d29", +"#pI c #282d2a", +"#be c #282d2c", +"#Iy c #282d2d", +"d6x c #282d2e", +"e.7 c #282d2f", +"ea9 c #282d30", +".Qd c #282e2d", +".PZ c #282e2e", +"eDt c #282e2f", +"aSq c #282f27", +".Jz c #282f2e", +".SD c #282f2f", +"dow c #28302d", +"dTS c #283030", +"eZh c #283032", +"dDZ c #283130", +"dMH c #283133", +"dwh c #283231", +"erw c #283234", +"#wT c #28332d", +"#l8 c #283334", +"d30 c #283335", +"#ix c #283434", +"d8z c #283637", +"#u8 c #284733", +".0u c #28542e", +".8f c #28562f", +"#.V c #285831", +".8k c #28592f", +".8j c #285a2e", +".8i c #285a2f", +".2H c #285a31", +"f24 c #285aad", +"bqw c #287927", +"dYh c #28982c", +"cre c #28c142", +"ags c #28d4bb", +"faZ c #290f0a", +"eUM c #29140d", +"eXA c #29140e", +"eUa c #291516", +"eZ2 c #291517", +"eT9 c #291616", +"elk c #29170d", +"egu c #291710", +"ekN c #291717", +"eii c #291718", +"eZR c #291819", +"eK3 c #29181a", +"bgo c #2918b4", +"cm9 c #291906", +"eZQ c #291919", +"efO c #29191a", +"epJ c #291a1a", +"d4E c #291a1b", +"ebw c #291a1c", +"eWL c #291b1a", +"fr3 c #291b1e", +"dA6 c #291c16", +"ewP c #291c1f", +"dtu c #291d1b", +"dZC c #291d1d", +"dpo c #291e1d", +"dwV c #291f1e", +"e8Z c #291f20", +"dz. c #29201a", +"dWG c #292024", +"dee c #292122", +"csp c #292219", +"dcC c #292220", +"dgf c #292222", +"dib c #292223", +"drH c #29231c", +"b6V c #29231d", +"df2 c #292323", +"cDC c #29241f", +"dcH c #292421", +"c2N c #292422", +"d6G c #292425", +"cE8 c #29251d", +"cQo c #292521", +"c5t c #292523", +"cWU c #292524", +"e8Y c #292526", +"foE c #292529", +"c1h c #292623", +"dm6 c #292624", +"aPN c #292720", +"brn c #292721", +"cnz c #292722", +"bG# c #292723", +"d#p c #292728", +"aSD c #29281f", +"cHb c #292823", +"cKh c #292824", +"cBR c #292825", +"aS9 c #292826", +"atq c #292828", +"guZ c #29282a", +"cZZ c #292921", +"ckY c #292923", +"bvd c #292924", +"dqM c #292926", +"ak3 c #292927", +"ckK c #292928", +"ayD c #292929", +".YW c #29292a", +"fnm c #29292b", +"fh# c #29292c", +"bLG c #292a21", +"a1q c #292a22", +"cVb c #292a23", +"b81 c #292a24", +"bQt c #292a25", +"aEf c #292a26", +"dhL c #292a27", +"#sm c #292a29", +"#po c #292a2a", +"dpR c #292b21", +"bGk c #292b25", +"bOu c #292b26", +"a8h c #292b28", +"aWh c #292b29", +"#m1 c #292b2a", +"#fs c #292b2b", +"#cL c #292b2c", +"b8c c #292c20", +"cAb c #292c23", +"bpl c #292c25", +"#ta c #292c2a", +"#aJ c #292c2b", +"#bn c #292c2c", +"#bq c #292c2d", +"bbp c #292d26", +"#b3 c #292d2c", +"#bW c #292d2d", +"#bi c #292d2e", +"#ER c #292d2f", +"d6w c #292d30", +"d8N c #292d31", +"aPC c #292e27", +"akS c #292e28", +"ab2 c #292e29", +"aNj c #292e2a", +"#bX c #292e2d", +".Pb c #292e2e", +"dKo c #292e2f", +"eBd c #292e31", +"ano c #292f28", +"#dx c #292f2d", +"#bY c #292f2e", +".Lb c #292f2f", +".U2 c #292f30", +"ed. c #292f32", +"beb c #293028", +".Tm c #29302f", +"#Ba c #293030", +"d8R c #293130", +"dou c #293230", +"dx6 c #293332", +"#kE c #293334", +"a9d c #2933cf", +"dTM c #293434", +"dB6 c #293435", +"dO4 c #293535", +"dO3 c #293536", +"d6q c #293637", +"#iQ c #293737", +"d8C c #293738", +"#jB c #293839", +"d8s c #293a3e", +"#in c #293b37", +"##C c #293c3c", +"fUc c #294065", +"fRf c #294165", +".0v c #295331", +"#tN c #29542a", +".0S c #295430", +".0w c #295530", +"#tM c #29562b", +".0R c #295631", +".0x c #295830", +"#tL c #29592d", +".1P c #29592e", +".2J c #295930", +".0Q c #295932", +"#tK c #295a2f", +".0y c #295a31", +".0P c #295a32", +".1H c #295a33", +"#tJ c #295a34", +".0z c #295b31", +"#tI c #295b35", +"#6h c #295b94", +".0D c #295c30", +".0A c #295c31", +".0O c #295c32", +".0C c #295d2f", +".0B c #295d30", +".0N c #295d31", +"#Tb c #29ce71", +"#y8 c #29eb12", +"eU# c #2a1415", +"eU. c #2a1416", +"fc9 c #2a1517", +"epV c #2a1618", +"esp c #2a1719", +"d43 c #2a1811", +"euD c #2a1819", +"ezJ c #2a181a", +"ew7 c #2a181b", +"eD7 c #2a1919", +"eT1 c #2a191b", +"e#A c #2a1a1b", +"eGe c #2a1b1b", +"dyI c #2a1b1c", +"ekx c #2a1c1b", +"d4C c #2a1c1c", +"d19 c #2a1c1d", +"e2K c #2a1c1f", +"dtr c #2a1d1c", +"dNi c #2a1d1d", +"e2L c #2a1d1f", +"ezl c #2a1e1e", +"dtz c #2a1f1d", +"dnv c #2a1f1f", +"cBm c #2a2016", +"drl c #2a201d", +"djW c #2a201f", +"dnu c #2a2020", +"dlK c #2a211f", +"dgj c #2a2121", +"djU c #2a2122", +"dGg c #2a2123", +"eIl c #2a2222", +"bpY c #2a2419", +"cDl c #2a241a", +"cdj c #2a241b", +"dvv c #2a2420", +"ddU c #2a2424", +"c4k c #2a2522", +"eBk c #2a2524", +"c5C c #2a2525", +"bxq c #2a2623", +"c1e c #2a2624", +"a1V c #2a2625", +"bzF c #2a2723", +"c6O c #2a2726", +"doS c #2a2727", +"auC c #2a2745", +"bro c #2a2822", +"cny c #2a2823", +"cfG c #2a2825", +"c2o c #2a2826", +"cQa c #2a2829", +"cZX c #2a2922", +"cDP c #2a2924", +"aV1 c #2a2925", +"cL1 c #2a2926", +"cTP c #2a2927", +"aKg c #2a2929", +"aP9 c #2a292a", +"fkd c #2a292c", +"aVC c #2a2a21", +"aPU c #2a2a23", +"buR c #2a2a24", +"brl c #2a2a26", +"aic c #2a2a28", +"bzL c #2a2a29", +"av8 c #2a2a2a", +".Z5 c #2a2a2b", +"bA8 c #2a2b24", +"c.W c #2a2b25", +"ays c #2a2b26", +"aEb c #2a2b27", +"anJ c #2a2b2a", +"#rU c #2a2b2b", +"#rv c #2a2b2c", +"ccF c #2a2c22", +"b2i c #2a2c23", +"aqh c #2a2c27", +"aTh c #2a2c29", +"#r1 c #2a2c2a", +"#ru c #2a2c2b", +"#ft c #2a2c2c", +"bFn c #2a2d25", +"c3T c #2a2d26", +"bzR c #2a2d27", +"bvr c #2a2d28", +"brV c #2a2d29", +"btA c #2a2d2a", +"#p9 c #2a2d2b", +"#b1 c #2a2d2c", +"#bm c #2a2d2d", +"#xj c #2a2d2e", +"bWY c #2a2e27", +"dfB c #2a2e29", +"#pf c #2a2e2c", +"#b2 c #2a2e2d", +"#.t c #2a2e2e", +"#bl c #2a2e2f", +"#U6 c #2a2e30", +"aYw c #2a2f28", +"aTk c #2a2f2b", +"#aD c #2a2f2e", +"#ci c #2a2f2f", +"#Iz c #2a2f30", +"e.8 c #2a2f32", +"cdK c #2a3026", +"aDX c #2a3029", +"aEv c #2a302b", +"dhC c #2a302c", +"dqD c #2a302d", +".UP c #2a302f", +".QX c #2a3030", +".P8 c #2a3031", +"ey2 c #2a3033", +"aSr c #2a3129", +"#X8 c #2a312b", +"#Bo c #2a3130", +"eda c #2a3131", +"dWt c #2a3132", +"ehC c #2a3231", +"ehB c #2a3232", +"edb c #2a3332", +"dFL c #2a3435", +"eTo c #2a3436", +"dRd c #2a3535", +"#iL c #2a3536", +"ewy c #2a3537", +"dY3 c #2a3636", +"dOW c #2a3737", +"e.0 c #2a3839", +"e.X c #2a393a", +"e.Q c #2a3b3d", +"#km c #2a3d39", +"#vv c #2a4319", +"fIn c #2a436c", +"#tP c #2a5029", +"#tO c #2a5229", +".9H c #2a5333", +".8t c #2a582e", +"#GB c #2a5954", +"azP c #2ab2cd", +"cog c #2ab947", +"#JQ c #2ad02f", +"#S2 c #2b0200", +"fjD c #2b0a08", +"eXy c #2b100d", +"eSh c #2b150f", +"elg c #2b160e", +"eIU c #2b1619", +"d9t c #2b1819", +"exd c #2b181a", +"e58 c #2b181c", +"eWW c #2b1919", +"ezD c #2b191a", +"eK9 c #2b191b", +"epM c #2b1a1c", +"d68 c #2b1b1c", +"ezC c #2b1c1c", +"fAY c #2b1c1f", +"eTX c #2b1d1c", +"dyP c #2b1e1d", +"eBx c #2b1e1e", +"d64 c #2b1e20", +"d9c c #2b1e21", +"e#m c #2b1e22", +"dBb c #2b1f19", +"dC3 c #2b201a", +"dIq c #2b2022", +"dKQ c #2b211f", +"dEc c #2b2122", +"dec c #2b2123", +"der c #2b2220", +"d#C c #2b2223", +"dlA c #2b2324", +"czN c #2b241b", +"dgg c #2b2424", +"aYV c #2b251e", +"dpK c #2b2520", +"ddT c #2b2525", +"cYi c #2b2625", +"d6H c #2b2626", +"dkl c #2b271f", +"bDT c #2b2720", +"c61 c #2b2724", +"cVA c #2b2726", +"e8W c #2b2728", +"daJ c #2b2827", +"doU c #2b2828", +"e8X c #2b2829", +"edg c #2b2928", +"dWB c #2b292a", +"aJ0 c #2b2a25", +"a2# c #2b2a26", +"bp6 c #2b2a28", +"av9 c #2b2a2b", +"gxd c #2b2a2c", +"e5J c #2b2a2d", +"bHJ c #2b2b21", +"bhp c #2b2b24", +"bn6 c #2b2b28", +"anE c #2b2b29", +"aTa c #2b2b2a", +"aw. c #2b2b2b", +".YV c #2b2b2c", +"fnn c #2b2b2d", +"cHj c #2b2c24", +"bY3 c #2b2c26", +"aqf c #2b2c27", +"ack c #2b2c2a", +"#sf c #2b2c2b", +"#rV c #2b2c2c", +"e4e c #2b2c2d", +"cak c #2b2d21", +"b95 c #2b2d22", +"ce1 c #2b2d23", +"anw c #2b2d28", +"bxN c #2b2d29", +"a8i c #2b2d2a", +"#uz c #2b2d2b", +"#qf c #2b2d2c", +"#kQ c #2b2d2d", +"eBj c #2b2d2e", +"deK c #2b2e25", +"bIF c #2b2e27", +"bp7 c #2b2e2a", +"#tb c #2b2e2c", +"#hw c #2b2e2d", +"#co c #2b2e2e", +"#dC c #2b2e2f", +"deL c #2b2f25", +"a5l c #2b2f2b", +"#mC c #2b2f2d", +"#b0 c #2b2f2e", +"#aI c #2b2f2f", +"#bj c #2b2f30", +"aG1 c #2b3029", +"aBA c #2b302c", +"#lT c #2b302e", +".9h c #2b302f", +".Ng c #2b3030", +"deM c #2b3127", +"a7p c #2b312a", +"dfv c #2b312d", +"#xL c #2b312f", +".Wk c #2b3130", +"#Bh c #2b3131", +".VK c #2b3132", +"efg c #2b3134", +"cf9 c #2b322a", +"a.R c #2b322b", +"#E0 c #2b3232", +"dCc c #2b3433", +"dy. c #2b3531", +"dO2 c #2b3536", +"ej4 c #2b3636", +"dWk c #2b3638", +"ehw c #2b3736", +"d31 c #2b3737", +"eOS c #2b3738", +"dRe c #2b3838", +"d6g c #2b3a3c", +"eaX c #2b3d3f", +"#tQ c #2b4e29", +"#.W c #2b5630", +"#.X c #2b5631", +"#tH c #2b5838", +"cow c #2bbf43", +"al8 c #2c0105", +"fmL c #2c0a09", +"e0J c #2c0f0b", +"e3H c #2c0f0c", +"e6c c #2c1417", +"flW c #2c1517", +"foY c #2c1518", +"eqs c #2c160d", +"euS c #2c1619", +"eih c #2c181a", +"eBS c #2c181b", +"eli c #2c1912", +"eIW c #2c191b", +"foU c #2c1a1b", +"eIC c #2c1a1c", +"flQ c #2c1b1b", +"d69 c #2c1d1e", +"fyu c #2c1d20", +"d4v c #2c1d21", +"dWV c #2c1e1f", +"dvf c #2c1f1d", +"dKT c #2c1f20", +"drx c #2c201e", +"dve c #2c201f", +"dip c #2c2120", +"e2P c #2c2121", +"a73 c #2c2215", +"drm c #2c2220", +"dlN c #2c2221", +"eun c #2c2223", +"a46 c #2c231a", +"djV c #2c2324", +"f#2 c #2c2325", +"b8Q c #2c241e", +"dcr c #2c2425", +"b2n c #2c2518", +"cni c #2c251b", +"c.H c #2c251f", +"ca1 c #2c2520", +"c9Z c #2c2522", +"gwR c #2c2527", +"dh8 c #2c2528", +"c33 c #2c2626", +"dgD c #2c2720", +"dbb c #2c2725", +"bOg c #2c2825", +"c77 c #2c2826", +"c0V c #2c2827", +"cVo c #2c2829", +"ch2 c #2c2a28", +"aV7 c #2c2a29", +"bp4 c #2c2a2a", +"cRn c #2c2a2b", +"cz2 c #2c2b26", +"cFl c #2c2b27", +"bxD c #2c2b29", +"cDM c #2c2b2a", +"atr c #2c2b2b", +"ak4 c #2c2b2c", +".XT c #2c2b2d", +"cL3 c #2c2c24", +"bDh c #2c2c25", +"cZn c #2c2c27", +"btw c #2c2c2a", +"bk8 c #2c2c2b", +"aqy c #2c2c2c", +".2d c #2c2c2d", +"bnn c #2c2d26", +"b1g c #2c2d27", +"as9 c #2c2d28", +"bvn c #2c2d2b", +"#ry c #2c2d2d", +"eZq c #2c2d2f", +"deJ c #2c2e26", +"bGj c #2c2e29", +"aWo c #2c2e2b", +"#uA c #2c2e2c", +"#qb c #2c2e2d", +"#kJ c #2c2e2e", +"fcL c #2c2e30", +"bA5 c #2c2f28", +"bn7 c #2c2f2b", +"#Yp c #2c2f2c", +"#rq c #2c2f2d", +"#iA c #2c2f2e", +"#aN c #2c2f2f", +"#dB c #2c2f30", +"#LT c #2c2f31", +"a7q c #2c3029", +"#qS c #2c302d", +"#oK c #2c302e", +"#d0 c #2c302f", +"#bZ c #2c3030", +"#xs c #2c3031", +"eDu c #2c3032", +"ec9 c #2c3034", +"brZ c #2c312a", +"aA9 c #2c312b", +"aBy c #2c312d", +"#YF c #2c312e", +"#bP c #2c3130", +".1q c #2c3131", +"#bk c #2c3132", +"ewE c #2c3134", +"bsR c #2c322b", +"dk7 c #2c322e", +"#bQ c #2c3230", +".X# c #2c3231", +".IW c #2c3232", +"emx c #2c3233", +"eBe c #2c3234", +"aVs c #2c332b", +"#4J c #2c332c", +".X5 c #2c3332", +"#Bg c #2c3333", +"e#a c #2c3433", +"eV9 c #2c3437", +"dFP c #2c3534", +"dMJ c #2c3537", +"dqw c #2c3635", +"#nV c #2c3637", +"eTn c #2c3638", +"#iK c #2c3738", +"eQ5 c #2c3739", +"#mP c #2c3838", +"dTF c #2c393a", +"eKo c #2c393b", +"fW7 c #2c3c5a", +"d8t c #2c3d3f", +"##V c #2c4041", +"#u1 c #2c4a24", +"#u0 c #2c4f20", +".9L c #2c5331", +".0M c #2c5a32", +"eUJ c #2d100d", +"e0K c #2d120f", +"elf c #2d160e", +"eUb c #2d1619", +"fiT c #2d1718", +"eE. c #2d1719", +"eRH c #2d171a", +"ffV c #2d1818", +"eE# c #2d1819", +"eni c #2d181a", +"ffW c #2d1918", +"dK8 c #2d191a", +"ekP c #2d191b", +"eD1 c #2d1b1b", +"flP c #2d1b1c", +"e#F c #2d1c1b", +"fiJ c #2d1c1c", +"epB c #2d1c1d", +"dZ7 c #2d1d16", +"flR c #2d1d1d", +"d4B c #2d1d1e", +"eRu c #2d1e1e", +"d4r c #2d1f1f", +"d6Z c #2d1f20", +"d6U c #2d1f21", +"d2C c #2d2018", +"emX c #2d2020", +"d4w c #2d2023", +"euq c #2d2121", +"dvc c #2d2220", +"dAz c #2d2224", +"eMX c #2d2424", +"dco c #2d2425", +"djP c #2d2426", +"da0 c #2d2525", +"dgd c #2d2526", +"cDs c #2d2619", +"din c #2d2624", +"daS c #2d2627", +"dj6 c #2d2724", +"c32 c #2d2827", +"c1. c #2d2828", +"bFu c #2d291f", +"drI c #2d2920", +"bBK c #2d2924", +"bh9 c #2d2926", +"cT0 c #2d2928", +"cX5 c #2d2929", +"cWT c #2d2a28", +"c4. c #2d2a29", +"d8W c #2d2a2b", +"bzB c #2d2b29", +"cVn c #2d2b2b", +"aV6 c #2d2b2c", +"aSH c #2d2c21", +"aPO c #2d2c22", +"aVT c #2d2c24", +"aMX c #2d2c25", +"cqd c #2d2c27", +"cdt c #2d2c28", +"aHl c #2d2c29", +"cTQ c #2d2c2a", +"cRk c #2d2c2b", +"brS c #2d2c2c", +"ats c #2d2c2d", +"cYu c #2d2d25", +"c1n c #2d2d27", +"cIH c #2d2d29", +"afg c #2d2d2b", +".Dk c #2d2d2c", +"aEq c #2d2d2d", +".4# c #2d2d2e", +"eWj c #2d2d2f", +"a4t c #2d2e27", +"b68 c #2d2e28", +"bOq c #2d2e29", +"c0T c #2d2e2a", +"brU c #2d2e2b", +"btx c #2d2e2c", +"#sh c #2d2e2e", +"bNw c #2d2f24", +"db2 c #2d2f2a", +"bsX c #2d2f2b", +"#1Q c #2d2f2c", +"#42 c #2d2f2d", +"#pn c #2d2f2e", +"#mh c #2d2f2f", +"dpS c #2d3025", +"cmA c #2d3027", +"bIE c #2d3029", +"dlb c #2d302a", +"c9k c #2d302b", +"#tc c #2d302e", +"#ed c #2d302f", +"#ec c #2d3030", +"b93 c #2d312b", +"bvu c #2d312c", +"aTi c #2d312d", +"#bT c #2d312f", +"#b4 c #2d3130", +".H# c #2d3131", +".HF c #2d3132", +"efi c #2d3133", +"aYv c #2d322b", +"ayk c #2d322c", +"#79 c #2d322e", +"dsA c #2d3230", +".9i c #2d3231", +"#ch c #2d3232", +"ey8 c #2d3233", +"dgM c #2d3329", +"a5m c #2d332f", +"djl c #2d3330", +"#d5 c #2d3331", +"#bh c #2d3332", +".Wr c #2d3333", +"dMR c #2d3334", +"avH c #2d342c", +"a4r c #2d342d", +".Y3 c #2d3432", +"#xB c #2d3433", +".KK c #2d3434", +"eZj c #2d3437", +"eMJ c #2d3534", +"eTr c #2d3538", +"dMM c #2d3635", +"dKf c #2d3638", +"dsw c #2d3736", +"dRc c #2d3838", +"dY2 c #2d3839", +"eME c #2d383a", +"#gq c #2d3939", +"#jT c #2d3a3a", +"ec1 c #2d3a3c", +"d3T c #2d3c3d", +"#uZ c #2d541c", +".z8 c #2d5933", +".B8 c #2d5a32", +".Cr c #2d5a33", +".B7 c #2d5b31", +".Ck c #2d5b32", +".Cs c #2d5c33", +".z9 c #2d5c34", +".B9 c #2d5d33", +".Ct c #2d5e33", +".A. c #2d5e34", +".C. c #2d5f34", +".Cu c #2d6033", +".A# c #2d6034", +".C# c #2d6134", +".Aa c #2d6234", +".Ca c #2d6333", +".Ab c #2d6334", +".Cj c #2d6434", +"boA c #2d722b", +"dYn c #2d9c2a", +"arH c #2e0408", +"e91 c #2e0c0a", +"fpO c #2e0c0b", +"faX c #2e0d09", +"e6U c #2e0e0b", +"eSe c #2e100b", +"fgB c #2e100d", +"eSd c #2e110c", +"e0I c #2e120e", +"est c #2e1417", +"eRI c #2e151a", +"fiS c #2e1618", +"eI0 c #2e1619", +"e26 c #2e1718", +"eGz c #2e171a", +"eqr c #2e1811", +"eIV c #2e191a", +"ezI c #2e191b", +"exg c #2e1a1b", +"eij c #2e1a1c", +"eEa c #2e1b1c", +"eGA c #2e1b1d", +"ekE c #2e1b1e", +"ckx c #2e1c0a", +"eGm c #2e1c1c", +"fr6 c #2e1c1f", +"eeg c #2e1e15", +"d9r c #2e1e1e", +"fyv c #2e1e21", +"dts c #2e2020", +"d9d c #2e2023", +"d46 c #2e2119", +"epx c #2e2120", +"e2M c #2e2123", +"foS c #2e2124", +"dtt c #2e2220", +"dpn c #2e2221", +"dGc c #2e2224", +"dnB c #2e2320", +"dtm c #2e2321", +"eGh c #2e2323", +"eMY c #2e2325", +"dw3 c #2e2421", +"dlO c #2e2423", +"dgc c #2e2425", +"edl c #2e2526", +"cDt c #2e261a", +"da5 c #2e2624", +"edk c #2e2627", +"c9S c #2e2726", +"dlz c #2e2727", +"dca c #2e2728", +"dq3 c #2e282a", +"bkq c #2e291f", +"cxx c #2e2920", +"ckH c #2e2921", +"c09 c #2e2929", +"dnN c #2e2a23", +"cGU c #2e2a26", +"cZK c #2e2a29", +"e5L c #2e2a2b", +"aSI c #2e2b20", +"cJA c #2e2b26", +"cT3 c #2e2b28", +"cZJ c #2e2b29", +"doT c #2e2b2b", +"d#o c #2e2b2c", +"dqO c #2e2b2d", +"cRl c #2e2c2c", +"cOI c #2e2c2d", +"aSQ c #2e2d26", +"cp6 c #2e2d28", +"cH. c #2e2d29", +"cVG c #2e2d2a", +"cSx c #2e2d2b", +"aY2 c #2e2d2c", +"gsL c #2e2d2e", +"gzu c #2e2d2f", +"aPT c #2e2e26", +"cVa c #2e2e28", +"bGe c #2e2e2a", +"bvm c #2e2e2c", +".BF c #2e2e2e", +".07 c #2e2e2f", +"flu c #2e2e30", +"b29 c #2e2f29", +"by3 c #2e2f2a", +"bk9 c #2e2f2c", +"#uE c #2e2f2e", +"#tg c #2e2f2f", +"eIf c #2e2f31", +"cj3 c #2e302a", +"aEa c #2e302c", +"aZo c #2e302d", +"a2c c #2e302e", +"#qe c #2e302f", +"#nU c #2e3030", +"e2w c #2e3031", +"eBf c #2e3032", +"cmw c #2e3128", +"bKL c #2e312a", +"#uB c #2e312f", +"#gv c #2e3130", +"#cM c #2e3131", +"#cP c #2e3132", +"b8a c #2e322d", +"#s# c #2e322f", +"#db c #2e3231", +"##P c #2e3232", +"#cp c #2e3233", +"eWe c #2e3235", +"#LY c #2e3236", +"aG0 c #2e332c", +"aMP c #2e332d", +"ayJ c #2e332f", +"#l0 c #2e3331", +"#aE c #2e3332", +".9n c #2e3333", +".4I c #2e3334", +"aDV c #2e342d", +"d.5 c #2e342e", +"#Bz c #2e3432", +"#bg c #2e3433", +".LZ c #2e3434", +"asO c #2e352d", +"aeW c #2e352e", +"eb# c #2e3534", +".Qe c #2e3535", +"dMI c #2e3739", +"duv c #2e3837", +"d35 c #2e3839", +"dRa c #2e3939", +"#mR c #2e393a", +"#mS c #2e3a3a", +"d6h c #2e3a3c", +"#jL c #2e3b3a", +"eH9 c #2e3c3c", +"#hQ c #2e3c3d", +"ehs c #2e3c3f", +"ef# c #2e3d3d", +"err c #2e3e3e", +"##O c #2e3e3f", +"fUd c #2e3e5b", +"ehq c #2e3f41", +"##H c #2e403f", +"#tR c #2e4d29", +".1I c #2e5638", +"#uY c #2e5719", +".8l c #2e5937", +".As c #2e5a32", +".Ar c #2e5a33", +".CG c #2e5b31", +".Ay c #2e5b34", +".AP c #2e5c34", +".CF c #2e5d32", +".Aq c #2e5d34", +".Az c #2e5e34", +".CE c #2e5f33", +".AO c #2e5f35", +".Ap c #2e6034", +".AA c #2e6035", +".CD c #2e6133", +".Ao c #2e6134", +".AN c #2e6135", +".An c #2e6234", +".AB c #2e6235", +".Al c #2e6334", +".AC c #2e6335", +".AM c #2e6336", +".Ac c #2e6432", +".CC c #2e6433", +".Am c #2e6434", +".AD c #2e6435", +".Cb c #2e6439", +"cr# c #2ec245", +"fdK c #2f0c09", +"fs3 c #2f0c0c", +"fmJ c #2f0d0b", +"fpN c #2f0e0c", +"e3G c #2f110d", +"eXx c #2f120f", +"e3I c #2f1410", +"flV c #2f181a", +"ePH c #2f181b", +"dK9 c #2f1a18", +"efZ c #2f1a1b", +"exc c #2f1a1c", +"eZ5 c #2f1b1b", +"eGB c #2f1b1d", +"eGx c #2f1b1e", +"d7x c #2f1c15", +"esi c #2f1c1d", +"ePw c #2f1c1e", +"e#u c #2f1d1e", +"ckw c #2f1e0b", +"eT0 c #2f1e1f", +"egr c #2f1f18", +"ebz c #2f1f1f", +"e#w c #2f1f21", +"dPy c #2f2021", +"fr2 c #2f2023", +"eh4 c #2f2121", +"eus c #2f2122", +"ewO c #2f2124", +"eGd c #2f2222", +"dKS c #2f2223", +"dC2 c #2f231d", +"dCs c #2f2425", +"dGe c #2f2426", +"cpu c #2f2515", +"dlV c #2f2523", +"dgo c #2f2625", +"dgb c #2f2627", +"#JH c #2f262f", +"dAE c #2f2728", +"drG c #2f2822", +"c9Q c #2f2827", +"dyu c #2f2829", +"b0k c #2f291b", +"bkW c #2f2923", +"c66 c #2f2926", +"f#6 c #2f2929", +"djJ c #2f292a", +"bhw c #2f2a21", +"dtG c #2f2a25", +"div c #2f2a26", +"bKB c #2f2a27", +"cQj c #2f2a2a", +"a1P c #2f2b21", +"cQn c #2f2b28", +"cYj c #2f2b2a", +"cWS c #2f2c2a", +"cVf c #2f2c2b", +"dqN c #2f2c2c", +"d6C c #2f2c2d", +"c78 c #2f2d2b", +"cRm c #2f2d2e", +"e5K c #2f2d30", +"csE c #2f2e29", +"cxF c #2f2e2a", +"cTR c #2f2e2c", +"bxE c #2f2e2d", +"atm c #2f2e2e", +"ato c #2f2e2f", +".Z4 c #2f2e30", +"cL6 c #2f2f27", +"cNo c #2f2f28", +"aqj c #2f2f2a", +"aHb c #2f2f2b", +"afh c #2f2f2c", +"acj c #2f2f2d", +"aif c #2f2f2f", +".YU c #2f2f30", +"eFU c #2f2f31", +"fnl c #2f2f32", +"bHI c #2f3028", +"cK# c #2f3029", +"bs3 c #2f302a", +"bIx c #2f302b", +"aWp c #2f302d", +"acf c #2f302e", +"#sn c #2f302f", +"#sk c #2f3030", +"eWi c #2f3032", +"chq c #2f3126", +"b4b c #2f3128", +"dm3 c #2f312b", +"bD7 c #2f312c", +"a5k c #2f312d", +"bcd c #2f312e", +"#Yq c #2f312f", +"#oW c #2f3130", +"#oP c #2f3131", +"gAY c #2f3134", +"bDc c #2f322b", +"bKJ c #2f322c", +"#sc c #2f3230", +"#df c #2f3231", +"#fu c #2f3232", +"cZj c #2f332b", +"#pd c #2f3331", +"#iD c #2f3332", +"#.s c #2f3333", +"#Iw c #2f3334", +"bng c #2f342d", +"ayg c #2f342e", +"aEw c #2f3430", +"#fm c #2f3432", +"#aF c #2f3433", +".3n c #2f3434", +".3o c #2f3435", +"a4q c #2f352e", +"dhz c #2f3530", +"#bR c #2f3533", +".4E c #2f3534", +".Uc c #2f3535", +"aPu c #2f362e", +"eba c #2f3736", +"dAd c #2f3837", +"dz5 c #2f393a", +"#iW c #2f3a3b", +"d1t c #2f3b3b", +"eOR c #2f3b3d", +"cCA c #2f3c3f", +"fOc c #2f3d59", +"e.V c #2f3e3f", +"ee9 c #2f3e40", +"ea1 c #2f3f3f", +"d8x c #2f3f40", +"ecZ c #2f403f", +"##N c #2f4040", +"#vw c #2f4119", +".2m c #2f4543", +"#tS c #2f4b29", +".9I c #2f5437", +".0E c #2f5c38", +".AL c #2f5f35", +".Cv c #2f623a", +"aCE c #2f9fd3", +"aak c #2fcd9b", +"#y6 c #2fff00", +"aoS c #300000", +"fgz c #300b0a", +"fjB c #300c0b", +"a9. c #3010e8", +"e6T c #30110e", +"eEe c #30181c", +"eWX c #30191b", +"eZ3 c #30191c", +"fsc c #301a1c", +"e9e c #301a1d", +"fsb c #301c1d", +"esj c #301c1e", +"eNl c #301c1f", +"#S0 c #301d1b", +"a9u c #301daa", +"egq c #301e18", +"em9 c #301e20", +"d9q c #301f1f", +"eGl c #301f20", +"cn. c #30200e", +"em6 c #302021", +"d9e c #302023", +"fAZ c #302123", +"dNh c #302222", +"dIt c #302225", +"dZG c #302324", +"foQ c #302325", +"dK1 c #302423", +"e2J c #302426", +"dWH c #302529", +"dtn c #302624", +"dlB c #302627", +"dIa c #302628", +"a45 c #30271d", +"fa# c #302727", +"djT c #302728", +"ce6 c #302819", +"eMW c #302829", +"dcB c #302926", +"d4g c #302929", +"e5M c #30292a", +"bUL c #302a24", +"ekh c #302a2a", +"foH c #302a2c", +"dcg c #302b2c", +"bs5 c #302c25", +"a1W c #302c2b", +"c04 c #302c2d", +"bX8 c #302d1d", +"dbl c #302d26", +"c7Z c #302d2b", +"cQb c #302d2e", +"aSF c #302e24", +"c9r c #302e2b", +"aHn c #302e2c", +"cSz c #302e2f", +"aSP c #302f25", +"aHm c #302f2b", +"cFk c #302f2d", +"cSy c #302f2e", +"dWy c #302f2f", +"e2z c #302f30", +"e2y c #302f32", +"aJ1 c #30302a", +"by7 c #30302b", +"a2a c #30302c", +"afi c #30302e", +"bxB c #30302f", +"aEr c #303030", +".XS c #303031", +"e2x c #303032", +"cLK c #303129", +"cbd c #30312b", +"ayt c #30312c", +"db7 c #30312d", +"acg c #30312f", +"aEu c #303130", +"aqz c #303131", +"c7Y c #30322b", +"bUX c #30322c", +"bMy c #30322d", +"#1R c #30322f", +"#1V c #303230", +"#oY c #303231", +"#se c #303232", +"cmz c #30332a", +"bMz c #30332c", +"akT c #30332e", +"#qU c #303331", +"#kA c #303332", +"#pl c #303333", +"cXW c #30342c", +"chn c #30342e", +"#nJ c #303432", +"#eM c #303433", +"##D c #303434", +"#aH c #303435", +"ap8 c #30352e", +"ae2 c #30352f", +"djm c #303531", +"doC c #303532", +"#bS c #303533", +".6C c #303534", +".2n c #303535", +".3p c #303536", +"ey3 c #303538", +"d.6 c #303630", +"#xN c #303634", +".4r c #303635", +".LY c #303636", +"et2 c #303639", +"a4l c #30372f", +".Uh c #303736", +".VI c #303737", +"dmP c #303836", +"e## c #303837", +"dHX c #303839", +"dKg c #30393a", +"eZf c #30393b", +"dsx c #303a39", +"dDR c #303a3b", +"dqx c #303b37", +"#hI c #303b3c", +"d8H c #303c3b", +"d32 c #303c3c", +"d6o c #303c3d", +"#go c #303c3e", +"ea5 c #303d3d", +"#iB c #303e3f", +"e.Y c #303f40", +"ejZ c #303f41", +"ehr c #303f42", +"ewu c #304040", +"#u2 c #30432c", +"#l. c #30433f", +"#tT c #304b29", +".Ci c #305f36", +"b#9 c #3100ff", +"fjC c #310e0d", +"faY c #31110e", +"e6V c #311410", +"ePJ c #31171c", +"bgp c #3117ac", +"epW c #31181a", +"e22 c #31181b", +"euG c #311a1e", +"euO c #311b1e", +"eIM c #311b1f", +"epS c #311c1d", +"ea. c #311d17", +"eGn c #311d1e", +"euH c #311d20", +"flS c #311f1f", +"dvg c #312120", +"dZy c #312122", +"er6 c #312123", +"fDv c #312325", +"drz c #312422", +"eks c #312425", +"dCY c #31251e", +"drk c #312523", +"dgt c #312524", +"eGc c #312525", +"dGk c #312527", +"dj0 c #312626", +"dPi c #312627", +"dGb c #312628", +"dWI c #312629", +"deq c #312728", +"dr# c #312729", +"c2E c #312829", +"dxn c #312923", +"dcy c #312927", +"cap c #312a19", +"daR c #312b2a", +"eMV c #312b2b", +"bzw c #312c25", +"dl8 c #312c26", +"dcc c #312c2c", +"dq4 c #312c2e", +"a4Z c #312d27", +"drD c #312d29", +"cWR c #312d2b", +"cZr c #312d2c", +"e#d c #312d2e", +"bFx c #312e23", +"bFv c #312e24", +"cYh c #312e2c", +"gze c #312e2e", +"d6D c #312e2f", +"aSG c #312f24", +"aMZ c #312f27", +"aMY c #312f28", +"a5d c #312f2b", +"ch5 c #312f2d", +"cSA c #312f30", +"aJ2 c #31302a", +"cKg c #31302c", +"bzO c #31302e", +"c.N c #31302f", +"bp5 c #313030", +"dZd c #313031", +"#i# c #313032", +"frJ c #313033", +"cOX c #313129", +"aZg c #31312e", +"aid c #31312f", +"#qE c #313130", +".BG c #313131", +".Wb c #313132", +"#fD c #313133", +"cIv c #31322a", +"bKF c #31322c", +"avV c #31322d", +"#uF c #313232", +"b1h c #31332c", +"bIy c #31332d", +"bzX c #31332e", +"a2f c #313330", +"erH c #313331", +"#rT c #313332", +"#si c #313333", +"cMz c #313336", +"a7r c #31342c", +"bKK c #31342d", +"#rr c #313432", +"#pK c #313433", +"#oN c #313434", +"#xk c #313435", +"cAc c #31352c", +"cSr c #31352e", +"#oJ c #313533", +"#la c #313534", +"#eY c #313535", +"#Be c #313536", +"#R8 c #313537", +"aJP c #31362f", +"aPF c #313630", +"aKi c #313632", +"#oL c #313633", +"#jt c #313634", +"#aG c #313635", +".4t c #313636", +".L7 c #313637", +"ewF c #313639", +"cdJ c #31372d", +"a1n c #313730", +"#1v c #313731", +"#4N c #313732", +"dk4 c #313733", +"duz c #313735", +".9j c #313736", +".Pm c #313737", +"#xh c #313738", +"ayf c #313830", +"d8Q c #313939", +"e8M c #31393a", +"eZi c #31393b", +"dHY c #313a3a", +"eR. c #313a3c", +"eMD c #313c3e", +"eMF c #313d3d", +"d6p c #313e3f", +"d8B c #313f40", +"d8A c #314041", +"#hd c #314540", +".1k c #314745", +"#tW c #314b28", +".9J c #315538", +"#uX c #315919", +"cra c #31c44d", +"#CN c #31c63b", +"fwB c #320e0e", +"fgA c #320f0e", +"fdL c #32100e", +"fmI c #32100f", +"e92 c #32120f", +"fCh c #321311", +"e0m c #321316", +"e3m c #321317", +"eJt c #321710", +"euT c #32171a", +"eLe c #32181b", +"eNy c #32191c", +"fc1 c #321b1e", +"exb c #321c1e", +"eZ4 c #321d1e", +"ezF c #321e1f", +"eBK c #321e20", +"eTZ c #321f21", +"edA c #321f22", +"d1Z c #322224", +"d62 c #322326", +"eab c #32241c", +"dyL c #322423", +"eBu c #322426", +"eum c #322427", +"efC c #322526", +"dIs c #322527", +"dSp c #32261d", +"dva c #322624", +"dns c #322626", +"dIm c #322627", +"dPj c #322628", +"dvo c #322725", +"dlJ c #322727", +"dgr c #322728", +"bzs c #32281a", +"du6 c #322827", +"di. c #322829", +"dz# c #322922", +"dl1 c #322924", +"dyN c #322927", +"epn c #32292a", +"dgh c #322b2a", +"dlx c #322b2c", +"c4d c #322c2c", +"dpH c #322d27", +"dlq c #322d2d", +"d6E c #322d2e", +"dm. c #322e27", +"c5K c #322e2b", +"cSJ c #322e2c", +"cZG c #322e2d", +"cLb c #322e2f", +"d.# c #322f28", +"cWQ c #322f2e", +"aSE c #323026", +"aM0 c #323028", +"bDY c #32302c", +"cYk c #32302e", +"cW2 c #32302f", +"emE c #323031", +"aSO c #323126", +"cve c #32312c", +"ckT c #32312d", +"a8e c #32312e", +"cTS c #32312f", +"czT c #323130", +"d4. c #323131", +".XU c #323132", +".UG c #323133", +"bPA c #323229", +"aPS c #32322a", +"cxJ c #32322c", +"bxu c #32322e", +"bxC c #323230", +"aP6 c #323231", +"ayE c #323232", +".OW c #323233", +"#vp c #32331f", +"bOp c #32332d", +"bUT c #32332e", +"dfM c #32332f", +"bGf c #323330", +"aci c #323331", +"anN c #323332", +"dZc c #323333", +"b6g c #32342b", +"bID c #32342e", +"db1 c #32342f", +"#7Z c #323431", +"#43 c #323432", +"#om c #323433", +"#jy c #323434", +"eDw c #323436", +"c7X c #32352d", +"bQy c #32352e", +"#qW c #323533", +"#nS c #323534", +"#cN c #323535", +"eWh c #323536", +"#q. c #323634", +"#dd c #323635", +"#.y c #323636", +"#Pg c #323637", +"gzG c #32363a", +"brb c #323730", +"aSy c #323731", +"#eI c #323735", +"#.u c #323736", +".0d c #323737", +".M6 c #323738", +"cf5 c #32382e", +"#UR c #323834", +"#jr c #323836", +".5v c #323837", +".UX c #323838", +"#xr c #323839", +"erE c #32383a", +"aA5 c #323931", +"cip c #323932", +"eQ8 c #323a3c", +"eQ6 c #323a3e", +"dKh c #323b3c", +"eQ9 c #323b3d", +"dqy c #323c39", +"eKp c #323d3f", +"#kD c #323e3e", +"#vx c #323f19", +"dJ9 c #323f3f", +"e.Z c #324041", +"#gw c #324141", +"eoY c #324142", +"ea0 c #324242", +"emm c #324244", +"e.R c #324446", +"#tU c #324a28", +".2U c #324f64", +"f27 c #325284", +".1O c #325536", +".CH c #325c36", +".AG c #32603c", +".AE c #32633d", +"fzO c #330e0f", +"fmK c #331110", +"eSc c #331210", +"fs2 c #331211", +"e90 c #331310", +"eRJ c #33171d", +"ePI c #33181d", +"eGE c #331a1e", +"euN c #331d1f", +"ffM c #331d23", +"eTY c #332022", +"edx c #332025", +"dIF c #332122", +"d6Y c #332224", +"dvh c #332322", +"fvd c #332327", +"d7B c #33251d", +"eF7 c #332525", +"dpm c #332625", +"erZ c #332626", +"dpB c #332724", +"dAA c #332728", +"dAC c #332729", +"a74 c #33281c", +"dnI c #332926", +"dAD c #33292a", +"bF5 c #332b23", +"bSx c #332c24", +"drF c #332c26", +"dly c #332c2c", +"deg c #332c2d", +"gwT c #332c2e", +"c2M c #332d2b", +"do6 c #332d2e", +"frM c #332d2f", +"cRB c #332e2c", +"cW6 c #332e2d", +"flx c #332e32", +"c6E c #332f2e", +"d4a c #332f30", +"aY9 c #33302b", +"c5n c #33302e", +"cRq c #33302f", +"c2x c #333030", +"efm c #333031", +"bV6 c #333121", +"aVJ c #333124", +"aVP c #333126", +"aPR c #333128", +"cVl c #33312f", +"cVm c #333130", +"cSB c #333132", +"cp9 c #33322c", +"cBU c #33322d", +"aHk c #33322e", +"cG8 c #33322f", +"cTT c #333230", +"gBy c #333231", +"av2 c #333232", +".Et c #333233", +"cKA c #33332b", +"c2j c #33332d", +"brR c #33332f", +"aff c #333331", +".zy c #333332", +".WN c #333333", +".MS c #333334", +".BM c #333335", +"bA9 c #33342d", +"b1f c #33342e", +"bMw c #33342f", +"bIw c #333430", +"#1P c #333431", +"#th c #333433", +".FU c #333434", +"bWX c #33352f", +"anx c #333530", +"#Yk c #333532", +"#rt c #333534", +"#pL c #333535", +"#Yv c #333536", +"cph c #33362d", +"c7V c #33362f", +"c9n c #333631", +"aD6 c #333632", +"#uw c #333633", +"#p6 c #333634", +"#kR c #333635", +"#gp c #333636", +"#ic c #33363d", +"b6f c #33372f", +"bem c #333730", +"asX c #333731", +"a2g c #333733", +"#ph c #333735", +"#ee c #333736", +"#oM c #333737", +"##Q c #333738", +"cjT c #33382e", +"aJQ c #333831", +"dk8 c #333834", +".4s c #333837", +".6D c #333838", +"eOZ c #333839", +"aDW c #333932", +"dhD c #333934", +"#BA c #333937", +".Z# c #333938", +".2o c #333939", +"et5 c #33393a", +"eTt c #33393c", +"cf7 c #333a30", +"aYt c #333a32", +"ahW c #333a33", +"eTp c #333b3e", +"cwG c #333c3b", +"#u3 c #333d32", +"dMK c #333d3e", +"btU c #333e38", +"#nZ c #333e3e", +"#mj c #333e3f", +"#jK c #333f3f", +"#kK c #334040", +"eFI c #334041", +"d8D c #334142", +"fZ8 c #33415c", +"d1o c #334242", +"eht c #334343", +"##M c #334344", +"##W c #334748", +"##U c #334849", +"#tV c #334927", +".9K c #335337", +".AQ c #335b39", +".Cq c #335c3a", +".Cx c #335e3a", +".Ad c #33643b", +"adp c #33c7a5", +"fs4 c #341010", +"eXd c #341215", +"e0n c #341216", +"e3n c #341317", +"eZ6 c #34191d", +"eNA c #341a1f", +"ekQ c #341c1e", +"fc7 c #341c1f", +"eBT c #341c20", +"efY c #341e20", +"ew6 c #341e22", +"e#G c #341f20", +"eGo c #341f21", +"enQ c #342017", +"dL. c #34201c", +"eRA c #342122", +"epC c #342222", +"dIT c #34231f", +"e#E c #342323", +"fr1 c #342327", +"d4l c #342425", +"fX3 c #342427", +"eTU c #342525", +"d4q c #342526", +"dvk c #342624", +"foR c #342627", +"ezi c #342628", +"dAR c #342724", +"epz c #342727", +"eDI c #342729", +"dEi c #34272a", +"dlH c #342828", +"eZC c #342829", +"eZB c #34282a", +"dC4 c #342923", +"dAB c #34292a", +"dRA c #34292b", +"dBc c #342a23", +"dtp c #342a28", +"deb c #342a2c", +"cDu c #342b20", +"bDG c #342b23", +"dnx c #342b2a", +"d6K c #342b2c", +"cu2 c #342c22", +"dcw c #342c2a", +"def c #342c2c", +"c2D c #342c2d", +"chZ c #342d24", +"f#7 c #342d2d", +"fix c #342d30", +"diC c #342e29", +"cE7 c #342f26", +"a12 c #342f27", +"dkn c #342f29", +"cW5 c #342f2e", +"c5o c #342f2f", +"d4# c #342f30", +"dpG c #34302a", +"c6F c #34302f", +"dfW c #343031", +"fiw c #343034", +"dcO c #34312a", +"dsT c #34312f", +"bTZ c #343225", +"aVS c #34322b", +"cKr c #34322e", +"cVk c #343230", +"cVg c #343231", +"afj c #343232", +"dwE c #343233", +"a34 c #343234", +"aSN c #343329", +"cnx c #34332e", +"aP3 c #34332f", +"cKm c #343330", +"cNg c #343331", +"aS1 c #343332", +"dZe c #343333", +"cTU c #343334", +".5f c #343335", +"cRF c #34342c", +"cvf c #34342e", +"atf c #343432", +".PK c #343433", +".BC c #343434", +".LL c #343435", +".5j c #343436", +"bJS c #34352c", +"bY4 c #34352f", +"as7 c #343530", +"djt c #343531", +"btv c #343532", +"ach c #343533", +"#tk c #343534", +"#ti c #343535", +"cHk c #34362e", +"d.7 c #34362f", +"c3U c #343630", +"bB1 c #343631", +"db0 c #343632", +"a#a c #343633", +"#qg c #343635", +"#gf c #343636", +"cGx c #343730", +"bBW c #343731", +"#qV c #343735", +"#oX c #343736", +"#iS c #343737", +"cjU c #34382f", +"c9o c #343831", +"b6e c #343833", +"dhE c #343834", +"aWq c #343835", +"#pe c #343836", +"#dD c #343837", +"##R c #343838", +"#ET c #343839", +"eWf c #34383b", +"cf6 c #343930", +"blc c #343933", +"bif c #343935", +"#pc c #343936", +"#hi c #343937", +".1l c #343938", +".7X c #343939", +".4F c #34393a", +"cf4 c #343a30", +"dfA c #343a34", +"dfw c #343a35", +"#US c #343a36", +"#xM c #343a38", +".Yb c #343a39", +".5B c #343a3a", +"aSs c #343b33", +"eOX c #343b3b", +"eOY c #343b3d", +"eQ7 c #343b3f", +"eW. c #343c3e", +"Qtc c #343d46", +"duy c #343e3a", +"dz8 c #343e3c", +"duu c #343e3d", +"#AX c #343f39", +"dDT c #343f3f", +"d6s c #343f40", +"eI. c #343f41", +"#l7 c #344040", +"ec0 c #344143", +"e.1 c #344243", +"#hE c #344343", +"efa c #344344", +"fLe c #344360", +"eyO c #344849", +".9f c #344a48", +".8s c #345438", +".3y c #345439", +".3B c #34563a", +".3M c #345a3a", +"#uW c #345b19", +".Ce c #34603b", +"bdb c #3461ba", +"#ZL c #34c375", +"bcY c #3510dc", +"fwA c #351212", +"eUI c #351311", +"#S1 c #351512", +"fEQ c #351513", +"eUc c #35191c", +"eLf c #35191f", +"e6d c #351a1d", +"eNz c #351b1f", +"eGy c #351c20", +"fiU c #351d1e", +"ffP c #351e21", +"enf c #351f20", +"dK7 c #352021", +"d9X c #35211b", +"dIK c #352120", +"ePn c #352123", +"eky c #352124", +"eh8 c #352223", +"dK3 c #352323", +"dLf c #352420", +"ePm c #352424", +"d9k c #352425", +"#Na c #352523", +"eZG c #352525", +"eZH c #352526", +"dUi c #352527", +"d63 c #352528", +"dvl c #352624", +"eDQ c #352627", +"fyw c #352629", +"foP c #352729", +"dCX c #352822", +"dIr c #352829", +"cBt c #35291a", +"cLc c #352929", +"dlG c #352a2a", +"e5X c #352a2b", +"#SZ c #352b2b", +"e80 c #352b2c", +"dea c #352b2d", +"c9M c #352c2d", +"chv c #352d1c", +"cBF c #352d24", +"dj7 c #352d2b", +"flB c #352d2e", +"dlR c #352e2b", +"c34 c #352e2e", +"a16 c #352f28", +"dc# c #352f2f", +"d8X c #352f30", +"c1# c #353030", +"frL c #353031", +"dkj c #35312d", +"cQg c #353130", +"gz# c #353131", +"eZs c #353133", +"dnM c #35322a", +"deB c #35322b", +"deA c #35322c", +"cVj c #353230", +"aSX c #353231", +"cOM c #353331", +"cRo c #353334", +"cxI c #35342f", +"cfN c #353430", +"aKb c #353431", +"cBQ c #353432", +".Qy c #353433", +".V3 c #353434", +".Sn c #353436", +"bRO c #353529", +"cSX c #35352d", +"aJ9 c #353530", +".3V c #353533", +".Dd c #353534", +".XV c #353535", +".Im c #353536", +"cj6 c #35362e", +"bho c #353630", +"atb c #353631", +"aV2 c #353632", +"aWg c #353635", +"#sj c #353636", +".WZ c #353637", +".5g c #353638", +".08 c #353639", +"bxL c #353731", +"aqg c #353732", +"d#. c #353733", +"#Yr c #353734", +"#Yo c #353735", +"#ol c #353736", +"#kB c #353737", +".6o c #35373b", +"cmx c #35382f", +"buI c #353831", +"bhn c #353832", +"#td c #353836", +"#te c #353837", +"#pk c #353838", +"#fg c #35383e", +"cjQ c #353930", +"b4a c #353931", +"cOu c #353932", +"ddx c #353934", +"#rm c #353936", +"#qa c #353937", +"#iM c #353938", +"#cQ c #35393a", +"eWg c #35393b", +"aMJ c #353a33", +"ddz c #353a34", +"djn c #353a36", +"#.z c #353a39", +".4y c #353a3a", +"##J c #353a3b", +"et3 c #353a3d", +"cbu c #353b30", +"cbv c #353b31", +"aPA c #353b33", +"cPT c #353b34", +"#dw c #353b39", +".0b c #353b3a", +".2q c #353b3b", +"ap0 c #353c34", +".Zi c #353c3b", +"bvQ c #353e39", +"eKt c #353e3e", +"dO9 c #353f3e", +"#vy c #354019", +"etW c #354042", +"ea2 c #354344", +"ef. c #354345", +"dQ8 c #354444", +"d6l c #354445", +"#ga c #354545", +".9o c #35494a", +".3z c #35543a", +"##5 c #35543b", +".3A c #355539", +".3P c #35573a", +".3O c #35573b", +".3C c #35583a", +".3D c #35583b", +".3N c #355939", +".3I c #35593a", +".3F c #35593b", +".3L c #355a39", +".3J c #355a3a", +".3K c #355a3b", +".Ax c #355c3c", +".yn c #355d3a", +".Cy c #35603d", +".Cc c #35603e", +"#y9 c #35d02b", +"fmM c #361312", +"fpM c #361412", +"fCg c #361413", +"fjE c #361614", +"bgq c #3616a5", +"eW0 c #361b1e", +"ef0 c #361e20", +"flU c #361e21", +"ezN c #361e22", +"esn c #361f21", +"flT c #361f22", +"eGq c #362023", +"dIL c #362220", +"e#D c #362223", +"ese c #362325", +"fvs c #362326", +"dZ6 c #36251e", +"dw5 c #362524", +"dRN c #362527", +"ehX c #362528", +"ewS c #362627", +"f1e c #362629", +"b.7 c #362718", +"f4# c #36272a", +"dpw c #362825", +"dvj c #362826", +"eZF c #36282a", +"e5T c #36282b", +"dZq c #36292b", +"eZA c #36292c", +"cBu c #362a1b", +"dpA c #362a26", +"fAX c #362a2d", +"dpl c #362b2a", +"eMU c #362b2c", +"cpX c #362c22", +"djQ c #362c2d", +"cr6 c #362d1e", +"c2F c #362d2e", +"cDr c #362e21", +"dcx c #362e2c", +"dnk c #362f2f", +"gwN c #362f30", +"eZt c #362f31", +"ehJ c #36302f", +"c2S c #36312e", +"cX4 c #363130", +"c6D c #363131", +"bh8 c #36322f", +"cZq c #363231", +"c39 c #363232", +"d1H c #363233", +"eWm c #363234", +"dbk c #36332c", +"dbj c #36332d", +"cWP c #363332", +"eKx c #363333", +"buS c #36342c", +"cVi c #363432", +"cVh c #363433", +"erJ c #363435", +"cFo c #363530", +"cnp c #363531", +"b09 c #363532", +"dMW c #363535", +"atn c #363536", +".4. c #363537", +"cYs c #36362f", +"c4v c #363630", +".YM c #363634", +".vW c #363635", +".zv c #363636", +".Rw c #363637", +"fh. c #363639", +"cRH c #36372f", +"c5k c #363730", +"b3. c #363731", +"bSF c #363732", +"bKE c #363733", +"dfL c #363734", +"a#d c #363737", +"b8b c #36382f", +"b.w c #363832", +"cGF c #363833", +"d.8 c #363834", +"#1S c #363835", +"#uI c #363836", +"#oZ c #363837", +"#jE c #363838", +"##j c #36383c", +"cpf c #363930", +"cIp c #363932", +"c9m c #363933", +"dfC c #363934", +"#rs c #363937", +"#ly c #363938", +"#rD c #363939", +"eO0 c #36393a", +"eBi c #36393b", +"#rP c #363a37", +"#lS c #363a38", +"#cO c #363a39", +"epa c #363a3b", +"f#V c #363a3d", +"byT c #363b34", +"aMO c #363b35", +"bfd c #363b37", +"#qX c #363b38", +"#kn c #363b39", +".4u c #363b3a", +".3k c #363b3b", +".5w c #363b3c", +"gxk c #363b41", +"cg. c #363c35", +".Ya c #363c3b", +".4H c #363c3c", +"#ex c #363c47", +"#X7 c #363d37", +"cwF c #363d3d", +"deN c #363e34", +"eTq c #363e40", +"dWs c #363e41", +"dot c #363f3d", +"eIb c #363f40", +"cCW c #36403e", +"dqv c #36403f", +"dx9 c #36413e", +"#nX c #364242", +"eTm c #364244", +"eQ4 c #364344", +"d1p c #364345", +"eH8 c #364545", +"ecX c #364546", +"eDk c #364747", +"#lU c #364945", +".7Q c #364c4a", +"#tG c #364d3d", +".9S c #36543b", +".3W c #365469", +".3Q c #365538", +".8m c #36553c", +"##7 c #36563c", +"#ad c #36583b", +".0F c #36583f", +".3G c #36593a", +".3E c #36593b", +".3H c #365a3a", +"#ac c #365a3b", +"#ae c #365a3c", +".CB c #365d3b", +".x4 c #365d3c", +".yL c #365d3d", +".Cd c #365e3a", +".x5 c #365e3d", +".yK c #365e3f", +".Ak c #365f3a", +".yJ c #36613f", +".yi c #36653e", +".yj c #36653f", +"blJ c #368635", +"fCe c #371112", +"fzP c #371211", +"fCf c #371312", +"fgD c #371815", +"eLN c #371c15", +"eWY c #371c1f", +"fsd c #371e21", +"eso c #371e22", +"ePo c #371e23", +"euM c #372023", +"ebF c #372122", +"fsa c #372223", +"dK6 c #372224", +"ezA c #372225", +"eiL c #37231b", +"em2 c #372324", +"dK4 c #372424", +"dIG c #372525", +"eRv c #372526", +"dCT c #372625", +"eWE c #372728", +"dw9 c #372824", +"dvi c #372826", +"dyJ c #372929", +"dW4 c #37292a", +"e2I c #37292d", +"dEP c #372a24", +"dlI c #372a2a", +"dGd c #372a2c", +"dA9 c #372b24", +"eZD c #372b2c", +"gpu c #372b2d", +"eZz c #372b2e", +"dAP c #372c2c", +"dM6 c #372c2d", +"ekk c #372c2e", +"dER c #372d27", +"dgq c #372d2c", +"ehL c #372d2e", +"dg# c #372d2f", +"dh9 c #372d30", +"dy6 c #372e29", +"dif c #372e2c", +"dia c #372e2f", +"flz c #372e31", +"bQi c #372f26", +"d#J c #372f2d", +"eft c #372f30", +"bnX c #373025", +"djS c #373030", +"dtK c #37312a", +"daQ c #373130", +"gsq c #373131", +"gso c #373132", +"dq1 c #373133", +"dtL c #373228", +"a4V c #37322b", +"a40 c #37322d", +"c8i c #37322e", +"cRt c #373232", +"aPQ c #37332b", +"dcN c #37332e", +"c5J c #373330", +"c5x c #373332", +"dTZ c #373334", +"aVG c #373428", +"dcQ c #37342d", +"dgA c #37342f", +"c6C c #373432", +"gzi c #373434", +"aVD c #37352b", +"c6B c #373532", +"cWK c #373533", +"eKy c #373536", +"#vu c #373619", +"bw6 c #37362e", +"cHg c #373630", +"cqc c #373631", +"bMv c #373632", +"cv. c #373633", +"cxE c #373634", +"aV5 c #373635", +"dKs c #373636", +"#az c #373637", +".4c c #373638", +"eTz c #373639", +"cZ0 c #37372f", +"cQw c #373730", +"bOo c #373733", +"aWd c #373734", +"#uK c #373735", +".De c #373736", +".uB c #373737", +".W0 c #373738", +".Qz c #373739", +"cOB c #373830", +"cfT c #373832", +"avW c #373833", +"#u5 c #373837", +"#m8 c #373838", +".XW c #373839", +"cmB c #373931", +"bzV c #373933", +"bB2 c #373934", +"bvs c #373935", +"#7Y c #373936", +"#rz c #373937", +"#sd c #373938", +"ek# c #373939", +"cpg c #373a31", +"cOx c #373a32", +"bDd c #373a33", +"cXY c #373a34", +"#rS c #373a38", +"#pi c #373a39", +"#gb c #373a3a", +"cM4 c #373b31", +"cai c #373b34", +"#p7 c #373b38", +"#pj c #373b39", +"#dc c #373b3a", +".9g c #373b3b", +"#Bf c #373b3c", +"ek. c #373b3d", +"#LZ c #373b3f", +"a27 c #373bbd", +"aPB c #373c35", +"ah3 c #373c36", +"aWt c #373c38", +"#p5 c #373c39", +".9l c #373c3b", +".5A c #373c3c", +".5x c #373c3d", +"ewG c #373c3f", +"cik c #373d33", +"aSx c #373d35", +"#fp c #373d3b", +".Zf c #373d3c", +".3m c #373d3d", +"Qtd c #373d44", +"avI c #373e36", +"dye c #373e3b", +"ey4 c #373e3f", +"dFQ c #373f3e", +"dsz c #37413d", +"dwi c #374140", +"#H3 c #37423a", +"#Eu c #37423c", +"#hA c #374244", +"dR. c #374343", +"#jS c #374445", +"ec2 c #374446", +"#iu c #374646", +"eB. c #374647", +"ejY c #374649", +"#gj c #374747", +"ee8 c #374849", +"#Kb c #374879", +"eaY c #37494b", +"#QE c #374a88", +".2T c #374c5b", +"fIo c #374c6e", +"#D. c #375064", +"#an c #37553b", +".0L c #37563c", +"##8 c #37573b", +".1J c #37573e", +"#aj c #37593b", +"#a# c #37593c", +"#aa c #37593d", +"#ab c #375a3b", +"#af c #375a3c", +".DJ c #375c3a", +".DO c #375c3d", +".Dv c #375d3b", +".DI c #375d3c", +".DP c #375d3d", +".Du c #375e3a", +".Dw c #375e3c", +".ym c #375e3d", +".Cf c #375e40", +".DQ c #375f3d", +".x6 c #375f3e", +".yl c #37603d", +".yy c #37603e", +".Ag c #37603f", +".DG c #37613d", +".x7 c #37613e", +".Dx c #37623d", +".yk c #37623e", +".yz c #37623f", +".Dz c #37633c", +".Dy c #37633d", +".DA c #37633e", +".x8 c #37633f", +".x9 c #37643f", +".y# c #37653d", +".yA c #37653e", +".y. c #37653f", +".yD c #376541", +"#CI c #37f00d", +"#V6 c #380407", +"bcX c #3805eb", +"fEP c #381514", +"e0H c #381614", +"e3F c #381715", +"fHG c #381815", +"fdN c #381b17", +"eBU c #381b20", +"eWZ c #381c1f", +"e9j c #381c20", +"eLO c #381d16", +"eEf c #381d20", +"exh c #381d22", +"eBQ c #381f21", +"eGp c #382024", +"ekM c #382122", +"euJ c #382123", +"eK2 c #382125", +"ei# c #382226", +"eIH c #382324", +"ekD c #382325", +"fr7 c #382425", +"ebx c #382426", +"eDS c #382427", +"ebC c #382527", +"edB c #382528", +"dZs c #382829", +"fVa c #38282b", +"dx# c #382926", +"dw0 c #382928", +"d1U c #382929", +"f6O c #38292c", +"dNq c #382a29", +"eDJ c #382a2c", +"dEQ c #382b25", +"dEd c #382b2c", +"#V2 c #382b2d", +"eZE c #382b2e", +"dtl c #382c2a", +"eZM c #382c2c", +"ebr c #382c2d", +"fDu c #382c2e", +"eWt c #382c2f", +"dC5 c #382e28", +"eBp c #382e2e", +"ehM c #382e2f", +"e2E c #382e31", +"cMA c #382e32", +"eFZ c #382f30", +"eKD c #382f31", +"fa. c #383030", +"aYU c #383128", +"cfD c #383129", +"dxk c #38312a", +"foI c #383133", +"bBE c #38322d", +"emN c #383232", +"guH c #383233", +"dnP c #38332d", +"c5y c #383333", +"e2A c #383335", +"#ul c #383433", +"gzb c #383434", +"grk c #383435", +"aVI c #383529", +"c4a c #383533", +"cWL c #383534", +"dH8 c #383535", +"d.. c #383630", +"c4n c #383632", +"aKa c #383633", +"ebe c #383637", +"aVQ c #38372e", +"cxK c #383732", +"bwY c #383733", +"cDL c #383734", +"gzq c #383736", +"#u6 c #383737", +"bn5 c #383738", +"fno c #38373a", +"#uL c #383836", +".YN c #383837", +".uX c #383838", +".Z3 c #383839", +"cB1 c #383931", +"cM7 c #383932", +"cIw c #383933", +"as8 c #383934", +"ak5 c #383938", +"aih c #383939", +".T. c #38393b", +"cOw c #383a32", +"c9p c #383a33", +"c6A c #383a34", +"bKH c #383a35", +"d.9 c #383a36", +"#5# c #383a38", +"#pt c #383a39", +"#me c #383a3a", +"#10 c #383a3b", +".YX c #383a3c", +"b94 c #383b32", +"bbq c #383b34", +"c9l c #383b35", +"db3 c #383b36", +"#rR c #383b39", +"#hx c #383b3a", +"#LW c #383b3c", +"cjP c #383c34", +"dfE c #383c36", +"#rl c #383c39", +"#oI c #383c3a", +"#lc c #383c3b", +"##S c #383c3c", +"#L6 c #383c3d", +"cxW c #383d33", +"aVz c #383d35", +"aMN c #383d36", +"aPD c #383d37", +"bcf c #383d39", +"#im c #383d3b", +".9k c #383d3c", +".4z c #383d3d", +"#Io c #383d3e", +"et4 c #383d40", +"cil c #383e34", +".4q c #383e3c", +".0e c #383e3d", +".Zg c #383e3e", +"aJI c #383f37", +"akM c #383f38", +"#Y. c #383f39", +".1s c #383f3f", +"eWa c #384042", +"bxZ c #38413c", +"cyX c #384140", +"dwk c #38423f", +"aIE c #3842b5", +"btT c #38433d", +"dO5 c #384344", +"#dR c #384354", +"#cA c #384355", +"eoX c #384648", +"emn c #384748", +"ej0 c #384848", +"#t3 c #384929", +"##6 c #38543a", +"#.6 c #38543c", +".1K c #38553d", +"#am c #38563a", +"#al c #38573c", +"##9 c #38583b", +"#ak c #38583c", +"#a. c #38593c", +"#ai c #385a3c", +".6S c #385a3e", +"#uV c #385b19", +".Ch c #385d3d", +".Af c #385f3b", +".DT c #38623f", +".DR c #386240", +".DH c #38633e", +"#zz c #386348", +"bsm c #389e2c", +"eXe c #391317", +"fKz c #391516", +"bgr c #3915a2", +"eXw c #391614", +"eXc c #391618", +"faW c #391714", +"e0l c #391719", +"e6b c #391c20", +"eI1 c #391d22", +"eJs c #391e17", +"eD9 c #391e22", +"epQ c #392022", +"eiK c #39241b", +"eIG c #392427", +"e#C c #392526", +"fvr c #392529", +"dNH c #392824", +"d6X c #39282a", +"eTT c #39292a", +"dv# c #392a29", +"drj c #392a2a", +"emP c #392a2d", +"e5U c #392b2e", +"dUX c #392c24", +"dtd c #392c2d", +"foO c #392c2e", +"dCZ c #392d27", +"dis c #392d29", +"epw c #392d2c", +"dgs c #392d2d", +"eKE c #392d2f", +"dnH c #392e2a", +"dT7 c #392e31", +"di# c #392f30", +"d6M c #392f31", +"cso c #393024", +"euh c #393031", +"flA c #393032", +"dxo c #39322a", +"dvx c #39322c", +"e81 c #393233", +"eki c #393332", +"#um c #393433", +"c1b c #393434", +"aY8 c #393532", +"#rf c #393534", +"fAS c #393536", +"aPP c #39362d", +"a2. c #393632", +".Rv c #393634", +"#qF c #393635", +"d6B c #393637", +"aSJ c #39372c", +"c4x c #39372f", +"fAR c #393738", +"aSM c #39382e", +"cZY c #393831", +"cFt c #393833", +"cds c #393834", +"cz0 c #393835", +"#uM c #393836", +"czZ c #393837", +"cG7 c #393838", +"aig c #393839", +"gxc c #39383a", +"fkh c #39383d", +"cQx c #393931", +"cvd c #393933", +"bQs c #393934", +"av0 c #393936", +".zx c #393938", +".BD c #393939", +".PL c #39393a", +"cM6 c #393a32", +"cP3 c #393a34", +"dfK c #393a37", +"a5g c #393a38", +"#tl c #393a39", +"#uD c #393a3a", +"ddF c #393b34", +"cZl c #393b35", +"bKI c #393b36", +"bvt c #393b37", +"#Ys c #393b39", +"#qh c #393b3a", +".6l c #393b3d", +"cuj c #393c33", +"cGy c #393c35", +"doI c #393c37", +"#l6 c #393c3b", +"#jO c #393c3c", +"a#e c #393c3d", +"cB6 c #393d33", +"bec c #393d36", +"ddy c #393d37", +"dfD c #393d38", +"#qR c #393d3a", +"#q# c #393d3b", +"#LP c #393d3c", +"#f6 c #393d3d", +"#LU c #393d3e", +"gxl c #393d43", +"a1k c #393e37", +"bzY c #393e38", +"awd c #393e3a", +"#pH c #393e3c", +"#cH c #393e3d", +".5u c #393e3e", +"ey6 c #393e3f", +"cdI c #393f34", +"chd c #393f35", +"aVx c #393f37", +"c5i c #393f38", +".KY c #393f3d", +".Xe c #393f3e", +".Yk c #393f3f", +"csQ c #394036", +"aJH c #394038", +".Zh c #39403f", +".JJ c #394040", +"#vz c #394119", +"eR# c #394143", +"#Lu c #39433b", +"dz3 c #394344", +"#wU c #39443e", +"d3Y c #394848", +"#hF c #394949", +"#iC c #394a4a", +"e.P c #394a4d", +"##L c #394b4c", +"etO c #394d4e", +".1M c #39543c", +".8n c #39543d", +".0G c #39563e", +"#ag c #39593b", +"#ah c #39593c", +".Cw c #395d3f", +".CA c #395e3e", +".Cz c #395e3f", +".DS c #39603f", +".DU c #396040", +".DD c #39613e", +".DE c #39613f", +".DB c #396140", +".yI c #396240", +"fNt c #3a1819", +"e6w c #3a181e", +"e6S c #3a1917", +"baw c #3a1ca4", +"fa1 c #3a1d19", +"exi c #3a1d20", +"eLg c #3a1d23", +"e95 c #3a1f1a", +"end c #3a2023", +"eIL c #3a2125", +"ePp c #3a2225", +"ffO c #3a2226", +"eIF c #3a2327", +"eeb c #3a241f", +"eRz c #3a2427", +"efP c #3a2528", +"efK c #3a252a", +"e#9 c #3a2620", +"dIJ c #3a2624", +"bcZ c #3a26c6", +"e#B c #3a2729", +"d6V c #3a272a", +"ewT c #3a282a", +"fvt c #3a292c", +"dA2 c #3a2b28", +"epr c #3a2b2a", +"f1d c #3a2b2e", +"dCW c #3a2c26", +"dCU c #3a2c27", +"f83 c #3a2c2f", +"dSq c #3a2d25", +"gtB c #3a2d2f", +"dra c #3a2d30", +"er1 c #3a2e2e", +"eMZ c #3a2e2f", +"eWu c #3a2e30", +"dB# c #3a2f29", +"dnr c #3a2f2f", +"glJ c #3a2f33", +"dF7 c #3a3031", +"dga c #3a3032", +"bYP c #3a3128", +"dBd c #3a312a", +"a41 c #3a3229", +"dpD c #3a322f", +"f#9 c #3a3232", +"d#n c #3a3233", +"dtI c #3a332d", +"cDB c #3a342e", +"drE c #3a342f", +"c8j c #3a3432", +"dc. c #3a3434", +"#s5 c #3a3534", +"c38 c #3a3535", +"dh5 c #3a3536", +"dce c #3a3537", +"#u7 c #3a3538", +"a1X c #3a3632", +"bMp c #3a3633", +"c6S c #3a3634", +"#rF c #3a3635", +"gsF c #3a3636", +"fGm c #3a3637", +"fO8 c #3a3638", +"#u4 c #3a3639", +"cVE c #3a3734", +"eu# c #3a3737", +"dfV c #3a3738", +"aVR c #3a3830", +"c2n c #3a3837", +"d1E c #3a3839", +"csB c #3a3933", +"cxH c #3a3934", +"aM9 c #3a3935", +"csw c #3a3936", +"cu9 c #3a3937", +".WV c #3a3939", +".OX c #3a393b", +"fg5 c #3a393d", +"cI0 c #3a3a32", +"aHa c #3a3a35", +"aH# c #3a3a36", +"bvl c #3a3a38", +".uD c #3a3a39", +".BE c #3a3a3a", +".T2 c #3a3a3b", +"cbc c #3a3b35", +"c5l c #3a3b36", +"#r2 c #3a3b3a", +"a5i c #3a3b3b", +"cpe c #3a3c33", +"cOv c #3a3c34", +"bGi c #3a3c36", +"bIA c #3a3c37", +"#41 c #3a3c39", +"#1W c #3a3c3a", +"#49 c #3a3c3b", +"#Yu c #3a3c3c", +"cLD c #3a3d36", +"cZk c #3a3d37", +"#s9 c #3a3d3a", +"#rn c #3a3d3b", +"#uo c #3a3d3c", +"#72 c #3a3d3f", +"a1l c #3a3e37", +"#rk c #3a3e3b", +"#pJ c #3a3e3c", +"#R5 c #3a3e3d", +"#q5 c #3a3e3e", +"#R6 c #3a3e3f", +"dcY c #3a3f35", +"aYu c #3a3f38", +"b4# c #3a3f39", +"dhF c #3a3f3a", +"aZp c #3a3f3b", +"dqG c #3a3f3c", +"#eH c #3a3f3d", +".Sy c #3a3f3e", +".3t c #3a3f3f", +".RD c #3a3f40", +"cAd c #3a4036", +".4G c #3a403f", +".Yj c #3a4040", +"aA4 c #3a4139", +".Lh c #3a4140", +"dgN c #3a4238", +"bz9 c #3a433e", +"#OV c #3a443c", +"dKb c #3a4445", +"#AW c #3a453f", +"eo1 c #3a4546", +"dWn c #3a4646", +"ers c #3a4a4a", +"#ZY c #3a4a94", +"##I c #3a4d4d", +"ewn c #3a4e4f", +".0T c #3a563f", +".Cg c #3a5c40", +".DF c #3a5f3f", +".DC c #3a603f", +"bai c #3a6abd", +"a9i c #3a72bf", +"a6d c #3a75be", +"cox c #3ac056", +"fHF c #3b1a17", +"fKB c #3b1a19", +"e6Y c #3b221c", +"epR c #3b2225", +"#V3 c #3b2323", +"faj c #3b2325", +"eNd c #3b2327", +"ebH c #3b2526", +"ebG c #3b2527", +"egp c #3b261f", +"dUu c #3b2627", +"fr0 c #3b272c", +"eiN c #3b2821", +"d1Y c #3b2b2c", +"dw8 c #3b2c26", +"dx. c #3b2c29", +"eGb c #3b2c2d", +"dUY c #3b2e26", +"dGh c #3b2e31", +"dP6 c #3b2f27", +"dCx c #3b2f31", +"dGa c #3b3032", +"glI c #3b3034", +"dNU c #3b3128", +"eMT c #3b3133", +"brN c #3b3226", +"dLs c #3b3229", +"dI7 c #3b322b", +"dpr c #3b3230", +"djR c #3b3232", +"f#8 c #3b3233", +"e2D c #3b3234", +"dC6 c #3b332c", +"cJz c #3b3330", +"a44 c #3b3429", +"cE1 c #3b342b", +"dtH c #3b342f", +"dvw c #3b3430", +"dlm c #3b3434", +"gsr c #3b3435", +"fly c #3b3437", +"#rG c #3b3535", +".GD c #3b3630", +"c6U c #3b3635", +"fJa c #3b3638", +"cT9 c #3b3734", +"cWO c #3b3736", +"fLY c #3b3738", +"d#c c #3b3837", +"gzl c #3b3838", +"dZf c #3b383a", +"bzI c #3b3938", +"cVp c #3b393a", +".XD c #3b393c", +"bxt c #3b3a35", +".YH c #3b3a36", +"aP4 c #3b3a37", +"czY c #3b3a38", +"cxD c #3b3a39", +"eIh c #3b3a3a", +"gsN c #3b3a3b", +"fbo c #3b3a3f", +"cXe c #3b3b33", +"cRE c #3b3b34", +"aHj c #3b3b36", +"c0U c #3b3b37", +"ayx c #3b3b39", +".zz c #3b3b3a", +".xw c #3b3b3b", +".MT c #3b3b3c", +"f.B c #3b3b3e", +"by2 c #3b3c36", +"d#a c #3b3c37", +"#q1 c #3b3c3b", +".F0 c #3b3c3c", +".09 c #3b3c3e", +"caj c #3b3d34", +"c3X c #3b3d37", +"d## c #3b3d38", +"#1O c #3b3d3a", +"#so c #3b3d3b", +"#71 c #3b3d3c", +"cxV c #3b3e35", +"c6z c #3b3e37", +"c7W c #3b3e38", +"#rO c #3b3e3c", +"#s7 c #3b3e3d", +"#n1 c #3b3e3e", +"#nP c #3b3f3d", +"#qK c #3b3f3e", +"#dg c #3b3f3f", +"#cR c #3b3f40", +"aJU c #3b4038", +"aMI c #3b4039", +"ddC c #3b403a", +"c3N c #3b403b", +"bla c #3b403c", +"#RW c #3b403d", +"#dv c #3b403e", +".Z. c #3b403f", +".Yc c #3b4040", +".M1 c #3b4041", +"cbt c #3b4137", +"c#. c #3b4138", +"a1m c #3b413a", +"#B# c #3b413e", +".P7 c #3b4140", +".Oe c #3b4141", +"cvp c #3b4238", +"cbw c #3b4239", +"aVw c #3b423a", +"ahR c #3b423b", +".X. c #3b4241", +"ewH c #3b4243", +"drV c #3b4338", +"cFM c #3b433a", +"eW# c #3b4345", +"#on c #3b4443", +"#OW c #3b453d", +"#wW c #3b4640", +"dsy c #3b4642", +"dOY c #3b4646", +"d8G c #3b4847", +"#bN c #3b485b", +"#hR c #3b494a", +"#kt c #3b4b4b", +"eFH c #3b4d4d", +"#eK c #3b4e4c", +"eyN c #3b4f50", +"#fE c #3b4f67", +"#ty c #3b5031", +".1Z c #3b553c", +".1L c #3b5640", +".7b c #3b5b3f", +".yM c #3b5e40", +".Ae c #3b6040", +"a3g c #3b7abd", +"a0f c #3b80bc", +"aXm c #3b85bb", +"crd c #3bb84f", +"faF c #3c1418", +"e6x c #3c181d", +"fs1 c #3c1918", +"fKA c #3c1c1b", +"eBV c #3c1d21", +"ezP c #3c1e21", +"e25 c #3c1f24", +"ffU c #3c2224", +"foZ c #3c2225", +"edG c #3c2226", +"eik c #3c2325", +"esm c #3c2327", +"eIK c #3c2427", +"eNe c #3c2428", +"eD0 c #3c2527", +"ebI c #3c2628", +"eRy c #3c2629", +"efQ c #3c262b", +"eb9 c #3c2721", +"cMB c #3c272a", +"cm8 c #3c2813", +"d2z c #3c2923", +"e#v c #3c292b", +"ell c #3c2a20", +"dWU c #3c2a2c", +"dLg c #3c2b27", +"dv. c #3c2c2b", +"eWD c #3c2c2c", +"dPG c #3c2c2d", +"erV c #3c2d2e", +"gnI c #3c2d2f", +"dGj c #3c2d30", +"drA c #3c2e2c", +"e5V c #3c2e31", +"e#l c #3c2e32", +"dyK c #3c2f2e", +"e2O c #3c2f30", +"dP7 c #3c3027", +"dXy c #3c3028", +"dpk c #3c3030", +"eWv c #3c3032", +"a72 c #3c3124", +"dUZ c #3c3129", +"gjL c #3c3135", +"deo c #3c3231", +"e2F c #3c3232", +"eTG c #3c3233", +"epk c #3c3234", +"gjK c #3c3235", +"dGY c #3c332d", +"eZy c #3c3334", +"c4e c #3c3335", +"cnh c #3c3427", +"dxj c #3c342f", +"eKC c #3c3435", +"cdi c #3c352b", +"e82 c #3c3535", +"b04 c #3c362b", +"bF6 c #3c3630", +"c76 c #3c3636", +"guG c #3c3637", +"a17 c #3c3730", +"#un c #3c3736", +"c5z c #3c3737", +"edf c #3c3738", +"fLZ c #3c373a", +"d#V c #3c3832", +"cJy c #3c3834", +"cW1 c #3c3837", +"c9A c #3c3838", +"eMN c #3c3839", +"c03 c #3c383a", +"drJ c #3c392f", +"c4c c #3c3937", +"#pS c #3c3938", +"fO7 c #3c393b", +"aVH c #3c3a2e", +"cT4 c #3c3a34", +"cNm c #3c3a36", +"#pT c #3c3a38", +"eKz c #3c3a3b", +".YF c #3c3a3c", +"aYB c #3c3b33", +"cz3 c #3c3b36", +"aK# c #3c3b37", +"cFj c #3c3b38", +"cBP c #3c3b39", +"cLW c #3c3b3a", +".T# c #3c3b3b", +"gBz c #3c3b3c", +".06 c #3c3b3d", +"fed c #3c3b40", +"aSL c #3c3c31", +"cI2 c #3c3c34", +"c3Y c #3c3c37", +"anD c #3c3c3a", +"gzw c #3c3c3b", +".Dq c #3c3c3c", +".LM c #3c3c3d", +"cI5 c #3c3d35", +"c3V c #3c3d36", +"crY c #3c3d37", +"c2k c #3c3d38", +"aD7 c #3c3d39", +"a## c #3c3d3b", +".13 c #3c3d3c", +"gB7 c #3c3d3d", +"cpd c #3c3e35", +"bD3 c #3c3e39", +"#1K c #3c3e3b", +"#o0 c #3c3e3d", +"#n6 c #3c3e3e", +"cmy c #3c3f36", +"ddE c #3c3f37", +"cM1 c #3c3f38", +"#7X c #3c3f3b", +"#rM c #3c3f3d", +"#rJ c #3c3f3e", +"#pP c #3c3f3f", +"eDv c #3c3f41", +"cJ6 c #3c4036", +"diK c #3c4037", +"cWD c #3c403b", +"#ri c #3c403d", +"#qQ c #3c403e", +"#pE c #3c403f", +"#qr c #3c4040", +"Qti c #3c4045", +"Qtl c #3c4046", +"Qts c #3c4047", +"dpT c #3c4136", +"cim c #3c4137", +"c.9 c #3c4139", +"aD0 c #3c413a", +"blb c #3c413c", +"#5c c #3c413d", +"dox c #3c413f", +".4k c #3c4140", +".RE c #3c4141", +".YZ c #3c4142", +"fcJ c #3c4143", +"Qtj c #3c4145", +"Qtk c #3c4146", +"Qtp c #3c4148", +"aPE c #3c423b", +".6z c #3c4240", +".O5 c #3c4241", +".O3 c #3c4242", +"aJG c #3c433b", +"ahT c #3c433c", +"dwp c #3c4340", +".Wh c #3c4341", +".U. c #3c4342", +".RS c #3c4343", +"#tX c #3c4428", +"#x# c #3c4542", +"#UJ c #3c463e", +"eOT c #3c4647", +"bsb c #3c4741", +"btV c #3c4742", +"eKq c #3c4747", +"#t4 c #3c4829", +"#hP c #3c494a", +"dYW c #3c4a4a", +"d1r c #3c4a4b", +"#tz c #3c4b36", +"ej1 c #3c4c4c", +"#gS c #3c4d64", +"##K c #3c4e50", +"etP c #3c5051", +"##T c #3c5151", +"d8w c #3c5250", +"#tx c #3c532e", +".0I c #3c5640", +".8o c #3c5641", +".DV c #3c5d40", +".69 c #3c5f42", +".yc c #3c6342", +".yB c #3c6545", +".ya c #3c6643", +"aUc c #3c89b8", +"coM c #3cbb52", +"crc c #3cbc51", +"#V5 c #3d0d0b", +"bds c #3d0e98", +"fEO c #3d1618", +"fQz c #3d1a1c", +"eGL c #3d1b1f", +"fNu c #3d1d1e", +"eW1 c #3d1f21", +"ePK c #3d1f23", +"ezO c #3d2025", +"fae c #3d2125", +"ekK c #3d2126", +"eG8 c #3d221b", +"ene c #3d2326", +"e0N c #3d241e", +"fiR c #3d2426", +"edK c #3d2427", +"eBO c #3d2527", +"e59 c #3d2528", +"eII c #3d2628", +"eqq c #3d2823", +"dK5 c #3d282a", +"d9l c #3d292b", +"eef c #3d2a24", +"dIM c #3d2a27", +"dZt c #3d2b2d", +"dEG c #3d2c29", +"eRs c #3d2c2d", +"eTS c #3d2d2e", +"eWF c #3d2e2d", +"dtk c #3d2e2e", +"dEe c #3d2e31", +"eWB c #3d2e32", +"dCV c #3d2f29", +"eF8 c #3d2f2f", +"erW c #3d2f30", +"e5S c #3d3032", +"dT8 c #3d3033", +"dCF c #3d3131", +"ebj c #3d3133", +"czM c #3d3228", +"ghF c #3d3236", +"gfz c #3d3237", +"drn c #3d3331", +"eTH c #3d3334", +"dg. c #3d3336", +"gtu c #3d3337", +"dI6 c #3d342c", +"eDz c #3d3435", +"b2Y c #3d352a", +"dza c #3d352d", +"da6 c #3d3533", +"dtJ c #3d3630", +"d#L c #3d3633", +"daW c #3d3636", +"e2C c #3d3637", +"c9R c #3d3736", +"daP c #3d3737", +"aYO c #3d382d", +"daK c #3d3838", +"fGo c #3d3839", +"gts c #3d383c", +"cE6 c #3d392e", +"diy c #3d3934", +"c67 c #3d3936", +"#qG c #3d3939", +"c2w c #3d393a", +"fSf c #3d393b", +"dl7 c #3d3a33", +"eFV c #3d3a3b", +".WF c #3d3a3d", +"aVO c #3d3b2e", +"cGT c #3d3b35", +"cNl c #3d3b37", +"dH6 c #3d3b39", +"d#b c #3d3b3a", +"gAC c #3d3b3b", +"cSC c #3d3b3c", +".ZR c #3d3b3e", +"cvb c #3d3c36", +"cqb c #3d3c37", +"ckS c #3d3c38", +"cIR c #3d3c39", +"b6Z c #3d3c3a", +"cZo c #3d3c3b", +".Fn c #3d3c3c", +"#ki c #3d3c3d", +".So c #3d3c3e", +"bPB c #3d3d32", +"cxL c #3d3d37", +"aNa c #3d3d39", +"aBq c #3d3d3b", +"aNc c #3d3d3c", +".uH c #3d3d3d", +".YT c #3d3d3e", +"e4f c #3d3d3f", +"#uN c #3d3e2f", +"cVO c #3d3e36", +"cdx c #3d3e38", +"bWV c #3d3e39", +"daI c #3d3e3a", +"gCo c #3d3e3d", +"#q7 c #3d3e3e", +".xH c #3d3e3f", +"dcX c #3d3f37", +"cEL c #3d3f38", +"cPX c #3d3f39", +"bIC c #3d3f3a", +"bD8 c #3d3f3b", +"#uJ c #3d3f3e", +"#od c #3d3f3f", +"bUZ c #3d4039", +"#qN c #3d403e", +"#pX c #3d403f", +"#j4 c #3d4040", +"#U4 c #3d4041", +"Qtu c #3d4043", +"Qtt c #3d4044", +"Qth c #3d4045", +"Qtf c #3d4046", +"Qtr c #3d4047", +"bRI c #3d413a", +"#s. c #3d413e", +"#pb c #3d413f", +"#py c #3d4140", +"#cS c #3d4141", +"#Bl c #3d4142", +"Qtg c #3d4145", +"Qte c #3d4146", +"Qto c #3d4147", +"bek c #3d423b", +"ayh c #3d423c", +"a2h c #3d423e", +"#p3 c #3d423f", +"#jl c #3d4240", +".5Q c #3d4241", +".PU c #3d4242", +".PT c #3d4243", +"#vA c #3d4319", +"cij c #3d4339", +"c.8 c #3d433a", +"bka c #3d433c", +"dqF c #3d433f", +".UO c #3d4341", +".QI c #3d4342", +".LT c #3d4343", +".Q3 c #3d4344", +"gxp c #3d434d", +"aMz c #3d443c", +"akK c #3d443d", +".UN c #3d4442", +".T9 c #3d4443", +"drU c #3d453a", +"avJ c #3d453c", +"#XX c #3d463e", +"cED c #3d4643", +"ey5 c #3d4645", +"#RQ c #3d473f", +"d34 c #3d4848", +"eOQ c #3d494c", +"eMG c #3d4a49", +"d3V c #3d4b4c", +"eoZ c #3d4e4e", +"#.A c #3d5151", +"erk c #3d5152", +".7Y c #3d5253", +".8p c #3d5440", +".8q c #3d5540", +".1N c #3d563f", +".6T c #3d5a42", +"#uU c #3d5b19", +".7a c #3d5b42", +".7# c #3d5c43", +".6V c #3d5c44", +".yx c #3d5e41", +".6W c #3d5e42", +".6X c #3d5f42", +".6Y c #3d5f43", +".7. c #3d5f44", +".60 c #3d6042", +".6Z c #3d6043", +".AH c #3d6044", +".yd c #3d6445", +"blI c #3d8c3f", +"aIz c #3d94b3", +"#58 c #3dbd87", +"eUp c #3e181a", +"fdJ c #3e1b19", +"fQA c #3e1c1e", +"fZm c #3e1e1f", +"eRK c #3e1e24", +"fNv c #3e1f1f", +"geC c #3e1f24", +"e9k c #3e2025", +"flX c #3e2226", +"eLM c #3e231b", +"eDX c #3e2326", +"ffN c #3e242a", +"eXB c #3e2520", +"eig c #3e2528", +"eIJ c #3e2629", +"ei. c #3e262a", +"ekz c #3e272a", +"eRx c #3e282b", +"fr8 c #3e2a2b", +"d6W c #3e2a2e", +"dZx c #3e2c2e", +"dyW c #3e2d29", +"dPx c #3e2d2d", +"ezm c #3e2d2e", +"dUs c #3e2e2e", +"eWC c #3e2e2f", +"fDw c #3e2e31", +"dIE c #3e2f2e", +"eZI c #3e2f30", +"dIh c #3e2f32", +"eWA c #3e2f33", +"cLd c #3e312c", +"dAQ c #3e3131", +"dIl c #3e3132", +"cuF c #3e3224", +"dnG c #3e332e", +"ghG c #3e3337", +"bFY c #3e3429", +"dLt c #3e342c", +"eWs c #3e3435", +"d80 c #3e3436", +"c8. c #3e3536", +"dy7 c #3e3630", +"d4f c #3e3636", +"efs c #3e3736", +"c2G c #3e3737", +"gwP c #3e3738", +"fDq c #3e3739", +"dny c #3e3836", +"#s6 c #3e3838", +"gsn c #3e3839", +"gvA c #3e383b", +".Sm c #3e3935", +"c9Y c #3e3936", +"cWN c #3e3938", +"#rH c #3e3939", +"fu6 c #3e393a", +"fO9 c #3e393b", +"eWn c #3e393c", +"dtM c #3e3a30", +"dpL c #3e3a33", +"c5s c #3e3a38", +"c07 c #3e3a39", +"eFX c #3e3a3a", +"dRr c #3e3a3b", +"cQf c #3e3b39", +"bHM c #3e3c2f", +"c30 c #3e3c38", +"cVx c #3e3c3b", +".XC c #3e3c3f", +"bHK c #3e3d32", +"bHL c #3e3d33", +"c99 c #3e3d37", +"c3Z c #3e3d39", +"cDK c #3e3d3b", +"#q8 c #3e3d3c", +".uE c #3e3d3d", +".YE c #3e3d3f", +"cvc c #3e3e36", +"ckX c #3e3e38", +"cNi c #3e3e39", +"dfJ c #3e3e3b", +"dFY c #3e3e3c", +"#a2 c #3e3e3d", +".uC c #3e3e3e", +".In c #3e3e3f", +"fg6 c #3e3e43", +"deI c #3e3f37", +"cWH c #3e3f38", +"cba c #3e3f39", +"c2l c #3e3f3a", +"c.T c #3e3f3b", +"dD5 c #3e3f3e", +".FZ c #3e3f3f", +"#qt c #3e3f40", +"cWG c #3e4039", +"any c #3e403b", +"#rA c #3e403e", +"#pu c #3e403f", +"#rI c #3e4040", +"Qtq c #3e4046", +"cLG c #3e4138", +"cXX c #3e413a", +"cWE c #3e413b", +"#rN c #3e413f", +"#m. c #3e4140", +"#mQ c #3e4141", +"#o8 c #3e4142", +"Qtn c #3e4146", +"Qtm c #3e4147", +"cLE c #3e423a", +"dqH c #3e423e", +"#qO c #3e423f", +"#rh c #3e4240", +"#fv c #3e4241", +".XZ c #3e4242", +"ehE c #3e4243", +"#cB c #3e424a", +"a7n c #3e433c", +"boa c #3e433d", +"#tB c #3e433e", +"aTl c #3e433f", +".QJ c #3e4342", +".O4 c #3e4343", +".Tf c #3e4344", +"#NB c #3e4384", +"cdH c #3e443a", +"aYy c #3e443d", +".UM c #3e4442", +".RK c #3e4443", +".PY c #3e4444", +"bbk c #3e453d", +"bra c #3e453e", +".Wi c #3e4543", +".T8 c #3e4544", +".QK c #3e4545", +"#tA c #3e463b", +"dHZ c #3e4747", +"eDn c #3e4749", +"#Lt c #3e4840", +"dsv c #3e4847", +"dY8 c #3e4849", +"eV7 c #3e484a", +"dux c #3e4945", +"#n3 c #3e494a", +"eBb c #3e494b", +"afH c #3e4a49", +"#mN c #3e4b4b", +"ewv c #3e4c4d", +"ert c #3e4d4e", +"eyV c #3e4e4e", +"#ia c #3e4f67", +"d6f c #3e5151", +"eaW c #3e5153", +"eaV c #3e5253", +"e.U c #3e5352", +"dV9 c #3e5354", +".8r c #3e5440", +".0K c #3e5641", +".0J c #3e5942", +".6U c #3e5b42", +".Zo c #3e5c40", +".68 c #3e5f42", +"aO. c #3e73c1", +"aR# c #3e8bb4", +"aOg c #3e8db2", +"aLo c #3e90b3", +"aFG c #3e97b2", +"fzt c #3f131a", +"faE c #3f171c", +"gcF c #3f1d22", +"fTB c #3f1e1f", +"fWo c #3f1f20", +"gcG c #3f1f24", +"eGF c #3f2025", +"eJr c #3f231c", +"enj c #3f2325", +"e23 c #3f2327", +"eLP c #3f241d", +"eUN c #3f241f", +"eSi c #3f2520", +"epP c #3f2628", +"fiN c #3f262a", +"edJ c #3f272a", +"ePq c #3f282c", +"fvq c #3f282e", +"dRZ c #3f292b", +"dNx c #3f2a2a", +"eh5 c #3f2b2d", +"ePl c #3f2c2d", +"d4p c #3f2c2f", +"fvu c #3f2c31", +"eut c #3f2d2e", +"gtC c #3f2d30", +"dRX c #3f2e2e", +"eby c #3f2e2f", +"e2N c #3f3031", +"fX2 c #3f3032", +"eWI c #3f3131", +"dGi c #3f3133", +"dXx c #3f322a", +"e5W c #3f3234", +"eWw c #3f3335", +"fL3 c #3f3438", +"bFZ c #3f352b", +"a47 c #3f352d", +"dES c #3f352f", +"eDA c #3f3536", +"frN c #3f3537", +"c.. c #3f3625", +"cDv c #3f362a", +"a42 c #3f362b", +"bUK c #3f362c", +"dGX c #3f362f", +"fDr c #3f363a", +"b4W c #3f372c", +"fu7 c #3f3739", +"bpz c #3f382c", +".Il c #3f382f", +"fAT c #3f383a", +"#r7 c #3f3939", +"fJb c #3f393a", +"e2B c #3f393c", +"c6N c #3f3a3a", +"e#e c #3f3a3b", +"aVF c #3f3b2f", +"dxq c #3f3b33", +"dm# c #3f3b35", +"cWM c #3f3b3a", +"fGn c #3f3b3c", +"cHY c #3f3c34", +"d#X c #3f3c35", +"aY7 c #3f3c37", +"c9q c #3f3c3a", +"dMX c #3f3c3b", +"aY3 c #3f3c3d", +"aSK c #3f3d32", +"c1o c #3f3d36", +"c31 c #3f3d39", +"cOL c #3f3d3b", +"cX1 c #3f3d3c", +"d1D c #3f3d3d", +".0W c #3f3d3f", +"bNx c #3f3e33", +"cHa c #3f3e39", +"cb# c #3f3e3a", +"afe c #3f3e3c", +"#rb c #3f3e3d", +".Fo c #3f3e3e", +".sM c #3f3e3f", +".ZQ c #3f3e40", +"aNb c #3f3f3c", +"aqp c #3f3f3d", +".u1 c #3f3f3e", +".Fp c #3f3f3f", +".sD c #3f3f40", +"#to c #3f3f41", +"cK. c #3f4038", +"c.X c #3f403a", +"c3W c #3f403b", +"bBR c #3f403c", +"dhK c #3f403d", +"aZk c #3f403f", +".Gb c #3f4040", +"#rd c #3f4041", +"QtV c #3f4047", +"dcW c #3f4139", +"cV# c #3f413a", +"djs c #3f413b", +"doJ c #3f413c", +"#40 c #3f413e", +"#1T c #3f413f", +"#pM c #3f4140", +"#qJ c #3f4141", +"cui c #3f4239", +"cOy c #3f423a", +"cmH c #3f423b", +"#Yj c #3f4240", +"#o2 c #3f4241", +".Td c #3f4242", +"#Yw c #3f4243", +".YG c #3f4245", +"bPx c #3f433c", +"#p2 c #3f4340", +"#p4 c #3f4341", +".Ss c #3f4342", +".Ry c #3f4343", +".RA c #3f4344", +"aSw c #3f443d", +"avK c #3f443e", +"dmW c #3f4440", +"#k9 c #3f4442", +".QE c #3f4443", +".LU c #3f4444", +".M2 c #3f4445", +"eTu c #3f4447", +"d.g c #3f453a", +"ccv c #3f453b", +"#o7 c #3f4543", +".Pa c #3f4544", +".JY c #3f4545", +".Q1 c #3f4546", +"ceP c #3f463a", +"cB7 c #3f463c", +"asP c #3f463d", +"aGS c #3f463e", +"ank c #3f463f", +".Wj c #3f4644", +".Tl c #3f4645", +".JZ c #3f4646", +"gzz c #3f4652", +"dD0 c #3f4747", +"#t5 c #3f4828", +"bA. c #3f4943", +"afG c #3f4a49", +".VV c #3f4b57", +"eB# c #3f4d4e", +"eml c #3f4e51", +"eA9 c #3f4f4f", +"#do c #3f516d", +"eY7 c #3f5252", +"e.O c #3f5354", +"#tw c #3f542c", +".6y c #3f5553", +".0H c #3f5843", +".AK c #3f5d41", +".DN c #3f5d42", +".AF c #3f5e44", +"bgs c #40149b", +"e9F c #40181c", +"e9E c #401a1f", +"#V4 c #401b18", +"eI7 c #401e21", +"gaw c #401f23", +"epX c #402426", +"ekL c #402428", +"exa c #402528", +"eNk c #402529", +"eD8 c #402629", +"eNf c #40262a", +"em3 c #40262b", +"eQi c #402720", +"fiK c #40272a", +"eRw c #40282b", +"dNw c #402a2b", +"dW7 c #402a2c", +"edD c #402a2e", +"ekH c #402b2d", +"dW6 c #402c2d", +"dGJ c #402e2b", +"dwZ c #40302f", +"dyV c #40312c", +"fVb c #403134", +"eWz c #403135", +"dCG c #403232", +"dEf c #403234", +"dEh c #403235", +"gnH c #403336", +"bSw c #403429", +"dP8 c #40342c", +"dGW c #40342e", +"eGg c #403434", +"e2G c #403435", +"fva c #403436", +"dtw c #403533", +"dKD c #403536", +"efu c #403537", +"b6U c #40362d", +"eF0 c #403637", +"eWr c #403638", +"eZu c #40363a", +"bF0 c #40372b", +"e5N c #403737", +"ebh c #403738", +"fAU c #40373a", +"fGp c #40373b", +"a1O c #40382e", +"e83 c #403839", +"dvy c #403931", +"fL2 c #40393b", +"fys c #40393c", +"deD c #403b34", +"c37 c #403b3a", +"eWl c #403b3c", +"bet c #403c33", +"bDS c #403c34", +"bh7 c #403c36", +"dba c #403c39", +"cSG c #403c3b", +"c2v c #403c3c", +"dWz c #403c3d", +"bzE c #403d3a", +"bzC c #403d3b", +"eDx c #403d3d", +".WE c #403d3f", +".VU c #403d40", +"c4y c #403e36", +"cG. c #403e37", +"cYg c #403e3c", +".0V c #403e3f", +".12 c #403e40", +".XB c #403e41", +"#t2 c #403f29", +"cUa c #403f37", +"cnw c #403f3a", +"cno c #403f3b", +"cKl c #403f3d", +"bzK c #403f3e", +".v0 c #403f3f", +".W1 c #403f40", +"#dp c #403f41", +"c7f c #404038", +"c2m c #40403c", +"bGd c #40403d", +".Dc c #40403f", +".AU c #404040", +".QA c #404041", +"fnk c #404043", +"cL8 c #404139", +"cbb c #40413b", +"akU c #40413c", +"#rc c #404140", +"#sr c #404141", +".rQ c #404143", +"c5j c #40423b", +"dfF c #40423d", +"#pO c #404241", +"#os c #404242", +".rR c #404243", +"eFT c #404244", +"cmC c #40433b", +"crV c #40433c", +"#up c #404340", +"#r3 c #404341", +"#iX c #404342", +".QD c #404343", +".O0 c #404344", +"#5. c #404345", +"bGn c #40443e", +"doG c #40443f", +"#Yn c #404440", +"#rL c #404441", +"#oH c #404442", +".St c #404443", +".O1 c #404444", +".PO c #404445", +"c.7 c #40453d", +"bU6 c #40453e", +"bq# c #40453f", +"brY c #404540", +"#pZ c #404542", +"#pa c #404543", +".PP c #404544", +".L6 c #404545", +".Oc c #404546", +"caa c #40463b", +"chg c #40463c", +"b9X c #40463d", +"aVy c #40463e", +"bhh c #40463f", +"dsG c #404642", +"#dZ c #404644", +".Sv c #404645", +".IN c #404646", +"ann c #40473f", +"abV c #404740", +".UL c #404745", +".JX c #404746", +".Mh c #404747", +"cHz c #40483d", +".Vm c #404852", +"cCV c #404948", +"#UK c #404a42", +"dqu c #404a49", +"#e5 c #404a51", +"#Ev c #404b45", +"dY4 c #404c4c", +"#mK c #404d4d", +"eyX c #404d4f", +"afI c #404e4e", +"dYZ c #405050", +"#nI c #40514b", +"eDj c #405151", +"d6k c #405152", +"ee5 c #405254", +"d6d c #405353", +"ee6 c #405354", +"dTy c #405454", +"dYN c #405455", +"d8v c #405456", +"dYO c #405556", +"fIm c #405983", +"#uT c #405a19", +".ZM c #405d43", +".yh c #406344", +"aIs c #408eba", +"crb c #40b84c", +"#Ni c #40b948", +"aoT c #410000", +"fdr c #41171e", +"e3o c #41181e", +"#S3 c #411a1b", +"eUo c #411d1e", +"eI6 c #411d22", +"fTA c #411e20", +"f2s c #412124", +"e27 c #412226", +"eLL c #41241e", +"ePv c #412429", +"fd. c #412529", +"e9f c #41262a", +"ezz c #41292d", +"fr9 c #412a2c", +"ekB c #412b2e", +"ePr c #412b2f", +"dIH c #412d2c", +"dLb c #412e2b", +"epH c #412e30", +"dGK c #412f2c", +"ekr c #413032", +"grq c #413033", +"dCH c #413131", +"edt c #413132", +"eRr c #413133", +"eIr c #413233", +"dWJ c #413234", +"f6N c #413235", +"dCt c #413334", +"eWy c #413335", +"dxc c #413433", +"e2H c #413436", +"eWx c #413537", +"dto c #413735", +"djX c #413736", +"eZx c #413738", +"eO6 c #413739", +"eO5 c #41373a", +"fJd c #41373b", +"fu8 c #41383a", +"fyt c #41383b", +"a43 c #41392e", +"bOf c #413931", +"dAt c #413939", +"d#l c #41393a", +"fJc c #41393b", +"dxp c #413a32", +"gpn c #413a3c", +"c73 c #413b3b", +"eMO c #413b3d", +"fU2 c #413c3d", +"aYP c #413d32", +"d#W c #413d37", +"c5B c #413d3b", +"dsZ c #413d3c", +"cX8 c #413d3d", +"fyr c #413d3e", +"fu5 c #413d3f", +"aVK c #413e33", +"aVE c #413e34", +"dbo c #413e37", +"bIq c #413e3b", +"#pU c #413e3d", +"gzn c #413e3e", +"dCl c #413e3f", +".Vl c #413e40", +".VT c #413e41", +".Uw c #413e42", +"aYC c #413f36", +"dH7 c #413f3d", +"cVw c #413f3e", +".8C c #413f3f", +".Vk c #413f40", +"eIg c #413f41", +"bes c #414037", +"aN# c #41403b", +"cdr c #41403c", +"#ra c #41403e", +"#r# c #41403f", +"#.8 c #414040", +".2S c #414041", +".GE c #414042", +"aib c #41413e", +"#tn c #41413f", +".tM c #414140", +".vV c #414141", +".VB c #414142", +".rY c #414143", +"fek c #414146", +"cKy c #414239", +"b5a c #41423c", +"bUS c #41423d", +"ddK c #41423e", +"#tE c #414240", +"#qx c #414241", +".rL c #414243", +".rM c #414244", +"gxq c #414245", +"ccE c #41433a", +"d#5 c #41433b", +"cPU c #41433c", +"dfG c #41433e", +"doH c #41433f", +"dwy c #414340", +"#qi c #414342", +"#pW c #414343", +".S9 c #414345", +"#9m c #4143b1", +"cuq c #41443d", +"#s8 c #414441", +"#pN c #414442", +"#lh c #414443", +".O# c #414444", +".O2 c #414445", +"#dS c #41444a", +"cTJ c #41453e", +"dhG c #414540", +"#rj c #414542", +"#oF c #414543", +".Ob c #414544", +".MV c #414545", +".6q c #414546", +"f#U c #414548", +"cjV c #41463c", +"cHq c #41463d", +"bhk c #41463f", +"cWC c #414640", +"b#m c #414642", +"#e2 c #414644", +".Nf c #414645", +".Mn c #414646", +".Od c #414647", +"cbs c #41473d", +"#1m c #414740", +"cOt c #414741", +"cOs c #414742", +"#RV c #414743", +".1n c #414745", +".Mm c #414746", +".J0 c #414747", +".SC c #414748", +"cle c #41483f", +"aJF c #414840", +"#7z c #414841", +".UK c #414846", +".Tk c #414847", +".TJ c #414848", +"aGO c #414941", +"cwH c #414a49", +"cMy c #414a4a", +"eFL c #414a4b", +"eMI c #414b4a", +"#Ex c #414c46", +"bsc c #414c48", +"eI# c #414c4e", +"dRf c #414d4d", +"dTH c #414e4e", +"dOU c #414f4f", +"cCz c #41504f", +"d6i c #415051", +"dQ3 c #415252", +"d3X c #415253", +"d8u c #415355", +"#tv c #41552c", +"#hm c #415554", +"ee7 c #415555", +"e.T c #415556", +".3h c #415755", +".Aj c #415c43", +".Zq c #415e47", +".Ah c #415e48", +".61 c #416048", +".ZH c #416246", +".yb c #416447", +"azS c #41a1ab", +"axe c #41a2a4", +"adm c #41b897", +"fBU c #42171e", +"fgi c #42191d", +"e6y c #42191e", +"e3l c #421b1f", +"ezQ c #422324", +"eDY c #422629", +"eK1 c #42262a", +"ePu c #42262b", +"enc c #42272b", +"fak c #42282b", +"eea c #422a25", +"ebE c #422a2c", +"dNv c #422c2e", +"epD c #422c2f", +"eib c #422d2f", +"efS c #422d30", +"dNt c #422e2f", +"dL# c #422f2b", +"eTV c #423132", +"eIq c #423134", +"emQ c #423333", +"fX4 c #423336", +"foN c #423337", +"dXz c #42342d", +"dIi c #423435", +"frP c #423436", +"euj c #423437", +"cBv c #423525", +"dNg c #423534", +"a75 c #42372b", +"b8P c #42372e", +"dk. c #423735", +"gbA c #423739", +"gfy c #42373a", +"gdz c #42373c", +"emM c #42383a", +"eZv c #42383b", +"fPb c #42383c", +"cxw c #42392c", +"ca0 c #42392f", +"c.G c #423931", +"d#m c #42393a", +"ckb c #423a29", +"dET c #423a33", +"dps c #423a39", +"d#k c #423a3b", +"dzb c #423b33", +"daO c #423c3c", +"fPa c #423c3e", +"c1k c #423d3a", +"d#v c #423d3c", +"dKt c #423d3d", +"cZD c #423d3e", +"eTA c #423d3f", +"a5c c #423e3a", +"cW0 c #423e3d", +"c01 c #423e3f", +"dbn c #423f38", +"dne c #423f3d", +"cZp c #423f3e", +"c2H c #423f3f", +".Uv c #423f40", +".TV c #423f42", +"dCj c #42403e", +".Uu c #424040", +".TU c #424041", +"#ap c #424042", +"bPC c #424135", +"c2V c #42413a", +"cFm c #42413b", +"cqa c #42413d", +"cLV c #42413f", +"#tD c #424140", +"#bE c #424141", +".S4 c #424142", +".S# c #424143", +"fbx c #424147", +"a1r c #424239", +"cVP c #42423a", +"cHf c #42423c", +"#tF c #424240", +".uA c #424241", +".tH c #424242", +".PM c #424243", +"ffx c #424244", +"cNq c #42433b", +"bw5 c #42433d", +"c5m c #42433e", +".XK c #424342", +"#qI c #424343", +".rS c #424344", +".rX c #424345", +"bFp c #42443c", +"cze c #42443e", +"doK c #424440", +"#1X c #424442", +"#pv c #424443", +"Qtv c #424446", +".7t c #424447", +"bac c #4244b5", +"#uO c #424529", +"crP c #42453c", +"cj1 c #42453e", +"#uq c #424542", +"#qq c #424543", +".Oa c #424544", +".It c #424545", +".MX c #424546", +"#LV c #424547", +"cjR c #42463d", +"cho c #42463f", +"doF c #424642", +"#qM c #424643", +"#nk c #424644", +".Iz c #424645", +".Iu c #424646", +".MY c #424647", +"#L0 c #424649", +"#vB c #424719", +"d.f c #42473d", +"a7o c #424740", +"btD c #424741", +"#p# c #424744", +".ID c #424745", +".IA c #424746", +".IE c #424747", +".JW c #424748", +"#.b c #424751", +"chc c #42483d", +"cnN c #42483e", +"aYx c #424841", +"#O4 c #424844", +"#eG c #424845", +".4p c #424846", +".Mo c #424847", +".JV c #424848", +".Pj c #424849", +"aMD c #424941", +"a.M c #424942", +"bOH c #424943", +".5n c #424947", +".P6 c #424948", +".Pk c #424949", +"#t6 c #424a28", +"drT c #424a3e", +"#XY c #424a43", +"#OY c #424b45", +"#RS c #424b46", +"#x. c #424b47", +"eOU c #424b4c", +"#wX c #424d47", +"aiD c #424e4c", +"dHP c #424f4f", +"etU c #424f50", +"eDl c #425050", +"#gi c #425152", +"eyU c #425252", +"emp c #425353", +"d6j c #425555", +"#Cb c #425556", +"ecW c #425655", +"eoR c #425758", +"#bb c #425778", +".Zp c #425c47", +".Cl c #425d47", +".B6 c #425e46", +".Zr c #425f46", +".Zs c #426046", +".Zy c #426146", +".Zx c #426147", +".ZI c #426148", +".Zu c #426246", +".Zv c #426247", +".Zw c #426248", +"#6c c #42ac93", +"aan c #42b697", +"#y5 c #42ff00", +"b#8 c #4300fe", +"bcW c #4304f5", +"fwf c #43161c", +"eUq c #431a1d", +"e0o c #431b21", +"eGM c #431d22", +"eI5 c #431e22", +"eNB c #431f26", +"eGK c #432024", +"eUd c #432127", +"eLh c #432128", +"fWn c #432223", +"f5l c #432326", +"eEg c #432327", +"geB c #432328", +"eI2 c #432329", +"fQB c #432424", +"g.. c #432427", +"eie c #43262a", +"eG9 c #432821", +"eDZ c #43292c", +"eKX c #432a2d", +"ex. c #432b2d", +"fs. c #432b2e", +"dII c #432e2e", +"er7 c #432e31", +"dyQ c #433132", +"eTR c #433234", +"f4a c #433235", +"dyU c #43332f", +"f1f c #433335", +"drb c #433336", +"dM7 c #433437", +"eBo c #433537", +"dZ8 c #43362e", +"dpj c #433636", +"gfE c #433639", +"dpC c #433734", +"e5O c #433738", +"eTI c #433739", +"dP9 c #43382f", +"dlF c #433838", +"erR c #433839", +"fv# c #43383a", +"cxa c #43392c", +"eZw c #433939", +"eF1 c #43393a", +"eF2 c #43393b", +"eWq c #43393c", +"edi c #433a39", +"dd8 c #433a3b", +"dkd c #433b36", +"da8 c #433b39", +"ebi c #433b3c", +"c8# c #433c3c", +"a1Y c #433d37", +"c74 c #433d3d", +"gsl c #433d3e", +"#F8 c #433d3f", +"a11 c #433e36", +"a18 c #433e38", +"cX3 c #433e3d", +"gwY c #433e3e", +"dZh c #433e3f", +"cYa c #433f3e", +"dTX c #433f3f", +"c02 c #433f40", +"a1t c #434035", +"dbm c #434039", +"cYe c #43403e", +"#tC c #434041", +".Sb c #434042", +".4Z c #434043", +"c5U c #434139", +".FK c #43413e", +"cVF c #43413f", +"#bC c #434142", +".Sa c #434143", +".7e c #434144", +"cBT c #43423d", +"aK. c #43423e", +"buQ c #43423f", +"cLU c #434240", +"#qy c #434241", +".tQ c #434242", +".Rn c #434243", +".OY c #434244", +"a4u c #43433a", +"cL5 c #43433b", +"c.S c #43433f", +"bIu c #434340", +"aT. c #434341", +".Eu c #434342", +".yr c #434343", +".T3 c #434344", +"#tp c #43443b", +"cI6 c #43443c", +"cSs c #43443e", +"atc c #43443f", +"#qv c #434443", +"#pz c #434444", +".xu c #434445", +".rV c #434446", +"#.c c #434447", +"gzy c #43444a", +"cJ4 c #43453d", +"cj4 c #43453e", +"bD6 c #434540", +"#o3 c #434544", +"#iU c #434545", +".ZU c #434546", +"eTy c #434547", +"cmv c #43463d", +"cRd c #43463f", +"#ur c #434643", +"#rK c #434644", +"#kY c #434645", +".Iv c #434646", +".MW c #434647", +".2f c #434648", +"#dT c #43464c", +"b0e c #434740", +"bSR c #434741", +"dqI c #434743", +"#qP c #434744", +"#nl c #434745", +".HM c #434746", +".Ix c #434747", +".KA c #434748", +".28 c #434749", +"cjS c #43483e", +"b9W c #434840", +"bkc c #434841", +"bq. c #434844", +"#pF c #434845", +"#eE c #434846", +".IF c #434847", +".Jd c #434848", +".M0 c #434849", +"cqr c #43493f", +"dgO c #434940", +"aG4 c #434941", +"#4C c #434942", +".6u c #434947", +".IM c #434948", +".Je c #434949", +".Pl c #43494a", +"dkx c #434a40", +"aJK c #434a42", +"cu# c #434a43", +"apZ c #434a44", +"cMY c #434a45", +".UV c #434a48", +".Ov c #434a49", +".JU c #434a4a", +"#7B c #434b44", +"#X2 c #434c45", +"aGN c #434d45", +"bvP c #434d47", +"dwg c #434d4c", +"dRi c #434d4d", +"eFJ c #434f50", +"eMC c #435051", +"#jM c #435150", +"#tu c #43542c", +"d1q c #435454", +"ecV c #435456", +"d3W c #435554", +"#Jk c #435555", +"e.S c #435557", +"#fn c #435654", +"d3Q c #435655", +"d3S c #435656", +"#yt c #435757", +"eaR c #435758", +"#uS c #435819", +"eaP c #435858", +"ehp c #435859", +"#gV c #435978", +".AI c #435d4a", +".z7 c #435e48", +".ZL c #435f47", +".ZK c #436047", +".Zt c #436147", +".ZJ c #436246", +".yE c #43644b", +"aLk c #438bb8", +"aCK c #4399ad", +"#J3 c #43b77d", +"#Ns c #43b87f", +"al9 c #440108", +"arI c #44010a", +"#ZB c #440405", +"bgt c #440f91", +"fBT c #441a21", +"fHE c #441e1e", +"fgy c #441f1e", +"fwz c #44201f", +"eBW c #442024", +"f7V c #442428", +"gax c #442528", +"ggL c #44252a", +"efV c #44272b", +"eJu c #442922", +"eQh c #442a24", +"eKW c #442b2f", +"dZI c #442c2e", +"ePs c #442c2f", +"dZH c #442e30", +"dNy c #442f2d", +"fs# c #442f31", +"cky c #44321c", +"dT9 c #443336", +"glP c #443437", +"aUj c #4434b9", +"erY c #443536", +"eul c #443537", +"eDH c #443538", +"dM8 c #443638", +"diq c #443737", +"e5R c #443739", +"a4L c #443928", +"dyO c #443938", +"e9. c #44393a", +"fAV c #44393d", +"bWO c #443a32", +"dvd c #443a38", +"dG# c #443a3b", +"eTF c #443a3c", +"edj c #443b3c", +"ckG c #443c2f", +"dNV c #443c33", +"c4f c #443c3d", +"a7X c #443d30", +"eWo c #443d40", +"c6T c #443e3e", +"bhx c #443f33", +".Tc c #443f36", +"a19 c #443f3a", +"cQm c #443f3c", +"c2s c #443f3e", +"c2u c #443f40", +"fyq c #443f41", +"cX2 c #44403f", +"dTY c #444040", +".8D c #444042", +"db8 c #444140", +".Ro c #444143", +"aSY c #44423f", +"cNf c #444240", +"dle c #444241", +"#bD c #444242", +"#aq c #444243", +".Qp c #444244", +"#h7 c #444245", +"cns c #44433c", +"cDR c #44433e", +"aN. c #44433f", +"csv c #444341", +"#qC c #444342", +"#qB c #444343", +"#pD c #444344", +".PB c #444345", +"ate c #444442", +"#pC c #444443", +".wd c #444444", +".fz c #444445", +"Qtw c #444447", +"cI4 c #44453d", +"cP2 c #44453e", +"cWI c #44453f", +"bSE c #444540", +"cJx c #444541", +"ddJ c #444542", +"ak6 c #444544", +".v7 c #444545", +"bV2 c #44463f", +"#qj c #444644", +"#o1 c #444645", +"#ou c #444646", +"##m c #444647", +"cpi c #44473e", +"ceZ c #444740", +"bGl c #444741", +"#uv c #444744", +"#r9 c #444745", +".Iy c #444746", +".Iw c #444747", +".Kz c #444748", +"#oG c #444845", +"#nC c #444846", +".LP c #444847", +".Ky c #444848", +".W3 c #444849", +"c.6 c #444941", +"bke c #444942", +"b58 c #444943", +"#p0 c #444946", +"##r c #444947", +".Wd c #444948", +".K9 c #444949", +".NG c #44494a", +"ca# c #444a40", +"chb c #444a41", +"#4F c #444a43", +"#RX c #444a46", +".7J c #444a48", +".J1 c #444a49", +".JT c #444a4a", +".Xn c #444a4b", +"dkw c #444b40", +"dky c #444b41", +"aGP c #444b43", +"#1n c #444b44", +"cwO c #444b45", +"cMZ c #444b46", +".3a c #444b49", +".SS c #444b4a", +".RJ c #444b4b", +"#t7 c #444c29", +"c24 c #444c41", +"cHA c #444c42", +"cGp c #444c4a", +"cC# c #444d42", +"ayU c #444d4a", +"dKi c #444d4e", +"aGL c #444e46", +"#AZ c #444e48", +"#ok c #444e4d", +"dHT c #444f50", +"aqN c #44504d", +"erv c #445051", +"afF c #44514e", +"#tt c #44532d", +"dTI c #445353", +"etT c #445354", +"dWh c #445555", +"dOO c #445656", +"e.J c #44565a", +"#fW c #445755", +"f28 c #445776", +"d8r c #445859", +"dW. c #44585a", +".3R c #445946", +".AJ c #445b48", +".At c #445e48", +".ZG c #446147", +".yC c #446349", +"bsl c #449d39", +"azM c #449db8", +"#9h c #44a898", +"#3d c #44ae8e", +"#Wg c #44b377", +"fEq c #451b21", +"eLm c #452024", +"eW2 c #452227", +"eZ7 c #45252b", +"e24 c #45262c", +"fvH c #45282d", +"ekJ c #45292d", +"ePt c #452a2e", +"ezH c #452b2d", +"edF c #452b2f", +"eBJ c #452c2e", +"ena c #452e30", +"dUv c #452e31", +"fvv c #453035", +"eIA c #453134", +"#Zx c #453232", +"d4m c #453235", +"chS c #453319", +"eiQ c #453429", +"dIU c #453430", +"dri c #453435", +"dEH c #453530", +"dEK c #453531", +"eRq c #453537", +"gpv c #453538", +"dKI c #453636", +"eDM c #453638", +"f4. c #453639", +"dUW c #45372f", +"dEL c #453731", +"e5Q c #453739", +"dPk c #45373a", +"b.6 c #453829", +"bQh c #45382c", +"dSr c #453830", +"gdD c #45383b", +"eze c #45393a", +"eIm c #45393b", +"gtv c #45393d", +"ekj c #453a3b", +"eF3 c #453a3c", +"ghH c #453a3e", +".Kw c #453b2e", +"bBx c #453b30", +"d81 c #453b3c", +"eRi c #453b3d", +"gjJ c #453b3e", +"bBz c #453c32", +"dio c #453c3b", +"c9H c #453c3d", +"glH c #453c3f", +"a54 c #453cc2", +"bDH c #453d32", +".hH c #453d3d", +"eWp c #453d40", +"eO4 c #453e40", +"fL0 c #453e41", +"aYT c #453f35", +"c6V c #453f3f", +"dAs c #453f40", +"brr c #454035", +"cW7 c #45403e", +"c2C c #45403f", +"cZL c #454040", +"ddS c #45413f", +"c6X c #454140", +"cZB c #454142", +"aYD c #454237", +"dkk c #45423b", +"cTY c #454241", +"#dF c #454242", +"#b6 c #454243", +".PC c #454244", +"#fy c #454245", +"cIG c #45433f", +"cVv c #454341", +"#di c #454343", +".OI c #454344", +"cnA c #45443f", +"cp5 c #454440", +"bzA c #454441", +"#r. c #454442", +"#qu c #454443", +"#qs c #454444", +"#cU c #454445", +"fqk c #454449", +"fkc c #45444b", +"cKB c #45453d", +"bzN c #454543", +".hi c #454544", +".xV c #454545", +".sP c #454546", +"#j. c #454547", +"gAP c #454549", +"bHF c #45463c", +"cB2 c #45463e", +"cfS c #454640", +"b66 c #454641", +"#q9 c #454646", +"#ke c #454647", +"cV. c #454740", +"#1N c #454743", +"#q2 c #454745", +"#qm c #454746", +".Sr c #454747", +".Rx c #454748", +"cLF c #454841", +"#sp c #454846", +".7G c #454847", +".Ho c #454848", +"#gY c #454849", +".4a c #45484a", +".Z6 c #45484b", +"#tq c #454937", +"cTK c #454942", +"#ut c #454945", +"#p1 c #454946", +"#nm c #454947", +".QF c #454948", +".Kx c #454949", +".W4 c #45494a", +"gAQ c #454950", +"dbt c #454a40", +"a4p c #454a43", +"aJV c #454a44", +"brX c #454a46", +"#oD c #454a47", +"#e1 c #454a48", +".IG c #454a49", +".KD c #454a4a", +".Po c #454a4b", +"dpU c #454b40", +"cdG c #454b41", +"bQH c #454b43", +"#1q c #454b44", +"djj c #454b47", +".3b c #454b49", +".Np c #454b4a", +".Lm c #454b4b", +".Xm c #454b4c", +"aMy c #454c44", +"akG c #454c45", +".3# c #454c4a", +".P# c #454c4b", +".W7 c #454c4c", +"#tr c #454d34", +"cP# c #454d42", +"cCc c #454d43", +"cFN c #454d44", +"dCd c #454e4d", +"awo c #454f4c", +"#ts c #455130", +"atG c #45514c", +"aiE c #45514e", +"d6r c #455151", +"ewx c #455153", +"efc c #455254", +"aiF c #455352", +"ehv c #455354", +"#uR c #45551c", +"#SB c #455555", +"e2i c #455656", +"#MJ c #455757", +"dTz c #455758", +"ejX c #455759", +"d8l c #45575b", +"#ao c #455846", +"#hh c #455856", +"dQ2 c #455857", +"#Ca c #45585a", +"d1h c #45595a", +".7c c #455a45", +"e.I c #455b5b", +"#ib c #455c7c", +".Ai c #455d49", +"bgb c #4572ba", +"blH c #458544", +"bqy c #45a138", +"agv c #45a69f", +"ads c #45a8a0", +"#zk c #45b571", +"#Gq c #45b67b", +"#Qw c #45b684", +"#Tg c #45b687", +"fHj c #461c23", +"fEr c #461d23", +"eEm c #461e23", +"e6R c #462321", +"e9Z c #462422", +"eLK c #462722", +"esu c #46272a", +"efU c #46292e", +"fvG c #462a2f", +"eG7 c #462b24", +"eNg c #462b2e", +"em4 c #462b30", +"eBP c #462c2f", +"fvp c #462d33", +"edy c #462f33", +"em5 c #463033", +"dGC c #463232", +"dNu c #463234", +"dAY c #463332", +"d1X c #463536", +"eTQ c #463539", +"dEJ c #463631", +"epq c #463638", +"a7K c #463722", +"eF6 c #463739", +"f1c c #46373a", +"dEg c #46383a", +"d2D c #463931", +"er2 c #463939", +"gbB c #46393c", +"cBs c #463a2b", +"dCw c #463a3c", +"eKF c #463a3d", +"cpW c #463b2e", +"dI8 c #463b34", +"glK c #463b3e", +"eTE c #463b3f", +"bnw c #463c33", +"foJ c #463c3c", +"ehK c #463c3d", +"fu9 c #463c3e", +"a1H c #463d30", +"bF4 c #463d34", +".fV c #463d3c", +"d#B c #463d3e", +".hG c #463e3e", +"d8Z c #463e3f", +"eTD c #463e41", +"c75 c #463f3f", +"dvz c #464037", +"c5A c #464040", +"eZr c #464042", +"bDO c #46413b", +"cQu c #46413e", +"ede c #464143", +"dxr c #464239", +"c2Q c #46423f", +"cZC c #464243", +"dZg c #464244", +"dtN c #46433a", +"cOP c #464340", +"cWZ c #464341", +"cW4 c #464342", +"foG c #464343", +"#k4 c #464344", +".NZ c #464345", +".NY c #464346", +"#h8 c #464347", +"a8d c #464441", +"#pB c #464442", +"#dG c #464443", +".OJ c #464444", +".OH c #464445", +".N0 c #464446", +"#gN c #464447", +"c2W c #46453d", +"csC c #46453e", +"cKu c #46453f", +"cnv c #464540", +"cdp c #464541", +"aZh c #464542", +"cKk c #464543", +"#q6 c #464544", +".hx c #464545", +"#fh c #464546", +".Sp c #464547", +"cL4 c #46463e", +"ch8 c #464641", +"bKD c #464644", +".zA c #464645", +".hn c #464646", +".Fk c #464647", +"Qtx c #464648", +"cKF c #46473f", +"by4 c #464741", +"db4 c #464742", +"aqk c #464744", +".78 c #464746", +".79 c #464747", +"#gX c #464748", +"fcK c #464749", +"dpQ c #46483e", +"cDV c #46483f", +"c8u c #464840", +"bTU c #464841", +"bzS c #464843", +"#ql c #464847", +".QC c #464848", +".OZ c #464849", +"cuh c #464940", +"dbs c #464941", +"bII c #464942", +"#us c #464946", +"#o4 c #464947", +"#j7 c #464948", +".Xo c #464949", +"#aO c #46494a", +".Z7 c #46494c", +"#.e c #46494f", +"cjW c #464a41", +"cur c #464a43", +"bGp c #464a44", +"#qL c #464a47", +"#pY c #464a48", +".XY c #464a49", +".Rz c #464a4a", +"#LS c #464a4b", +".T0 c #464a4c", +"#.d c #464a53", +"bbn c #464b44", +"avN c #464b45", +"a.Z c #464b47", +"#bs c #464b49", +".Zl c #464b4a", +".KG c #464b4b", +".KF c #464b4c", +"#as c #464b4d", +"#uP c #464c23", +"ccw c #464c42", +"cbr c #464c43", +"cGu c #464c44", +"ap7 c #464c45", +"#O3 c #464c48", +"#pG c #464c49", +".87 c #464c4a", +".Jr c #464c4b", +".Jc c #464c4c", +".QY c #464c4d", +"c1u c #464d43", +"bbj c #464d44", +"asR c #464d45", +"a.N c #464d46", +".Xd c #464d4b", +".Re c #464d4c", +".Oo c #464d4d", +"#c4 c #464d5b", +"cC. c #464e43", +"cD3 c #464f44", +"#Lx c #464f4a", +"eOV c #464f50", +"aGK c #465048", +"aGJ c #46504b", +"duw c #46504e", +"aYf c #46504f", +"#wS c #46514b", +"a4c c #46514e", +"d1u c #465152", +".CX c #46515d", +".C0 c #46515f", +"aiC c #465350", +"eTl c #465354", +"#MK c #465556", +"dJ8 c #465655", +"dMy c #465656", +"#.H c #465746", +".9w c #465747", +"#ys c #46585a", +"#js c #465958", +"#C# c #46595a", +"##B c #465a59", +"d6e c #465a5a", +"d8n c #465a5b", +"ecM c #465b5c", +".yH c #466149", +"fT9 c #466dae", +"gv. c #4677b8", +"aCH c #469ab6", +"#ZS c #46af8b", +"#Wk c #46b38a", +"#CX c #46b477", +"#Gb c #46cd2f", +"eI8 c #472127", +"eSb c #472320", +"e6Q c #472321", +"eNj c #47282d", +"exj c #47292a", +"eid c #47292d", +"#Zy c #472a2a", +"euL c #472a2d", +"giO c #472a2e", +"eK0 c #472b2e", +"epN c #472e31", +"ekA c #473034", +"dGB c #473231", +"fyD c #473234", +"d42 c #47332d", +"d2b c #473436", +"cn# c #473522", +"eBy c #473637", +"g#p c #473639", +"eee c #473730", +"dtj c #473737", +"f84 c #47373a", +"bbZ c #473827", +"dKP c #473839", +"e5P c #47383b", +"d0. c #473932", +"foM c #47393b", +"dRB c #47393c", +"b.8 c #473a2c", +"dSo c #473a32", +"dEt c #473a3a", +"f6L c #473a3c", +"dGV c #473b35", +"dnq c #473b3b", +"dw4 c #473c3b", +"fv. c #473c3d", +"foL c #473c3e", +"dSs c #473d35", +"d#x c #473d3e", +"fJe c #473d3f", +"a1G c #473e31", +"dNT c #473e34", +"a7W c #473f33", +"a7Y c #473f34", +"dLu c #473f36", +".ed c #473f3e", +".hI c #473f3f", +"fP. c #473f43", +"cDA c #474035", +"c9y c #474040", +"c9x c #474041", +".kH c #474042", +"eTC c #474043", +"a10 c #474139", +"bDU c #47413c", +"daN c #474141", +"efq c #474142", +".kG c #474143", +"bBN c #47423f", +"dcd c #474243", +".ku c #474244", +"aYF c #474337", +".43 c #474339", +"c1a c #474342", +"gwX c #474343", +"cZA c #474344", +"foF c #474346", +"c5T c #47443d", +".MG c #474445", +".MH c #474446", +"#i8 c #474447", +"dFZ c #474543", +"#mp c #474544", +"#lL c #474545", +".LD c #474546", +".LE c #474547", +".iB c #474548", +"cZ1 c #47463e", +"cfM c #474641", +"cb. c #474642", +"#qz c #474644", +"#qw c #474645", +".ZV c #474646", +".Fm c #474647", +"#gW c #474648", +"a7s c #47473d", +"c1p c #47473f", +"cq. c #474740", +"cPW c #474742", +"bQr c #474743", +"bOn c #474744", +"bMu c #474745", +".ZY c #474746", +".vZ c #474747", +".Io c #474748", +".hs c #474749", +"bFo c #474840", +"c.0 c #474842", +"db6 c #474843", +"btt c #474844", +".Fq c #474847", +".14 c #474848", +".PN c #474849", +"bIJ c #474942", +"ddI c #474943", +"bIB c #474944", +"bw4 c #474945", +"#qk c #474948", +".O. c #474949", +".W2 c #47494a", +".7s c #47494b", +"crO c #474a41", +"bpp c #474a43", +"#o5 c #474a48", +"#ez c #474a49", +".0j c #474a4a", +"bIG c #474b43", +"b0c c #474b44", +"cIn c #474b46", +"#jc c #474b49", +".1u c #474b4a", +".PQ c #474b4b", +"#EO c #474b4c", +".2e c #474b4d", +".5h c #474b4f", +"cnM c #474c42", +"aDU c #474c45", +"ayj c #474c46", +"cIm c #474c47", +"#oE c #474c49", +"#fl c #474c4a", +".LS c #474c4b", +".J2 c #474c4c", +".Ln c #474c4d", +".XE c #474c50", +"cii c #474d43", +"dgP c #474d44", +"aJE c #474d45", +"bk# c #474d46", +"a8k c #474d48", +"djo c #474d49", +"#kj c #474d4a", +".3i c #474d4b", +".IH c #474d4c", +".JK c #474d4d", +"eTv c #474d50", +"#t8 c #474e29", +"a1h c #474e46", +"#4D c #474e47", +".ST c #474e4d", +".RX c #474e4e", +"dkz c #474f44", +"eOW c #474f4d", +"dAe c #475051", +"#uQ c #47511e", +"#H4 c #475149", +"dML c #475152", +"#H2 c #47524b", +"atF c #47524d", +".CY c #475260", +"aiA c #475351", +"eww c #475355", +"ec4 c #475455", +"#sB c #475549", +"#sA c #47554a", +"#sz c #47564b", +"ej2 c #475757", +"#kr c #475958", +"#MI c #475959", +"d1i c #475b5c", +"dYP c #475c5d", +".63 c #475d4a", +".w4 c #475e44", +".62 c #475e4b", +".yg c #47614b", +".6n c #476188", +"auy c #476867", +"aQ8 c #477db1", +"aap c #47a59b", +"#3# c #47b487", +"eRU c #482023", +"eEl c #482226", +"eUH c #482321", +"fTC c #482929", +"fc2 c #48292e", +"g.# c #482a2d", +"fiO c #482a2f", +"eif c #482b2f", +"esk c #482c30", +"eEH c #482d26", +"eKY c #482d30", +"eEL c #482e27", +"ffX c #482e32", +"ebJ c #482f32", +"dZu c #483236", +"dPJ c #483335", +"dUh c #483537", +"dNs c #483636", +"dEI c #483833", +"glO c #48393b", +"f6M c #48393c", +"#Zw c #483b3b", +"e84 c #483d3f", +"fGq c #483d40", +"gbv c #483d41", +"dIb c #483e3f", +"e89 c #483e40", +"chY c #483f34", +"ezd c #483f40", +"dLr c #484037", +".iM c #48403f", +"c9z c #484040", +"c9G c #484041", +"fSg c #484043", +"bzu c #48413b", +".ec c #48413f", +"guC c #484142", +"#V1 c #484143", +"a1Z c #484239", +"c6W c #484242", +"eTB c #484244", +".kt c #484345", +"grj c #484347", +"aYG c #484437", +"bw7 c #484439", +"bza c #48443b", +"djw c #484443", +"cY# c #484444", +".ks c #484445", +".kv c #484446", +"cGS c #48453f", +".hg c #484545", +".Ko c #484546", +"#kf c #484547", +"cRp c #484644", +"#o9 c #484645", +".Kp c #484646", +".MI c #484647", +".Gq c #484648", +"csF c #484742", +"c.R c #484743", +"a2b c #484744", +".ho c #484745", +"#k3 c #484747", +"#ey c #484748", +".iC c #484749", +"fbr c #48474c", +"cNp c #484840", +"b8Z c #484844", +"#qA c #484845", +".hm c #484847", +".uP c #484848", +".9v c #484849", +"#dh c #48484a", +"#vC c #484919", +"cD# c #484943", +"db5 c #484944", +".9u c #484949", +"##l c #48494a", +".rU c #48494b", +"dBm c #484a40", +"crQ c #484a41", +"c2i c #484a43", +"dhJ c #484a44", +"bxI c #484a45", +"ayF c #484a49", +".ZT c #484a4e", +"ce0 c #484b42", +"bV1 c #484b44", +"c9h c #484b45", +"dm1 c #484b46", +"#pw c #484b49", +".XX c #484b4a", +".Xp c #484b4b", +".Yp c #484b4c", +"gxf c #484b4d", +"cDZ c #484c43", +"cjO c #484c44", +"asW c #484c47", +"#nn c #484c4a", +".WD c #484c4b", +".G0 c #484c4c", +".PR c #484c4d", +".5i c #484c4e", +"cbo c #484d44", +"bef c #484d46", +"dmX c #484d49", +"#nB c #484d4a", +"#dV c #484d4b", +".Ms c #484d4c", +".II c #484d4d", +".Pp c #484d4e", +"#Ip c #484d50", +"cnO c #484e44", +"bQI c #484e46", +"bk. c #484e47", +"duF c #484e4a", +"#if c #484e4b", +".3j c #484e4c", +".IT c #484e4d", +".Ls c #484e4e", +".QV c #484e4f", +"akJ c #484f47", +"#1u c #484f48", +".UU c #484f4d", +".P3 c #484f4e", +".Li c #484f4f", +"cCb c #485045", +"cEC c #48504e", +"#OZ c #48514c", +"cCX c #48514d", +"aBK c #48514e", +"aGM c #48524a", +"#Lw c #48524b", +"#H7 c #48524c", +"atH c #48524f", +"dx8 c #485251", +".CZ c #48525f", +"#sF c #485347", +"#Ew c #48534c", +"#wV c #48534d", +"aGI c #48534e", +"a1d c #48534f", +"#sE c #485447", +"#sD c #485448", +"d1v c #485454", +"#sC c #485549", +"#sy c #48564b", +"ej3 c #485656", +"eru c #485657", +".8b c #485848", +"#PR c #485857", +"emo c #485858", +"dMu c #485959", +".2u c #485a49", +"#PQ c #485a5a", +"eY8 c #485b5a", +"#PP c #485b5b", +"eaZ c #485b5c", +"d8m c #485b5e", +"#gR c #485b6a", +"eeW c #485c5c", +"d59 c #485c5d", +".w3 c #485d46", +".ZN c #485d49", +".66 c #485e4c", +".x3 c #48604d", +".Zz c #48624b", +".ye c #48634e", +"#c3 c #486590", +"a3a c #4865b0", +"fHg c #491c23", +"fzs c #491e24", +"fgh c #491f25", +"#Zz c #49201e", +"eNH c #492227", +"e0G c #492322", +"eXv c #492423", +"fZl c #492728", +"eNi c #49292e", +"ekR c #492c2e", +"eCm c #492f28", +"ego c #49312b", +"eNc c #493135", +"dR0 c #493234", +"dGA c #493532", +"dGx c #493635", +"eGa c #493738", +"drc c #49383b", +"dK2 c #493938", +"gdE c #49393c", +"eps c #493a3a", +"dZr c #493a3c", +"dCu c #493a3d", +"dGv c #493b3b", +"dZ9 c #493c34", +"dpi c #493c3d", +"eTJ c #493d3f", +"cu1 c #493e31", +"ehN c #493e3f", +"cBE c #493f37", +"dlC c #493f40", +"gvB c #493f43", +"bF1 c #494034", +".ee c #49403f", +".iL c #494040", +"eBl c #494041", +".hF c #494141", +"a7Z c #494236", +"guD c #494243", +".kI c #494244", +"aYQ c #494339", +"c6M c #494343", +".kx c #494344", +".bJ c #494345", +".kF c #494346", +"dyp c #494444", +".kr c #494445", +".kq c #494446", +"cSI c #494544", +"cWY c #494545", +"#b7 c #494546", +"cGM c #49463f", +"aY6 c #494642", +"duS c #494645", +"#cr c #494646", +".iD c #494647", +"a1s c #49473d", +"cQe c #494745", +"cVu c #494746", +"#oB c #494747", +".fy c #494748", +".iv c #494749", +"c4w c #494841", +"cFs c #494843", +"cdq c #494844", +".Fd c #494845", +"cOK c #494846", +".Wa c #494847", +".g0 c #494848", +".hc c #494849", +".QB c #49484a", +"feg c #49484c", +"fql c #49484d", +"fha c #49484e", +"cKz c #494941", +"by9 c #494943", +"ca8 c #494944", +"cIF c #494945", +"atd c #494946", +"av1 c #494947", +".S3 c #494948", +".yq c #494949", +".1. c #49494a", +"#cq c #49494b", +"c7g c #494a41", +"by8 c #494a44", +"bwZ c #494a46", +"ace c #494a47", +".8. c #494a49", +"#.f c #494a4a", +".84 c #494a4b", +".p# c #494a4f", +"dBn c #494b41", +"bxK c #494b46", +"#rB c #494b4a", +".YY c #494b4b", +".1a c #494b4c", +".pZ c #494b4e", +"crR c #494c43", +"chl c #494c45", +"#qp c #494c4a", +".6P c #494c4b", +".WC c #494c4c", +".HX c #494c4d", +"cvo c #494d43", +"aPz c #494d46", +"#uu c #494d4a", +"#o6 c #494d4b", +".Hz c #494d4c", +".HW c #494d4d", +".Yo c #494d4e", +".S7 c #494d4f", +".4b c #494d50", +".7u c #494d51", +"cbp c #494e44", +"cFD c #494e45", +"b.u c #494e47", +"#d. c #494e4c", +".Mr c #494e4d", +".KE c #494e4e", +".NI c #494e4f", +"#c7 c #494e5a", +"cbq c #494f44", +"cbn c #494f45", +"bQJ c #494f47", +"cEI c #494f4a", +"cJY c #494f4b", +"#bO c #494f4d", +".K8 c #494f4e", +".KX c #494f4f", +".SL c #494f50", +"b.l c #495047", +"asQ c #495048", +"#4E c #495049", +"ap4 c #49504a", +".RO c #49504e", +".Ne c #49504f", +".Pi c #495050", +"cCa c #495146", +"aJD c #495149", +"dFR c #495150", +"ct6 c #495151", +"#Ly c #49524d", +"ayT c #49524f", +"#sG c #495347", +"#H6 c #49534c", +"#Ey c #49534d", +"a1# c #495352", +"eKr c #495354", +"#UM c #49544d", +"#AY c #49544e", +"aJB c #49544f", +"a4d c #495450", +"a7d c #495451", +"a1a c #495453", +"dME c #495454", +"#cD c #495466", +"aiB c #495553", +"alf c #495654", +"#VF c #495959", +"#mB c #495a55", +"dYY c #495a5a", +"#MH c #495b5b", +"#Jj c #495b5c", +"#Ji c #495b5d", +"#e6 c #495b69", +".0t c #495c4c", +"dTx c #495c5d", +"#FG c #495c5e", +"#ir c #495d5b", +"d1j c #495d5e", +".64 c #495e4d", +"eeT c #495e5f", +".yo c #495f4c", +"#ay c #496795", +"fW1 c #4972b5", +"boB c #497d4d", +"bdt c #4a129c", +"eLn c #4a2127", +"eLj c #4a2326", +"eNG c #4a232a", +"e3E c #4a2423", +"eLl c #4a2429", +"e9D c #4a242c", +"fKy c #4a2525", +"eGG c #4a272c", +"e6a c #4a282e", +"euU c #4a2a2d", +"eJq c #4a2b26", +"eNh c #4a2c30", +"eG6 c #4a2d27", +"esl c #4a2d31", +"fiM c #4a2d33", +"eKZ c #4a2e31", +"edL c #4a2f31", +"eDW c #4a3033", +"eiJ c #4a322c", +"d2c c #4a3335", +"efN c #4a3336", +"dWT c #4a3637", +"frZ c #4a3639", +"aoO c #4a3738", +"d4o c #4a3739", +"dw6 c #4a3839", +"b.Q c #4a3a22", +"dw7 c #4a3a36", +"eZJ c #4a3a3b", +"dIk c #4a3a3c", +"eBn c #4a3a3d", +"eTP c #4a3a3e", +"erX c #4a3b3c", +"dIg c #4a3b3d", +"ewN c #4a3b3e", +"dKH c #4a3c3c", +"eBm c #4a3c3e", +"djZ c #4a3e3e", +"fPc c #4a3e42", +"eug c #4a3f40", +"dG. c #4a3f41", +"eRh c #4a3f43", +"eDD c #4a4040", +"eP# c #4a4041", +"cDw c #4a4133", +"cfC c #4a4137", +"dgp c #4a4140", +".fU c #4a4241", +"c4g c #4a4242", +".jN c #4a4244", +"eMP c #4a4245", +"c6L c #4a4343", +"d#j c #4a4344", +".bK c #4a4345", +"c6K c #4a4444", +".kp c #4a4446", +".kw c #4a4447", +"dBe c #4a453b", +".ko c #4a4546", +".bI c #4a4547", +".jE c #4a4548", +"d#d c #4a4645", +".g5 c #4a4646", +"d1G c #4a4647", +".jA c #4a4648", +"aVN c #4a473b", +"dnQ c #4a4740", +"c4p c #4a4745", +".he c #4a4747", +"d1F c #4a4748", +".iI c #4a4749", +"cOV c #4a4844", +".hl c #4a4846", +"#nr c #4a4847", +"cVt c #4a4848", +".#A c #4a4849", +".CV c #4a484a", +"cL0 c #4a4943", +"cq# c #4a4944", +"cKq c #4a4945", +"cSD c #4a4946", +".hk c #4a4947", +".hh c #4a4948", +".fC c #4a4949", +".0p c #4a494a", +".hf c #4a494b", +".hr c #4a494c", +"cQy c #4a4a42", +"dnR c #4a4a43", +"aP5 c #4a4a47", +"bBU c #4a4a48", +".hj c #4a4a49", +".tr c #4a4a4a", +".GF c #4a4a4b", +"##k c #4a4a4c", +"cfU c #4a4b45", +"b1d c #4a4b46", +".NX c #4a4b49", +".0s c #4a4b4a", +"#aP c #4a4b4b", +".6p c #4a4b4c", +"#.G c #4a4b4d", +".pQ c #4a4b4e", +"cKG c #4a4c43", +"bwW c #4a4c46", +"dhH c #4a4c47", +"#tm c #4a4c4a", +"#q3 c #4a4c4b", +".GK c #4a4c4c", +".GL c #4a4c4d", +"ffw c #4a4c4e", +".o9 c #4a4c50", +"cmu c #4a4d44", +"bKM c #4a4d46", +"ab6 c #4a4d48", +"dm0 c #4a4d49", +"#lE c #4a4d4b", +"#r5 c #4a4d4c", +".GR c #4a4d4d", +".HV c #4a4d4e", +".S8 c #4a4d50", +"cC6 c #4a4e47", +"#mv c #4a4e4c", +".LO c #4a4e4d", +".T4 c #4a4e4e", +"#U3 c #4a4e4f", +"eTx c #4a4e50", +"#t9 c #4a4f28", +"c5X c #4a4f45", +"bA3 c #4a4f48", +"a5p c #4a4f4b", +"#cG c #4a4f4d", +".IJ c #4a4f4e", +".Lt c #4a4f4f", +".Lr c #4a4f50", +"ffv c #4a4f51", +"c4C c #4a5045", +"ceQ c #4a5046", +"dgQ c #4a5047", +"b88 c #4a5049", +"cC3 c #4a504c", +"#eF c #4a504d", +"dwq c #4a504e", +".Jq c #4a504f", +".Lo c #4a5050", +".Q0 c #4a5051", +"eTw c #4a5053", +"cD6 c #4a5147", +"ap1 c #4a5149", +"#X6 c #4a514a", +".Ts c #4a514f", +".QU c #4a5150", +".KW c #4a5151", +"cJc c #4a5246", +"c0. c #4a5247", +"#X1 c #4a524b", +".Jy c #4a5251", +"gxm c #4a525f", +"drW c #4a5348", +"#UN c #4a534f", +"cA1 c #4a5352", +"a7c c #4a5453", +"bJC c #4a5455", +".Bk c #4a5460", +"aYi c #4a5551", +"aYg c #4a5554", +"#f. c #4a5560", +"dMA c #4a5757", +"ea4 c #4a5758", +"eyW c #4a5759", +"afJ c #4a5858", +".7B c #4a5870", +"emq c #4a5959", +".1x c #4a5a4b", +"#le c #4a5b5a", +".YI c #4a5b63", +".65 c #4a5c4d", +"#FF c #4a5c5e", +"d1n c #4a5d5b", +"eFx c #4a5d5d", +"dW# c #4a5d5e", +"d3R c #4a5e5d", +"d3K c #4a5e5f", +".Dt c #4a5f4b", +".DK c #4a5f4c", +"#cf c #4a658f", +"cqS c #4ab75a", +"#ZA c #4b1613", +"fwg c #4b1b21", +"fN. c #4b1b23", +"fsL c #4b1c22", +"fKe c #4b1d25", +"fKf c #4b1f26", +"fEs c #4b2026", +"eXf c #4b2227", +"eLk c #4b2428", +"ggK c #4b2a30", +"euK c #4b2d31", +"fiL c #4b2e33", +"efX c #4b3033", +"ezG c #4b3034", +"edH c #4b3134", +"eQj c #4b322b", +"eh6 c #4b3236", +"efL c #4b3237", +"fyE c #4b3437", +"dPI c #4b3737", +"d4F c #4b373a", +"dRM c #4b383a", +"aOm c #4b38c2", +"eiM c #4b3932", +"ePh c #4b393b", +"eBt c #4b3b3e", +"dte c #4b3c3e", +"eWG c #4b3d3d", +"e#k c #4b3d40", +"ecb c #4b3e35", +"dXw c #4b3e36", +"eZL c #4b3e3e", +"e88 c #4b3e40", +"bUJ c #4b3f31", +"bWN c #4b3f33", +"fGr c #4b4041", +"ePa c #4b4042", +"dB. c #4b413b", +"dep c #4b4140", +"eO7 c #4b4142", +"eRg c #4b4145", +"b8g c #4b4230", +"dI9 c #4b423a", +".bZ c #4b4242", +"dgi c #4b4243", +".jO c #4b4245", +"d99 c #4b4338", +".T1 c #4b4339", +"da7 c #4b4341", +".eb c #4b4342", +".bY c #4b4343", +".jT c #4b4344", +"cDm c #4b4438", +"bDV c #4b443f", +"c9w c #4b4444", +".jM c #4b4446", +"eRf c #4b4447", +"c08 c #4b4545", +".d1 c #4b4546", +".ky c #4b4547", +".kn c #4b4548", +"dBf c #4b463d", +"bBM c #4b4642", +"gvz c #4b4646", +"dWA c #4b4647", +".kz c #4b4648", +".kE c #4b4649", +"aYJ c #4b473b", +"dM0 c #4b4746", +"gw0 c #4b4747", +"#cT c #4b4748", +".bH c #4b4749", +"fu4 c #4b474a", +"dcR c #4b4841", +"cOR c #4b4844", +"cVy c #4b4847", +".hd c #4b4848", +".#z c #4b4849", +".#y c #4b484a", +".#B c #4b484b", +"bJW c #4b493f", +"b8Y c #4b4946", +".44 c #4b4947", +".ha c #4b4949", +".bu c #4b494a", +".#D c #4b494b", +"b.x c #4b4a43", +"cDO c #4b4a45", +"ch6 c #4b4a46", +"ckQ c #4b4a48", +".h# c #4b4a4b", +".ub c #4b4a4c", +"cz4 c #4b4b45", +".8# c #4b4b49", +".tl c #4b4b4a", +".vX c #4b4b4b", +".N9 c #4b4b4c", +".27 c #4b4b4d", +".oJ c #4b4b4e", +"f.H c #4b4b50", +"cB0 c #4b4c44", +"bHH c #4b4c45", +"cj5 c #4b4c46", +".0Y c #4b4c49", +".MF c #4b4c4b", +".5k c #4b4c4c", +".GN c #4b4c4d", +"dDd c #4b4d42", +"cU9 c #4b4d46", +"bxJ c #4b4d48", +"#1L c #4b4d49", +"a#. c #4b4d4a", +"#sq c #4b4d4b", +"#r4 c #4b4d4c", +".GM c #4b4d4d", +".GO c #4b4d4e", +".pr c #4b4d4f", +".pC c #4b4d51", +"cIq c #4b4e46", +"bKO c #4b4e47", +"#q4 c #4b4e4c", +"#kb c #4b4e4d", +".GP c #4b4e4e", +".GU c #4b4e4f", +".Sh c #4b4e51", +"cnL c #4b4f45", +"#no c #4b4f4d", +".Su c #4b4f4e", +".IK c #4b4f4f", +".Sf c #4b4f52", +"bpj c #4b5049", +"asS c #4b504a", +"c17 c #4b504b", +"btC c #4b504c", +"doD c #4b504d", +"#du c #4b504e", +".IL c #4b504f", +".Ma c #4b5050", +".Mb c #4b5051", +"ccr c #4b5147", +"#1p c #4b514a", +"cA6 c #4b514c", +"cIl c #4b514d", +"dwt c #4b514e", +"#bd c #4b514f", +".L# c #4b5150", +".Jw c #4b5151", +".Ug c #4b5152", +"#sI c #4b5247", +"aGW c #4b524a", +"#7A c #4b524b", +".Tr c #4b5250", +".La c #4b5251", +".KJ c #4b5252", +"eRa c #4b5254", +"#sH c #4b5347", +"dcZ c #4b5348", +"#1z c #4b534c", +"#sx c #4b534d", +".7C c #4b5363", +"dpW c #4b5449", +"cA2 c #4b5453", +"eIa c #4b5455", +"dTQ c #4b5456", +".2V c #4b545a", +"#Lv c #4b554d", +"bd3 c #4b5554", +"a1b c #4b5555", +"eKs c #4b5556", +".Bn c #4b5563", +"aJA c #4b5650", +"awp c #4b5652", +"b14 c #4b5653", +".Bm c #4b5664", +"an1 c #4b5754", +"dTO c #4b5757", +"etV c #4b5758", +"acI c #4b5959", +"aZ7 c #4b59a7", +"eo0 c #4b5a5a", +".67 c #4b5c4d", +"#dr c #4b5c7b", +".vz c #4b5d49", +"ehe c #4b5d5d", +"#Jh c #4b5d5f", +".w2 c #4b5e49", +"dYU c #4b5e5e", +"eaQ c #4b5e61", +"d6. c #4b5f60", +".yG c #4b604f", +".yF c #4b6151", +".5t c #4b615f", +"#cV c #4b616e", +".yf c #4b624f", +"fN8 c #4b699f", +"fRa c #4b6da7", +"#ZC c #4c1316", +"fsM c #4c1d22", +"fBS c #4c2128", +"e0F c #4c2424", +"eLi c #4c242a", +"fzN c #4c2626", +"fi0 c #4c272e", +"fWp c #4c2c2d", +"fvI c #4c2c32", +"eQf c #4c2d28", +"ex# c #4c2f33", +"eEG c #4c312a", +"edz c #4c3538", +"efB c #4c373a", +"dGD c #4c3837", +"ePg c #4c3839", +"d1V c #4c383a", +"dPW c #4c3935", +"dGL c #4c3a36", +"dIS c #4c3a37", +"dEv c #4c3a3a", +"ePj c #4c3a3b", +"dNG c #4c3b36", +"epv c #4c3b3d", +"gvK c #4c3b3f", +"ePi c #4c3c3d", +"dKE c #4c3c3f", +"czy c #4c3f2c", +"dEO c #4c3f39", +"epy c #4c3f3f", +"e85 c #4c3f41", +"f82 c #4c3f42", +"d85 c #4c4042", +"a71 c #4c4134", +"bFX c #4c4137", +"e86 c #4c4143", +"eue c #4c4243", +"dF8 c #4c4244", +"a70 c #4c4337", +".b0 c #4c4343", +".hM c #4c4344", +"dEU c #4c443c", +".ef c #4c4442", +".hL c #4c4444", +".jU c #4c4445", +"fP# c #4c4447", +"a4U c #4c453b", +".kN c #4c4545", +".d2 c #4c4546", +"fL1 c #4c4547", +"aYR c #4c463c", +".kO c #4c4646", +".fI c #4c4647", +".jL c #4c4648", +".kA c #4c4649", +"aYS c #4c473c", +"d#i c #4c4746", +".km c #4c4747", +".d0 c #4c4749", +".kD c #4c474a", +".f5 c #4c4844", +"c1i c #4c4845", +"cVz c #4c4847", +".g4 c #4c4848", +"cVs c #4c4849", +".#x c #4c484a", +".#C c #4c484b", +".hP c #4c4944", +".hQ c #4c4946", +".iz c #4c4948", +"#dj c #4c4949", +".#w c #4c494a", +".#K c #4c494b", +".br c #4c494c", +".h. c #4c4a49", +".ht c #4c4a4a", +".#E c #4c4a4b", +".#J c #4c4a4c", +".#t c #4c4a4d", +"#vD c #4c4b19", +"cBS c #4c4b46", +"c.Q c #4c4b47", +"cdo c #4c4b48", +"cNe c #4c4b49", +"ca6 c #4c4b4a", +".gX c #4c4b4b", +".#F c #4c4b4c", +".g7 c #4c4b4d", +"dxv c #4c4c43", +"cSY c #4c4c44", +"cHe c #4c4c46", +"b65 c #4c4c47", +"#pV c #4c4c4a", +".gQ c #4c4c4b", +".ts c #4c4c4c", +".Sq c #4c4c4d", +".1# c #4c4c4e", +"cmK c #4c4d47", +"ddH c #4c4d48", +"cP5 c #4c4d49", +".0X c #4c4d4c", +".Fj c #4c4d4d", +".1v c #4c4d4e", +".rN c #4c4d4f", +".oY c #4c4d50", +".o1 c #4c4d51", +"chp c #4c4e45", +"cmJ c #4c4e46", +"c2h c #4c4e47", +"cpn c #4c4e48", +"djq c #4c4e49", +"#7W c #4c4e4b", +"#rC c #4c4e4c", +"#qo c #4c4e4d", +".GQ c #4c4e4e", +".pq c #4c4e4f", +".oQ c #4c4e52", +"cug c #4c4f46", +"cWF c #4c4f48", +"ah4 c #4c4f4a", +"#qn c #4c4f4d", +"#i3 c #4c4f4e", +".Is c #4c4f4f", +".HU c #4c4f50", +".Se c #4c4f52", +"cjN c #4c5048", +"bTT c #4c5049", +"bGq c #4c504a", +"#px c #4c504e", +".WB c #4c504f", +".Te c #4c5050", +".RY c #4c5051", +".Sg c #4c5052", +"c23 c #4c5148", +"b9V c #4c5149", +"bbo c #4c514a", +"bld c #4c514b", +"aQ# c #4c514d", +"#bc c #4c514f", +".K. c #4c5150", +".Jx c #4c5151", +".Jb c #4c5152", +"#sK c #4c5246", +"#sJ c #4c5247", +"cZ6 c #4c5248", +"cha c #4c524b", +"a#m c #4c524d", +"#LB c #4c524e", +"#aC c #4c5250", +".No c #4c5251", +".Ja c #4c5252", +".QZ c #4c5253", +"gzI c #4c525a", +"c1t c #4c5349", +"b.m c #4c534b", +"#7F c #4c534c", +"cOr c #4c534d", +".UT c #4c5351", +".Nd c #4c5352", +".J# c #4c5353", +".7F c #4c5363", +"c25 c #4c5449", +"br# c #4c544d", +"cEE c #4c5452", +".83 c #4c5466", +"c0# c #4c5549", +"#H8 c #4c5550", +"#i. c #4c555b", +".7D c #4c5568", +"bd2 c #4c5655", +"dx5 c #4c5657", +".Bl c #4c5663", +"bqm c #4c5751", +"aYj c #4c5753", +"fUP c #4c5759", +"an2 c #4c5856", +"acG c #4c5a5a", +".6R c #4c5b4e", +"eKn c #4c5b5b", +"dQ7 c #4c5c5b", +"ehu c #4c5c5c", +"dOR c #4c5d5c", +"#SA c #4c5e5e", +"eHS c #4c6060", +"d6# c #4c6061", +".ZA c #4c614f", +"dV8 c #4c6161", +"ehf c #4c6162", +"#cC c #4c6289", +"#.a c #4c648d", +".7A c #4c668f", +"#ar c #4c6d82", +"#fd c #4c6f9a", +"#gQ c #4c7595", +"aQ4 c #4c75b6", +"ajm c #4c7777", +"#CH c #4ce21b", +"#20 c #4d0406", +"fM9 c #4d1d25", +"eEn c #4d2429", +"eXu c #4d2525", +"eNC c #4d252c", +"eRV c #4d2628", +"ePL c #4d272e", +"fjA c #4d2827", +"eI4 c #4d282c", +"f7W c #4d2e30", +"ffQ c #4d2e34", +"eQg c #4d2f29", +"ezy c #4d3136", +"edI c #4d3336", +"dW8 c #4d3438", +"eKV c #4d3538", +"dNz c #4d3735", +"eIz c #4d393a", +"dIN c #4d3a37", +"dUt c #4d3a3a", +"dXu c #4d3c35", +"dIj c #4d3c3e", +"arD c #4d3d3e", +"ghN c #4d3d40", +"drd c #4d3e3f", +"ezh c #4d3e41", +"drh c #4d3f3f", +"eWH c #4d3f40", +"eDE c #4d3f41", +"dCv c #4d4042", +".LK c #4d412f", +"dir c #4d4140", +"euf c #4d4143", +"a4K c #4d4232", +"csn c #4d4236", +"dI5 c #4d423b", +"dlW c #4d423f", +"eDB c #4d4243", +"eF4 c #4d4244", +"bc0 c #4d42b1", +"ccL c #4d4331", +"bYO c #4d4336", +"bkV c #4d4338", +".hE c #4d4444", +".bL c #4d4445", +"d#K c #4d4543", +".fX c #4d4544", +".hK c #4d4545", +".iK c #4d4546", +".hz c #4d4646", +".kM c #4d4647", +".hy c #4d4747", +".jB c #4d4748", +".kl c #4d4749", +".kB c #4d474b", +"ddR c #4d4847", +".jD c #4d4849", +".kC c #4d484a", +".bt c #4d484c", +".f6 c #4d4945", +"cZH c #4d4948", +".hb c #4d4949", +".hw c #4d494a", +".#v c #4d494b", +".bv c #4d494c", +"dfU c #4d4a48", +".fF c #4d4a4a", +".#u c #4d4a4c", +".bq c #4d4a4d", +"dvA c #4d4b42", +"cGR c #4d4b44", +"ca9 c #4d4b48", +"bxz c #4d4b49", +"#r8 c #4d4b4a", +".ZS c #4d4b4b", +".fu c #4d4b4c", +".#s c #4d4b4d", +".#r c #4d4b4e", +"cnu c #4d4c47", +"c.P c #4d4c48", +"b22 c #4d4c49", +".0q c #4d4c4a", +"#qH c #4d4c4b", +".gY c #4d4c4c", +".fp c #4d4c4d", +".0r c #4d4c4e", +"fqj c #4d4c51", +"cI1 c #4d4d45", +"bf# c #4d4d49", +"afd c #4d4d4a", +"#p. c #4d4d4b", +".zw c #4d4d4c", +".Eo c #4d4d4d", +".LN c #4d4d4e", +".Ip c #4d4d4f", +".pt c #4d4d50", +"bLH c #4d4e44", +"cOZ c #4d4e46", +"cdv c #4d4e48", +"ddG c #4d4e49", +"dl# c #4d4e4a", +".SW c #4d4e4d", +".FT c #4d4e4e", +".Xq c #4d4e4f", +".oK c #4d4e52", +"cRI c #4d4f46", +"cXZ c #4d4f48", +"bB0 c #4d4f4a", +"#ne c #4d4f4e", +".GJ c #4d4f4f", +".pm c #4d4f52", +".0m c #4d4f56", +"cwV c #4d5047", +"#k. c #4d504e", +".TL c #4d504f", +".H. c #4d5050", +".GV c #4d5051", +".pa c #4d5055", +"cZ5 c #4d5148", +"c.5 c #4d5149", +"bRJ c #4d514a", +"b0d c #4d514b", +"djp c #4d514e", +"#oz c #4d514f", +".Vh c #4d5150", +".Hy c #4d5151", +"#1Z c #4d5152", +"#In c #4d5153", +"b.r c #4d524b", +"aD2 c #4d524c", +"aHv c #4d524e", +".88 c #4d5250", +".J5 c #4d5251", +".J3 c #4d5252", +".NH c #4d5253", +"#sR c #4d5347", +"cdF c #4d5349", +"c5Y c #4d534a", +"dsF c #4d534e", +"#UT c #4d534f", +"#g1 c #4d5350", +"#aB c #4d5351", +".Nc c #4d5352", +".Lp c #4d5353", +".Uf c #4d5354", +"gxg c #4d5359", +"d.h c #4d5449", +"c4D c #4d544a", +"cin c #4d544b", +"ap3 c #4d544c", +"abU c #4d544d", +"cPS c #4d544e", +"#UQ c #4d5450", +".Wp c #4d5453", +".IV c #4d5454", +".C1 c #4d545e", +"cD2 c #4d554a", +"#XZ c #4d554d", +"awn c #4d5552", +"dO6 c #4d5657", +"#OX c #4d574f", +"a1c c #4d5755", +"bg8 c #4d5756", +"dut c #4d5757", +"bHn c #4d5758", +".7E c #4d576c", +"bqn c #4d5852", +"##4 c #4d594e", +"afE c #4d5956", +"aiz c #4d5957", +"acF c #4d5a5a", +"eBa c #4d5a5c", +"dB5 c #4d5b5b", +"e2j c #4d5b5c", +"#lY c #4d5c5c", +".ZB c #4d5f50", +".ZC c #4d5f51", +".ZD c #4d5f52", +"#C. c #4d5f61", +".ZE c #4d6050", +"eeU c #4d6063", +"#hl c #4d615f", +"d3L c #4d6162", +"ehg c #4d6164", +"eDb c #4d6363", +"#e9 c #4d6578", +".wA c #4d6851", +"#fH c #4d709f", +"d0K c #4d8753", +"#Wd c #4dab6f", +"fHk c #4e232a", +"eNI c #4e242a", +"eUG c #4e2626", +"eEh c #4e282d", +"a89 c #4e29d4", +"eGJ c #4e2a2e", +"fZn c #4e2e30", +"fse c #4e2f33", +"epO c #4e3236", +"eN8 c #4e332c", +"ef1 c #4e3336", +"eEM c #4e342d", +"eh7 c #4e3439", +"dUw c #4e3539", +"enL c #4e3730", +"fyF c #4e373c", +"dPK c #4e3839", +"eKU c #4e383c", +"d4n c #4e3a3c", +"chT c #4e3b1e", +"dRY c #4e3b3c", +"ebq c #4e3b3f", +"al4 c #4e3b41", +"gjR c #4e3e41", +"dNN c #4e3f38", +"fGs c #4e3f42", +"dph c #4e4041", +"fVc c #4e4043", +"dEM c #4e413b", +"cng c #4e4235", +"czL c #4e4236", +"e87 c #4e4244", +"dGZ c #4e433e", +"fAW c #4e4345", +"fL4 c #4e4346", +"czs c #4e4437", +"dcn c #4e4445", +"bIl c #4e4538", +".fY c #4e4544", +".bX c #4e4545", +".jS c #4e4546", +".jP c #4e4547", +"cDz c #4e463b", +".ea c #4e4645", +".fS c #4e4646", +".hD c #4e4647", +".d9 c #4e4746", +".fT c #4e4747", +".kL c #4e4748", +".kk c #4e4749", +"dLv c #4e483d", +".kQ c #4e4848", +"bHN c #4e493d", +".iS c #4e4945", +".f4 c #4e4946", +".iT c #4e4947", +".fH c #4e494a", +".jF c #4e494b", +".bs c #4e494c", +".bx c #4e494e", +"aYE c #4e4a3f", +"cQk c #4e4a48", +"cZI c #4e4a49", +"eO3 c #4e4a4b", +".bG c #4e4a4c", +".bw c #4e4a4d", +"dma c #4e4b43", +"cYf c #4e4b49", +".g8 c #4e4b4c", +".#G c #4e4b4d", +".#H c #4e4b4e", +"#vE c #4e4c19", +"cBW c #4e4c48", +".iy c #4e4c4c", +".#I c #4e4c4d", +".#q c #4e4c4e", +".p5 c #4e4c4f", +"drK c #4e4d43", +"bBc c #4e4d46", +"csG c #4e4d48", +"ckR c #4e4d49", +"cp4 c #4e4d4b", +".zQ c #4e4d4c", +".gZ c #4e4d4d", +".#p c #4e4d4e", +".fm c #4e4d4f", +".qk c #4e4d50", +"ber c #4e4e45", +".SV c #4e4e4c", +".g6 c #4e4e4d", +".gP c #4e4e4e", +".fA c #4e4e4f", +".Sd c #4e4e50", +".oZ c #4e4e52", +"#zA c #4e4e65", +"dcV c #4e4f47", +"cPY c #4e4f49", +"bYZ c #4e4f4a", +"#pQ c #4e4f4e", +".Ba c #4e4f4f", +".VS c #4e4f50", +".pA c #4e4f51", +".o6 c #4e4f54", +"c3S c #4e5049", +"dla c #4e504b", +"duK c #4e504d", +"afk c #4e504f", +".TM c #4e5050", +".HY c #4e5051", +".Rp c #4e5052", +"crN c #4e5148", +"bMA c #4e514a", +"#lF c #4e5150", +".GW c #4e5151", +".oP c #4e5152", +"cjM c #4e524a", +"ccD c #4e524c", +"dl. c #4e524e", +".TK c #4e5251", +".HZ c #4e5252", +"#Yz c #4e5254", +"fcI c #4e5255", +"aA7 c #4e534c", +"ab3 c #4e534d", +"dsH c #4e534f", +"dmZ c #4e5350", +"#k7 c #4e5351", +".J4 c #4e5352", +".J9 c #4e5353", +".Lu c #4e5354", +"che c #4e544a", +"bkb c #4e544d", +"#LC c #4e5450", +"cwN c #4e5451", +".1m c #4e5452", +".Mp c #4e5453", +".KV c #4e5454", +".Wt c #4e5455", +"aDR c #4e554d", +"a.O c #4e554e", +"ahS c #4e554f", +"#X3 c #4e5550", +".Jg c #4e5554", +".KS c #4e5555", +"cQH c #4e564a", +"cD4 c #4e564b", +"dpX c #4e564c", +"bC7 c #4e564e", +"#xd c #4e5655", +"#k6 c #4e565c", +"#O0 c #4e5752", +"#A9 c #4e5754", +"dFK c #4e5759", +"aJC c #4e5850", +"#Ez c #4e5852", +"aYh c #4e5856", +"a4b c #4e5857", +"dwe c #4e5859", +"eZe c #4e585a", +"bql c #4e5953", +"aVe c #4e5955", +"bjZ c #4e5958", +"d33 c #4e595a", +"fR0 c #4e595b", +"btS c #4e5a54", +"fUQ c #4e5a5c", +"dMD c #4e5c5c", +".6m c #4e5c6b", +"dHO c #4e5d5c", +"acH c #4e5d5d", +"a6. c #4e5da9", +"eA8 c #4e5e5e", +".vB c #4e5f4a", +"dTD c #4e5f5e", +"dWd c #4e6060", +"eVY c #4e6062", +"dYV c #4e6160", +"ejM c #4e6161", +"ehh c #4e6163", +"ejN c #4e6165", +"d1m c #4e6260", +"eeV c #4e6262", +".Tg c #4e6263", +"ecN c #4e6265", +".4o c #4e6462", +"#dq c #4e6694", +".82 c #4e6698", +"#c6 c #4e6794", +"#c5 c #4e6796", +".81 c #4e6798", +".wk c #4e6850", +".80 c #4e6898", +".8Z c #4e6998", +"#gT c #4e709d", +"#fF c #4e719c", +"#fB c #4e799c", +"coA c #4eb552", +"aoU c #4f0000", +"#vq c #4f1d19", +"faG c #4f1f25", +"ePT c #4f2026", +"fds c #4f2127", +"eGN c #4f242b", +"fNs c #4f2a2c", +"eRL c #4f2a30", +"e9Y c #4f2c2a", +"eLJ c #4f2e29", +"es. c #4f3437", +"fvw c #4f353c", +"dR1 c #4f3639", +"ebD c #4f363a", +"d7. c #4f393d", +"dGy c #4f3c39", +"dGM c #4f3d39", +"dW5 c #4f3d3d", +"f4b c #4f3d40", +"eTO c #4f3e42", +"dXv c #4f3f38", +"dCP c #4f3f3c", +"dwY c #4f3f3f", +"fve c #4f3f42", +"bSv c #4f4132", +"eur c #4f4241", +"dF9 c #4f4244", +"eIn c #4f4345", +"dC1 c #4f443e", +"eDC c #4f4546", +"gpo c #4f4549", +"a1I c #4f4639", +".fW c #4f4645", +".fZ c #4f4646", +".hJ c #4f4647", +".bW c #4f4746", +".d8 c #4f4747", +".fJ c #4f4748", +"a7V c #4f483c", +".e# c #4f4846", +".e. c #4f4847", +".d3 c #4f4848", +".kJ c #4f4849", +".iJ c #4f4949", +"gwU c #4f494a", +".kh c #4f494b", +".kg c #4f494c", +".hO c #4f4a45", +"dyo c #4f4a4a", +".#L c #4f4a4b", +".jC c #4f4a4c", +".by c #4f4a4e", +"c5w c #4f4b4a", +"c00 c #4f4b4b", +"cZz c #4f4b4c", +".bo c #4f4b4d", +".bp c #4f4b4e", +".bB c #4f4b4f", +"cE5 c #4f4c40", +"a4w c #4f4c41", +"bBh c #4f4c42", +"dzc c #4f4c43", +".ir c #4f4c4c", +".k7 c #4f4c4d", +".uc c #4f4c4e", +".bA c #4f4c4f", +"bRP c #4f4d40", +"bDl c #4f4d44", +"bG. c #4f4d49", +".hp c #4f4d4c", +".dJ c #4f4d4d", +".#o c #4f4d4e", +".fv c #4f4d4f", +"cZ2 c #4f4e46", +"cFn c #4f4e49", +"b8X c #4f4e4a", +"cIE c #4f4e4b", +"cnn c #4f4e4c", +".g1 c #4f4e4d", +".#n c #4f4e4e", +".#m c #4f4e4f", +".l4 c #4f4e50", +"bbr c #4f4f47", +"aSZ c #4f4f4a", +"b64 c #4f4f4b", +"aT# c #4f4f4c", +".R1 c #4f4f4d", +".z5 c #4f4f4e", +"Qty c #4f4f4f", +".MU c #4f4f50", +".Xr c #4f4f51", +"#sQ c #4f5047", +"dzg c #4f5048", +"cdw c #4f504a", +"cP4 c #4f504b", +"#ss c #4f504d", +"#sw c #4f504e", +".B# c #4f504f", +".MC c #4f5050", +".MA c #4f5051", +".pB c #4f5052", +".pR c #4f5053", +"#u. c #4f5128", +"#sL c #4f5148", +"ben c #4f514b", +"#st c #4f514c", +"#4Z c #4f514e", +"#46 c #4f5150", +".SU c #4f5152", +".pU c #4f5155", +"cuf c #4f5249", +"crU c #4f524a", +"bMB c #4f524b", +"#Yt c #4f5251", +".Hn c #4f5252", +".G7 c #4f5253", +"fir c #4f5254", +".p0 c #4f5257", +"#sS c #4f5347", +"cTI c #4f534c", +"asT c #4f534d", +".HN c #4f5352", +".GX c #4f5353", +".Qf c #4f5354", +"#L1 c #4f5356", +"ceO c #4f544a", +"bej c #4f544d", +"b2h c #4f544e", +"#14 c #4f5450", +"#jh c #4f5452", +".J6 c #4f5453", +".K# c #4f5454", +".Lq c #4f5455", +"cl# c #4f554b", +"aGQ c #4f554d", +"bFg c #4f554e", +"dws c #4f5551", +"duE c #4f5552", +".5q c #4f5553", +".Mq c #4f5554", +".J. c #4f5555", +"#Bb c #4f5556", +"cbm c #4f564b", +"aGV c #4f564e", +"#7C c #4f564f", +"akI c #4f5650", +".IU c #4f5655", +".Zj c #4f5656", +"cPa c #4f574b", +"dpY c #4f574e", +"akH c #4f5750", +"cYz c #4f584c", +"#H9 c #4f5853", +"#UO c #4f5854", +"ayV c #4f5855", +"bo9 c #4f5857", +"b.# c #4f5958", +"bHo c #4f595a", +"aGH c #4f5a54", +"aVf c #4f5a56", +"aqO c #4f5b58", +".WG c #4f5c66", +"afK c #4f5d5d", +"dHL c #4f5e5e", +"efb c #4f5e60", +".ZF c #4f5f51", +"dOS c #4f5f5f", +"erq c #4f5f60", +".y2 c #4f604d", +".CI c #4f6050", +"eH7 c #4f6060", +"#MG c #4f6161", +"#yr c #4f6163", +"eKc c #4f6264", +".6. c #4f6267", +"#hj c #4f6361", +"##X c #4f6364", +"emb c #4f6566", +".wT c #4f6852", +"#gU c #4f72a1", +"#fC c #4f7594", +"agp c #4fa893", +"fHf c #502129", +"fjj c #502226", +"fo5 c #50272f", +"eB1 c #50282c", +"fo4 c #502a31", +"e9X c #502b2a", +"eQe c #502f2b", +"fvF c #503238", +"fo0 c #503336", +"dPM c #50383a", +"euu c #50393c", +"ehW c #503b3f", +"dGw c #503d3e", +"gv4 c #503d3f", +"ePf c #503d40", +"f1g c #503d41", +"f6P c #503e41", +"egs c #503f39", +"eca c #504038", +"dCS c #50403d", +"fX5 c #504043", +"eTW c #504141", +"eZK c #504142", +"ebk c #504145", +"dpg c #504243", +"gbz c #504445", +"gfD c #504446", +"erQ c #504447", +"dru c #504544", +"b03 c #504639", +"fDt c #504647", +"eMS c #504648", +"a1N c #50473c", +".f0 c #504746", +".b1 c #504747", +".iN c #504748", +".eh c #504846", +".bV c #504847", +".bM c #504848", +".fO c #504849", +".hC c #50484a", +".ej c #504947", +".d7 c #504948", +".jR c #504949", +".kK c #50494a", +".kj c #50494b", +".VA c #504a40", +"bh6 c #504a41", +".kP c #504a4a", +".kf c #504a4b", +".ki c #504a4c", +"beu c #504b44", +"bKA c #504b47", +".hR c #504b49", +".jy c #504b4c", +".bF c #504b4d", +".k8 c #504b4e", +".bC c #504b4f", +".6# c #504c45", +"cTZ c #504c4b", +".k6 c #504c4c", +".bn c #504c4d", +".bm c #504c4e", +".bz c #504c4f", +".g9 c #504d4d", +".bl c #504d4e", +".bD c #504d4f", +".A7 c #504e4d", +".iw c #504e4e", +".fb c #504e4f", +".aP c #504e50", +"#sv c #504e51", +"cFq c #504f4a", +"cIU c #504f4b", +"b63 c #504f4c", +".zT c #504f4d", +".zP c #504f4e", +".zg c #504f4f", +".#l c #504f50", +".GG c #504f51", +"fnp c #504f54", +"ckZ c #50504a", +"bf. c #50504b", +"dhN c #50504d", +".0Z c #50504e", +".wb c #50504f", +".ti c #505050", +".zf c #505051", +".Iq c #505052", +".zE c #505053", +".og c #505054", +".oR c #505055", +"cKE c #505149", +"b84 c #50514b", +"#su c #50514c", +"dfI c #50514d", +"bk7 c #50514f", +"#k5 c #505150", +".fg c #505151", +".A4 c #505152", +".ps c #505153", +".o0 c #505154", +"brj c #50524d", +"#47 c #505251", +".Ir c #505253", +".pI c #505255", +".qY c #505257", +"#sT c #505347", +"czb c #50534a", +"cGz c #50534c", +"cah c #50534e", +".Rh c #505353", +".H0 c #505354", +"flt c #505355", +"cHl c #50544b", +"cGw c #50544d", +"bvx c #505450", +".Pq c #505453", +".NN c #505454", +".Qg c #505455", +"drS c #50554a", +"b.t c #50554e", +"cWB c #50554f", +"atx c #505550", +"dmY c #505551", +".Ka c #505554", +".J8 c #505555", +"eFS c #505556", +"ca. c #50564c", +"doE c #505651", +"cLB c #505652", +"dqE c #505653", +".9d c #505654", +".K7 c #505655", +".L5 c #505656", +"cB9 c #50574c", +"cih c #50574d", +"dgR c #50574e", +"aMA c #50574f", +"#1o c #505750", +".7K c #505757", +"dpV c #50584d", +"cHy c #50584e", +"cmq c #505851", +"cGq c #505855", +"bm6 c #505858", +".Bo c #505862", +"a1. c #505958", +"bjY c #505959", +".AZ c #505968", +".3x c #505a50", +"bC. c #505a54", +"#w8 c #505a57", +"a7b c #505a58", +"a7a c #505a59", +"atI c #505b57", +"aqM c #505c59", +"an0 c #505c5a", +".4N c #505d51", +".Zn c #505d52", +"dFI c #505e5e", +"#mJ c #505f5e", +".AR c #506052", +"ewt c #506060", +"#VE c #506161", +"eyR c #506264", +"dYQ c #506364", +"d58 c #506365", +".Sw c #506465", +"ejO c #506466", +"ere c #506566", +".wG c #506854", +"fL# c #506b9d", +".XF c #506d77", +".8Y c #5073a9", +"##i c #5075af", +".7z c #5078b4", +"#a3 c #507993", +"#ew c #5081ba", +"#cc c #5082bc", +".98 c #5082bd", +"#z. c #50aa52", +"#JV c #50aa5d", +"coy c #50b75d", +"ftW c #50d379", +"#vt c #511e19", +"fHh c #512129", +"fzu c #51232a", +"e6v c #51252b", +"eSa c #512828", +"eW3 c #512930", +"#tY c #512f29", +"ezR c #513031", +"f2t c #513134", +"e9g c #513137", +"ekI c #513338", +"enb c #513438", +"eCi c #51362f", +"ew3 c #51363b", +"d9u c #51373a", +"epE c #51373b", +"aFL c #5137c4", +"er8 c #51383b", +"dGz c #513c39", +"dWQ c #513c3f", +"dP2 c #513f39", +"dEu c #514041", +"eDG c #514043", +"#2U c #514140", +"eRt c #514142", +"glQ c #514144", +"cxf c #51422d", +"eKH c #514245", +"dGU c #51443e", +"drg c #514444", +"eKG c #514446", +"cmS c #514532", +"bIk c #514536", +"dC0 c #51453f", +"dnl c #514648", +".et c #514744", +"erP c #514747", +"cDx c #514839", +".ei c #514847", +".b2 c #514848", +".jV c #514849", +".UF c #51493c", +".eg c #514947", +".bU c #514948", +".f1 c #514949", +".fN c #51494a", +".jQ c #51494b", +"bs6 c #514a41", +".iR c #514a46", +".eo c #514a48", +".ep c #514a49", +".fR c #514a4a", +".fK c #514a4b", +"gtt c #514a4c", +".f7 c #514b49", +".es c #514b4a", +".ke c #514b4b", +".#M c #514b4c", +"ebf c #514b4d", +".th c #514c44", +"c79 c #514c4c", +".jx c #514c4d", +".bE c #514c4e", +".k9 c #514c4f", +"dBi c #514d44", +".3U c #514d4a", +"cZv c #514d4b", +"c9s c #514d4c", +"efp c #514d4d", +".jv c #514d4e", +".bk c #514d4f", +".bj c #514d50", +"bDn c #514e45", +".iq c #514e4e", +".dH c #514e4f", +".dZ c #514e50", +"bDr c #514f47", +"c5S c #514f48", +"cnt c #514f4a", +".3T c #514f4e", +".dK c #514f4f", +".hq c #514f50", +".#k c #514f51", +".q1 c #514f52", +"cHh c #515049", +"cqf c #51504b", +"b8W c #51504c", +"bDZ c #51504d", +"dfO c #51504e", +".e8 c #51504f", +".#j c #515050", +".fe c #515051", +".fB c #515052", +"bps c #51514c", +"ak1 c #51514f", +".A3 c #515150", +".tm c #515151", +".Fl c #515152", +".N1 c #515153", +".pG c #515155", +"dpO c #515249", +"cJ7 c #51524a", +"b3b c #51524c", +".z4 c #515251", +".A1 c #515252", +".A8 c #515253", +".ox c #515254", +".p. c #515255", +".oO c #515257", +"#sU c #515346", +"cZ4 c #51534a", +"dcU c #51534b", +"bGh c #51534e", +"doL c #51534f", +"#Ym c #515351", +"#70 c #515352", +".Ri c #515353", +".Rg c #515354", +".ow c #515355", +".pP c #515356", +".1w c #515357", +".o2 c #515358", +"dDe c #515449", +"cwT c #51544b", +"chm c #51544d", +"ab5 c #515450", +"#nQ c #515453", +".GY c #515454", +".GZ c #515455", +"cus c #51554e", +"b8# c #51554f", +".HD c #515554", +".OA c #515555", +".Oy c #515556", +"ck9 c #51564c", +"b9Y c #51564e", +"byV c #51564f", +"ae3 c #515650", +"aEy c #515652", +".J7 c #515655", +".Jp c #515656", +".Oz c #515657", +"ccs c #51574d", +"cjJ c #51574f", +"bEb c #515750", +"c18 c #515751", +"dk9 c #515752", +"cC2 c #515753", +".9c c #515755", +".Jo c #515756", +".KU c #515757", +".U1 c #515758", +".7f c #51575c", +"ceS c #51584d", +"bbi c #51584f", +"ap2 c #515850", +"#1r c #515851", +"cAi c #51594e", +"cQI c #51594f", +"ahU c #515951", +"#RU c #515954", +".YL c #51595e", +"dpZ c #515a51", +"cyY c #515a59", +"dWr c #515a5c", +"#A0 c #515b55", +"bsG c #515b59", +"bg9 c #515b5a", +"dz7 c #515b5c", +"eFK c #515c5e", +"alg c #515d5b", +"eMH c #515d5d", +"eDm c #515d5e", +"fRZ c #515e5f", +"dun c #515f5f", +"e5t c #515f60", +".ug c #516050", +"acJ c #516060", +"fIp c #516079", +".uf c #516151", +".5S c #516252", +"#VD c #516363", +"e.K c #516466", +"emc c #516468", +"ecP c #516565", +"eme c #516566", +".wF c #516752", +"#ep c #51677a", +".wz c #516854", +".wl c #516855", +".wS c #516a56", +".ww c #516b56", +".wQ c #516c57", +"#e4 c #517087", +"#fc c #517198", +"#ct c #517289", +"#cz c #5177af", +"#bM c #5177b0", +"#.# c #517bbb", +"#ff c #517cb6", +"#fe c #5180b9", +"#fG c #5180bb", +"coz c #51b85c", +"bcV c #5202fb", +"bgA c #5204a0", +"fQb c #521f28", +"eB2 c #522a2e", +"fo6 c #522a32", +"fQy c #522e30", +"#t1 c #522f29", +"eZ8 c #522f35", +"#2W c #52302e", +"e6. c #523136", +"f5m c #523235", +"faf c #523338", +"eN7 c #52362f", +"#2V c #523837", +"er9 c #52393b", +"eqt c #523c34", +"d1W c #523c40", +"eNb c #523d3f", +"gv8 c #523d40", +"dAX c #523e3d", +"gv7 c #523e41", +"gv6 c #523f41", +"g#q c #523f42", +"dGN c #52403c", +"dIO c #52403d", +"f85 c #524043", +".zu c #524228", +"ckv c #52422a", +"eKI c #524245", +"dKJ c #524344", +"fV# c #524346", +"bWM c #524434", +"fJk c #524447", +"eTK c #524648", +"#JJ c #52464e", +"a4M c #524735", +"cxv c #524739", +"fDs c #524749", +".eu c #524845", +"ezc c #524849", +".b6 c #524948", +".bT c #524949", +".fP c #52494a", +".hA c #52494b", +"cDy c #524a3d", +".cf c #524a48", +".b4 c #524a49", +".d4 c #524a4a", +".fM c #524a4b", +".hB c #524a4c", +".d6 c #524b4a", +".fQ c #524b4b", +".fL c #524b4c", +"glG c #524b4d", +"#vF c #524c19", +"bMo c #524c43", +".#0 c #524c4d", +"aYI c #524d41", +".kd c #524d4e", +".jw c #524d4f", +"a1u c #524e43", +"d#Y c #524e47", +"cSR c #524e4b", +".iA c #524e4e", +".iH c #524e4f", +".jp c #524e50", +".bi c #524e51", +"aVL c #524f44", +"bzy c #524f4a", +".ix c #524f4f", +".it c #524f50", +".ft c #524f51", +"#lM c #525050", +".#i c #525051", +".fs c #525052", +"c5R c #525149", +"c8t c #52514a", +"cKp c #52514d", +".76 c #52514f", +".zS c #525150", +".dX c #525151", +".#h c #525152", +".fG c #525153", +"bBQ c #52524f", +".ff c #525250", +".e9 c #525251", +"QtC c #525252", +".xA c #525253", +".MJ c #525254", +".pS c #525255", +"QtW c #525256", +"cNr c #52534b", +"ckW c #52534d", +"bUR c #52534e", +"anz c #52534f", +".77 c #525350", +"QtD c #525352", +"QtE c #525353", +".GI c #525354", +".np c #525356", +".o8 c #525357", +"#sV c #525446", +"d.c c #52544b", +"cPV c #52544d", +"bBX c #52544f", +"#4Y c #525451", +".fi c #525452", +"a#c c #525453", +".Qk c #525454", +".Qj c #525455", +".pH c #525456", +"cmt c #52554c", +"chk c #52554e", +".HE c #525554", +".H1 c #525555", +".Hm c #525556", +".UA c #525557", +"foB c #525558", +"cf0 c #52564c", +"c22 c #52564d", +".Hl c #525656", +".NM c #525657", +".TZ c #525659", +"beg c #525750", +"ayi c #525751", +"#7L c #525753", +"#ii c #525755", +".Za c #525756", +".NJ c #525757", +"#EU c #525758", +"#Iq c #52575a", +".8T c #52575b", +"cdE c #52584d", +"cf1 c #52584e", +"#4G c #525851", +"duG c #525853", +"#Ih c #525854", +".6w c #525856", +".Zb c #525857", +".I9 c #525858", +".U0 c #525859", +".Ea c #525860", +"cB8 c #52594e", +"bbl c #525951", +"bC6 c #525952", +".0i c #525958", +".1t c #525959", +".D9 c #52595f", +"dc0 c #525a4f", +"ceN c #525a52", +"#xa c #525a56", +"#xc c #525a5a", +"f#T c #525a5c", +"cYA c #525b4f", +"bg7 c #525b5a", +"drX c #525c51", +"#RR c #525c54", +"dwj c #525c5a", +"bbb c #525c5b", +"dwf c #525c5d", +".8U c #525c66", +".4X c #525d52", +".4T c #525d54", +"#wY c #525d57", +"#UL c #525e54", +"bfl c #525e58", +"dWo c #525e5e", +"dR# c #525e5f", +"#a4 c #525e66", +"dOX c #526060", +".7v c #52606f", +"dMz c #526161", +".yN c #526253", +"#Zb c #526262", +"#Za c #526464", +"dWe c #526563", +"erd c #526565", +"eyL c #526567", +"#fZ c #526664", +"d3M c #526667", +"eyK c #526768", +"eoI c #526769", +".wm c #526856", +".wy c #526955", +".wn c #526956", +".wH c #526957", +".wx c #526a55", +".wo c #526a56", +".wI c #526a57", +"a0a c #526aad", +".wp c #526b56", +".wq c #526b57", +".wR c #526c56", +".wL c #526c57", +".7w c #5275a4", +".8W c #5278a8", +"#ce c #527ebd", +".7y c #527ebf", +".7x c #527fbf", +".8X c #5281bf", +"#.. c #5282be", +"#cd c #5282bf", +".99 c #5283be", +"ftX c #52d181", +"fQc c #53212a", +"fQa c #53222b", +"fHi c #53242b", +"#2X c #532624", +"eNF c #532a30", +"fiZ c #532c34", +"fmH c #53302e", +"eic c #533338", +"fai c #533439", +"fc6 c #533539", +"fiQ c #53363a", +"eBI c #53383a", +"dPL c #533b3d", +"d7w c #533e39", +"gv9 c #533e40", +"dZv c #533e41", +"dAW c #533f3e", +"fA6 c #533f41", +"dLa c #53403c", +"gv5 c #534041", +"eds c #534142", +"eTN c #534245", +"bb0 c #534332", +"dGP c #53443f", +"dre c #534444", +"dM9 c #534445", +"fJj c #534447", +"bYN c #534636", +"du7 c #534646", +"ePb c #534648", +"dU0 c #534840", +"djY c #534847", +"dpc c #53484a", +"dQ. c #534940", +".b8 c #534949", +"c9I c #53494a", +"b6m c #534a38", +"#sM c #534a48", +".b3 c #534a49", +".b5 c #534a4a", +".bS c #534a4b", +"fU3 c #534a4c", +"dNW c #534b41", +".hN c #534b47", +".jW c #534b48", +".b7 c #534b49", +".bN c #534b4a", +".bQ c #534b4b", +".iP c #534b4c", +"dBg c #534c45", +".en c #534c4a", +".d5 c #534c4b", +".cp c #534c4c", +".#Z c #534c4d", +".f3 c #534d4c", +".#Y c #534d4d", +".#1 c #534d4e", +"gtr c #534d50", +".#X c #534e4e", +".jz c #534e4f", +".jt c #534e50", +"gpm c #534e51", +"cRu c #534f4d", +"cSH c #534f4e", +".iu c #534f4f", +".jo c #534f50", +".iG c #534f51", +".bh c #534f52", +".k. c #534f53", +"dxs c #535047", +".si c #53504c", +".dP c #535050", +".gU c #535051", +".is c #535052", +".ic c #535053", +"dpM c #535148", +"d#0 c #535149", +"dcT c #53514a", +"aY5 c #53514c", +"#ns c #535150", +".dI c #535151", +".fq c #535152", +".fw c #535153", +".k# c #535155", +"#u# c #535228", +"c4z c #53524a", +".ja c #53524b", +"cp3 c #535250", +"#oC c #535251", +"QtB c #535252", +".d. c #535253", +".Ic c #535254", +".gV c #535255", +"cNk c #53534d", +".40 c #535350", +".y6 c #535351", +"QtA c #535352", +"Qtz c #535353", +".zh c #535354", +".nb c #535355", +".oh c #535356", +".o7 c #535358", +"#sW c #535447", +"dnS c #53544d", +"b69 c #53544e", +"bSD c #53544f", +"QtI c #535452", +"QtJ c #535453", +".uQ c #535454", +".pT c #535456", +".Zm c #535457", +".nm c #535458", +"cOz c #53554d", +"djr c #535550", +"aii c #535554", +"#r6 c #535555", +".H5 c #535556", +".qR c #535559", +".pJ c #53555a", +"d.e c #53564c", +"cnK c #53564d", +"ceW c #53564f", +".G8 c #535656", +".Hk c #535657", +"cue c #53574e", +"cw2 c #535750", +"b6d c #535751", +".Kb c #535756", +".Rf c #535757", +".Qh c #535758", +"b.q c #535851", +"bEa c #535852", +"bfe c #535854", +"#nt c #535857", +".NL c #535858", +"#EQ c #535859", +"cf2 c #53594f", +"duD c #535957", +".0g c #535958", +".UZ c #535959", +".Wu c #53595a", +".y9 c #535960", +".zb c #535961", +"dtZ c #535a4f", +"aME c #535a52", +"#X4 c #535a53", +"cRc c #535a54", +"dhy c #535a57", +".0h c #535a59", +".Xl c #535a5a", +"eRb c #535a5d", +".CQ c #535a66", +"cZ9 c #535b50", +"bC8 c #535b53", +"atE c #535b58", +"dKm c #535b5a", +"b9N c #535c58", +"co5 c #535c5b", +".4U c #535d53", +".4S c #535d54", +".4Q c #535d55", +"bx0 c #535d58", +"a4a c #535d5c", +"dKj c #535d5e", +"#H5 c #535e57", +"aJz c #535e58", +"bsd c #535e5b", +"acE c #535f5f", +".ue c #536054", +"eOP c #536061", +".vC c #536151", +".DW c #536155", +"#nT c #536161", +"fOR c #536162", +"dHN c #536262", +"dz1 c #536362", +"#2y c #536363", +"#2x c #536463", +".wj c #536556", +"#PO c #536565", +"eV0 c #536566", +"ecL c #536666", +"eHZ c #536667", +"ecO c #536669", +"ema c #536767", +"ewl c #536768", +"ewj c #536769", +"ewm c #536869", +"cAG c #53686b", +".0a c #536967", +".wr c #536b57", +".ws c #536b58", +".wJ c #536c56", +".wK c #536c57", +"gxo c #537cae", +".XG c #537f91", +".VW c #53809c", +"#S9 c #53a46c", +"arJ c #54000b", +"b#7 c #5400f8", +"fQd c #54222b", +"fKb c #54232b", +"fpt c #54252b", +"bdA c #54257d", +"fwe c #54262c", +"fEt c #54262d", +"eND c #54292f", +"fi1 c #542c34", +"eBX c #542d30", +"fCd c #542e2e", +"eUe c #542e35", +"e6e c #542f35", +"e6# c #543238", +"efW c #54353a", +"fvy c #54373b", +"es# c #54393c", +"fvx c #54393e", +"dUx c #543a3d", +"eCn c #543b34", +"eKT c #543d41", +"dWS c #543e41", +"dEz c #544040", +"dZw c #544042", +"eIy c #544143", +"dGO c #54423f", +"dGF c #544240", +"emU c #544243", +"dWP c #544244", +"bbK c #54432a", +"cpO c #54432e", +"dNI c #54433f", +"gjQ c #544346", +"egv c #54443c", +"dXt c #54443d", +"czz c #544533", +"dAZ c #544542", +"drf c #544646", +"bpX c #544739", +"dwW c #544747", +"dpf c #544748", +"bOe c #54483b", +"dka c #544844", +"#sN c #544848", +"eTL c #54484a", +"b2X c #54493c", +"e#f c #54494a", +"daY c #54494b", +"gpp c #54494d", +"#sP c #544a47", +".iO c #544a4b", +".cm c #544b49", +".b9 c #544b4a", +".bP c #544b4b", +".iQ c #544b4c", +".ce c #544c4a", +".bR c #544c4b", +".bO c #544c4c", +"d8Y c #544c4d", +".cg c #544d4b", +".ek c #544d4c", +".f2 c #544d4d", +".#N c #544e4e", +".#V c #544e4f", +"a5b c #544f4a", +"ddQ c #544f4e", +".#W c #544f4f", +".jK c #544f50", +".iF c #544f51", +".jG c #544f52", +"dKu c #54504e", +"daL c #54504f", +".dO c #545051", +".j9 c #545052", +".bg c #545053", +"dsU c #545150", +".dL c #545152", +".dY c #545153", +".j8 c #545154", +"aVM c #545246", +"a4v c #545248", +"cRy c #54524c", +"cFu c #54524d", +"cu8 c #545250", +".dR c #545252", +".#g c #545253", +".fl c #545254", +"cNX c #545256", +"cqg c #54534e", +"cKo c #54534f", +"cBO c #545351", +"QtF c #545352", +"QtG c #545353", +".#f c #545354", +".Kn c #545355", +"e4g c #545358", +"cUb c #54544c", +"by6 c #54544f", +"QtH c #545452", +"QtK c #545453", +"QtN c #545454", +".Gs c #545455", +".R2 c #545456", +"gAX c #545458", +"cnF c #54554d", +"cRh c #54554f", +"bQq c #545551", +"QtL c #545553", +"QtP c #545554", +"QtT c #545555", +".no c #545556", +".rG c #545557", +".oW c #545558", +".nq c #545559", +"b1k c #545650", +"dfH c #545651", +"bxO c #545652", +"#1J c #545653", +".WY c #545655", +".Px c #545656", +".H2 c #545657", +".XJ c #545658", +".0l c #545659", +".oX c #54565a", +".pV c #54565b", +"cud c #54574e", +"bOw c #545750", +"#M9 c #545752", +".Pw c #545756", +".H4 c #545757", +".H3 c #545758", +"cYw c #545850", +"c3O c #545851", +"cU5 c #545852", +"a.Y c #545854", +".Hx c #545857", +"#1Y c #545858", +".Mt c #545859", +"beh c #545952", +"bD9 c #545953", +".Pr c #545958", +".NK c #545959", +".E# c #54595f", +".E. c #545960", +"cf3 c #545a50", +"b0a c #545a52", +"bvH c #545a54", +"#O5 c #545a56", +"#EJ c #545a57", +"##x c #545a58", +".Xj c #545a59", +".I8 c #545a5a", +"d#6 c #545b50", +"cig c #545b51", +"aJJ c #545b53", +"#X0 c #545b54", +".Xk c #545b5a", +".Wz c #545b5b", +".Wy c #545b5c", +"diL c #545c51", +".4O c #545d53", +".4P c #545d54", +".4R c #545d55", +"bxY c #545d58", +"c#0 c #545d5a", +"a4# c #545d5c", +"a4. c #545d5d", +".CN c #545d67", +"aVb c #545e5d", +"bJD c #545e5e", +"buo c #545e5f", +"aPn c #545f59", +"btW c #545f5a", +"aS. c #545f5b", +".56 c #546052", +"afD c #54605e", +"dx4 c #546060", +"cCB c #546064", +"a2F c #546261", +"dz2 c #546262", +"e5u c #546263", +"d8E c #546264", +".y3 c #546353", +".55 c #546354", +"dsl c #546463", +".Yr c #546552", +"#iN c #546564", +"dJ4 c #546565", +"eK# c #546767", +"#bF c #546772", +".T5 c #546869", +".Op c #546a68", +".P0 c #546e6b", +".59 c #548ca7", +"#Nn c #54a56a", +"#2Z c #55100f", +"#2Y c #551d1a", +"fM7 c #55222c", +"fM8 c #55232c", +"eRW c #552a2c", +"faD c #552b33", +"a6o c #552bbf", +"eEk c #552d31", +"eS# c #552e2e", +"fTz c #553233", +"f2r c #553337", +"fiP c #55353a", +"gkW c #55383c", +"eN9 c #553a32", +"eLQ c #553a33", +"dR2 c #553b3f", +"eqp c #553f3b", +"dNA c #55403b", +"fyG c #554043", +"fA5 c #554143", +"eDR c #554144", +"ekn c #554145", +"dEC c #554341", +"emV c #554345", +"eDF c #554447", +"ekm c #554545", +"efy c #554547", +"eTM c #554548", +".MR c #55462e", +"dnC c #554642", +"dKO c #554647", +"dLl c #55473f", +"#sO c #554748", +"cBw c #554839", +"d2E c #554840", +".cq c #554948", +"fJf c #554a4c", +".ev c #554b4a", +"ckF c #554c3c", +"eaj c #554c42", +".cl c #554c4a", +".c. c #554c4b", +".c# c #554c4c", +".jX c #554c4d", +".ck c #554d4b", +".cj c #554d4c", +".co c #554d4d", +".jY c #554d4e", +".el c #554e4c", +".em c #554e4d", +".er c #554e4e", +".ad c #554f4e", +".#U c #554f4f", +".#3 c #554f50", +".jJ c #554f51", +".ac c #55504f", +".kc c #555050", +".ju c #555051", +".jI c #555052", +"bPD c #555145", +"bF7 c #55514c", +".jb c #55514e", +"c6G c #555150", +".k5 c #555151", +".dD c #555152", +".dM c #555153", +".bf c #555154", +".be c #555155", +"c8r c #55524b", +"dfT c #555251", +".dE c #555253", +".dQ c #555254", +".kb c #555255", +"#ua c #555328", +"bzD c #555350", +".Qr c #555351", +"czU c #555352", +".gH c #555353", +".e2 c #555354", +".fr c #555355", +".fD c #555356", +"#sX c #555446", +"cKs c #55544f", +"QtO c #555452", +"QtM c #555453", +"QtQ c #555454", +".fx c #555455", +".GH c #555456", +"cRG c #55554d", +"ckV c #555550", +"bOm c #555552", +"QtR c #555553", +"QtS c #555554", +".ii c #555555", +".zR c #555556", +"e1h c #555557", +".oI c #555558", +"cIu c #55564d", +"cql c #55564e", +"cbg c #555650", +"bD0 c #555651", +"#pA c #555654", +".A2 c #555655", +".fh c #555656", +".xv c #555657", +".n5 c #555658", +".pY c #555659", +"bzT c #555752", +"#44 c #555756", +".y7 c #555757", +".pp c #555758", +".pu c #55575a", +"crT c #55584f", +"cIo c #555851", +".NS c #555857", +".Hw c #555858", +".OE c #555859", +".pD c #55585c", +"bbm c #555952", +".Kc c #555958", +".G9 c #555959", +".Mw c #55595a", +"a#g c #55595b", +".x# c #55595d", +"aGZ c #555a53", +"avL c #555a54", +"dwu c #555a56", +".Lv c #555a5a", +"cZ7 c #555b51", +"cjL c #555b54", +"cy8 c #555b57", +"#LN c #555b59", +".Nb c #555b5a", +".VJ c #555b5b", +".Xg c #555b5c", +"#.9 c #555b60", +".Bj c #555b62", +"dtY c #555c51", +"cif c #555c52", +"bOG c #555c53", +".4V c #555c54", +".4W c #555c55", +"#EK c #555c59", +".VO c #555c5b", +".JS c #555c5c", +".CM c #555c67", +"cD5 c #555d52", +"#O2 c #555d59", +"c0a c #555e52", +".4Y c #555e56", +"aBL c #555e5b", +"co6 c #555e5d", +"c#3 c #555f59", +"aYe c #555f5e", +"dsu c #555f5f", +"bF# c #555f60", +"bvR c #55605b", +"aPl c #55605c", +"alh c #55615f", +".YB c #556255", +".EN c #556356", +"dB3 c #556363", +"ec3 c #556364", +"afL c #556464", +".EH c #556557", +".EI c #556558", +"dOT c #556564", +"#Jg c #556667", +"dON c #556767", +"eVZ c #556769", +"eoH c #556868", +"#hc c #556964", +".UH c #55696a", +".wv c #556a57", +"eFy c #556a6c", +"#eh c #556a76", +".wM c #556b59", +".wN c #556c5a", +".QQ c #556f6b", +"fZ2 c #5579b7", +"#ev c #5580b2", +"dVH c #55a05c", +"#Qm c #55a562", +"fqH c #55d57b", +"#y4 c #55fd02", +"fKc c #56222d", +"fBV c #562930", +"eB0 c #562e32", +"eUF c #562f2f", +"eI3 c #562f33", +"e0E c #56302f", +"eZ9 c #563136", +"efT c #56373c", +"edE c #563a3f", +"gw. c #563d40", +"gtX c #564042", +"dWR c #564043", +"gtW c #564144", +"chR c #56422c", +"dEy c #564240", +"dUg c #564243", +"eko c #564245", +"ebp c #564246", +"dIP c #564341", +"ehR c #564345", +"gnK c #564348", +"dP3 c #56453f", +"fM# c #564548", +"du9 c #564646", +"gnJ c #564649", +"a7J c #564733", +"dNO c #564740", +"dWK c #564749", +"gvJ c #56474a", +"b6T c #56493d", +"dGQ c #564943", +"ehO c #564949", +"fJg c #564b4c", +"cDn c #564c41", +".cd c #564c4c", +"epj c #564c4d", +"fSh c #564c50", +".ca c #564d4c", +".cb c #564d4d", +".ch c #564e4c", +".cc c #564e4d", +".hS c #564e4e", +".uy c #564f44", +".eq c #564f4d", +".g# c #564f4e", +".#2 c #564f4f", +".#T c #564f50", +"fU4 c #564f51", +"a1w c #565043", +".#4 c #56504f", +".#S c #565050", +".js c #565051", +".la c #565052", +".jH c #565053", +"ekc c #565150", +".jn c #565151", +".lb c #565152", +".dG c #565153", +".dN c #565154", +"a4x c #565247", +"#s3 c #565248", +"dRq c #565250", +"dlp c #565251", +".gk c #565252", +".dF c #565253", +".dC c #565254", +".bd c #565255", +".bc c #565256", +"dzd c #56534a", +"dcS c #56534c", +"#s4 c #56534f", +".UE c #565352", +".in c #565353", +".hu c #565354", +".dB c #565355", +".d# c #565356", +"#sY c #565446", +"#s0 c #565447", +"c2B c #565452", +".dW c #565454", +".#d c #565455", +".#e c #565456", +".dm c #565457", +"#sZ c #565546", +"dpN c #56554c", +"cIX c #565550", +"b62 c #565551", +"QtU c #565552", +".0o c #565553", +".io c #565554", +".#b c #565555", +".#c c #565556", +".XR c #565557", +".py c #565559", +"fqm c #56555a", +"cXf c #56564e", +"b49 c #565651", +"aqo c #565652", +"cNd c #565653", +".R0 c #565654", +".#a c #565655", +".tn c #565656", +".gR c #565657", +".oe c #565658", +".ne c #565659", +".nH c #56565a", +"dDc c #56574c", +"cz9 c #56574f", +"cbe c #565751", +"b27 c #565752", +"#rg c #565755", +".CT c #565756", +".B. c #565757", +".Ib c #565758", +".ov c #565759", +".nw c #56575a", +".oC c #56575b", +"diJ c #56584f", +"cO0 c #565850", +"cC5 c #565851", +"bzU c #565853", +"#4X c #565855", +"#48 c #565857", +".FN c #565858", +".o. c #56585b", +".o# c #56585c", +".pv c #56585d", +"cwU c #565950", +"cM0 c #565952", +"bGo c #565953", +".NR c #565958", +".H6 c #565959", +".Qi c #56595a", +"ck7 c #565a50", +"cup c #565a53", +"cU6 c #565a55", +"#i6 c #565a59", +".Hj c #565a5a", +".Mx c #565a5b", +".vG c #565a5e", +"bhj c #565b54", +"aWu c #565b57", +"#lR c #565b59", +".OB c #565b5b", +".1b c #565b5c", +"cl. c #565c52", +"bGt c #565c55", +"ddw c #565c57", +".VN c #565c5b", +".I7 c #565c5c", +"cIi c #565c5d", +"a4m c #565d55", +"aYs c #565d56", +"c#4 c #565d57", +".Ow c #565d5d", +"#gP c #565d60", +".za c #565d63", +"cAh c #565e53", +"cFL c #565e54", +"b.k c #565e56", +"#xe c #565e5d", +"eRc c #565e61", +"crE c #565f5e", +"gzC c #565f6c", +"bhf c #566058", +"b.. c #56605f", +"e5z c #566061", +"#UP c #56615d", +"bsH c #566160", +".Aw c #566259", +"ali c #566260", +".vA c #566353", +".EC c #566457", +".ED c #566458", +".EE c #566459", +"dsn c #566464", +"d8F c #566465", +"e.2 c #566466", +".EJ c #566556", +".wB c #566557", +".EF c #566558", +"dB4 c #566565", +".EV c #566656", +".EW c #566657", +".EX c #566658", +"a#K c #566666", +".EY c #566757", +"#5C c #566767", +"#FE c #566769", +"eyQ c #56676a", +"eoJ c #56686d", +".7j c #566873", +"eVX c #56696a", +"d8q c #566a6b", +".8V c #566a7f", +"emd c #566b6b", +"eoM c #566b6c", +".Nh c #566d6a", +".RL c #566f6c", +".IS c #566f6e", +"#b8 c #56778d", +".7i c #5684a1", +".30 c #568ab5", +".WK c #5694af", +"#Gh c #56a461", +"crp c #56be62", +"fqI c #56d281", +"am. c #570008", +"fsN c #57242a", +"fM6 c #57242d", +"fKd c #57242e", +"eNJ c #572830", +"eI9 c #572c32", +"eNE c #572d32", +"aau c #572eca", +"eXt c #573030", +"eGH c #573136", +"ezV c #573234", +"eGI c #573236", +"faV c #573432", +"epG c #57383e", +"fvz c #57393d", +"flY c #573a3e", +"eQk c #573b36", +"eEI c #573c35", +"gwa c #573e42", +"d2d c #573f41", +"gtY c #573f43", +"enM c #57423c", +"#Qf c #574241", +"ezo c #574244", +"dCL c #574343", +"efA c #574345", +"b.P c #57462f", +"dIV c #574642", +"dPH c #574646", +"fPi c #574649", +"ehQ c #574747", +"dKF c #57474a", +"dNM c #574840", +"dyT c #574842", +"ekl c #574848", +"eRp c #57484a", +"cxe c #574932", +"ehP c #574949", +"dKG c #57494a", +"ezg c #57494b", +"b4V c #574a3f", +".cr c #574a49", +"epo c #574b4c", +"glN c #574b4d", +"cu0 c #574c3e", +"dnp c #574c4c", +"ghI c #574c50", +"#vG c #574d19", +"cBn c #574d3e", +"daZ c #574d4e", +"gfx c #574d51", +".ci c #574e4d", +".f8 c #574e4e", +".cn c #574f4d", +".g. c #574f4e", +".f9 c #574f4f", +".42 c #575042", +"#2T c #57504e", +".ga c #57504f", +".#5 c #575050", +".#O c #575150", +".#R c #575151", +".ld c #575152", +"bRR c #575244", +".#P c #575251", +".lc c #575252", +".jq c #575253", +"#s2 c #575346", +"c5L c #575351", +".gf c #575352", +".gl c #575353", +".l# c #575354", +".iE c #575355", +".bb c #575356", +".aR c #575357", +"#s1 c #575447", +"c4b c #575452", +".dS c #575454", +".dU c #575455", +".dA c #575456", +".jc c #575457", +"cvg c #575551", +".WW c #575552", +".ip c #575554", +".dV c #575555", +".dy c #575556", +".dz c #575557", +".kY c #575558", +"dBj c #57564c", +"ckP c #575654", +".f. c #575655", +".## c #575656", +".#. c #575657", +".fj c #575658", +"b48 c #575753", +"anC c #575754", +"#rE c #575755", +".dw c #575756", +"QtZ c #575757", +"Qt0 c #575758", +".rP c #575759", +"dzh c #57584f", +"csK c #575850", +"cfQ c #575852", +".CS c #575856", +".B3 c #575857", +"Qt1 c #575858", +".yY c #575859", +".n7 c #57585b", +"cqp c #575950", +"cER c #575952", +"bD5 c #575954", +"#cs c #575958", +".NU c #575959", +".p1 c #57595e", +"cnJ c #575a51", +"bsU c #575a53", +"ab7 c #575a56", +".NT c #575a59", +".Mz c #575a5a", +"eRe c #575a5c", +"drR c #575b50", +"c8w c #575b51", +"c.4 c #575b53", +"a.0 c #575b57", +".Pu c #575b5a", +".Pt c #575b5b", +".Mu c #575b5c", +"b9U c #575c54", +"buE c #575c55", +"asU c #575c56", +".9T c #575c57", +"dsI c #575c58", +".Kd c #575c5b", +"cAe c #575d53", +"b.p c #575d56", +"cHZ c #575d57", +".0U c #575d58", +".2R c #575d59", +"dyf c #575d5b", +"#xm c #575d5c", +".KT c #575d5e", +".DZ c #575d65", +"d.i c #575e52", +"cP. c #575e53", +"aGU c #575e56", +"bsQ c #575e57", +"bGv c #575e58", +"#a0 c #575e59", +"dfu c #575e5b", +"#Bc c #575e5d", +".IX c #575e5e", +".z# c #575e65", +"#xb c #575f5d", +"dFS c #575f5e", +"cqE c #576057", +"#O1 c #57605b", +"co4 c #57605f", +"bd4 c #576160", +"bup c #576161", +"bPm c #576162", +"eV6 c #576163", +"#Et c #57625c", +"aSd c #57625d", +"aR9 c #57625e", +"aVd c #57625f", +"#lA c #576262", +"#fz c #57626b", +".w5 c #576353", +".52 c #576357", +".53 c #576358", +".51 c #576359", +"ale c #576361", +"aZK c #576364", +".EM c #576457", +".EK c #576458", +"dso c #576464", +".EG c #576558", +".EL c #576559", +"dum c #576565", +"fOS c #576567", +".EZ c #576657", +".ER c #576658", +".EU c #576659", +"eoW c #576669", +"#Z# c #576767", +"dMx c #576867", +"#8F c #576868", +"dTE c #576967", +"dMt c #576969", +"#B9 c #57696b", +"ewk c #57696d", +"erf c #57696e", +"erh c #576a6b", +"eFz c #576a6e", +".wO c #576b59", +".wt c #576b5a", +".VC c #576b6c", +"etN c #576b6d", +"eoL c #576c6d", +"#at c #57758a", +".7h c #5789a6", +"#dQ c #578ac4", +"aFA c #578d9e", +".Vn c #5792b8", +".2Y c #5792c2", +"ax. c #57979f", +"#9e c #57a18e", +"#JP c #57a750", +"#GC c #582ca1", +"e0a c #582e33", +"f7I c #582f34", +"eN5 c #583732", +"fNw c #583839", +"e9i c #58383d", +"e9h c #58383e", +"eN6 c #583a35", +"eEK c #583b34", +"eBH c #583b3f", +"efM c #583c42", +"eCl c #583d36", +"gw# c #583f42", +"gtZ c #583f43", +"ckz c #58432b", +"elh c #58443d", +"beH c #58452b", +"emR c #584648", +"bbJ c #58472e", +"beW c #584731", +"dNr c #584747", +"dIY c #584842", +"eDK c #58484b", +"dLk c #584942", +"dAS c #584945", +"fM. c #58494b", +"czv c #584a36", +"czx c #584a37", +"dIc c #584a4c", +"cpV c #584b3c", +"efv c #584c4e", +"gfA c #584c51", +".cs c #584d4c", +"gjO c #584d4f", +"gdy c #584d50", +"bnx c #584e42", +"cBD c #584e43", +"ezb c #584e4f", +"gvC c #584e51", +"#vN c #584f3c", +"bpA c #584f42", +"a48 c #584f47", +".ct c #58504e", +".gb c #585050", +"bIm c #585147", +".ew c #58514f", +".hT c #585150", +".#6 c #585151", +".#Q c #585152", +"dBh c #585249", +".ex c #585250", +".#7 c #585251", +".a. c #585252", +"do5 c #585253", +"gnB c #585256", +"bzb c #585348", +".ab c #585351", +".aa c #585352", +".jr c #585353", +".gn c #585354", +"glD c #585357", +".aS c #585358", +"#ub c #585428", +".41 c #58544c", +".lf c #585453", +".l. c #585454", +".dT c #585455", +".hv c #585456", +"d#Z c #58554e", +"cQt c #585551", +".hW c #585554", +"gzk c #585555", +".fE c #585556", +".ka c #585557", +".ba c #585558", +".id c #58555a", +"bBg c #58564d", +"cID c #585651", +".gs c #585655", +".go c #585656", +".aQ c #585657", +"Qt9 c #585658", +".kZ c #585659", +"cDQ c #585752", +"aZi c #585753", +"cIN c #585754", +".A6 c #585755", +"QtY c #585756", +"QtX c #585757", +".aV c #585758", +".Qq c #585759", +"fki c #58575f", +"aql c #585855", +"ai. c #585856", +".gO c #585857", +".sj c #585858", +".ij c #585859", +"ci. c #585953", +"ae9 c #585956", +".PD c #585958", +".nG c #585959", +".zi c #58595a", +".nd c #58595b", +".n6 c #58595c", +"cYv c #585a52", +"dhI c #585a55", +"#1M c #585a56", +"#7V c #585a57", +"anO c #585a59", +".H7 c #585a5a", +".Bb c #585a5b", +".op c #585a5c", +".oi c #585a5d", +".pz c #585a5e", +"cmD c #585b52", +"bOx c #585b54", +"crM c #585b55", +".8A c #585b58", +".Pv c #585b5a", +".LB c #585b5b", +"cqq c #585c52", +"ck8 c #585c53", +"#aQ c #585c58", +".OC c #585c5c", +".Mv c #585c5d", +".xa c #585c60", +".y8 c #585c61", +"aD1 c #585d55", +"bJM c #585d56", +"#aT c #585d58", +"#aS c #585d59", +"#aX c #585d5a", +".2g c #585d5c", +".Lw c #585d5d", +".Lx c #585d5e", +".zc c #585d62", +"cD1 c #585e53", +"cla c #585e54", +".5R c #585e57", +"cGt c #585e5a", +"#xn c #585e5e", +"dCg c #585e5f", +"eRd c #585e60", +".DY c #585e66", +"cQB c #585f55", +"aGR c #585f57", +"#1s c #585f58", +"cpa c #585f59", +"#Ia c #585f5b", +".I6 c #585f5e", +"dAf c #585f60", +"cAj c #586055", +"diN c #586058", +"#X5 c #58605a", +"#RT c #58615b", +"btO c #58615c", +"dO7 c #586163", +"a4e c #58625f", +"bh. c #586261", +".5T c #586357", +".5W c #586358", +".5V c #586359", +"asC c #58635d", +"aS# c #58635f", +"bZW c #586360", +".54 c #586457", +".5X c #586458", +"dKa c #586464", +".ES c #586558", +".ET c #586559", +".E0 c #586659", +".Yy c #58665a", +"bfv c #586666", +"ea3 c #586667", +"ewq c #586a6c", +".wu c #586b5a", +"eY4 c #586b6c", +".RB c #586c6d", +"#eq c #58738e", +"#c2 c #588ac4", +"#e8 c #588bb6", +"##h c #588bc4", +".58 c #588da8", +"#cw c #5894c4", +".V1 c #5899be", +"fQe c #59262e", +"fmo c #59272f", +"fsK c #59282e", +"#tZ c #592929", +"fBR c #592932", +"fpu c #592a30", +"eUr c #592e31", +"fl3 c #592f37", +"eEi c #593035", +"e0. c #593235", +"#V7 c #59353a", +"ff2 c #59353c", +"fpL c #593635", +"epF c #593940", +"fKC c #593a39", +"fQC c #593a3a", +"ew2 c #593d42", +"gt2 c #593e42", +"d9K c #59403c", +"cm7 c #59442d", +"ehU c #594446", +"dCN c #594544", +"dUf c #594547", +"eIB c #594548", +"cpN c #594632", +"d9W c #59473f", +"dKN c #594949", +"erU c #59494b", +"efx c #594a4c", +"cxg c #594b36", +"bYM c #594b37", +"#vH c #594d19", +".xt c #594d38", +"edm c #594d4f", +"gbw c #594d51", +"b8O c #594e41", +"gjM c #594e51", +"gdA c #594e52", +"erO c #594f50", +"gjI c #595053", +".cu c #59514f", +".jZ c #595151", +".#8 c #595251", +".a# c #595252", +".#9 c #595352", +".ae c #595353", +"glE c #595356", +".aT c #595358", +".da c #595359", +".af c #595452", +".k4 c #595453", +".le c #595454", +".k2 c #595455", +".li c #595456", +"aYH c #595549", +"cQl c #595552", +".lg c #595554", +".lh c #595555", +".hY c #595556", +".aU c #595557", +".b# c #595558", +"aY4 c #595655", +".g2 c #595657", +"Qt8 c #595658", +".k0 c #595659", +"beq c #59574e", +"cGQ c #59574f", +".j# c #595755", +".il c #595757", +"Qt2 c #595758", +"Qt3 c #595759", +".jd c #59575a", +"b47 c #595854", +"#uk c #595855", +"czX c #595856", +".PE c #595857", +".dh c #595858", +".dx c #595859", +"cHi c #595952", +".xc c #595957", +".B2 c #595958", +"Qt6 c #595959", +".aW c #59595a", +".ol c #59595b", +".n8 c #59595c", +".oG c #59595d", +"cQz c #595a52", +"cie c #595a53", +"c2d c #595a54", +"dsK c #595a57", +"#pR c #595a58", +".CR c #595a59", +".x1 c #595a5a", +".Sc c #595a5b", +".ny c #595a5c", +".q2 c #595a5d", +".nf c #595a5e", +"c2g c #595b54", +"ae8 c #595b57", +"#qD c #595b59", +"bib c #595b5a", +".NQ c #595b5b", +".qa c #595b5c", +".nc c #595b5d", +".q# c #595b5e", +".nO c #595b5f", +"bQA c #595c55", +"ceX c #595c56", +"#aU c #595c58", +"#aZ c #595c59", +"#a1 c #595c5a", +".Hi c #595c5c", +".Hh c #595c5d", +".w8 c #595c5e", +".nr c #595c60", +".Eb c #595c61", +"#aR c #595d57", +"#aV c #595d58", +"#aW c #595d59", +"#aY c #595d5a", +".Ps c #595d5c", +".My c #595d5d", +"#S# c #595d5e", +"a7m c #595e57", +"avM c #595e58", +"#7M c #595e5a", +".Ke c #595e5d", +".4d c #595e5f", +"cab c #595f54", +"cI9 c #595f55", +"bHy c #595f57", +"bFf c #595f58", +"cC1 c #595f5b", +"dwr c #595f5c", +"#il c #595f5d", +"#eB c #595f5e", +".I4 c #595f5f", +"cD0 c #596056", +"aSo c #596058", +"abW c #596059", +".I5 c #596060", +"cKO c #596156", +"b89 c #596158", +".Yq c #596159", +"bGy c #59615b", +".5U c #596258", +"a7# c #596261", +"dH0 c #596262", +".5Y c #596359", +"bA# c #59635d", +"b9K c #59635f", +"bZV c #596362", +"bTF c #596363", +".vy c #596459", +".E1 c #59645a", +"aMu c #59645e", +"aVh c #596460", +"aqP c #596562", +"aiy c #596563", +"a2E c #596564", +"dY5 c #596565", +".Yt c #596659", +".wU c #59665a", +".YA c #59665b", +"acD c #596665", +"#gg c #596668", +"aXb c #5966a3", +"aiG c #596767", +"acK c #596868", +"#hC c #596969", +"dTC c #596a6a", +".wP c #596b5b", +"#eL c #596d6b", +"eoN c #596d6e", +"eHT c #596d6f", +"d8k c #596e70", +"#e3 c #597182", +"aT5 c #5971a4", +".SE c #59726f", +".2W c #597583", +".3X c #5986a8", +"dYf c #598c5d", +".2Z c #5992c5", +"#ca c #5996c5", +"fnM c #59d784", +"auD c #5a0a5b", +"#vr c #5a1a19", +"fwh c #5a252b", +"#t0 c #5a2929", +"f9W c #5a2e34", +"f7H c #5a2e35", +"fl4 c #5a3139", +"e0# c #5a3237", +"ezU c #5a3537", +"exn c #5a3738", +"fvJ c #5a393f", +"fa2 c #5a3c39", +"ffT c #5a3e40", +"gt0 c #5a4044", +"eNa c #5a4245", +"grF c #5a4447", +"#vM c #5a451b", +"cks c #5a452b", +"dCM c #5a4644", +"dCO c #5a4645", +"dGE c #5a4646", +"dEw c #5a4746", +"grE c #5a4748", +"dU. c #5a484a", +"gtD c #5a484c", +"dIX c #5a4944", +"dLh c #5a4945", +"gfH c #5a494c", +"bUI c #5a4a39", +"eBs c #5a4b4e", +"#ui c #5a4c2b", +"dUV c #5a4c44", +"bDF c #5a4e42", +"caZ c #5a4f41", +"gbu c #5a4f53", +"ce7 c #5a503e", +"a76 c #5a5043", +"eP. c #5a5051", +"ghE c #5a5053", +".cw c #5a5150", +".de c #5a515a", +"b4h c #5a5241", +".cv c #5a5250", +".ag c #5a5252", +"dck c #5a5253", +"#uj c #5a5343", +".ey c #5a5351", +".ah c #5a5352", +".gc c #5a5353", +"#uc c #5a5429", +"d0h c #5a5449", +"a5# c #5a544c", +".cx c #5a5452", +".ai c #5a5453", +".kR c #5a5454", +".k3 c #5a5553", +".gt c #5a5554", +".kS c #5a5555", +".lj c #5a5556", +".gI c #5a555b", +"d0i c #5a564a", +".gm c #5a5656", +".ll c #5a5657", +"#SY c #5a5658", +".b. c #5a5659", +"gjE c #5a565a", +"a8c c #5a5753", +".gW c #5a5758", +"Qt7 c #5a5759", +".k1 c #5a575a", +"bRQ c #5a584a", +"dF0 c #5a5855", +".gg c #5a5858", +"Qt4 c #5a5859", +".gS c #5a585a", +"cH# c #5a5955", +"dD6 c #5a5957", +".du c #5a5958", +"Qt5 c #5a5959", +".ih c #5a595a", +".Qv c #5a595b", +"dtO c #5a5a4f", +"cI3 c #5a5a52", +"aWf c #5a5a56", +"bOl c #5a5a57", +".Vu c #5a5a58", +".xd c #5a5a59", +".tt c #5a5a5a", +".rn c #5a5a5b", +".fc c #5a5a5c", +".n. c #5a5a5d", +"dpP c #5a5b52", +"cvj c #5a5b53", +"ck3 c #5a5b54", +"aS0 c #5a5b55", +"gzF c #5a5b58", +"#re c #5a5b5a", +".Gf c #5a5b5b", +".dj c #5a5b5c", +".zU c #5a5b5d", +".nI c #5a5b5e", +".nY c #5a5b5f", +".qG c #5a5b60", +"drP c #5a5c51", +"ae7 c #5a5c57", +"#np c #5a5c5b", +".LC c #5a5c5c", +".H8 c #5a5c5d", +".ot c #5a5c5e", +".oA c #5a5c5f", +".qy c #5a5c60", +".pn c #5a5c61", +"cBa c #5a5d54", +"bKN c #5a5d56", +".7d c #5a5d59", +"a#b c #5a5d5b", +".Hg c #5a5d5d", +".OD c #5a5d5e", +".oS c #5a5d61", +".ql c #5a5d62", +"cRJ c #5a5e55", +"b1p c #5a5e57", +"b35 c #5a5e58", +"#nD c #5a5e5c", +".NO c #5a5e5e", +".Ly c #5a5e5f", +".vH c #5a5e62", +"b9T c #5a5f57", +"b.s c #5a5f58", +"ap5 c #5a5f59", +"#4O c #5a5f5b", +".29 c #5a5f5e", +"#cE c #5a5f5f", +".5l c #5a5f60", +".8H c #5a5f62", +"c#9 c #5a6056", +"a7l c #5a6059", +"cOo c #5a605d", +"cLy c #5a605e", +"#xo c #5a6060", +"chf c #5a6156", +"cXi c #5a6157", +"aVr c #5a6158", +"aSp c #5a6159", +"#4H c #5a615a", +"#LA c #5a615d", +"dhx c #5a615e", +"cJb c #5a6257", +"bea c #5a625a", +".yw c #5a625c", +"#Lz c #5a625d", +"b9O c #5a625e", +".5Z c #5a6359", +".50 c #5a635a", +"#EC c #5a6360", +"bus c #5a6362", +"aVn c #5a645c", +"bsJ c #5a6462", +"bCZ c #5a6463", +"dKk c #5a6465", +".Yx c #5a655a", +"aJy c #5a655f", +"aPm c #5a6560", +"a39 c #5a6563", +"dY7 c #5a6565", +".Yw c #5a6659", +".Ys c #5a665a", +".Yu c #5a665b", +"#EA c #5a665f", +"e8F c #5a6869", +"#Sz c #5a6c6c", +"eH0 c #5a6d6e", +"eHU c #5a6d70", +"erl c #5a6e6f", +".QG c #5a6f6f", +"cAF c #5a7071", +".KI c #5a7171", +"#dH c #5a788d", +"#eo c #5a7894", +".97 c #5a8bc2", +".2X c #5a93bf", +"#50 c #5b0807", +"bdB c #5b1d86", +"fdq c #5b2c36", +"eLo c #5b2d33", +"ePU c #5b2e33", +"fdf c #5b3037", +"eB3 c #5b3135", +"ePM c #5b3138", +"fEK c #5b3435", +"fsj c #5b353c", +"e9l c #5b373d", +"fHH c #5b3c3a", +"fdO c #5b3d39", +"fTD c #5b3d3c", +"e96 c #5b3e3b", +"eCj c #5b4039", +"gt3 c #5b4044", +"ewU c #5b4246", +"ezp c #5b4347", +"ehV c #5b4448", +"#vL c #5b451a", +"dSd c #5b4642", +"dAV c #5b4747", +"epu c #5b4749", +"#vK c #5b481a", +"cna c #5b4832", +".B0 c #5b4949", +"glR c #5b494c", +"#vJ c #5b4b19", +"#uh c #5b4c28", +"dti c #5b4c4c", +"dIf c #5b4c4d", +"fyx c #5b4c4f", +"#vI c #5b4d19", +"bto c #5b4d42", +"b02 c #5b4e3e", +"#ug c #5b4f28", +"#uf c #5b5028", +"czK c #5b5043", +"cfB c #5b5143", +"ecj c #5b5146", +"c9L c #5b5152", +"#ue c #5b5228", +".vU c #5b5242", +"bkr c #5b5246", +"dcj c #5b5253", +".iU c #5b5353", +"c8b c #5b5354", +"e.. c #5b5449", +".cy c #5b5452", +".hU c #5b5453", +".gd c #5b5454", +"dJ. c #5b554b", +".cz c #5b5553", +".aj c #5b5554", +".kT c #5b5555", +".PF c #5b564e", +"cYq c #5b5652", +".al c #5b5655", +".h0 c #5b5656", +".lk c #5b5657", +"gMy c #5b5658", +".ge c #5b5756", +".hV c #5b5757", +".lm c #5b5758", +".df c #5b5759", +".a9 c #5b575a", +"cOQ c #5b5854", +"be9 c #5b5855", +".iV c #5b5857", +".g3 c #5b5858", +".jl c #5b5859", +".a7 c #5b585a", +".a8 c #5b585b", +"cIC c #5b5954", +".MB c #5b5958", +".iW c #5b5959", +".hZ c #5b595a", +".a5 c #5b595b", +"cKt c #5b5a55", +"cIW c #5b5a56", +"cfL c #5b5a58", +".dg c #5b5a59", +".je c #5b5a5a", +".dv c #5b5a5b", +".gT c #5b5a5c", +"f.A c #5b5a5f", +"fg4 c #5b5a60", +"dzf c #5b5b51", +"#oA c #5b5b59", +".to c #5b5b5a", +".dr c #5b5b5b", +".nl c #5b5b5c", +".oy c #5b5b5e", +".om c #5b5b5f", +"csL c #5b5c54", +"b5d c #5b5c56", +"aqn c #5b5c58", +".um c #5b5c5a", +"#kg c #5b5c5b", +".xg c #5b5c5c", +".S5 c #5b5c5d", +".nx c #5b5c5e", +".of c #5b5c5f", +".nN c #5b5c60", +"drQ c #5b5d52", +"dBo c #5b5d53", +"cRe c #5b5d57", +"#1U c #5b5d5c", +".Ia c #5b5d5d", +".I. c #5b5d5e", +".oq c #5b5d61", +"dDf c #5b5e53", +"cQA c #5b5e54", +"cEO c #5b5e55", +"bQz c #5b5e57", +".10 c #5b5e5a", +".4M c #5b5e5b", +"#Yl c #5b5e5c", +".NP c #5b5e5d", +".H9 c #5b5e5e", +".Lz c #5b5e5f", +".w9 c #5b5e60", +".qK c #5b5e62", +".oL c #5b5e63", +"cU7 c #5b5f58", +".3S c #5b5f5c", +".Kf c #5b5f5e", +".Kg c #5b5f5f", +"frF c #5b5f60", +"ffu c #5b5f62", +".D8 c #5b5f64", +"cuc c #5b6058", +"a7k c #5b6059", +"asV c #5b605a", +"aA8 c #5b605b", +"aBB c #5b605c", +"#Mb c #5b605e", +".z. c #5b6067", +"cbl c #5b6156", +"cYx c #5b6157", +"cJU c #5b615e", +"#cg c #5b615f", +"##n c #5b6160", +".6r c #5b6161", +"cXl c #5b6258", +"aDP c #5b625a", +"#1t c #5b625b", +"a7j c #5b625c", +"co3 c #5b6262", +"c1v c #5b6358", +"aDQ c #5b635a", +"bGu c #5b635b", +"bB6 c #5b635c", +"bj6 c #5b635d", +"a7. c #5b6362", +"c0b c #5b6459", +"#I. c #5b645f", +"cmh c #5b6463", +".EQ c #5b655a", +"ayW c #5b6561", +"but c #5b6562", +"#w7 c #5b6563", +"bqZ c #5b6564", +"bwE c #5b6566", +".Yv c #5b665a", +".Yz c #5b665b", +"apF c #5b6660", +"aSa c #5b6662", +"fUO c #5b6668", +"aPk c #5b6762", +"a5K c #5b6867", +"dsm c #5b6969", +"dDQ c #5b6a6a", +"#PM c #5b6b6b", +".IB c #5b6d6b", +"#B8 c #5b6d6e", +"ejW c #5b6d6f", +"#yq c #5b6d70", +"eoK c #5b6e70", +".45 c #5b6e7f", +"#d3 c #5b6f6d", +"eaU c #5b6f70", +"eKa c #5b6f72", +".6a c #5b7281", +".ZW c #5b7c94", +"#ej c #5b85a5", +"#h9 c #5b88a9", +"aFE c #5b8ca1", +".3Z c #5b9abe", +"#vs c #5c1a19", +"fM5 c #5c2c33", +"e9G c #5c2d33", +"f9V c #5c2d35", +"f7G c #5c2e35", +"f49 c #5c2f36", +"f5. c #5c3038", +"fas c #5c3138", +"aXu c #5c31c7", +"ff3 c #5c333b", +"#5W c #5c3435", +"fCa c #5c3536", +"fo3 c #5c363d", +"e28 c #5c373e", +"fWm c #5c3939", +"f5k c #5c3a3e", +"fsf c #5c3b41", +"eJp c #5c3c37", +"fvE c #5c3c42", +"eG5 c #5c3d38", +"eEF c #5c3e38", +"gkV c #5c3e43", +"gt1 c #5c4145", +"e#X c #5c423e", +"grL c #5c4446", +"dEA c #5c4847", +"fA7 c #5c484a", +"emS c #5c484b", +"dEx c #5c4945", +".z1 c #5c4a4a", +"cpP c #5c4b35", +"dKM c #5c4c4c", +"emW c #5c4c4d", +"bQg c #5c4d3c", +"dLm c #5c4d46", +"edo c #5c4d50", +"dEN c #5c4e49", +"eIs c #5c4e4d", +"dpe c #5c4e51", +".pl c #5c4f3e", +"#5T c #5c4f4e", +"b.5 c #5c5041", +"e#g c #5c5052", +"c.F c #5c5145", +"dNS c #5c5148", +"dl0 c #5c514b", +"dlE c #5c5253", +"#ud c #5c5329", +"d6L c #5c5354", +"a5. c #5c544b", +"g#m c #5c5457", +".cA c #5c5554", +".cB c #5c5555", +"bhy c #5c5649", +".ig c #5c564c", +".ez c #5c5654", +".ak c #5c5655", +".am c #5c5656", +".e3 c #5c565b", +"bIp c #5c5753", +".eA c #5c5755", +".j1 c #5c5756", +".j0 c #5c5757", +".kU c #5c5758", +".if c #5c584c", +".jm c #5c5857", +".kV c #5c5858", +".kW c #5c5859", +".ik c #5c585a", +".a6 c #5c585b", +"bz# c #5c5952", +"gzj c #5c5959", +".fn c #5c595a", +".a4 c #5c595b", +".jk c #5c595c", +"bF9 c #5c5a55", +"ckN c #5c5a58", +".iY c #5c5a5a", +".hX c #5c5a5b", +".dl c #5c5a5c", +".jj c #5c5a5d", +"cQr c #5c5b54", +"cz5 c #5c5b56", +"#nq c #5c5b59", +".Gr c #5c5b5a", +".z3 c #5c5b5b", +".ji c #5c5b5c", +".aX c #5c5b5d", +"buN c #5c5c58", +"afc c #5c5c59", +".NV c #5c5c5a", +".tj c #5c5c5b", +".dq c #5c5c5c", +".di c #5c5c5d", +"e1g c #5c5c5e", +".oV c #5c5c5f", +".qQ c #5c5c60", +"cP0 c #5c5d56", +"cfR c #5c5d57", +".2t c #5c5d5b", +".xe c #5c5d5c", +".F1 c #5c5d5d", +".rT c #5c5d5e", +".nJ c #5c5d5f", +".ou c #5c5d60", +".nL c #5c5d61", +"cO1 c #5c5e55", +"bBZ c #5c5e59", +"a8g c #5c5e5d", +".F8 c #5c5e5e", +".LA c #5c5e5f", +".nz c #5c5e60", +".qI c #5c5e61", +".qM c #5c5e62", +".qh c #5c5e63", +"ck6 c #5c5f56", +"bIH c #5c5f57", +"bSL c #5c5f58", +".Ki c #5c5f5e", +".Kh c #5c5f5f", +"eO1 c #5c5f60", +".oj c #5c5f63", +"cjX c #5c6057", +".ZO c #5c605b", +".z6 c #5c605f", +".Kj c #5c6060", +"#73 c #5c6061", +"cms c #5c6159", +"bkd c #5c615a", +"bE# c #5c615b", +"#4Q c #5c615d", +"#c8 c #5c6160", +"#aA c #5c6161", +".A0 c #5c6167", +"b9S c #5c6259", +"clf c #5c625a", +"cZi c #5c625c", +"dyg c #5c625f", +"cIj c #5c6260", +".7H c #5c6261", +".85 c #5c6262", +"gAT c #5c6269", +".yS c #5c626b", +"avG c #5c635b", +"a.P c #5c635c", +"#Y# c #5c635e", +"#LM c #5c6361", +"a9e c #5c639e", +"diM c #5c6459", +"cYB c #5c645a", +"#7D c #5c645c", +".DM c #5c645d", +"dCe c #5c6463", +"dH1 c #5c6464", +"b.j c #5c655d", +"dFT c #5c6563", +"b50 c #5c6564", +".uh c #5c665c", +"aVo c #5c665e", +"bqk c #5c6660", +"ayS c #5c6662", +"aPf c #5c6665", +"dDS c #5c6667", +"bwD c #5c6668", +"#A1 c #5c6760", +"aMt c #5c6761", +"buu c #5c6762", +"bsK c #5c6764", +"dTP c #5c6768", +"b3X c #5c6864", +"afC c #5c6866", +"aZJ c #5c6969", +"aWP c #5c696a", +"dFH c #5c6a6a", +".15 c #5c6b77", +"a#L c #5c6c6c", +"#VC c #5c6d6d", +"erg c #5c6d71", +"eKb c #5c6d72", +"#Jf c #5c6e6d", +"#FD c #5c6e70", +".PS c #5c7071", +"eHW c #5c7172", +"aXg c #5c789d", +"#gO c #5c7b92", +".16 c #5c91ba", +"#e7 c #5c92bc", +"#a5 c #5c94ba", +"#cv c #5c99c8", +"al2 c #5c9b95", +".V0 c #5c9ec0", +"fnL c #5cd683", +"ajr c #5d0f7e", +"#5X c #5d2b2b", +"fTd c #5d2b34", +"fEp c #5d2d36", +"fEN c #5d3738", +"eQd c #5d3a37", +"eLI c #5d3c37", +"#5V c #5d3d3d", +"gcH c #5d3e43", +"fgE c #5d3f3b", +"esd c #5d3f44", +"eil c #5d4042", +"grM c #5d4246", +"eAg c #5d433b", +"grG c #5d4448", +"eM8 c #5d4549", +"#5U c #5d4646", +"dPN c #5d4747", +"dyR c #5d4949", +"edr c #5d494b", +"dNC c #5d4a46", +"ept c #5d4a4b", +"emT c #5d4a4c", +"dP1 c #5d4c45", +"grr c #5d4d50", +"a7L c #5d4e38", +"czw c #5d4f3d", +"bv# c #5d4f46", +"dIZ c #5d4f49", +"eF5 c #5d4f52", +"cBp c #5d5040", +".h1 c #5d514f", +"emO c #5d5153", +"cpv c #5d523d", +"f81 c #5d5254", +"eO8 c #5d5354", +"dcm c #5d5455", +"a5a c #5d5650", +".cC c #5d5655", +"gri c #5d565b", +"e.# c #5d574c", +".eB c #5d5755", +".cD c #5d5756", +".an c #5d5757", +"gsm c #5d5758", +"bKz c #5d5850", +".eC c #5d5855", +".ao c #5d5857", +".ap c #5d5858", +".kX c #5d5859", +"bJX c #5d594d", +".j2 c #5d5958", +".ln c #5d5959", +".a3 c #5d595a", +".fo c #5d595b", +"bT0 c #5d5a4c", +"dgE c #5d5a53", +".W. c #5d5a57", +".nX c #5d5a58", +".iX c #5d5a5a", +".fa c #5d5a5b", +".jg c #5d5a5c", +"fJ# c #5d5a5d", +".W# c #5d5b59", +".dt c #5d5b5c", +".jf c #5d5b5d", +".im c #5d5b5e", +"cDU c #5d5c56", +"cnB c #5d5c57", +"cIV c #5d5c58", +"cIY c #5d5c59", +".RZ c #5d5c5a", +".ME c #5d5c5b", +".xf c #5d5c5c", +".gq c #5d5c5d", +".Sk c #5d5c5e", +"e7z c #5d5c60", +"fnj c #5d5c63", +"cz6 c #5d5d57", +"bQp c #5d5d59", +"ak0 c #5d5d5b", +".ze c #5d5d5c", +".gp c #5d5d5d", +".dn c #5d5d5e", +".nv c #5d5d60", +"drL c #5d5e53", +"cS1 c #5d5e55", +"cqk c #5d5e56", +"cBg c #5d5e58", +"b1c c #5d5e59", +".57 c #5d5e5b", +"anB c #5d5e5c", +".Bi c #5d5e5d", +".xQ c #5d5e5e", +".ys c #5d5e5f", +".nM c #5d5e61", +".qf c #5d5e62", +".qN c #5d5e63", +"c3Q c #5d5f58", +"bD4 c #5d5f5a", +".6Q c #5d5f5c", +"#Yx c #5d5f5e", +".I# c #5d5f5f", +".Kl c #5d5f60", +".oo c #5d5f61", +".on c #5d5f62", +".qS c #5d5f63", +"cwS c #5d6057", +"cuo c #5d6058", +"b1m c #5d6059", +"bB3 c #5d605b", +".Kk c #5d6060", +".qH c #5d6062", +"cS3 c #5d6158", +"#Pc c #5d6160", +"#EN c #5d6161", +".AV c #5d6167", +"c7i c #5d6259", +"bei c #5d625b", +"d.4 c #5d625c", +".Xt c #5d625d", +"#Il c #5d6260", +"#.g c #5d6261", +"#.l c #5d6262", +"dCf c #5d6263", +"fcH c #5d6265", +".AW c #5d6267", +"cS4 c #5d6359", +"bFh c #5d635b", +"bj9 c #5d635c", +"anm c #5d635d", +"cwM c #5d635f", +"cLx c #5d6360", +"#id c #5d6361", +".VP c #5d6362", +"dAh c #5d6363", +"cZ8 c #5d645a", +"bMK c #5d645b", +"aDS c #5d645c", +"anl c #5d645d", +"a1g c #5d645e", +"aVq c #5d655e", +"bj5 c #5d6660", +"cmg c #5d6664", +".y1 c #5d675c", +"bj0 c #5d6766", +"buq c #5d6767", +"bCY c #5d6768", +"#wZ c #5d6861", +"aGG c #5d6862", +"aSe c #5d6863", +"aYk c #5d6864", +"dsk c #5d686a", +"alj c #5d6966", +"dFD c #5d6a6b", +"fLJ c #5d6a6c", +"afM c #5d6c6c", +"#Z. c #5d6d6d", +"#VA c #5d6e6e", +"#MF c #5d6f6e", +"#FC c #5d6f6f", +"d3J c #5d7072", +".LX c #5d7172", +"eHV c #5d7272", +"eA3 c #5d7273", +"gsY c #5d7baa", +"#kh c #5d7d96", +".ZX c #5d8096", +"#ek c #5d88a7", +".WI c #5d8aa8", +"#el c #5d99c7", +"#27 c #5d9a79", +"#bJ c #5d9ac8", +"aoM c #5d9b99", +".WL c #5d9ec1", +"bdC c #5e0389", +"#5Y c #5e2120", +"#Wr c #5e27be", +"#3j c #5e29c2", +"fmp c #5e2c33", +"fVO c #5e303a", +"f1T c #5e323c", +"faq c #5e333a", +"fo7 c #5e353d", +"f9X c #5e363b", +"fl2 c #5e363e", +"e6P c #5e3738", +"eBZ c #5e373b", +"eN4 c #5e3d38", +"fWq c #5e3e3e", +"gay c #5e3f41", +"ef4 c #5e3f42", +"fyV c #5e3f44", +"ew1 c #5e4146", +"e6Z c #5e423d", +"eAc c #5e433c", +"euv c #5e4347", +"dR3 c #5e4447", +"grI c #5e4448", +"grJ c #5e4549", +".gv c #5e4641", +"grK c #5e464a", +".N8 c #5e4b2e", +"eIx c #5e4b4d", +"gjS c #5e4b4f", +"dZ5 c #5e4d46", +"ePe c #5e4e50", +"edn c #5e4e51", +"cNY c #5e4e52", +"cuK c #5e4f37", +"ePc c #5e4f52", +".dd c #5e4f5e", +"d47 c #5e5048", +".gu c #5e504e", +".TR c #5e512d", +"e#j c #5e5153", +"gnG c #5e5254", +"bFP c #5e5347", +"d82 c #5e5354", +"eMQ c #5e5455", +"eak c #5e564b", +".Ur c #5e5744", +".cE c #5e5757", +"eud c #5e5758", +".cF c #5e5857", +".cG c #5e5957", +".aq c #5e5958", +".j3 c #5e5959", +"cWX c #5e595a", +"bIo c #5e5a53", +"dko c #5e5a54", +".eD c #5e5a58", +"dMZ c #5e5a59", +".iZ c #5e5a5a", +".lo c #5e5a5b", +"d.a c #5e5b54", +".e7 c #5e5b59", +".lp c #5e5b5b", +".a2 c #5e5b5c", +".a1 c #5e5b5d", +".aY c #5e5b5e", +".WX c #5e5c58", +".lq c #5e5c5b", +".jh c #5e5c5c", +".fd c #5e5c5d", +".a0 c #5e5c5e", +".j. c #5e5c5f", +"dBl c #5e5d53", +"cFv c #5e5d57", +"cOT c #5e5d58", +"b46 c #5e5d59", +"b#j c #5e5d5a", +"cKj c #5e5d5b", +"cIQ c #5e5d5c", +".OK c #5e5d5d", +".ds c #5e5d5e", +"cHV c #5e5e54", +"cVQ c #5e5e56", +"bwX c #5e5e5a", +"aqm c #5e5e5b", +"akZ c #5e5e5c", +".eN c #5e5e5d", +".tq c #5e5e5e", +".l5 c #5e5e5f", +".Qo c #5e5e60", +".qJ c #5e5e61", +".qO c #5e5e62", +".qb c #5e5e63", +"bHG c #5e5f56", +"cUe c #5e5f57", +"ch9 c #5e5f59", +"bUQ c #5e5f5a", +".Pz c #5e5f5d", +".yZ c #5e5f5e", +".xh c #5e5f5f", +".TY c #5e5f60", +".qX c #5e5f61", +".nA c #5e5f62", +".qz c #5e5f63", +"cLH c #5e6057", +"cU8 c #5e6059", +"bBY c #5e605b", +".YC c #5e605e", +"a5h c #5e605f", +".R3 c #5e6061", +".nZ c #5e6064", +".pK c #5e6065", +"cun c #5e6158", +"b79 c #5e615a", +"bGm c #5e615b", +"dwx c #5e615e", +"afm c #5e6160", +".Km c #5e6161", +".6k c #5e6162", +"foA c #5e6164", +".D3 c #5e6165", +"cdD c #5e6258", +"cO2 c #5e6259", +".Xz c #5e625e", +".XA c #5e625f", +".7r c #5e6263", +".8S c #5e6264", +"fiq c #5e6265", +"b.n c #5e635c", +"ap6 c #5e635d", +".Xx c #5e635e", +".Xu c #5e635f", +"#j# c #5e6362", +"#dU c #5e6363", +".Vx c #5e6365", +"cct c #5e645a", +"d.2 c #5e6460", +"cOn c #5e6462", +"#ds c #5e6463", +".On c #5e6464", +".8Q c #5e6465", +"cXh c #5e655a", +"cXk c #5e655b", +"aPt c #5e655c", +"aJM c #5e655d", +"bj8 c #5e655e", +"dH2 c #5e6564", +"cKP c #5e665b", +"dn0 c #5e665d", +".EB c #5e665e", +"#I# c #5e6662", +"c#Z c #5e6664", +"aEH c #5e6665", +"aYr c #5e675f", +"ccm c #5e6762", +"#B. c #5e6764", +"cmf c #5e6766", +"a09 c #5e6767", +"aYq c #5e6860", +"aR7 c #5e6867", +"bNf c #5e6868", +"bwF c #5e6869", +"dz6 c #5e686a", +"be. c #5e6961", +"aAQ c #5e6963", +"aSc c #5e6964", +"aMs c #5e6965", +"bwI c #5e6966", +"atJ c #5e6967", +"bAR c #5e6968", +"bAO c #5e696a", +"an3 c #5e6a68", +"a2D c #5e6a6a", +"a8M c #5e6b6b", +"fOQ c #5e6b6d", +"eTk c #5e6d6e", +"#Sx c #5e6e6e", +"dzU c #5e6f6f", +"dBZ c #5e7070", +"dTu c #5e7071", +"ecU c #5e7072", +"#jp c #5e716f", +"dYM c #5e7172", +".MZ c #5e7273", +".KB c #5e7373", +"eyM c #5e7374", +"eMt c #5e7375", +".LQ c #5e7474", +"eOB c #5e7475", +".Tn c #5e7774", +"#f# c #5e7e9e", +"#fA c #5e8198", +".WJ c #5e90aa", +"#ei c #5e91b6", +"arB c #5e989d", +"#dJ c #5e99c6", +"#em c #5e99c8", +"ajg c #5e9b90", +"#c# c #5e9cca", +".47 c #5e9ec2", +"dVM c #5ea360", +"#Ga c #5eb247", +"#51 c #5f0d12", +"#5Z c #5f1815", +"fps c #5f2e34", +"#D# c #5f2f9b", +"f2f c #5f3038", +"fS1 c #5f313b", +"f48 c #5f3238", +"eLp c #5f3439", +"fde c #5f343b", +"e3b c #5f353a", +"fs0 c #5f3b3a", +"#zB c #5f3c8a", +"eLH c #5f3e39", +"fjF c #5f3f3d", +"fER c #5f403e", +"fvA c #5f4045", +"g.a c #5f4142", +"eAf c #5f443d", +"ebK c #5f4447", +"grH c #5f4449", +"d9L c #5f4642", +"dZJ c #5f4649", +".z0 c #5f4847", +".h2 c #5f4b45", +"dCK c #5f4b4b", +"ekp c #5f4b4d", +"f86 c #5f4c50", +"dSk c #5f4d47", +"fvf c #5f4d50", +"dIW c #5f4e4a", +"dCI c #5f4e4c", +"dyZ c #5f4f4f", +"erT c #5f4f52", +"efw c #5f5052", +"dId c #5f5053", +"dtf c #5f5151", +".db c #5f515e", +"dKK c #5f5251", +".B1 c #5f5353", +"ghK c #5f5355", +"caq c #5f543e", +"dpd c #5f5456", +".gK c #5f5458", +".xZ c #5f5555", +"a1M c #5f5649", +"bFQ c #5f564c", +"c8a c #5f5657", +"b2o c #5f5746", +"a1J c #5f5749", +".OL c #5f584d", +"bDM c #5f5850", +".j4 c #5f5858", +"gjF c #5f585b", +".Us c #5f5948", +".ar c #5f5958", +".j7 c #5f5959", +"bzG c #5f5a57", +".as c #5f5a59", +"dCk c #5f5a5a", +".gN c #5f5b57", +".at c #5f5b5a", +".lr c #5f5b5b", +".ls c #5f5b5c", +"cSP c #5f5c57", +"bF8 c #5f5c58", +".LG c #5f5c59", +".aZ c #5f5c5e", +"bxy c #5f5d5c", +".gj c #5f5d5d", +".dp c #5f5d5e", +"#.7 c #5f5d5f", +".11 c #5f5d61", +"b45 c #5f5e5a", +".w6 c #5f5e5b", +".xR c #5f5e5d", +".Py c #5f5e5e", +".gr c #5f5e5f", +".UD c #5f5e60", +"fqi c #5f5e63", +"a26 c #5f5e9d", +"cSZ c #5f5f57", +"cBX c #5f5f59", +".OF c #5f5f5d", +".yX c #5f5f5e", +".vY c #5f5f5f", +".yt c #5f5f60", +".xG c #5f5f61", +"f.G c #5f5f62", +"cnE c #5f6058", +"cES c #5f605a", +"bSC c #5f605b", +"doM c #5f605d", +".OG c #5f605e", +".A9 c #5f605f", +".yV c #5f6060", +".BB c #5f6061", +".oz c #5f6062", +".nK c #5f6063", +".qF c #5f6064", +"c0R c #5f615a", +"b1i c #5f615b", +".n9 c #5f6163", +"cF7 c #5f6257", +"cuk c #5f6259", +"bMC c #5f625b", +".Xv c #5f625f", +".qc c #5f6265", +"c21 c #5f635a", +"cpc c #5f635c", +"cU4 c #5f635d", +".Xy c #5f635e", +".Xw c #5f635f", +"#mq c #5f6362", +"#74 c #5f6364", +".Uz c #5f6365", +".CL c #5f6367", +"cHp c #5f645a", +"bTQ c #5f645d", +"bz1 c #5f645e", +"duH c #5f6460", +"#YG c #5f6461", +"#Ik c #5f6463", +"#dW c #5f6464", +".8P c #5f6465", +".5e c #5f6466", +"c#8 c #5f655b", +"a4o c #5f655e", +".ud c #5f655f", +"cJV c #5f6563", +"dAi c #5f6565", +"cxX c #5f665c", +"bKV c #5f665d", +".EO c #5f665e", +"bEc c #5f665f", +"cA0 c #5f6666", +"cHx c #5f675c", +"#4I c #5f675f", +"bB7 c #5f6760", +"ccl c #5f6865", +"cjx c #5f6868", +"cjw c #5f686a", +".u8 c #5f695f", +"cs3 c #5f6960", +"a7i c #5f6961", +"aVa c #5f6968", +"byI c #5f696a", +".vm c #5f6a5f", +"be# c #5f6a62", +"ahv c #5f6a64", +"awq c #5f6a66", +"b3W c #5f6a67", +".YO c #5f6a73", +".vs c #5f6b60", +".XN c #5f6b78", +".u9 c #5f6c60", +"dDM c #5f6c6d", +"dwb c #5f6d6d", +"e8G c #5f6d6e", +"#nO c #5f6e6b", +"a#J c #5f6e6e", +"#MD c #5f6f6f", +"eY9 c #5f6f70", +"#Je c #5f7070", +"#yp c #5f7170", +"emk c #5f7173", +"eKd c #5f7374", +"eDc c #5f7475", +".JI c #5f7a78", +".8G c #5f7d90", +"#fb c #5f80a7", +".WH c #5f8297", +".7g c #5f8da8", +"aut c #5f9494", +"#9a c #5f9b87", +"#a7 c #5f9dcb", +"#b9 c #5f9fca", +"ftY c #5fc09e", +"fkD c #5fd788", +"aoV c #600000", +"fKg c #602f35", +"fjk c #602f36", +"fpv c #603033", +"fYN c #60323c", +"fji c #603337", +"far c #60353c", +"eEj c #60383c", +"f7U c #603e42", +"fvD c #604349", +"e3L c #60453f", +"eBB c #60464b", +"gpM c #60484c", +"fyH c #60494c", +"chL c #604a30", +"eDT c #604b4d", +"fA8 c #604c4e", +"dAU c #604d4a", +"gpw c #604d52", +".xY c #604e4e", +".dc c #604e60", +"bWL c #604f3c", +"dSl c #604f49", +"eDL c #604f52", +"cnf c #605143", +".h8 c #60514d", +".zZ c #605251", +"dKL c #605253", +"b.9 c #605344", +"cxu c #605345", +"dP5 c #60534b", +"eci c #60544a", +".i0 c #605451", +"gfC c #605456", +".i9 c #605551", +"dk# c #605552", +"dd7 c #605556", +"gnC c #605559", +".TS c #605630", +".S0 c #605638", +"bnW c #605647", +"g#o c #605657", +"g#l c #60575a", +"b0l c #605847", +".wg c #605858", +"dcl c #605859", +"a7U c #60594e", +".j6 c #605958", +".j5 c #605959", +"gwL c #60595a", +"fXR c #60595b", +"dq0 c #605a5b", +"bX9 c #605b4a", +".eE c #605b59", +"aYK c #605c50", +".eF c #605c5b", +"cWW c #605c5d", +"gtq c #605c60", +".Uq c #605d52", +".ML c #605d59", +".Ta c #605d5a", +".au c #605d5c", +"efo c #605d5d", +".fk c #605d5f", +"ghA c #605d60", +"c7e c #605e56", +"aV4 c #605e5e", +".do c #605e5f", +".8B c #605e60", +"aWe c #605f5a", +".xb c #605f5d", +".eL c #605f5e", +".tp c #605f5f", +".B4 c #605f60", +".dk c #605f61", +".pO c #605f62", +"cvk c #606059", +".Qn c #60605c", +".y5 c #60605d", +".Bh c #60605e", +".w7 c #60605f", +".tk c #606060", +".FL c #606061", +".qL c #606063", +".nB c #606065", +"cOC c #606159", +"cLN c #60615b", +"bYY c #60615c", +"aZj c #60615e", +"#b5 c #60615f", +".eM c #606160", +".xz c #606161", +".A5 c #606162", +".vF c #606163", +".qW c #606164", +".qj c #606165", +"ae6 c #60625d", +"duJ c #60625f", +".8a c #606260", +"aij c #606261", +".TX c #606263", +".oD c #606266", +".CP c #606267", +"cpj c #60635a", +"bSK c #60635c", +"a.9 c #606360", +".WQ c #606364", +".D0 c #606365", +".DX c #606366", +"bY9 c #60645d", +"ab8 c #606460", +".x2 c #606463", +".CO c #606465", +".2c c #606466", +"fls c #606467", +"cVU c #60655c", +"aJO c #60655e", +"b#n c #606561", +"cMW c #606562", +"dAg c #606565", +".8R c #606566", +".XP c #606567", +"cvq c #60665c", +"byR c #60665f", +"#LJ c #606662", +"#LK c #606663", +"daB c #606664", +"#.h c #606665", +"dD1 c #606666", +".WS c #606667", +".38 c #606668", +"cVX c #60675d", +".w1 c #60675f", +".s2 c #606760", +"dFU c #606767", +"c7j c #60685c", +"cPb c #60685e", +"#ED c #606865", +"ct5 c #606867", +"bm5 c #606869", +".vg c #606961", +"c#1 c #606966", +"bsF c #60696a", +"aVp c #606a62", +"aMv c #606a63", +"aVc c #606a68", +"bbc c #606a69", +"bo8 c #606a6a", +".XL c #606a73", +"avv c #606b65", +"boq c #606b66", +"bvS c #606b67", +".vn c #606c62", +"anZ c #606c6a", +"a5J c #606c6c", +"acC c #606d6c", +"blB c #606d6d", +"bov c #606e6d", +"dwc c #606e6e", +"a#N c #606f6f", +"#PN c #607070", +"#Sy c #607171", +"eTf c #607274", +"eaO c #607373", +"eKh c #607374", +"eMu c #607376", +".Wc c #607475", +".NC c #607678", +".Nx c #607878", +".NA c #607978", +".Mi c #607979", +"gv# c #6081b8", +"#en c #608baf", +"#cW c #609bc4", +".17 c #609ccd", +"#dK c #609dcb", +"#bG c #60a0cb", +"#CG c #60d22b", +"fkC c #60d883", +"bcU c #6101fd", +"fzv c #613037", +"fTc c #613039", +"fS2 c #61333d", +"ePS c #61353b", +"f1U c #613640", +"ePV c #61373a", +"f7J c #61393e", +"fdI c #613d3b", +"gcE c #613e43", +"gav c #613f43", +"enk c #614042", +"ein c #614043", +"fZo c #614243", +".gw c #61433c", +".gG c #61433e", +"giP c #614347", +"eH. c #61453e", +"gpQ c #61474a", +"eBA c #61484c", +".h3 c #614943", +".ib c #614944", +"gpN c #61494d", +"eM7 c #61494e", +"ckr c #614c32", +"chK c #614c33", +"e#8 c #614d46", +"eM3 c #614d4f", +"dEB c #614e4b", +"f6Q c #614e52", +"dEF c #614f4d", +"eM0 c #615154", +"dNf c #615353", +"eIp c #615355", +"dIe c #615356", +"gdC c #615557", +".e6 c #61565b", +"c9J c #615758", +".gJ c #615761", +"bMn c #61584c", +"d#y c #615859", +".N2 c #61594c", +".S1 c #615a3b", +"dd3 c #615a5d", +"a1v c #615b4f", +".gM c #615b50", +"#Zv c #615b5b", +"d2P c #615c50", +".R8 c #615c54", +".cH c #615c5b", +"dXJ c #615d51", +".Tb c #615d58", +".eK c #615d5c", +"d0j c #615e52", +"a7t c #615e54", +"bBJ c #615e58", +".N3 c #615e59", +".eJ c #615e5c", +"frK c #615e61", +".R9 c #615f56", +".Ut c #615f58", +".R7 c #615f5c", +".eI c #615f5e", +"cTV c #615f60", +".Qm c #61605d", +"czW c #61605e", +".eG c #61605f", +".tx c #616060", +".B5 c #616061", +".Co c #616064", +"cUf c #616159", +"cxR c #61615a", +"cxN c #61615b", +".D7 c #61615f", +".uz c #616160", +".xE c #616161", +".yu c #616162", +".nn c #616163", +".q. c #616164", +"cKC c #61625a", +"czf c #61625c", +"bYX c #61625d", +".ZP c #61625f", +".zd c #616261", +".sC c #616262", +".y0 c #616263", +".mf c #616264", +".qe c #616265", +".qP c #616266", +".o3 c #616269", +"cS2 c #61635a", +"b39 c #61635c", +"dqJ c #61635f", +".Xs c #616361", +".Vi c #616362", +".D1 c #616363", +".39 c #616364", +".yP c #616365", +".yT c #616366", +".qi c #616367", +".ng c #616368", +"cB5 c #61645b", +"b1o c #61645d", +"#LO c #616463", +"eMM c #616466", +".6j c #616467", +"c3R c #61655d", +"bJL c #61655e", +"cJw c #616561", +"#Pe c #616566", +".26 c #616567", +".AY c #616569", +"c#5 c #61665d", +"bNo c #61665f", +".Au c #616662", +".Cm c #616663", +"gvw c #616665", +"b9R c #61675d", +"cmr c #616760", +".wE c #616761", +"#RY c #616763", +"#Bi c #616766", +"dD2 c #616767", +"cAk c #61685d", +"cRK c #61685e", +"aMC c #616860", +".vt c #616861", +"bj7 c #616862", +"cPc c #61695f", +"dgV c #616961", +"bjX c #61696a", +"cju c #61696b", +"gxj c #616972", +"dgS c #616a60", +"aDO c #616a62", +"bC0 c #616a69", +"bqY c #616a6b", +"dus c #616a6c", +"bbh c #616b62", +"#EB c #616b67", +"aR8 c #616b69", +"aPg c #616b6a", +"bFa c #616b6b", +"bRs c #616b6c", +".vf c #616c61", +"aVk c #616c65", +"aew c #616c66", +"aPj c #616c68", +"aqL c #616c6a", +"dRg c #616c6c", +"fUR c #616c6e", +"#FH c #616d6e", +"#4h c #616e67", +"bfu c #616e6e", +"bcu c #616f6e", +"aiH c #616f6f", +"dul c #61706f", +"dqo c #617070", +"acL c #617171", +"a#M c #617271", +"ewp c #617275", +"eOC c #617277", +"#B7 c #617372", +"#B6 c #617373", +"eFC c #617576", +"dV5 c #617674", +"eQT c #617778", +".Nz c #617879", +".Nw c #617978", +".NB c #617979", +".Ny c #61797a", +".Q8 c #61797c", +"#dk c #6192b3", +"#Qr c #619774", +".VY c #619dc4", +"#dI c #619dc8", +"#cb c #619dcd", +"#bI c #619fcc", +"#a6 c #61a0cc", +"d3g c #61ac5c", +"b#6 c #6207f0", +"fTe c #623039", +"f2e c #62343b", +"fi7 c #62353e", +"ePN c #62393e", +"a88 c #623cc1", +"ezW c #623d3f", +"eQc c #623e3b", +"fmN c #62413f", +"ef5 c #624245", +"eJo c #62433d", +"fCi c #624341", +"edO c #624348", +".gx c #62443e", +"f7X c #624445", +"ezx c #62454a", +"grN c #62474b", +"ele c #624842", +"gpR c #62484b", +"eM9 c #62484c", +"d7m c #624945", +"gn9 c #62494c", +"gpL c #62494d", +"gpK c #624c4f", +".gA c #624d48", +"bhI c #624e31", +"ePk c #624e50", +"glS c #624e53", +"grD c #624f51", +"gfI c #624f53", +"dWO c #625052", +".h9 c #62514c", +"euk c #625155", +"dUT c #62524b", +"dyS c #62524e", +"eF9 c #625255", +"dwX c #625353", +".e5 c #62535f", +".i1 c #625450", +".i8 c #625451", +"eIo c #625456", +"b.4 c #625547", +"dGT c #62554f", +"dI4 c #62564f", +"gjN c #625659", +"eRj c #625758", +"cBC c #625848", +".eP c #625855", +"a49 c #625950", +"dig c #625956", +"emL c #62595a", +"a1F c #625a4d", +".gL c #625a53", +"dd4 c #625a5c", +".TQ c #625b46", +"d0g c #625b4f", +"bDs c #625b51", +"eza c #625b5c", +"glF c #625b5d", +".SZ c #625c4d", +".gB c #625c5b", +"guE c #625c5c", +"gpl c #625c61", +"bFD c #625d52", +".BZ c #625d5c", +".ie c #625d64", +".Sl c #625e57", +".eO c #625e5e", +"cZy c #625e5f", +".Rl c #625f4e", +"bV7 c #625f4f", +".PI c #625f5a", +".Vz c #625f5e", +"dRp c #625f5f", +"cVr c #625f60", +"dXK c #626054", +"cxM c #62605c", +"dAr c #62605e", +".Dr c #626060", +".f# c #626061", +".YD c #626062", +"b26 c #62615d", +"b43 c #62615e", +".eH c #62615f", +".D6 c #626160", +".BY c #626161", +".Fy c #626162", +"bep c #626259", +"bz. c #62625b", +"b1b c #62625d", +"aia c #62625f", +".D5 c #626260", +".ty c #626261", +".sk c #626262", +".yU c #626263", +".n4 c #626264", +".D2 c #626265", +".p8 c #626266", +".qD c #626267", +"bJT c #62635a", +"cL7 c #62635b", +"cIy c #62635d", +"bWU c #62635e", +"bYW c #62635f", +".Rm c #626360", +".D4 c #626361", +".yW c #626362", +".mT c #626363", +".CU c #626364", +".oH c #626365", +".qU c #626366", +"fDo c #626367", +".pW c #626368", +"cGA c #62645c", +"b6b c #62645d", +".Vj c #626462", +".x. c #626463", +".S6 c #626464", +".re c #626467", +".p9 c #626468", +".pb c #626469", +"crS c #62655c", +"ccB c #62655d", +"bW0 c #62655e", +".yp c #626562", +".oa c #626569", +"aqE c #626663", +"#EY c #626667", +".00 c #62666a", +"bVY c #626760", +"#1C c #626763", +"c9d c #626862", +"cLA c #626864", +"daA c #626866", +"d#7 c #626960", +"aAZ c #626961", +"akL c #626962", +"aSn c #626963", +"cOm c #626967", +"cme c #626969", +"cUk c #626a5f", +"#7E c #626a62", +"bGx c #626a64", +"cjv c #626a6b", +"cAl c #626b60", +"btN c #626b66", +"awm c #626b68", +"cg6 c #626b6a", +"dgW c #626c63", +"b.i c #626c64", +"a99 c #626c6b", +"bFb c #626c6c", +"bHm c #626c6d", +".ve c #626d63", +".vc c #626d64", +"am8 c #626d65", +"ahw c #626d67", +"aPi c #626d69", +"a38 c #626d6b", +"fXD c #626d6f", +"aZI c #626e6e", +"#yu c #626e70", +"#0X c #626f68", +"#4g c #626f69", +"e2k c #627071", +".01 c #62707b", +"#PL c #627272", +"#FB c #627373", +"eTg c #627474", +".8E c #62747f", +"d6a c #627677", +"d3N c #627678", +"dQZ c #627776", +".M5 c #627778", +".Nu c #627978", +".ND c #62797a", +".Nv c #627a7a", +".Q7 c #627a7c", +".Y2 c #627b78", +"#er c #6286ab", +".8F c #6288a0", +"#dN c #6289ad", +"aux c #629294", +".8I c #629ac2", +".7k c #629ac3", +".6b c #629cc4", +"#cx c #629dcd", +".48 c #629ec5", +"#au c #62a1ce", +"#y3 c #62f905", +"aCP c #632bd3", +"#21 c #632c31", +"fQ# c #633138", +"fzr c #63323a", +"f2g c #63353d", +"fVN c #63353f", +"f4N c #633741", +"ePP c #63393f", +"eGO c #633a3e", +"eRM c #633a40", +"fsk c #633d44", +"eQb c #633e3c", +"ezS c #633e40", +"fc3 c #633f44", +"ff1 c #633f46", +"ffY c #634045", +"f99 c #634145", +"fyW c #634146", +"fpP c #634240", +".gF c #63443d", +"e0O c #634640", +"gmX c #63464b", +"edM c #63474b", +"esa c #63484c", +"gpP c #63494b", +"d4G c #63494c", +"dW9 c #634a4c", +"gpO c #634a4d", +"gn5 c #634a4f", +".h7 c #634e48", +"bhV c #634f37", +"ghS c #634f54", +"dCJ c #63504e", +"ekq c #635052", +"glT c #635054", +".xX c #635152", +"beV c #63523c", +"dAT c #63524e", +"bSu c #635341", +"dNL c #63534c", +"eRo c #635356", +".i6 c #63544f", +".i2 c #635451", +"epp c #635457", +".i5 c #635551", +"d84 c #635658", +"dlX c #635753", +"ghJ c #63575a", +".OV c #635949", +"dLq c #635951", +"dlD c #635959", +"eO9 c #63595a", +"ehI c #635a5b", +"dci c #635b5c", +".gC c #635d5a", +"c9F c #635d5d", +"d#h c #635d5e", +"e.a c #635e52", +"cF8 c #635e55", +"bIn c #635e56", +".c3 c #635e5c", +".zY c #635e5f", +"d2Q c #635f53", +"dfP c #635f5d", +".TT c #636050", +"cRA c #63605c", +"dfS c #63605f", +"eFW c #636060", +".MM c #63615e", +".wh c #636162", +"#bx c #636163", +"#bA c #636164", +"ddM c #636260", +".Ds c #636261", +".tF c #636262", +".l8 c #636263", +".TP c #636264", +"fkb c #636269", +"bJV c #63635a", +".PA c #636361", +".tS c #636362", +".cT c #636363", +".st c #636364", +".Bp c #636365", +".na c #636366", +".Cn c #636367", +"cIr c #63645c", +"cTL c #63645e", +"bUP c #636460", +"ah9 c #636461", +".Ql c #636462", +".xF c #636463", +".zX c #636464", +".mH c #636465", +".TW c #636466", +".mO c #636467", +".pX c #636468", +"deH c #63655d", +"beo c #63655e", +".Be c #636560", +"cNc c #636562", +".DL c #636563", +".BT c #636564", +".Bc c #636566", +"foC c #636567", +".qx c #636569", +"csP c #63665d", +"b1n c #63665f", +".yQ c #636668", +"fI6 c #636669", +"b3d c #636760", +".E2 c #636763", +"#R9 c #636768", +".YS c #63676a", +"cO3 c #63685d", +"bVX c #636861", +"bxR c #636862", +"#8. c #636864", +"#nv c #636866", +"ccu c #63695f", +"bC9 c #636961", +".s3 c #636963", +"crK c #636964", +"aNo c #636965", +"#xO c #636967", +"cLz c #636968", +"dCh c #636969", +"cQJ c #636a61", +"aPv c #636a62", +"a4k c #636a63", +"dnZ c #636b60", +"bvJ c #636b65", +"cGo c #636b6a", +"bg6 c #636b6b", +"cg5 c #636b6d", +".Vt c #636b6f", +".vr c #636c62", +".v. c #636c63", +".vo c #636c64", +".vq c #636c65", +"aEI c #636c69", +"b3U c #636c6b", +".vd c #636d63", +".vb c #636d64", +"aAV c #636d65", +"bVP c #636d6d", +"byH c #636d6e", +"#SC c #636d70", +".Z1 c #636d74", +"#UI c #636e66", +"aDE c #636e68", +"aYn c #636e6a", +"b7Y c #636e6d", +"fXE c #636e6f", +"aqQ c #636f6d", +"#Cc c #636f70", +"#4i c #637069", +"#Jl c #637071", +"fLK c #637172", +".WO c #63717d", +"#ME c #637272", +"#2u c #637373", +"acM c #637473", +"dQ0 c #637474", +"#ym c #637575", +"#B5 c #637676", +"dOL c #637776", +"e.L c #637778", +".Ml c #637779", +"dTt c #637876", +".Mg c #637b7b", +".Q9 c #637b7e", +".U# c #637c79", +".Lg c #637d7c", +".02 c #637d92", +"#fa c #6386ab", +".V2 c #63879d", +"#i9 c #638eb0", +"#eu c #638ec0", +".ZZ c #638fb6", +"arx c #639492", +"ajk c #639594", +"#CO c #639765", +".46 c #6397b7", +"d0U c #639962", +"#cY c #639ece", +"#bK c #63a0ce", +"#a8 c #63a1cf", +"fhv c #63da86", +"bax c #6431bd", +"fVP c #64353f", +"fYM c #64363f", +"f1S c #64373f", +"ePO c #64393e", +"eW4 c #643a41", +"eBY c #643b3e", +"faU c #643c3c", +"ezT c #643d40", +"fsi c #643f46", +"fwy c #64403f", +"exr c #644143", +"fag c #644149", +"geA c #644248", +"edQ c #644346", +"ekU c #644447", +"f2u c #644547", +"edP c #644548", +"fyU c #64454b", +"f5n c #644648", +"eBG c #64474b", +"ewV c #64474c", +"eHa c #644942", +".ia c #644943", +".h4 c #644944", +"ezq c #64494e", +"cMC c #644b4a", +"gsy c #644b4e", +"gn4 c #644b4f", +"eKS c #644c4f", +".i. c #644e48", +".BA c #644f2e", +"eM6 c #644f52", +".eQ c #64504b", +"dRL c #645052", +"f4c c #645054", +"gjU c #645154", +".eV c #645250", +"f1h c #645256", +"b01 c #645442", +".i7 c #645451", +"ebo c #645457", +"b2W c #645547", +".i3 c #645550", +".i4 c #645551", +"gby c #645759", +"gjP c #64575a", +"eRk c #64585a", +"gfB c #64585b", +"b#a c #64594a", +"epi c #64595a", +".e4 c #645964", +"dSt c #645b52", +".PJ c #645c50", +"bw8 c #645c51", +"ghB c #645c5f", +"bKy c #645d53", +"guB c #645d5e", +"fU5 c #645d5f", +"a1x c #645e51", +".Ru c #645e55", +"c5v c #645e5e", +"bHU c #645f53", +".OM c #645f58", +"dsY c #645f5f", +"c7. c #64605c", +"dnd c #64605e", +"gw1 c #646060", +"cY. c #646061", +"#bz c #646063", +".Qw c #64615e", +"c9E c #646160", +".z2 c #646161", +"#bt c #646162", +"#bw c #646163", +"#bv c #646164", +".S2 c #646255", +"dV# c #646256", +"#bB c #646261", +".TN c #646262", +"d8V c #646263", +"b25 c #64635f", +"cBN c #646361", +".NW c #646362", +".BU c #646363", +".gh c #646364", +".Gp c #646365", +".CK c #646366", +"cOY c #64645c", +".R4 c #64645e", +".S. c #646460", +".0n c #646461", +".0k c #646462", +".uW c #646463", +".cR c #646464", +".su c #646465", +".TO c #646466", +".mU c #646467", +".ri c #646468", +"cxQ c #64655d", +"cUg c #64655e", +"cdy c #64655f", +".Ez c #646564", +".nF c #646565", +".qd c #646566", +".rW c #646567", +".po c #646568", +".qE c #64656a", +"c0Q c #64665f", +"dqK c #646663", +".yR c #646664", +"#45 c #646665", +".AX c #646666", +".l9 c #646667", +".Z2 c #646668", +".rj c #646669", +".or c #64666a", +".qA c #64666b", +"cnI c #64675e", +"b7d c #646760", +".vD c #646765", +".mY c #646768", +"fu2 c #64676a", +".pE c #64676b", +"c.3 c #646860", +"ejE c #646865", +"#L5 c #646869", +".y4 c #646962", +"c19 c #646963", +"#7K c #646966", +"#EP c #646969", +"co2 c #64696a", +"c#7 c #646a60", +"#LD c #646a66", +"cLw c #646a68", +"ceR c #646b60", +"bIP c #646b62", +"a1i c #646b63", +"a.Q c #646b64", +"ccq c #646b65", +"cFJ c #646c61", +".v# c #646c64", +"cg4 c #646c6e", +".vp c #646d63", +".va c #646d64", +"cA3 c #646d69", +"#A3 c #646d6a", +"#A8 c #646d6b", +"ct7 c #646d6c", +"aAW c #646e66", +"aex c #646e68", +"#A2 c #646e6a", +"aR6 c #646e6d", +"bAP c #646e6f", +"#VG c #646e70", +"aDG c #646f69", +"bqo c #646f6b", +"b51 c #646f6c", +"a69 c #646f6d", +"bfm c #64706a", +"dWp c #647070", +"dBY c #647072", +"dqp c #647171", +"eQ3 c #647273", +"#Y8 c #647474", +"dB0 c #647575", +"eMy c #647678", +".Uy c #647681", +".V4 c #647685", +"dzT c #647777", +".X0 c #647879", +"eyP c #64797a", +"dYK c #647a78", +".Q4 c #647c7e", +".X4 c #647d7a", +"#dO c #648db5", +"#es c #648fbb", +".VX c #6498b8", +"#c1 c #6498d0", +"#ba c #6498d1", +".Vs c #649abc", +".Vp c #64a2c7", +"bqz c #64a45b", +"#av c #64a4d1", +"d3n c #64b96c", +"fqJ c #64c29e", +"fHl c #653239", +"fEu c #65333a", +"#zC c #65349d", +"fZb c #65353c", +"fat c #65383f", +"fdg c #653940", +"eJ. c #653c40", +"fTr c #653c41", +"fiY c #653c44", +"fZk c #654244", +"fo1 c #654349", +".gD c #65443d", +"fs5 c #654442", +"exk c #654445", +"eG4 c #654641", +"ewW c #65474c", +"euw c #65484c", +"eux c #65484d", +"eH# c #654942", +"gn8 c #654b4e", +"gn3 c #654d51", +"ckA c #655038", +"fA9 c #655052", +"beI c #655137", +"eM4 c #655153", +"dRC c #655154", +".eY c #65524f", +"ghR c #655256", +"gfF c #655457", +"bKv c #655543", +"dLj c #655550", +"fX6 c #655558", +"fSp c #655559", +"b4U c #655648", +"a53 c #6558a4", +"cBr c #65594a", +"glL c #65595c", +".MK c #655a4b", +"eRl c #655a5c", +"fSi c #655a5e", +"chw c #655b49", +"cDq c #655c4f", +"bs7 c #655c51", +".Qx c #655d52", +"a4T c #655e51", +"d2O c #655e53", +"dNX c #655e54", +".c4 c #655e5c", +".OQ c #655f56", +"c5p c #655f5f", +".R6 c #656152", +"dKw c #656160", +"#bu c #656162", +"#by c #656163", +".Fz c #656260", +".eW c #656262", +"cVq c #656263", +"dD# c #656359", +".yv c #656365", +"f0g c #65636a", +"b1# c #656461", +"cDJ c #656462", +".vI c #656463", +".cQ c #656464", +".sV c #656465", +".Av c #656466", +"cfZ c #65655d", +"bYV c #656562", +"akY c #656563", +".cU c #656564", +".cS c #656565", +".ss c #656566", +".oB c #656568", +"fGh c #656569", +"cz8 c #65665e", +"czd c #656660", +"bw1 c #656661", +".EA c #656664", +".wW c #656665", +".tI c #656666", +".mh c #656667", +".lx c #656668", +".p7 c #656669", +".qV c #65666a", +"b87 c #656760", +"#7U c #656764", +".E3 c #656767", +".Vw c #656768", +"fI7 c #65676a", +".nC c #65676b", +".qg c #65676c", +"cum c #65685e", +"cEP c #65685f", +"cXg c #656860", +"cut c #656861", +".wC c #656865", +"a#f c #656869", +"cVT c #65695f", +"chi c #656961", +"b5h c #656962", +".vh c #656966", +"#Iv c #65696a", +"buD c #656a63", +"bvy c #656a64", +".vl c #656a65", +"#Yb c #656a66", +"aMx c #656b63", +"bOF c #656b64", +"cEH c #656b67", +"#xq c #656b6b", +"#Ir c #656b6c", +"cAg c #656c62", +"cXm c #656c63", +"aSt c #656c64", +"ahV c #656c65", +"cSq c #656c66", +"cGr c #656c69", +"cKQ c #656d62", +"cs2 c #656d64", +"cEJ c #656d65", +"cCY c #656d6b", +"cjt c #656d6f", +"c#2 c #656e69", +"cqF c #656f66", +"apI c #656f67", +"b70 c #656f6a", +"b9M c #656f6b", +"aMn c #656f6e", +"bun c #656f70", +"aAP c #65706a", +"aVi c #65706c", +"byL c #65706d", +"a.p c #65726b", +"dz0 c #657272", +"bqq c #657372", +"fRY c #657374", +"afN c #657474", +"fDf c #657475", +"dFG c #657575", +"#kq c #657674", +"aiK c #657675", +"#VB c #657676", +"dV4 c #657775", +"dYJ c #657776", +"#yn c #657777", +"ewr c #657779", +"eY6 c #657879", +"eQU c #65787b", +"ejU c #65797a", +".Q6 c #657d7f", +"aOc c #658291", +".YJ c #6596b7", +".YK c #6598ba", +"##g c #6598d1", +"#cZ c #659fd0", +".7l c #65a0c9", +"#dL c #65a0d1", +"#cX c #65a2d1", +"fnN c #65c99b", +"fhw c #65d78c", +"bgu c #66349b", +"fgg c #66353f", +"fS5 c #663740", +"fVS c #663741", +"fP1 c #663842", +"e3a c #663b40", +"fVR c #663b44", +"fl5 c #663c45", +"eNK c #663d41", +"eUf c #663e44", +"fCb c #663f40", +"fHD c #664141", +".gE c #66453d", +"fzQ c #664644", +"ggJ c #66464b", +"ebP c #664749", +"fvC c #66474c", +"giN c #66484d", +"eXC c #664943", +".i# c #664a43", +".h6 c #664b44", +"go. c #664b4e", +"eAh c #664c45", +"gn7 c #664c4e", +"gn6 c #664c4f", +"guM c #664c50", +"eKP c #664c51", +".eR c #664d47", +"gn2 c #664d51", +"gnL c #665157", +"cfu c #665237", +"eIw c #665254", +"ezn c #665355", +"gjT c #665357", +"gbC c #665558", +"bYL c #665640", +"frQ c #665659", +"fVd c #66565a", +"bKw c #665748", +"dUU c #665750", +"brM c #66584a", +"fJi c #66585a", +".zj c #665945", +"bxn c #665a4b", +"b.3 c #665b4b", +"cdh c #665b4c", +"fJh c #665b5d", +"bKx c #665d50", +"bF2 c #665d52", +"dG0 c #665d56", +"d#A c #665d5e", +"emG c #665e5f", +"c8m c #665f5c", +"df3 c #665f5f", +"c36 c #666060", +"gnA c #666064", +".Rk c #66614c", +".R5 c #66614e", +"a8b c #66615d", +".aE c #66615e", +"c2t c #666160", +"cZw c #666261", +"dSE c #666357", +"dxt c #66635a", +"ddP c #666362", +"bFC c #66645a", +"dze c #66645b", +".Rj c #66645f", +".x0 c #666465", +"bDi c #66655d", +".SX c #66655f", +"b24 c #666561", +".av c #666563", +".vv c #666564", +".gi c #666565", +".s0 c #666566", +".Cp c #666567", +".AT c #666568", +"f.C c #666569", +"cUc c #66665e", +"bQn c #666663", +".vx c #666664", +".aB c #666665", +".sB c #666666", +".sW c #666667", +".yO c #666668", +".rH c #666669", +"fg7 c #66666a", +"cBc c #666761", +".Bg c #666765", +".zV c #666766", +".mu c #666767", +".wZ c #666768", +".mQ c #666769", +".qT c #66676a", +".oU c #66676c", +".oT c #66676d", +"cGC c #66685f", +"cD. c #666861", +".Bf c #666865", +"afl c #666867", +".w0 c #666868", +".mo c #66686a", +".rf c #66686c", +".oN c #66686d", +".oM c #66686e", +"cwR c #666960", +"bKP c #666962", +"cJZ c #666a63", +"#gF c #666a6a", +"#S. c #666a6b", +"dtX c #666b61", +"bHz c #666b64", +"bE. c #666b65", +"#1B c #666b67", +"chh c #666c62", +"crL c #666c64", +"bnd c #666c65", +"a1f c #666c66", +"#UU c #666c68", +"cPP c #666c6a", +"#xp c #666c6c", +"cAf c #666d63", +"aMB c #666d65", +"abX c #666d66", +"aBJ c #666d6b", +"cwD c #666d6d", +"cNz c #666e63", +"dgT c #666e64", +"aDN c #666e66", +"crC c #666f6e", +"b.h c #667067", +"aDJ c #667068", +"#w9 c #66706c", +"a7e c #66706e", +"aMm c #66706f", +"dO8 c #667071", +"#PS c #667073", +"fLf c #667082", +"am7 c #667169", +"asD c #66716a", +"aet c #66716b", +"aYm c #66716d", +"a08 c #66716f", +"dKl c #667170", +"dHR c #667172", +"a2C c #667272", +"#7c c #66736d", +"dsp c #667373", +"acN c #667475", +"eOO c #667576", +"#mH c #667673", +"#Y9 c #667676", +"dFE c #667777", +"#FA c #667979", +"e2d c #667a7a", +".W5 c #667a7b", +"dMn c #667b7a", +".Q5 c #667e80", +".Vv c #6684a0", +"#et c #6694c3", +".03 c #6697c2", +".V5 c #6697c3", +"#dP c #6699ca", +"biu c #669c67", +"#c0 c #669dd2", +".WP c #669ed1", +".XM c #669ed2", +".04 c #669fd2", +"#b. c #66a0d1", +".18 c #66a0d2", +"##b c #66a1d2", +".9Y c #66a2d2", +"#ax c #66a3d2", +".3Y c #66a4c9", +".XH c #66a4ca", +"##a c #66a4d2", +"##. c #66a5d1", +"#bH c #66a5d2", +".8M c #66a6d5", +"arK c #67000b", +"am# c #670208", +"#84 c #670306", +"#80 c #673031", +"bgz c #6732a6", +"fBW c #67353b", +"fMX c #673540", +"fP2 c #673741", +"#8Z c #673a3b", +"fi8 c #673a43", +"e9t c #673c43", +"eXb c #673e41", +"fHA c #673f40", +"fQr c #673f42", +"fgx c #674140", +"fzM c #674242", +"eu3 c #674345", +".gz c #67443d", +".gy c #67443e", +"gmh c #67464c", +"fDU c #67484d", +".h5 c #674943", +"eEE c #674944", +"gmg c #67494d", +"gmW c #67494e", +"ezr c #674a4f", +"gt4 c #674b50", +"gmd c #674c4f", +"gmc c #674c50", +"gmf c #674c51", +"gmb c #674d52", +".eS c #674e49", +"eKQ c #674e52", +"eb8 c #67514a", +"dUe c #675254", +"dNB c #67534f", +"eM5 c #675355", +"ghQ c #675458", +"#8W c #675555", +"eeh c #67564f", +"fvg c #675659", +"cuL c #675740", +"gdF c #67575a", +"ghL c #67585a", +"b6S c #675a4b", +"eeo c #675b52", +".c2 c #675b57", +"eRm c #675b5d", +"b#b c #675c4e", +"gdB c #675c5e", +"dd6 c #675d5e", +"eMR c #675e5f", +".Rq c #675f55", +"dch c #675f5f", +".PG c #676056", +"#8V c #67615f", +"gwM c #676162", +".eX c #676262", +"ehH c #676263", +"dD. c #67635a", +".cI c #676362", +"cX9 c #676364", +"grh c #676367", +"bc1 c #67639b", +".Si c #676460", +"djv c #676462", +"dvB c #67655c", +".cK c #676564", +"apj c #676567", +"b61 c #676661", +"b1a c #676663", +".cO c #676664", +".u3 c #676665", +".lD c #676666", +".lC c #676667", +".lL c #676668", +"fel c #67666c", +"anA c #676764", +"bIv c #676765", +".aC c #676766", +".lu c #676767", +".lz c #676768", +"gnw c #676769", +"b5c c #676862", +"acd c #676866", +".un c #676867", +".lI c #676868", +".m. c #676869", +".nk c #67686a", +".wV c #67686b", +".os c #67686c", +".o5 c #67686d", +".pM c #67686e", +"cOA c #676961", +"b3c c #676962", +"ah5 c #676964", +".EP c #676966", +".rs c #676968", +".rq c #676969", +".rr c #67696a", +".pN c #67696c", +".nt c #67696d", +".nh c #67696e", +"dDg c #676a5f", +"cEN c #676a61", +"brg c #676a63", +".s1 c #676a67", +".r1 c #676a6b", +".p6 c #676a6d", +".p2 c #676a6e", +".n0 c #676a6f", +"cFA c #676b62", +"b91 c #676b64", +"#Pd c #676b6c", +"fGg c #676b6e", +"aMH c #676c65", +"ae4 c #676c66", +"c0N c #676c67", +"#1D c #676c68", +"#EV c #676c6d", +"c#6 c #676d63", +"dn1 c #676d66", +"b9P c #676d67", +"aNp c #676d69", +"#Ig c #676d6a", +"#IJ c #676d6b", +"#Bk c #676d6d", +".Ux c #676d6f", +"bne c #676e65", +"#XW c #676e66", +"bz4 c #676e67", +"cFK c #676f64", +"cqD c #676f66", +"bhg c #676f67", +".V7 c #676f75", +"dp0 c #677066", +"dgU c #677067", +"bz8 c #67706b", +"cjy c #67706e", +"b3V c #67706f", +"ceC c #677070", +"aDI c #677168", +"#RP c #677169", +"abq c #67716c", +"aPe c #677170", +"bAN c #677172", +"aSg c #67726b", +"akq c #67726c", +"abp c #67726d", +"aMr c #67726e", +"aV# c #677270", +"dHS c #677272", +"cY9 c #677273", +"abu c #67736d", +"#0W c #67736e", +"a.k c #677370", +"dY6 c #677373", +"#0Z c #67746c", +"#0Y c #67746d", +"#4f c #67746f", +"aWO c #677575", +"f#M c #677576", +"#lW c #677676", +"#2v c #677777", +"aiJ c #677878", +"#yo c #677978", +"d1e c #677a79", +"dTw c #677b7b", +"eri c #677b7c", +".Nt c #677f7f", +".R. c #677f81", +".UQ c #67807d", +"##e c #679cd2", +"#b# c #679cd3", +"##d c #679dd2", +"##f c #679dd3", +".YP c #679ed2", +"#dM c #67a0cf", +"##c c #67a0d2", +"#cy c #67a1d2", +"#dn c #67a2d2", +"#bL c #67a2d3", +".9U c #67a3ce", +"#a9 c #67a3d2", +"#cu c #67a4d2", +"#dm c #67a4d3", +".7p c #67a4d5", +"#aw c #67a5d2", +"#dl c #67a6d2", +"#c. c #67a6d3", +"### c #67a8d4", +"ftV c #67c881", +"bdD c #68008f", +"#82 c #681e1b", +"adx c #6823dc", +"#81 c #682625", +"fZa c #68383e", +"fWd c #683a42", +"fS3 c #683a44", +"e0k c #683b40", +"fS4 c #683b44", +"ff8 c #683c43", +"e9q c #683d44", +"#8Y c #684344", +"fal c #68434a", +"exo c #684446", +"fvB c #68474c", +"fwC c #684846", +"epY c #684849", +"gmU c #68484d", +"ef3 c #68494c", +"fGM c #68494e", +"ewX c #684b4f", +"gme c #684c4f", +"gsx c #684f52", +"gma c #684f53", +"cft c #685135", +"eKO c #685154", +"dUK c #685350", +"eQq c #68554c", +"ghO c #685559", +"czA c #685847", +"dUS c #685851", +"bOd c #68594a", +"ckE c #685a48", +".c5 c #685a57", +"cuZ c #685b4b", +".LF c #685c4a", +"b## c #685c4c", +"dno c #685e5f", +"g#n c #685e60", +".cW c #685f5d", +"dEV c #686059", +".aF c #68605e", +"c92 c #68615e", +"daX c #686162", +"gfs c #686164", +"cE2 c #686258", +"gwQ c #686263", +"dXI c #686357", +"cXb c #68635f", +".xW c #686364", +"aYN c #686458", +"dV. c #686459", +"c9v c #686463", +"gzc c #686465", +"c7d c #68655e", +".Rt c #686562", +"dKv c #686563", +".cL c #686564", +".CW c #686568", +"#5S c #686663", +".cJ c #686665", +".lK c #686666", +"cTW c #686667", +"b.y c #68675e", +".SY c #686763", +".MD c #686765", +".aA c #686766", +".lA c #686767", +".lw c #686768", +".lN c #686769", +"fby c #68676e", +"bbs c #68685f", +"ayy c #686866", +".t9 c #686867", +".lt c #686868", +".lv c #686869", +".rp c #68686a", +".rt c #68686b", +".nu c #68686c", +".q3 c #68686d", +"cJ8 c #686962", +"cRf c #686963", +"bSB c #686964", +"bUO c #686965", +".tU c #686967", +".vj c #686968", +".vi c #686969", +".ro c #68696a", +".mn c #68696b", +".rI c #68696c", +".ni c #68696d", +".p3 c #68696e", +".o4 c #68696f", +"dgJ c #686a62", +"c2f c #686a63", +"dsJ c #686a67", +".tV c #686a68", +".vE c #686a69", +".r0 c #686a6b", +"fym c #686a6c", +".nj c #686a6d", +".nD c #686a6e", +".n1 c #686a6f", +".p4 c #686a70", +"cpk c #686b62", +"bU0 c #686b64", +".t2 c #686b67", +".t3 c #686b68", +"bRc c #686b69", +"cM2 c #686c62", +"bTO c #686c66", +".tX c #686c68", +".t7 c #686c69", +"#EM c #686c6b", +"#Pm c #686c6d", +"bhi c #686d66", +"c7T c #686d67", +"ab4 c #686d68", +"dAk c #686d6d", +"ccx c #686e64", +"bLA c #686e66", +"bvB c #686e67", +"d.1 c #686e69", +"#Ya c #686e6a", +"#P# c #686e6b", +"dji c #686e6c", +"d.Z c #686e6d", +"dt0 c #686f64", +"aAX c #686f67", +"cvz c #686f68", +"btM c #686f69", +"cyW c #686f6e", +"cFI c #687065", +"cPd c #687066", +"dmj c #687067", +"fcG c #687072", +"b71 c #68716c", +"#A4 c #68716e", +"ceD c #687170", +"aDH c #68726a", +"cEp c #68726b", +"bop c #68726c", +"aPh c #687271", +"bAQ c #687272", +"byJ c #687273", +"#w0 c #68736d", +"bpa c #68736e", +"ayX c #68736f", +"aVg c #687370", +"dWq c #687373", +"fXF c #687374", +"abs c #68746e", +"aix c #687472", +"aZH c #687474", +"a.q c #68756e", +"dK# c #687575", +"dqn c #687676", +"alm c #687777", +"#ld c #687877", +"#Vz c #687878", +"dHI c #687879", +"#yl c #687979", +"fF4 c #687a7a", +"eTe c #687a7c", +"dV6 c #687b7d", +"erj c #687c7d", +".Ns c #688080", +".R# c #688082", +"aIw c #688491", +"aoI c #689090", +"#ZP c #68927f", +"alY c #68928f", +".WM c #68a2c7", +".19 c #68a2d3", +".9X c #68aad5", +".Vo c #68acd3", +"bgB c #690fa6", +"#83 c #691110", +"a3q c #6933cb", +"fP3 c #693842", +"a0o c #6938ce", +"fN# c #693a3f", +"f47 c #693b43", +"fzf c #693b45", +"e9s c #693e45", +"fEf c #693e47", +"e0b c #693f43", +"e6k c #693f45", +"fzK c #694243", +"ePQ c #694248", +"fjz c #694442", +"fvK c #69474c", +"fd# c #69474d", +"gmV c #694a4f", +"euy c #694b4f", +"ezs c #694b51", +"eUO c #694c47", +"#8X c #694c4d", +".eZ c #694d47", +"gkX c #694d51", +"eBC c #694d52", +"eO. c #694e47", +"e#H c #694e51", +".e1 c #694f48", +"gqC c #694f52", +"gtV c #695356", +"ghP c #69565a", +"ePd c #69595c", +"eRn c #695a5c", +"dGR c #695b56", +"cfA c #695c4d", +"cr7 c #695d4c", +"dnF c #695d56", +"dnm c #695e60", +"bT3 c #696151", +".Qs c #696155", +"bh5 c #696156", +"dh4 c #696162", +"bT2 c #696254", +"df9 c #696263", +".rd c #696359", +"a8a c #69635e", +"d#w c #696363", +"dMY c #696463", +".wf c #696464", +"ekb c #696465", +"glC c #696468", +"bNy c #69655b", +"eIj c #696566", +".cM c #696665", +"efn c #696666", +"edd c #696667", +"czV c #696765", +".cP c #696767", +".lO c #696768", +".CJ c #696769", +".AS c #69676a", +"dXL c #69685b", +"d.b c #696861", +"cqh c #696862", +"ck0 c #696863", +"c.O c #696864", +".ax c #696866", +".aw c #696867", +".lB c #696868", +".ly c #696869", +"d#1 c #696961", +"ai# c #696966", +".wD c #696967", +".lJ c #696968", +".lS c #696969", +".lM c #69696a", +".rO c #69696b", +".rZ c #69696c", +".n2 c #69696e", +".qZ c #69696f", +"dE4 c #696a5f", +"cBZ c #696a62", +"cM8 c #696a64", +".tW c #696a68", +".wi c #696a69", +".lX c #696a6a", +".mW c #696a6b", +".mP c #696a6c", +".nE c #696a6d", +".n3 c #696a6e", +".ob c #696a6f", +".q0 c #696a70", +"dnT c #696b62", +"b7c c #696b64", +".t4 c #696b68", +".t5 c #696b69", +".t6 c #696b6a", +"#Yy c #696b6b", +".mi c #696b6d", +".oE c #696b6e", +".ns c #696b6f", +".pL c #696b70", +"cC7 c #696c63", +"bY8 c #696c65", +"frG c #696c6d", +"#LQ c #696c6e", +"b92 c #696d66", +".Hf c #696d6d", +"bTP c #696e67", +"ble c #696e68", +"a.X c #696e69", +"cYy c #696f65", +"b9Q c #696f67", +"a4j c #696f69", +"cIk c #696f6d", +"#Bj c #696f6f", +"dAj c #696f70", +"dnY c #697066", +"bRF c #697067", +"buB c #697068", +"bnf c #697069", +"#xg c #69706f", +"clb c #697167", +"a4n c #697168", +"ceB c #697173", +"c5Z c #697266", +"cs1 c #697267", +"ceK c #69726d", +"aBM c #69726f", +"cGn c #697271", +"apH c #69736b", +"bur c #697372", +"dB8 c #697374", +"#ML c #697375", +"deO c #69746a", +"apJ c #69746c", +"aSf c #69746d", +"aeu c #69746e", +"ax9 c #697470", +"a07 c #697472", +"fXC c #697476", +"abt c #69756e", +"#4e c #697571", +"an4 c #697573", +"acB c #697574", +"a5I c #697575", +"#Xu c #69766f", +"#Xt c #697670", +"#8B c #697878", +"#5A c #697979", +"dMo c #69797a", +"#Jd c #697a7a", +"dTs c #697b7a", +"ee4 c #697b7d", +"ejV c #697c7e", +"dQY c #697d7c", +"ecR c #697d7e", +".3e c #697f7d", +".UJ c #698181", +".Rb c #698183", +".8N c #69a1d1", +".6c c #69a5ca", +".XI c #69a9d2", +".9W c #69aed7", +"feF c #69da8b", +"fzq c #6a333e", +"fwd c #6a373e", +"fKa c #6a3a42", +"fS6 c #6a3a44", +"fEe c #6a3d47", +"fEL c #6a4344", +"fo2 c #6a444b", +"fah c #6a444c", +"fCc c #6a4545", +"fiV c #6a454b", +"gey c #6a454d", +"ffR c #6a474d", +"eN3 c #6a4844", +"giL c #6a494e", +"fsg c #6a494f", +"gkU c #6a4a4e", +"goO c #6a4c50", +"gkg c #6a4d51", +"d9w c #6a4e51", +"guL c #6a4f53", +"eEJ c #6a5048", +"eDV c #6a5053", +"gm# c #6a5054", +"gsw c #6a5154", +"eEN c #6a524a", +"d4U c #6a5450", +"fvo c #6a5456", +"ghT c #6a545a", +"d2s c #6a5550", +"gfO c #6a555a", +"enR c #6a564d", +"gfJ c #6a565a", +"gfN c #6a565b", +"ehS c #6a5759", +"g#r c #6a575b", +"gfM c #6a585c", +"ghM c #6a595c", +".cX c #6a5a57", +"fPj c #6a5a5d", +"bIj c #6a5b4c", +"dI0 c #6a5b55", +"edp c #6a5b5e", +"dth c #6a5c5c", +"cBq c #6a5e4f", +".aL c #6a5f5d", +"a1L c #6a6053", +".aG c #6a605d", +".aM c #6a605e", +"gvD c #6a6063", +"d2N c #6a6156", +"dQ# c #6a6258", +"dC7 c #6a635b", +"gqs c #6a6364", +"bJ6 c #6a6458", +"a8# c #6a645c", +"c5r c #6a6464", +"gz. c #6a6465", +"emF c #6a6566", +"bLM c #6a6659", +".cN c #6a6765", +".az c #6a6766", +"erK c #6a6767", +".ay c #6a6866", +".wY c #6a6868", +".lY c #6a686a", +"cLZ c #6a6964", +"bQo c #6a6966", +"cQd c #6a6967", +".tL c #6a6968", +".lP c #6a6969", +".lR c #6a696a", +".rk c #6a696e", +"fqn c #6a696f", +".vw c #6a6a68", +".lQ c #6a6a69", +".lV c #6a6a6a", +".lU c #6a6a6b", +".m# c #6a6a6c", +".ok c #6a6a6d", +".rl c #6a6a6f", +"dbp c #6a6b63", +"cDa c #6a6b65", +".tT c #6a6b69", +".uO c #6a6b6a", +".uk c #6a6b6b", +".mv c #6a6b6c", +".r2 c #6a6b6d", +".pF c #6a6b6e", +".n# c #6a6b6f", +".oF c #6a6b70", +"drM c #6a6c61", +"dbr c #6a6c64", +"cw1 c #6a6c65", +".ui c #6a6c6a", +".xS c #6a6c6c", +".m0 c #6a6c6d", +".rm c #6a6c70", +"cB# c #6a6d64", +"bQB c #6a6d66", +"cM3 c #6a6e64", +"bW5 c #6a6e67", +"#1A c #6a6e6b", +"#Pk c #6a6e6f", +"bW6 c #6a6f68", +"cZf c #6a6f69", +"a.W c #6a6f6a", +"#4P c #6a6f6b", +"dyh c #6a6f6c", +"fft c #6a6f72", +"cHr c #6a7066", +"bX1 c #6a7069", +"#UV c #6a706c", +"d.0 c #6a706e", +"cJT c #6a7071", +"dBx c #6a7163", +"cxY c #6a7166", +"aJL c #6a7169", +"bIQ c #6a716a", +"cUj c #6a7267", +"cPf c #6a736a", +"bEf c #6a736d", +"djh c #6a7370", +"b9L c #6a7371", +"crD c #6a7372", +"dmM c #6a7375", +"abC c #6a746c", +"b7Z c #6a7471", +"bh# c #6a7473", +"bTE c #6a7475", +"akp c #6a756f", +"aSb c #6a7571", +"bXK c #6a7573", +"#0V c #6a7672", +"afB c #6a7674", +"bip c #6a7777", +"dzS c #6a7778", +"aQx c #6a7877", +"#5y c #6a7878", +".8O c #6a7882", +"#MC c #6a7979", +"#mG c #6a7a77", +"#PK c #6a7a7a", +"#8C c #6a7b7b", +"dJ2 c #6a7c7c", +"fy. c #6a7c7d", +"eoS c #6a7e7f", +"eoT c #6a7f7f", +".4j c #6a807e", +".Ra c #6a8284", +".VE c #6a8380", +"boD c #6aa769", +".8J c #6aa9d4", +".7o c #6aacd4", +".8L c #6aadd7", +".9V c #6aaed8", +"d0F c #6ab75f", +"feG c #6ad78e", +"fMW c #6b3a45", +"f9U c #6b3b45", +"fVQ c #6b3d47", +"a9v c #6b3dce", +"fau c #6b3e45", +"e3# c #6b3f44", +"e6j c #6b4046", +"e9r c #6b4047", +"fBH c #6b414a", +"bfW c #6b41cb", +"fsY c #6b4544", +"fKx c #6b4746", +"exm c #6b474a", +"eu2 c #6b4a4c", +"gkl c #6b4b50", +"euC c #6b4b52", +"fc5 c #6b4c50", +"gkh c #6b4c52", +".eU c #6b4d47", +".eT c #6b4e48", +"gkf c #6b4e52", +".e0 c #6b4f48", +"exG c #6b5049", +"e#W c #6b514d", +"gmY c #6b5154", +"d7l c #6b524e", +"eKN c #6b5257", +"eIv c #6b5558", +"eSo c #6b564f", +"eXI c #6b5751", +"gfK c #6b575b", +"gfL c #6b585c", +"dNJ c #6b5a56", +"cpQ c #6b5b43", +"b2V c #6b5b4b", +"frS c #6b5b5e", +"b#. c #6b5d4d", +"gPv c #6b5d62", +".Kq c #6b5e4a", +"bMm c #6b5e50", +"eac c #6b5e55", +"dtg c #6b5e5e", +"gbx c #6b5f62", +".aH c #6b605d", +".aO c #6b605e", +"erN c #6b6263", +"dd5 c #6b6264", +"bBi c #6b6358", +"gsk c #6b6465", +"gdt c #6b6467", +"eal c #6b6559", +"c35 c #6b6564", +"gqv c #6b6565", +"eKA c #6b6566", +"cZx c #6b6768", +"gpk c #6b676b", +"a7u c #6b685d", +".Rr c #6b6864", +".cV c #6b6866", +"gw3 c #6b6868", +".aD c #6b6966", +"dfQ c #6b6968", +".lW c #6b696a", +"bzz c #6b6a65", +"cIP c #6b6a67", +".wX c #6b6a68", +".tu c #6b6a69", +".lT c #6b6a6a", +".lZ c #6b6a6b", +"dBk c #6b6b60", +"c1s c #6b6b62", +".vu c #6b6b69", +".l1 c #6b6b6a", +".l0 c #6b6b6b", +".l2 c #6b6b6c", +"cKD c #6b6c64", +"cDd c #6b6c66", +".s4 c #6b6c69", +".u7 c #6b6c6a", +".r8 c #6b6c6b", +".uj c #6b6c6c", +".mV c #6b6c6d", +".mR c #6b6c6e", +"drO c #6b6d62", +"ab9 c #6b6d6a", +".t1 c #6b6d6b", +"fDn c #6b6d71", +"cEQ c #6b6e65", +"bY7 c #6b6e67", +".mj c #6b6e6f", +"b2g c #6b6f67", +"anP c #6b6f6e", +"fSa c #6b6f70", +"bA1 c #6b7069", +"c0P c #6b706a", +"#Ii c #6b706d", +"ceT c #6b7167", +"a.1 c #6b716d", +"#Pb c #6b716f", +"cCU c #6b7171", +".Wx c #6b7172", +"dBw c #6b7266", +"aye c #6b726a", +"bnc c #6b726b", +"cOl c #6b7271", +"cUl c #6b7368", +"cld c #6b736a", +"aDK c #6b736b", +"bvI c #6b736d", +"cwE c #6b7372", +"cyV c #6b7373", +"ceA c #6b7375", +"c1w c #6b7469", +"aDM c #6b746c", +"bB9 c #6b746f", +"cyZ c #6b7472", +"ceE c #6b7473", +"#OU c #6b756d", +"b.g c #6b756e", +"aev c #6b7570", +"bsI c #6b7574", +"bwG c #6b7575", +"bCX c #6b7576", +"avw c #6b766f", +"ahu c #6b7670", +"aMq c #6b7672", +"dje c #6b7674", +"bb# c #6b7675", +"#0U c #6b7773", +"ald c #6b7775", +"duq c #6b7777", +"duo c #6b7878", +"eV5 c #6b787a", +"aiI c #6b7979", +"alk c #6b797a", +"#2t c #6b7a7a", +"#2w c #6b7b7b", +"awx c #6b7b7c", +"aln c #6b7c7c", +"dJ1 c #6b7d7d", +"etS c #6b7d7e", +"dOK c #6b7e7e", +"e2e c #6b7e7f", +"eHX c #6b7f80", +".Oh c #6b7f81", +"emj c #6b8080", +".Nr c #6b8383", +"gzA c #6b93c7", +"gzB c #6b95c8", +".6h c #6babd7", +".7m c #6bacd0", +".7n c #6baed2", +".8K c #6baed6", +"fqG c #6bc983", +"#85 c #6c2425", +"bdu c #6c39a5", +"fTf c #6c3a43", +"fBG c #6c3c47", +"fdh c #6c3f46", +"ff7 c #6c3f47", +"e9u c #6c4047", +"fYO c #6c4049", +"fl1 c #6c434b", +"fpJ c #6c4544", +"fmF c #6c4545", +"fzL c #6c4546", +"fmG c #6c4645", +"f5h c #6c4648", +"gcC c #6c474e", +"a87 c #6c49b5", +"eio c #6c4b4e", +"gkk c #6c4b51", +"giM c #6c4c51", +"fDT c #6c4d52", +"gki c #6c4e52", +"gqz c #6c4e53", +"eSj c #6c4f49", +"gqB c #6c5155", +"dUy c #6c5254", +"fyI c #6c5256", +"bfX c #6c52bb", +"gpS c #6c5356", +"enK c #6c544d", +"ckt c #6c553b", +"dPO c #6c5554", +"eKM c #6c5659", +"dSc c #6c5754", +"eG# c #6c585a", +".cY c #6c5955", +"fMf c #6c595d", +"bUH c #6c5a47", +"b00 c #6c5a48", +"fJr c #6c5a5d", +"dLi c #6c5b57", +".xi c #6c5c44", +"fDx c #6c5d60", +"dN. c #6c5e5d", +"e#i c #6c5e60", +".aK c #6c5f5e", +".aI c #6c605d", +"fPd c #6c6064", +"dpz c #6c615b", +"ekg c #6c6162", +"b#c c #6c6357", +"c9K c #6c6364", +"djF c #6c6565", +"cE4 c #6c665c", +"guF c #6c6667", +"bLL c #6c675a", +"be8 c #6c6764", +"dwG c #6c6767", +"guT c #6c6868", +"gvy c #6c6869", +"cVL c #6c6963", +".Fx c #6c696c", +"cQs c #6c6a64", +".ru c #6c6a67", +"aV3 c #6c6a6b", +".Fw c #6c6a6c", +".s7 c #6c6b69", +".v6 c #6c6b6a", +".l3 c #6c6b6b", +".r6 c #6c6b6c", +"ftA c #6c6b70", +"fnq c #6c6b73", +".tY c #6c6c6a", +".r7 c #6c6c6b", +".r4 c #6c6c6c", +".mt c #6c6c6d", +".mG c #6c6c6e", +"dE5 c #6c6d62", +"cP1 c #6c6d66", +"b82 c #6c6d67", +"bSA c #6c6d68", +".tZ c #6c6d6b", +".t8 c #6c6d6c", +".r3 c #6c6d6d", +".mp c #6c6d6e", +".mI c #6c6d6f", +"cA. c #6c6e65", +"dbq c #6c6e66", +"b5g c #6c6e67", +"ae5 c #6c6e69", +"#4W c #6c6e6b", +".Bd c #6c6e6c", +".mL c #6c6e6f", +"cul c #6c6f66", +"cB. c #6c6f68", +"fSb c #6c6f70", +"cC8 c #6c7067", +"bB5 c #6c716b", +"#Vc c #6c7170", +"dkv c #6c7268", +"btG c #6c726c", +"cOq c #6c726e", +"#Ib c #6c726f", +"#Pa c #6c7270", +".V6 c #6c7278", +"bad c #6c728c", +"cQC c #6c7369", +"aAY c #6c736b", +"bB8 c #6c736c", +"c26 c #6c7468", +"dc1 c #6c746c", +"bGz c #6c746d", +"cIb c #6c7473", +"cg3 c #6c7476", +"bcm c #6c7570", +"bz7 c #6c7571", +"#w1 c #6c7572", +"cg7 c #6c7574", +"fXG c #6c7577", +"cNF c #6c766d", +"aeE c #6c766e", +"bm7 c #6c7675", +"aMo c #6c7676", +"bPl c #6c7677", +"aes c #6c7771", +"aJx c #6c7773", +"bor c #6c7774", +"abv c #6c7871", +"abr c #6c7872", +"bqp c #6c7874", +"a8L c #6c7878", +"bft c #6c7879", +"#7d c #6c7972", +"a#I c #6c7979", +"fAH c #6c7a7b", +"#5z c #6c7b7b", +".25 c #6c7b89", +"dQ6 c #6c7c7c", +"dql c #6c7d7c", +"#5B c #6c7d7d", +"dMs c #6c7e7e", +"eoV c #6c7e80", +"eQV c #6c7e81", +"ewo c #6c8081", +"dJ0 c #6c8180", +".O8 c #6c8182", +".96 c #6c93bd", +"bit c #6c986d", +".7q c #6c9fca", +"fkE c #6cc9a2", +"clu c #6cda7a", +"agA c #6d1dda", +"fMY c #6d3b46", +"fP4 c #6d3c45", +"f7F c #6d3e47", +"f2d c #6d3f46", +"fi6 c #6d3f48", +"fTq c #6d4045", +"e9v c #6d4047", +"fQq c #6d4247", +"f7l c #6d434c", +"fjy c #6d4545", +"fww c #6d4546", +"f7R c #6d4547", +"eLq c #6d4548", +"fwx c #6d4647", +"fsZ c #6d4746", +"f2q c #6d4a4f", +"ggI c #6d4b52", +"ef6 c #6d4d50", +"gmi c #6d4d52", +"gqA c #6d4e53", +"euz c #6d4f53", +"ef2 c #6d5053", +"goP c #6d5054", +"gke c #6d5155", +"gkc c #6d5357", +"gn1 c #6d5559", +"eKL c #6d575a", +"cnb c #6d5842", +"eUU c #6d5953", +".cZ c #6d5955", +"ehT c #6d595b", +".c8 c #6d5a56", +"fMe c #6d5a5e", +"dP0 c #6d5d55", +".qw c #6d5f49", +".OU c #6d604d", +"chX c #6d6050", +".aN c #6d605d", +"d83 c #6d6062", +"dLp c #6d6158", +"bF3 c #6d645a", +"gbn c #6d6669", +"bBC c #6d675e", +"bev c #6d675f", +"ekd c #6d6766", +"d7L c #6d685b", +"dLw c #6d685e", +"diD c #6d6862", +"g#e c #6d686b", +"dSD c #6d695f", +"c6H c #6d6968", +".Fv c #6d696c", +".q4 c #6d6a68", +".Fr c #6d6a6b", +".Fu c #6d6a6c", +".Fs c #6d6a6d", +"dfR c #6d6b69", +"gAD c #6d6b6b", +".s5 c #6d6b6c", +".r5 c #6d6b6d", +"gjD c #6d6b6e", +"f3j c #6d6b73", +"b1. c #6d6c69", +"ckO c #6d6c6a", +".tG c #6d6c6b", +".s6 c #6d6c6c", +".sr c #6d6c6d", +".sT c #6d6c6e", +"fhb c #6d6c72", +"dDb c #6d6d63", +"bpr c #6d6d69", +".r9 c #6d6d6a", +".ul c #6d6d6b", +".sn c #6d6d6c", +".sm c #6d6d6d", +".mg c #6d6d6e", +"cZ3 c #6d6e66", +"buP c #6d6e69", +".u4 c #6d6e6c", +".u5 c #6d6e6d", +".mS c #6d6e6e", +".mK c #6d6e6f", +".mX c #6d6e70", +"bpq c #6d6f69", +"ah8 c #6d6f6a", +".ma c #6d6f6f", +"cwZ c #6d7067", +"cw0 c #6d7068", +"b86 c #6d7069", +"a62 c #6d706e", +"b7f c #6d716a", +"duI c #6d716d", +"#U8 c #6d7171", +"#EX c #6d7173", +"b2f c #6d726a", +"bed c #6d726b", +"bob c #6d726c", +"dww c #6d726d", +"bcg c #6d726e", +"dwv c #6d726f", +"cnT c #6d7369", +"bPv c #6d736c", +"#R4 c #6d7371", +"cIh c #6d7376", +"ayc c #6d746c", +"bz3 c #6d746d", +"cKR c #6d756a", +"cIf c #6d7575", +"aEJ c #6d7673", +"cch c #6d7675", +"ccg c #6d7677", +"cMh c #6d776e", +"aya c #6d776f", +"bvO c #6d7772", +"btX c #6d7773", +"aMp c #6d7776", +"bJE c #6d7777", +"#Zc c #6d7778", +"eZd c #6d777a", +"aeD c #6d7870", +"aVj c #6d7871", +"avu c #6d7872", +"aGF c #6d7873", +"avt c #6d7874", +"aYd c #6d7877", +"aV. c #6d7878", +"bse c #6d7975", +"bg5 c #6d7976", +"bba c #6d7977", +"#7b c #6d7a75", +"a.l c #6d7a76", +"b#J c #6d7b7a", +"#Y6 c #6d7b7b", +"atO c #6d7b7c", +"fLI c #6d7b7d", +"#Y7 c #6d7c7c", +".YR c #6d7c8c", +"fAF c #6d7d7d", +"#8D c #6d7e7e", +"aE4 c #6d7f7b", +"fAE c #6d7f7f", +"eoU c #6d7f81", +"d3H c #6d807e", +"fuH c #6d8081", +"eDd c #6d8082", +"erm c #6d8182", +"e2c c #6d8283", +".PV c #6d8485", +".SA c #6d8585", +"#Nh c #6d8b6f", +"agt c #6d8d8b", +"#G# c #6d9c5e", +"blG c #6d9d68", +"dYp c #6d9d6c", +"#CF c #6dc834", +"bcT c #6e01fc", +"azX c #6e22de", +"bfV c #6e37d7", +"fwc c #6e3941", +"fWc c #6e3d43", +"fBQ c #6e3d46", +"fZc c #6e4049", +"fS0 c #6e404a", +"fzg c #6e414a", +"e6i c #6e4249", +"ff6 c #6e424a", +"fdd c #6e424b", +"fNk c #6e4447", +"fYP c #6e444b", +"fdG c #6e4546", +"fgw c #6e4646", +"f96 c #6e4648", +"fpK c #6e4746", +"fNr c #6e4a4a", +"gez c #6e4a52", +"fsh c #6e4b52", +"exq c #6e4c4e", +"esc c #6e4d54", +"fc4 c #6e4e52", +"gkj c #6e4e53", +"esb c #6e4f55", +"guK c #6e5054", +"e#J c #6e5055", +"gsv c #6e5155", +"euA c #6e5156", +"d2r c #6e5551", +"dar c #6e5557", +"dPP c #6e5754", +".c6 c #6e5954", +"e0U c #6e5a53", +".c1 c #6e5a55", +".c9 c #6e5a56", +"gQL c #6e5a5a", +"eKK c #6e5a5c", +"dPX c #6e5b57", +"dNK c #6e5c57", +"dWL c #6e5c5f", +"frR c #6e5d60", +"b4T c #6e5e4e", +"cuM c #6e5f48", +"ebl c #6e5f62", +".aJ c #6e605d", +"caY c #6e6153", +"gyt c #6e6162", +"a1K c #6e6255", +"b8N c #6e6353", +"brs c #6e6358", +"cDo c #6e6458", +"a#4 c #6e6463", +"bDI c #6e655a", +"d#z c #6e6566", +"cF9 c #6e665e", +"eKB c #6e6768", +"gqw c #6e6868", +"dhQ c #6e6a68", +"ddO c #6e6a6a", +"eIi c #6e6a6b", +".Ft c #6e6a6d", +"ddN c #6e6b69", +"duR c #6e6b6a", +"gds c #6e6b6e", +"cT7 c #6e6c65", +".u6 c #6e6c6d", +".t0 c #6e6c6e", +"csH c #6e6d67", +"cIO c #6e6d6b", +".sl c #6e6d6d", +".l7 c #6e6d6e", +".sS c #6e6d6f", +"c0S c #6e6e68", +".u# c #6e6e6c", +".u. c #6e6e6d", +".sX c #6e6e6e", +".sU c #6e6e6f", +"fO2 c #6e6e70", +"gjx c #6e6e71", +"cLJ c #6e6f67", +"cdz c #6e6f69", +".mZ c #6e6f6e", +".mF c #6e6f6f", +".mm c #6e6f70", +".mc c #6e6f71", +".mr c #6e6f72", +"c8v c #6e7067", +"cBb c #6e7068", +"czj c #6e706a", +".mb c #6e7071", +".ms c #6e7072", +"cEM c #6e7167", +"cbk c #6e7168", +"cz# c #6e7169", +"bMD c #6e716a", +".ml c #6e7172", +"dBp c #6e7266", +"cjY c #6e7269", +"b7e c #6e726b", +"c9c c #6e726d", +"fLT c #6e7274", +"bee c #6e736c", +"bvA c #6e736d", +"a5q c #6e736f", +"acm c #6e7370", +"dmi c #6e746a", +"c9e c #6e746c", +"bX2 c #6e746d", +"cu. c #6e746f", +"cy7 c #6e7470", +"dzq c #6e756a", +"cPe c #6e756b", +"aGT c #6e756d", +"cTG c #6e756e", +"cJO c #6e7574", +"#EW c #6e7575", +"cQG c #6e766b", +"cVY c #6e766c", +"#1l c #6e766d", +"aDL c #6e766e", +"ccp c #6e766f", +"cAX c #6e7676", +"cey c #6e7678", +"dc2 c #6e776e", +"bEg c #6e7771", +"dbT c #6e7774", +"cwI c #6e7775", +"crF c #6e7776", +"bIW c #6e786f", +"akt c #6e7870", +"cco c #6e7873", +"bAS c #6e7875", +"bp. c #6e7877", +"byK c #6e7878", +"bLs c #6e7879", +"bGD c #6e7971", +"bx1 c #6e7972", +"am5 c #6e7973", +"aJw c #6e7975", +"blx c #6e7976", +"aYc c #6e7978", +"dRh c #6e7979", +"dkY c #6e797a", +"abm c #6e7a75", +"#4d c #6e7a76", +"aWN c #6e7a7a", +"#Vy c #6e7c7c", +"#2s c #6e7c7d", +"#Sw c #6e7e7e", +"dDN c #6e7f7f", +"eOI c #6e7f81", +"dMq c #6e8080", +"ern c #6e8082", +"dV7 c #6e8282", +"emi c #6e8283", +"eTb c #6e8284", +"eoO c #6e8384", +".T7 c #6e8686", +".Wl c #6e8784", +"axc c #6e888b", +"#6a c #6e8c84", +"biv c #6e986d", +".6f c #6eaccb", +".5c c #6eb0da", +"#zL c #6ebc04", +"fG7 c #6f404a", +"ff4 c #6f414b", +"e6z c #6f4348", +"fdH c #6f4847", +"eu4 c #6f494b", +"gat c #6f494c", +"fEM c #6f4a4a", +"gas c #6f4a4d", +"esD c #6f4b4c", +"f5i c #6f4b4d", +"fQx c #6f4c4c", +"f5j c #6f4c50", +"f7T c #6f4d51", +"ekV c #6f4f52", +"edN c #6f5055", +"bdz c #6f5092", +"ebY c #6f514f", +"ezt c #6f5156", +"e#I c #6f5256", +"ew0 c #6f5257", +"evi c #6f534d", +"gkd c #6f5358", +"c45 c #6f5656", +"gMz c #6f575b", +"ee# c #6f5852", +"gQK c #6f595b", +"gQQ c #6f595c", +"dXl c #6f5a54", +".c0 c #6f5a55", +"gQP c #6f5a5b", +"gQR c #6f5a5c", +"eIu c #6f5a5d", +".c7 c #6f5b55", +"fMi c #6f5b5d", +"eOe c #6f5c52", +"fDF c #6f5c5e", +"fPm c #6f5c60", +"gdJ c #6f5c61", +"bWK c #6f5d48", +"fAs c #6f6060", +"dSn c #6f625a", +"c.# c #6f634e", +"ccM c #6f634f", +"b.2 c #6f6454", +"cBB c #6f6554", +"a77 c #6f655a", +"bW. c #6f6755", +"a8. c #6f685e", +"#Nb c #6f6867", +"gqo c #6f686a", +".lH c #6f6960", +"bJY c #6f6b5f", +"a7v c #6f6c60", +".E4 c #6f6c66", +"gzh c #6f6c6c", +"dxu c #6f6d64", +"ahe c #6f6d6f", +"cLY c #6f6e69", +"cKi c #6f6e6c", +".ua c #6f6e6d", +".sY c #6f6e6e", +".sZ c #6f6e6f", +"ayz c #6f6f6d", +".vk c #6f6f6e", +".sq c #6f6f6f", +".me c #6f6f70", +"cIt c #6f7068", +"bB. c #6f706a", +".mw c #6f7070", +".md c #6f7071", +".mk c #6f7072", +"c2c c #6f716b", +"akV c #6f716c", +".mx c #6f7172", +".m2 c #6f7173", +"c.2 c #6f726a", +"bWZ c #6f726b", +"c9g c #6f726c", +"cTH c #6f736c", +"#Im c #6f7374", +"fip c #6f7376", +"aGY c #6f746d", +"cZg c #6f746e", +"#Yc c #6f7470", +"#U7 c #6f7475", +"#Is c #6f7476", +"ch# c #6f756d", +"cjK c #6f756e", +"bB4 c #6f756f", +"d.Y c #6f7573", +"bRG c #6f766d", +"ang c #6f766e", +"bvG c #6f766f", +"cxZ c #6f776c", +"cvy c #6f776d", +"aVv c #6f776f", +"cGk c #6f7777", +"cez c #6f7779", +"bGC c #6f7871", +"b72 c #6f7873", +"aHC c #6f7876", +"cci c #6f7877", +"ccf c #6f7879", +"bwC c #6f787a", +"cMi c #6f7970", +"ahA c #6f7971", +"bbg c #6f7972", +"bEh c #6f7974", +"cLq c #6f7977", +"b.a c #6f7978", +"aDC c #6f7979", +"dmN c #6f797a", +"#5D c #6f797b", +"abB c #6f7a72", +"#AV c #6f7a74", +"bEi c #6f7a75", +"aYl c #6f7a76", +"#Ov c #6f7a78", +"bHp c #6f7a79", +"a.n c #6f7b77", +"bot c #6f7b79", +"aU9 c #6f7b7a", +"a5H c #6f7b7b", +"doo c #6f7b7c", +"a.r c #6f7c75", +"a.o c #6f7c76", +"aPc c #6f7c79", +"#4j c #6f7d75", +"#8A c #6f7d7d", +"#Y5 c #6f7e7e", +"alo c #6f7f7e", +"#Fy c #6f7f7f", +"erp c #6f7f82", +"dzV c #6f8080", +"fuJ c #6f8083", +"dTv c #6f8181", +"ero c #6f8183", +"ehi c #6f8384", +".QN c #6f8888", +".YQ c #6f89a2", +"#Tc c #6f8a80", +"#zM c #6fad02", +".6g c #6fafd8", +"#zK c #6fc802", +"#zJ c #6fd605", +"#y2 c #6ff608", +"aaa c #701919", +"a#9 c #703635", +"a#8 c #703f40", +"fmq c #703f45", +"fJ6 c #703f4a", +"eRT c #704046", +"f5# c #70434b", +"eUn c #704448", +"fG6 c #70444d", +"e9m c #70454e", +"fNl c #704649", +"fi2 c #70464e", +"eRN c #70474c", +"ff0 c #70474f", +"fmE c #704848", +"f97 c #70494d", +"f7S c #704a4c", +"f2p c #704a4e", +"gcD c #704b52", +"#52 c #704c4d", +"gic c #704f54", +"ekS c #705051", +"ebM c #705156", +"euB c #705258", +"cNZ c #705458", +"eHb c #70564f", +"e#Y c #705653", +"di7 c #705658", +"d9v c #705659", +"a#5 c #705b5b", +"gQJ c #705b5c", +"gdN c #705b60", +"eSp c #705c54", +"gQY c #705c5d", +"fJs c #705c5e", +"fPo c #705c60", +"fMg c #705d61", +"dPl c #705e60", +"fPn c #705e62", +"bMl c #706051", +"dNP c #706059", +"cH5 c #70605d", +"dNa c #706061", +"cxh c #70614d", +"dLn c #70615a", +"a4N c #706251", +"d92 c #70635a", +"di6 c #70635d", +"gCm c #706363", +"gyy c #706364", +"gyz c #706464", +"fL5 c #706466", +"eep c #70655b", +"d7J c #70675c", +"gjH c #70686a", +"c6J c #706a6a", +"cHW c #706b5f", +"cGP c #706b63", +"c72 c #706b6a", +"dwF c #706b6b", +"gx3 c #706b6c", +"f8V c #706b6d", +"bHT c #706c60", +"eua c #706c6b", +"gnz c #706c70", +"deE c #706d66", +"gw5 c #706d6c", +"gx4 c #706d6e", +"cT8 c #706e67", +"fSe c #706e71", +"#Qb c #706f6f", +".sO c #706f70", +"gly c #706f72", +"f.I c #706f75", +"deG c #707068", +"czg c #70706a", +"doP c #70706e", +"cOJ c #70706f", +"aBt c #707070", +".mq c #707071", +".m1 c #707072", +"cS0 c #707168", +"cIs c #707169", +"b7# c #70716b", +"dqL c #70716e", +".mJ c #707171", +".l6 c #707172", +".m3 c #707173", +".m7 c #707174", +"cC9 c #70726a", +"c2e c #70726c", +".m5 c #707272", +".m4 c #707273", +".m6 c #707274", +"fAN c #707276", +"cqo c #70736a", +"cag c #70736c", +"cza c #70746a", +"c2. c #70746d", +"cHU c #70746e", +"#L2 c #707475", +"buC c #70756e", +"bxP c #70756f", +"aQa c #707571", +"c0c c #70766f", +"#O6 c #707672", +"cJW c #707674", +"cmd c #707675", +"aeS c #70776f", +"bsP c #707770", +"bnb c #707771", +"#EE c #707774", +"cNA c #70786d", +"cvA c #707870", +"aSk c #707871", +"cEF c #707875", +"cWw c #70787a", +"c1x c #707971", +"bAT c #707974", +"#w2 c #707976", +"aPd c #707978", +"ct8 c #707979", +"#2z c #70797c", +"abD c #707a72", +"aMl c #707a79", +"abw c #707b73", +"ahx c #707b74", +"am3 c #707b75", +"amZ c #707b76", +"abo c #707b77", +"atK c #707b79", +"fUT c #707b7b", +"cNW c #707b7c", +"aU. c #707b8f", +"bC# c #707c76", +"bly c #707c78", +"#Rt c #707c7a", +"aR5 c #707c7b", +"a8K c #707c7c", +"fov c #707c7d", +"#Xs c #707d79", +"#Xv c #707e77", +"#Ja c #707e7e", +"#Sv c #707f7f", +"fIU c #707f80", +"dJ7 c #70807f", +"#8E c #708080", +"e5s c #708181", +"dxY c #708280", +"etQ c #708284", +"eTc c #708386", +"eOD c #708485", +".Rc c #70898a", +".2. c #70acd7", +"d0G c #70ba63", +"cl0 c #70d87c", +"aab c #710a0c", +"aac c #710a0d", +"b#5 c #710aeb", +"aa# c #712321", +"fTg c #713e46", +"fZ# c #714047", +"fHe c #714049", +"fi5 c #71434c", +"fP0 c #71434d", +"fjh c #71444a", +"fo8 c #71464f", +"fWe c #71474e", +"a#7 c #714849", +"fTx c #71484b", +"e3c c #71484d", +"fsl c #714951", +"fTs c #714a4e", +"fvP c #714c53", +"gau c #714d51", +"f98 c #714e51", +"fGL c #715257", +"eAb c #71554e", +"gkb c #71565b", +"c3y c #715857", +"gwb c #71585c", +"gQM c #715b5c", +"gdK c #715b60", +"gQO c #715c5d", +"gQN c #715c5e", +"gdM c #715c61", +"chU c #715d44", +"gQG c #715d5d", +"gQH c #715d5e", +"fDG c #715d5f", +"fMh c #715d60", +"dSj c #715e59", +"fX8 c #715e60", +"fSq c #715e61", +"fVe c #715e62", +"bYK c #715f4a", +"fJq c #715f60", +"fOG c #716061", +"cJI c #71615e", +"c44 c #716162", +"fPl c #716165", +"dpx c #71625f", +"fxT c #716263", +"cxt c #716353", +"gyv c #716365", +"czJ c #716454", +"c.E c #716455", +"gyu c #716464", +"gyw c #716465", +"gys c #716566", +"cuG c #716654", +"cBo c #716656", +"bkU c #716657", +"f6K c #716667", +"a4A c #716a5c", +"b#d c #716a5e", +"cLe c #716b62", +".qm c #716b65", +"bzv c #716b66", +"gss c #716b6b", +"gqp c #716b6c", +"bHO c #716c5f", +"dU9 c #716c62", +".Ec c #716c64", +"db9 c #716c6b", +"d#e c #716d6c", +"gqH c #716d6d", +"gx5 c #716d6e", +"gzd c #716e6e", +"dQj c #716f63", +"dQk c #716f64", +"dhO c #716f6d", +"dVa c #717062", +"dDa c #717067", +"cLT c #71706e", +"cEx c #717070", +"ftz c #717075", +"dtP c #717168", +"aEp c #717171", +"gjy c #717173", +"ck2 c #71726b", +"cGD c #71726c", +"#2S c #717270", +"aqA c #717271", +".m8 c #717272", +".m9 c #717273", +"fLU c #717274", +"cGB c #717369", +"cLI c #71736b", +"cA9 c #71736c", +"chj c #71736d", +"a.8 c #717370", +"cwY c #71746a", +"cmE c #71746b", +"cjZ c #71746c", +"cLC c #71746d", +"b78 c #71756e", +"ak7 c #717575", +"#LR c #717576", +"dzp c #71766c", +"cpb c #71766e", +"aDT c #71766f", +"cZh c #717670", +"c9b c #717673", +"dnX c #71776d", +"aNn c #717773", +"cMX c #717774", +"#Fa c #717775", +"cRb c #717776", +"d.j c #71786e", +"anf c #717870", +"bxT c #717871", +"cIg c #71787a", +"cMd c #71796e", +"c8x c #71796f", +"cCR c #717978", +"cXQ c #71797b", +"#P8 c #71797d", +"bsM c #717a75", +"cmi c #717a79", +"a5L c #717a7b", +"f29 c #717a8c", +"cx7 c #717b72", +"aey c #717b73", +"akr c #717b74", +"bq1 c #717b76", +"btY c #717b77", +"aHW c #717b79", +"bq0 c #717b7a", +"dkZ c #717b7b", +"bVO c #717b7c", +"#8G c #717b7d", +"aeC c #717c74", +"am0 c #717c76", +"blw c #717c77", +"aAN c #717c78", +"aMk c #717c7a", +"dop c #717c7d", +"aks c #717d74", +"apy c #717d77", +"abl c #717d79", +"bvT c #717d7a", +"aMj c #717d7b", +"aWM c #717d7d", +"#00 c #717e77", +"#Xx c #717e79", +"bou c #717e7c", +"#Xw c #717f78", +"bt1 c #717f7e", +"#MA c #717f7f", +"#Jc c #718080", +"dxZ c #718181", +"dHJ c #718383", +"eFD c #718385", +"eKg c #718485", +"d1g c #718585", +".Tj c #718989", +".95 c #718eac", +"#CD c #71b131", +"#CE c #71bd36", +"fbS c #71db90", +"aa. c #722b2a", +"fzp c #724048", +"fgf c #72414a", +"fMV c #72454f", +"fG8 c #72464f", +"ff9 c #72474e", +"fEd c #724750", +"fQv c #72494a", +"fWk c #72494e", +"f7k c #724a52", +"fHB c #724b4d", +"fvO c #724c53", +"fHC c #724d4e", +"eN2 c #72504c", +"flZ c #725156", +"edR c #725255", +"gia c #725257", +"ebO c #725356", +"fGN c #725358", +"#ZD c #725558", +"fOH c #725656", +"dBV c #725758", +"d.O c #72575a", +"d4R c #725854", +"dhe c #72585a", +"dR4 c #72595a", +"fyL c #72595c", +"fyJ c #725a5e", +"esY c #725c54", +"fJx c #725c5f", +"cku c #725d43", +"#S4 c #725d5d", +"fGz c #725d5f", +"fB. c #725d60", +"gdO c #725d61", +"gdL c #725d62", +"gQC c #725e5e", +"gP1 c #725e5f", +"fJt c #725e60", +"f1i c #725f63", +"cfk c #726046", +"dLe c #72605c", +"daq c #72605e", +"g#v c #726062", +"bQf c #72614f", +"c3x c #726263", +"fPk c #726265", +"cpU c #726352", +"dhd c #72635f", +"b6R c #726453", +"cdg c #726455", +"dNR c #72645d", +"fC7 c #726464", +"gyA c #726465", +"fL9 c #726466", +"gyx c #726565", +"fL7 c #726768", +"dnn c #726769", +".lE c #726a5e", +"bJ5 c #726b5e", +"djI c #726b6b", +"gwZ c #726d6e", +"d#P c #726e68", +"#JG c #726f7a", +"c8s c #727068", +"gtp c #727072", +"bcc c #72716d", +"b60 c #72716e", +"gCg c #727172", +"fj8 c #727178", +"gBt c #727271", +".zO c #727272", +"ghv c #727274", +"dE3 c #727369", +"cZm c #72736d", +"gBn c #727373", +"cJ0 c #72746d", +".mM c #727475", +"cJ5 c #72756c", +"ceY c #72756e", +"aZ6 c #72758c", +"cwQ c #72766f", +"#Pl c #727677", +"#P0 c #727679", +"ceU c #72776e", +"bwR c #727770", +"aNk c #727773", +"cqx c #72786e", +"aPw c #727870", +"c0d c #727871", +"c0O c #727873", +"#UW c #727874", +"c9a c #727875", +"#U1 c #727876", +"a#T c #72787e", +"cUh c #72796f", +"ahK c #727971", +"bC4 c #727972", +"aEG c #727975", +"cKS c #727a6f", +"a1j c #727a71", +"aMw c #727a72", +"btQ c #727a75", +"dk2 c #727a78", +"dhs c #727a79", +"#xf c #727a7a", +"bb. c #727a7b", +"cce c #727a7c", +"bj4 c #727b76", +"a68 c #727b7a", +"a2G c #727b7c", +"cXR c #727b7d", +"d.n c #727c73", +"aAU c #727c74", +"bq2 c #727c77", +"bj1 c #727c7b", +"b3T c #727c7c", +"c0G c #727c7d", +"apE c #727d77", +"bsL c #727d78", +"ahp c #727d79", +"aB7 c #727d7d", +"bjW c #727d7e", +"fOT c #727d7f", +"abn c #727e79", +"#7a c #727e7a", +"#Ou c #727e7c", +"bfr c #727e7d", +"bio c #727e7e", +"#01 c #727f78", +"bx3 c #727f7b", +"dxX c #727f7e", +"dzW c #727f7f", +"fyb c #727f80", +"aCD c #727f83", +"#PJ c #728080", +"atP c #728081", +"ay8 c #728082", +"#Jb c #728181", +"fF5 c #728282", +"dMp c #728384", +"eFE c #728486", +"fx9 c #728585", +"e5j c #728687", +".90 c #728698", +"d1f c #728786", +".RF c #728a8a", +".94 c #728ca4", +"bsn c #72ad6a", +".5a c #72b1d7", +".5b c #72b3da", +"fbT c #72d692", +"aoW c #730000", +"axj c #731ad6", +"fHm c #734249", +"fzh c #73424d", +"fm. c #73444e", +"fjg c #73454c", +"fJ1 c #73464f", +"gai c #73474f", +"f4M c #734851", +"e6l c #734950", +"e6f c #734952", +"fNp c #734a4b", +"eEo c #734a4e", +"e29 c #734a52", +"fpI c #734b4b", +"fZj c #734b4e", +"fKv c #734c4d", +"fKw c #734e4f", +"fNq c #734f4e", +"a#6 c #735152", +"ffS c #735155", +"gid c #735156", +"a86 c #7351ae", +"fDV c #735257", +"gib c #735358", +"ewY c #73565a", +"eAe c #735750", +"eS7 c #735857", +"dMi c #73585a", +"grO c #73595c", +"c6l c #735a5a", +"dPQ c #735c58", +"eUT c #735e57", +"gQv c #735e5f", +"fPq c #735e60", +"gbG c #735e63", +"cpM c #735f49", +"dUL c #735f5a", +"gQD c #735f5f", +"gQw c #735f60", +"fGA c #735f61", +"gQI c #736060", +"fVg c #736061", +"efz c #736062", +"fVf c #736063", +"fX7 c #736064", +"cGd c #73615f", +"dsg c #736263", +"cfz c #736353", +"eS6 c #736363", +"edq c #736366", +"dYE c #736461", +"dqg c #736465", +"eHM c #736565", +"cuJ c #73664b", +"cH4 c #736662", +"ckc c #736751", +"dI3 c #73675f", +"a4S c #736a5c", +"dih c #736a68", +".pc c #736b62", +"fXS c #736b6e", +"b#e c #736c63", +"gqq c #736c6d", +"d#g c #736e6e", +"#V0 c #736e70", +"bDR c #736f67", +"gx2 c #736f70", +"dsV c #73706f", +"b44 c #73726d", +"cfK c #737270", +"cQc c #737271", +"gAB c #737272", +"c1q c #73736b", +"afb c #737371", +".zB c #737373", +"gAW c #737374", +"foD c #737375", +"cJ9 c #73746c", +"cPZ c #73746d", +"cGE c #73746e", +".Ge c #737474", +"cvi c #73756c", +"ah7 c #737570", +"cwW c #73766d", +"cmG c #73766e", +"cC4 c #737770", +"#Iu c #737778", +"acU c #73777e", +"bJO c #737871", +"c5h c #737872", +"dbU c #737876", +"flr c #73787b", +"fRh c #737889", +"cJ. c #73796f", +"cn0 c #737971", +"byS c #737972", +"bzZ c #737973", +"cC0 c #737974", +"#5K c #737976", +"dbV c #737977", +"#LL c #737978", +"#8L c #73797a", +"cnU c #737a70", +"#4B c #737a72", +"aSl c #737a73", +"#EI c #737a77", +"cNC c #737b70", +"cWx c #737b7c", +"aZL c #737b7d", +"eOA c #737b7e", +"bq3 c #737c77", +"bAU c #737c78", +"aHD c #737c79", +"cy0 c #737c7a", +"a37 c #737c7b", +"cEq c #737c7c", +"blC c #737c7d", +"eMs c #737c7e", +"dc3 c #737d74", +"ahB c #737d75", +"bIV c #737d76", +"bx2 c #737d78", +"#A5 c #737d7a", +"aJu c #737d7c", +"b13 c #737d7d", +"bF. c #737d7e", +"fDg c #737d7f", +"a.v c #737e76", +"aer c #737e78", +"a.m c #737e7a", +"#K3 c #737e7c", +"abx c #737f77", +"a.s c #737f78", +"ax8 c #737f7a", +"#Xp c #737f7b", +"#Rs c #737f7d", +"bjV c #737f7e", +"a2B c #737f7f", +"#7f c #738079", +"a#H c #73807f", +"dx0 c #738080", +"#Uf c #73817d", +"#MB c #738181", +"ffr c #738182", +"#Ug c #73827d", +"don c #738282", +"aww c #738283", +"#Fz c #738383", +"#ZK c #738478", +"#yk c #738484", +"dMr c #738585", +"eOJ c #738586", +"eH1 c #738587", +"eKf c #738788", +".91 c #73879b", +"#z# c #738871", +".92 c #73899e", +"d57 c #738a8a", +".93 c #738aa1", +".6i c #739bbc", +".36 c #73b5db", +"fnK c #73ca8b", +"e3k c #74424a", +"fv5 c #74454e", +"fZ. c #74464e", +"fBF c #74464f", +"fYL c #744751", +"ffZ c #744952", +"eB4 c #744b4f", +"ePR c #744b51", +"exs c #744e51", +"fQw c #74504d", +"gd4 c #745056", +"euY c #745253", +"gg. c #745459", +"fl# c #745656", +"eCk c #745952", +"e.E c #74595b", +"dzM c #745a59", +"dYF c #745a5b", +"fyM c #745a5d", +"egn c #745b56", +"d9J c #745b57", +"fyK c #745b5f", +"fDK c #745c60", +"fGE c #745d61", +"gQE c #745f5f", +"gP0 c #745f60", +"eBz c #745f61", +"gbH c #745f63", +"cm6 c #746048", +"dSe c #74605d", +"gP2 c #746060", +"gPZ c #746061", +"fGB c #746062", +"gv3 c #746063", +"gQF c #746161", +"fPp c #746162", +"f1j c #746164", +"f4d c #746165", +".Kr c #746247", +"d.N c #746260", +"bMk c #746352", +"cWr c #746361", +"gPw c #746362", +"fRO c #746364", +"b4S c #746451", +"dzL c #746465", +"eQO c #746565", +"car c #74664f", +"eFr c #746666", +"bfY c #7466a6", +"fV. c #746769", +"fPh c #74676a", +"fX1 c #74686a", +"drw c #746967", +"gyf c #746a6c", +"fU6 c #746a6d", +"a79 c #746b61", +"emH c #746b6c", +"gjG c #746b6e", +"eai c #746c61", +"bJ7 c #746d5d", +"bRS c #746e5e", +"c5q c #746e6e", +"dln c #746f6f", +"c70 c #74706f", +"ca7 c #747371", +"gBo c #747373", +".sL c #747374", +"gdn c #747375", +"doN c #747472", +"gB4 c #747473", +"aMd c #747474", +"e1f c #747476", +"cKa c #74756f", +"gCi c #747574", +"f8P c #747577", +"f8O c #747677", +"#M5 c #747680", +"dDh c #74776c", +"cwX c #74776e", +"b4. c #74776f", +"ccC c #747770", +"bFi c #747972", +"#7N c #747975", +"cGs c #747977", +"bIS c #747a73", +"br2 c #747a74", +"#RZ c #747a76", +"d.X c #747a78", +"fUU c #747a7d", +"cqy c #747b70", +"akE c #747b73", +"bxU c #747b74", +"bxW c #747b75", +"c9# c #747b7a", +"cMe c #747c71", +"c7k c #747c72", +"cRR c #747c73", +"aWQ c #747c7e", +"b9. c #747d75", +"bna c #747d77", +"awl c #747d7a", +"b9I c #747d7c", +"c#V c #747d7d", +"c#U c #747d7e", +"d#8 c #747e75", +"am9 c #747e76", +"#w6 c #747e7b", +"aAL c #747e7d", +"bLt c #747e7e", +"cD7 c #747f75", +"a.w c #747f77", +"am2 c #747f79", +"asz c #747f7a", +"aeo c #747f7b", +"a4f c #747f7c", +"bp# c #747f7d", +"duk c #747f81", +"a.u c #748078", +"akm c #74807a", +"#0T c #74807c", +"#Hs c #74807e", +"bfq c #74807f", +"a8J c #748080", +"aQO c #748178", +"#7e c #74817a", +"#Ru c #74817e", +"bsf c #74817f", +"awv c #748182", +"#Ow c #74827e", +"#5x c #748282", +"fuP c #748283", +"#Un c #74847f", +"#B4 c #748484", +"dFF c #748685", +"dOM c #748686", +"eyS c #748688", +"#JO c #74886d", +"adq c #748880", +"dMm c #748887", +"##Y c #748889", +".4h c #748a88", +"fhx c #74c8a5", +"fkB c #74cd8b", +"fsJ c #75444a", +"fv6 c #75444e", +"fze c #754550", +"f2c c #75474f", +"f1R c #754951", +"ff5 c #754a51", +"eRX c #754b4d", +"f4O c #754b54", +"fWl c #754e4f", +"ggb c #754e56", +"fTy c #754f4e", +"fvL c #755057", +"gga c #755058", +"esC c #755153", +"eu6 c #755251", +"esF c #755352", +"fAt c #755354", +"g#R c #755359", +"gd1 c #75535b", +"g#Q c #755459", +"gd0 c #75545a", +"gbW c #75545b", +"fyT c #75555a", +"eim c #755658", +"fJG c #75565a", +"gi# c #75575b", +"ewf c #755858", +"gNh c #755859", +"ezw c #75585c", +"ejH c #755958", +"gNi c #75595a", +"dJW c #755a5c", +"d4H c #755b5e", +"gm. c #755b5f", +"eiI c #755c57", +"dbO c #755c5d", +"eN# c #755c60", +"fJw c #755e62", +".Id c #756041", +"gQB c #756060", +"gP3 c #756061", +"fl. c #756062", +"fJu c #756063", +"gbJ c #756065", +"cAU c #756161", +"f9# c #756162", +"f4j c #756163", +"gbK c #756166", +"cLl c #756260", +"cXM c #756261", +"gPM c #756262", +"ejG c #756264", +"e.D c #756360", +"dMh c #756361", +"b0Z c #75644e", +"gKm c #756465", +"eES c #75655b", +"c6k c #756566", +"frT c #756568", +"cxd c #75664e", +"dSm c #75665f", +"dV1 c #756662", +"cJH c #756763", +"e#h c #75686a", +"bny c #756a5a", +"grl c #756a6e", +"a52 c #756a91", +"a4R c #756b5c", +"eph c #756b6c", +"f80 c #756b6d", +"cDp c #756c60", +"gye c #756c6d", +"df8 c #756c6e", +"bhz c #756d60", +".C2 c #756d62", +"dd2 c #756d70", +"deu c #756e69", +"dcF c #756f69", +"dqX c #756f6f", +"dlo c #75706f", +"f04 c #757072", +"bJZ c #757164", +"a#3 c #75716f", +"gx6 c #757172", +"d0k c #757266", +"dhP c #757271", +"gbm c #757275", +"gbi c #757476", +"e7s c #757477", +"ftB c #757479", +"fni c #75747b", +"bbt c #75756a", +"cM5 c #75756e", +"gCh c #757574", +"#SI c #757575", +"gAM c #757576", +"gfo c #757577", +"cLL c #75766f", +"fO3 c #757678", +"bES c #75767a", +"ah6 c #757772", +"#2H c #757776", +"fUZ c #757779", +"czc c #75786f", +"cJ1 c #757871", +"bz0 c #757973", +"cFE c #757a70", +"byU c #757a73", +"c3M c #757a74", +"#Ij c #757a78", +"cXj c #757b71", +"dmk c #757b73", +"cXV c #757b75", +"#4R c #757b76", +"cPR c #757b77", +"#Sg c #757b79", +"cLv c #757b7c", +"ffs c #757b7e", +"cVW c #757c72", +"cx6 c #757c73", +"abR c #757c74", +"aSm c #757c75", +"cNB c #757d72", +"c8y c #757d73", +"ceL c #757d76", +"dht c #757d7a", +"d.W c #757d7b", +"co0 c #757d7c", +"cU0 c #757d7e", +"bfw c #757d7f", +"ewi c #757d80", +"#SS c #757d86", +"asE c #757e76", +"cwJ c #757e7c", +"ceF c #757e7d", +"cjs c #757e7e", +"bcv c #757e7f", +"a8N c #757e80", +"c#a c #757f76", +"apG c #757f77", +"ax7 c #757f7b", +"ast c #757f7e", +"bXJ c #757f80", +"a#O c #757f81", +"abE c #758078", +"am6 c #758079", +"ahs c #75807a", +"asy c #75807c", +"dsq c #758080", +"fow c #758082", +"abA c #758179", +"acA c #75817f", +"blA c #758180", +"blz c #758181", +"bfs c #758182", +"#7g c #75827b", +"anY c #758280", +"#K4 c #75837f", +"dB1 c #758383", +"ay7 c #758384", +"azQ c #75838a", +"all c #758484", +"fF9 c #758486", +"dwa c #758584", +"eDi c #758585", +"etR c #758689", +"eVU c #758787", +"eMz c #758789", +"ecS c #75898a", +"e5k c #75898b", +"gxn c #75a5d3", +"ftZ c #75afc2", +"bfU c #7631df", +"fWb c #76444a", +"fM4 c #76484e", +"fQp c #76494d", +"e3. c #764b51", +"fZi c #764e53", +"e9W c #764f4e", +"g#S c #765359", +"gbY c #765459", +"gg# c #76555a", +"gbX c #76555b", +"ekT c #765658", +"gdZ c #76565b", +"fDS c #76575c", +"go# c #76585d", +"eBD c #76595e", +"ebL c #765a5d", +"duf c #765c5c", +"eCo c #765f57", +"eAi c #765f58", +"c1T c #765f5f", +"fVn c #765f62", +"fYd c #765f63", +"f1p c #766062", +"fGC c #766063", +"fDJ c #766064", +"gPy c #766162", +"g#w c #766163", +"g#x c #766164", +"gbI c #766166", +"cyQ c #766261", +"gPY c #766262", +"fMj c #766263", +"fYc c #766264", +"gbL c #766265", +"cCK c #766362", +"gPz c #766363", +"f6W c #766364", +"d2y c #76645e", +"dbN c #766463", +"dyX c #766464", +"dNb c #766567", +"cfy c #766650", +"bJo c #766664", +"bHb c #766665", +"due c #766667", +"cs. c #76674e", +"cdf c #766755", +"cGc c #766763", +"bRe c #766764", +"dDG c #766767", +"ebn c #76676a", +"bbY c #766856", +"cQY c #766866", +"cPF c #766868", +"a4J c #766a5a", +"f1b c #766b6b", +"g#k c #766d70", +"buT c #766e62", +"df7 c #766e6f", +"fXT c #766f71", +"a4y c #767064", +"dsX c #767170", +"aYL c #767266", +"gFD c #767277", +"glB c #767376", +"dju c #767472", +"fU1 c #767477", +"fj9 c #76747d", +"#JE c #767484", +"b8V c #767572", +"ghz c #767577", +"#FV c #76757e", +"doO c #767674", +"gqT c #767676", +"aBr c #767677", +"e7y c #767678", +"#JD c #767681", +"cxP c #76776f", +"b3# c #767771", +"#Zi c #767776", +"fGi c #767779", +"f0Z c #76777a", +"c5V c #767870", +"b38 c #767871", +"fXN c #767879", +"#SR c #767886", +"cDX c #767970", +"b6c c #767971", +"b5f c #767972", +"aze c #76797a", +"#Cp c #767982", +"bqa c #767a75", +"eFp c #767a79", +"dtW c #767b72", +"bJN c #767b74", +"daG c #767b76", +"#1E c #767b77", +"#VU c #767b81", +"bX0 c #767c75", +"buA c #767c76", +"aQe c #767c78", +"aEF c #767c79", +"#BB c #767c7a", +"ahQ c #767d75", +"bIR c #767d76", +"bAX c #767d77", +"cEB c #767d7d", +"cJR c #767d7e", +"ejL c #767d80", +"c4E c #767e72", +"cx0 c #767e73", +"a4i c #767e76", +"bC3 c #767e7a", +"c#T c #767e80", +"#Ls c #767f78", +"bux c #767f7a", +"bxX c #767f7b", +"cy1 c #767f7c", +"bd1 c #767f7d", +"cCS c #767f7e", +"aTI c #767f80", +"flm c #767f81", +"bcJ c #768071", +"dt1 c #768075", +"c0e c #768077", +"aeF c #768078", +"aSj c #768079", +"c#Y c #76807c", +"b5Z c #76807e", +"ass c #76807f", +"bm4 c #768081", +"fik c #768082", +"deP c #768178", +"ahz c #768179", +"ako c #76817b", +"aAO c #76817c", +"akl c #76817d", +"aJv c #76817e", +"djd c #768182", +"fyc c #768183", +"akn c #76827c", +"#Xo c #76827e", +"an5 c #768280", +"aTG c #768282", +"frv c #768284", +"#02 c #76837c", +"dup c #768383", +"b#U c #76847a", +"#Uj c #76847f", +"fcz c #768484", +"f#N c #768485", +"#Um c #768581", +"aB1 c #768586", +"#B2 c #768686", +"dJ3 c #768888", +"dWa c #768889", +"eKi c #76888a", +"eVW c #76888c", +"dYL c #76898a", +"eMx c #768a8b", +"eOF c #768b8c", +"gu9 c #769bd0", +"#zN c #769d01", +"clt c #76d482", +"clQ c #76eb89", +"bgC c #7712a5", +"aLu c #772cdf", +"fjl c #77464c", +"fKh c #77474e", +"gah c #774750", +"fTp c #77484c", +"fmn c #77484e", +"fma c #774953", +"fY9 c #774a52", +"fNj c #774c4f", +"fdc c #774d56", +"fEJ c #774f50", +"g#W c #775158", +"gb1 c #775159", +"f9w c #775258", +"esE c #775354", +"gd2 c #77535a", +"gb0 c #77545a", +"gCn c #775556", +"gbZ c #77555a", +"f9v c #77555b", +"g#P c #77565c", +"eq. c #775756", +"fog c #77595a", +"fJH c #77595d", +"gNg c #775a5a", +"fRP c #775b5a", +"eQP c #775c5b", +"gNj c #775c5c", +"dkO c #775c5e", +"dDH c #775d5c", +"gOM c #775e5d", +"fBc c #775e62", +"gPx c #775f5f", +"eDU c #775f62", +"fPw c #775f63", +"dZY c #77605b", +"cQZ c #776061", +"cPG c #776062", +"fJv c #776063", +"cO# c #776161", +"gQz c #776162", +"gQX c #776163", +"fMk c #776164", +"cY2 c #776263", +"ewe c #776264", +"fSw c #776265", +"cUR c #776362", +"cMI c #776363", +"f9a c #776364", +"fVh c #776365", +"ckB c #77644d", +"dGG c #776463", +"gPB c #776464", +"gQu c #776465", +"dRD c #776466", +"gnM c #776468", +"eCs c #77655b", +"d8f c #776563", +"dPp c #776568", +"bOc c #776655", +"c81 c #776767", +"dPq c #776768", +"dGS c #776863", +"cLk c #776864", +"bTp c #776865", +"cO. c #776868", +"fJl c #77686b", +"cWq c #776966", +"fFU c #776969", +"gyB c #77696a", +"cUQ c #776a68", +"ce8 c #776c58", +"gbt c #776c70", +"a78 c #776d62", +"d7I c #776d63", +"bFW c #776e62", +"gyd c #776e6f", +"do4 c #776e70", +"d7K c #777064", +"b#f c #77716c", +"f32 c #777174", +"cGN c #77726b", +"daM c #777372", +"#8U c #777574", +"fO6 c #777578", +"grg c #777579", +"e4h c #77757b", +"b23 c #777671", +".tN c #777676", +"frI c #777678", +"a25 c #777687", +"bJU c #77776f", +"dlc c #777775", +"aNg c #777777", +"aQF c #777778", +"cUd c #77786f", +"cET c #777872", +"#oa c #777878", +"fSc c #777879", +"fLV c #77787a", +"f00 c #77787b", +"fXM c #77797b", +"dBq c #777a6f", +"b6a c #777a73", +"f6v c #777a7b", +"#yN c #777b78", +"#iy c #777b7b", +"#L3 c #777b7c", +"b0# c #777c74", +"bHA c #777c75", +"#EL c #777c7a", +"cJP c #777c7c", +"bNn c #777d76", +"cWA c #777d78", +"cp# c #777d79", +"cPQ c #777d7b", +"cVV c #777e74", +"ahM c #777e76", +"#7y c #777e77", +"bq9 c #777e78", +"cEG c #777e7c", +"cAZ c #777e7e", +"#VN c #777e82", +"cMf c #777f74", +"bcI c #777f75", +"bwQ c #777f76", +"bXY c #777f77", +"dft c #777f7c", +"cMP c #777f7e", +"biq c #777f80", +"cex c #777f81", +"aCb c #778079", +"ccn c #77807b", +"#w3 c #77807d", +"co1 c #77807e", +"aJt c #77807f", +"aR4 c #778080", +"drY c #778176", +"c#b c #778178", +"aez c #778179", +"bpb c #77817c", +"#8S c #77817e", +"a7g c #77817f", +"aGD c #778180", +"b9G c #778182", +"frx c #778183", +"ahy c #778279", +"aeB c #77827a", +"am4 c #77827c", +"avs c #77827e", +"fyd c #778284", +"a2V c #778379", +"a2W c #77837a", +"bC2 c #77837c", +"bvU c #77837e", +"bx5 c #77837f", +"bx4 c #778380", +"bcr c #778381", +"a8I c #778382", +"b#H c #778383", +"#Xy c #77847e", +"#Ue c #778481", +"dw# c #778483", +"aHO c #778484", +"fru c #778486", +"aaj c #77857f", +"#PI c #778585", +"#K5 c #778681", +"#J# c #778686", +"ao. c #778787", +"aw7 c #77878c", +"ews c #778889", +"dQ1 c #778989", +"e2g c #77898a", +"eH2 c #77898b", +"eFB c #778b8c", +".KR c #779191", +".5# c #77b0c7", +"fhu c #77d08d", +"clW c #77e689", +"clV c #77e88a", +"clH c #77ea8b", +"clR c #77ec8a", +"bdE c #780099", +"adg c #781b20", +"fVT c #784652", +"fBI c #784953", +"eRO c #784f55", +"fKu c #785051", +"fQs c #785053", +"eu5 c #785255", +"gd3 c #785259", +"gcB c #785359", +"fvN c #78535a", +"g#T c #78545b", +"fyX c #78555b", +"ep8 c #785657", +"eHN c #78575a", +"ebN c #78595e", +"gi. c #785a5f", +"etK c #785b5b", +"ezu c #785b5f", +"eha c #785c5c", +"evh c #785d56", +"gMB c #785d5e", +"d1a c #785d60", +"#WU c #785e00", +"gNf c #785e5d", +"gOO c #785e5e", +"gNk c #785f5e", +"fBb c #785f63", +"fMq c #785f64", +"gQi c #786163", +"fB# c #786164", +"fGD c #786165", +"fDH c #786265", +"c0z c #786364", +"gPV c #786365", +"fDI c #786366", +"eXH c #78645c", +"gPA c #786464", +"gPI c #786465", +"fh5 c #786466", +"f0z c #786565", +"f4e c #78656a", +"bMj c #786652", +"eHg c #78665c", +"f3G c #786666", +"cfj c #78674d", +"b.R c #78674f", +"csh c #786752", +"cAT c #786764", +"c1S c #786765", +"fUE c #786769", +"gfG c #78676a", +"dPZ c #786860", +"dxS c #786869", +"fMa c #78686b", +"b6Q c #786958", +"cSc c #786966", +"doh c #786967", +"gBC c #786969", +"csm c #786a58", +"caX c #786a5b", +"d2F c #786a62", +"cTp c #786a68", +"du8 c #786a69", +"ccN c #786b57", +"fSo c #786b6d", +"glM c #786c6e", +"#0z c #786d6c", +"bLU c #786f5f", +"#0y c #786f6d", +"eck c #787165", +"dC8 c #787269", +"be7 c #78726c", +"dd1 c #787274", +"bT1 c #787364", +"epd c #787374", +"d2R c #787468", +"afW c #787578", +"bbu c #78766b", +"bDq c #78776f", +"b#R c #787776", +"e7t c #78777b", +"fqh c #78777e", +"fkj c #78777f", +"a2J c #787876", +"aZR c #787877", +"aKf c #787878", +"f6w c #78787a", +"akX c #787976", +"ac. c #787977", +"gB8 c #787978", +"aF. c #787979", +"gGc c #78797a", +"#P9 c #78797f", +"cJ3 c #787a73", +"#nW c #787a7a", +"cmF c #787b72", +"b7b c #787b74", +"bc7 c #787b7b", +"fUY c #787b7c", +"#Yi c #787c7b", +"#L4 c #787c7d", +"#Zq c #787c7f", +"cub c #787d76", +"c6y c #787d77", +"awe c #787d79", +"aQQ c #787d7b", +"br3 c #787e78", +"aKl c #787e7a", +"cJX c #787e7b", +"#xP c #787e7c", +"cIc c #787e7d", +"cNy c #787f74", +"bC5 c #787f76", +"apU c #787f77", +"bq8 c #787f78", +"cCZ c #787f7d", +"a#0 c #787f7e", +"fXH c #787f81", +"#5Q c #787f83", +"aQ2 c #787f84", +"cUi c #788075", +"cQK c #788077", +"c29 c #788078", +"#Qi c #78807a", +"bsa c #78807b", +"a0d c #78807d", +"aW7 c #78807f", +"aU8 c #788080", +"aCI c #788082", +"btR c #78817b", +"bq4 c #78817c", +"aTP c #78817e", +"bg4 c #78817f", +"a2M c #788180", +"cCd c #788278", +"cKU c #788279", +"aku c #78827a", +"aSh c #78827c", +"bfk c #78827d", +"aWZ c #78827f", +"asu c #788281", +"aGE c #788282", +"alA c #788283", +"a.x c #78837b", +"bd9 c #78837c", +"aht c #78837d", +"apx c #78837e", +"akk c #78837f", +".GS c #788383", +"fll c #788385", +"bCa c #788480", +"#K2 c #788482", +"aTH c #788484", +"frw c #788486", +"a.t c #78857d", +"bos c #788580", +"b#I c #788584", +"#Uk c #788681", +"#Mz c #788686", +"ay6 c #788687", +"an9 c #788787", +"#Ul c #788884", +"#B3 c #788888", +"fy# c #788889", +"e2h c #788989", +"dYT c #788a8a", +"fuI c #788a8b", +"#G. c #788b71", +"d56 c #788b89", +"cAH c #788b8e", +"eoP c #788c8d", +".Oj c #788f8f", +".Z8 c #78918f", +"ft0 c #789cd0", +".35 c #78b9de", +"feH c #78c8a7", +"clZ c #78da84", +"clv c #78da88", +"clU c #78e98c", +"clG c #78ea8c", +"clC c #78ea8d", +"clB c #78ea8e", +"#To c #7911e0", +"add c #791f1e", +"aRg c #7932de", +"e6u c #794851", +"fv4 c #794852", +"fEv c #79494e", +"f46 c #794952", +"fVM c #794c57", +"fKq c #794d51", +"e0p c #794d52", +"fap c #794e57", +"fKr c #795051", +"fsX c #795150", +"g#V c #795259", +"f9y c #79525a", +"fl0 c #79535a", +"ezZ c #795456", +"g#U c #79545a", +"fBl c #79575c", +"fxU c #795858", +"gbV c #79595e", +"gmT c #795a5f", +"ebX c #795b59", +"fh6 c #795b5c", +"gMA c #795c5d", +"eVP c #795d5d", +"gMU c #795e5c", +"gNd c #795e5d", +"gMV c #795e5e", +"dOD c #795e5f", +"eaL c #795e60", +"d7# c #795e62", +"gNn c #795f5e", +"c82 c #796060", +"fPx c #796064", +"dZX c #79615d", +"fYe c #796165", +"d4V c #79625f", +"cSd c #796262", +"bRf c #796263", +"gQh c #796265", +"f1q c #796266", +"cwv c #796362", +"gQj c #796364", +"f4k c #796366", +"gQA c #796464", +"eh# c #796465", +"etJ c #796466", +"gPH c #796564", +"gPJ c #796565", +"f6V c #796567", +"bhU c #79664e", +"eaK c #796664", +"chQ c #79674f", +"dOC c #796765", +"dRE c #796768", +"dPo c #796769", +"eM1 c #79676a", +"cpA c #796851", +"cyP c #796864", +"cCJ c #796865", +"e5a c #796868", +"dHB c #796869", +"gvL c #79686c", +"caW c #796958", +"gnf c #79695f", +"coR c #796963", +"#vO c #796967", +"eOx c #796969", +"c7H c #79696a", +"f3F c #796a66", +"d51 c #796a67", +"gc1 c #796a6a", +"gaU c #796a6b", +"ebm c #796a6d", +"geZ c #796b6b", +"e5# c #796c69", +"gxt c #796c6a", +"bzr c #796d5c", +"egC c #796d62", +"fL6 c #796d6f", +"fU7 c #796e72", +"gdx c #796f71", +"ghC c #796f72", +"dgv c #79706a", +"f09 c #797073", +"fXU c #797274", +"dbe c #79736e", +"a1A c #797466", +"c9u c #797473", +"c9t c #797575", +"aNK c #797577", +"bBF c #797772", +"g#d c #79777a", +"gAK c #797878", +"gGl c #79787a", +"f3X c #79787b", +"b7A c #797978", +"aJo c #797979", +"f01 c #79797a", +"gfn c #79797b", +"d#4 c #797a72", +"cIx c #797a74", +"bcF c #797a7a", +"fyn c #797a7c", +"#M6 c #797a83", +"cj2 c #797b74", +"cj0 c #797b75", +"#yP c #797b82", +"d.d c #797c73", +"cw4 c #797c74", +"azl c #797c79", +"aQP c #797c7a", +"at6 c #797c7b", +"#hs c #797c7c", +"#It c #797c7e", +"c3P c #797d75", +"bA2 c #797d76", +"aQU c #797d7e", +"fR8 c #797d81", +"b.o c #797e77", +"btF c #797e78", +"agk c #797e7d", +"#Zj c #797e81", +"bXZ c #797f77", +"bLz c #797f78", +"bz2 c #797f79", +"#LE c #797f7b", +"a2L c #797f7c", +"awh c #797f7d", +"#2I c #797f83", +"dBv c #798074", +"#Gi c #798078", +"a.L c #798079", +"aQ1 c #79807e", +"eHR c #798082", +"cHw c #798176", +"diO c #798179", +"bvM c #79817b", +"aaf c #79817f", +"cmb c #798180", +"aQH c #798181", +"bqr c #798184", +"buy c #79827d", +"a8S c #79827e", +"#w4 c #79827f", +"a06 c #798280", +"c#W c #798281", +"b9H c #798283", +"acO c #798284", +"ahC c #79837a", +"an. c #79837b", +"aPo c #79837c", +"asx c #798380", +"bd5 c #798382", +"bwH c #798383", +"afO c #798385", +"aeA c #79847c", +"aDF c #79847e", +"amY c #798480", +"apv c #798482", +"djg c #798483", +"fye c #798486", +"#7i c #79857d", +"bC1 c #798580", +"#4a c #798581", +"bin c #798582", +"an7 c #798583", +"a#G c #798584", +"dqq c #798585", +"fuQ c #798587", +"#XA c #79867f", +"b9C c #798685", +"aQw c #798686", +"fou c #798687", +"fOP c #798688", +"#Hr c #798784", +"dqm c #798787", +"atN c #798788", +"#Ox c #798883", +"#Ht c #798884", +"aQv c #798888", +"atQ c #798889", +"#yj c #798989", +"eV1 c #79898a", +"eDe c #798a8c", +"dJZ c #798b8a", +"eOK c #798b8b", +"eKj c #798b8d", +"eDg c #798c8e", +"eho c #798d8e", +"e8w c #798d8f", +"eOG c #798e8f", +".5d c #798ea4", +".9Z c #799cbe", +"blK c #79a978", +".2a c #79b5da", +".2# c #79b6dc", +"clY c #79df89", +"clX c #79e38a", +"clx c #79e38d", +"clA c #79e88e", +"clS c #79e98b", +"clT c #79e98c", +"clI c #79e98d", +"clF c #79ea8b", +"clD c #79ea8c", +"clE c #79ea8d", +"arL c #7a000b", +"#Kc c #7a0ed7", +"#Da c #7a16c9", +"ad# c #7a4444", +"fdp c #7a4851", +"fTb c #7a494f", +"fK# c #7a4952", +"fWa c #7a4a50", +"fYQ c #7a4c55", +"fav c #7a4d54", +"eW5 c #7a5056", +"fEg c #7a5059", +"f7i c #7a5159", +"f9x c #7a535a", +"fC8 c #7a5759", +"ep9 c #7a5957", +"gf9 c #7a5a5f", +"d9x c #7a5b5f", +"gMD c #7a5c5d", +"gMC c #7a5c60", +"ewZ c #7a5c61", +"eQl c #7a5d57", +"gPa c #7a5d5d", +"gNc c #7a5e5d", +"gMP c #7a5e5e", +"eJv c #7a5f58", +"gNe c #7a5f5d", +"gMT c #7a5f5e", +"gMW c #7a5f5f", +"gNl c #7a605e", +"gNm c #7a605f", +"de7 c #7a6062", +"c7I c #7a6160", +"fBa c #7a6165", +"fSx c #7a6266", +"bJp c #7a6363", +"bTq c #7a6364", +"fYg c #7a6366", +"fYf c #7a6367", +"esZ c #7a645b", +"gPW c #7a6466", +"fJy c #7a6467", +"#KM c #7a6564", +"gPC c #7a6566", +"g#y c #7a6567", +"d2t c #7a6660", +"gPN c #7a6666", +"f6a c #7a6667", +"el8 c #7a6668", +"#vP c #7a6766", +"fus c #7a6769", +"dU# c #7a676a", +"cfx c #7a6851", +"e8q c #7a6868", +"fGy c #7a686a", +"g#u c #7a686c", +"cY1 c #7a6967", +"ac7 c #7a6968", +"fXv c #7a6969", +"ctX c #7a696a", +"chW c #7a6a56", +"glg c #7a6a61", +"cl7 c #7a6a62", +"cru c #7a6a67", +"dv5 c #7a6a6b", +"fvh c #7a6a6c", +"gtE c #7a6a6d", +"czu c #7a6b57", +"bpW c #7a6b5a", +"dmD c #7a6b67", +"dN# c #7a6b6b", +"c.D c #7a6c5b", +"d3D c #7a6c68", +"gg6 c #7a6c6c", +"gvI c #7a6c6f", +"b8M c #7a6d5c", +"bmU c #7a6d6c", +"#3U c #7a6e6d", +"cxb c #7a6f5f", +"fXW c #7a6f73", +"bYb c #7a705e", +".nP c #7a7061", +"bW# c #7a715f", +"#W3 c #7a716e", +"f08 c #7a7174", +"ac6 c #7a7271", +"c93 c #7a7470", +"c6I c #7a7474", +"bcB c #7a7575", +"a51 c #7a7587", +"dC9 c #7a766d", +"d#f c #7a7675", +"gx1 c #7a7677", +"aYM c #7a776b", +"cRz c #7a7773", +"aO6 c #7a7779", +"bbv c #7a786c", +"bcE c #7a7879", +"bcH c #7a787e", +"#PZ c #7a7979", +"gBr c #7a797a", +"gtn c #7a797c", +"af. c #7a7a78", +"bd. c #7a7a79", +"#6Y c #7a7a7a", +".sE c #7a7a7b", +"bcG c #7a7a7d", +"csJ c #7a7b72", +"cVR c #7a7b73", +"b3a c #7a7b75", +"bc9 c #7a7b76", +"akW c #7a7b77", +"buK c #7a7b78", +"gCj c #7a7b7b", +"aQR c #7a7b7c", +"c2b c #7a7c75", +"aQT c #7a7c7b", +"eO2 c #7a7c7d", +"fyl c #7a7c7f", +"bY5 c #7a7d76", +"awJ c #7a7d7c", +"a3d c #7a7d7d", +"aQV c #7a7d7e", +"fI5 c #7a7d80", +"#SJ c #7a7d83", +"#SK c #7a7d85", +"aPy c #7a7e77", +"#JW c #7a7e7b", +"ail c #7a7e7d", +"#Qt c #7a7e7e", +"aQW c #7a7e7f", +"#Zs c #7a7e80", +"aLl c #7a7e81", +"csV c #7a7f75", +"bD# c #7a7f78", +"af3 c #7a7f7b", +"aT0 c #7a7f7e", +"aQZ c #7a7f7f", +"aTX c #7a7f81", +"a#Z c #7a7f82", +"ch. c #7a8079", +"btH c #7a807a", +"cZe c #7a807b", +"a2l c #7a807c", +"#Ic c #7a807d", +"aQ0 c #7a807e", +"ct9 c #7a807f", +"ac0 c #7a8083", +"cFH c #7a8176", +"dxC c #7a8177", +"ahL c #7a8179", +"bEd c #7a817a", +"bEe c #7a817b", +"azk c #7a817d", +"cS6 c #7a8277", +"c7l c #7a8279", +"abQ c #7a827a", +"aTW c #7a827b", +"a5P c #7a827d", +"#EF c #7a8280", +"#Jt c #7a8282", +"cZa c #7a8284", +"aeH c #7a837b", +"buw c #7a837e", +"cIe c #7a8382", +"b9J c #7a8383", +"cZ. c #7a8384", +"bsg c #7a8385", +"fIq c #7a8393", +"cs4 c #7a847b", +"aeG c #7a847c", +"aBN c #7a8480", +"#A6 c #7a8481", +"aCC c #7a8482", +"asr c #7a8483", +"dhr c #7a8484", +"#7k c #7a857d", +"b.f c #7a857f", +"a4g c #7a8580", +"bbd c #7a8581", +"bo7 c #7a8585", +"bm3 c #7a8586", +"fR1 c #7a8587", +"bAa c #7a8681", +"#Xr c #7a8682", +"btZ c #7a8683", +"an6 c #7a8684", +"#Al c #7a8686", +"#Ur c #7a8780", +"#7h c #7a8781", +"an8 c #7a8787", +"#Rv c #7a8884", +"aHP c #7a8888", +"aB0 c #7a8889", +"#K6 c #7a8984", +"fuO c #7a8989", +"dHK c #7a8a8a", +"eDf c #7a8b8d", +"eFF c #7a8c8e", +".WR c #7a8da1", +"eY0 c #7a8e8e", +"eOE c #7a8e8f", +"eVV c #7a8e90", +".5o c #7a908e", +".Y0 c #7a9291", +".23 c #7abade", +"d3l c #7acf78", +"cly c #7ae68b", +"clz c #7ae78c", +"baM c #7b0488", +"aad c #7b4041", +"ad. c #7b4c4d", +"e9w c #7b4c54", +"fJ2 c #7b4c56", +"fm# c #7b4d57", +"eUg c #7b5257", +"f4J c #7b525a", +"f7j c #7b535b", +"ezX c #7b5457", +"f7h c #7b545c", +"a85 c #7b54aa", +"eJ# c #7b5558", +"fvQ c #7b565d", +"f2o c #7b5759", +"fJF c #7b5d61", +"eyG c #7b5e5e", +"ezv c #7b5e62", +"exF c #7b5f58", +"gME c #7b5f5e", +"gM6 c #7b5f5f", +"gOP c #7b5f60", +"gON c #7b605f", +"eN. c #7b6066", +"gOL c #7b6160", +"dHC c #7b6161", +"eKR c #7b6165", +"gOR c #7b6261", +"dmE c #7b6262", +"ddl c #7b6263", +"gqD c #7b6265", +"fMp c #7b6266", +"coS c #7b635d", +"fVo c #7b6367", +"bHc c #7b6465", +"f9c c #7b6467", +"fPr c #7b6468", +"gP8 c #7b6566", +"gQU c #7b6567", +"gQS c #7b6568", +"#Ob c #7b6666", +"gPR c #7b6667", +"eyF c #7b6668", +"f9b c #7b6669", +"ghU c #7b666b", +"#KL c #7b6766", +"gPX c #7b6767", +"gP7 c #7b6768", +"f1o c #7b6769", +"gQZ c #7b6867", +"dRK c #7b686a", +"b2U c #7b6954", +"bSt c #7b6955", +"elm c #7b695f", +"dPV c #7b6965", +"dTm c #7b6966", +"ddk c #7b6967", +"cwu c #7b6968", +"eM2 c #7b696b", +"cc0 c #7b6a50", +"cpB c #7b6a52", +"cde c #7b6a56", +"go8 c #7b6a64", +"cne c #7b6b5a", +"eMm c #7b6b6b", +"dPr c #7b6b6d", +"cas c #7b6c56", +"c.C c #7b6c5a", +"gi8 c #7b6c68", +"bmV c #7b6c6b", +"e17 c #7b6c6c", +"bLg c #7b6d69", +"#3V c #7b6d6c", +"b8h c #7b6e5a", +"ech c #7b6f65", +"dit c #7b716a", +"aod c #7b7174", +"a7T c #7b7266", +"dnb c #7b7273", +"fXV c #7b7274", +"f6G c #7b7275", +"bHV c #7b7467", +"eam c #7b7468", +"c8n c #7b7470", +"d0f c #7b756a", +"bDP c #7b756f", +"c7# c #7b7571", +"c5M c #7b7773", +"c71 c #7b7776", +"gpj c #7b777c", +"gF. c #7b7876", +"bc5 c #7b787a", +"dN7 c #7b796d", +"bc8 c #7b797b", +"e1i c #7b7980", +"dvC c #7b7a70", +"bc6 c #7b7a78", +"aO7 c #7b7a7b", +"f3Y c #7b7a7d", +"dmb c #7b7b73", +"aQS c #7b7b7a", +"#MS c #7b7b7b", +"gbj c #7b7b7d", +"aol c #7b7b7f", +"dE2 c #7b7c72", +"cbf c #7b7c76", +"fU0 c #7b7c7e", +"ar. c #7b7c7f", +"#M7 c #7b7c80", +"dDi c #7b7d73", +"bfA c #7b7d76", +"bag c #7b7d7b", +"#57 c #7b7d7f", +"aQY c #7b7d80", +"aQX c #7b7d81", +"cpl c #7b7e77", +"#VY c #7b7e7c", +"alC c #7b7e7d", +"#Nd c #7b7e7e", +"aQG c #7b7e7f", +"#Gm c #7b7e80", +"bD. c #7b7f78", +"aiX c #7b7f7b", +"aom c #7b7f7e", +"#Zt c #7b7f80", +"af2 c #7b7f84", +"bZ7 c #7b8079", +"#S6 c #7b807b", +"aZ0 c #7b807d", +"cLr c #7b8080", +"cJS c #7b8083", +"aiW c #7b8084", +"cqs c #7b8177", +"cA8 c #7b8179", +"bAY c #7b817a", +"a2m c #7b817d", +"aur c #7b817e", +"aBH c #7b817f", +"cOg c #7b8181", +"cMV c #7b8182", +"at5 c #7b8183", +"bfB c #7b8279", +"aA0 c #7b827a", +"ceM c #7b827b", +"aCc c #7b827c", +"awI c #7b8281", +"cS5 c #7b8378", +"cHB c #7b837b", +"bFe c #7b837e", +"cR. c #7b8382", +"cUZ c #7b8383", +"b#K c #7b8386", +"b52 c #7b847f", +"aPb c #7b8483", +"bjU c #7b8484", +"avz c #7b857d", +"blv c #7b8580", +"cA4 c #7b8581", +"#23 c #7b8584", +"bHq c #7b8585", +"aQy c #7b8586", +"fuR c #7b8587", +"#7j c #7b867e", +"abz c #7b867f", +"aep c #7b8680", +"bhd c #7b8681", +"asw c #7b8682", +"apu c #7b8683", +"b.c c #7b8684", +"djc c #7b8686", +"#v9 c #7b8687", +"aiL c #7b8688", +"d#9 c #7b877d", +"aby c #7b877e", +"#Xz c #7b8780", +"#53 c #7b8782", +"abk c #7b8783", +"#Xl c #7b8784", +"#Ud c #7b8785", +"#8z c #7b8786", +"aje c #7b8787", +"aWL c #7b8788", +"#DW c #7b8887", +"#Y4 c #7b8888", +"fLL c #7b888a", +"#Xq c #7b8985", +"bt0 c #7b8986", +"#Su c #7b8989", +"#Uo c #7b8a83", +"#Ui c #7b8a85", +"#D2 c #7b8a87", +"f6f c #7b8a8a", +"aqU c #7b8b8b", +"fG. c #7b8b8c", +"f6e c #7b8c8b", +"fIT c #7b8c8c", +"d8j c #7b8c8d", +"fuG c #7b8e8f", +"cCy c #7b8f8b", +"ee0 c #7b8f90", +"eoQ c #7b9091", +".75 c #7b9092", +".XO c #7b90a5", +"d3I c #7b918f", +"cAE c #7b9491", +"fqK c #7baec3", +".VZ c #7bb4d6", +"fnO c #7bb5c1", +"clw c #7bdd8e", +"ama c #7c0109", +"adf c #7c0509", +"ade c #7c1413", +"agi c #7c3936", +"ada c #7c3b39", +"fV2 c #7c4b54", +"fTo c #7c4c51", +"fP5 c #7c4c56", +"fW# c #7c4e55", +"f2b c #7c4e57", +"fdi c #7c5158", +"e9n c #7c515a", +"fG9 c #7c525b", +"fl6 c #7c535b", +"f4I c #7c545c", +"fvM c #7c555d", +"ext c #7c5659", +"g#X c #7c575e", +"exl c #7c595a", +"eJ6 c #7c5c5e", +"eFs c #7c5d5c", +"g.b c #7c5e60", +"ac8 c #7c5f5d", +"el9 c #7c5f5f", +"eBF c #7c5f63", +"gMI c #7c605f", +"gM5 c #7c6060", +"eAd c #7c615a", +"gMF c #7c6160", +"gO# c #7c6161", +"fyN c #7c6164", +"fSz c #7c6165", +"fPy c #7c6166", +"gNw c #7c6261", +"dv6 c #7c6262", +"fSy c #7c6267", +"crv c #7c6460", +"g.Q c #7c6465", +"f4l c #7c6468", +"f8u c #7c6566", +"gQW c #7c6667", +"gP4 c #7c6668", +"f6X c #7c6669", +"cfv c #7c674e", +"e3P c #7c6760", +"#Oa c #7c6767", +"gQk c #7c6768", +"gQx c #7c6769", +"g#z c #7c676a", +"gPD c #7c6868", +"gPQ c #7c6869", +"fX9 c #7c686a", +"cfw c #7c6950", +"c0y c #7c6967", +"eeN c #7c6968", +"gPU c #7c6969", +"fDE c #7c696b", +"cmW c #7c6a54", +"b4R c #7c6a56", +"eHh c #7c6a60", +"dPY c #7c6a65", +"dQT c #7c6a68", +"gJC c #7c6b6a", +"ckD c #7c6c59", +"bP# c #7c6c6a", +"b3M c #7c6c6b", +"bo1 c #7c6c6c", +"czB c #7c6d5a", +"b1S c #7c6d6c", +"b3L c #7c6e6b", +"a94 c #7c6e6c", +"b1R c #7c6f6c", +"cBx c #7c705e", +"en0 c #7c7065", +"a93 c #7c706c", +"#W4 c #7c706e", +"aGp c #7c716d", +"fL8 c #7c7173", +"epe c #7c7273", +"f6F c #7c7376", +"cHX c #7c746a", +"gFd c #7c7576", +"dqZ c #7c7677", +"f05 c #7c7678", +"d7M c #7c776a", +"d#Q c #7c7773", +"bc4 c #7c7779", +"dXH c #7c796d", +"dSC c #7c796e", +"#Cq c #7c7983", +"#0D c #7c7a7b", +"f8U c #7c7a7d", +"bvi c #7c7b79", +"bcC c #7c7b7d", +"baf c #7c7b7e", +"a50 c #7c7b82", +"#Qs c #7c7b85", +"d#3 c #7c7c74", +"azL c #7c7c7a", +"aBs c #7c7c7c", +"#Ne c #7c7c7d", +"#Wh c #7c7c7e", +"cnC c #7c7d75", +"cLM c #7c7d77", +"aW9 c #7c7d79", +"#CP c #7c7d7a", +"b7v c #7c7d7b", +"#5R c #7c7d7c", +"aah c #7c7d7d", +"#VX c #7c7d7e", +"ac2 c #7c7d7f", +"#JZ c #7c7d80", +"#S7 c #7c7d81", +"#2P c #7c7d82", +"dE6 c #7c7e73", +"cFC c #7c7e75", +"cJ2 c #7c7e77", +"aoj c #7c7e7a", +"#7T c #7c7e7b", +"b#T c #7c7e7c", +"#ZH c #7c7e7d", +"#25 c #7c7e7e", +"#yO c #7c7e7f", +"af4 c #7c7e80", +"#zc c #7c7e81", +"csO c #7c7f76", +"bOy c #7c7f78", +"buJ c #7c7f79", +"#8T c #7c7f7b", +"#3a c #7c7f7d", +"#89 c #7c7f7e", +"aT4 c #7c7f81", +"b0b c #7c8079", +"a8R c #7c807b", +"a2X c #7c807d", +"#SV c #7c807e", +"bLC c #7c817a", +"a.2 c #7c817d", +"aQ3 c #7c827a", +"b5j c #7c827b", +"bwP c #7c827c", +"aHy c #7c827e", +"#Pt c #7c8280", +"aKM c #7c8282", +"cPL c #7c8283", +"aeP c #7c837b", +"bpi c #7c837c", +"cSj c #7c8382", +"cOk c #7c8384", +"cZ# c #7c8386", +"cND c #7c8479", +"clc c #7c847b", +"bGw c #7c847d", +"bAW c #7c847f", +"aYb c #7c8483", +"c7P c #7c8484", +"cUY c #7c8485", +"cZb c #7c8486", +"byM c #7c8581", +"#w5 c #7c8582", +"aGC c #7c8584", +"b9F c #7c8587", +"cKV c #7c867d", +"a.E c #7c867e", +"bAV c #7c8682", +"aAM c #7c8684", +"avr c #7c8685", +"b5Y c #7c8686", +"bsE c #7c8688", +"d.o c #7c877d", +"dbw c #7c877e", +"asA c #7c8781", +"akj c #7c8783", +"asv c #7c8784", +"aJs c #7c8786", +"bCc c #7c8884", +"aiw c #7c8886", +"dkX c #7c8888", +".G6 c #7c888a", +"#XB c #7c8981", +"#Uq c #7c8982", +"dkW c #7c8989", +"#Vx c #7c8a8a", +"e8H c #7c8a8b", +"f#L c #7c8b8b", +"aqV c #7c8b8c", +"f#K c #7c8c8c", +"#TO c #7c8e03", +"eyT c #7c8e8e", +"eH3 c #7c8e90", +"eKk c #7c8e91", +"eY2 c #7c8e92", +"eQW c #7c9091", +"#0n c #7c9d03", +"f.2 c #7cd999", +"auE c #7d0067", +"bcS c #7d01fc", +"adc c #7d2726", +"baL c #7d357f", +"fBX c #7d4b51", +"fMU c #7d505a", +"eXg c #7d5255", +"e9p c #7d5259", +"fiX c #7d545c", +"ac9 c #7d5555", +"fHz c #7d5556", +"f4K c #7d555d", +"ezY c #7d5659", +"ep7 c #7d5a5b", +"euV c #7d5a5c", +"esv c #7d5b5c", +"f9u c #7d5b61", +"gKn c #7d5c60", +"eu1 c #7d5d5e", +"fBk c #7d5e63", +"gaz c #7d5f62", +"frc c #7d605f", +"gN# c #7d6160", +"gMH c #7d6161", +"fPz c #7d6166", +"gM7 c #7d6261", +"gMG c #7d6262", +"dTn c #7d6264", +"d52 c #7d6265", +"fSA c #7d6266", +"gNv c #7d6362", +"dFw c #7d6363", +"fMr c #7d6367", +"ctY c #7d6462", +"fYh c #7d6469", +".Db c #7d653d", +"cl8 c #7d655c", +"adh c #7d6561", +"f6Y c #7d6569", +"gP9 c #7d6868", +"fVm c #7d6869", +"er. c #7d686a", +"gPK c #7d6968", +"gPG c #7d6969", +"gQb c #7d696a", +"eC7 c #7d696b", +"bWJ c #7d6a54", +"bUG c #7d6a55", +"gQ0 c #7d6a68", +"bEY c #7d6a6a", +"gdI c #7d6a6e", +"bOb c #7d6b58", +"b6P c #7d6b5a", +"cjk c #7d6b65", +"gq2 c #7d6b69", +"cpR c #7d6c55", +"b8L c #7d6c5b", +"#z5 c #7d6d6b", +"dNc c #7d6d6e", +"c#K c #7d6e6b", +"ba3 c #7d6e6c", +"ae. c #7d6f6c", +"bjL c #7d6f6e", +"dNe c #7d6f6f", +"a4Q c #7d7062", +"aGq c #7d706d", +"buc c #7d716f", +"fSm c #7d7173", +"aDt c #7d726e", +"awC c #7d7276", +"bzc c #7d7467", +"gfw c #7d7477", +"dnc c #7d7676", +"cGO c #7d7771", +"bd# c #7d777f", +"aN9 c #7d7785", +"#JN c #7d787e", +"gFL c #7d797a", +"bcD c #7d7a7a", +"ac5 c #7d7b7a", +"a#2 c #7d7b7b", +"gjC c #7d7b7d", +"b#S c #7d7b80", +"#No c #7d7c79", +"dld c #7d7c7a", +"adk c #7d7c7b", +"#Zu c #7d7c7c", +"a#1 c #7d7c7d", +"#CR c #7d7c7e", +"aXj c #7d7c7f", +"#zb c #7d7c80", +"#VV c #7d7c81", +"#CU c #7d7d7b", +"#Qk c #7d7d7c", +"#J1 c #7d7d7d", +"#VM c #7d7d7e", +"#Nq c #7d7d7f", +"#CT c #7d7d80", +"aiY c #7d7d81", +"a6# c #7d7d82", +"a6b c #7d7e78", +"bw3 c #7d7e79", +"#yQ c #7d7e7a", +"#Gl c #7d7e7b", +"#Q# c #7d7e7c", +"#CS c #7d7e7d", +"#mY c #7d7e7e", +"ac3 c #7d7e7f", +"cdC c #7d7f76", +"a0c c #7d7f78", +"#Qj c #7d7f7a", +"aXi c #7d7f7b", +"#Q. c #7d7f7d", +"#55 c #7d7f7e", +"#iV c #7d7f7f", +"a8Q c #7d7f80", +"ccA c #7d8079", +"a2Z c #7d807a", +"a2Y c #7d807b", +"#2R c #7d8081", +"dvM c #7d8178", +"bU5 c #7d817a", +"gtm c #7d8182", +"fu1 c #7d8184", +"cnS c #7d8278", +"aMG c #7d827b", +"c5g c #7d827d", +"#Yd c #7d827e", +"#fV c #7d8281", +"fS# c #7d8283", +"bHx c #7d837b", +"bMJ c #7d837c", +"a5r c #7d837f", +"#Qh c #7d8380", +"co9 c #7d8381", +"cCT c #7d8383", +"apT c #7d847c", +"br. c #7d847d", +"buz c #7d847f", +"aWx c #7d8480", +"cOh c #7d8484", +"dBy c #7d8578", +"cqC c #7d857b", +"bvC c #7d857d", +"cmc c #7d8584", +"c#S c #7d8587", +"cKT c #7d867b", +"dbu c #7d867d", +"cHD c #7d867e", +"bn# c #7d8681", +"cAY c #7d8684", +"aMi c #7d8685", +"eeS c #7d8687", +"awy c #7d8688", +"cNE c #7d877d", +"akw c #7d877f", +"aeq c #7d8781", +"awk c #7d8783", +"apw c #7d8784", +"bJF c #7d8786", +"bqX c #7d8788", +"a.y c #7d8880", +"ahr c #7d8882", +"ahq c #7d8883", +"aen c #7d8884", +"ge3 c #7d8887", +"#Am c #7d8888", +"bIX c #7d8981", +"#4c c #7d8985", +"#Xk c #7d8986", +"a8H c #7d8987", +"#DX c #7d8989", +"#2r c #7d8a88", +"aqS c #7d8a89", +"dmL c #7d8a8a", +"fcA c #7d8a8b", +"dzX c #7d8b8b", +"#Uh c #7d8c87", +"ay5 c #7d8c8c", +"e8E c #7d8d8d", +"eA7 c #7d8e8e", +"e5m c #7d8f91", +"frp c #7d9092", +"f23 c #7d90b9", +"eFA c #7d9192", +".5P c #7d9193", +"eY3 c #7d9293", +"#Dp c #7db503", +".24 c #7db6db", +"#CC c #7db732", +"feE c #7dd293", +"adb c #7e312f", +"fQo c #7e5053", +"fi9 c #7e525b", +"gd5 c #7e5961", +"g#O c #7e5d62", +"fIN c #7e5f5f", +"fut c #7e605f", +"gf8 c #7e6064", +"gf7 c #7e6065", +"fUF c #7e6160", +"gt5 c #7e6166", +"gMO c #7e6261", +"gOa c #7e6262", +"gM0 c #7e6263", +"eeO c #7e6264", +"gOF c #7e6360", +"fXw c #7e6362", +"gNM c #7e6363", +"dQU c #7e6366", +"gNo c #7e6463", +"f#x c #7e6768", +"f1r c #7e676b", +"cjl c #7e6863", +"ffb c #7e6869", +"gQc c #7e686a", +"fPv c #7e686b", +"gQ. c #7e696a", +"fyC c #7e696b", +"eoD c #7e696c", +"gPL c #7e6a68", +"gPE c #7e6a6a", +"gPF c #7e6a6b", +"eA0 c #7e6a6c", +"bYJ c #7e6b54", +"dND c #7e6b66", +"gQ2 c #7e6b6b", +"caV c #7e6c58", +"f#w c #7e6c69", +"#H# c #7e6c6a", +"#z6 c #7e6c6b", +"eIt c #7e6c6d", +"eG. c #7e6c6e", +"fMd c #7e6c6f", +"chV c #7e6d56", +"c#L c #7e6d6b", +"bjM c #7e6d6d", +"bM6 c #7e6e6b", +"aUY c #7e6e6c", +"aq4 c #7e6e6e", +"dRF c #7e6e6f", +"c.a c #7e6f59", +"bud c #7e6f6e", +"ecc c #7e7067", +"dP4 c #7e7069", +"avh c #7e706d", +"a6Y c #7e716e", +"b.1 c #7e7264", +"fSn c #7e7274", +"cBA c #7e7362", +"gyg c #7e7375", +"gft c #7e7477", +"bks c #7e7564", +"f6H c #7e7578", +"dh0 c #7e7677", +"eke c #7e7878", +"gx7 c #7e7979", +"gx8 c #7e797a", +"d5f c #7e7a6e", +"#ZQ c #7e7b7c", +"adj c #7e7b7e", +"#VW c #7e7b7f", +"#Wc c #7e7b81", +"b#i c #7e7c77", +"aTZ c #7e7c7a", +"#Zr c #7e7c7b", +"agn c #7e7c7d", +"ac1 c #7e7c7e", +"aw8 c #7e7c7f", +"aW8 c #7e7c80", +"fec c #7e7c82", +"a3b c #7e7c84", +"bBb c #7e7d75", +"#JY c #7e7d77", +"aX. c #7e7d79", +"aTY c #7e7d7a", +"ac4 c #7e7d7b", +"#Gn c #7e7d7c", +"#ZI c #7e7d7d", +"aag c #7e7d7e", +"#zi c #7e7d7f", +"aoi c #7e7d80", +"#W# c #7e7d81", +"fty c #7e7d82", +"#M4 c #7e7e76", +"aZ2 c #7e7e7a", +"#Qu c #7e7e7b", +"#Go c #7e7e7c", +"#88 c #7e7e7d", +"#zd c #7e7e7e", +"#2Q c #7e7e7f", +"#zg c #7e7e80", +"fUl c #7e7e82", +"cxO c #7e7f77", +"cvh c #7e7f78", +"bc2 c #7e7f7a", +"#Tf c #7e7f7c", +"#mX c #7e7f7f", +"gdo c #7e7f80", +"gjw c #7e7f82", +"caf c #7e8079", +"c2a c #7e807a", +"#n. c #7e8080", +"bSM c #7e817a", +"a22 c #7e817c", +"cEK c #7e827b", +"fR9 c #7e8285", +"bLB c #7e837c", +"bxQ c #7e837d", +"fO1 c #7e8384", +"cHs c #7e847a", +"dzr c #7e847b", +"aSu c #7e847c", +"bGs c #7e847d", +"aHz c #7e8480", +"#P. c #7e8481", +"awi c #7e8482", +"dbW c #7e8483", +"bA0 c #7e857c", +"aeR c #7e857d", +"bq7 c #7e857e", +"auq c #7e8581", +"adi c #7e8582", +"aoG c #7e8585", +"cLt c #7e8586", +"fR7 c #7e8589", +"cnV c #7e867b", +"b1q c #7e867e", +"cPM c #7e8685", +"buv c #7e8782", +"#A7 c #7e8784", +"cwK c #7e8785", +"cTC c #7e8786", +"bm2 c #7e8789", +"cNG c #7e887f", +"akx c #7e8880", +"bsN c #7e8882", +"ayY c #7e8885", +"apt c #7e8886", +"aAK c #7e8887", +"bXI c #7e8889", +"fuS c #7e888a", +"c8A c #7e8980", +"apA c #7e8983", +"aDD c #7e8984", +"aki c #7e8985", +"bXL c #7e8986", +"#5w c #7e8989", +"#w. c #7e898a", +"ay. c #7e8a84", +"#0R c #7e8a86", +"#8y c #7e8a88", +"bcs c #7e8a8a", +".HT c #7e8a8c", +"#Y2 c #7e8b8a", +"#My c #7e8c8c", +"aBZ c #7e8c8d", +"#D1 c #7e8d8a", +"dmK c #7e8d8d", +"ao# c #7e8d8e", +"g.S c #7e8e8d", +"#J. c #7e8e8e", +"e5p c #7e8f91", +"eOL c #7e9090", +"fx8 c #7e9091", +"eH4 c #7e9092", +"e5l c #7e9192", +"f#C c #7e9195", +"##3 c #7e9293", +"foq c #7e9393", +"eTd c #7e9394", +".QT c #7e9794", +".2b c #7e97b1", +"boC c #7ea47d", +".22 c #7ebee0", +"fbU c #7ec9aa", +"d0R c #7ecd7c", +"cl1 c #7ed290", +"bfT c #7f2ede", +"fpr c #7f4f55", +"fJ5 c #7f505a", +"fMS c #7f525d", +"fNi c #7f5457", +"fao c #7f545d", +"f4L c #7f565e", +"fsm c #7f575f", +"f7g c #7f5960", +"enn c #7f5f62", +"gbU c #7f5f64", +"fyS c #7f5f65", +"fDR c #7f6065", +"gmj c #7f6166", +"exH c #7f625b", +"gOk c #7f6263", +"d7a c #7f6266", +"ed2 c #7f635f", +"er# c #7f6362", +"gMJ c #7f6363", +"gOK c #7f6364", +"d3E c #7f6367", +"gOG c #7f6462", +"gOI c #7f6463", +"gNu c #7f6464", +"fGJ c #7f6467", +"f6Z c #7f6469", +"gNx c #7f6564", +"f4m c #7f6569", +"f4n c #7f656a", +"fBd c #7f666a", +"gNy c #7f6764", +"dR5 c #7f6766", +"f1s c #7f676b", +"bLh c #7f6868", +"gQg c #7f686a", +"gP5 c #7f696a", +"gQ1 c #7f696b", +".LH c #7f6a4a", +"#Ha c #7f6a69", +"gQa c #7f6a6b", +"gQ# c #7f6a6c", +"f8t c #7f6b69", +"#Rd c #7f6b6a", +"cc# c #7f6b6b", +"gQy c #7f6b6c", +"cdc c #7f6c53", +"#86 c #7f6c69", +"#Rc c #7f6c6a", +"csg c #7f6d58", +"eOf c #7f6d63", +"b5Q c #7f6d6c", +"frY c #7f6d6f", +"b8K c #7f6e5b", +"eAr c #7f6e64", +"ae# c #7f6f6c", +"aRU c #7f6f6d", +"ahb c #7f706d", +"avi c #7f706e", +"cxs c #7f7161", +"aJi c #7f716c", +"aj4 c #7f716e", +"gtA c #7f7174", +"chx c #7f725d", +"d0# c #7f726a", +"aiQ c #7f7275", +"b6n c #7f7360", +"fPg c #7f7375", +"a5Z c #7f7489", +"bFR c #7f756a", +"emK c #7f7577", +"df6 c #7f7578", +"art c #7f7671", +"f36 c #7f7679", +"bYa c #7f7765", +"f6E c #7f7779", +"#Ng c #7f787d", +"dsW c #7f7b7a", +"#Np c #7f7b7b", +"#CQ c #7f7b7e", +"aN5 c #7f7b7f", +"aUa c #7f7b80", +"agm c #7f7c7b", +"#ZG c #7f7c7d", +"#J0 c #7f7c7e", +"#9. c #7f7c7f", +"b.z c #7f7d72", +"bBe c #7f7d76", +"cOU c #7f7d77", +"a3e c #7f7d7a", +"#Te c #7f7d7d", +"#Gk c #7f7d7e", +"f6A c #7f7d80", +"aXh c #7f7e7c", +"#CV c #7f7e7d", +"#zf c #7f7e7e", +"a2K c #7f7e7f", +"e7A c #7f7e84", +"fqo c #7f7e86", +"dvG c #7f7f75", +"#zh c #7f7f7c", +"afa c #7f7f7d", +"#ze c #7f7f7e", +"#SW c #7f7f7f", +"f6x c #7f7f81", +"cqi c #7f8078", +"a20 c #7f807a", +"azK c #7f8082", +"#JC c #7f8176", +"a21 c #7f817a", +"grf c #7f8183", +"dDj c #7f8277", +"dvI c #7f8278", +"c2# c #7f827b", +"#gr c #7f8282", +"ct4 c #7f8284", +"bW4 c #7f837c", +"aNR c #7f837e", +"cY8 c #7f8387", +"dvL c #7f847a", +"cA7 c #7f847c", +"bNp c #7f847d", +"daF c #7f847f", +"gHc c #7f8481", +"cmk c #7f8482", +"cR# c #7f8484", +"fio c #7f8487", +"aMF c #7f857d", +"c28 c #7f857e", +"#LI c #7f8581", +"aEB c #7f8582", +"aBI c #7f8583", +"dDL c #7f8588", +"csW c #7f867b", +"c27 c #7f867d", +"apW c #7f867e", +"bph c #7f867f", +"cTD c #7f8684", +"cmj c #7f8685", +"d.l c #7f877e", +"aPs c #7f877f", +"bHw c #7f8782", +"cSi c #7f8786", +"cQ9 c #7f8787", +"bfC c #7f8880", +"bsO c #7f8881", +"btP c #7f8883", +"ceJ c #7f8884", +"a7f c #7f8886", +"ax6 c #7f8887", +"d.V c #7f8888", +"atR c #7f888a", +"cx8 c #7f8980", +"abF c #7f8981", +"bwJ c #7f8984", +"cPO c #7f8987", +"ax5 c #7f8988", +"bRr c #7f898a", +"eZc c #7f898c", +"#4m c #7f8a82", +"am1 c #7f8a84", +"bJI c #7f8a85", +"#0S c #7f8a86", +"cjr c #7f8a89", +"c#R c #7f8a8a", +"ge5 c #7f8a8b", +"a.j c #7f8b87", +"bAb c #7f8b88", +"#Rr c #7f8b89", +"a#F c #7f8b8a", +"#kT c #7f8b8b", +"#4k c #7f8c86", +"#Hk c #7f8c8a", +"aTF c #7f8c8c", +"cbI c #7f8d8b", +".HL c #7f8d8e", +"#Rz c #7f8e89", +"aqT c #7f8e8e", +"e5r c #7f8f8f", +"eON c #7f9090", +"eQ0 c #7f9191", +"eMv c #7f9394", +"e8v c #7f9395", +"eY1 c #7f9495", +"d5F c #7fc585", +"f.1 c #7fde9a", +"#y1 c #7ff60b", +"fV5 c #804e57", +"fsz c #80505a", +"fPZ c #80535d", +"f1Q c #80565e", +"fwv c #805858", +"euX c #805e60", +"gc2 c #805f60", +"gdY c #806065", +"fGK c #806066", +"fBj c #806166", +"gP# c #806363", +"fDQ c #806367", +"gMS c #806462", +"eYV c #806463", +"gM4 c #806464", +"gOH c #806465", +"gOj c #806563", +"gMZ c #806564", +"gN8 c #806565", +"ffc c #806567", +"f60 c #80656a", +"gNN c #806664", +"fVp c #80666a", +"fco c #80686a", +"bPa c #806969", +"bVx c #80696a", +"gQl c #806a6b", +".MN c #806b4c", +"cgZ c #806b6b", +"gQT c #806b6c", +"gQ3 c #806b6d", +"bhJ c #806c4d", +"cnc c #806c57", +"cel c #806c6c", +"gPS c #806c6d", +"gQ4 c #806c6e", +"cgY c #806d6b", +"gPT c #806d6d", +"bqM c #806d6e", +"dUR c #806e67", +"eCv c #806f65", +"#DH c #806f6d", +"bqL c #806f6f", +"aa6 c #80706e", +"dI1 c #80716b", +"aM. c #80716d", +"a6Z c #80716f", +"ce9 c #80725e", +"amF c #80726e", +"axW c #80726f", +"#22 c #807275", +"alu c #807278", +"czt c #807461", +"gnD c #807477", +"g#j c #80777a", +"bJ4 c #80786b", +"f8Z c #80787a", +"euc c #807979", +"#Gj c #807980", +"#P1 c #807a6d", +"aai c #807a7c", +"aok c #807a7f", +"aN6 c #807b79", +"adl c #807b7c", +"#26 c #807b7d", +"aXk c #807b7f", +"aT1 c #807b80", +"bBI c #807c77", +"#Wa c #807c7a", +"#9f c #807c7b", +"aT2 c #807c7c", +"aQ9 c #807c7d", +"#54 c #807c7e", +"bFy c #807d71", +"#W. c #807d7d", +"#24 c #807d7e", +"aX# c #807d7f", +"#ZF c #807d80", +"gny c #807d81", +"#JF c #807d8a", +"bfZ c #807d94", +"dE1 c #807e74", +"bLI c #807e75", +"af5 c #807e7b", +"dvF c #807f75", +"aj9 c #807f80", +"csI c #808079", +"bER c #80807d", +".v1 c #808080", +"fbn c #808084", +"cVS c #808179", +"buO c #80817c", +"#mW c #808181", +"bG1 c #808184", +"dvJ c #80827a", +"cw3 c #80827c", +"#F7 c #80827e", +"#eR c #808282", +"bEw c #808284", +"aru c #808286", +"ceV c #80837c", +"#M8 c #808380", +"#87 c #808383", +"#l1 c #808484", +"crB c #808485", +"#F9 c #80857b", +"bZ. c #80857e", +"br0 c #80857f", +"aZq c #808581", +"awg c #808583", +"fLS c #808586", +"cLu c #808589", +"aZt c #808682", +"c3J c #808683", +"cy4 c #808684", +"ayP c #808685", +"cSk c #808686", +"d.k c #80877d", +"bKU c #80877e", +"asM c #80877f", +"boe c #808780", +"aWw c #808783", +"cjA c #808786", +"dFC c #80878a", +"#F6 c #808875", +"cRQ c #80887c", +"cnX c #80887d", +"bq5 c #808883", +"#EG c #808886", +"bt2 c #80888a", +"bGB c #808981", +"bpc c #808984", +"ceG c #808988", +"bCW c #80898a", +"cCe c #808a81", +"avx c #808a82", +"aDB c #808a89", +"doq c #808a8a", +"fUS c #808a8b", +"cJe c #808b81", +"bKY c #808b82", +"#7l c #808b83", +"bFd c #808b85", +"amX c #808b87", +"bLu c #808b88", +"#w# c #808b8a", +"#An c #808b8b", +"aHQ c #808b8c", +"ga0 c #808b8d", +"bEj c #808c88", +"#8x c #808c8a", +"b#G c #808c8c", +"#4l c #808d86", +"#Xn c #808d89", +"#Ub c #808d8b", +"ge4 c #808d8d", +"eTj c #808e8f", +"#Hy c #808f8b", +"#yi c #809090", +"e5q c #809191", +"eMB c #809292", +"eA4 c #809294", +"cAD c #809392", +"e2b c #809495", +"ejP c #809596", +".P2 c #809896", +".Z0 c #80a7cf", +"fkF c #80b6c6", +"clJ c #80e893", +"b#4 c #8109ed", +"fzw c #814f55", +"fV3 c #814f58", +"fHd c #815058", +"fml c #815059", +"fEm c #81545b", +"e6n c #81545c", +"fo9 c #81555e", +"fYK c #815760", +"fdb c #815860", +"fC# c #815a5b", +"f5g c #815e60", +"esB c #815e61", +"fFV c #815f60", +"gaV c #816061", +"fyR c #816166", +"eOy c #816262", +"f7Y c #816263", +"enm c #816265", +"fGO c #816267", +"eC8 c #816363", +"fJI c #816367", +"gOb c #816464", +"fJE c #816468", +"gOl c #816564", +"gMX c #816565", +"gOQ c #816665", +"fPA c #816669", +"f1u c #81666b", +"gNz c #816765", +"gN. c #816766", +"gP. c #816767", +"gka c #81676b", +"f1t c #81676d", +"gNG c #816867", +"gpT c #81686b", +"f4o c #81686c", +"fJD c #81686d", +"goQ c #81696c", +"gn0 c #81696d", +"bEZ c #816a6b", +"gQd c #816a6c", +"esX c #816b63", +"dXk c #816b67", +"fcn c #816b6a", +"gPP c #816c6d", +"cdd c #816d57", +"b9u c #816e6c", +"bCO c #816e6d", +"glU c #816e71", +"bMi c #816f59", +"bKu c #816f5e", +"bdV c #816f6e", +"#6U c #816f6f", +"bsw c #816f71", +"dSi c #817069", +"aa7 c #81706e", +"#6T c #817070", +"eKJ c #817071", +"aO1 c #81716e", +"aj5 c #81716f", +"eqz c #817267", +"#JM c #817483", +"fX0 c #817577", +"elv c #81766a", +"#V8 c #817677", +"gpq c #81767b", +"bpB c #817767", +"ago c #81777a", +"bFS c #81786d", +"#3c c #81787a", +"#Ql c #817881", +"aw9 c #817976", +"erM c #817979", +"arw c #81797a", +"f07 c #81797c", +"#JK c #817982", +"bV9 c #817a69", +"a4z c #817a6c", +"bJ0 c #817a6d", +"cE3 c #817a70", +"#Qg c #817a79", +"#Wb c #817a7b", +"at4 c #817a7c", +"aN4 c #817a7e", +"#Wi c #817a80", +"bex c #817b6e", +"#ST c #817b7b", +"aZ1 c #817b7d", +"bHS c #817c71", +"dbf c #817c77", +"agl c #817c79", +"aN3 c #817c7d", +"aZZ c #817c81", +"#Zk c #817d78", +"arv c #817d7b", +"a9g c #817d7d", +"bbw c #817e73", +"a24 c #817e7a", +"aN0 c #817e7c", +"#SX c #817e7f", +"dQi c #817f73", +"aZ3 c #817f76", +"dN6 c #818074", +"alW c #818085", +"a23 c #81817a", +"b7z c #818180", +"#Jq c #818181", +"fAO c #818183", +"dmc c #81827a", +"cEU c #81827c", +"bG0 c #818280", +"#m6 c #818282", +"#n# c #818283", +"dBr c #818379", +"a9f c #81837c", +"#hM c #818383", +"ejs c #818387", +"bc3 c #81846c", +"b8. c #81847d", +"#Co c #818480", +"gFt c #818481", +"#lz c #818484", +"cwC c #818486", +"b5i c #81857e", +"fOZ c #818587", +"fGf c #818588", +"cMU c #818589", +"bTR c #81867f", +"#LF c #818681", +"#15 c #818682", +"#gk c #818686", +"dBX c #81868a", +"cA5 c #818781", +"c5f c #818782", +"aKk c #818783", +"#Id c #818784", +"atA c #818785", +"cGl c #818786", +"fOd c #818794", +"cy9 c #81887f", +"aeT c #818880", +"boi c #818881", +"cjB c #818885", +"crH c #818887", +"cMT c #818889", +"cS7 c #81897e", +"cFO c #818980", +"abK c #818981", +"bq6 c #818982", +"cGm c #818988", +"bum c #81898b", +"aYp c #818a84", +"bpd c #818a85", +"cy2 c #818a87", +"ceH c #818a88", +"crG c #818a89", +"d.U c #818a8a", +"cev c #818a8c", +"c## c #818b82", +"#7p c #818b83", +"bd6 c #818b89", +"aAI c #818b8a", +"dsr c #818b8c", +"aB2 c #818b8f", +"#XF c #818c84", +"aAR c #818c86", +"bhc c #818c88", +"#5v c #818c8a", +"djb c #818c8c", +"gc7 c #818c8e", +"#04 c #818d85", +"#Up c #818d86", +"bEk c #818d88", +"b15 c #818d89", +"#2q c #818d8a", +"#Uc c #818d8b", +"#Y3 c #818d8c", +"gaZ c #818d8e", +"#03 c #818e86", +"#RC c #818e87", +"#RA c #818e88", +"#Y1 c #818e8d", +"atM c #818e8f", +"f6d c #818e90", +"atL c #818f8f", +"aBX c #818f90", +"#Rw c #81908b", +"#D3 c #81908d", +"#I9 c #819090", +"eV4 c #819091", +"dJ5 c #819191", +"#Fx c #819291", +"eMA c #819393", +"e8y c #819395", +"fXz c #819494", +"eA5 c #819496", +"eMw c #819596", +"eQX c #819697", +".Pd c #819795", +".QO c #819999", +"#GV c #81a901", +".37 c #81aed3", +"#Kw c #81b204", +"clP c #81da8a", +"agh c #82080c", +"#NC c #8209e7", +"#6i c #820fe4", +"ag5 c #822e05", +"bay c #8243ce", +"fMZ c #824f5b", +"fsO c #825055", +"fJ7 c #82505c", +"fv7 c #82515c", +"fgj c #825257", +"a84 c #8252ab", +"fwb c #82545a", +"fMT c #82545e", +"fTn c #82555b", +"fl9 c #82555f", +"fJ3 c #825760", +"e6m c #82585f", +"f1P c #825961", +"exp c #825f61", +"ge0 c #826162", +"gie c #826167", +"env c #826261", +"g#K c #826267", +"g#N c #826368", +"ed1 c #826462", +"eg. c #826464", +"eoE c #826465", +"gdX c #826468", +"ef9 c #826565", +"fMs c #826568", +"ggM c #826569", +"gMK c #826666", +"gNt c #826766", +"gNa c #826767", +"gOp c #826768", +"fYl c #82676b", +"fYi c #82676c", +"gOS c #826867", +"gN7 c #826868", +"fSB c #82686b", +"fYk c #82686c", +"gNF c #826967", +"gNA c #826968", +"gsz c #82696c", +"#6K c #826c06", +"bM7 c #826c6b", +"gPO c #826d6f", +"cdb c #826e54", +"bkL c #826e55", +"#DI c #826e6d", +"gP6 c #826e6e", +"bsx c #826e6f", +"fSr c #826e70", +"b7M c #826f6e", +"bgW c #826f6f", +"f6R c #826f73", +"gpx c #826f74", +"cki c #82705a", +"b6O c #82705d", +"atZ c #827073", +"b0Y c #827159", +"csi c #82715b", +"dXs c #82716a", +"dZ4 c #82726b", +"amG c #82726f", +"a31 c #827270", +"gRa c #827271", +"dPn c #827272", +"c.b c #82735e", +"brL c #827362", +"dLo c #82746c", +"fyy c #827474", +"#J2 c #82747d", +".my c #82755f", +".mE c #827662", +"#Nf c #82777f", +"#9# c #827780", +"aus c #827877", +"aoH c #82787a", +"ei0 c #82796d", +"emI c #827a7a", +"#SU c #827a7c", +"#JX c #827a7d", +"#56 c #827a7e", +"alB c #827a80", +"aIx c #827b75", +"alz c #827b7d", +"b#V c #827b81", +"#2O c #827c79", +"c4q c #827d79", +"aN1 c #827d7c", +"aR. c #827e76", +"aUb c #827e77", +"aXl c #827e78", +"a0b c #827e7b", +"eAT c #827e7c", +"aNS c #827f7d", +"aNZ c #827f7e", +"cSQ c #828079", +"aae c #82807e", +"aZ5 c #828080", +"fXQ c #828083", +"gGx c #828084", +"f0f c #828086", +"#MX c #828172", +"dXM c #828174", +"bcb c #82817c", +"#V9 c #82817f", +"#VZ c #828182", +"ftC c #828187", +"f3w c #828188", +"gGb c #828281", +"eji c #828282", +"gdm c #828283", +"bEz c #828284", +"#MW c #828288", +"cqj c #82837a", +"cib c #82837d", +"by5 c #82837e", +"bTd c #828380", +"bEM c #828387", +"drN c #828479", +"dvK c #82847c", +"b1j c #82847e", +"#S5 c #828480", +"b7w c #828482", +"#mV c #828484", +"cHm c #82857c", +"cz. c #82857e", +"#yM c #828580", +"c6x c #828681", +"#nK c #828685", +"#jz c #828686", +"fUV c #82868a", +"cO4 c #82877d", +"bIO c #82877f", +"bTS c #828780", +"aZu c #828783", +"cEA c #828788", +"dsj c #82878a", +"cnP c #82887e", +"bW7 c #828880", +"cua c #828881", +"bln c #828883", +"#R0 c #828884", +"aHx c #828885", +"#Mc c #828886", +"anh c #828981", +"bxS c #828982", +"byP c #828983", +"bwO c #828984", +"cJQ c #828988", +"c4F c #828a7f", +"bfJ c #828a80", +"bpe c #828a84", +"cwL c #828a89", +"dV3 c #828a8b", +"abJ c #828b83", +"bwL c #828b86", +"cy3 c #828b88", +"aAJ c #828b8a", +"c#Q c #828b8c", +"c88 c #828b8d", +"c1y c #828c83", +"akv c #828c84", +"bvN c #828c87", +"avq c #828c8b", +"bZU c #828c8c", +"bTD c #828c8d", +"alp c #828c8e", +"#4n c #828d85", +"apz c #828d87", +"aho c #828d89", +"asp c #828d8c", +"bCV c #828d8e", +"cJf c #828e85", +"#XC c #828e86", +"#4b c #828e8a", +"bCb c #828e8b", +"#Ot c #828e8c", +"aZG c #828e8e", +"gaY c #828e8f", +"#Ut c #828f88", +"#wa c #828f8c", +"bvW c #828f8e", +"gh# c #828f8f", +"#OA c #82908b", +"#I8 c #829090", +"aBY c #829091", +"#Hx c #82918d", +"#Fv c #829291", +"e8D c #829292", +"f0G c #829392", +"e8C c #829395", +"eH6 c #829494", +"eY5 c #829496", +"fcv c #829497", +"fro c #829596", +"e8u c #82959a", +"#zO c #829600", +"eOH c #829697", +"e5i c #829698", +".RN c #829b98", +"#Q1 c #82ab06", +"aoX c #830000", +"bgD c #8316aa", +"ad1 c #832803", +"fmb c #83535d", +"fHn c #83565b", +"f7m c #835660", +"fS7 c #835760", +"fJ4 c #835861", +"fBE c #835a61", +"ggy c #835a62", +"eGP c #835c5f", +"fiW c #835d64", +"ez0 c #835e61", +"gng c #836058", +"gvc c #836061", +"eMn c #836263", +"eJn c #83635e", +"ef7 c #836366", +"gbS c #836469", +"edV c #836565", +"f9p c #83656a", +".Gt c #836638", +"gOi c #836766", +"gM3 c #836767", +"gMQ c #836866", +"gMN c #836867", +"gOJ c #836868", +"fYj c #83686d", +"gND c #836968", +"gPc c #836969", +"gNE c #836a68", +"gPe c #836a6a", +"dR6 c #836b68", +"f9d c #836b6e", +"gQf c #836e70", +"#TY c #836f6d", +"gQV c #836f6f", +"gQ5 c #836f70", +"fMl c #836f71", +"bAE c #83706f", +"fA4 c #837072", +"grs c #837074", +"eAo c #837167", +"gR# c #83716c", +"aO2 c #83716f", +"#90 c #837170", +"eAs c #837268", +"gdH c #837275", +"exV c #837369", +"dNQ c #83756d", +"een c #83766d", +"#Nr c #837678", +"awH c #83777b", +"b4i c #837865", +"axd c #837874", +"gbs c #83797c", +"aFF c #837a79", +"#3b c #837a7a", +"epg c #837a7b", +"ghD c #837a7e", +"#za c #837b78", +"aOd c #837b79", +"bFE c #837c6f", +"d5e c #837c70", +"#8R c #837c79", +"aU# c #837c7b", +"aN2 c #837c7c", +"a3c c #837d79", +"do3 c #837d7d", +"aT3 c #837d7f", +"a6a c #837e7b", +"aNT c #837e7e", +"aNU c #837e80", +"aNV c #837e81", +"a0e c #837f78", +"dU8 c #838075", +"dE0 c #838077", +"a6c c #838078", +"aXa c #83807f", +"dSF c #838175", +"aZ4 c #838176", +"af# c #838381", +".uF c #838382", +"amM c #838383", +"frH c #838385", +"cz7 c #83847c", +"c.Y c #83847e", +"c7h c #83857c", +"#kv c #838585", +"bW3 c #83867f", +"#nY c #838685", +"#m5 c #838686", +"#l4 c #838786", +"gvv c #838788", +"cXP c #83878b", +"fZ9 c #838794", +"aPx c #838881", +"bvz c #838882", +"blf c #838883", +"a#n c #838884", +"gxZ c #838887", +"cTz c #838889", +"cvr c #83897f", +"bGr c #838982", +"br1 c #838983", +"#O7 c #838985", +"#If c #838986", +"co8 c #838987", +"cSo c #838988", +"cOj c #83898b", +"dDl c #838a7d", +"apV c #838a82", +"bOI c #838a83", +"bfD c #838a84", +"bfg c #838a86", +"#EH c #838a87", +"c7Q c #838a8a", +"cnW c #838b7f", +"cqz c #838b80", +"c7m c #838b82", +"b7h c #838b83", +"cjz c #838b8a", +"bsC c #838b8c", +"#v8 c #838b8d", +"dp1 c #838c82", +"bm8 c #838c87", +"cMQ c #838c8b", +"dk0 c #838c8c", +"dqr c #838c8d", +"c89 c #838c8e", +"bfK c #838d7e", +"aky c #838d85", +"aAT c #838d86", +"bJG c #838d8b", +"b.b c #838d8c", +"b7X c #838d8d", +"bNe c #838d8e", +"ddq c #838d8f", +"ay9 c #838d90", +"d.m c #838e84", +"dbv c #838e85", +"#4o c #838e86", +"apB c #838e88", +"bLv c #838e89", +"bFc c #838e8a", +"abe c #838e8b", +"aAH c #838e8d", +"bqW c #838e8e", +"gc6 c #838e90", +"c0f c #838f85", +"bbf c #838f89", +"#Xm c #838f8c", +"#Rq c #838f8d", +"bAc c #838f8e", +"bsD c #838f8f", +"dkU c #838f90", +"ge6 c #838f92", +"#Us c #839089", +"aTC c #83908f", +"#Mx c #839090", +"dkV c #839091", +"cdU c #83918f", +"#PH c #839191", +"eQ2 c #839192", +"#Oy c #83928d", +"#Hu c #83928e", +"fot c #839293", +"#Fw c #839392", +"dOQ c #839393", +"fie c #839394", +"f#I c #839496", +"eH5 c #839594", +"dWc c #839595", +"e2a c #839798", +"e2# c #839799", +"e8t c #83999a", +"fqL c #839ad5", +".PX c #839b9b", +"#Dq c #839c01", +"fnP c #83a1d3", +"#NY c #83ba03", +"#Do c #83cf05", +"aRK c #84223a", +"#3L c #844301", +"fK. c #84535b", +"fEo c #84535c", +"faC c #84555e", +"e6h c #84585f", +"fYJ c #845a62", +"#Q2 c #845d00", +"fvR c #845f65", +"f7f c #846067", +"glh c #84615a", +"eLG c #84625d", +"gBD c #846262", +"gzN c #846263", +"gg7 c #846264", +"enu c #846364", +"gbT c #846367", +"f9q c #846469", +"fBi c #84656a", +"f5o c #846668", +"fVr c #84666b", +"eBE c #84676c", +"gPb c #846866", +"gOc c #846867", +"gOE c #846868", +"gN9 c #846869", +"fDP c #84686d", +"ebZ c #846965", +"gMR c #846967", +"gM8 c #846968", +"gNb c #846969", +"dUz c #84696b", +"gNp c #846a69", +"gNB c #846a6a", +"gPd c #846b6a", +"d2n c #846c68", +"bXt c #846d6d", +"#TZ c #846e6d", +"bCP c #846e6e", +"e0T c #846f67", +"gR. c #846f6f", +"gQm c #846f70", +"bOa c #847059", +"b4Q c #84705d", +"gQt c #847070", +"#91 c #847071", +"bcK c #847086", +"gQ9 c #847171", +"bQe c #84725d", +"b8J c #847360", +"btn c #847366", +"eCt c #847369", +"#Gp c #84737f", +"bb1 c #847464", +"bnV c #847565", +"#ZR c #84757b", +"agu c #847678", +"czI c #847766", +"#ZJ c #84777d", +"grp c #84787a", +"#Td c #84787e", +"bh4 c #84796a", +"#S8 c #847980", +"#JL c #847986", +"aOe c #847a77", +"epf c #847a7b", +"aq9 c #847a7f", +"aHX c #847a80", +"aNY c #847c7f", +"be6 c #847d74", +"aOf c #847d75", +"a1y c #847e71", +"dcG c #847e79", +"dqY c #847e7f", +"a3f c #847f78", +"b#g c #847f7c", +"bzH c #84807e", +"cVK c #84817b", +"#Nc c #848282", +"#Qa c #848283", +"aGv c #848384", +"f8Q c #848385", +"f0q c #84838b", +"c2X c #84847c", +"alD c #848483", +"cnD c #84857d", +"c.1 c #84857f", +"gGu c #848584", +"bG8 c #848587", +"cbj c #84867e", +"cB3 c #84877e", +"bW1 c #848780", +"#d9 c #848787", +"bf4 c #84888c", +"bV0 c #848982", +"#f2 c #848989", +"fO0 c #84898a", +"dDk c #848a7e", +"bpg c #848a83", +"#LG c #848a85", +"aHA c #848a86", +"atz c #848a88", +"cx1 c #848b80", +"ahN c #848b83", +"bof c #848b84", +"bpf c #848b85", +"dfr c #848b89", +"cUm c #848c81", +"c50 c #848c83", +"d1d c #848c8d", +"bqV c #848c8e", +"d55 c #848c8f", +"cYC c #848d84", +"a.F c #848d85", +"bs. c #848d88", +"ccj c #848d8b", +"c#X c #848d8c", +"#0N c #848d8d", +"cZc c #848d8f", +"b7U c #848d90", +"c7n c #848e84", +"cJd c #848e85", +"asG c #848e86", +"bhe c #848e88", +"bRt c #848e8b", +"#Xi c #848e8c", +"#Xh c #848e8d", +"aDA c #848e8e", +"#DY c #848e8f", +"fDh c #848e90", +"c8B c #848f86", +"#XE c #848f87", +"b.e c #848f89", +"a7h c #848f8a", +"bim c #848f8b", +"aGB c #848f8d", +"aDz c #848f8e", +"bE8 c #848f8f", +"gc8 c #848f91", +"fFq c #848fa1", +"#XD c #849088", +"bKZ c #849089", +"a#E c #84908d", +"#Ao c #84908e", +"bct c #849090", +"#mk c #84918f", +"#Uu c #84928b", +"#La c #84928c", +"#Mw c #849292", +"aqX c #849293", +"#K7 c #84938d", +"#K9 c #84938f", +"aqW c #849394", +"f#J c #849494", +"cAI c #849595", +"eQZ c #849597", +"eKm c #849697", +"f#E c #849698", +"fIl c #8497b7", +"##A c #849897", +"eKe c #849899", +"e5g c #84999a", +"f.3 c #84ccaf", +"aga c #854948", +"fsI c #855159", +"fzi c #85515d", +"fwi c #855258", +"fV1 c #85525b", +"fsA c #85545f", +"fY3 c #85555d", +"fEw c #85575d", +"fH# c #855761", +"eUs c #85595a", +"fKp c #855b5f", +".zk c #855d1d", +"fp. c #855e65", +"go9 c #85605d", +"f9t c #856168", +"gJD c #856264", +"f7c c #856268", +"gi9 c #856361", +"gA1 c #856364", +"g#L c #856569", +"g#M c #85656a", +"enw c #856665", +"fVs c #85666b", +"edU c #856767", +"giQ c #85676b", +"gOD c #856868", +"gOT c #856969", +"gPf c #85696a", +"gML c #856a69", +"gMY c #856a6a", +"gOB c #856b69", +"gNC c #856b6a", +"gOe c #856b6b", +"fGF c #856b6f", +"cfs c #856c50", +"gOq c #856c6e", +"gNO c #856d6b", +"gQr c #857073", +"dZZ c #85716c", +"gQ6 c #857170", +"gQ7 c #857171", +"gQ8 c #857172", +"bhW c #85725a", +".vJ c #857354", +"ckC c #85735f", +"eEU c #857369", +"c.B c #85745f", +"dxa c #857474", +"fJp c #857477", +"#CW c #857480", +"csl c #857662", +"dNd c #857677", +"gdG c #857678", +"#Qv c #85767a", +"ajf c #85767b", +"af7 c #857776", +"#9g c #857779", +"alX c #85777a", +"aNL c #857780", +"a4O c #857866", +"alV c #857875", +"bFO c #85796c", +"aIy c #857b79", +"dQa c #857c73", +"agj c #857c78", +"gbo c #857d80", +"a1B c #857e72", +"bb8 c #857e73", +"bb9 c #857e75", +"aNW c #857e81", +"a1z c #857f72", +"bew c #857f74", +"dev c #857f7a", +"ejA c #85807b", +"af6 c #85807f", +"a9h c #85817b", +"gE4 c #858281", +"gGi c #858283", +"eCU c #858380", +"fLX c #858386", +"cCN c #858484", +"gfp c #858487", +"fnr c #85848c", +"bae c #85857b", +"c1r c #85857d", +"amN c #858585", +"dE8 c #85867b", +"c.Z c #858680", +"bf3 c #858787", +"f0Y c #858788", +"dxw c #85887f", +"bY6 c #858881", +"#1I c #858885", +"#m4 c #858888", +"bf5 c #858889", +"cFF c #858980", +"cwP c #858982", +"#hG c #858988", +"#mO c #858989", +"fDm c #85898c", +"fUe c #858999", +"b59 c #858a83", +"btE c #858a84", +"c6w c #858a85", +"a2i c #858a86", +"c5d c #858a87", +"cmm c #858a88", +"#d4 c #858a89", +"fS. c #858a8b", +"csR c #858b81", +"a8l c #858b86", +"aiq c #858b87", +"c5e c #858b88", +"cmn c #858b8a", +"cId c #858b8b", +"dzR c #858b8f", +"ane c #858c84", +"bvF c #858c85", +"cjE c #858c88", +"aqH c #858c89", +"c14 c #858c8a", +"c4H c #858d85", +"bwM c #858d88", +"djf c #858d8c", +"bo6 c #858d8e", +"c6t c #858d8f", +"bwz c #858d90", +"c51 c #858e84", +"aPr c #858e86", +"bwK c #858e89", +"aEK c #858e8b", +"cTB c #858e8d", +"#Hj c #858e8e", +"#DV c #858e8f", +"bE9 c #858e90", +"cbz c #858f86", +"a.D c #858f87", +"aAS c #858f89", +"byN c #858f8a", +"bHr c #858f8e", +"bwB c #858f90", +"#06 c #859088", +"bHt c #85908a", +"bd7 c #85908b", +"bil c #85908c", +"aqR c #85908e", +"asq c #85908f", +"b3R c #859091", +"ge7 c #859092", +"dkA c #859186", +"dmo c #859188", +"#RB c #85918a", +"ael c #85918c", +"#0Q c #85918d", +"#Xj c #85918e", +"#8w c #85918f", +"bwA c #859191", +"fG# c #859192", +"f3K c #859193", +"#RE c #85928b", +"c#h c #859291", +"dmJ c #859293", +"coc c #859390", +"#Vw c #859393", +"ffq c #859394", +"#Hz c #85948e", +"#Hw c #85948f", +"f0H c #859494", +"#BZ c #859594", +"#B0 c #859595", +"fcx c #859798", +"flk c #859799", +"eFG c #859898", +"e8x c #85989a", +"eHY c #85999a", +"e5h c #85999c", +"#9Q c #859b09", +"gAR c #859bbb", +".Tq c #859e9b", +"dVG c #85b386", +"fbR c #85d39a", +"e7U c #85dda2", +"fk0 c #85e6fc", +"aXW c #860e50", +"a6K c #861373", +"agf c #861a18", +"a0O c #861c58", +"age c #862223", +"agb c #863f3e", +"ag# c #865150", +"fpw c #86565a", +"faH c #86575c", +"e6o c #865760", +"fpf c #865761", +"fJ0 c #865a62", +"ajd c #865b58", +"f2h c #865b63", +"fG5 c #865d64", +"eRP c #865d65", +"gb2 c #865f66", +"f9Y c #866164", +"euZ c #866465", +"enl c #866567", +"eG3 c #866661", +"eip c #866668", +"edS c #866669", +"fMy c #86676b", +"fMt c #86676c", +"ebS c #866868", +"fPB c #86686c", +"ebU c #866968", +"gOC c #866969", +"gOm c #86696a", +"fMv c #86696b", +"fVq c #86696d", +"gOh c #866a6a", +"fSC c #866a6e", +"f1v c #866a6f", +"#NZ c #866b00", +"gPg c #866b69", +"gMM c #866b6a", +"gOg c #866b6b", +"gPk c #866c6a", +"gM9 c #866c6b", +"gOd c #866c6c", +"af8 c #866f6c", +"f61 c #867072", +"gtU c #867073", +"gQn c #867172", +"gQe c #867173", +"d41 c #86726d", +"gQs c #867272", +"f4i c #867274", +"gfP c #867276", +"eJA c #86736a", +"dGI c #867371", +"beX c #86745f", +"#zj c #867481", +"aTV c #867585", +"ccO c #867662", +"#6b c #86787b", +"bb5 c #867969", +"aN8 c #867971", +"dty c #867978", +"bda c #86797a", +"cpw c #867a66", +"b0p c #867b68", +"b0o c #867b69", +"dkb c #867b75", +"aNX c #867b80", +"bb7 c #867c6f", +"#Ju c #867d67", +"ajl c #867e81", +"dNY c #867f75", +"bc. c #867f79", +"a7w c #868174", +"e.b c #868175", +"glA c #868386", +"gFG c #86847e", +"f02 c #868487", +"cNj c #868580", +"fXf c #86858a", +"ejw c #868682", +"gFA c #868683", +"bG6 c #868684", +"aGx c #868686", +"bf6 c #868687", +"fRt c #86868a", +"dE7 c #86877d", +"a.7 c #868784", +"bEL c #868786", +"b7x c #868787", +"c20 c #86887f", +"dvH c #868880", +"bfE c #868885", +"bf9 c #868887", +"#o# c #868888", +"aoN c #868986", +"cyU c #86898b", +"dqk c #868a8d", +"dzo c #868b80", +"bRH c #868b84", +"c3L c #868b85", +"aty c #868b86", +"awf c #868b88", +"cml c #868b89", +"fLR c #868b8d", +"cvv c #868c82", +"bih c #868c88", +"dbX c #868c89", +"#R3 c #868c8a", +"aqI c #868c8b", +"fXI c #868c8f", +"akD c #868d85", +"byQ c #868d86", +"bvK c #868d87", +"blo c #868d88", +"dfq c #868d8c", +"cSl c #868d8d", +"cRL c #868e83", +"c4G c #868e86", +"bwN c #868e89", +"anU c #868e8c", +"c6s c #868e90", +"bHv c #868f8a", +"aKn c #868f8b", +"cck c #868f8c", +"co7 c #868f8e", +"bE7 c #868f90", +"bLr c #868f91", +"c3. c #869087", +"abf c #86908d", +"aps c #86908e", +"bj2 c #86908f", +"b9D c #869090", +"bPk c #869091", +"cD8 c #869188", +"#05 c #869189", +"asB c #86918b", +"bfo c #86918d", +"dx3 c #869192", +"ge8 c #869193", +"dkB c #869288", +"#wb c #869290", +"#Hl c #869291", +"byF c #869292", +"diQ c #869388", +"#RD c #86938c", +"bvV c #869390", +"c6q c #869392", +"g.T c #869395", +"deU c #869489", +"#Mv c #869494", +"eV2 c #869495", +"#F5 c #869560", +"#D6 c #86958f", +"#L# c #869590", +"#Hv c #869591", +"#D5 c #869592", +"f0F c #869596", +"#B1 c #869696", +"eQ1 c #869797", +"eKl c #869898", +"e8z c #86989a", +"eOM c #869998", +"fUJ c #869999", +"eeX c #869a9b", +"gAS c #869aba", +".9t c #869b9b", +".Ui c #869ea0", +".SH c #869f9c", +"fkG c #86a2d6", +"dY# c #86c57d", +"fhV c #86e8fb", +"arM c #870009", +"#zD c #87258b", +"fdt c #87585d", +"fi4 c #875963", +"fam c #875c64", +"fNo c #875e60", +"eNT c #875f5f", +"fzJ c #875f60", +"gq3 c #876261", +"f1J c #87626a", +"f4C c #876368", +"af9 c #876462", +"gGO c #876465", +"fDW c #87656b", +"f9r c #87666b", +"fSE c #87676d", +"e#R c #876969", +"ebQ c #87696b", +"fMu c #87696d", +"cN0 c #876a6b", +"fSF c #876a6f", +"gM2 c #876b69", +"gOf c #876b6a", +"gNs c #876b6b", +"gPi c #876b6c", +"gPh c #876c6a", +"gNH c #876c6b", +"gPj c #876c6c", +"gNP c #876d6c", +"gNQ c #876d6d", +"dX. c #876d6e", +"gOr c #876d70", +"gOA c #876e6c", +"gOX c #876e6d", +"gOs c #876e71", +"gOz c #876f6e", +"chM c #877054", +"caU c #87705d", +"gwV c #877073", +"gQq c #877173", +"dXm c #87726c", +"gQo c #877273", +"f1k c #877375", +"b2T c #87745c", +"fYb c #877475", +"eEV c #87756b", +"dLc c #877571", +"#Wj c #87757b", +"cuV c #877663", +"csj c #877760", +"a7M c #877761", +"fA0 c #87777b", +"aCJ c #877877", +"csk c #877963", +"a4P c #877a6a", +"bb6 c #877a6c", +"aLm c #877a74", +"gyr c #877a7a", +"b2t c #877c69", +"bLV c #877c6a", +"bLT c #877c6d", +"aLn c #877c77", +"bI# c #877d70", +"#Cr c #877d71", +"dh3 c #877d7f", +"emJ c #877e80", +"bey c #878072", +"aOR c #87812b", +"g#f c #878183", +"bc# c #87827f", +"#ZE c #878283", +"bca c #878481", +"amK c #878587", +"dN8 c #87867b", +"#W8 c #878686", +"bfF c #878687", +"bfH c #878688", +"bfG c #878689", +"feh c #87868a", +"fbs c #87868c", +"bEC c #878784", +"bcA c #878786", +"b9y c #878787", +"eX7 c #878789", +"cBY c #878880", +"b9k c #878886", +"#jQ c #87898a", +"c7U c #878a83", +"#kz c #878a8a", +"ejr c #878a8b", +"fI4 c #878b8e", +"dxW c #878b8f", +"fW8 c #878b9b", +"bNq c #878c85", +"c0M c #878c88", +"#Ie c #878c89", +"cFG c #878d83", +"aeQ c #878d85", +"#7O c #878d89", +"anS c #878d8a", +"#YH c #878d8b", +"fUX c #878d8d", +"cO9 c #878e83", +"asL c #878e86", +"bqc c #878e87", +"blm c #878e88", +"aZr c #878e8a", +"c0L c #878e8c", +"cTA c #878e8e", +"eTa c #878e90", +"cx2 c #878f85", +"b7g c #878f87", +"dfp c #878f8d", +"b5W c #878f91", +"a.I c #879088", +"bj3 c #879089", +"byO c #87908a", +"cg8 c #87908b", +"atD c #87908d", +"bPo c #87908f", +"dor c #879090", +"c6r c #879091", +"b7W c #879092", +"eYZ c #879093", +"ay# c #87918a", +"#H1 c #87918b", +"anV c #87918e", +"bha c #879190", +"bZQ c #879191", +"byG c #879192", +"bPh c #879193", +"cHE c #879288", +"cYD c #879289", +"#4p c #87928a", +"a1e c #87928c", +"aek c #87928d", +"amV c #87928e", +"bhb c #87928f", +"bAL c #879293", +"gc9 c #879294", +"diR c #879389", +"bJH c #87938e", +"acz c #879391", +"bZR c #879393", +"dc9 c #87948a", +"#OB c #87948d", +"cln c #879490", +"awt c #879493", +"fij c #879495", +"clo c #879592", +"aBW c #879594", +"#PG c #879595", +"fXB c #879596", +"#K8 c #879690", +"cqO c #879693", +"#I7 c #879695", +"fLG c #879696", +"fIV c #879697", +"fF6 c #879797", +"f0I c #879897", +"ffl c #87989a", +"fF1 c #879999", +"eA6 c #87999a", +"ecT c #87999b", +"fF2 c #879a9a", +"##2 c #879b9c", +"f#B c #879c9e", +".05 c #87aacf", +"fhy c #87b5c7", +"#GU c #87d404", +"aAr c #87d707", +"fk1 c #87e3fc", +"aGh c #880416", +"aaY c #881f02", +"agd c #882b2b", +"agc c #883633", +"fV4 c #885660", +"gag c #885761", +"fmm c #88585f", +"e9y c #885860", +"fEn c #885a61", +"fpe c #885a64", +"ag. c #885b59", +"fEx c #885b60", +"fax c #885d64", +"aLg c #885d74", +"e0c c #885f64", +"fda c #885f66", +"f4H c #885f67", +"f9s c #88646a", +"gCH c #886567", +"gwy c #88656b", +"fJL c #88666c", +"fMw c #88696c", +"fMz c #88696d", +"fPF c #88696e", +"fSD c #88696f", +"e#S c #886a6a", +"fMx c #886a6d", +"fPG c #886a6e", +"eCh c #886b65", +"aw6 c #886c64", +"gOZ c #886c6c", +"gO0 c #886c6d", +"gM1 c #886d6c", +"gO. c #886d6d", +"gOo c #886e6d", +"gOW c #886e6e", +"d4S c #886f6b", +"gO5 c #886f6d", +"gOY c #886f6e", +"gOy c #886f6f", +"fSv c #887274", +"dPR c #88736f", +"gQp c #887374", +"aao c #887478", +"#KN c #887576", +"f9. c #887579", +"dUa c #887677", +"cpT c #887764", +"cxr c #887868", +"dPm c #887878", +"ckd c #887961", +"aN7 c #887970", +"dI2 c #887973", +"b6o c #887a65", +"d7C c #887a72", +"cBy c #887b68", +"cBz c #887b69", +"bBw c #887b6c", +"b.0 c #887c6d", +"bah c #887d7f", +"d5d c #887f74", +"bT4 c #88806f", +"d2M c #888176", +"bBH c #88847f", +"deF c #88857f", +"aJn c #888787", +"fqg c #88878d", +"ac# c #888885", +"bf7 c #888887", +"apk c #888888", +"gGB c #88888b", +"bf2 c #888983", +"bf8 c #888988", +"#oj c #888989", +"eX8 c #88898a", +"d#2 c #888a81", +"#o. c #888a8a", +"bfL c #888b81", +"cvn c #888b82", +"#kw c #888b8c", +"bTj c #888b8e", +"cGv c #888c85", +"cJN c #888c8d", +"cac c #888d85", +"aBC c #888d89", +"flq c #888d90", +"dBu c #888e82", +"cvu c #888e84", +"bZ8 c #888e86", +"bz6 c #888e87", +"cy6 c #888e89", +"aWy c #888e8a", +"al. c #888e8b", +"ayQ c #888e8c", +"dvR c #888f85", +"b0. c #888f86", +"apX c #888f87", +"bxV c #888f88", +"aqG c #888f8a", +"aHB c #888f8b", +"awj c #888f8c", +"dzs c #889087", +"bvL c #88908a", +"al# c #88908e", +"bAK c #889091", +"c5b c #889092", +"br9 c #88918c", +"anX c #88918e", +"cSm c #889190", +"a.g c #889191", +"eVT c #889193", +"c4I c #889289", +"avy c #88928a", +"bd8 c #88928c", +"#KX c #889290", +"a.f c #889291", +"bHl c #889292", +"aNH c #889293", +"c5a c #889294", +"dmm c #889389", +"deQ c #88938a", +"bVU c #88938b", +"aVl c #88938d", +"bbe c #88938e", +"abj c #88938f", +"bHs c #889390", +"#0O c #889391", +"apq c #889392", +"bAM c #889394", +"afV c #889395", +"dbA c #88948a", +"co# c #889490", +"#2p c #889491", +"#K1 c #889492", +"bHk c #889495", +"ghc c #889496", +"dc8 c #88958b", +"#OC c #88958e", +"#Hq c #889593", +"eZb c #889596", +"f0J c #889597", +"cob c #889692", +"#Vv c #889696", +"eTh c #889697", +"f0K c #889698", +"#HA c #889791", +"#Oz c #889792", +"cQU c #889796", +"aKB c #889797", +"fUI c #889897", +"ffm c #889898", +"dYR c #88999a", +"fXA c #889a99", +"fAA c #889a9a", +"eDh c #889a9b", +"fid c #889a9c", +"e5f c #889b9b", +"emh c #889c9d", +".Nk c #889e9c", +".P. c #88a0a0", +".US c #88a19e", +"dYa c #88c97d", +"fhW c #88e5fc", +"fe3 c #88ecfa", +"baN c #890095", +"#GD c #8909e6", +"aL0 c #89152b", +"ajc c #891614", +"bfS c #892edd", +"a83 c #894caf", +"e6q c #895760", +"fQf c #89585e", +"f18 c #895a62", +"e9z c #895b63", +"fQn c #895c5f", +"e9o c #895d67", +"eNU c #896161", +"fp# c #89636a", +"gIv c #896567", +"fGS c #89656b", +"eED c #896964", +"e#Q c #896b6b", +"gf6 c #896b70", +"gqy c #896c71", +"eAa c #896d66", +"gOU c #896d6c", +"gO6 c #896d6d", +"gOn c #896d6e", +"gOt c #896d6f", +"geD c #896d70", +"fYm c #896d71", +"e#V c #896e6b", +"gO1 c #896e6d", +"gPl c #896e6e", +"dZK c #896e70", +"gNR c #896f6e", +"a2U c #896f88", +"gN6 c #89706e", +"fMo c #897074", +"fGI c #897075", +".lF c #89724b", +"adr c #897374", +"d7v c #89746f", +"ckq c #89755a", +"#Oc c #897577", +"dSh c #897871", +"aFz c #897874", +"cxi c #897964", +"a7I c #897c69", +"bb4 c #897c6b", +"brt c #897d70", +"egB c #897d72", +"bYc c #897e6a", +"b2p c #897e6b", +"bJ8 c #897f6f", +"gfu c #897f82", +"d5c c #898075", +"ekf c #898283", +"f8W c #898385", +"c2R c #898581", +"bfI c #89858b", +"b.A c #89867a", +"bg# c #898683", +"gx0 c #898687", +"gGA c #898786", +"gFl c #898787", +"gdr c #89878a", +"dN3 c #89887d", +"gbh c #89888a", +"f3x c #89888d", +"fj7 c #898891", +"dLF c #89897d", +"#0H c #898989", +"ghw c #89898b", +"cBf c #898a84", +"#og c #898a8a", +"cuv c #898b84", +"b#Q c #898b88", +"ejB c #898b8c", +"fu3 c #898b8d", +"cIa c #898c8d", +"cGj c #898d8d", +"cAW c #898d8e", +"bMI c #898e87", +"c7S c #898e88", +"c3K c #898e8a", +"#mE c #898e8c", +"c7R c #898f8a", +"#O8 c #898f8b", +"#IK c #898f8d", +"#U0 c #898f8e", +"bAZ c #899087", +"ahJ c #899088", +"boh c #899089", +"bqf c #89908a", +"dfs c #89908d", +"cWy c #89908f", +"b1r c #899188", +"bKW c #899189", +"ala c #89918e", +"awB c #899192", +"c6u c #899194", +"dt2 c #899287", +"cMg c #899289", +"bIU c #89928a", +"bn. c #89928d", +"afA c #89928e", +"afz c #89928f", +"cRa c #899291", +"c3I c #899292", +"daz c #899293", +"dOJ c #899295", +"asF c #89938b", +"aSi c #89938c", +"acx c #89938f", +"#0M c #899392", +"b12 c #899393", +"bNc c #899394", +"bVL c #899395", +"aoa c #899396", +"dn3 c #89948a", +"bRA c #89948b", +"abG c #89948c", +"#wR c #89948e", +"bfn c #89948f", +"amW c #899490", +"acy c #899491", +"cew c #899494", +"b10 c #899495", +"dfc c #899496", +"dgY c #89958b", +"#0P c #899592", +"#Ap c #899593", +"bCd c #899594", +"b9d c #899595", +"ghb c #899597", +"deT c #89968c", +"cqN c #899692", +"#Rp c #899694", +"bMU c #899695", +"aHN c #899696", +"#HD c #899791", +"aEU c #899797", +"#St c #899798", +"#Rx c #899893", +"dQ4 c #899898", +"f0L c #899899", +"#BY c #899998", +"fcy c #899999", +"fON c #899a9a", +"fos c #899a9c", +"fx3 c #899b9b", +"for c #899b9d", +"eeZ c #899d9e", +"dVN c #89b788", +"fo. c #89dffd", +"fe4 c #89e9fc", +"fhU c #89eafc", +"fe2 c #89edfb", +"a9O c #8a0086", +"bcR c #8a02fc", +"agg c #8a0b0d", +"aAs c #8a1b0d", +"fsx c #8a5863", +"fan c #8a5e67", +"eR0 c #8a5f61", +"f1O c #8a6069", +"eP5 c #8a6161", +"eP4 c #8a6162", +"gen c #8a6169", +"giA c #8a616a", +"f7e c #8a646c", +"gup c #8a666d", +"f1I c #8a686e", +"eq# c #8a6968", +"f7b c #8a696f", +"fJJ c #8a6b6f", +"fPC c #8a6b70", +"ebT c #8a6c6c", +"e#M c #8a6d6f", +"baK c #8a6d79", +".rF c #8a6e42", +"gOw c #8a6e6d", +"gOu c #8a6e6e", +"fyO c #8a6e72", +"gOx c #8a6f6e", +"gOV c #8a6f6f", +"eLR c #8a7069", +"gNq c #8a706f", +"gO4 c #8a7170", +"guN c #8a7174", +"fDL c #8a7175", +"egm c #8a726c", +"#vQ c #8a7375", +"f4p c #8a7376", +"gjV c #8a7479", +"aiV c #8a7675", +"cnd c #8a7764", +"cpS c #8a7864", +"dWM c #8a787a", +"#Kx c #8a7903", +"frU c #8a7a7d", +"bIf c #8a7b6c", +"eqA c #8a7b70", +"b8i c #8a7c66", +"bDt c #8a8375", +"a4B c #8a8376", +"g#i c #8a8386", +"#GW c #8a8400", +"bV8 c #8a8475", +"erL c #8a8485", +"a1E c #8a8577", +"bHR c #8a8579", +"bg. c #8a8589", +"bPE c #8a8678", +"bLK c #8a867a", +"dSB c #8a877c", +"gF2 c #8a8883", +"azm c #8a8888", +"f3Z c #8a888b", +"btu c #8a8989", +"acc c #8a8a88", +"bqS c #8a8a8a", +"#n9 c #8a8c8c", +"cI7 c #8a8d84", +"bW2 c #8a8d86", +"#jA c #8a8d8c", +"coZ c #8a8d8d", +"#f8 c #8a8d8e", +"a2j c #8a8e8a", +"afo c #8a8e8c", +"#ho c #8a8e8d", +"cLp c #8a8e90", +"aB6 c #8a8e92", +"bVZ c #8a8f88", +"aft c #8a8f8b", +"anT c #8a8f8d", +"#fY c #8a8f8f", +"azd c #8a8f91", +"ejz c #8a8f93", +"ccy c #8a9086", +"b2e c #8a9088", +"bli c #8a908a", +"aKj c #8a908c", +"cSp c #8a908d", +"#xQ c #8a908e", +"fUW c #8a9091", +"dvQ c #8a9187", +"b57 c #8a9188", +"anj c #8a9189", +"br4 c #8a918a", +"aiu c #8a918f", +"ge2 c #8a9191", +"b3e c #8a9289", +"aGA c #8a9292", +"byE c #8a9294", +"dp4 c #8a938a", +"bGA c #8a938c", +"bPs c #8a938d", +"anW c #8a9390", +"atY c #8a9392", +"aiP c #8a9394", +"bTA c #8a9395", +"drZ c #8a9489", +"cby c #8a948b", +"bXR c #8a948c", +"aVm c #8a948d", +"bHu c #8a948e", +"bLw c #8a948f", +"acw c #8a9490", +"alb c #8a9492", +"daw c #8a9494", +"d.T c #8a9495", +"dml c #8a958a", +"dp5 c #8a958b", +"bTM c #8a958d", +"b.d c #8a958e", +"a4h c #8a958f", +"bNh c #8a9590", +"a#B c #8a9591", +"abg c #8a9592", +"amS c #8a9594", +"ccc c #8a9595", +"fOU c #8a9597", +"dbx c #8a968c", +"aq3 c #8a9690", +"bGE c #8a9691", +"coa c #8a9692", +"#Y0 c #8a9694", +"bNb c #8a9696", +"#OD c #8a9790", +"aKz c #8a9797", +"fcB c #8a9798", +"dbB c #8a988e", +"bQY c #8a9896", +"cR7 c #8a9897", +"aBV c #8a9898", +"fUN c #8a9899", +"#L. c #8a9994", +"#Av c #8a9996", +"frt c #8a999a", +"#yh c #8a9a9a", +"fIR c #8a9b9b", +"fDe c #8a9c9c", +"eQY c #8a9c9e", +"fli c #8a9c9f", +"f#D c #8a9e9f", +"##p c #8aa09e", +".VH c #8aa3a0", +"d3i c #8acf8d", +"fhT c #8ae9fc", +"amb c #8b0106", +"aDl c #8b0912", +"axR c #8b2608", +"a9N c #8b3e78", +"aJ# c #8b5420", +"fBY c #8b5a60", +"fQ. c #8b5c63", +"fzd c #8b5d67", +"eR1 c #8b5e61", +"eUt c #8b5f60", +"eP2 c #8b5f61", +"e6g c #8b5f68", +"eP1 c #8b6062", +"eP6 c #8b6262", +"eNS c #8b6263", +"fdD c #8b6363", +"fKs c #8b6365", +"f4D c #8b646b", +"f4G c #8b646c", +".GC c #8b662c", +"guq c #8b666e", +"fGT c #8b676e", +"g#Y c #8b696f", +"fZp c #8b6c6d", +"fPE c #8b6c70", +"fPD c #8b6c71", +"aQN c #8b6c82", +"gOv c #8b6e6d", +"ebW c #8b6f6c", +".OT c #8b7047", +"gNI c #8b706f", +"gNr c #8b7070", +"gNL c #8b7170", +"gNS c #8b7271", +"eOd c #8b756d", +"caT c #8b765d", +"caS c #8b765e", +"e3Q c #8b766f", +"e0V c #8b7770", +"d9V c #8b7771", +"#8M c #8b7774", +"bkM c #8b7861", +"gPt c #8b7876", +"eAp c #8b796f", +"cuW c #8b7a67", +"cuN c #8b7c64", +"cat c #8b7c68", +"exU c #8b7c71", +"cuI c #8b7e67", +"gdu c #8b8184", +"bfM c #8b828c", +"#VT c #8b8467", +"f8Y c #8b8486", +"dJ# c #8b857c", +"f6D c #8b8587", +"aiZ c #8b8685", +"al3 c #8b8784", +"fyp c #8b888c", +"ejq c #8b898b", +"a5O c #8b8a8b", +"gjz c #8b8a8d", +"dLB c #8b8b7e", +"aGw c #8b8b8b", +"egY c #8b8b8c", +"g#a c #8b8b8d", +"b5b c #8b8c86", +"bf0 c #8b8c88", +"gF0 c #8b8c8e", +"cxS c #8b8d84", +"#n8 c #8b8d8c", +"aE3 c #8b8d8e", +"b1l c #8b8e87", +"aKL c #8b8e8c", +"#j3 c #8b8e8e", +"aZv c #8b8f8c", +"cEz c #8b8f8f", +"fAM c #8b8f92", +"b36 c #8b9089", +"anR c #8b908c", +"#mF c #8b908f", +".5C c #8b9091", +"foz c #8b9093", +"b2d c #8b9189", +"#LH c #8b918d", +"cOp c #8b918e", +"#BC c #8b918f", +"eCV c #8b9192", +"cHt c #8b9288", +"avF c #8b928a", +"dt5 c #8b928b", +"b73 c #8b928c", +"cjD c #8b9290", +"#KW c #8b9292", +"csX c #8b9388", +"abI c #8b938b", +"a#z c #8b9390", +"afy c #8b9391", +"c0J c #8b9392", +"cOi c #8b9393", +"c7O c #8b9394", +"bPg c #8b9395", +"dp3 c #8b948b", +"dxD c #8b948c", +"bJJ c #8b948f", +"#8j c #8b9491", +"ax4 c #8b9492", +"cLs c #8b9493", +"c9. c #8b9494", +"aqY c #8b9496", +"cbA c #8b958c", +"bON c #8b958d", +"bik c #8b958f", +"dhu c #8b9592", +"#38 c #8b9594", +"bXG c #8b9595", +"bNd c #8b9596", +"dc4 c #8b968d", +"#7m c #8b968e", +"apC c #8b9690", +"bRw c #8b9691", +"#5r c #8b9692", +"a#C c #8b9693", +"dhq c #8b9696", +"gha c #8b9697", +"dmn c #8b978d", +"dr1 c #8b978e", +"#8o c #8b9792", +"clm c #8b9793", +"#8v c #8b9795", +"bVK c #8b9797", +"ga1 c #8b9798", +"ghd c #8b9799", +"dc7 c #8b988e", +"#OE c #8b9891", +"#Os c #8b9896", +"f0M c #8b989a", +"#HF c #8b9993", +"ay4 c #8b9999", +"eZ. c #8b999a", +"#HC c #8b9a95", +"#wi c #8b9a97", +"fF8 c #8b9a9a", +"#yf c #8b9b9a", +"fif c #8b9b9b", +"fUK c #8b9c9b", +"fDd c #8b9d9d", +"#.F c #8b9fa0", +"#hb c #8ba09b", +"fi# c #8ba09f", +"#fQ c #8ba19b", +".Y9 c #8ba19f", +".3v c #8ba2a2", +"bsk c #8bb48a", +"feI c #8bb7c9", +"e7T c #8be1a4", +"fkZ c #8be7fc", +"aOS c #8c0037", +"#QF c #8c05ec", +"fBP c #8c5a62", +"fv3 c #8c5b66", +"f17 c #8c5d65", +"eR2 c #8c5e61", +"eUu c #8c5f62", +"faw c #8c5f66", +"eR3 c #8c6061", +"eP3 c #8c6062", +"fH. c #8c606a", +"fsn c #8c626b", +"aUM c #8c6339", +"eP8 c #8c6364", +"fYI c #8c636b", +"faR c #8c6464", +"eP7 c #8c6565", +".pk c #8c6628", +"f1K c #8c666d", +"f4F c #8c666e", +"fD0 c #8c676e", +"fGR c #8c686e", +"ggc c #8c6970", +"fDZ c #8c6a6f", +"eu0 c #8c6b6c", +"fJK c #8c6b70", +"g#J c #8c6d72", +"d9G c #8c6e6e", +"ef8 c #8c6e6f", +"e#P c #8c6f72", +".En c #8c7042", +"esR c #8c706a", +"esQ c #8c706b", +"gO7 c #8c706f", +"fVt c #8c7074", +"aW0 c #8c7082", +"aW6 c #8c7087", +"evj c #8c716a", +"gO9 c #8c7271", +"gN5 c #8c7272", +"gmZ c #8c7476", +".uo c #8c754d", +"af1 c #8c756e", +"azR c #8c7574", +"d4W c #8c7672", +"eXJ c #8c7872", +"d2u c #8c7873", +"dSf c #8c7874", +"eLW c #8c796f", +"dZ0 c #8c7973", +"fyB c #8c797b", +"cfc c #8c7b64", +"fyz c #8c7b7c", +"chC c #8c7c65", +"eiR c #8c7c72", +"chy c #8c7d66", +"dA1 c #8c7d7a", +"en1 c #8c8074", +"#0A c #8c8080", +"gtw c #8c8084", +"fSj c #8c8185", +"bFT c #8c8277", +"gbp c #8c8386", +"dEW c #8c857d", +"g#g c #8c8587", +"f35 c #8c8588", +"f34 c #8c8688", +"bDQ c #8c8780", +"gFw c #8c8784", +"gx9 c #8c8789", +"d2S c #8c897c", +"bBf c #8c8982", +"b#h c #8c8985", +"#MV c #8c898c", +"dkp c #8c8a82", +"dG6 c #8c8b81", +"#MT c #8c8b8b", +"gFb c #8c8b8f", +"a2I c #8c8c8a", +"ar# c #8c8c8b", +"#33 c #8c8c8c", +"fGj c #8c8c8e", +"bga c #8c8d7f", +"cfV c #8c8d87", +"gF7 c #8c8d8b", +"#of c #8c8d8d", +"bTg c #8c8e8a", +"#lp c #8c8e8e", +"#jV c #8c8e8f", +"cKH c #8c8f86", +"#n4 c #8c8f8f", +"bPw c #8c918a", +"bqb c #8c918b", +"boc c #8c918c", +"aWv c #8c918d", +"c6v c #8c918f", +"#lb c #8c9190", +"aeO c #8c928b", +"bll c #8c928c", +"#R1 c #8c928e", +"air c #8c928f", +"cp. c #8c9290", +"duj c #8c9295", +"aGg c #8c9317", +"bSS c #8c938a", +"asN c #8c938b", +"bOK c #8c938c", +"afx c #8c9391", +"bvX c #8c9394", +"cQD c #8c9489", +"bIT c #8c948c", +"cZd c #8c9491", +"aAG c #8c9493", +"bMV c #8c9496", +"b9E c #8c9497", +"dvS c #8c958c", +"cRS c #8c958d", +"b53 c #8c958f", +"bm9 c #8c9590", +"aqK c #8c9592", +"cMS c #8c9594", +"bJB c #8c9596", +"aPp c #8c968d", +"aPq c #8c968e", +"#8q c #8c9692", +"#8p c #8c9693", +"bPn c #8c9695", +"amT c #8c9696", +"bJA c #8c9697", +"fuT c #8c9698", +"g.W c #8c9699", +"c7o c #8c978d", +"#07 c #8c978f", +"aYo c #8c9791", +"#5q c #8c9793", +"#8r c #8c9794", +"aKC c #8c9798", +"ga2 c #8c9799", +"d.p c #8c988e", +"#RF c #8c9891", +"#8n c #8c9893", +"#2l c #8c9895", +"#DZ c #8c9896", +"f6g c #8c9899", +"#Lb c #8c9992", +"cbH c #8c9996", +"#8s c #8c9997", +"aTE c #8c9998", +"f3M c #8c999a", +"#i5 c #8c9a98", +"#mo c #8c9a99", +"#lK c #8c9a9a", +"#PF c #8c9a9b", +"#Ry c #8c9b96", +"#Au c #8c9b98", +"cNQ c #8c9b9a", +"f3L c #8c9b9b", +"frr c #8c9c9c", +"#yg c #8c9c9d", +"fAB c #8c9e9e", +"e2f c #8c9ea0", +"fuy c #8c9fa0", +"foo c #8ca0a1", +"##q c #8ca19f", +"flh c #8ca1a2", +".Nn c #8ca2a0", +"fhz c #8ca3d6", +".Xc c #8ca6a3", +"aaX c #8cbd09", +"d0N c #8ccc8c", +"fq6 c #8cd2fb", +"#3K c #8cd505", +"fq5 c #8cd5fc", +"fn9 c #8ce0fd", +"fkX c #8ce5f9", +"fkY c #8ce6f9", +"fcg c #8ce9fb", +"fcf c #8cecfb", +"fe1 c #8cedfd", +"ajs c #8d008d", +"bdF c #8d00a5", +"a3O c #8d2167", +"fB0 c #8d5b62", +"e6r c #8d5b65", +"fsy c #8d5b66", +"fBZ c #8d5d62", +"e9x c #8d5d65", +"fsw c #8d5d68", +"fHc c #8d5e66", +"fmr c #8d5f62", +"e9C c #8d5f67", +"eXh c #8d6063", +"fMR c #8d606a", +"fmA c #8d6164", +"fEh c #8d616a", +"a5Y c #8d629c", +"eR4 c #8d6364", +"fgr c #8d6365", +"ggA c #8d636c", +"fYC c #8d646a", +"fl7 c #8d646c", +"faS c #8d6565", +"f7d c #8d656c", +".zt c #8d6625", +".Bq c #8d6626", +"eS. c #8d6765", +"f4E c #8d676f", +"fy2 c #8d686f", +"ep6 c #8d696a", +"fDY c #8d6a70", +"fGP c #8d6c71", +"e#T c #8d6e6f", +"edW c #8d6f6f", +"ebR c #8d6f70", +"fBh c #8d6f74", +"aE5 c #8d6f7a", +"edX c #8d706e", +"gPn c #8d7070", +"gPm c #8d7170", +"gO2 c #8d7172", +".OR c #8d7247", +"exE c #8d726b", +"gO8 c #8d7271", +"gO3 c #8d7372", +"d7q c #8d7571", +"cd# c #8d765b", +"eQp c #8d766f", +"eqo c #8d7670", +"eUV c #8d7972", +"fVi c #8d797b", +"e#7 c #8d7a73", +"gpJ c #8d7a7c", +"c.A c #8d7b65", +"b6N c #8d7b66", +"b8I c #8d7c67", +"cxc c #8d806a", +"b6s c #8d806b", +"b4j c #8d806d", +"bkT c #8d806f", +"gpt c #8d8183", +"dXA c #8d8279", +"b0m c #8d8371", +"bNL c #8d8474", +"gyc c #8d8485", +"gbr c #8d8487", +"arC c #8d8488", +"a7z c #8d8578", +"eet c #8d857a", +"eeu c #8d867a", +"f6B c #8d8789", +"d0l c #8d8b7d", +"dQh c #8d8b7f", +"bEJ c #8d8b8d", +"dLG c #8d8c81", +"fUr c #8d8c94", +"ahf c #8d8d8c", +".v2 c #8d8d8d", +"fI8 c #8d8e90", +"#lu c #8d8f8f", +"bf1 c #8d9082", +"cNs c #8d9087", +"a.3 c #8d908d", +"#iz c #8d9091", +"c0F c #8d9093", +"bIK c #8d918a", +"aqF c #8d918e", +"#e. c #8d9191", +"aoc c #8d9192", +"acT c #8d9196", +"b37 c #8d928b", +"#1F c #8d928e", +"afw c #8d9290", +"#hk c #8d9291", +"cTy c #8d9292", +"dDm c #8d9387", +"cnR c #8d9389", +"aJN c #8d938b", +"#O9 c #8d938f", +"ayO c #8d9390", +"#Vd c #8d9391", +"bVW c #8d948b", +"apY c #8d948c", +"bod c #8d948d", +"bRE c #8d948e", +"aZs c #8d9490", +"abP c #8d958d", +"ddr c #8d9593", +"aso c #8d9594", +"bHj c #8d9597", +"e2. c #8d9598", +"dt3 c #8d968b", +"apK c #8d968e", +"b17 c #8d9691", +"acv c #8d9693", +"c13 c #8d9694", +"c0K c #8d9695", +"dmO c #8d9696", +"dMl c #8d9699", +"f8z c #8d969a", +"c52 c #8d978e", +"bNi c #8d9791", +"apr c #8d9795", +"cSn c #8d9796", +"#68 c #8d9797", +"bOY c #8d9798", +"dax c #8d9799", +"f8y c #8d979a", +"dn2 c #8d988f", +"#08 c #8d9890", +"apD c #8d9892", +"#2k c #8d9894", +"#5t c #8d9895", +"#ka c #8d9896", +"#Xg c #8d9897", +"akc c #8d9898", +"g.V c #8d989a", +"#XG c #8d9991", +"bRu c #8d9994", +"cdT c #8d9995", +"a#D c #8d9997", +"#5u c #8d9998", +"bLp c #8d9999", +"g.X c #8d999a", +"deS c #8d9a90", +"#AG c #8d9a93", +"#8t c #8d9a97", +"alc c #8d9a98", +"bL# c #8d9a9a", +"g.U c #8d9a9b", +"f6h c #8d9a9c", +"ctb c #8d9b96", +"#ni c #8d9b9a", +"#Vu c #8d9b9b", +"eTi c #8d9b9c", +"fFZ c #8d9b9d", +"#AA c #8d9c96", +"aKA c #8d9c9c", +"frs c #8d9d9d", +"fIS c #8d9e9e", +"frq c #8d9ea0", +"du# c #8d9f96", +"fx6 c #8d9f9e", +"fx2 c #8d9f9f", +"f#H c #8d9fa1", +"fDa c #8da09f", +"fx5 c #8da0a0", +"flj c #8da0a2", +"fi. c #8da1a0", +"fom c #8da1a2", +".Nl c #8da3a1", +"e7V c #8dd0b7", +"#WT c #8dda09", +"#Dn c #8de604", +"fhS c #8de7fe", +"aUN c #8e004c", +"#ZZ c #8e03f0", +"b#3 c #8e05f3", +"alU c #8e2d2c", +"#0o c #8e3500", +"fM3 c #8e5f68", +"fmz c #8e6063", +"f9Q c #8e6069", +"fHa c #8e606b", +"eUv c #8e6164", +"fjt c #8e6366", +"fYD c #8e636b", +"fVI c #8e646c", +"f1N c #8e646d", +"eNV c #8e6666", +"fSU c #8e666e", +".Ik c #8e672b", +"fD1 c #8e676e", +"f7K c #8e686d", +"fBr c #8e686f", +"f9z c #8e6970", +"eu7 c #8e6a6a", +"fGQ c #8e6c72", +"fWr c #8e6e6f", +"fyQ c #8e6e73", +"edT c #8e6f70", +"gkm c #8e6f74", +"gPo c #8e7271", +"gkY c #8e7275", +"goa c #8e7276", +"gN2 c #8e7372", +"gN3 c #8e7373", +"gN4 c #8e7374", +"gwc c #8e7378", +"gNJ c #8e7473", +"grP c #8e7477", +"eb4 c #8e7570", +"ed8 c #8e7671", +"dR7 c #8e7673", +"gPu c #8e7677", +"e#3 c #8e7771", +"gl9 c #8e777b", +"d9Q c #8e7870", +"e#4 c #8e7972", +"eb7 c #8e7b74", +"cuY c #8e7d6c", +"dWN c #8e7d7f", +"bpV c #8e7e6a", +"bIi c #8e7f70", +"bv. c #8e806f", +"eqB c #8e8075", +"#3W c #8e8080", +"gyC c #8e8082", +"#FW c #8e8167", +"#SQ c #8e8264", +"bNM c #8e8373", +"bIa c #8e8376", +"gfv c #8e8487", +"gdw c #8e8588", +"be5 c #8e867c", +"bY. c #8e8776", +"djG c #8e8787", +"eub c #8e8989", +"f06 c #8e898a", +"f6C c #8e898b", +"gjB c #8e8b8f", +"bFB c #8e8c84", +"aQE c #8e8c8e", +"gfr c #8e8c8f", +"f3i c #8e8c93", +".zG c #8e8d80", +"dN5 c #8e8d81", +"a63 c #8e8d8e", +"fk. c #8e8d94", +"gFr c #8e8d95", +"b7G c #8e8e8e", +"fLW c #8e8e90", +"b83 c #8e8f89", +"gHj c #8e908d", +"cg2 c #8e9094", +"c9f c #8e918b", +"#ea c #8e9191", +"ba9 c #8e9192", +"cMO c #8e9193", +"#iP c #8e9292", +"bZ6 c #8e938c", +"daE c #8e938d", +"anQ c #8e938f", +"#UX c #8e9490", +"cTE c #8e9491", +"acu c #8e9492", +".W9 c #8e9493", +"cx3 c #8e958c", +"aeJ c #8e958d", +"bqg c #8e958e", +"blj c #8e958f", +"c#i c #8e9597", +"cbJ c #8e9599", +"blh c #8e968f", +"a#A c #8e9693", +"cod c #8e9697", +"c5c c #8e9698", +"dr0 c #8e978e", +"bTL c #8e978f", +"bLy c #8e9791", +"b#v c #8e9792", +"#8k c #8e9794", +"cPN c #8e9796", +"akb c #8e9797", +"bLq c #8e9798", +"b5X c #8e9799", +"bRB c #8e988f", +"#4s c #8e9890", +"bOO c #8e9891", +"bMM c #8e9892", +"bTK c #8e9893", +"#5s c #8e9894", +"#8m c #8e9895", +"#67 c #8e9897", +"#Hm c #8e9898", +"bZS c #8e9899", +"gje c #8e989b", +"bXM c #8e9993", +"#2j c #8e9995", +"#2n c #8e9996", +"#YW c #8e9997", +"dav c #8e9999", +"f8A c #8e999a", +"fR2 c #8e999b", +"c8C c #8e9a90", +"cFP c #8e9a91", +"bRx c #8e9a94", +"akf c #8e9a95", +"ciA c #8e9a96", +"#8u c #8e9a97", +"#2o c #8e9a98", +"bJz c #8e9a9b", +"daa c #8e9b90", +"dbz c #8e9b91", +"#Ef c #8e9b94", +"b7p c #8e9b97", +"aiv c #8e9b99", +"fii c #8e9b9c", +"#D9 c #8e9c96", +"aKy c #8e9c9c", +"#Ss c #8e9c9d", +"ddb c #8e9d97", +"#HB c #8e9d98", +"#D7 c #8e9d99", +"#D4 c #8e9d9a", +"cAu c #8e9d9b", +"#ye c #8e9d9c", +"fD# c #8e9d9e", +"#AF c #8e9e97", +"#h0 c #8e9e9d", +"ffn c #8e9e9e", +"fDb c #8e9f9f", +"fAx c #8ea0a0", +"e5o c #8ea0a2", +"fF0 c #8ea1a0", +"fuD c #8ea1a2", +"ee1 c #8ea1a3", +"doa c #8ea29c", +"flc c #8ea2a0", +"frj c #8ea2a3", +".4D c #8ea2a4", +"fld c #8ea3a1", +".M. c #8ea4a2", +"boE c #8ebe92", +"dYm c #8ec68f", +"clK c #8ed295", +"fq4 c #8ed3fc", +"f.0 c #8ed8a3", +"fk2 c #8edafb", +"fo# c #8edbfb", +"fhX c #8edefd", +"fe5 c #8ee2fc", +"#Kv c #8ee803", +"aoY c #8f0000", +"bgE c #8f19b3", +"aj# c #8f201e", +"fM1 c #8f5c69", +"fpq c #8f5d65", +"fY1 c #8f5d67", +"fY2 c #8f5e67", +"fmx c #8f6064", +"f7A c #8f6068", +"fmy c #8f6164", +"fi3 c #8f616b", +"fBO c #8f6269", +"fay c #8f646b", +"fso c #8f656e", +"ggz c #8f656f", +"eUh c #8f666c", +"fHy c #8f6768", +"f1L c #8f676f", +"fy3 c #8f6970", +"fy1 c #8f6971", +"eUE c #8f6a69", +"eQa c #8f6b68", +"exu c #8f6b6b", +"f7Q c #8f6c6d", +"ent c #8f6d6e", +"gs. c #8f6d73", +"a8T c #8f6e8a", +"esA c #8f6f70", +"ek2 c #8f6f71", +"ebV c #8f7270", +"e#N c #8f7274", +"gN1 c #8f7473", +"d2e c #8f7478", +"gNT c #8f7574", +"gN0 c #8f7575", +"fBe c #8f7578", +"gNK c #8f7673", +"gNU c #8f7674", +"gNZ c #8f7675", +"ed9 c #8f7871", +"eb5 c #8f7872", +"gh9 c #8f787b", +"bO# c #8f7961", +"e#5 c #8f7a73", +"d9T c #8f7b74", +"#Re c #8f7b7e", +"dSg c #8f7c76", +"bbL c #8f7e66", +"gbD c #8f7e82", +"czC c #8f7f6c", +"dPs c #8f7f80", +"cf. c #8f806a", +"c.c c #8f806c", +"bIg c #8f8171", +"b4n c #8f826d", +"cr8 c #8f8370", +"enZ c #8f8377", +"gnF c #8f8385", +"bw9 c #8f8476", +"gvE c #8f8488", +"bs8 c #8f8578", +"bI. c #8f8579", +"egI c #8f867b", +"dSu c #8f867d", +"diu c #8f8882", +"djH c #8f8989", +"f33 c #8f898b", +"d5g c #8f8a7e", +"f8X c #8f8a8c", +"b.B c #8f8c7e", +"dQg c #8f8c80", +"gFi c #8f8c8f", +"fAQ c #8f8c90", +"bBa c #8f8d86", +"bBG c #8f8d88", +"gbl c #8f8d90", +"fJ. c #8f8d91", +"fg3 c #8f8e94", +"ftx c #8f8e95", +"dG8 c #8f8f85", +"bQ6 c #8f8f8c", +"#MU c #8f8f8f", +"b7y c #8f8f90", +"fyo c #8f8f91", +"a67 c #8f9092", +"alt c #8f9096", +"#5J c #8f9190", +"dBs c #8f9286", +"cmI c #8f928b", +"#e# c #8f9292", +"#VH c #8f9297", +"#g# c #8f9393", +"cWv c #8f9397", +"bZ9 c #8f948d", +"c16 c #8f948e", +"blk c #8f948f", +"#Ye c #8f9490", +"dxB c #8f958b", +"aTm c #8f9591", +"atB c #8f9593", +"cy5 c #8f9594", +"gh. c #8f9597", +"f6c c #8f9599", +"dBz c #8f968a", +"ani c #8f968e", +"boj c #8f968f", +"dds c #8f9694", +"bS8 c #8f9698", +"cdV c #8f9699", +"cJ# c #8f978c", +"cVZ c #8f978d", +"ayb c #8f978f", +"bOL c #8f9790", +"bNl c #8f9793", +"cXS c #8f9796", +"clp c #8f9798", +"abO c #8f988f", +"bKX c #8f9890", +"bNk c #8f9892", +"bcl c #8f9893", +"#5n c #8f9895", +"bTG c #8f9897", +"bVM c #8f9899", +"c1Y c #8f989a", +"diP c #8f9990", +"#7q c #8f9991", +"bK0 c #8f9994", +"#5p c #8f9996", +"dfn c #8f9998", +"bLo c #8f9999", +"b11 c #8f999a", +"fGa c #8f999b", +"c0g c #8f9a90", +"bQO c #8f9a92", +"bIY c #8f9a94", +"#2m c #8f9a96", +"amU c #8f9a97", +"#On c #8f9a98", +"#65 c #8f9a9a", +"bRq c #8f9a9b", +"c1A c #8f9b91", +"#4# c #8f9b97", +"#kX c #8f9b98", +"#K0 c #8f9b99", +"#wc c #8f9b9a", +"dmI c #8f9b9c", +"fIX c #8f9b9d", +"ctc c #8f9c99", +"bVg c #8f9c9c", +"#HE c #8f9d97", +"cgi c #8f9d9b", +"f6i c #8f9d9e", +"#Ea c #8f9e98", +"#E. c #8f9e99", +"#wj c #8f9e9b", +"#I6 c #8f9e9e", +"dda c #8f9f96", +"deY c #8f9f97", +"#AD c #8f9f9a", +"fuL c #8f9f9f", +"fUL c #8f9fa0", +"fAy c #8fa0a0", +"dr8 c #8fa198", +"fDc c #8fa1a1", +"e8B c #8fa1a3", +"dqe c #8fa29f", +"ffi c #8fa2a4", +"frg c #8fa3a2", +"fff c #8fa3a3", +"fop c #8fa3a4", +"fcu c #8fa4a6", +".K6 c #8fa5a3", +"aDk c #8fb910", +"#y0 c #8ff709", +"#9R c #901d00", +"bfR c #9033d9", +"ai6 c #904e4d", +"fzx c #905d64", +"e6p c #906169", +"fjf c #906268", +"eXi c #906366", +"gac c #90636b", +"fSZ c #90636d", +"fgq c #906467", +"fEl c #90656b", +"eR5 c #906666", +"eRZ c #906667", +"fdC c #906668", +"f1V c #90666c", +"fPU c #90666f", +"eW6 c #90676d", +"ggu c #90676e", +"faQ c #906869", +"f1M c #90686f", +"aZS c #906985", +"fyY c #906d73", +"fBo c #906e73", +"eis c #907172", +"ek3 c #907270", +"eg# c #907272", +"e#O c #907274", +"fSG c #907478", +"evg c #90756e", +"gsu c #907578", +"gNV c #907675", +"dUA c #907677", +"gNY c #907775", +"bkA c #90795c", +"cda c #907961", +"ee. c #907973", +"d9R c #907a73", +"fJz c #907a7d", +"d9S c #907b74", +"d7u c #907b75", +"dUM c #907b76", +"dPS c #907b78", +"#Hb c #907b7d", +"g#A c #907c7e", +"bSs c #907d66", +"ai1 c #907d7c", +"fPu c #907d7e", +"f87 c #907d81", +"#VO c #907e67", +"eET c #907e74", +"ckh c #907f68", +"bb3 c #908270", +"a7O c #908271", +"a7P c #908371", +"eiX c #908579", +"d7O c #908a7e", +"g#h c #908a8c", +"ejp c #908c89", +"dN4 c #908e82", +"dG5 c #908e84", +"gdq c #908e91", +"dLC c #908f84", +"bEQ c #908f94", +"ftD c #908f96", +"dLE c #909084", +"gFm c #90908d", +"cMG c #90908e", +"#PY c #909090", +"eX6 c #909092", +"cid c #90918a", +"#4V c #90918f", +"#iF c #909292", +"#yv c #909298", +"ccz c #90938b", +"b5e c #90938c", +"#kS c #909393", +"bd0 c #909394", +"cOf c #909395", +"#SD c #909398", +"#hp c #909494", +"g## c #909495", +"bOE c #90958e", +"d.3 c #90958f", +"ayK c #909591", +"ayN c #909592", +"eAQ c #909595", +"cnQ c #90968c", +"abS c #90968e", +"#R2 c #909692", +"cU1 c #909693", +"ait c #909694", +".Xa c #909695", +"akF c #90978f", +"bqd c #909790", +".Sz c #909797", +"bXX c #90988f", +"bW8 c #909890", +"act c #909895", +"dfo c #909897", +"b9e c #909899", +"bLa c #90989a", +"dzt c #909991", +"bML c #909992", +"#8l c #909996", +"cMR c #909998", +"cQV c #90999a", +"day c #90999b", +"cn1 c #909a91", +"a.C c #909a92", +"bNg c #909a99", +"bJy c #909a9b", +"c1z c #909b91", +"bRv c #909b97", +"#YY c #909b98", +"#YV c #909b99", +"bZT c #909b9c", +"c0h c #909c92", +"dkC c #909c93", +"a.i c #909c98", +"aws c #909c99", +"#D0 c #909c9a", +"c8D c #909d93", +"#wy c #909d96", +"f0N c #909d9e", +"#HG c #909e97", +"cyf c #909e9a", +"bI8 c #909e9d", +"#k1 c #909e9e", +"eV3 c #909e9f", +"gsZ c #909ec3", +"#Ee c #909f98", +"#Az c #909f99", +"#E# c #909f9a", +"#At c #909f9d", +"cK7 c #909f9e", +"fRX c #909f9f", +"fUM c #909fa0", +"deV c #90a095", +"dae c #90a097", +"du. c #90a099", +"cAt c #90a09b", +"ffo c #90a0a0", +"fxY c #90a1a1", +"ffh c #90a1a4", +"dqb c #90a29b", +"fuz c #90a2a2", +"e5n c #90a2a4", +"foj c #90a3a2", +"ejT c #90a3a4", +"dqd c #90a49e", +"doc c #90a49f", +"##s c #90a4a2", +"fuC c #90a4a3", +"e8s c #90a4a4", +"emf c #90a4a5", +"#ji c #90a5a0", +".5G c #90a5a6", +"#g8 c #90a6a0", +".Nm c #90a6a4", +"feJ c #90a7d9", +"fbV c #90b8cb", +".Vr c #90bfd9", +"#CB c #90c739", +"fq7 c #90ccf7", +"fhY c #90cff8", +"ad0 c #90d409", +"fn8 c #90dffb", +"fch c #90e3fb", +"fce c #90eefc", +"#6J c #90ef03", +"#Db c #9104e7", +"ai8 c #913b39", +"ai7 c #914443", +"aoF c #914d4c", +"ai5 c #915756", +"fJ9 c #915d69", +"fM0 c #915e6a", +"fpA c #916064", +"e9H c #916066", +"fM2 c #91606b", +"fpz c #916164", +"f16 c #91626a", +".Br c #91631a", +"fsQ c #916366", +"fP6 c #91636e", +"fsS c #916467", +"eUw c #916568", +"fBN c #91656b", +"fpc c #91666e", +"eUz c #916768", +"fSV c #91676f", +"eP0 c #91686a", +"fQu c #91686c", +"fge c #91686e", +"fYH c #916870", +".Kv c #91692c", +"e9S c #916969", +"fvS c #916971", +".N7 c #916a2d", +"fy4 c #916c73", +"fBp c #916d73", +"fBm c #916e75", +"fDX c #916f74", +"enx c #917270", +"d9H c #917273", +"fPH c #917376", +"fMA c #917378", +"ai2 c #917572", +"gPp c #917574", +"gPr c #917575", +"gNX c #917776", +"d7n c #917874", +"f1w c #91787c", +"d7r c #917975", +"e65 c #917a74", +"d7t c #917b75", +"b4P c #917d68", +"eSq c #917d75", +"d9U c #917e77", +"fyA c #917e80", +"gnN c #917e82", +"eAq c #917f75", +"bpU c #91806b", +"frX c #918182", +"cxq c #918270", +"dUd c #918283", +"cr9 c #91836c", +"b4m c #918472", +"#W5 c #918483", +"cuH c #918571", +"bH6 c #918777", +"gdv c #91878a", +"bY# c #918a78", +"dG1 c #918a82", +"dEZ c #918e85", +"gDz c #918e8b", +"f6y c #918e92", +"ash c #918f91", +"fDp c #918f93", +"gFh c #91908e", +"#8K c #919091", +"gnx c #919092", +"fUk c #919094", +"fUs c #919098", +"#2G c #91918e", +"bG7 c #919190", +"#SH c #919191", +"cGh c #919192", +"c4A c #91928a", +"cfW c #91928c", +"#VL c #919292", +"a36 c #919293", +"#FI c #919297", +"#iG c #919393", +"#PT c #919399", +"dku c #91948a", +"dxx c #91948b", +"bKQ c #91948d", +"gF1 c #919496", +"#Jm c #919498", +"#j2 c #919595", +"bEA c #919596", +"#Zd c #919599", +"b2a c #91968f", +"ayM c #919692", +"fGe c #919699", +"b32 c #91978f", +"bZ3 c #919791", +"cmp c #919792", +"aEC c #919793", +"#Sh c #919795", +"c15 c #919796", +"f8x c #91979b", +"ahO c #919890", +"br5 c #919891", +"blp c #919893", +"aKm c #919895", +"cjC c #919896", +"cHv c #91998e", +"dt4 c #91998f", +"bU9 c #919991", +"blg c #919993", +"ahk c #919999", +"cqP c #91999a", +"a.H c #919a92", +"aF# c #919a94", +"b16 c #919a95", +"#5o c #919a97", +"c0I c #919a99", +"b7V c #919a9c", +"cvB c #919b92", +"bPr c #919b93", +"bcj c #919b95", +"bVT c #919b96", +"#2i c #919b98", +"aej c #919b99", +"#Oo c #919b9a", +"#ow c #919b9b", +"bXH c #919b9c", +"dgX c #919c93", +"b1s c #919c94", +"bXQ c #919c95", +"bcn c #919c96", +"#YX c #919c99", +"bfp c #919c9a", +"#Or c #919c9b", +"ga3 c #919c9e", +"cYG c #919d93", +"b9c c #919d99", +"#YZ c #919d9a", +"#Hp c #919d9b", +"aTD c #919d9c", +"c5# c #919d9d", +"#HH c #919e98", +"#Vt c #919e9c", +"f6j c #919e9f", +"c8E c #919f95", +"#AC c #919f9a", +"cCo c #919f9e", +"#Mu c #919f9f", +"aNG c #919fa0", +"#D8 c #91a09b", +"eZa c #91a0a0", +"fRW c #91a0a1", +"d.x c #91a197", +"dbD c #91a199", +"dvZ c #91a19a", +"#BX c #91a1a0", +"fuN c #91a1a1", +"fuK c #91a1a3", +"fum c #91a1ba", +"cPt c #91a29e", +"dTB c #91a2a2", +"fx1 c #91a3a3", +"dv0 c #91a49b", +"ds# c #91a49f", +"fF3 c #91a4a4", +"dod c #91a5a1", +"e.N c #91a5a6", +"ffg c #91a6a7", +"biw c #91a88f", +"fq9 c #91aed4", +"e4C c #91dfae", +"fe0 c #91eafe", +"ajb c #920607", +"aj. c #922728", +"a82 c #9241b7", +"#TP c #924702", +"fzy c #925f66", +"fY0 c #926069", +"fpB c #926366", +"fjs c #926367", +"f9P c #92636b", +"fHx c #92656a", +"fY8 c #92656f", +"fj. c #92666f", +"fYE c #92676e", +"faP c #92686a", +"fVL c #926870", +"fMO c #926871", +"eR6 c #926969", +"fMP c #926971", +".LJ c #926a2c", +"fNm c #926a6c", +"fBq c #926a71", +".MQ c #926b2b", +"fvT c #926b73", +"e0D c #926c6b", +"fBs c #926d74", +"gs# c #926e75", +"bfN c #92709c", +"fJM c #927278", +".Fc c #927340", +"fTE c #927373", +"edY c #927472", +"e#U c #927473", +"d9F c #927474", +"d7k c #927574", +"gPs c #927575", +"el. c #927672", +"gPq c #927677", +"gdW c #92767a", +"gNW c #927776", +"exI c #927871", +"fJC c #92797d", +"#z7 c #927b7d", +"d4Y c #927c77", +"e66 c #927d75", +"e#6 c #927d76", +"gv2 c #927d80", +"bWI c #927f68", +"caF c #928066", +"cuU c #92806a", +"eCu c #928076", +"dUQ c #92807a", +"b.O c #92816a", +"beU c #92816c", +"dZ1 c #92817b", +"dnD c #92827d", +"cax c #92836c", +"ccP c #92836d", +"cmT c #92846c", +"b6p c #928470", +"bb2 c #928472", +"avj c #928483", +"eqC c #92857a", +"eiW c #92867a", +"ai0 c #928787", +"gbq c #92888b", +"df5 c #92898b", +"eco c #928c80", +"bbx c #928e83", +"c1j c #928e8a", +"bDk c #928f87", +"gD2 c #928f91", +"dJd c #929085", +"g#c c #929093", +"fGl c #929094", +"e7r c #929096", +"gF3 c #92918f", +"fRs c #929195", +"gFW c #929196", +"e4i c #929197", +"fRz c #929199", +"dG7 c #929289", +"fO4 c #929294", +"#Cd c #929297", +"b7. c #92938d", +"gHd c #929391", +"bG9 c #929399", +"#kM c #929494", +"cPK c #929495", +"ghu c #929496", +"bul c #929497", +"bm1 c #929498", +"dBt c #929589", +"dzi c #92958c", +"bU1 c #92958e", +"bsW c #929591", +"ceu c #929599", +"dtV c #92968c", +"cFB c #92968d", +"#ju c #929696", +"b34 c #929790", +"#8# c #929793", +"#jm c #929796", +"ejx c #92979b", +"cqw c #92988e", +"bU8 c #929890", +"a2k c #929894", +"#Pu c #929896", +".L4 c #929898", +"dfb c #92989c", +"asK c #929991", +"bog c #929992", +"cjI c #929993", +"crI c #929994", +"cjF c #929995", +"cqA c #929a8f", +"#5m c #929a98", +"#Om c #929a99", +"bVh c #929a9a", +"bVJ c #929a9c", +"bXS c #929b93", +"b3Y c #929b95", +"ceI c #929b97", +"c3H c #929b99", +"#ov c #929b9a", +"dfm c #929b9b", +"cNR c #929b9c", +"bTB c #929b9d", +"cyo c #929b9f", +"aeI c #929c94", +"b#w c #929c96", +"#KY c #929c9a", +"a.e c #929c9b", +"bVN c #929c9d", +"fFr c #929caa", +"c53 c #929d93", +"c3a c #929d94", +"abH c #929d95", +"bTJ c #929d97", +"akg c #929d99", +"#Op c #929d9b", +"#Xf c #929d9c", +"ge9 c #929d9f", +"c4J c #929e94", +"bXN c #929e97", +"#ox c #929e9b", +"#Aq c #929e9c", +"da# c #929f95", +"bGF c #929f9a", +"cvH c #929f9b", +"#Oq c #929f9c", +"#PE c #929f9e", +"fIQ c #929fa1", +"dgZ c #92a096", +"aQt c #92a09f", +"dDP c #92a0a0", +"awu c #92a0a1", +"dd. c #92a197", +"c8M c #92a199", +"daf c #92a19a", +"deZ c #92a19b", +"#wo c #92a19c", +"#AB c #92a19d", +"#wh c #92a19e", +"cNP c #92a19f", +"aQu c #92a1a1", +"dxL c #92a29a", +"dn8 c #92a29b", +"cMr c #92a29e", +"fF7 c #92a2a2", +"fLF c #92a4a3", +"fx4 c #92a4a4", +"d1k c #92a4a5", +"dua c #92a59c", +"ds. c #92a59e", +"dmx c #92a59f", +"dkL c #92a6a0", +"dmz c #92a6a1", +"##Z c #92a6a7", +".5H c #92a7a8", +"ft1 c #92abd7", +"fk3 c #92c7f1", +"fe6 c #92d4f9", +"fn7 c #92defb", +"#Q0 c #92f601", +"arN c #930008", +"aja c #931513", +"ai9 c #933030", +"fzA c #935e64", +"fzz c #935e65", +"ai4 c #93625f", +"fmw c #936266", +"fwn c #936366", +"fsP c #936467", +"f41 c #93646c", +"fpC c #936568", +"fVJ c #93666f", +"gep c #936670", +"fdB c #93676a", +"fW. c #936770", +"fYG c #936971", +"fPV c #936972", +"ai3 c #936a68", +"eP9 c #936a6a", +"fKt c #936a6c", +".Ie c #936c2d", +"fPT c #936c73", +"gqa c #936d74", +"fEc c #936e75", +"a6J c #936f68", +"fD2 c #937075", +".FJ c #93713a", +"epZ c #937275", +"eir c #937475", +"f4B c #937477", +".lG c #937544", +"eiC c #937773", +"eO# c #937871", +"fDO c #93787c", +"#2J c #937968", +"d7s c #937a77", +"dZT c #937a78", +"bQd c #937d65", +"eb6 c #937d76", +"d4Z c #937e79", +"dUJ c #937e7b", +"bUF c #937f68", +"fVl c #938081", +"bhZ c #93816a", +"eHi c #938177", +"dED c #93817f", +"cmV c #93826b", +"bh0 c #93826e", +"cuX c #93826f", +"bnU c #938270", +"eLX c #938278", +"dPw c #938284", +"aa8 c #938384", +"gtF c #938386", +"aea c #938484", +"b8m c #938570", +"bbX c #938572", +"be2 c #938574", +"aGr c #938584", +"bh3 c #938675", +"bDE c #938778", +"a7S c #93897a", +"#P7 c #938a63", +"bHW c #938a7b", +"gGz c #938b89", +"d7P c #938f83", +"gvx c #939191", +"#yR c #939261", +"#Zh c #93928f", +"bvh c #939292", +"cH9 c #939293", +"bEN c #939392", +"#MR c #939393", +"ck1 c #93948e", +"eAN c #939494", +"bTe c #939495", +"c5W c #93958d", +"gGk c #939592", +"#iH c #939594", +"#m9 c #939595", +"bg3 c #939596", +"bjT c #939598", +"bAJ c #939599", +"#MM c #93959a", +"cDY c #93968d", +"#n2 c #939696", +"c6p c #93969a", +"#2A c #93969b", +"acP c #93969c", +"#nL c #939796", +"b9B c #93979a", +"b2c c #939891", +"ak9 c #939894", +"atC c #939896", +"#nN c #939897", +"frE c #93989b", +"ddp c #93989c", +"dBA c #93998e", +"cKK c #93998f", +"bSU c #939991", +"aNr c #939995", +"#Md c #939997", +".6v c #939998", +"gaX c #93999c", +"cV0 c #939a91", +"aeK c #939a92", +"bvD c #939a93", +"gFH c #939a9b", +"cgj c #939a9c", +"f0E c #939a9d", +"cnY c #939b90", +"dBB c #939b92", +"bQL c #939b93", +"bPt c #939b95", +"#64 c #939b9b", +"bI9 c #939b9d", +"fRS c #939b9e", +"bOM c #939c94", +"bii c #939c97", +"bJK c #939c98", +"#8i c #939c9a", +"app c #939c9b", +"ccd c #939c9d", +"bTC c #939c9e", +"cK8 c #939c9f", +"cdN c #939d94", +"ahD c #939d95", +"bZX c #939d98", +"ake c #939d9a", +"akd c #939d9c", +"b3S c #939d9e", +"f#S c #939d9f", +"e2o c #939da0", +"cYF c #939e94", +"bRy c #939e95", +"#XI c #939e96", +"#wP c #939e98", +"ahm c #939e9a", +"#YU c #939e9b", +"#39 c #939e9c", +"cG# c #939e9d", +"gln c #939e9e", +"cYH c #939f95", +"diS c #939f96", +"ciB c #939f9a", +"#7# c #939f9b", +"#Ho c #939f9d", +"a.c c #939f9e", +"dfd c #939f9f", +"da. c #93a096", +"dmq c #93a097", +"#wz c #93a099", +"#KZ c #93a09d", +"bI7 c #93a09e", +"#Sr c #93a09f", +"g.0 c #93a0a0", +"fAG c #93a0a1", +"dah c #93a19a", +"dom c #93a1a1", +"f8B c #93a1a2", +"#Ec c #93a29a", +"#Ed c #93a29b", +"#wp c #93a29d", +"cEj c #93a2a0", +"#gG c #93a2a2", +"c8L c #93a399", +"dbE c #93a39b", +"cK6 c #93a39f", +"#yd c #93a3a2", +"fig c #93a3a3", +"dq. c #93a49b", +"#ef c #93a4a4", +"fAC c #93a5a5", +"f#F c #93a5a7", +"duc c #93a6a0", +"d8p c #93a6a7", +"dob c #93a7a1", +"flg c #93a7a8", +"fri c #93a8a9", +"fbW c #93aada", +"fuj c #93c3ec", +"clM c #93cea0", +"fkW c #93dffa", +"a0P c #940068", +"a3P c #940070", +"aJa c #940228", +"a6p c #9448e6", +"fwk c #946267", +"fwl c #946367", +"fsR c #946569", +"gab c #94656d", +"eXj c #94676a", +"e0q c #94676c", +"fYF c #946871", +"gcl c #946872", +"azj c #946878", +"fg. c #946a72", +"eUx c #946b6b", +"eUA c #946b6c", +"e9R c #946b6d", +"gqk c #946c71", +"eLD c #946d6b", +"gaj c #946e73", +"acZ c #947167", +"fBn c #947177", +"ggH c #947378", +"esy c #947476", +"e#K c #94757a", +"d2m c #947978", +"egl c #947b75", +"d4X c #947d79", +"eAj c #947e75", +"equ c #947f76", +"cm5 c #948065", +"d2w c #94807b", +"csf c #94816a", +"eOg c #948278", +"dZ3 c #94827b", +"dXr c #94827c", +"bpT c #94836a", +"bkR c #94836f", +"#6V c #948384", +"es4 c #948479", +"aAB c #948485", +"bmW c #948584", +"axX c #948585", +"c.f c #94866f", +"b2u c #948772", +"be3 c #948777", +"b.Z c #948878", +"das c #948888", +"bNK c #948977", +"be4 c #94897b", +"cH6 c #948987", +"dSv c #948b82", +"df4 c #948c8e", +"bJ3 c #948e81", +"gGa c #94918a", +"dQf c #949286", +"dN2 c #949287", +"f8T c #949295", +"eX9 c #949396", +"e7u c #949398", +"fg8 c #949399", +"fXk c #94939b", +".uG c #949493", +"asj c #949494", +"e4d c #949495", +"bG5 c #949496", +"dgI c #94958d", +"cbh c #94958f", +"aca c #949592", +"bCU c #949599", +"dvN c #94968d", +"aR3 c #949697", +"aU7 c #949698", +"#8H c #94969a", +"a#P c #94969b", +"b85 c #949790", +"#gx c #949797", +"aYa c #949798", +"gFu c #94979a", +"afP c #94979c", +"#hD c #949898", +"#zP c #949900", +"dzn c #94998f", +"aBD c #949995", +"#d2 c #949999", +".NF c #94999a", +"bZ# c #949a92", +"crJ c #949a96", +"a#w c #949a98", +"#UZ c #949a99", +".Rd c #949a9a", +"dvP c #949b90", +"and c #949b93", +"bqe c #949b94", +".X6 c #949b9a", +".M8 c #949b9b", +"b3o c #949b9d", +"fin c #949b9e", +"cKN c #949c91", +"bXW c #949c92", +"dp2 c #949c93", +"bSV c #949c94", +"bZ0 c #949c95", +"br8 c #949c96", +"a.b c #949c9b", +"cyg c #949c9d", +"bXg c #949c9e", +"cHu c #949d92", +"avA c #949d95", +"b54 c #949d97", +"cg9 c #949d99", +"#2h c #949d9a", +"#37 c #949d9c", +"c3# c #949e95", +"bQN c #949e96", +"bMN c #949e99", +"#Ro c #949e9d", +"cCp c #949e9e", +"gnl c #949e9f", +"bRo c #949ea0", +"gjd c #949ea1", +"#XH c #949f97", +"b1t c #949f98", +"bXO c #949f99", +"aem c #949f9b", +"#Sq c #949f9e", +"cEk c #949f9f", +"e2n c #949fa2", +"c54 c #94a096", +"b#D c #94a09c", +"#lH c #94a09e", +"f#O c #94a0a1", +"dn6 c #94a199", +"#wC c #94a19b", +"c#g c #94a19d", +"bVf c #94a19f", +"ciD c #94a1a0", +"fIW c #94a1a2", +"d.s c #94a298", +"dg1 c #94a29b", +"cFZ c #94a2a0", +"gja c #94a2a2", +"e8I c #94a2a4", +"dr4 c #94a39a", +"dzB c #94a39b", +"d.D c #94a39c", +"d.A c #94a39d", +"#wr c #94a39e", +"#wg c #94a3a0", +"#I5 c #94a3a3", +"fOL c #94a3a4", +"d.y c #94a49a", +"dr5 c #94a49b", +"dxK c #94a49c", +"d.C c #94a49d", +"ffp c #94a4a4", +"fle c #94a4a5", +"dxM c #94a59d", +"fxZ c #94a5a5", +"dn9 c #94a69e", +"dub c #94a69f", +"cCx c #94a6a2", +"fAD c #94a6a6", +"e8A c #94a6a8", +"dv2 c #94a7a1", +"fib c #94a7a8", +"dqc c #94a8a1", +"#h# c #94a8a3", +"fol c #94a8a9", +"dv1 c #94a9a0", +".Y# c #94aba9", +"fq8 c #94c0ec", +"fq3 c #94d0fa", +"f#q c #94e8fb", +"fcd c #94eefd", +"#GT c #94f306", +"auF c #950262", +"fJ8 c #95616c", +"fwm c #956367", +"fpl c #95636c", +"fpy c #956468", +"e3h c #95646e", +"fmh c #95666e", +"fYR c #956671", +"fHb c #956770", +"faN c #95686b", +"gcr c #956873", +"e9O c #95696b", +"fl8 c #956973", +"gkK c #956a73", +"gck c #956b74", +"fsp c #956c74", +"eNW c #956d6d", +"fgs c #956d6e", +"fPW c #956d75", +"gql c #956e74", +"ez1 c #957072", +"fYB c #957278", +"gd6 c #957378", +".FA c #957441", +"esz c #957577", +"ep1 c #957578", +"ek9 c #957874", +"fyP c #95787c", +".s8 c #95794b", +"egf c #957975", +"f9o c #95797d", +"#DJ c #957f81", +"ghV c #957f85", +"bhY c #95806a", +"d2v c #95807b", +"#T0 c #958081", +"bhH c #958166", +"bkQ c #95816d", +"fvn c #958183", +"gbF c #958185", +"bYI c #958269", +"bnT c #95826e", +"d2x c #95827c", +"f4f c #958285", +"eHj c #958379", +"dZ2 c #95837d", +"cpz c #95856e", +"bh1 c #958572", +"c46 c #958584", +"fGx c #958585", +"bkS c #958674", +"be1 c #958675", +"aX6 c #958686", +"bo2 c #958687", +"a95 c #958787", +"bwu c #958888", +"b2q c #958977", +"cGe c #958988", +"elw c #958b7f", +"dQb c #958d84", +"#Dr c #958e00", +"d5i c #958f83", +"gFC c #958f8f", +"bHP c #959184", +"bEO c #959190", +"dSA c #959287", +"gDs c #959292", +"bDj c #959389", +"gDl c #959391", +"gE6 c #95948f", +"ftE c #95949b", +"dvD c #95958b", +"eg6 c #959591", +"#30 c #959595", +"e1e c #959597", +"#Jr c #959695", +"#kH c #959697", +"bwy c #95969a", +"#iI c #959797", +"#jG c #959798", +"aTJ c #95979b", +"dE9 c #95988d", +"cxU c #95988f", +"bQC c #959891", +"#ku c #959898", +"c#P c #95989b", +"#JB c #959961", +"b90 c #959992", +"#nM c #959998", +"gFg c #959999", +"fXJ c #95999d", +"bQG c #959a93", +"aip c #959a96", +"#f1 c #959a9a", +"dnW c #959b91", +"#8f c #959b98", +"#IL c #959b99", +".We c #959b9b", +"d.S c #959b9d", +"cvt c #959c91", +"aVu c #959c94", +"bz5 c #959c95", +"ddt c #959c99", +".UI c #959c9c", +"fFY c #959ca0", +"bZZ c #959d95", +"#Rm c #959d9c", +"c0H c #959d9f", +"c8z c #959e95", +"bSW c #959e96", +"bNj c #959e98", +"bLx c #959e99", +"#2f c #959e9b", +"#0K c #959e9d", +"cAv c #959e9f", +"bPi c #959ea0", +"cbx c #959f96", +"bZa c #959f97", +"#Vr c #959f9e", +"#Ua c #959f9f", +"bPj c #959fa0", +"fux c #959fa2", +"cx9 c #95a097", +"bVR c #95a09a", +"abh c #95a09c", +"b#E c #95a09d", +"#Xe c #95a09e", +"dhp c #95a0a0", +"frf c #95a0a1", +"flb c #95a0a2", +"c0i c #95a197", +"#RG c #95a19a", +"bIZ c #95a19b", +"abi c #95a19d", +"#69 c #95a19e", +"#Ar c #95a19f", +"#lC c #95a1a0", +"c3F c #95a1a1", +"e2m c #95a1a2", +"dkE c #95a298", +"dn5 c #95a299", +"#Uv c #95a29b", +"b5q c #95a29e", +"bL. c #95a29f", +"#Hn c #95a2a0", +"ay3 c #95a2a1", +"b3n c #95a2a2", +"d.r c #95a399", +"#HI c #95a39c", +"cHP c #95a3a2", +"eZ# c #95a3a4", +"dp9 c #95a49c", +"c8N c #95a49d", +"#ws c #95a49f", +"#wf c #95a4a1", +"dr6 c #95a59b", +"d.z c #95a59c", +"dmt c #95a59f", +"cR6 c #95a5a2", +"fih c #95a5a4", +"dMv c #95a5a5", +"fRV c #95a5a6", +"deX c #95a69b", +"dqa c #95a6a0", +"fRT c #95a6a6", +"dxN c #95a79e", +"fOM c #95a7a6", +"d6c c #95a7a7", +"ffk c #95a7a9", +"dr9 c #95a89f", +"do# c #95a8a2", +"ee3 c #95a8a9", +"fuE c #95a9a9", +"eaT c #95a9aa", +".Jn c #95aaa7", +"ehj c #95aaab", +"f.4 c #95b9cf", +"fob c #95bce5", +"dYi c #95c697", +"fui c #95c7ed", +"foa c #95d0f6", +"f#p c #95ebfa", +"#NX c #95f304", +"amc c #960103", +"aup c #964543", +"aCB c #965c5e", +"fwj c #966468", +"fjr c #96656a", +"e6t c #96656e", +"fjp c #966668", +"fpx c #966669", +"fmk c #96666f", +"fdy c #96686c", +"gcj c #966972", +"e6I c #966a6c", +"e9Q c #966b6e", +"f9A c #966b75", +"gkJ c #966c74", +"gem c #966c75", +"eXp c #966d6d", +"ggv c #966d75", +".Gu c #966e2e", +"e9T c #966e6e", +"ggt c #967176", +"gqj c #96747a", +"esx c #967678", +"ed0 c #967876", +"ed3 c #967b76", +"bkP c #96806a", +"bkK c #968269", +"cpL c #96826a", +"bnR c #96826b", +"bnS c #96826c", +"eLV c #968279", +"beG c #96836b", +"eQr c #96837a", +"f1n c #968384", +"dUP c #96847e", +"ase c #968485", +"#92 c #968486", +"bpS c #96856a", +"bbI c #96856e", +"eLY c #96857b", +"dXp c #96857f", +"bjN c #968686", +"aJj c #968687", +"cke c #96876e", +"ahc c #968787", +"dlY c #968883", +"b0q c #968974", +"cCL c #968988", +"cEv c #968989", +"cpx c #968a72", +"bbW c #968a77", +"b2s c #968b78", +"fU8 c #968b8f", +"bLS c #968c7d", +"bBj c #968c7e", +"dU1 c #968c83", +"ftO c #968d96", +"bBA c #968e84", +"dh1 c #968e8f", +"dLx c #969086", +"d7N c #969286", +"cXa c #96938f", +"gGs c #969396", +"gFV c #969399", +"bEP c #96939a", +"bEK c #969491", +"g#b c #969497", +"dLD c #969589", +"bfz c #969594", +"#Ai c #96959a", +"ftw c #96959d", +"baJ c #969676", +"dJe c #96968b", +"dgH c #96968f", +"aon c #969695", +"gpi c #969697", +"acb c #969794", +"aj8 c #969796", +"bow c #96979a", +"a8O c #96979c", +"ck5 c #969890", +"b7a c #969891", +"#jH c #969898", +"aJr c #96989a", +"aQz c #96989c", +"bHi c #96989d", +"dzj c #969990", +"#iJ c #969998", +"#gt c #969999", +"#l5 c #96999a", +"b7T c #96999d", +"awz c #96999e", +"ayR c #969a98", +"#iZ c #969a99", +"#jv c #969a9a", +"fyk c #969a9d", +"ayL c #969b97", +"#mA c #969b99", +"#iq c #969b9a", +"dau c #969b9f", +"dnU c #969c92", +"b75 c #969c94", +"b2# c #969c96", +"#UY c #969c98", +"a#v c #969c9a", +".VD c #969c9c", +"ciE c #969ca0", +"b56 c #969d94", +"a.J c #969d95", +"br6 c #969d96", +"cmo c #969d99", +"cvI c #969d9d", +"b31 c #969e95", +"bXT c #969e97", +"bPp c #969e99", +"abd c #969e9d", +"#2g c #969f9c", +"#0L c #969f9e", +"#Vs c #969f9f", +"fxX c #969fa1", +"cgc c #96a097", +"bSY c #96a098", +"ciu c #96a099", +"bfh c #96a09b", +"#2e c #96a09c", +"dsa c #96a0a0", +"cF0 c #96a0a1", +"fR3 c #96a0a2", +"d.q c #96a197", +"a.z c #96a199", +"#AT c #96a19b", +"ahn c #96a19d", +"#Rn c #96a19f", +"gs9 c #96a1a1", +"gjc c #96a1a2", +"fLM c #96a1a3", +"cYI c #96a298", +"dp6 c #96a299", +"cta c #96a29e", +"bOX c #96a29f", +"#Mr c #96a2a0", +"fIY c #96a2a3", +"dc5 c #96a399", +"dab c #96a39a", +"#AH c #96a39c", +"ciC c #96a39f", +"#wd c #96a3a1", +"aBU c #96a3a3", +"f8D c #96a3a4", +"gu8 c #96a3c1", +"diV c #96a49a", +"dp8 c #96a49c", +"#Eb c #96a49e", +"#As c #96a4a1", +"e2l c #96a4a5", +"dn7 c #96a59d", +"d.B c #96a59e", +"#wq c #96a5a0", +"#we c #96a5a2", +"d.w c #96a69c", +"cCn c #96a6a1", +"#Fu c #96a6a4", +"fRU c #96a6a6", +"frh c #96a6a7", +"dad c #96a79c", +"fAz c #96a7a7", +"fx7 c #96a8a8", +"dmw c #96a9a3", +"dmA c #96a9a5", +"fct c #96a9a9", +"fuF c #96aaaa", +"frm c #96aaab", +"#fR c #96aba6", +"fuk c #96bbe3", +"clO c #96cc95", +"d5J c #96cd93", +"fci c #96d6f8", +"ag4 c #96d80e", +"fhR c #96e3fc", +"alQ c #972724", +"bcL c #9750a8", +"aQI c #976281", +"fmv c #976569", +"fpg c #976570", +"fmu c #976669", +"fgo c #97666b", +"e3j c #97666e", +"fgp c #97686b", +"fsD c #976870", +"fdz c #97696b", +"fdA c #97696c", +"geo c #976a74", +"e9P c #976b6d", +"eXo c #976c6d", +"e3y c #976c6e", +"gaf c #976c75", +"e6J c #976d6f", +"fdj c #976d73", +"goA c #976d74", +"f45 c #976d75", +"fSW c #976e76", +"giz c #976f76", +"fVK c #976f77", +"fST c #977179", +"gqb c #977278", +"eN1 c #97736f", +"fy0 c #97747a", +"d7b c #97797d", +"enE c #977b77", +"d4Q c #977c7b", +"d9M c #977f7b", +"eSn c #978079", +"bHd c #978183", +"d40 c #97827d", +"bJq c #978284", +"dXn c #97837e", +"dRJ c #978486", +"cmX c #97856c", +"chD c #97856e", +"eLZ c #97857a", +"dXo c #97857e", +"dUO c #97857f", +"c3z c #978686", +"aRV c #978687", +"bIe c #978777", +"cww c #978786", +"bqN c #978788", +"chz c #978871", +"dvm c #978887", +"bue c #978889", +"cau c #978973", +"bh2 c #978976", +"byA c #978989", +"d.P c #97898a", +"fXX c #978c8f", +"a3N c #978f55", +"eev c #979084", +"egJ c #979085", +"dXG c #979388", +"cZU c #97938f", +"gFj c #979390", +"gFN c #979392", +"dU7 c #979489", +"f6z c #979598", +"e1j c #97959b", +"ejo c #979693", +"fAP c #979698", +"#v4 c #97969b", +"ahi c #97969c", +"#FR c #979797", +"cBd c #979892", +"gFR c #979898", +"#fr c #979899", +"fSd c #97989a", +"aZM c #97989b", +"b#L c #97989c", +"#7S c #979996", +"amJ c #979998", +"#jI c #979999", +"gEv c #97999b", +"#Hi c #97999c", +"#DU c #97999d", +"atS c #97999e", +"aB3 c #97999f", +"cHn c #979a91", +"crW c #979a93", +"#na c #979a9a", +"avp c #979a9b", +"#v7 c #979a9d", +"aiM c #979a9e", +"alq c #979a9f", +"f8N c #979b9c", +"b33 c #979c95", +"afs c #979c98", +"gHX c #979c9b", +"c87 c #979c9e", +"fI3 c #979c9f", +"dbS c #979ca0", +"cvs c #979d93", +"bZ4 c #979d95", +"bZ1 c #979d96", +"b#q c #979d99", +"#5j c #979d9a", +"#Fb c #979d9b", +".X2 c #979d9d", +"cNx c #979e92", +"dBC c #979e93", +"aA1 c #979e96", +"btI c #979e97", +"#YQ c #979e9b", +".1d c #979e9d", +".PW c #979e9e", +"bx8 c #979ea0", +"fD. c #979ea1", +"fOK c #979ea2", +"cvw c #979f94", +"abN c #979f97", +"bNm c #979f9a", +"a#y c #979f9d", +"cMx c #979f9f", +"c12 c #979fa1", +"b3h c #97a098", +"bqj c #97a09a", +"bs# c #97a09b", +"#YT c #97a09d", +"cWn c #97a0a0", +"cHQ c #97a0a1", +"cJt c #97a0a2", +"cdO c #97a198", +"bRz c #97a199", +"#Er c #97a19c", +"ahl c #97a19f", +"#Xd c #97a1a0", +"f0P c #97a1a1", +"dst c #97a1a2", +"fcF c #97a1a3", +"fh9 c #97a1a4", +"dxG c #97a299", +"cn5 c #97a29a", +"bZf c #97a29c", +"bTI c #97a29e", +"bVQ c #97a29f", +"aei c #97a2a0", +"dja c #97a2a3", +"c7p c #97a399", +"dp7 c #97a39b", +"#Eg c #97a39c", +"cH0 c #97a39e", +"b7o c #97a39f", +"#Mt c #97a3a0", +"#mm c #97a3a1", +"aHM c #97a3a2", +"deR c #97a49a", +"dmp c #97a49b", +"#wB c #97a49d", +"aKx c #97a4a3", +"dBM c #97a59e", +"#I4 c #97a5a3", +"cCC c #97a5a4", +"dbC c #97a69b", +"dt9 c #97a69d", +"dag c #97a69f", +"#Ay c #97a6a1", +"fOO c #97a6a6", +"fok c #97a6a7", +"dvW c #97a79d", +"cFY c #97a7a3", +"cJs c #97a7a6", +"dMw c #97a7a7", +"dvY c #97a8a0", +"#BW c #97a8a6", +"#nE c #97a9a1", +"f#G c #97a9ab", +"#F4 c #97aa4c", +"dmy c #97aaa4", +"dkM c #97aaa7", +"fuB c #97aaaa", +"ehm c #97aaab", +"f.5 c #97aada", +"dxO c #97aba3", +"fon c #97abac", +"frk c #97acad", +"##o c #97adab", +"ful c #97b1d3", +"fuh c #97c6ec", +"axQ c #97d20e", +"f#r c #97e1fa", +"e4B c #97e2ae", +"#Dm c #97f705", +"a6L c #980086", +"aIF c #981cef", +"#6L c #982100", +"a2N c #98638e", +"fpp c #98656d", +"fjq c #98676a", +"fgn c #98686d", +"fsH c #98686f", +"fmt c #98696c", +"gaa c #986971", +"fzo c #986972", +"fmc c #986973", +"faO c #986a6d", +"fPY c #986a75", +"e9A c #986b72", +"fpd c #986b74", +"gmJ c #986c73", +"e0z c #986d6e", +"a#U c #986e66", +"eUy c #986e6f", +"eNR c #986e70", +"fJY c #986e74", +"gel c #986e75", +"fpb c #986e77", +"eLC c #986f6e", +"e0A c #986f70", +"gmI c #986f75", +"ggw c #986f77", +".Bz c #98702f", +"ePW c #987073", +"gcm c #987077", +".nW c #987236", +"eJj c #987371", +"ek4 c #987977", +"eiv c #987979", +"egc c #987a78", +"fa3 c #987b77", +"e97 c #987b78", +"ega c #987b7b", +"e#L c #987b7d", +"egg c #987c78", +"d9I c #987c7a", +"fYn c #987c81", +"gt6 c #987d80", +"d2q c #987f7b", +"dXg c #98807e", +"bkO c #98826c", +"bRg c #988386", +"bkN c #98846d", +"bTr c #988486", +"bnQ c #98866d", +"aM# c #988687", +"dXq c #988780", +"aj6 c #988788", +"ccS c #988871", +"be0 c #988874", +"amH c #988888", +"cs# c #988971", +"cpy c #988973", +"b8j c #988a75", +"a7N c #988a76", +"czH c #988a78", +"b8l c #988b75", +"bbS c #988b78", +"bbT c #988b79", +"cQ0 c #988b8b", +"dbP c #988c8b", +"cWs c #988d8b", +"bWa c #988e7b", +"dh2 c #988f90", +"bLN c #989081", +"a4E c #989183", +"gFz c #989592", +"f8R c #989699", +"f3m c #9896a0", +"asi c #989798", +".UB c #98979c", +"f0n c #98979d", +"f3l c #98979f", +"dJh c #98988d", +"cCO c #989898", +".WU c #989899", +"f.z c #98989d", +"czi c #989993", +"cia c #989994", +"eg3 c #98999b", +"bt3 c #98999d", +"api c #989a99", +"#kL c #989a9a", +"ejm c #989a9b", +"aGz c #989a9c", +"#Ak c #989a9e", +"cae c #989b94", +"b9h c #989b97", +"#jX c #989b9b", +"b3Q c #989b9e", +"az. c #989b9f", +"cuu c #989c95", +"#mD c #989c9b", +"cUX c #989c9e", +"bLn c #989c9f", +"#7P c #989d99", +"#Yh c #989d9a", +"dkT c #989d9f", +"#zI c #989e07", +"dxA c #989e94", +"bZ5 c #989e96", +"bXU c #989e97", +"bVV c #989e98", +"aHw c #989e9a", +"aEE c #989e9b", +"#8g c #989e9c", +".RG c #989e9e", +"bU7 c #989f97", +"bvE c #989f98", +"bTN c #989f99", +"aNs c #989f9b", +".1c c #989f9f", +"b1y c #989fa1", +"fOY c #989fa2", +"bGL c #989fa3", +"cMc c #98a095", +"asI c #98a098", +"b18 c #98a09c", +"c3G c #98a09f", +"bZl c #98a0a1", +"c1Z c #98a0a2", +"cs5 c #98a198", +"#YS c #98a19e", +"#66 c #98a1a0", +"cXI c #98a1a1", +"fox c #98a1a3", +"bW9 c #98a299", +"#HM c #98a29a", +"#Es c #98a29d", +"#Vl c #98a29f", +"a.d c #98a2a0", +"#Sp c #98a2a1", +"#ng c #98a2a2", +"doe c #98a2a3", +"a.B c #98a39b", +"bZe c #98a39c", +"bXP c #98a39d", +"akh c #98a39f", +"cbG c #98a3a0", +"#Ms c #98a3a1", +"glm c #98a3a3", +"gjf c #98a3a4", +"cXo c #98a49a", +"dvU c #98a49b", +"#wQ c #98a49e", +"b5p c #98a49f", +"b3l c #98a4a0", +"b5m c #98a4a1", +"#PD c #98a4a2", +"dBH c #98a59b", +"#AO c #98a59c", +"#wA c #98a59e", +"bx7 c #98a5a2", +"#I1 c #98a5a3", +"aNF c #98a5a4", +"dt8 c #98a69c", +"dn4 c #98a69d", +"#AK c #98a69e", +"#j5 c #98a6a6", +"g.Y c #98a6a7", +"dzC c #98a79f", +"#AE c #98a7a0", +"#wn c #98a7a1", +"#wu c #98a7a2", +"fLH c #98a7a7", +"c8K c #98a89e", +"dms c #98a8a1", +"cHO c #98a8a5", +"#yc c #98a8a7", +"fuM c #98a8a8", +"fia c #98a8a9", +"dvX c #98a99f", +"fx0 c #98a9a9", +"do. c #98aba4", +"f#A c #98abab", +"flf c #98abac", +"frn c #98acad", +"frl c #98adae", +"ftU c #98af8b", +"gGK c #98b3a7", +"#CA c #98ce2f", +"e4D c #98d2be", +"#TN c #98ee06", +"bcQ c #9903fa", +"alR c #991d19", +"bfQ c #993bd2", +"baz c #9954d9", +"a5Q c #99648f", +"e6s c #996870", +"f9O c #996971", +"f15 c #996a72", +"e0r c #996b6f", +"e3g c #996b73", +"gcq c #996b75", +"fNa c #996c73", +"goz c #996d74", +"eRY c #996e6e", +"gmK c #996e75", +"f7n c #996e78", +"e3d c #996f76", +"ggx c #997078", +"giy c #997079", +"ggB c #997179", +"eB5 c #997275", +".qv c #997337", +"fpa c #99737a", +"fy5 c #99767c", +"eiw c #997b79", +"fdP c #997c78", +"guJ c #997c80", +"esW c #99817b", +"eUW c #99857e", +"bpR c #99866c", +"b0X c #99866d", +"bhX c #99866e", +"bgX c #998688", +"brK c #998770", +"bsy c #998789", +"cOa c #998987", +"cPH c #998988", +"cMJ c #99898a", +"b3N c #998a8b", +"b1T c #998b8c", +"cXN c #998d8d", +"b0n c #998e7c", +"gIi c #99908e", +"bJ1 c #999283", +"eFq c #999496", +"dJc c #99958b", +"gFK c #999693", +"ghy c #99969a", +"dLA c #99978a", +"f8S c #99979a", +"f0i c #9997a2", +"gto c #99989a", +"cQ8 c #99989c", +"coY c #99989d", +"fOu c #9998a0", +"f0p c #9998a1", +"dJg c #99998d", +"dG9 c #99998f", +"b9j c #999997", +"gFY c #999998", +".BH c #999999", +"bVE c #99999b", +"gve c #99999e", +"dJf c #999a8f", +"dmd c #999a93", +"bMW c #999a9f", +"gE7 c #999aa2", +"gF6 c #999b9a", +"#oo c #999b9b", +"#eU c #999b9c", +"asn c #999b9d", +"gFS c #999c99", +"#jJ c #999c9c", +"#hu c #999c9d", +"aKD c #999c9f", +"bXF c #999ca0", +"aqZ c #999ca1", +"bET c #999ca4", +"#lV c #999d9c", +"b2b c #999e97", +"#Yf c #999e9c", +"b2. c #999f98", +"cWz c #999f9a", +"big c #999f9b", +"cXT c #999f9c", +"afv c #999f9d", +"ddv c #999f9e", +".Wf c #999f9f", +"gFE c #999fa1", +"avC c #99a098", +"btJ c #99a099", +"acq c #99a09b", +"ais c #99a09d", +"a#x c #99a09e", +".Y4 c #99a09f", +"fil c #99a0a2", +"cJa c #99a196", +"bRC c #99a199", +"e5e c #99a1a2", +"fry c #99a1a3", +"cs0 c #99a295", +"cCf c #99a299", +"bPq c #99a29c", +"#YR c #99a29e", +"#36 c #99a2a1", +"#ot c #99a2a2", +"ffe c #99a2a5", +"cit c #99a39a", +"bQM c #99a39b", +"bZb c #99a39c", +"#Vm c #99a3a0", +"#Sn c #99a3a1", +"#So c #99a3a2", +"dfl c #99a3a3", +"f0O c #99a3a4", +"fcD c #99a3a5", +"cYE c #99a49a", +"dzu c #99a49b", +"cli c #99a49c", +"bQP c #99a49d", +"bK1 c #99a49e", +"bcp c #99a49f", +"bTH c #99a4a0", +"#U# c #99a4a2", +"gd. c #99a4a6", +"dr2 c #99a59b", +"cn4 c #99a59d", +"civ c #99a59e", +"awr c #99a5a3", +"gt. c #99a5a5", +"dby c #99a69c", +"dkD c #99a69d", +"diW c #99a69f", +"#I3 c #99a6a3", +"#I2 c #99a6a4", +"dvV c #99a79d", +"#HJ c #99a7a0", +"fya c #99a7a8", +"dg2 c #99a8a0", +"c8O c #99a8a1", +"#Ft c #99a8a6", +"f5U c #99a8c8", +"dd# c #99a99f", +"dg0 c #99a9a0", +"#gB c #99a9a9", +"dq# c #99aaa2", +"dTA c #99aaaa", +"fuA c #99aaab", +"dmu c #99aba3", +"ffj c #99abad", +"#ny c #99aca6", +"#k8 c #99aca8", +"d3O c #99acad", +"di2 c #99ada7", +"eaS c #99adae", +".5I c #99aeaf", +"fqF c #99b28d", +".31 c #99b8cd", +"dVL c #99c19d", +"aLZ c #99d026", +"#9P c #99fa00", +"aRL c #9a0048", +"alT c #9a0706", +"alL c #9a5453", +"aKN c #9a627a", +"fV0 c #9a676f", +"fph c #9a6772", +"fYZ c #9a6971", +"f7z c #9a6972", +"f40 c #9a6a72", +"fBJ c #9a6a74", +"eXk c #9a6c70", +"gcp c #9a6c76", +"fms c #9a6d70", +"fJZ c #9a6d76", +"e3x c #9a6f70", +"e0j c #9a6f75", +"fMQ c #9a6f77", +"gco c #9a6f78", +".xs c #9a7232", +"fgv c #9a7272", +"fvU c #9a727a", +".sh c #9a7840", +"ek1 c #9a7a7a", +"ekW c #9a7a7d", +"ep0 c #9a7a7e", +"edZ c #9a7c7a", +"egb c #9a7c7b", +"fBg c #9a7f83", +"dUB c #9a8180", +"fGH c #9a8185", +"eHc c #9a827b", +"alG c #9a8282", +"caR c #9a846a", +"bMh c #9a8670", +"dUN c #9a8681", +"fY. c #9a8688", +"aXV c #9a8749", +"aO3 c #9a8788", +"gvO c #9a878c", +"eOh c #9a887e", +"ctZ c #9a8885", +"beZ c #9a8975", +"dhf c #9a8a8b", +"czD c #9a8b76", +"bIh c #9a8b7c", +"cmU c #9a8c73", +"bbV c #9a8c7b", +"cUS c #9a8c8a", +"bxm c #9a8d79", +"bH5 c #9a8d7f", +"elr c #9a8d81", +"enX c #9a8d82", +"bH7 c #9a9084", +"a7A c #9a9185", +"cYp c #9a9692", +"gEz c #9a9697", +"dkS c #9a999e", +"eXT c #9a999f", +"fRA c #9a99a1", +"dLH c #9a9a8f", +"#FQ c #9a9a9a", +"a.a c #9a9b9d", +"#KV c #9a9b9e", +"bvY c #9a9b9f", +"gIj c #9a9c9c", +"bQZ c #9a9c9e", +"cXJ c #9a9c9f", +"bVI c #9a9ca0", +"cK9 c #9a9ca1", +"cR8 c #9a9ca2", +"bOz c #9a9d96", +"#oy c #9a9d9c", +"#eV c #9a9d9d", +"cQW c #9a9da1", +"acn c #9a9e9b", +"cPu c #9a9ea1", +"cU3 c #9aa09a", +"bci c #9aa09c", +"#BD c #9aa09e", +"##t c #9aa09f", +".SB c #9aa0a0", +"gj# c #9aa0a2", +"aeU c #9aa199", +"bRD c #9aa19a", +"bOJ c #9aa19b", +".2h c #9aa1a0", +"#2d c #9aa29f", +"#Sl c #9aa2a0", +"#Pz c #9aa3a0", +"#Vq c #9aa3a2", +"fuU c #9aa3a4", +"fcs c #9aa3a5", +"cdM c #9aa49b", +"bSX c #9aa49c", +"b#x c #9aa49d", +"bOP c #9aa49e", +"#Py c #9aa4a0", +"#PC c #9aa4a3", +"dxP c #9aa4a4", +"dfk c #9aa4a5", +"fcE c #9aa4a6", +"dxF c #9aa59c", +"#4q c #9aa59d", +"b#C c #9aa5a2", +"#Mq c #9aa5a3", +"fR6 c #9aa5a5", +"fcC c #9aa5a6", +"e5x c #9aa5a7", +"c4K c #9aa69c", +"dr3 c #9aa69d", +"a.h c #9aa6a2", +"bcq c #9aa6a4", +"bZk c #9aa6a5", +"b1x c #9aa6a6", +"dzv c #9aa79d", +"#wD c #9aa79e", +"dmr c #9aa79f", +"#AI c #9aa7a0", +"bGK c #9aa7a6", +"dBL c #9aa89d", +"dzw c #9aa89e", +"dg3 c #9aa8a1", +"#Fr c #9aa8a6", +"g.Z c #9aa8a8", +"deW c #9aa99f", +"c7w c #9aa9a1", +"#wx c #9aa9a2", +"cEi c #9aa9a5", +"#Fq c #9aa9a6", +"c8J c #9aaaa0", +"dkG c #9aaaa3", +"cJr c #9aaaa7", +"dxI c #9aaba1", +"fcw c #9aacae", +"#lP c #9aada8", +"d6b c #9aadad", +"fic c #9aadae", +"e.M c #9aaeaf", +"emg c #9aaeb0", +"fug c #9ac2e8", +"clL c #9ad1a0", +"f#s c #9ad4f5", +"e7S c #9adcac", +"fcc c #9aecfd", +"f#o c #9aedfb", +"b#2 c #9b00fa", +"alM c #9b4a49", +"a9w c #9b52e4", +"bfO c #9b59b2", +"alK c #9b5d5c", +"e3i c #9b6b74", +"fjo c #9b6c70", +"eXl c #9b6e72", +"fsv c #9b6f78", +"e6K c #9b7273", +"fSX c #9b727a", +"fMN c #9b737b", +"e3D c #9b7474", +"fTw c #9b7478", +"fWf c #9b757b", +"esG c #9b7877", +".rv c #9b7a44", +"alH c #9b7a78", +"ep2 c #9b7b7e", +"fgF c #9b7d79", +"ege c #9b7d7b", +"e60 c #9b7e79", +"gmk c #9b7e83", +"enF c #9b7f7b", +"fDM c #9b8286", +"dUG c #9b8381", +"eEO c #9b847c", +"e#2 c #9b847e", +"dS. c #9b8482", +"bLi c #9b8588", +"bO. c #9b866e", +"bE0 c #9b8687", +"bPb c #9b8688", +"bnN c #9b876f", +"eSr c #9b8780", +"f6U c #9b8788", +"fSs c #9b878a", +"bnO c #9b886f", +"fA3 c #9b888a", +"cc1 c #9b896f", +"eQs c #9b897f", +"cl9 c #9b8982", +"coT c #9b8985", +"crw c #9b8986", +"fDD c #9b898b", +"bAF c #9b8a8b", +"a9M c #9b8b71", +"c1U c #9b8b8b", +"b5R c #9b8b8c", +"fMb c #9b8b8e", +"a60 c #9b8d8d", +"cY3 c #9b8d8e", +"c#M c #9b8e8d", +"b4k c #9b8f7c", +"buU c #9b8f7f", +"f1. c #9b9194", +"ei3 c #9b9589", +"bLJ c #9b9990", +"eAM c #9b9995", +"f31 c #9b999c", +"gg2 c #9b999e", +"dsd c #9b999f", +"fua c #9b99a4", +"gFv c #9b9a9c", +"bG4 c #9b9a9d", +"dFu c #9b9a9e", +"aZO c #9b9a9f", +"#Jo c #9b9aa0", +"c#k c #9b9aa1", +"ftv c #9b9aa2", +"dJi c #9b9b90", +"bB# c #9b9b94", +"gF4 c #9b9b99", +"bG2 c #9b9b9a", +"apm c #9b9b9b", +"gxa c #9b9b9c", +"abc c #9b9b9d", +"eJ1 c #9b9b9e", +"b3p c #9b9b9f", +"bS9 c #9b9ba0", +"cbK c #9b9ba1", +"f3o c #9b9ba3", +"cfY c #9b9c94", +"cDb c #9b9c96", +"cLh c #9b9c99", +"bHg c #9b9c9c", +"#Ol c #9b9c9f", +"c#j c #9b9ca0", +"bQ0 c #9b9ca1", +"a.6 c #9b9d9a", +"#nd c #9b9d9c", +"dsb c #9b9d9f", +"cUM c #9b9da0", +"c5. c #9b9da1", +"cEl c #9b9da2", +"cI8 c #9b9e95", +"#eW c #9b9e9e", +"amR c #9b9ea0", +"cyh c #9b9ea1", +"cAw c #9b9ea2", +"dFt c #9b9fa2", +"bSQ c #9ba099", +"#5d c #9ba09c", +"#Yg c #9ba09d", +"#Vk c #9ba09f", +"#fU c #9ba0a0", +"dnV c #9ba197", +"cXU c #9ba19d", +"acs c #9ba19f", +"#8e c #9ba1a0", +"avE c #9ba29a", +"btL c #9ba29b", +"bXV c #9ba29c", +"flp c #9ba2a4", +"cV1 c #9ba39a", +"b74 c #9ba39b", +"bAg c #9ba3a5", +"fLE c #9ba3a7", +"dDu c #9ba49b", +"c#c c #9ba49c", +"#H0 c #9ba49d", +"b#u c #9ba49f", +"#Sm c #9ba4a0", +"#Vn c #9ba4a1", +"#Vp c #9ba4a2", +"#Mn c #9ba4a5", +"ahE c #9ba59d", +"bZY c #9ba59f", +"#PA c #9ba5a4", +"bRp c #9ba5a6", +"f#R c #9ba5a7", +"fIZ c #9ba5a8", +"dt7 c #9ba69c", +"#Lr c #9ba69d", +"#HS c #9ba69e", +"#AP c #9ba69f", +"bZg c #9ba6a1", +"#IW c #9ba6a4", +"fLO c #9ba6a8", +"c55 c #9ba79d", +"c#f c #9ba7a2", +"b7m c #9ba7a3", +"b7l c #9ba7a4", +"#Xc c #9ba7a5", +"fLN c #9ba7a9", +"c8F c #9ba89e", +"#AM c #9ba89f", +"#HL c #9ba8a0", +"#AJ c #9ba8a1", +"b3m c #9ba8a4", +"f8C c #9ba8a9", +"dac c #9ba99f", +"cye c #9ba9a4", +"#Fp c #9ba9a6", +"#Fs c #9ba9a7", +"cUL c #9ba9a9", +"c7v c #9baaa1", +"dbF c #9baaa3", +"#y# c #9baaa7", +"dxH c #9baba1", +"dr7 c #9baba2", +"#eg c #9babab", +"diX c #9baca4", +"dzD c #9bada4", +"d3P c #9badad", +"#jk c #9baeaa", +"e7X c #9baedc", +"#fJ c #9bafad", +"#g7 c #9bb0ab", +"#fK c #9bb0ad", +".5J c #9bb0b1", +"e7W c #9bbed3", +"fq2 c #9bc9f3", +"fn6 c #9bd7f8", +"#yZ c #9bf807", +"#9n c #9c02f8", +"alP c #9c2e2e", +"alN c #9c403f", +"#N0 c #9c6600", +"e0s c #9c6f72", +"fEy c #9c6f74", +"gci c #9c6f77", +"geg c #9c6f7a", +"e6H c #9c7072", +"f1W c #9c7075", +"eNX c #9c7372", +"e3z c #9c7375", +"gmB c #9c737b", +"eLB c #9c7475", +"giq c #9c747c", +"ep5 c #9c787a", +"fyZ c #9c787e", +".s. c #9c7c49", +"fjG c #9c7e7b", +"eiH c #9c827d", +"dX# c #9c8283", +"fBf c #9c8285", +"fVu c #9c8389", +"d9P c #9c867f", +"fMn c #9c8689", +"bM8 c #9c8788", +"eXK c #9c8881", +"eHf c #9c897f", +"cMD c #9c8983", +"bCQ c #9c898a", +"bnP c #9c8a71", +"cjm c #9c8a87", +"btm c #9c8b77", +"eqy c #9c8b81", +"cg0 c #9c8b8c", +"alF c #9c8b8d", +"ccT c #9c8c75", +"cxp c #9c8c79", +"bZH c #9c8c8c", +"cTq c #9c8d8b", +"c83 c #9c8d8c", +"c0A c #9c8d8d", +"dvn c #9c8e8c", +"dzN c #9c8e8d", +"d3r c #9c8f47", +"de8 c #9c8f8f", +"gvH c #9c8f91", +"bHX c #9c907f", +"gnE c #9c9092", +"dMj c #9c9190", +"alE c #9c9194", +"bhA c #9c9385", +"bNC c #9c9587", +"eew c #9c958a", +"gDv c #9c9997", +"aMc c #9c999b", +"e7k c #9c999f", +"gHl c #9c9a95", +"bEv c #9c9a97", +"gG2 c #9c9a9a", +"gxb c #9c9a9d", +"d.K c #9c9a9f", +"a2H c #9c9aa0", +"b1z c #9c9aa1", +"aU5 c #9c9aa2", +"bJv c #9c9b9b", +".OO c #9c9b9c", +"dzI c #9c9b9e", +"#Ci c #9c9b9f", +"#yC c #9c9ba0", +"azb c #9c9ba1", +"#T7 c #9c9ba2", +"aJp c #9c9ba3", +"f3v c #9c9ba5", +"gFZ c #9c9c9b", +"brT c #9c9c9c", +"fXO c #9c9c9e", +"bR. c #9c9c9f", +"b5r c #9c9ca0", +"a8P c #9c9ca1", +"asm c #9c9ca2", +"aTK c #9c9ca3", +"f0k c #9c9ca5", +"fqX c #9c9ca9", +"dtQ c #9c9d92", +"ci# c #9c9d97", +"bQ7 c #9c9d9a", +"gIk c #9c9d9e", +"go2 c #9c9d9f", +"bx9 c #9c9da0", +"#v5 c #9c9da1", +"cCq c #9c9da2", +"c8Y c #9c9da3", +"az# c #9c9da4", +"#m3 c #9c9e9e", +"#iE c #9c9e9f", +"#63 c #9c9ea0", +"cUN c #9c9ea1", +"cF1 c #9c9ea2", +"c6o c #9c9ea3", +"aB4 c #9c9ea4", +"crX c #9c9f98", +"bTu c #9c9f9e", +".HS c #9c9f9f", +"c1Q c #9c9fa1", +"c6i c #9c9fa2", +"#W7 c #9ca09e", +"#h6 c #9ca0a0", +"eAR c #9ca0a4", +"b6. c #9ca19a", +"#4S c #9ca19d", +"ddu c #9ca19f", +".Sx c #9ca1a1", +".4L c #9ca1a2", +"fu0 c #9ca1a4", +"b30 c #9ca29c", +"a5s c #9ca29e", +"#g9 c #9ca2a0", +".2i c #9ca2a1", +".3. c #9ca2a2", +"ahP c #9ca39b", +"bPu c #9ca39c", +"#8h c #9ca3a1", +"#5l c #9ca3a2", +"bCi c #9ca3a5", +"cUn c #9ca498", +"bEp c #9ca4a6", +"bfj c #9ca5a0", +"#Ml c #9ca5a2", +"#IV c #9ca5a3", +"dho c #9ca5a7", +"cAm c #9ca69d", +"b3f c #9ca69e", +"#Mm c #9ca6a2", +"#PB c #9ca6a5", +"fDj c #9ca6a7", +"f#Q c #9ca6a8", +"fLP c #9ca6a9", +"cXn c #9ca79d", +"clh c #9ca79e", +"#7n c #9ca79f", +"b1u c #9ca7a2", +"a5y c #9ca7a4", +"b#F c #9ca7a6", +"e5w c #9ca7a9", +"dc6 c #9ca89e", +"#Lc c #9ca8a1", +"bGG c #9ca8a4", +"bVe c #9ca8a5", +"bXf c #9ca8a6", +"#I0 c #9ca8a7", +"dfe c #9ca8a8", +"gt# c #9ca8a9", +"fqM c #9ca8dd", +"d.t c #9ca99f", +"#wF c #9ca9a0", +"clk c #9ca9a2", +"dkF c #9ca9a3", +"#4. c #9ca9a4", +"dBI c #9caaa0", +"#Em c #9caaa1", +"dzx c #9caba1", +"dzA c #9caba2", +"cEg c #9caba6", +"#wk c #9caba8", +"#BV c #9caba9", +"#i0 c #9cabab", +"cCm c #9caca7", +"cUI c #9caca9", +"#yb c #9cacaa", +"dxJ c #9cada3", +"##0 c #9cb0b1", +"b7J c #9cb5cc", +"fkV c #9cd4f6", +"feZ c #9ce6fd", +"#0m c #9cf704", +"aXX c #9d005a", +"alS c #9d0e0c", +"a81 c #9d33c7", +"alO c #9d3636", +"aB8 c #9d606d", +"alJ c #9d6665", +"fB1 c #9d6d73", +"fpi c #9d6d77", +"#Ky c #9d6e00", +"alI c #9d6f6e", +"ga# c #9d7077", +"fv2 c #9d7079", +"fTm c #9d7378", +"gb8 c #9d737b", +"fzc c #9d747c", +"geb c #9d747d", +"fEI c #9d7576", +"gkB c #9d757c", +"gos c #9d777d", +".xj c #9d7839", +"#GX c #9d7d02", +"esP c #9d807c", +"eqi c #9d807d", +"d9E c #9d8080", +"esS c #9d837b", +"cN1 c #9d8482", +"dZS c #9d8483", +"gpU c #9d8486", +"goR c #9d8487", +"gk# c #9d8688", +"gtT c #9d878a", +"bVy c #9d888a", +"gtG c #9d898d", +"eER c #9d8a80", +"gpy c #9d8a8e", +"egw c #9d8b82", +"fvi c #9d8b8f", +"gvP c #9d8b90", +"bhT c #9d8c74", +"cem c #9d8c8d", +"fMc c #9d8c90", +"c7J c #9d8d8c", +"a32 c #9d8d8d", +"cca c #9d8d8e", +"ckf c #9d8e76", +"cf# c #9d8e77", +"dkP c #9d8e8e", +"b9v c #9d8f8e", +"bnz c #9d907e", +"ddm c #9d9190", +"fPe c #9d9194", +"egD c #9d9288", +"elu c #9d9386", +"f39 c #9d9394", +"dSw c #9d948b", +"gyh c #9d9496", +"bLO c #9d9585", +"b.F c #9d958a", +"a0N c #9d984f", +"a1C c #9d988b", +"d2T c #9d998c", +"awK c #9d9999", +"bDo c #9d9a91", +"fp9 c #9d9a9e", +"e34 c #9d9a9f", +"c8X c #9d9aa1", +"gEH c #9d9b9c", +"gF5 c #9d9b9d", +"f30 c #9d9b9e", +"cet c #9d9b9f", +"bqU c #9d9ba0", +"bjR c #9d9ba1", +"aY. c #9d9ba2", +"dzH c #9d9ba3", +"dVb c #9d9c90", +"#X# c #9d9c9f", +"atU c #9d9ca0", +".XQ c #9d9ca1", +"#Oj c #9d9ca2", +"#T6 c #9d9ca3", +"aza c #9d9ca4", +"f3p c #9d9ca6", +"c2Y c #9d9d95", +"cvl c #9d9d96", +"b9z c #9d9d9d", +".PH c #9d9d9e", +"e35 c #9d9d9f", +"cF2 c #9d9da0", +"#Aj c #9d9da1", +"#Hh c #9d9da2", +"aQA c #9d9da3", +"#Jn c #9d9da4", +"fq. c #9d9e9e", +"cvJ c #9d9ea0", +"bAh c #9d9ea1", +"amQ c #9d9ea2", +"apo c #9d9ea3", +"aWS c #9d9ea4", +"cpm c #9d9f98", +"a.4 c #9d9f9c", +"#l3 c #9d9f9f", +"#gs c #9d9fa0", +"#PV c #9d9fa1", +"#SF c #9d9fa2", +"#VJ c #9d9fa3", +"bfx c #9d9fa4", +"cHo c #9da097", +"#f9 c #9da0a0", +"cnH c #9da198", +"#nR c #9da1a0", +"#kp c #9da1a1", +"b6# c #9da29b", +"bZ2 c #9da29c", +"#1G c #9da29d", +"#1H c #9da29e", +"#jo c #9da2a1", +".Th c #9da2a2", +"cO5 c #9da399", +"cTF c #9da3a0", +"##u c #9da3a1", +"#5k c #9da3a2", +".RT c #9da3a3", +"fLQ c #9da3a5", +"bST c #9da49b", +"avD c #9da49c", +"cg# c #9da49d", +"bQK c #9da49e", +"fln c #9da4a6", +"cnZ c #9da59b", +"aEL c #9da5a2", +"#U. c #9da5a4", +"c11 c #9da5a7", +"dBD c #9da69c", +"cD9 c #9da69d", +"#7t c #9da69e", +"cYY c #9da6a6", +"gvj c #9da6a7", +"f#z c #9da6a8", +"cCg c #9da79e", +"#OT c #9da79f", +"#IU c #9da7a3", +"#IY c #9da7a6", +"dfj c #9da7a8", +"e8K c #9da7a9", +"dt6 c #9da89e", +"dvT c #9da89f", +"a.A c #9da8a0", +"bVS c #9da8a2", +"a2t c #9da8a4", +"fAI c #9da8a8", +"f#P c #9da8a9", +"e8J c #9da8aa", +"c1B c #9da99f", +"diU c #9da9a1", +"cqJ c #9da9a2", +"#AU c #9da9a3", +"cgh c #9da9a4", +"a5z c #9da9a5", +"#Fn c #9da9a7", +"ciy c #9daaa3", +"#BQ c #9daaa8", +"dzZ c #9daaab", +"ciw c #9daba4", +"cXH c #9dabaa", +"#kd c #9dabab", +"e5v c #9dabac", +"c8P c #9daca5", +"#wm c #9daca7", +"#BU c #9daca9", +"cPs c #9dada9", +"dQ5 c #9dadad", +"fnQ c #9dafdc", +"dkJ c #9db0aa", +"#mt c #9db0ab", +"d8o c #9db0b1", +"dmv c #9db1a9", +"#ha c #9db1ad", +"eeY c #9db1b2", +"gsX c #9db4d4", +"fuf c #9dbbdf", +"dT# c #9dc09e", +"dVI c #9dc2a1", +"aoZ c #9e0000", +"a9P c #9e008e", +"ad2 c #9e0801", +"bfP c #9e46c6", +"aZY c #9e6196", +"f9N c #9e6f77", +"f9B c #9e6f7a", +"fzB c #9e7074", +"e9N c #9e7174", +"e9B c #9e7179", +"gcb c #9e717b", +"f7r c #9e727b", +"fwo c #9e7376", +"eXm c #9e7475", +"f9T c #9e747c", +"eUi c #9e757b", +"f7B c #9e757d", +"e0d c #9e767b", +"gkx c #9e767e", +"#5P c #9e775e", +".nQ c #9e783a", +"eEp c #9e797c", +"gsi c #9e797d", +"eRQ c #9e797f", +".q5 c #9e7a44", +"fBt c #9e7a81", +"euW c #9e7c7d", +"eiq c #9e7d80", +"eiu c #9e7f7f", +"fqy c #9e7f82", +"e3M c #9e817b", +"enD c #9e817d", +"cd. c #9e8469", +"fSH c #9e8488", +"cfl c #9e886e", +"bkz c #9e896e", +"gnZ c #9e898b", +"c.z c #9e8a70", +"brJ c #9e8a71", +"gv1 c #9e8b8e", +"gvW c #9e8b8f", +"gv0 c #9e8b90", +"cxn c #9e8c76", +"beY c #9e8c78", +"eJB c #9e8c82", +"gvY c #9e8d90", +"cuT c #9e8e74", +"b7N c #9e8e8f", +"gvM c #9e8e92", +"beT c #9e8f78", +"beQ c #9e8f79", +"dug c #9e8f8f", +"beS c #9e9079", +"b6t c #9e907b", +"bbU c #9e907e", +"dDI c #9e908f", +"fPf c #9e9193", +"dJX c #9e9292", +"b2r c #9e9380", +"bH9 c #9e9488", +"ecg c #9e948a", +"bFF c #9e9684", +"eah c #9e968b", +"d5h c #9e998d", +"c42 c #9e9aa0", +"e.y c #9e9aa3", +"ejv c #9e9b95", +"bAi c #9e9ba0", +"bVH c #9e9ba1", +"bg2 c #9e9ba2", +"etq c #9e9ba3", +"f03 c #9e9c9f", +"a.# c #9e9ca0", +"#Cg c #9e9ca1", +"#MP c #9e9ca2", +"#0J c #9e9ca3", +"#FK c #9e9ca4", +"fu# c #9e9ca8", +".Rs c #9e9d9d", +"dOp c #9e9d9e", +"eHH c #9e9d9f", +"#T8 c #9e9da0", +"#DT c #9e9da1", +".UC c #9e9da2", +"#yB c #9e9da3", +"a.. c #9e9da4", +"fng c #9e9da5", +"dvE c #9e9e94", +"aO8 c #9e9e9e", +".Qt c #9e9e9f", +"#Rl c #9e9ea0", +"#MO c #9e9ea1", +"#Cf c #9e9ea2", +"#yy c #9e9ea3", +"#61 c #9e9ea4", +"f0j c #9e9ea7", +"dH# c #9e9f94", +"cDc c #9e9f99", +"eJ0 c #9e9f9f", +"#Zf c #9e9fa2", +"#5F c #9e9fa3", +"#8I c #9e9fa4", +"acQ c #9e9fa5", +"gE5 c #9ea09e", +"#eT c #9ea0a1", +"cNt c #9ea198", +"#g. c #9ea1a1", +"bQ9 c #9ea29f", +"#mz c #9ea2a0", +"#e0 c #9ea2a2", +"c1X c #9ea2a5", +"f3. c #9ea2a8", +"b#r c #9ea39f", +".RC c #9ea3a3", +"gFn c #9ea3a4", +"ak8 c #9ea4a0", +"aqJ c #9ea4a2", +"##v c #9ea4a3", +"apL c #9ea59d", +"aTn c #9ea5a0", +"fim c #9ea5a7", +"cdL c #9ea69d", +"aeL c #9ea69e", +"cjG c #9ea6a1", +"c10 c #9ea6a8", +"bck c #9ea7a2", +"#Mk c #9ea7a4", +"#or c #9ea7a6", +"#Mp c #9ea7a7", +"dmB c #9ea7a8", +"cRT c #9ea89f", +"#4r c #9ea8a0", +"bV. c #9ea8a1", +"#IX c #9ea8a7", +"c41 c #9ea8a9", +"e8L c #9ea8aa", +"cCh c #9ea9a0", +"#Uw c #9ea9a1", +"bZd c #9ea9a3", +"dx1 c #9ea9aa", +"gf. c #9ea9ab", +"cyp c #9ea9ac", +"cJg c #9eaaa0", +"#Ek c #9eaaa1", +"diT c #9eaaa2", +"cdS c #9eaaa5", +"a2u c #9eaaa6", +"#x5 c #9eaaa7", +"#BR c #9eaaa8", +"ga7 c #9eaaaa", +"c4M c #9eaba1", +"#AL c #9eaba2", +"cn6 c #9eaba3", +"#7. c #9eaba6", +"#Fo c #9eaba9", +"ga6 c #9eabac", +"c58 c #9eaca2", +"#HK c #9eaca3", +"cqK c #9eaca5", +"dDA c #9eada5", +"c7x c #9eada6", +"cEh c #9eada8", +"#ya c #9eadaa", +"dHM c #9eadad", +"dzy c #9eaea4", +"#BT c #9eaeaa", +"cR5 c #9eaeab", +"dzE c #9eb1a9", +"dkK c #9eb1ab", +"ecQ c #9eb2b3", +"fxt c #9edeb1", +"fpm c #9f6f78", +"fmd c #9f707a", +"e0t c #9f7274", +"e0u c #9f7275", +"e3s c #9f7276", +"fHo c #9f7377", +"f9G c #9f737b", +".GB c #9f7430", +"g#2 c #9f747d", +"f7E c #9f747e", +"f9C c #9f757e", +"fdk c #9f767d", +"ggj c #9f777f", +".tg c #9f7a3e", +"fTt c #9f7a7e", +"gwx c #9f7b83", +"gwz c #9f7c83", +"fPS c #9f7e85", +"fNx c #9f7f80", +"gif c #9f8084", +"d9y c #9f8086", +"gbR c #9f8185", +"eb3 c #9f8581", +"fDN c #9f8689", +"dUF c #9f8785", +"cfr c #9f886c", +"fa8 c #9f8983", +"f62 c #9f898b", +"ftN c #9f8993", +"es0 c #9f8a81", +"fSu c #9f8a8c", +"e3R c #9f8b84", +"gvX c #9f8b8f", +"gvZ c #9f8c90", +"gvV c #9f8d90", +"gvQ c #9f8d91", +"cxo c #9f8e79", +"frW c #9f8f90", +"czE c #9f9079", +"gzg c #9f9191", +"b6r c #9f927e", +"dYG c #9f9293", +"enY c #9f9386", +"els c #9f9388", +"dOE c #9f9593", +"e.F c #9f9695", +"f6I c #9f9699", +"d98 c #9f988c", +"gE3 c #9f9993", +"gHS c #9f9997", +"bHQ c #9f9a8e", +"gD7 c #9f9b9d", +"cgk c #9f9ba1", +"eaF c #9f9ba2", +"ciF c #9f9ba3", +"dsc c #9f9ba4", +"bNz c #9f9c91", +"bEq c #9f9ca0", +"#62 c #9f9ca1", +"aWR c #9f9ca2", +"bdZ c #9f9ca3", +"aEV c #9f9da0", +"#Ok c #9f9da1", +"#yz c #9f9da2", +"#2B c #9f9da3", +"#Ce c #9f9da4", +"dQE c #9f9e9e", +"dL4 c #9f9e9f", +"eMi c #9f9ea0", +"ahj c #9f9ea1", +"#yD c #9f9ea2", +".N4 c #9f9ea3", +"#34 c #9f9ea4", +"ftu c #9f9ea6", +"f3n c #9f9ea7", +".Df c #9f9f9f", +"cdW c #9f9fa1", +"ciG c #9f9fa2", +"cgl c #9f9fa3", +"atT c #9f9fa4", +"a#Q c #9f9fa5", +"f0u c #9f9fa9", +"bri c #9fa09c", +"gHW c #9fa0a2", +"#MN c #9fa0a4", +"#VI c #9fa0a5", +"#jF c #9fa1a1", +"#35 c #9fa1a4", +"dzQ c #9fa1a6", +"bOA c #9fa29b", +"gHz c #9fa29f", +"#op c #9fa2a1", +"#f5 c #9fa2a2", +"#jC c #9fa2a3", +"#gn c #9fa3a2", +"#fx c #9fa3a3", +"fqW c #9fa3b5", +"bIN c #9fa49d", +"aBE c #9fa49f", +"#16 c #9fa4a0", +"aEA c #9fa5a1", +"#ja c #9fa5a3", +"asJ c #9fa69e", +"b55 c #9fa69f", +".5m c #9fa6a4", +"fn1 c #9fa6b4", +"dFj c #9fa79e", +"dHn c #9fa79f", +"b19 c #9fa7a0", +"bqi c #9fa7a3", +"foy c #9fa7a9", +"blq c #9fa8a2", +"#Eq c #9fa8a3", +"#Vo c #9fa8a4", +"fI0 c #9fa8aa", +"cyt c #9fa8ab", +"#4x c #9fa9a0", +"b7i c #9fa9a1", +"#Mo c #9fa9a8", +"dqs c #9fa9a9", +"fyf c #9fa9aa", +"fDi c #9fa9ab", +"#HR c #9faaa2", +"bZc c #9faaa3", +"bOQ c #9faaa4", +"aZB c #9faaa6", +"#IZ c #9faaa8", +"ga4 c #9faaac", +"ghe c #9faaad", +"c3c c #9faba1", +"#wE c #9faba2", +"b7n c #9faba7", +"#x8 c #9faba9", +"gjb c #9fabab", +"dFo c #9faca1", +"c57 c #9faca2", +"#wL c #9faca3", +"co. c #9faca6", +"ciz c #9faca7", +"g.1 c #9facad", +"#OF c #9fada6", +"#wv c #9faea7", +"#Ax c #9faeab", +"bis c #9faf9c", +"c8I c #9fafa5", +"cR4 c #9fafac", +"dOP c #9fafaf", +"cQQ c #9fb0a9", +"cWl c #9fb0ab", +"c8Q c #9fb0ac", +"cQT c #9fb0ad", +"baI c #9fb176", +"dkH c #9fb1a8", +"fkH c #9fb1dc", +"dkI c #9fb2ac", +"d.F c #9fb2ae", +"#fL c #9fb4af", +".5K c #9fb4b5", +"fq1 c #9fbde3", +".Vq c #9fc7e1", +"clN c #9fcfa2", +"#Dl c #9fff02", +"axS c #a00006", +"baO c #a000a2", +"bdG c #a000af", +"bgF c #a01abb", +"aoh c #a05b57", +"f7y c #a07079", +".Bv c #a07227", +"fpD c #a07477", +"fKi c #a0747a", +"e0y c #a07677", +"aH2 c #a0768a", +"f7q c #a0777c", +"eNY c #a07875", +"eLA c #a07979", +"gil c #a07981", +".pd c #a07a41", +".qn c #a07a42", +"eJk c #a07a78", +"eJi c #a07a7a", +"gmx c #a07a81", +"eLE c #a07b78", +"guo c #a07d84", +".E5 c #a07e45", +"eiy c #a08280", +"eqh c #a0837f", +"el# c #a08581", +"fPI c #a08588", +"eld c #a08681", +"dUC c #a08785", +"gqE c #a0878a", +"eqn c #a08881", +"f.a c #a08983", +"dR8 c #a08986", +"bQc c #a08a70", +"fdU c #a08a84", +"bXu c #a08a8c", +"bpQ c #a08b73", +"e0W c #a08b84", +"eCr c #a08d84", +"gvU c #a08d91", +"gvR c #a08d92", +"eJD c #a08e84", +"ckg c #a0917a", +"beR c #a0917b", +"dmF c #a09190", +"bNJ c #a09281", +"b6q c #a0937f", +"bPR c #a09482", +"gyq c #a09495", +"bzd c #a09585", +"d8g c #a09595", +"gvF c #a09599", +"bND c #a09687", +"a4F c #a0988b", +"egK c #a0988d", +"gFf c #a09a9b", +"a1D c #a09b8e", +"dJa c #a09b93", +"dHG c #a09ba0", +"dv3 c #a09ba2", +"b7q c #a09ca1", +"dha c #a09ca2", +"dmC c #a09ca3", +"bFA c #a09d93", +"c6j c #a09da1", +"b7r c #a09da2", +"bsh c #a09da3", +"#yx c #a09da4", +"fu. c #a09dad", +"gHt c #a09e9f", +"aEW c #a09ea2", +"#yA c #a09ea3", +"aKE c #a09ea4", +"bGZ c #a09f9c", +"gDZ c #a09f9d", +"gH5 c #a09f9e", +"#FL c #a09fa1", +"#Ch c #a09fa2", +"#v6 c #a09fa3", +".ON c #a09fa4", +"#5E c #a09fa5", +"fqf c #a09fa6", +"ftt c #a09fa7", +"cI. c #a0a0a0", +"fej c #a0a0a1", +"aPa c #a0a0a3", +"#Ze c #a0a0a4", +"#SE c #a0a0a6", +"f3h c #a0a0a7", +"gFq c #a0a19f", +"gEW c #a0a1a0", +"gGj c #a0a1a2", +"#T9 c #a0a1a3", +"eoG c #a0a1a4", +"dBW c #a0a1a6", +"ft9 c #a0a1b2", +"bQD c #a0a39c", +"#mU c #a0a3a3", +"gxY c #a0a4a3", +"#gA c #a0a4a4", +"f6u c #a0a4a5", +"bMH c #a0a59e", +"aQb c #a0a5a1", +"#gZ c #a0a5a3", +"#fI c #a0a5a4", +".T6 c #a0a5a5", +"cqt c #a0a69c", +"aNq c #a0a6a2", +"#2c c #a0a6a3", +"#fM c #a0a6a4", +"a#u c #a0a6a5", +".Ti c #a0a6a6", +"cS9 c #a0a79e", +"apS c #a0a79f", +"b3Z c #a0a7a0", +"gvr c #a0a7aa", +"asH c #a0a8a0", +"flo c #a0a8aa", +"dxE c #a0a9a0", +"#7u c #a0a9a1", +"b5l c #a0a9a2", +"c3E c #a0a9aa", +"c3u c #a0a9ab", +"#4w c #a0aaa1", +"b3g c #a0aaa2", +"#AS c #a0aaa5", +"dzG c #a0aaa9", +"fOW c #a0aaab", +"e5y c #a0aaac", +"#Lj c #a0aba3", +"bX. c #a0aba4", +"bX# c #a0aba6", +"aWE c #a0aba7", +"#Fm c #a0aba8", +"c6h c #a0abac", +"dDv c #a0aca1", +"cXp c #a0aca2", +"dBG c #a0aca3", +"#HQ c #a0aca4", +"b7k c #a0aca7", +"b1v c #a0aca8", +"#x7 c #a0acaa", +"aET c #a0acab", +"c4N c #a0ada3", +"#wJ c #a0ada4", +"cix c #a0ada6", +"#BS c #a0adab", +"bAf c #a0aead", +"#Aw c #a0afac", +"dzz c #a0b0a6", +"c7z c #a0b0a9", +"cQS c #a0b0ad", +"gu4 c #a0b0bf", +"fue c #a0b0ce", +"d.E c #a0b1aa", +"#jd c #a0b3af", +"#nu c #a0b3b1", +"##z c #a0b4b3", +".5L c #a0b5b6", +"fkA c #a0b796", +"gIr c #a0b9ab", +"d5I c #a0d0a1", +"fhQ c #a0d9fa", +"fxs c #a0dfb2", +"e8h c #a0e7fd", +"f#n c #a0eefc", +"aAt c #a10012", +"aL1 c #a1003a", +"ag6 c #a10102", +"aoE c #a10f0e", +"ars c #a12322", +"#3M c #a13000", +"#WV c #a14001", +"a5X c #a14ab0", +"aNQ c #a1648b", +"fTa c #a17179", +"fpk c #a1717b", +"fEi c #a1747e", +"e0v c #a17578", +"faM c #a17579", +"fv1 c #a1767f", +"fjx c #a17779", +"fsu c #a1777f", +"geq c #a17780", +"fPX c #a17880", +"gb9 c #a17981", +"fsq c #a17d84", +"f95 c #a17e7f", +"eix c #a18280", +"egd c #a18381", +"f1H c #a18388", +"eqj c #a18481", +"fMB c #a1848a", +"e0P c #a1857d", +"d7j c #a18584", +"eJw c #a18780", +"dXh c #a18986", +"gvS c #a18d91", +"#Ds c #a18e00", +"gtO c #a18e8f", +"gtP c #a18e90", +"gtQ c #a18e91", +"gvT c #a18e92", +"csa c #a19078", +"cuO c #a19179", +"cfb c #a1927b", +"c.d c #a1927d", +"enW c #a19288", +"dV2 c #a19293", +"chB c #a1937c", +"b4o c #a1937d", +"dxT c #a19392", +"frV c #a19395", +"dHD c #a19494", +"b4l c #a19582", +"bPQ c #a19685", +"ejI c #a19695", +"ewg c #a19797", +"f37 c #a1979a", +"dU3 c #a1988f", +"eaM c #a19897", +"ei2 c #a1998d", +"eeq c #a1998e", +"bby c #a19b91", +"dJb c #a19d93", +"gHb c #a19d9c", +"b#M c #a19ea2", +"bqs c #a19ea3", +"aZN c #a19ea4", +"gHa c #a19f9b", +"gFc c #a19f9d", +"eAO c #a19f9f", +"bEy c #a19fa1", +"a05 c #a19fa3", +"aJq c #a19fa4", +"c0E c #a19fa5", +"bTf c #a1a09c", +"dYd c #a1a0a1", +"dYI c #a1a0a2", +"aR2 c #a1a0a3", +"#FM c #a1a0a4", +"#PU c #a1a0a5", +"eyJ c #a1a0a6", +"fqe c #a1a0a8", +"f0e c #a1a0a9", +"fUy c #a1a0aa", +"cbi c #a1a19a", +"aMe c #a1a1a1", +"bEx c #a1a1a2", +"fg9 c #a1a1a3", +"cMN c #a1a1a4", +"cjq c #a1a1a5", +"a5M c #a1a1a6", +"dHH c #a1a1a7", +"bw2 c #a1a29c", +"dFB c #a1a2a7", +"c2Z c #a1a39b", +"#Xa c #a1a3a4", +"dJj c #a1a498", +"cqm c #a1a49b", +"#4U c #a1a4a1", +"#lJ c #a1a4a4", +"dvO c #a1a59c", +"a2n c #a1a5a2", +"cLa c #a1a5a4", +"c3D c #a1a5a8", +"#4T c #a1a6a2", +".QH c #a1a6a6", +"gvs c #a1a6a9", +"dLT c #a1a79c", +"b77 c #a1a79f", +"cU2 c #a1a7a2", +"b#p c #a1a7a3", +"#xR c #a1a7a5", +".9b c #a1a7a6", +".7N c #a1a7a7", +"akC c #a1a8a0", +"br7 c #a1a8a2", +"cjH c #a1a8a4", +"#Ve c #a1a8a6", +"gvq c #a1a8ab", +"cRM c #a1a99e", +"fuV c #a1a9ab", +"fW0 c #a1a9bd", +"cE. c #a1aaa1", +"#HZ c #a1aaa4", +"bfi c #a1aaa5", +"aHE c #a1aaa7", +"#Xb c #a1aaa9", +"#1h c #a1aba2", +"#4t c #a1aba3", +"aTr c #a1aba9", +"fR4 c #a1abab", +"dhn c #a1abac", +"fGb c #a1abad", +"#Lm c #a1aca4", +"a8w c #a1aca7", +"aTs c #a1aca8", +"fOX c #a1acac", +"gd# c #a1acae", +"c4L c #a1ada3", +"dDt c #a1ada4", +"#Le c #a1ada5", +"#Eh c #a1ada6", +"ct# c #a1adaa", +"#x6 c #a1adab", +"ga5 c #a1adae", +"c56 c #a1aea4", +"#wG c #a1aea5", +"cn8 c #a1aea7", +"#x9 c #a1aeac", +"ga9 c #a1aeae", +"fqV c #a1aec3", +"d.v c #a1afa5", +"clj c #a1afa8", +"cyd c #a1afa9", +"#y. c #a1afac", +"#hU c #a1afaf", +"f5V c #a1afc6", +"#ww c #a1b0a9", +"#wt c #a1b0ab", +"c59 c #a1b1a7", +"dai c #a1b2ac", +"ee2 c #a1b3b5", +"fnJ c #a1b496", +"#nz c #a1b4ae", +"#g2 c #a1b4b2", +"fkR c #a1b4c1", +"gzH c #a1b7ce", +".I3 c #a1bbba", +"fqU c #a1bbcd", +"e8j c #a1cff2", +"aUk c #a232ed", +"b#W c #a257a2", +"e6A c #a27075", +"fTh c #a27077", +"fsB c #a2707b", +"f4Z c #a2717a", +".C9 c #a27328", +"e3p c #a27378", +"fsT c #a27578", +"f4S c #a2757d", +".C4 c #a2772f", +"fV6 c #a2777b", +"f9F c #a2797f", +"fG4 c #a27980", +"fVU c #a27982", +"ePZ c #a27a7b", +".rc c #a27b3f", +"fY4 c #a27b7f", +".mz c #a27c3e", +"gmC c #a27d83", +".vK c #a27e40", +"gur c #a27e85", +"fVH c #a27f84", +"ekZ c #a28182", +"fD3 c #a28185", +"eit c #a28283", +"gb3 c #a28286", +"exD c #a28580", +"giR c #a2868a", +"eUS c #a28c84", +"f.b c #a28d86", +"gtN c #a28d90", +"gtL c #a28e91", +"cxm c #a29078", +"b8H c #a2917b", +"exW c #a29388", +"es5 c #a29389", +"dv7 c #a29393", +"bbR c #a29481", +"a7Q c #a29584", +"d1b c #a29595", +"gvG c #a29598", +"b.Y c #a29684", +"dTo c #a29696", +"dQV c #a29897", +"bJ2 c #a29b8e", +"gFa c #a29b9b", +"d5j c #a29d92", +"dG4 c #a29e95", +"#FJ c #a29ea5", +"bG3 c #a29f9d", +"aY# c #a29fa4", +"f3# c #a2a0a2", +"aU6 c #a2a0a4", +"b7S c #a2a0a5", +"dQX c #a2a0a6", +"gEB c #a2a1a3", +"cI# c #a2a1a4", +"afQ c #a2a1a5", +"dDK c #a2a1a6", +"f3r c #a2a1a7", +"fk# c #a2a1a8", +"fnh c #a2a1a9", +"fRG c #a2a1ab", +"bTc c #a2a29f", +"#Jp c #a2a2a2", +".OP c #a2a2a3", +"fbv c #a2a2a4", +"cyT c #a2a2a5", +"aTL c #a2a2a6", +"aWT c #a2a2a7", +"ck4 c #a2a39c", +"bE5 c #a2a3a2", +"eCO c #a2a3a3", +"fXp c #a2a3aa", +"cA# c #a2a49b", +"ft8 c #a2a4b5", +"bU3 c #a2a59e", +"#mn c #a2a5a3", +"#nh c #a2a5a4", +"#lI c #a2a5a5", +"#iO c #a2a5a6", +"dzm c #a2a69c", +"#YI c #a2a6a2", +"#my c #a2a6a4", +"gtl c #a2a6a7", +"aim c #a2a7a4", +"#fT c #a2a7a6", +"gvt c #a2a7aa", +"cKJ c #a2a89e", +"aQf c #a2a8a4", +"aED c #a2a8a5", +".86 c #a2a8a7", +".X1 c #a2a8a8", +"gvu c #a2a8ab", +"aGX c #a2a9a1", +".2j c #a2a9a8", +"gtg c #a2a9ac", +"ciq c #a2aba2", +"b#s c #a2aba5", +"aZA c #a2aba8", +"c0w c #a2abab", +"c1P c #a2abad", +"cFQ c #a2aca3", +"#Lf c #a2aca4", +"b9# c #a2aca5", +"boo c #a2aca6", +"fR5 c #a2acad", +"fOV c #a2acaf", +"dHq c #a2ada3", +"#1c c #a2ada4", +"#09 c #a2ada5", +"#wO c #a2ada7", +"aQl c #a2ada8", +"aQm c #a2ada9", +"c3b c #a2aea4", +"#HT c #a2aea5", +"#HP c #a2aea6", +"a8x c #a2aea8", +"b5o c #a2aeaa", +"aKw c #a2aeab", +"ga8 c #a2aeae", +"dBE c #a2afa4", +"dDy c #a2afa5", +"#Ej c #a2afa6", +"cs7 c #a2afa7", +"#Ei c #a2afa8", +"cCk c #a2afa9", +"bEo c #a2afae", +"bCh c #a2afaf", +"c7s c #a2b1a7", +"cEe c #a2b1a9", +"cAs c #a2b1ab", +"#wl c #a2b1ad", +"cJq c #a2b1ae", +"cTn c #a2b1af", +"c7t c #a2b2a8", +"cPq c #a2b2af", +"cQP c #a2b3ac", +"di3 c #a2b4b2", +"daj c #a2b5af", +"c8R c #a2b5b2", +"e4F c #a2b5dd", +"##1 c #a2b6b7", +"fn0 c #a2bdce", +"fqT c #a2c1d0", +"e8i c #a2e0fc", +"e8g c #a2eafc", +"arO c #a30007", +"#Dc c #a300fd", +"aaZ c #a31300", +"#Q3 c #a35a02", +"baA c #a35adf", +"fmi c #a37078", +"e3r c #a37478", +".Ij c #a37630", +"f4R c #a3777d", +"fP7 c #a37782", +"e3e c #a3787f", +"eXn c #a3797a", +"f2a c #a37a83", +"eLz c #a37b7b", +".OS c #a37c3f", +"gec c #a37c84", +"gky c #a38086", +"#Zp c #a38155", +"fGU c #a38288", +"fmO c #a38581", +"eXD c #a3877f", +"f7a c #a3888b", +"dZL c #a3898a", +"gm0 c #a38a8d", +"fGG c #a38a8e", +"exJ c #a38b83", +"eCp c #a38c84", +"bSr c #a38d74", +"gKo c #a38d8d", +"gtM c #a38d91", +"brI c #a38f76", +"eJz c #a38f86", +"gtK c #a38f91", +"fPt c #a39091", +"chP c #a39173", +"eJC c #a39187", +"ccZ c #a39278", +"cpC c #a39279", +"cxj c #a3927d", +"czG c #a3927f", +"beP c #a3937d", +"czF c #a3937e", +"dUc c #a39393", +"gvN c #a39396", +"chA c #a3947d", +"caw c #a3957e", +"dFx c #a39594", +"gtz c #a39699", +"ehb c #a39897", +"etL c #a39998", +"dkc c #a39a95", +"gG6 c #a39d9e", +"gy. c #a39ea0", +"#yw c #a39ea6", +"gHT c #a3a09f", +"gFk c #a3a1a0", +"gH4 c #a3a1a1", +"bjS c #a3a1a4", +"a66 c #a3a1a5", +"cY7 c #a3a1a6", +"dOI c #a3a1a7", +"gHp c #a3a2a0", +"cJM c #a3a2a5", +"crA c #a3a2a6", +"dol c #a3a2a7", +"fLn c #a3a2a9", +"fqd c #a3a2aa", +"f0t c #a3a2ab", +"f3B c #a3a2ac", +"dH. c #a3a399", +"b7R c #a3a3a3", +".Vy c #a3a3a4", +"cwB c #a3a3a6", +"b#N c #a3a3a8", +"fUw c #a3a3ab", +"fXi c #a3a3ac", +"cnG c #a3a49d", +"gFJ c #a3a49f", +"c#H c #a3a4a2", +"bJu c #a3a4a4", +"gfm c #a3a4a7", +"dtU c #a3a59b", +"csM c #a3a59c", +"c4B c #a3a59d", +"gF8 c #a3a5aa", +"bU4 c #a3a69f", +"#jR c #a3a6a6", +"#ky c #a3a6a7", +"fZ1 c #a3a6b5", +"#nH c #a3a7a5", +"#gl c #a3a7a7", +"gGd c #a3a7a9", +"glj c #a3a7ab", +"gGm c #a3a7b0", +"dLS c #a3a89c", +"bKT c #a3a8a1", +"a#o c #a3a8a4", +".IC c #a3a8a6", +".KC c #a3a8a8", +".LR c #a3a8a9", +"fXK c #a3a8ab", +"aNm c #a3a9a5", +"acr c #a3a9a6", +"afu c #a3a9a7", +"ahF c #a3aaa2", +"cKM c #a3aba0", +"apP c #a3aba3", +"fT8 c #a3abc3", +"apO c #a3aca4", +"aKo c #a3aca9", +"dBP c #a3acac", +"gvp c #a3acad", +"dfi c #a3acae", +"#Lq c #a3ada5", +"aNv c #a3ada9", +"dff c #a3adae", +"cE# c #a3aea5", +"#Li c #a3aea6", +"b#y c #a3aea8", +"aTt c #a3aeaa", +"aHL c #a3aead", +"gr# c #a3aeae", +"gdd c #a3aeaf", +"cYJ c #a3afa5", +"#HV c #a3afa7", +"#En c #a3afa8", +"#BP c #a3afab", +"bZh c #a3afac", +"bx6 c #a3afad", +"dBK c #a3b0a6", +"#AN c #a3b0a7", +"cAr c #a3b0aa", +"c7y c #a3b1aa", +"fhA c #a3b1dc", +"dFp c #a3b2ac", +"c7u c #a3b3a9", +"cCl c #a3b3ad", +"cUJ c #a3b3b0", +"dbG c #a3b4ad", +"cR2 c #a3b4ae", +"c7A c #a3b4af", +"d1l c #a3b5b5", +"de0 c #a3b6af", +"#g4 c #a3b7b5", +"ehk c #a3b7b8", +"fht c #a3ba97", +"fn5 c #a3caed", +".21 c #a3cce7", +"aDm c #a40019", +"#Kd c #a400fe", +"aoC c #a41816", +"aov c #a45859", +"f14 c #a4727a", +"e6C c #a47379", +"eRS c #a4797e", +"f1X c #a47981", +"gcn c #a47a83", +"g#5 c #a47b81", +"fSY c #a47b83", +"e6L c #a47c7c", +".ux c #a47e3f", +"fJX c #a47e83", +".Ed c #a47f43", +"ggk c #a47f85", +"gim c #a48086", +"esw c #a48284", +"eno c #a48386", +"fJN c #a4858a", +"eqg c #a48682", +"d4K c #a48a8b", +"gf5 c #a48b8e", +"fJB c #a48b8f", +"dXd c #a48c8a", +"dXf c #a48d8b", +"f4q c #a48e91", +"gtR c #a48e92", +"fPs c #a48f92", +"gtJ c #a49092", +"gtI c #a49095", +"fMm c #a49192", +"g#s c #a49195", +"eCw c #a49289", +"c.g c #a4937d", +"bLW c #a4937e", +"bKt c #a49381", +"bNN c #a4947f", +"d53 c #a49798", +"bLR c #a4998a", +"eS8 c #a49998", +"dU2 c #a49a91", +"eyH c #a49a99", +"fqz c #a49a9f", +"bLP c #a49b8b", +"#M3 c #a49d51", +"e.c c #a4a093", +"dSz c #a4a194", +"cPx c #a4a2a3", +"gbk c #a4a2a5", +"f0. c #a4a2a6", +"cbL c #a4a3a7", +"ddo c #a4a3a8", +"c6n c #a4a3a9", +"fts c #a4a3ab", +"f0o c #a4a3ac", +"bui c #a4a4a4", +"bXB c #a4a4a5", +"eX5 c #a4a4a6", +"bCj c #a4a4a9", +"fRF c #a4a4ac", +"fXq c #a4a4ae", +"ft7 c #a4a4b5", +"czh c #a4a59f", +"ct3 c #a4a5a4", +"b5s c #a4a5aa", +"bHf c #a4a6a5", +"#lx c #a4a6a6", +"#kP c #a4a6a7", +"bME c #a4a7a0", +"eAU c #a4a7ad", +"bOB c #a4a8a1", +"#kx c #a4a8a8", +".xJ c #a4a8ac", +"dHm c #a4a9a2", +"bTi c #a4a9a5", +".W6 c #a4a9a9", +"gre c #a4a9aa", +"gth c #a4a9ac", +"dDo c #a4aa9f", +"bff c #a4aaa6", +"#IM c #a4aaa8", +".Ll c #a4aaaa", +"btK c #a4aba4", +"dhv c #a4aba9", +"cRN c #a4aca1", +"cx5 c #a4aca2", +"dJy c #a4aca3", +"cV2 c #a4ada4", +"b5k c #a4ada5", +"bij c #a4ada8", +"aNt c #a4adaa", +"gte c #a4adae", +"gtf c #a4adaf", +"f8E c #a4aeaf", +"f0Q c #a4aeb0", +"dFk c #a4afa5", +"#wM c #a4afa8", +"a8y c #a4afa9", +"#x4 c #a4afab", +"cys c #a4afb3", +"dDw c #a4b0a5", +"cdP c #a4b0a7", +"#OG c #a4b0a8", +"#Ld c #a4b0a9", +"b3k c #a4b0ac", +"bGH c #a4b0ad", +"aND c #a4b0ae", +"gdc c #a4b0b0", +"gfe c #a4b0b1", +"#wK c #a4b1a8", +"cgf c #a4b1aa", +"cbF c #a4b1ab", +"cvG c #a4b1ac", +"cyq c #a4b1b4", +"cgd c #a4b2ab", +"cPr c #a4b2af", +"cFX c #a4b3ae", +"cPp c #a4b3b0", +"dJ6 c #a4b3b3", +"c6. c #a4b4ab", +"ddc c #a4b4ae", +"dWb c #a4b5b5", +"#ig c #a4b7b4", +"#dX c #a4b8b7", +"ehn c #a4b8b9", +"#fk c #a4b9b7", +"#lN c #a4bab4", +"e4E c #a4c4d6", +"d3a c #a4ca9e", +"aRJ c #a4cf34", +"e1C c #a4e1bd", +"f#m c #a4edfd", +"aJ. c #a4ef22", +"#GS c #a4ff04", +"aGi c #a5001f", +"#Ws c #a500fe", +"aoB c #a52221", +"aOn c #a528f4", +"aoA c #a52a2b", +"aoz c #a53433", +"aIr c #a5504e", +"aou c #a56162", +"fsC c #a5737d", +"fdx c #a5797f", +"e3t c #a57a7d", +"f42 c #a57a83", +"fQm c #a57c7f", +".up c #a57e3f", +"eXq c #a57f7e", +"gb7 c #a58087", +"eB6 c #a58183", +"gsj c #a58185", +"ens c #a58283", +"gr9 c #a58489", +"ekY c #a58586", +"aoq c #a58687", +"eUP c #a58982", +"gkZ c #a58a8d", +"ed7 c #a58b87", +"fJA c #a58c90", +"dUD c #a58d8b", +"gtS c #a58e91", +"gjW c #a59095", +"b6M c #a5927d", +"fYa c #a59294", +"dNF c #a5938f", +"bJ9 c #a59481", +"eAt c #a5948a", +"b4p c #a59680", +"bL4 c #a59682", +"fA1 c #a59699", +"ccQ c #a59781", +"eHO c #a59797", +"bx. c #a59887", +"ead c #a5988f", +"eeP c #a59a99", +"grm c #a59a9e", +"bDu c #a59b8a", +"bH8 c #a59b8f", +"ecJ c #a59b9a", +"d5b c #a59d92", +"d0e c #a59e92", +"dgF c #a5a19b", +"gHw c #a5a19e", +"gGY c #a5a2a2", +"gdp c #a5a3a6", +"ft4 c #a5a3a8", +"gHe c #a5a4a4", +"c#l c #a5a4a8", +"b3q c #a5a4a9", +"cUW c #a5a4aa", +"fj6 c #a5a4ab", +"fnf c #a5a4ac", +"ftr c #a5a4ad", +"f0l c #a5a4ae", +"f3A c #a5a4af", +"#31 c #a5a5a5", +"bXC c #a5a5a6", +"bVF c #a5a5a7", +"bT. c #a5a5aa", +"fUx c #a5a5ad", +"fUn c #a5a5ae", +"a.5 c #a5a6a3", +"cMF c #a5a6a6", +"gFI c #a5a7a9", +"#7Q c #a5a8a5", +"#oq c #a5a8a7", +"#iY c #a5a8a8", +"gHx c #a5a8ab", +"eCR c #a5a8ae", +"dJv c #a5a9a0", +"b9Z c #a5a9a2", +"#gm c #a5a9a9", +"gti c #a5a9ad", +"dJu c #a5aaa0", +"#f0 c #a5aaa9", +".Nj c #a5aaaa", +"gtj c #a5aaac", +"fAL c #a5aaad", +"daC c #a5aba6", +"##w c #a5aba9", +".K0 c #a5abaa", +"cKL c #a5aca2", +"apQ c #a5aca4", +"bok c #a5aca6", +"dhj c #a5acae", +"dFi c #a5ada5", +"#Px c #a5adab", +"frz c #a5adaf", +"gra c #a5adb0", +"fud c #a5adc1", +"aQk c #a5aeab", +"di4 c #a5aeb0", +"gvo c #a5aeb1", +"#1g c #a5afa6", +"an# c #a5afa7", +"b7j c #a5afa8", +"ghm c #a5afb0", +"c7G c #a5afb1", +"dHr c #a5b0a7", +"#Lk c #a5b0a8", +"bco c #a5b0aa", +"a5A c #a5b0ab", +"aNw c #a5b0ac", +"gpc c #a5b0b0", +"gde c #a5b0b1", +"dDx c #a5b1a7", +"dBF c #a5b1a8", +"#HN c #a5b1a9", +"#HO c #a5b1aa", +"cMo c #a5b1ab", +"bI0 c #a5b1ac", +"bZi c #a5b1ad", +"a8C c #a5b1ae", +"aBT c #a5b1af", +"gfd c #a5b1b1", +"gda c #a5b1b2", +"dBJ c #a5b2a7", +"c7r c #a5b2a8", +"d.u c #a5b2a9", +"cbE c #a5b2ab", +".Hv c #a5b2b1", +"cn7 c #a5b3ac", +"cEf c #a5b3ad", +"dDO c #a5b3b3", +"dg4 c #a5b4ad", +"dBN c #a5b4ae", +"feK c #a5b4dd", +"c4Q c #a5b5ab", +"cWm c #a5b5b1", +"cQR c #a5b6b2", +"cUK c #a5b6b3", +"##y c #a5b9b8", +"eAX c #a5b9c8", +"#lO c #a5bab5", +"baH c #a5bc77", +"fxu c #a5d6c1", +"fcb c #a5e9fc", +"#Dd c #a600ff", +"aoD c #a60909", +"aow c #a64f4f", +"fYY c #a6727a", +"aos c #a67373", +".zl c #a6772f", +".Ku c #a67a32", +".FB c #a67c3b", +".Da c #a67e3d", +"aor c #a67e7e", +"eNL c #a67e82", +".C3 c #a68042", +"gir c #a68187", +"#SL c #a68255", +"giK c #a6868b", +"ek8 c #a68985", +"gwf c #a6898f", +"d9D c #a68a8b", +"ggN c #a68b8f", +"d2l c #a68c8b", +"dXa c #a68c8d", +"fa9 c #a6928b", +"gry c #a69294", +"gtH c #a69297", +"gfQ c #a69394", +"fA2 c #a69596", +"gbM c #a69697", +"b8k c #a69782", +"exT c #a6978c", +"bYd c #a69884", +"d3F c #a69899", +"c.e c #a69983", +"bzq c #a69987", +"bFG c #a69988", +"eFt c #a69999", +"eQQ c #a69a9a", +"eVQ c #a69b9a", +"era c #a69c9b", +"f6J c #a69d9f", +"bbC c #a69e8f", +"gyb c #a69e9f", +"a7y c #a6a093", +"ean c #a6a094", +"gFU c #a6a0a2", +"bDp c #a6a39c", +"bEB c #a6a3a7", +"fGk c #a6a5a7", +"cgm c #a6a5a9", +"ciH c #a6a5aa", +"cJL c #a6a5ab", +"fei c #a6a5ac", +"fXg c #a6a5ad", +"fXd c #a6a5ae", +"f3u c #a6a5af", +"dkq c #a6a69d", +"cdB c #a6a69e", +"gEu c #a6a6a5", +".xy c #a6a6a6", +"bEI c #a6a6a7", +"bQ8 c #a6a6a9", +"bZm c #a6a6ab", +"diI c #a6a79f", +"cdA c #a6a7a0", +"eAP c #a6a7a4", +"b7Q c #a6a7a6", +"gHY c #a6a7a9", +"cJu c #a6a7ab", +"dHa c #a6a89e", +"#m2 c #a6a8a8", +"bED c #a6a8af", +"bsV c #a6a9a4", +"#nb c #a6a9a9", +"#gE c #a6a9aa", +"cad c #a6aaa3", +"#gh c #a6aaa9", +"dJw c #a6aba2", +".4e c #a6abab", +"gni c #a6abae", +"aQd c #a6aca8", +".Wg c #a6acab", +"akB c #a6ada5", +"csY c #a6aea3", +"cV3 c #a6aea5", +"avB c #a6aea6", +"dDD c #a6aeae", +"gr. c #a6aeb0", +"a8v c #a6afaa", +"aKp c #a6afac", +"gff c #a6afb0", +"fuW c #a6afb1", +"cis c #a6b0a7", +"#UH c #a6b0a8", +"aHF c #a6b0ac", +"dFs c #a6b0af", +"dHx c #a6b0b0", +"ghn c #a6b0b1", +"gvn c #a6b0b2", +"a.G c #a6b1a8", +"#OM c #a6b1a9", +"b#z c #a6b1ab", +"b9a c #a6b1ac", +"aKq c #a6b1ad", +"aTu c #a6b1ae", +"dj# c #a6b1b2", +"c7q c #a6b2a8", +"b5n c #a6b2ae", +"b9b c #a6b2af", +"bS7 c #a6b2b0", +"ghl c #a6b2b2", +"gdb c #a6b2b3", +"ghf c #a6b2b4", +"cyr c #a6b2b7", +"c4O c #a6b3a9", +"cJm c #a6b3ab", +"cge c #a6b3ac", +"c8H c #a6b4aa", +"dHs c #a6b4ab", +"dzY c #a6b4b4", +"c4P c #a6b5ab", +"cPo c #a6b5ae", +"cK5 c #a6b5b3", +"fq0 c #a6b5d1", +"c4R c #a6b6ac", +"cUH c #a6b6b3", +"cYX c #a6b6b4", +"diY c #a6b7af", +"dzF c #a6b7b3", +"cXE c #a6b8b1", +"c8S c #a6b9b5", +"#fi c #a6bab8", +"ejS c #a6babb", +"fqS c #a6bace", +"gxi c #a6bfd9", +"amd c #a70002", +"aOT c #a70041", +"ajt c #a7038b", +"bcP c #a704f3", +"bcM c #a730c4", +"aoy c #a73c3a", +"#0p c #a73f00", +"aox c #a74544", +"acV c #a76355", +".C5 c #a77527", +"e6B c #a7757b", +"e9I c #a7767c", +"e3q c #a7777b", +"ftM c #a77b84", +"gca c #a77c85", +"f19 c #a77d85", +"g#1 c #a77e86", +"gef c #a77e87", +".vT c #a77f40", +"eLy c #a77f7f", +"gkL c #a78087", +"gea c #a7828a", +"gsa c #a7868c", +"fKD c #a78886", +"eA# c #a78984", +"gwm c #a78990", +"evf c #a78b84", +"esO c #a78b86", +"gwe c #a78b91", +"gwd c #a78c91", +"e#Z c #a78e89", +"dZQ c #a78f8d", +"aop c #a78f92", +"fgL c #a7908b", +"bnM c #a79278", +"fVj c #a79395", +"caG c #a7947a", +"grz c #a79495", +"enS c #a7958a", +"dUb c #a79697", +"bpC c #a79989", +"bs9 c #a79a88", +"bL5 c #a79a89", +"bru c #a79a8b", +"eJ7 c #a79a9a", +"a7R c #a79b8a", +"gpr c #a79c9f", +"eoF c #a79d9c", +"egF c #a79e92", +"bDJ c #a79e93", +"gGh c #a79f9d", +"ecn c #a7a094", +"fla c #a7a09f", +"dNZ c #a7a196", +"gFB c #a7a3a5", +"ft6 c #a7a3b1", +"ft5 c #a7a4ac", +"gIf c #a7a5a2", +"a02 c #a7a5a7", +"glz c #a7a5a8", +"gIu c #a7a5aa", +"#Cn c #a7a6a3", +"eg9 c #a7a6a5", +"fka c #a7a6aa", +"cLo c #a7a6ab", +"cwA c #a7a6ac", +"f0h c #a7a6ad", +"fqc c #a7a6ae", +"fOB c #a7a6af", +"f0s c #a7a6b0", +".zC c #a7a7a6", +"#0F c #a7a7a7", +"cyi c #a7a7aa", +"ctd c #a7a7ab", +"cCr c #a7a7ac", +"fOA c #a7a7af", +"f0d c #a7a7b0", +"#mg c #a7a8a9", +"gHy c #a7a8aa", +"cL. c #a7a8ab", +"fRw c #a7a8b0", +"dkt c #a7a9a0", +"cJv c #a7a9a6", +"#mL c #a7a9a9", +"gjv c #a7a9ac", +"cAa c #a7aaa1", +"bSN c #a7aaa3", +"#hr c #a7aaaa", +"#li c #a7aaab", +"b76 c #a7aba4", +"#gy c #a7abab", +"dOg c #a7aca1", +"bOD c #a7aca5", +"daD c #a7aca7", +"fXL c #a7acac", +"f3W c #a7acad", +"grb c #a7acaf", +"dDn c #a7ada1", +"dmh c #a7ada3", +"dHk c #a7ada6", +"aNl c #a7ada9", +"dhw c #a7adaa", +"#Vf c #a7adac", +".NE c #a7adad", +".U6 c #a7adae", +"dJx c #a7aea5", +"aeV c #a7aea6", +"fI1 c #a7aeb0", +"cRP c #a7afa4", +"cS8 c #a7afa5", +"cga c #a7afa6", +"gpb c #a7afb0", +"fDk c #a7afb1", +"apN c #a7b0a8", +"aQn c #a7b0ae", +"gjl c #a7b0b1", +"fyg c #a7b0b2", +"dJB c #a7b1a7", +"dFl c #a7b1a8", +"cy. c #a7b1a9", +"aHG c #a7b1ad", +"#IT c #a7b1ae", +"aNx c #a7b1af", +"aQo c #a7b1b0", +"dfh c #a7b1b2", +"c8W c #a7b1b3", +"#RL c #a7b2aa", +"bK2 c #a7b2ac", +"a8z c #a7b2ad", +"aBO c #a7b2ae", +"gtd c #a7b2b3", +"dFn c #a7b3aa", +"cn3 c #a7b3ab", +"bV# c #a7b3ac", +"b3i c #a7b3af", +"b1w c #a7b3b0", +"#kV c #a7b3b1", +"gfc c #a7b3b3", +"dLX c #a7b4a9", +"c1C c #a7b4aa", +"cs8 c #a7b4ad", +"cdQ c #a7b5af", +"c6# c #a7b6ae", +"dDB c #a7b6af", +"cJn c #a7b6b2", +"fbX c #a7b6de", +"cR1 c #a7b7b0", +"dYS c #a7b9b9", +"di1 c #a7bab4", +"#ij c #a7bbb6", +"feD c #a7bc9d", +".5M c #a7bcbd", +"dTc c #a7c5a9", +"feY c #a7defc", +"e8f c #a7ebfb", +"#WS c #a7fd00", +"#Ku c #a7fe04", +"aUO c #a80054", +"a3Q c #a80075", +"#9S c #a82000", +"aoe c #a84d51", +"aot c #a86a6a", +".Bs c #a87629", +"fHw c #a87d83", +"f5a c #a87f87", +".s9 c #a8803f", +".rE c #a88040", +".mD c #a88244", +"fWj c #a88387", +"ggn c #a8838b", +"gq# c #a8868b", +"gwg c #a8888f", +"fpQ c #a88986", +"gwn c #a88990", +"eiz c #a88a88", +"gwl c #a88a90", +"eiB c #a88b88", +"eSk c #a88d86", +"grQ c #a88e91", +"dZU c #a88f8d", +"gob c #a88f92", +"fa7 c #a8908a", +"dZW c #a8908c", +"beJ c #a89479", +"grw c #a89495", +"grx c #a89496", +"grA c #a89596", +"cse c #a8967d", +"cuS c #a8987e", +"bu9 c #a89884", +"buV c #a89986", +"evy c #a89a8f", +"bPP c #a89c8a", +"#Cs c #a89d53", +"a4I c #a89d8d", +"eA1 c #a89d9c", +"eC9 c #a89d9d", +"fAu c #a89d9e", +"gyk c #a89d9f", +"eiZ c #a89e92", +"fh7 c #a89f9e", +"foh c #a8a1a0", +"#zQ c #a8a200", +"ecp c #a8a296", +"dEY c #a8a39a", +"fqP c #a8a4b0", +"b.C c #a8a598", +"eCN c #a8a5a4", +"fW9 c #a8a5ab", +"gHB c #a8a6a5", +"gJB c #a8a6a7", +"gfq c #a8a6aa", +"fub c #a8a6ad", +"f3y c #a8a6af", +"f3z c #a8a6b0", +"f3t c #a8a6b1", +"b5v c #a8a7a5", +"bVm c #a8a7a6", +"cCQ c #a8a7ab", +"ces c #a8a7ac", +"coX c #a8a7ad", +"fbt c #a8a7ae", +"fqb c #a8a7af", +"fUj c #a8a7b0", +"f22 c #a8a7b4", +"bJw c #a8a8a8", +"cMs c #a8a8ac", +"cNS c #a8a8ad", +"fXo c #a8a8b0", +"fXh c #a8a8b1", +".Gi c #a8a9a9", +"#7R c #a8aaa7", +"#fq c #a8aaab", +"f2V c #a8aab4", +"cB4 c #a8aba2", +"bKR c #a8aca5", +"#nG c #a8acaa", +"bJt c #a8acac", +"gDh c #a8acae", +"gp. c #a8acaf", +"grc c #a8acb0", +"f2W c #a8acb2", +"afp c #a8adaa", +".Or c #a8adac", +"gtk c #a8adad", +".5F c #a8adae", +"cF6 c #a8aea9", +"#Sk c #a8aeac", +".3f c #a8aeae", +".U3 c #a8aeaf", +"dj. c #a8aeb0", +"fI2 c #a8aeb1", +"fZY c #a8aebb", +"ahG c #a8afa7", +"dJJ c #a8afaf", +"gq9 c #a8afb1", +"f20 c #a8afbf", +"dLU c #a8b0a5", +"cHC c #a8b0a7", +"a8p c #a8b0ab", +"aWz c #a8b0ac", +"frB c #a8b0b2", +"a8u c #a8b1ac", +"aWD c #a8b1ae", +"cAC c #a8b1b2", +"cJB c #a8b2a8", +"cRU c #a8b2a9", +"#XR c #a8b2aa", +"aTv c #a8b2af", +"aNy c #a8b2b1", +"glq c #a8b2b2", +"dfg c #a8b2b3", +"gjg c #a8b2b4", +"dFm c #a8b3a9", +"#ON c #a8b3ab", +"bXa c #a8b3ac", +"b#A c #a8b3ad", +"b#B c #a8b3ae", +"aHH c #a8b3af", +"gf# c #a8b3b5", +"fFp c #a8b3c1", +"cgg c #a8b4af", +"bXe c #a8b4b0", +"aNE c #a8b4b1", +"ay2 c #a8b4b2", +"gjk c #a8b4b4", +"c3d c #a8b5ab", +"cll c #a8b5ae", +"cK4 c #a8b5b2", +"fr. c #a8b5c9", +"dB2 c #a8b6b6", +"dHt c #a8b7b1", +"c4S c #a8b8ae", +"cR3 c #a8b8b4", +"cXG c #a8b9b4", +"c40 c #a8bab8", +"#nw c #a8bbb7", +"ehl c #a8bcbd", +"d5G c #a8d3ae", +"e1D c #a8d5c8", +"e4A c #a8ddb5", +"e1B c #a8e3bd", +"aAq c #a8fe0b", +"aav c #a900fe", +"azJ c #a93836", +"azf c #a95161", +"fqx c #a96c6f", +"e6D c #a97d82", +".FI c #a97f3d", +"gcs c #a98088", +".Em c #a98141", +"fsE c #a98187", +"geh c #a9828a", +"fvV c #a9838c", +"gix c #a98589", +"ep4 c #a98688", +"ggi c #a9868c", +"enr c #a98788", +"gmy c #a9878d", +"gkw c #a9888d", +"gsh c #a9898d", +"gwh c #a9898f", +"gwk c #a98b90", +"d9C c #a98c8e", +"d7c c #a98c90", +"eiD c #a98d89", +"d2f c #a98d91", +"gt7 c #a98e92", +"dXc c #a9908f", +"d4L c #a99090", +"dXe c #a9918f", +"dS# c #a99290", +"dR9 c #a99390", +"gpI c #a99396", +"grv c #a99596", +"fSt c #a99597", +"es3 c #a9968d", +"gnO c #a99699", +"f6S c #a9969a", +"bhS c #a99880", +"eei c #a99891", +"dCQ c #a99996", +"aoo c #a99a9d", +"bKf c #a99c8c", +"bNG c #a99d8b", +"fSl c #a99d9e", +"egH c #a99f94", +"bNF c #a9a08f", +"bRT c #a9a191", +"bez c #a9a192", +"e5b c #a9a1a1", +"a7x c #a9a395", +"dQe c #a9a599", +"gH# c #a9a6a7", +"f3f c #a9a6b0", +"gHm c #a9a7a5", +"gFs c #a9a7ab", +"f3k c #a9a7b0", +"f3g c #a9a7b1", +"ejy c #a9a8a7", +".N5 c #a9a8a9", +"fXP c #a9a8aa", +"b1Z c #a9a8ad", +"bZP c #a9a8ae", +"fUv c #a9a8b0", +"f3e c #a9a8b1", +"gGX c #a9a9a5", +"b9i c #a9a9a8", +".xx c #a9a9a9", +".Gj c #a9a9aa", +"bVD c #a9a9ab", +"cUO c #a9a9ad", +"ddi c #a9a9af", +"gGN c #a9a9b0", +"dN9 c #a9aa9d", +".F4 c #a9aaaa", +"#kG c #a9aaab", +"gDV c #a9aaac", +".Ga c #a9abab", +"gHQ c #a9abad", +"cL9 c #a9aca2", +"#hN c #a9acac", +"cNu c #a9ada4", +".Hq c #a9adac", +"#gM c #a9adad", +"dDr c #a9aea5", +"dHl c #a9aea7", +"aio c #a9aeaa", +"#nA c #a9aeac", +"#Vj c #a9aead", +".Ox c #a9aeae", +"gpf c #a9aeb0", +"fun c #a9aeb9", +"dDp c #a9afa4", +"a#t c #a9afab", +"#Si c #a9afad", +".Jv c #a9afae", +"gpd c #a9afb2", +"fLg c #a9afb5", +"bj# c #a9afea", +"ahH c #a9b0a8", +"dQD c #a9b0af", +"gnp c #a9b0b3", +"dS4 c #a9b1b0", +"fAJ c #a9b1b2", +"glr c #a9b1b3", +"glt c #a9b1b4", +"cgb c #a9b2a9", +"b#t c #a9b2ad", +"aNu c #a9b2af", +"gvm c #a9b2b3", +"frC c #a9b2b4", +"cFR c #a9b3a9", +"#7s c #a9b3aa", +"#Ln c #a9b3ab", +"aKr c #a9b3b1", +"aNz c #a9b3b2", +"gvl c #a9b3b3", +"gho c #a9b3b4", +"gvk c #a9b3b5", +"dJC c #a9b4ab", +"a8A c #a9b4af", +"#Fl c #a9b4b0", +"a8B c #a9b4b1", +"aKs c #a9b4b2", +"gtc c #a9b4b5", +"dDz c #a9b5ab", +"#1. c #a9b5ac", +"cK3 c #a9b5af", +"c#e c #a9b5b0", +"aTw c #a9b5b1", +"bVd c #a9b5b2", +"aNC c #a9b5b3", +"c8G c #a9b6ac", +"cEd c #a9b6af", +"aWF c #a9b6b0", +"cFW c #a9b7b1", +"f.6 c #a9b7df", +"cJo c #a9b8b5", +"c3k c #a9b9b2", +"dbH c #a9bcb6", +"d.G c #a9bcb7", +"#lQ c #a9beb9", +"bqA c #a9c2a9", +"fhM c #a9c5d5", +"fkU c #a9cae9", +"fnZ c #a9d8e7", +"#Cz c #a9db1e", +"aaW c #a9fd00", +"#3J c #a9fe01", +"#3k c #aa00ff", +"aCa c #aa5472", +"fpj c #aa7a84", +"e3w c #aa7f80", +"fju c #aa8082", +"fmD c #aa8182", +"f4P c #aa8188", +"e0B c #aa8383", +"gip c #aa878d", +"gik c #aa888d", +"fy6 c #aa898f", +"gwo c #aa8a8e", +"gwi c #aa8b8f", +"gwj c #aa8b90", +"esN c #aa8c87", +"enC c #aa8c88", +"fnE c #aa8c91", +"d4I c #aa8d91", +"d7d c #aa8e91", +"g#I c #aa8f94", +"dZP c #aa9090", +"d2g c #aa9091", +"d2j c #aa9190", +"chN c #aa9274", +"dZR c #aa9290", +"gl8 c #aa9497", +"grB c #aa9597", +"f1x c #aa9598", +"f1l c #aa9698", +"#Dt c #aa9700", +"eAn c #aa978d", +"eEW c #aa978e", +"gru c #aa979a", +"b.S c #aa9881", +"fVk c #aa9899", +"b6v c #aa9a81", +"bx# c #aa9b87", +"bBv c #aa9c8b", +"cav c #aa9d86", +"eMo c #aa9d9d", +"bze c #aa9e8a", +"bkt c #aa9e8b", +"gtx c #aa9ea2", +"bBk c #aa9f8d", +"eYW c #aa9f9e", +"gyo c #aa9fa0", +"e8r c #aaa0a0", +"gyj c #aaa0a2", +"egG c #aaa196", +"e18 c #aaa1a0", +"fOI c #aaa2a1", +"frd c #aaa2a2", +"gDE c #aaa3a5", +"gy# c #aaa4a6", +"dU6 c #aaa59a", +"a33 c #aaa7a7", +"fUf c #aaa7ad", +"egX c #aaa8a7", +"gjA c #aaa8ab", +"bTz c #aaa8ae", +"f3s c #aaa8b3", +"bGY c #aaa9aa", +"b3P c #aaa9ae", +"bHh c #aaa9af", +"fUm c #aaa9b1", +"f0c c #aaa9b2", +"fqQ c #aaa9b9", +"dtT c #aaaaa0", +"gHA c #aaaaa7", +"cMH c #aaaaa9", +".sw c #aaaaaa", +".Gk c #aaaaab", +"bTx c #aaaaac", +"c0x c #aaaaad", +"cYZ c #aaaaae", +"c3v c #aaaaaf", +"fRE c #aaaab2", +"cic c #aaaba5", +".Gh c #aaabab", +"fXc c #aaabb2", +"bEH c #aaaca5", +"gGt c #aaaca9", +"#eS c #aaacac", +"#jW c #aaacad", +"fnT c #aaacba", +"bQE c #aaada6", +"#kZ c #aaadac", +"#hJ c #aaadad", +".GT c #aaadae", +"bja c #aaade7", +"bMF c #aaaea7", +"gpe c #aaaeb1", +"#8a c #aaafab", +"#nx c #aaafad", +"#cF c #aaafae", +".7I c #aaafaf", +"dbY c #aab0ab", +"aQc c #aab0ac", +"aBG c #aab0ad", +"#Fc c #aab0ae", +"dVy c #aab0af", +".JR c #aab0b0", +"grd c #aab0b1", +"fqR c #aab0c4", +"fR# c #aab0c5", +"ahI c #aab1a9", +"aQg c #aab1ad", +"gDA c #aab1b3", +"cRO c #aab2a7", +"dJz c #aab2a9", +"abL c #aab2aa", +"frA c #aab2b4", +"gu2 c #aab2be", +"bj. c #aab2ed", +"dOj c #aab3aa", +"a8t c #aab3ae", +"#Mj c #aab3b0", +"a2s c #aab3b1", +"dLW c #aab4a9", +"clg c #aab4ab", +"aKt c #aab4b3", +"gb. c #aab4b5", +"cHF c #aab5ac", +"#UA c #aab5ad", +"bXb c #aab5ae", +"aZC c #aab5b0", +"aEN c #aab5b1", +"aHI c #aab5b2", +"aHJ c #aab5b3", +"ghk c #aab5b6", +"fkJ c #aab5c4", +"f5T c #aab5d0", +"#HW c #aab6af", +"b3j c #aab6b2", +"aEO c #aab6b3", +"aQs c #aab6b4", +"gu5 c #aab6c5", +"dLY c #aab7ad", +"#wH c #aab7ae", +"cqL c #aab7b0", +"ayZ c #aab7b3", +"c6a c #aab9b2", +"cHN c #aab9b4", +"cJp c #aab9b6", +"c4T c #aabab2", +"cTl c #aabbb6", +"bi6 c #aabcec", +"dg5 c #aabdb6", +"di0 c #aabdb7", +"bi5 c #aabeec", +"#jf c #aabfb9", +"fhZ c #aacdec", +"fxr c #aadab7", +"aGf c #aaf719", +"#Dk c #aaff04", +"ao0 c #ab0000", +"#GE c #ab00ff", +"#6M c #ab2c00", +"a3r c #ab49f3", +"a#Y c #ab6b53", +"#N1 c #ab6f00", +"#5L c #ab6f52", +"fje c #ab7d85", +"fgm c #ab8185", +".rw c #ab8241", +"eR7 c #ab8283", +"eW7 c #ab8288", +"gcc c #ab848c", +"#GY c #ab8700", +"eLF c #ab8884", +"gwp c #ab8a8f", +"gwq c #ab8b90", +"esM c #ab8c88", +"eqf c #ab8d89", +"eqk c #ab8d8a", +"enJ c #ab908b", +"dXb c #ab9192", +"dUE c #ab9492", +"eLU c #ab958c", +"b4O c #ab967f", +"bUE c #ab977f", +"fdV c #ab9790", +"dCR c #ab9b99", +"dPt c #ab9b9c", +"b.X c #ab9c8a", +"b6u c #ab9d87", +"bxl c #ab9d88", +"eqD c #ab9e93", +"eem c #ab9e96", +"gty c #ab9ea1", +"gyl c #ab9fa1", +"gyp c #ab9fa2", +"bLQ c #aba091", +"fC9 c #aba0a1", +"bNE c #aba190", +"f#y c #aba1a0", +"fLC c #aba1a1", +"fuu c #aba2a2", +"dU4 c #aba399", +"gya c #aba3a5", +"ecl c #aba498", +"gDr c #aba59f", +"gHs c #aba6a7", +"gCG c #aba7a6", +"gEt c #aba8a2", +"gHk c #aba9aa", +"bRn c #aba9af", +"f3c c #aba9b2", +"dXN c #abaa9d", +"egZ c #abaaa9", +".sv c #abaaab", +"#He c #abaaac", +"dkN c #abaaad", +"bJx c #abaaae", +"buk c #abaaaf", +"bE6 c #abaab0", +"fne c #abaab2", +".sx c #ababab", +".Gm c #ababac", +"f.F c #ababad", +"di5 c #ababae", +"dhb c #ababaf", +"fLz c #ababb2", +"fOp c #ababb3", +"gFp c #abaca8", +"bE4 c #abacaa", +"gEd c #abacae", +"fZS c #abacb4", +"brh c #abada7", +"gEw c #abadac", +"#j1 c #abadad", +"#lo c #abadae", +"gDw c #abadb3", +"bU2 c #abaea7", +"cHT c #abaeaa", +"#k0 c #abaead", +"#iw c #abaeae", +"cqn c #abafa6", +"#ko c #abafae", +"#h3 c #abafaf", +"gph c #abafb0", +"#YJ c #abb0ac", +"#nF c #abb0ad", +"dX7 c #abb0ae", +"#hg c #abb0af", +"fGd c #abb0b3", +"csU c #abb1a7", +"a.K c #abb1a9", +"dHj c #abb1aa", +"aBF c #abb1ad", +".M# c #abb1b0", +".L0 c #abb1b1", +"gpg c #abb1b2", +"dOh c #abb2a7", +"apR c #abb2aa", +"cqB c #abb3a7", +"gls c #abb3b5", +"dHo c #abb4ab", +"akz c #abb4ac", +"blu c #abb4af", +"aQj c #abb4b1", +"dh# c #abb4b6", +"dHp c #abb5ac", +"#UD c #abb5ad", +"aEP c #abb5b4", +"g.2 c #abb5b6", +"bi9 c #abb5ee", +"#OP c #abb6ae", +"a5B c #abb6b1", +"aEM c #abb6b2", +"aKv c #abb6b4", +"bi8 c #abb6ee", +"cdR c #abb7b2", +"aWG c #abb7b3", +"bQX c #abb7b5", +"gfb c #abb7b7", +"cbD c #abb8b0", +"ct. c #abb8b1", +"dJD c #abb9af", +"c3j c #abb9b0", +"c1I c #abb9b1", +"bi7 c #abb9ed", +"cHM c #abbab6", +"c1J c #abbbb4", +"cMq c #abbbb8", +"cXF c #abbcb7", +"c6g c #abbdbb", +"diZ c #abbeb9", +"dg9 c #abbfb9", +"bi4 c #abbfe8", +"a6I c #abc35e", +"d3b c #abcba4", +"fe7 c #abd0ee", +"d0E c #abd4a8", +"fkQ c #abdae8", +"#yY c #abfb03", +"aJb c #ac002d", +"a0Q c #ac006a", +"b#1 c #ac00ff", +"auG c #ac0162", +"aFM c #ac0ff6", +".LI c #ac7d33", +"e3f c #ac8188", +"e0w c #ac8283", +"eNQ c #ac8284", +".Fb c #ac8342", +"fS8 c #ac868d", +"eLr c #ac8789", +"gor c #ac888e", +"ek0 c #ac8c8d", +"ep3 c #ac8c8f", +"eve c #ac8f89", +"d9z c #ac8f91", +"gu# c #ac9094", +"d7e c #ac9191", +"d7f c #ac9193", +"gkn c #ac9195", +"dZM c #ac9293", +"dZN c #ac9393", +"caQ c #ac9479", +"bpP c #ac957d", +"eXG c #ac958c", +"c.n c #ac987e", +"f4h c #ac989a", +"bhQ c #ac9a81", +"cxl c #ac9b83", +"bNW c #ac9b87", +"bhR c #ac9c83", +"bxk c #ac9c87", +"fJo c #ac9c9e", +"csb c #ac9d85", +"bNH c #aca08f", +"dtx c #aca09e", +"gym c #aca0a2", +"bFU c #aca197", +"fXZ c #aca1a1", +"bFV c #aca399", +"fRQ c #aca3a3", +"bNB c #aca69a", +"gGP c #aca6a6", +"f0A c #aca7a6", +"gm9 c #aca8ac", +"fRi c #aca9ad", +"ghx c #acaaad", +"fXn c #acaab3", +"bjb c #acaae3", +"bTv c #acabab", +"ba8 c #acabb0", +"fOm c #acabb1", +"f.D c #acabb2", +"fnd c #acabb3", +"fXj c #acabb4", +".BI c #acacac", +".Gl c #acacad", +"gHG c #acacae", +"gHR c #acacaf", +"gHC c #acacb2", +"fOz c #acacb4", +"dks c #acada4", +"b5w c #acadaa", +"gBR c #acadac", +".Gg c #acadad", +"gx# c #acadae", +"gHq c #acaeab", +"#kF c #acaeaf", +"bSO c #acafa8", +"gHK c #acafab", +"#gH c #acb0b0", +"ejn c #acb0b2", +"gHf c #acb0b4", +"dDs c #acb1a8", +"bOC c #acb1aa", +"ain c #acb1ae", +"#c9 c #acb1b0", +".7S c #acb1b1", +"gD3 c #acb1b6", +"bIL c #acb2ab", +"b#o c #acb2ae", +"#YP c #acb2b0", +".4l c #acb2b1", +".Ot c #acb2b2", +"cMa c #acb3a8", +"#XV c #acb3ab", +"a8o c #acb3af", +"fIr c #acb3ba", +"cQF c #acb4a9", +"fuX c #acb4b7", +"cQE c #acb5aa", +"apM c #acb5ad", +"bol c #acb5b0", +"gjm c #acb5b7", +"dLV c #acb6aa", +"cV4 c #acb6ab", +"aNA c #acb6b5", +"dwd c #acb6b7", +"#XQ c #acb7ad", +"#Lh c #acb7af", +"#AQ c #acb7b0", +"aTx c #acb7b5", +"aEQ c #acb7b6", +"gjj c #acb7b8", +"cXq c #acb8ae", +"#wN c #acb8b1", +"a5C c #acb8b4", +"bS6 c #acb8b5", +"bI6 c #acb8b6", +"a8D c #acb8b7", +"#wI c #acb9b0", +"cbC c #acb9b2", +"cn9 c #acb9b3", +"cHL c #acb9b6", +"fnU c #acb9ca", +"e7Y c #acb9df", +"c3i c #acbab1", +"cHK c #acbab2", +"c0o c #acbbb4", +"cWk c #acbcb8", +"cTm c #acbdb8", +"foc c #acbed9", +"dg8 c #acbfb8", +"ddd c #acbfb9", +"de1 c #acc0ba", +"fn4 c #acc1de", +"a9L c #acc36c", +".U8 c #acc4c4", +".32 c #accbd6", +"e43 c #accbec", +"feU c #acd0e1", +"e41 c #ace5fc", +"e8e c #aceefc", +"aRM c #ad0047", +"a2T c #ad4ea8", +"#Kz c #ad7900", +".C6 c #ad7d30", +".zs c #ad7f32", +".N6 c #ad803b", +"e0x c #ad8384", +"fEH c #ad8385", +"fdo c #ad848a", +"fdE c #ad8585", +"faz c #ad858b", +"fEk c #ad868e", +"eXa c #ad898c", +"gkA c #ad8a90", +"gws c #ad8a91", +"gwu c #ad8b90", +"gwr c #ad8c90", +"ggd c #ad8d92", +"fSS c #ad8d93", +"exC c #ad8e89", +"d9A c #ad9092", +"gu. c #ad9095", +"d4O c #ad9190", +"gua c #ad9295", +"d0Z c #ad934a", +"d2k c #ad9492", +"grC c #ad9699", +"bNO c #ad9b83", +"bzp c #ad9d8a", +"gyF c #ad9da0", +"bDD c #ad9e8e", +"cfa c #ad9f87", +"ffd c #ada0a1", +"bNI c #ada18f", +"fcp c #ada1a2", +"gyn c #ada1a3", +"bKg c #ada292", +"fIO c #ada2a2", +"dQc c #ada59c", +"gDm c #ada5a4", +"gc3 c #ada5a5", +"a4D c #ada698", +"dXD c #ada69b", +"at7 c #ada6a6", +"dG2 c #ada79e", +"gE9 c #ada89d", +"fqY c #ada8af", +"bFz c #ada99e", +"go1 c #ada9ad", +"eaq c #adaa9d", +"fp8 c #adaaaa", +"fWM c #adaaab", +"gi4 c #adaaac", +"eCP c #adabaa", +"f5F c #adabac", +"#Cm c #adabad", +"f0b c #adabb5", +"gzv c #adacb0", +"aR1 c #adacb1", +"e7v c #adacb2", +"fj5 c #adacb3", +"fXm c #adacb4", +"fOk c #adacb5", +"eCQ c #adadaa", +"gG5 c #adadac", +"#96 c #adadad", +"eg1 c #adadae", +"bVG c #adadaf", +"fRu c #adadb5", +".F9 c #adaeae", +".G. c #adaeaf", +"fUi c #adaeb5", +"bGX c #adafac", +"#l9 c #adafb0", +"dzk c #adb0a7", +"#h4 c #adb0b0", +"gH6 c #adb0b4", +"dxz c #adb1a8", +"d0B c #adb1af", +"eqW c #adb1b0", +".HC c #adb1b1", +"bMG c #adb2ab", +"#17 c #adb2ae", +".6B c #adb2b2", +"cqv c #adb3a9", +"aeN c #adb3ab", +"bch c #adb3af", +"#YK c #adb3b0", +"#ie c #adb3b1", +".RI c #adb3b3", +"abT c #adb4ac", +"frD c #adb4b6", +"cUo c #adb5aa", +"cx4 c #adb5ab", +"cT. c #adb5ad", +"a5u c #adb5b1", +"#UE c #adb6ae", +"aQi c #adb6b3", +"de5 c #adb6b7", +"gvi c #adb6b8", +"#4v c #adb7ae", +"#7o c #adb7af", +"d.J c #adb7b7", +"gll c #adb7b8", +"dOk c #adb8af", +"#UF c #adb8b0", +"aBP c #adb8b4", +"gtb c #adb8b9", +"c1D c #adb9af", +"bZj c #adb9b5", +"aBR c #adb9b6", +"ay1 c #adb9b7", +"ghj c #adb9b9", +"#El c #adbab1", +"cbB c #adbab2", +"cHJ c #adbab3", +"cs9 c #adbab4", +"ay0 c #adbab7", +"c0n c #adbbb3", +"eC1 c #adbbc8", +"e1F c #adbbde", +"cYR c #adbcb5", +"cMp c #adbcb7", +"cTk c #adbeb7", +"cUE c #adbeb8", +"cUF c #adbeb9", +"cYW c #adbfb8", +"c7B c #adc1be", +"fbQ c #adc2a5", +"fk4 c #adc6e5", +"gGL c #adc7af", +"aDj c #adfd0e", +"#NW c #adff02", +"a9Q c #ae0094", +"bcO c #ae06e5", +"bcN c #ae1ad6", +"#WW c #ae4d00", +".MP c #ae7e34", +"fjd c #ae7e86", +"fv8 c #ae8089", +".nV c #ae813d", +"faB c #ae848a", +".q6 c #ae8544", +"eNZ c #ae8583", +"e6O c #ae8686", +"g#6 c #ae878e", +"gwt c #ae8a90", +"eRR c #ae8b90", +"gmA c #ae8b91", +"fMM c #ae8c92", +"enq c #ae8d8e", +"gmw c #ae8e93", +"fHI c #ae908d", +"d4J c #ae9094", +"d9B c #ae9193", +"eQm c #ae938c", +"d4P c #ae9392", +"gub c #ae9397", +"egk c #ae9490", +"cc9 c #ae9576", +"brH c #ae9981", +"cpK c #ae9a80", +"eUX c #ae9a94", +"dSb c #ae9a97", +"bkJ c #ae9b81", +"gh8 c #ae9b9d", +"grt c #ae9b9f", +"ckj c #ae9c84", +"cfi c #ae9d83", +"gyG c #ae9ea0", +"b0r c #ae9f89", +"bR5 c #ae9f8b", +"bDv c #aea18d", +"fFW c #aea3a3", +"f1a c #aea4a5", +"gyi c #aea4a6", +"fUG c #aea5a5", +"d2J c #aea69b", +"ees c #aea69c", +"gCI c #aea6a5", +"fXx c #aea6a6", +"dSx c #aea79d", +"dLy c #aea89d", +"dG3 c #aea9a0", +"gFQ c #aea9a6", +"fZO c #aea9aa", +"gg1 c #aea9ab", +"g.t c #aea9ac", +"gEp c #aeaaaa", +"f2P c #aeaaab", +"f8b c #aeaaac", +"fI9 c #aeacad", +"f0a c #aeacb7", +"eg0 c #aeadab", +"#0E c #aeadae", +"fOe c #aeadaf", +"gxy c #aeadb1", +"aP# c #aeadb2", +"asl c #aeadb3", +"gD8 c #aeadb4", +"f3d c #aeadb6", +"bTb c #aeaeac", +"bCT c #aeaeae", +".F5 c #aeaeaf", +"gdl c #aeaeb1", +"fRv c #aeaeb6", +"fRr c #aeaeb7", +"aKS c #aeafae", +".G# c #aeafaf", +"elN c #aeb0af", +"gI# c #aeb1ad", +"bXx c #aeb1b0", +"#iR c #aeb1b1", +"gEJ c #aeb1b2", +"e.x c #aeb2b0", +"#fw c #aeb2b1", +"#mT c #aeb2b2", +"dDq c #aeb3aa", +"#5e c #aeb3af", +"#dt c #aeb3b2", +"#eA c #aeb3b3", +".Pn c #aeb3b4", +"fFs c #aeb3bb", +"cO8 c #aeb4aa", +"a#s c #aeb4b0", +".Pf c #aeb4b3", +".2s c #aeb4b4", +"gs5 c #aeb4b6", +"gnr c #aeb4b7", +"gqY c #aeb4c4", +"fN7 c #aeb4c6", +"aeM c #aeb5ad", +"a8q c #aeb6b2", +"gnq c #aeb6b8", +"dJA c #aeb7ad", +"aZz c #aeb7b4", +"gsT c #aeb7c2", +"cqG c #aeb8af", +"#RO c #aeb8b0", +"a5v c #aeb8b2", +"gdf c #aeb8b9", +"cV6 c #aeb9b0", +"#OO c #aeb9b1", +"bOR c #aeb9b3", +"a2v c #aeb9b5", +"gfa c #aeb9bb", +"cKW c #aebab0", +"aBQ c #aebab5", +"bXc c #aebab6", +"bK9 c #aebab8", +"dLZ c #aebbb2", +"cvF c #aebbb4", +"dBO c #aebcb9", +"c3t c #aebdbc", +"c3l c #aebfb8", +"cYV c #aebfb9", +"c4Z c #aec2be", +"ejQ c #aec2c3", +"#kk c #aec3be", +".U9 c #aec6c6", +".U7 c #aec6c7", +"f#g c #aeccdb", +"fnV c #aecfdf", +".34 c #aed0e5", +"fhP c #aed0ef", +"fb7 c #aed2e1", +"e42 c #aedcfb", +"a3M c #aee252", +"e40 c #aee9fd", +"f#l c #aeeafb", +"aXU c #aef240", +"#QZ c #aeff00", +"a6M c #af0089", +"baP c #af00a4", +"bdH c #af00b7", +"#ND c #af00ff", +"ad3 c #af0500", +"aXv c #af3ef6", +"aq8 c #af434c", +"ftL c #af7376", +"fmj c #af7d86", +"fP9 c #af8189", +".nR c #af823b", +"fzj c #af828b", +".E6 c #af8643", +"e0i c #af898f", +"f9H c #af8990", +"eJm c #af8d89", +"gwv c #af8d92", +"gt9 c #af9095", +"ek5 c #af918f", +"fBu c #af9195", +"d7i c #af9291", +"gt8 c #af9297", +"guc c #af9298", +"enG c #af938f", +"fYA c #af9498", +"dZO c #af9596", +"caP c #af977d", +"esV c #af9791", +"exK c #af9890", +"bQb c #af997f", +"btl c #af9984", +"bWH c #af9a82", +"gyU c #af9a9d", +"eSs c #af9b94", +"gpD c #af9b9d", +"gpz c #af9ca0", +"bPS c #af9e89", +"b.U c #af9e8b", +"bId c #af9e8e", +"gyH c #af9ea0", +"bUq c #af9f8a", +"fJm c #af9fa2", +"bNX c #afa08e", +"d48 c #afa098", +"dRG c #afa0a0", +"gaW c #afa6a6", +"gg8 c #afa8a7", +"gC. c #afa8a8", +"ejl c #afaaa7", +"gG8 c #afaaaa", +"bjc c #afaae2", +"fTW c #afabac", +"a61 c #afacac", +"fAf c #afacad", +"fn# c #afadac", +"gH. c #afadad", +"bVA c #afadae", +"cep c #afadaf", +"f3q c #afadb5", +"fj4 c #afaead", +"eg4 c #afaeb0", +"avo c #afaeb2", +"ax3 c #afaeb3", +"fg2 c #afaeb4", +"fbu c #afaeb5", +"eg5 c #afafab", +"e7j c #afafad", +"cJE c #afafaf", +"bTw c #afafb1", +"gCE c #afafb2", +"bTh c #afafb5", +"fXe c #afafb6", +"fXb c #afafb7", +"cBe c #afb0aa", +"eFa c #afb1b0", +"eyf c #afb1b1", +"ejt c #afb1b2", +"eaE c #afb2b1", +"#lm c #afb2b2", +"#jD c #afb2b3", +"gGy c #afb2b4", +"eeG c #afb3b2", +"#hv c #afb3b3", +"gns c #afb3b6", +"bQF c #afb4ac", +"#18 c #afb4b0", +"#l# c #afb4b3", +".5r c #afb4b4", +"gnt c #afb4b5", +"dQv c #afb5aa", +"cNw c #afb5ab", +"a#p c #afb5b1", +"#Vg c #afb5b4", +".IR c #afb5b5", +"abM c #afb6ad", +"anc c #afb6ae", +"#XS c #afb7af", +"f3O c #afb7b8", +"#HY c #afb8b2", +"dk1 c #afb8b4", +"aQp c #afb8b8", +"#XP c #afb9b0", +"#Lp c #afb9b1", +"a5D c #afb9b5", +"aES c #afb9b8", +"gjn c #afb9ba", +"dhk c #afb9bb", +"cV5 c #afbab1", +"#Lg c #afbab2", +"dhm c #afbabb", +"cvC c #afbbb2", +"#OQ c #afbbb3", +"dJE c #afbbb5", +"bAd c #afbbb9", +"cqM c #afbcb5", +"aBS c #afbcba", +"cFV c #afbdb6", +"c6b c #afbeb7", +"c0v c #afbfbc", +"c0p c #afc0ba", +"fhE c #afc1cd", +"dak c #afc2bc", +"c7C c #afc2be", +"dg6 c #afc3bd", +"ejR c #afc3c4", +"e79 c #afc3d2", +"#F3 c #afc534", +"fkK c #afcedd", +"aUL c #afe83b", +"aL2 c #b00036", +"arp c #b01d1b", +"a80 c #b01fdc", +"#TQ c #b04f03", +"fpo c #b08089", +"fVZ c #b08188", +".sg c #b08543", +"fNh c #b08589", +"fjc c #b0858c", +"eUB c #b08a89", +"fG3 c #b08b90", +"f7s c #b08b93", +"eJl c #b08d89", +"gww c #b08d93", +"gud c #b09399", +"fdT c #b09791", +"gyV c #b09a9d", +"ghW c #b09a9f", +"c.y c #b09b81", +"bN9 c #b09b82", +"bLX c #b09c84", +"fgM c #b09c95", +"gpC c #b09c9e", +"eQt c #b09d94", +"dIR c #b09d9a", +"dIQ c #b09d9c", +"gpE c #b09d9e", +"gyI c #b09da0", +"ckp c #b09e85", +"bWw c #b09e89", +"gyL c #b09ea0", +"buW c #b09f8a", +"eln c #b09f94", +"exS c #b09f95", +"bzo c #b0a089", +"bR6 c #b0a08a", +"bSd c #b0a08c", +"gyE c #b0a0a2", +"bP0 c #b0a28f", +"gro c #b0a3a5", +"bIb c #b0a496", +"f6b c #b0a5a6", +"bKi c #b0a69a", +"dXC c #b0a79d", +"ara c #b0a8a7", +"gvd c #b0a8a8", +"dXF c #b0aa9e", +"gHF c #b0aaab", +"dLz c #b0aba1", +"ftG c #b0abae", +"dN1 c #b0aca0", +"fQW c #b0acad", +"fCH c #b0acae", +"fw1 c #b0adad", +"fFe c #b0adaf", +"b9g c #b0aead", +"#3Z c #b0aeb0", +"gzs c #b0aeb1", +"gxx c #b0aeb2", +"gzt c #b0aeb3", +"fkS c #b0aeb6", +"gDu c #b0afab", +"eHG c #b0afad", +"fgY c #b0afae", +"dud c #b0afb2", +"gxw c #b0afb3", +"#Oi c #b0afb4", +"#99 c #b0afb5", +"feb c #b0afb6", +"fUu c #b0afb7", +"fLr c #b0afb8", +"eXS c #b0b0ad", +"eU7 c #b0b0ae", +"eOs c #b0b0af", +".zL c #b0b0b0", +".sy c #b0b0b1", +"dse c #b0b0b3", +"fRq c #b0b0b8", +"eMh c #b0b1af", +"eAH c #b0b1b1", +"gFT c #b0b2ac", +"cH8 c #b0b2b2", +"ftF c #b0b2b5", +"fN4 c #b0b2b7", +"bSP c #b0b3ac", +"dzl c #b0b4aa", +"#hH c #b0b4b4", +"gnu c #b0b4b5", +"f0X c #b0b4b6", +"bKS c #b0b5ae", +"afr c #b0b5b1", +".6x c #b0b5b5", +"csS c #b0b6ac", +"a8m c #b0b6b2", +"#5i c #b0b6b3", +".IQ c #b0b6b6", +"fyj c #b0b6b9", +"cqu c #b0b7ac", +"#1k c #b0b7af", +"cEo c #b0b7b4", +"#4y c #b0b8b0", +"ddh c #b0b8ba", +"ana c #b0b9b1", +"#Ep c #b0b9b4", +"#XO c #b0bab1", +"#7r c #b0bab2", +"#AR c #b0bab5", +"aHK c #b0bab9", +"gb# c #b0babb", +"#RM c #b0bbb3", +"glp c #b0bbba", +"f3N c #b0bbbc", +"fL. c #b0bbca", +"#HU c #b0bcb3", +"aZD c #b0bcb9", +"bAe c #b0bcba", +"ghg c #b0bcbd", +"dOl c #b0bdb3", +"cNO c #b0bdb6", +"#hV c #b0bdbe", +"cSf c #b0bdc5", +"e4G c #b0bdde", +"bEn c #b0beba", +"cR0 c #b0c0b8", +"dHu c #b0c0b9", +"cWh c #b0c0ba", +"cWi c #b0c1bb", +"cUG c #b0c1bc", +"dg7 c #b0c3bd", +"c3s c #b0c3be", +".V. c #b0c8c8", +"e1E c #b0c9da", +"fcj c #b0d1ed", +"fca c #b0e2fc", +"fnY c #b0e9f2", +"e8d c #b0edfc", +"aOQ c #b0f62e", +"adZ c #b0ff02", +"#Tp c #b100fe", +"ajX c #b11c08", +"#3N c #b13900", +"arl c #b14140", +"aTQ c #b14a89", +"arj c #b15554", +"ari c #b15e5e", +"#Q4 c #b16200", +"arf c #b17978", +".Ks c #b18035", +"f13 c #b1858c", +".pe c #b18640", +".mA c #b18847", +"eQ. c #b18886", +"fdl c #b18a8f", +"ard c #b18c8d", +"goB c #b18f95", +"eCg c #b1908b", +"eG2 c #b1908c", +"gon c #b19196", +"egh c #b19591", +"arc c #b19597", +"gaA c #b19598", +"d2h c #b19798", +"e64 c #b19993", +"gyO c #b19b9e", +"b2S c #b19c86", +"glV c #b19c9e", +"gyM c #b19c9f", +"cm4 c #b19d83", +"e0X c #b19d96", +"gyJ c #b19da0", +"caE c #b19f85", +"cpE c #b19f86", +"cpD c #b19f87", +"bL3 c #b19f88", +"eL0 c #b19f94", +"gyK c #b19fa0", +"exR c #b1a096", +"dRI c #b1a0a1", +"dxb c #b1a0a2", +"bUr c #b1a18c", +"gyD c #b1a1a2", +"ccR c #b1a28b", +"bSe c #b1a28e", +"bBu c #b1a290", +"bL6 c #b1a394", +"es6 c #b1a398", +"evz c #b1a499", +"gMx c #b1a4a6", +"dlZ c #b1a59f", +"cPy c #b1a5a6", +"gj. c #b1a9a5", +"#zR c #b1aa00", +"dYu c #b1aa86", +"gzO c #b1aaa9", +"gIw c #b1aaaa", +"bjd c #b1abdf", +"fn2 c #b1acb4", +"f0# c #b1afb9", +"eJZ c #b1b0ae", +"dv4 c #b1b0b3", +"fXl c #b1b0b4", +"#v3 c #b1b0b5", +"f.E c #b1b0b6", +"fLv c #b1b0b7", +"fLu c #b1b0b8", +"gGW c #b1b1af", +".Dg c #b1b1b1", +".F6 c #b1b1b2", +"fII c #b1b1b6", +"fhN c #b1b1bf", +"fLh c #b1b2b3", +"fWR c #b1b2b8", +"dLI c #b1b3a6", +"dtS c #b1b3a8", +"eg7 c #b1b3b3", +"dFa c #b1b4a9", +"glx c #b1b4b5", +"gHZ c #b1b4b9", +"cKI c #b1b5ac", +"#hT c #b1b5b5", +"gxH c #b1b5b8", +"#5f c #b1b6b2", +"#is c #b1b6b5", +".RQ c #b1b6b6", +".SI c #b1b6b7", +"f0T c #b1b6ba", +"dLR c #b1b7ab", +"#g6 c #b1b7b5", +".1i c #b1b7b6", +".KH c #b1b7b7", +"#4A c #b1b8b0", +".JQ c #b1b8b7", +".JM c #b1b8b8", +"f0R c #b1b8ba", +"bqh c #b1b9b3", +".JN c #b1b9b9", +"f0S c #b1b9bb", +"anb c #b1bab2", +"blr c #b1bab5", +"aQh c #b1bab7", +"dos c #b1bab9", +"cir c #b1bbb2", +"#OS c #b1bbb3", +"a2p c #b1bbb5", +"a5E c #b1bbb8", +"aER c #b1bbba", +"dx2 c #b1bbbc", +"#OH c #b1bcb4", +"a5w c #b1bcb6", +"aZy c #b1bcb7", +"a2w c #b1bcb9", +"f6k c #b1bcbc", +"gta c #b1bcbd", +"cV7 c #b1bdb3", +"#UC c #b1bdb5", +"a2q c #b1bdb7", +"bI1 c #b1bdb8", +"aTB c #b1bdbb", +"dhl c #b1bdbd", +"bCg c #b1bebb", +"aQr c #b1bebc", +"c3h c #b1bfb5", +"dFq c #b1c1ba", +"c1O c #b1c1bf", +"cXC c #b1c2bc", +"cYS c #b1c2bd", +"gxh c #b1c4d8", +"b5L c #b1c8d7", +"cje c #b1e1ba", +"#TM c #b1fb00", +"aAu c #b20002", +"arP c #b20005", +"aXY c #b2005e", +"#QG c #b200ff", +"bgG c #b219c0", +"arm c #b23738", +"ark c #b24b4a", +"arh c #b26767", +"arg c #b2716f", +".If c #b28135", +".zo c #b2833a", +"are c #b28383", +"fYX c #b2838b", +".qo c #b28746", +"fv9 c #b2878e", +"fpH c #b2898a", +"e3A c #b28b8a", +"eUj c #b28b92", +"eJh c #b28c8c", +"fBM c #b28c8f", +"gae c #b28e94", +"gar c #b28f92", +"eEC c #b2928d", +"gue c #b29398", +"g.c c #b29597", +"d7g c #b29698", +"evk c #b29891", +"d2o c #b29994", +"fYo c #b2999d", +"gdV c #b29a9e", +"gyN c #b29b9e", +"gyR c #b29c9e", +"gyP c #b29c9f", +"gyS c #b29da0", +"bNP c #b29e83", +"bMg c #b29e8a", +"fY# c #b29ea0", +"e3S c #b29f98", +"arb c #b29fa0", +"cuR c #b2a088", +"cfd c #b2a089", +"bt. c #b2a08b", +"g#B c #b2a0a1", +"b8o c #b2a188", +"bxj c #b2a189", +"bKs c #b2a190", +"fvm c #b2a1a2", +"b8n c #b2a38d", +"fDy c #b2a3a6", +"f8v c #b2a5a6", +"bKh c #b2a79b", +"bKj c #b2a89c", +"dXB c #b2a89e", +"drv c #b2a8a5", +"gnh c #b2a9a4", +"gli c #b2aaa4", +"gA2 c #b2abab", +"bbB c #b2ac9d", +"aCd c #b2adae", +"eyn c #b2b0ac", +"bo5 c #b2b0b0", +"#yL c #b2b0b2", +"dzJ c #b2b0b5", +"fXa c #b2b0b9", +"dxQ c #b2b1b4", +"dBQ c #b2b1b5", +"#Ah c #b2b1b6", +"fOq c #b2b1b7", +"e7w c #b2b1b8", +"f0r c #b2b1b9", +"gGg c #b2b2af", +"gG9 c #b2b2b1", +"bqT c #b2b2b2", +"eg2 c #b2b2b3", +"cgn c #b2b2b4", +"dDE c #b2b2b5", +"fOo c #b2b2ba", +".sI c #b2b3b2", +".sF c #b2b3b3", +".zH c #b2b3b5", +"dOq c #b2b3b6", +"eg8 c #b2b3b7", +"cyn c #b2b3ba", +"fOj c #b2b3bb", +"gFM c #b2b4b2", +"#6X c #b2b5b2", +"gxI c #b2b5b8", +"#gz c #b2b6b6", +"gxG c #b2b6b9", +"a5t c #b2b7b3", +"#jn c #b2b7b6", +"#dY c #b2b7b7", +"fAK c #b2b7ba", +"bIM c #b2b8b1", +"#5g c #b2b8b4", +"#19 c #b2b8b5", +"#kl c #b2b8b6", +".IP c #b2b8b8", +".JL c #b2b8b9", +"fDl c #b2b8bb", +"fQ8 c #b2b8bd", +"feV c #b2b8c5", +"dQw c #b2b9b0", +"#7v c #b2b9b1", +".JP c #b2b9b8", +".JO c #b2b9b9", +"cvx c #b2baaf", +"a2o c #b2bab6", +"dao c #b2babc", +"aTo c #b2bbb5", +"a8r c #b2bbb6", +"aTq c #b2bbb8", +"fZR c #b2bbc9", +"#4u c #b2bcb3", +"#UG c #b2bcb4", +"#Eo c #b2bcb6", +"aWC c #b2bcb8", +"aKu c #b2bcbb", +"cNV c #b2bcbc", +"dur c #b2bcbd", +"cHG c #b2bdb4", +"#OL c #b2bdb5", +"bQQ c #b2bdb7", +"aWB c #b2bdb8", +"#BO c #b2bdb9", +"aWH c #b2bdba", +"gEM c #b2bdc0", +"fWX c #b2bdc6", +"gu3 c #b2bdc7", +"c#d c #b2beb9", +"aWK c #b2bebc", +"c0j c #b2bfb5", +"cyc c #b2bfb8", +"cvE c #b2c0b9", +"dDC c #b2c0bd", +"f2X c #b2c0c9", +"c4U c #b2c1ba", +"cXz c #b2c2ba", +"c1N c #b2c4bf", +"dbI c #b2c5bf", +"#.q c #b2c8c4", +".V# c #b2cacb", +"ciK c #b2e3b7", +"fnW c #b2e3ef", +"fnX c #b2edf4", +"fkP c #b2f3fa", +"ag3 c #b2fa07", +"aOU c #b3003f", +"arr c #b30507", +"arq c #b31110", +"aro c #b32527", +"aly c #b3534a", +"#Zl c #b37945", +".D. c #b38235", +".xr c #b3853b", +"e6G c #b3878b", +"fpn c #b3878f", +"f4Y c #b38991", +".mC c #b38a48", +"f4Q c #b38b8f", +"gkI c #b38d95", +"fBD c #b39297", +"gwA c #b39298", +"guf c #b39498", +"guh c #b39499", +"fs6 c #b39591", +"eiA c #b39593", +"gui c #b39599", +"geE c #b3989b", +"f4A c #b3989c", +"d2i c #b39999", +"gsA c #b3999c", +"gpV c #b39c9d", +"gpF c #b39c9f", +"bSq c #b39d83", +"gyQ c #b39da0", +"b8E c #b39e84", +"grU c #b39e9f", +"gyT c #b39ea0", +"fVv c #b39ea1", +"btk c #b39f86", +"b0L c #b39f88", +"bYw c #b39f89", +"e67 c #b39f98", +"gnY c #b3a0a2", +"cxk c #b3a18a", +"b.T c #b3a18e", +"eOi c #b3a196", +"bu8 c #b3a28b", +"bSc c #b3a28c", +"dPv c #b3a2a4", +"bbQ c #b3a38e", +"bFH c #b3a390", +"bFN c #b3a391", +"b.W c #b3a491", +"bP1 c #b3a493", +"fGt c #b3a4a7", +"bPO c #b3a693", +"elt c #b3a99c", +"gq4 c #b3a9a6", +"bDL c #b3aaa1", +"gMu c #b3aaad", +"elz c #b3aba0", +"gMt c #b3aba9", +"gMv c #b3abab", +"bje c #b3abda", +"a4C c #b3ac9e", +"ei4 c #b3aca0", +"gHV c #b3acad", +"dSy c #b3ada1", +"c#I c #b3afb1", +"gKl c #b3afb2", +"diE c #b3b0a9", +"dgG c #b3b1aa", +"gCF c #b3b1b0", +"ft3 c #b3b1b4", +"dJK c #b3b1b6", +"fK8 c #b3b1b8", +".sH c #b3b2b2", +"ceq c #b3b2b3", +"dHy c #b3b2b5", +"dS5 c #b3b2b6", +"#DS c #b3b2b7", +"fOy c #b3b2ba", +".sG c #b3b3b2", +".Fi c #b3b3b3", +"dQF c #b3b3b5", +"dL5 c #b3b3b6", +"fRp c #b3b3bb", +"gHL c #b3b4ae", +"bZK c #b3b5b5", +"fN3 c #b3b5bd", +"gDt c #b3b6b4", +"#hY c #b3b6b6", +"gnv c #b3b6b7", +"#jN c #b3b7b6", +"#it c #b3b7b7", +"gxS c #b3b7b9", +"gxT c #b3b7ba", +"f5W c #b3b7c3", +"dOf c #b3b8ac", +"#ks c #b3b8b7", +".LW c #b3b8b8", +".Tt c #b3b8b9", +"dFh c #b3b9b0", +"a#q c #b3b9b5", +".JH c #b3b9b9", +"fyh c #b3b9bc", +"#7x c #b3bab2", +".JG c #b3baba", +"fb8 c #b3bac6", +"dOi c #b3bbb0", +"dQx c #b3bbb3", +"dbM c #b3bbbd", +"gGv c #b3bbbf", +"bls c #b3bcb7", +"aTp c #b3bcb8", +"a5x c #b3bcb9", +"cT# c #b3bdb4", +"#RN c #b3bdb5", +"#x3 c #b3bdb9", +"aNB c #b3bdbc", +"g.3 c #b3bdbe", +"#OR c #b3beb6", +"aTy c #b3bebc", +"ghi c #b3bebf", +"e4R c #b3bec9", +"cAo c #b3bfb8", +"glk c #b3bfbf", +"cYQ c #b3c0b7", +"cNN c #b3c0b9", +"dJF c #b3c1b9", +"cXB c #b3c4be", +"c0u c #b3c4bf", +"c4Y c #b3c5c2", +"eAY c #b3c5d3", +"c6f c #b3c6c3", +"f.Z c #b3c9ae", +".Vb c #b3cbcb", +"fxv c #b3cdd5", +"f#t c #b3d1ec", +"ctD c #b3e0ba", +"fhF c #b3e1e8", +"a0M c #b3f044", +"aLY c #b3fe1b", +"ag7 c #b40000", +"ame c #b40002", +"#De c #b400dc", +"#GF c #b400ff", +"#TR c #b45c00", +"fnD c #b47270", +"fku c #b48386", +".Bu c #b4853b", +"e9J c #b4868c", +".Ee c #b48945", +"fmg c #b48b92", +"e9U c #b48c8c", +"e0h c #b48c93", +"fj# c #b48c94", +"f4T c #b49096", +"evd c #b49490", +"gug c #b49498", +"d7h c #b49897", +"gcI c #b4989c", +"evl c #b49992", +"eb0 c #b49a95", +"c.v c #b49b82", +"eqm c #b49b94", +"eOc c #b49c94", +"fSI c #b49c9f", +"cfq c #b49d80", +"caN c #b49d81", +"gpH c #b49ea1", +"bYH c #b4a087", +"gpB c #b4a0a1", +"f1m c #b4a0a2", +"bhP c #b4a288", +"eJE c #b4a299", +"bWx c #b4a38d", +"bKe c #b4a38e", +"b.V c #b4a491", +"bBl c #b4a690", +"bNY c #b4a695", +"gps c #b4a8aa", +"eiY c #b4a99d", +"dU5 c #b4aea2", +"fqO c #b4b1b7", +"bxA c #b4b2af", +"bqQ c #b4b2b2", +"bTn c #b4b2b3", +"aed c #b4b2b4", +"fg1 c #b4b2ba", +"fUh c #b4b2bb", +".zK c #b4b3b3", +".sQ c #b4b3b4", +"gEq c #b4b3b5", +"fO5 c #b4b3b6", +"dVz c #b4b3b7", +"fUt c #b4b3b8", +"fK9 c #b4b3b9", +"fX# c #b4b3ba", +"fOn c #b4b3bb", +"f3b c #b4b3bc", +"gH9 c #b4b4b3", +".sK c #b4b4b4", +".Gd c #b4b4b5", +"gEA c #b4b5b2", +"#DN c #b4b5b4", +".xP c #b4b5b5", +"d75 c #b4b5b8", +"f2S c #b4b5bd", +"dF. c #b4b7ac", +"#kc c #b4b7b6", +"gxJ c #b4b7ba", +"coW c #b4b8b5", +"gxK c #b4b8bb", +"acp c #b4b9b5", +"gxV c #b4b9b8", +".LV c #b4b9ba", +"#8d c #b4bab6", +"#YL c #b4bab7", +".Lj c #b4baba", +"fGc c #b4babc", +"gjo c #b4babd", +"f#h c #b4bac5", +"cO6 c #b4bbb0", +"aA2 c #b4bbb3", +".Lk c #b4bbba", +".Ub c #b4bbbb", +"csZ c #b4bcb1", +"aZw c #b4bcb7", +"a8s c #b4bdb8", +"a2r c #b4bdba", +"dqt c #b4bebf", +"#Lo c #b4bfb6", +"#Ll c #b4bfb7", +"cJh c #b4c0b6", +"c1H c #b4c0b8", +"cHI c #b4c0b9", +"bQW c #b4c0bd", +"#j8 c #b4c0bf", +"c3e c #b4c1b7", +"cAq c #b4c1ba", +"gFe c #b4c1c6", +"cTg c #b4c2b9", +"dHv c #b4c3bd", +"c0s c #b4c5bf", +"cWj c #b4c5c0", +"de2 c #b4c7c1", +".Va c #b4cccb", +".Vc c #b4cccc", +"e4Z c #b4eafc", +"ciL c #b4ecb8", +"fhL c #b4edf7", +"axP c #b4f212", +"#GR c #b4ff00", +"a9R c #b5009a", +"ady c #b500ff", +"aCQ c #b508fc", +"auo c #b50c0d", +"aa0 c #b50f00", +"arn c #b52d30", +"aq5 c #b52f3d", +"a0p c #b544f6", +"aHY c #b54570", +"aLe c #b54a4c", +"afX c #b55444", +"fP8 c #b58893", +"fzn c #b58990", +"fEj c #b58a94", +"eLx c #b58d8e", +"fNn c #b58e91", +"eJa c #b59394", +"gul c #b5949a", +"gqm c #b59599", +"aKZ c #b59694", +"fD4 c #b59699", +"guj c #b5969a", +"got c #b5969b", +"fES c #b59795", +"d4N c #b59998", +"caO c #b59b83", +"gml c #b59b9e", +"fPJ c #b59c9f", +"fMC c #b59ca0", +"b8D c #b59d83", +"grT c #b59ea0", +"gpG c #b59ea1", +"chO c #b59f7f", +"c.w c #b59f84", +"caM c #b5a07f", +"b0E c #b5a085", +"b2L c #b5a188", +"gpA c #b5a1a5", +"bK. c #b5a28a", +"bWv c #b5a28b", +"bUp c #b5a28d", +"f.c c #b5a29b", +"f89 c #b5a2a6", +"b8p c #b5a38b", +"bu7 c #b5a38c", +"bWy c #b5a48f", +"bUs c #b5a592", +"brv c #b5a593", +"b2v c #b5a68f", +"bPM c #b5a795", +"bKk c #b5a89c", +"evx c #b5a89d", +"gMs c #b5acaa", +"a4G c #b5ada0", +"gMw c #b5aeae", +"dEX c #b5afa7", +"gD1 c #b5b1af", +"gD0 c #b5b2b5", +"bTt c #b5b3b4", +"d29 c #b5b3b7", +"fOl c #b5b3bc", +".tP c #b5b4b4", +"d0C c #b5b4b6", +"dX8 c #b5b4b7", +"d5y c #b5b4b8", +"ftq c #b5b4ba", +"f0v c #b5b4bb", +"fOx c #b5b4bc", +"b5B c #b5b5b4", +"c#O c #b5b5b5", +"fw8 c #b5b5b9", +"e4c c #b5b5bb", +"fOi c #b5b5bd", +"fRo c #b5b5be", +"bE2 c #b5b6b7", +"egV c #b5b6b9", +"eyo c #b5b7b7", +"#hZ c #b5b8b8", +"#lf c #b5b9b8", +"#gC c #b5b9b9", +"gxU c #b5b9bc", +"dJt c #b5bab2", +"afq c #b5bab6", +"#g3 c #b5bab8", +"#fo c #b5bab9", +".IO c #b5baba", +"gxL c #b5babc", +"f3P c #b5babd", +"a#r c #b5bbb7", +"#fP c #b5bbb9", +".Ni c #b5bbba", +".Mj c #b5bbbb", +"cMb c #b5bcb1", +"#XT c #b5bcb4", +".Mk c #b5bcbb", +".Lf c #b5bcbc", +"#1f c #b5beb5", +"#HX c #b5beb7", +"cRV c #b5bfb6", +"aZx c #b5bfba", +"bK3 c #b5bfbc", +"gba c #b5bfc0", +"cqI c #b5c0b7", +"cya c #b5c0b8", +"aQq c #b5c0be", +"#UB c #b5c1b9", +"aTA c #b5c1bf", +"cQN c #b5c2b9", +"cPn c #b5c2ba", +"cTj c #b5c2bb", +".Ha c #b5c2c3", +"c3m c #b5c4be", +"fxw c #b5c4db", +"cYT c #b5c6c0", +"boz c #b5c8b0", +"feN c #b5cfd6", +"feX c #b5d6f4", +"ctI c #b5e0bf", +"#0l c #b5fd00", +"aUP c #b60054", +"agB c #b600f6", +"aw5 c #b61b18", +"alv c #b65351", +"baB c #b678e0", +".Gv c #b68437", +".pj c #b6863b", +".zm c #b6883c", +".Bw c #b6883d", +"fme c #b68892", +".tf c #b68a44", +"e3u c #b68b8e", +"aK1 c #b68c8a", +"fjn c #b68c8e", +"f7x c #b68c94", +"f9M c #b68e95", +"ePY c #b69091", +"eGQ c #b69394", +"guk c #b6959b", +"ekX c #b69698", +"gwC c #b6969b", +"gum c #b6969c", +"gkT c #b6979b", +"gwB c #b6979c", +"esL c #b69894", +"eny c #b69896", +"f7Z c #b6999b", +"grR c #b69c9f", +"cc8 c #b69d7d", +"esT c #b69d96", +"grV c #b69da2", +"d7p c #b69e9a", +"c.x c #b6a084", +"eAk c #b6a097", +"bkI c #b6a187", +"bYv c #b6a189", +"bkH c #b6a287", +"gnR c #b6a2a4", +"gk. c #b6a2a5", +"gjX c #b6a2a6", +"bNV c #b6a38c", +"gnS c #b6a3a4", +"gbE c #b6a3a7", +"bH4 c #b6a491", +"bYx c #b6a58d", +"cay c #b6a58f", +"bKr c #b6a593", +"eiS c #b6a59b", +"bR7 c #b6a68f", +"bDC c #b6a794", +"bL7 c #b6a89b", +"ecd c #b6a89f", +"dnE c #b6a8a1", +"dpy c #b6a9a3", +"bjf c #b6aad9", +"grn c #b6abae", +"gJE c #b6acab", +"eag c #b6ada2", +"d0c c #b6aea3", +"b.E c #b6afa3", +"bNA c #b6b1a5", +"bJs c #b6b3b5", +"d0m c #b6b4a7", +"gH3 c #b6b4b0", +"gGV c #b6b4b5", +"fX. c #b6b4bb", +"aKT c #b6b5ae", +"gHU c #b6b5b1", +"gHP c #b6b5b4", +".sz c #b6b5b6", +"eaG c #b6b5b8", +"f54 c #b6b5b9", +"fbm c #b6b5bb", +"gGZ c #b6b5bc", +"fIC c #b6b5bd", +"#yS c #b6b649", +"#FP c #b6b6b6", +"bGP c #b6b6b7", +"e1d c #b6b6b8", +"eeH c #b6b6b9", +"fIy c #b6b6ba", +"fUo c #b6b6bd", +"dkr c #b6b7af", +"cfX c #b6b7b1", +".v8 c #b6b7b6", +".zN c #b6b7b8", +"cLf c #b6b8af", +"dxy c #b6b8b1", +"bE3 c #b6b8b8", +"gHr c #b6b8b9", +"gxW c #b6b9b7", +"#lZ c #b6b9b9", +"gG3 c #b6b9ba", +"gHu c #b6b9bb", +"f0U c #b6b9bc", +"gIM c #b6bab8", +"gxR c #b6babd", +"fZT c #b6bac6", +"aco c #b6bbb7", +".7O c #b6bbbb", +".M4 c #b6bbbc", +"glu c #b6bbbe", +"dQu c #b6bcb2", +"aEz c #b6bcb8", +"#fS c #b6bcba", +".Oq c #b6bcbb", +".Le c #b6bcbc", +"akA c #b6bdb5", +".JF c #b6bdbc", +".UW c #b6bdbd", +"eCW c #b6bdc4", +"ghp c #b6bec1", +"dQy c #b6bfb7", +"#XM c #b6c0b7", +"bon c #b6c0ba", +"dss c #b6c0c1", +"fT6 c #b6c0c6", +"f2U c #b6c0ce", +"#OK c #b6c1b9", +"glo c #b6c1c1", +"dL0 c #b6c2ba", +"bSZ c #b6c2bb", +"bVc c #b6c2bf", +"bGJ c #b6c2c0", +"cQO c #b6c3ba", +"cFU c #b6c3bb", +"cRZ c #b6c4bb", +"dFr c #b6c4c1", +"cUD c #b6c5bd", +"c1K c #b6c6c0", +"c0t c #b6c7c1", +"de3 c #b6c9c2", +"dde c #b6c9c3", +"e11 c #b6cae3", +"dTb c #b6cdb8", +"e8k c #b6cde7", +"cth c #b6ddb9", +"ctF c #b6debb", +"ctB c #b6dfbd", +"ctC c #b6e0bd", +"ctO c #b6e1bc", +"ctH c #b6e1be", +"fkL c #b6ebf4", +"aRI c #b6fd2e", +"ao1 c #b70000", +"auH c #b70058", +"axk c #b700f5", +"awD c #b74355", +"aLf c #b74643", +".Ig c #b78536", +".Ih c #b78537", +".Ii c #b78637", +"aK2 c #b78885", +"faI c #b78d91", +"#P2 c #b78e3e", +"e6M c #b78f8f", +"e0e c #b78f94", +"ga. c #b78f97", +"aK0 c #b79290", +"f1Y c #b7949b", +"fZh c #b79598", +"fsr c #b7999d", +"fJO c #b79b9f", +"ed4 c #b79c97", +"fjK c #b79e9a", +"b0W c #b7a089", +"e0S c #b7a097", +"gyW c #b7a0a3", +"b8F c #b7a188", +"gnT c #b7a3a4", +"gnP c #b7a3a5", +"f4g c #b7a3a6", +"bPT c #b7a58e", +"eHk c #b7a59b", +"gdP c #b7a5a6", +"csd c #b7a68d", +"bFM c #b7a692", +"bzf c #b7a790", +"bpD c #b7a795", +"f9e c #b7a7a8", +"bR4 c #b7a895", +"bSf c #b7a896", +"dA0 c #b7a8a5", +"egA c #b7aba0", +"a7D c #b7ad9f", +"d7G c #b7aea3", +"d97 c #b7afa3", +"dXE c #b7b0a5", +"d5P c #b7b188", +"bbz c #b7b1a7", +"gKq c #b7b2b1", +"gG1 c #b7b4ac", +"gCr c #b7b4b4", +"bHe c #b7b5b4", +"ecD c #b7b5b8", +"fnS c #b7b5be", +".zI c #b7b6b7", +"ejh c #b7b6b9", +"eoh c #b7b6ba", +".WT c #b7b6bb", +"e4a c #b7b6bc", +"e7q c #b7b6bd", +"fRC c #b7b6be", +".sJ c #b7b7b7", +"bJe c #b7b7b8", +"bXD c #b7b7b9", +"fw9 c #b7b7bb", +"fRx c #b7b7be", +"dtR c #b7b8ae", +"gDQ c #b7b8b4", +".zM c #b7b8b9", +"b7B c #b7b8bd", +"b5E c #b7b9b9", +"gER c #b7b9bb", +"dFf c #b7bab1", +"#nj c #b7bab9", +"#i7 c #b7baba", +".G5 c #b7babb", +"cGg c #b7bbba", +"#hB c #b7bbbb", +"gxQ c #b7bbbe", +"e8. c #b7bbc4", +".M3 c #b7bcbc", +"cyu c #b7bcbe", +"fyi c #b7bcbf", +"cM# c #b7bdb3", +"#IN c #b7bdbb", +".Jh c #b7bdbc", +".Mf c #b7bdbd", +"glv c #b7bdbe", +"#8b c #b7beba", +".Nq c #b7bebe", +"fuY c #b7bfc1", +"bom c #b7c0bb", +"cCw c #b7c0be", +"#XN c #b7c1b8", +"gq8 c #b7c1c2", +"cy# c #b7c2ba", +"cHH c #b7c2bb", +"#Fk c #b7c2be", +"ghh c #b7c2c3", +"cK2 c #b7c3ba", +"cMn c #b7c3bb", +"cNM c #b7c3bc", +"aTz c #b7c3c1", +"gji c #b7c3c3", +"cPm c #b7c4bb", +"cRY c #b7c5bc", +"dJG c #b7c5bd", +"cEc c #b7c5be", +"cWg c #b7c7c1", +"cXD c #b7c8c2", +"d.H c #b7c8c4", +"c7F c #b7c8c7", +"c6e c #b7cac6", +"dh. c #b7cac7", +"dY. c #b7d7b5", +"ctl c #b7dfbb", +"ctP c #b7dfbc", +"ctt c #b7e0ba", +"ctK c #b7e1ba", +"cty c #b7e1bb", +"ctN c #b7e1bc", +"ctv c #b7e2bb", +"ctJ c #b7e2bf", +"e4Y c #b7ecfc", +"#Kt c #b7ff01", +"#0q c #b84400", +"aLc c #b85250", +"fqw c #b8615c", +"aK4 c #b87e7a", +"aK3 c #b88480", +".MO c #b88537", +".Kt c #b88538", +".Gw c #b88637", +".Gx c #b88638", +".Ek c #b8873a", +".xk c #b88b42", +"f7p c #b89295", +"eUm c #b89296", +"gek c #b8959b", +"gd7 c #b8999e", +"aKY c #b89a98", +"goo c #b89b9f", +"#Du c #b89c00", +"aKX c #b89c9c", +"grX c #b89da2", +"gyX c #b89ea3", +"grS c #b8a0a2", +"bYq c #b8a387", +"gnU c #b8a3a5", +"b0K c #b8a48b", +"gnQ c #b8a4a6", +"gl0 c #b8a5a6", +"cuQ c #b8a68e", +"beO c #b8a78e", +"bYy c #b8a792", +"bWz c #b8a895", +"bL8 c #b8ab9e", +"aKU c #b8aba9", +"bKm c #b8ac9e", +"d96 c #b8aea3", +"d5# c #b8aea4", +"#zS c #b8af00", +"gKT c #b8afb1", +"gKs c #b8b0b0", +"gK2 c #b8b0b1", +"gEy c #b8b1ad", +"gKX c #b8b1b1", +"gL. c #b8b2b1", +"gK4 c #b8b2b2", +"dQd c #b8b3a9", +"gL2 c #b8b3b2", +"gLb c #b8b3b3", +"eAS c #b8b4b1", +"ear c #b8b5a8", +"eyg c #b8b6b9", +".zJ c #b8b7b7", +"#FS c #b8b7b8", +"eqX c #b8b7ba", +"fqa c #b8b7bb", +"fRB c #b8b7bc", +"fIw c #b8b7bd", +"fK7 c #b8b7bf", +"#32 c #b8b8b8", +"bTy c #b8b8ba", +"eAI c #b8b8bb", +"fkI c #b8b8c0", +".G4 c #b8babb", +"#k2 c #b8bbbb", +".G3 c #b8bbbc", +"gEC c #b8bbc2", +"#mx c #b8bcbb", +"#gI c #b8bcbc", +"ght c #b8bcbf", +"gxM c #b8bcc0", +"a8n c #b8bdb9", +"#fX c #b8bdbc", +"glw c #b8bdbe", +"#xS c #b8bebc", +".Pc c #b8bebd", +".Me c #b8bebe", +"#1i c #b8bfb7", +".K1 c #b8bfbe", +".Ld c #b8bfbf", +"blt c #b8c1bc", +"gnk c #b8c1c3", +"#1b c #b8c2ba", +"aWA c #b8c2bc", +"f8F c #b8c2c3", +"cvD c #b8c3bb", +"bVa c #b8c3bd", +"e1G c #b8c3e0", +"bXd c #b8c4c0", +"a5F c #b8c4c1", +"a2x c #b8c4c2", +"cTh c #b8c5bc", +"cyb c #b8c5be", +"cTi c #b8c6bd", +"#hW c #b8c6c7", +"cWe c #b8c7be", +"b9r c #b8c7d6", +"bi3 c #b8c8df", +"c0q c #b8c9c3", +"dbJ c #b8cac4", +"cXA c #b8cac5", +"c8T c #b8cbc7", +"gIs c #b8ccb7", +"dTa c #b8cdb9", +"cti c #b8ddb9", +"ctk c #b8debb", +"ctQ c #b8debd", +"ctE c #b8dfba", +"ctm c #b8dfbb", +"eYq c #b8e0c9", +"ctL c #b8e1b9", +"ctM c #b8e1ba", +"ctA c #b8e1bc", +"ctx c #b8e2b9", +"ctw c #b8e2ba", +"ctu c #b8e2bb", +"f#k c #b8e4fa", +"cjd c #b8ebb7", +"feT c #b8f4fb", +"aDn c #b9000e", +"a5W c #b92ec7", +"aLb c #b95559", +"d05 c #b96566", +"aK9 c #b96864", +"aK8 c #b96d69", +".Bt c #b9893d", +".C8 c #b98a3e", +".zn c #b98b42", +"#GZ c #b98c00", +"fKo c #b99196", +"gch c #b9949a", +"gkM c #b9949b", +"exv c #b99595", +"giB c #b9969b", +"f9E c #b9979a", +"g#Z c #b9979e", +"gwD c #b9999e", +"eql c #b99c97", +"d4M c #b99e9d", +"grW c #b99ea3", +"gyY c #b99fa3", +"aKW c #b9a0a0", +"bkB c #b9a284", +"c.u c #b9a286", +"bnL c #b9a287", +"gnW c #b9a2a5", +"gyZ c #b9a2a6", +"#FX c #b9a33a", +"b0D c #b9a389", +"at9 c #b9a3a3", +"gnV c #b9a3a6", +"b6J c #b9a48c", +"exL c #b9a49b", +"dXj c #b9a4a0", +"gl5 c #b9a4a7", +"eqv c #b9a59c", +"gl1 c #b9a5a6", +"glY c #b9a5a7", +"glZ c #b9a5a8", +"cpJ c #b9a68c", +"cmY c #b9a68d", +"fb. c #b9a69f", +"aKV c #b9a6a6", +"gj3 c #b9a6a8", +"gj1 c #b9a6a9", +"gj2 c #b9a7a8", +"fvj c #b9a7aa", +"bnA c #b9a894", +"dPu c #b9a9a9", +"bPL c #b9aa96", +"fGw c #b9aaab", +"bNZ c #b9ab9b", +"bKn c #b9ab9d", +"bPN c #b9ac9a", +"gKt c #b9aeaf", +"bT5 c #b9af9e", +"gKr c #b9afb0", +"a7E c #b9b0a0", +"egE c #b9b0a4", +"gCs c #b9b0b0", +"gKu c #b9b0b1", +"d2L c #b9b1a6", +"bBB c #b9b1a8", +"gK1 c #b9b1b2", +"gK3 c #b9b2b1", +"gKY c #b9b2b2", +"gL3 c #b9b2b3", +"gKZ c #b9b3b3", +"gL7 c #b9b4b3", +"eCT c #b9b5b0", +"gHJ c #b9b7b2", +"fqp c #b9b7b9", +"b5A c #b9b8b9", +"eFb c #b9b8bb", +"eHI c #b9b8bc", +"fUg c #b9b8be", +"fIG c #b9b8bf", +"fLq c #b9b8c0", +"aee c #b9b9b8", +"aef c #b9b9b9", +".Sj c #b9b9ba", +"bXE c #b9b9bb", +"eJ2 c #b9b9bc", +"fIj c #b9b9be", +"fIi c #b9b9bf", +"fOh c #b9b9c1", +"gHi c #b9bab8", +".xM c #b9babb", +"b5D c #b9bbb7", +"gxX c #b9bbb9", +"fh2 c #b9bbbb", +"gDk c #b9bbbf", +"fQ3 c #b9bbc2", +"csN c #b9bcb3", +"gFo c #b9bcb7", +".HO c #b9bcbc", +".HR c #b9bcbd", +"gxP c #b9bcc0", +"dF# c #b9bdb2", +"dSU c #b9bdb3", +"cry c #b9bdba", +"#0C c #b9bdbb", +".G2 c #b9bdbd", +"g#. c #b9bdbe", +"gxN c #b9bdc0", +"gxO c #b9bdc1", +"dSV c #b9beb4", +"dHi c #b9beb6", +"gEm c #b9bebd", +".Of c #b9bebf", +"gjp c #b9bec1", +"dQs c #b9bfb4", +"#7w c #b9bfb7", +"#5h c #b9bfbb", +"#Pw c #b9bfbd", +".Ji c #b9bfbe", +".K2 c #b9bfbf", +"dQt c #b9c0b6", +"#XU c #b9c0b8", +"#YO c #b9c0be", +".JE c #b9c0bf", +".JA c #b9c0c0", +"f5O c #b9c1cb", +"crs c #b9c1d0", +"cUr c #b9c2b8", +"#IS c #b9c2bf", +"gfg c #b9c2c3", +"#1e c #b9c3ba", +"#1d c #b9c3bb", +"f6l c #b9c3c4", +"cAn c #b9c4bc", +"bMO c #b9c4be", +"aWI c #b9c4c2", +"gs8 c #b9c4c5", +"cMj c #b9c5bb", +"cUB c #b9c5bc", +"cFS c #b9c5bd", +"a8E c #b9c5c3", +"cQ3 c #b9c5cd", +"cJi c #b9c6bc", +"cUA c #b9c6bd", +"#i1 c #b9c6c6", +"gs6 c #b9c6c7", +"baG c #b9c790", +"c3g c #b9c7bd", +"dJH c #b9c7bf", +"dHw c #b9c7c3", +"c6d c #b9ccc8", +"ddf c #b9cdc7", +"ctS c #b9dbb9", +"ctR c #b9dbbc", +"ctj c #b9ddba", +"ctz c #b9dfba", +"ctn c #b9e0bd", +"e1A c #b9e0c2", +"ctp c #b9e1bc", +"ctq c #b9e2bb", +"e1Z c #b9e2f8", +"e8c c #b9eafb", +"feO c #b9edef", +"f#f c #b9edf5", +"fb6 c #b9f3fa", +"fkO c #b9fafb", +"#6I c #b9fd00", +"a6N c #ba0084", +"aul c #ba211e", +"auk c #ba2a29", +"aE9 c #ba3a6b", +"auh c #ba4645", +"a6q c #ba58f8", +"auf c #ba5958", +"aL# c #ba5f5b", +"a9x c #ba5ff4", +"aL. c #ba6460", +"ftK c #ba7271", +"#N2 c #ba7300", +"aK6 c #ba7573", +"aK5 c #ba7976", +"#KA c #ba7e00", +"aub c #ba7e7c", +".GA c #ba8739", +".Gy c #ba883a", +".Gz c #ba893b", +".uw c #ba8d46", +"fjm c #ba9091", +"e9M c #ba9094", +"fzm c #ba9095", +"fsW c #ba9192", +"e0g c #ba9198", +"eN0 c #ba9490", +"fwa c #ba9499", +"gkG c #ba979d", +"gun c #ba999e", +"eA. c #ba9a94", +"eqa c #ba9a98", +"au. c #ba9a9a", +"eqe c #ba9b98", +"enB c #ba9c99", +"fCj c #ba9c9a", +"gmD c #ba9ca1", +"f5p c #ba9d9f", +"gom c #ba9da1", +"grY c #ba9fa4", +"f9n c #baa0a4", +"eQo c #baa19a", +"fgK c #baa19c", +"f.# c #baa29c", +"dUH c #baa29f", +"gy0 c #baa3a8", +"bYr c #baa589", +"b0F c #baa58a", +"btj c #baa58c", +"gl2 c #baa5a7", +"gl6 c #baa5a8", +"b4H c #baa68c", +"gj4 c #baa6a8", +"gj0 c #baa6a9", +"cmZ c #baa78e", +"gj7 c #baa7a9", +"f88 c #baa7ab", +"egx c #baa8a0", +"gj8 c #baa8aa", +"bxa c #baa991", +"bzn c #baaa91", +"fSk c #baadb1", +"bKl c #baafa1", +"gKI c #bab0b1", +"gKU c #bab0b2", +"gKE c #bab1b1", +"gKA c #bab1b2", +"b.G c #bab2a4", +"eex c #bab2a6", +"egL c #bab2a7", +"gK9 c #bab2b2", +"gKS c #bab2b3", +"gK0 c #bab3b3", +"gK8 c #bab3b4", +"gLj c #bab4b2", +"gL4 c #bab4b3", +"gLi c #bab4b4", +"bE1 c #bab5b5", +"gDC c #bab6b4", +"bCR c #bab6b6", +"bJr c #bab8b8", +".sR c #bab9ba", +"eQN c #bab9bc", +"eU8 c #bab9bd", +"e4b c #bab9bf", +"fRn c #bab9c0", +"fRD c #bab9c1", +".Eq c #bababa", +".V8 c #bababb", +"fFQ c #bababf", +"eyx c #babbb9", +"ak. c #babbba", +"gCJ c #babcba", +"bXy c #babcbb", +"fk8 c #babcbc", +".HK c #babdbd", +".HQ c #babdbe", +"dJk c #babeb1", +".HP c #babebe", +"gFx c #babec4", +"dST c #babfb5", +"#jj c #babfbe", +".Og c #babfbf", +"fN2 c #babfc9", +"csT c #bac0b6", +"#8c c #bac0bc", +"#Vi c #bac0be", +".Jj c #bac0bf", +".JB c #bac0c0", +".VM c #bac0c1", +".JC c #bac1c0", +".JD c #bac1c1", +"fuZ c #bac1c3", +"#Mi c #bac2c0", +"f6m c #bac3c5", +"eYt c #bac3dd", +"cUt c #bac4bb", +"cEa c #bac4bc", +"cNL c #bac4bd", +"gnm c #bac4c5", +"gpa c #bac4c6", +"cs6 c #bac5bc", +"#Ux c #bac5bd", +"gjh c #bac5c5", +"gq6 c #bac5c6", +"cTa c #bac6bc", +"bI2 c #bac6c2", +"bCe c #bac6c4", +"gnj c #bac6c6", +"gvg c #bac6c7", +"dQz c #bac7bc", +"cQM c #bac7be", +"cAp c #bac7c0", +"dQB c #bac8bf", +"gva c #bac8db", +"c4V c #bac9c3", +"c3n c #bacac4", +"dal c #bacbc4", +"cYU c #bacbc5", +"f2Z c #bacbdc", +"c1L c #baccc6", +"gGJ c #bacdbc", +"c4X c #bacdc9", +"e7R c #bacfb8", +"eYr c #bad7d2", +"e10 c #bad8f3", +"cto c #bae2bd", +"e78 c #bae2eb", +"ctr c #bae3bb", +"cts c #bae3bc", +"a9K c #bae466", +"a3R c #bb007d", +"#Ke c #bb00ff", +"aum c #bb1816", +"#9T c #bb1a00", +"auj c #bb3433", +"aui c #bb3c3c", +"aLd c #bb4d4d", +"aug c #bb4f4e", +"aLa c #bb5959", +"aue c #bb6262", +"aud c #bb6b6a", +"aK7 c #bb716e", +"auc c #bb7674", +"ajW c #bb800d", +"aua c #bb8888", +".qu c #bb8c41", +".zp c #bb8e43", +".mB c #bb9049", +"e3v c #bb9092", +"au# c #bb9191", +"fYS c #bb959c", +"eB7 c #bb9798", +"gux c #bb999e", +"gwE c #bb9aa0", +"fzR c #bb9b99", +"enp c #bb9b9e", +"fJW c #bb9b9f", +"gmH c #bb9ba0", +"fPR c #bb9ca1", +"gus c #bb9ca2", +"goy c #bb9da1", +"ek7 c #bb9f9b", +"gl4 c #bba4a8", +"gy1 c #bba4a9", +"gl3 c #bba5a8", +"dPT c #bba6a3", +"gj6 c #bba6a8", +"bPU c #bba78c", +"glW c #bba7a9", +"b0M c #bba88f", +"bt# c #bba890", +"gj9 c #bba8aa", +"bHY c #bba992", +"bjg c #bba9db", +"fvl c #bbaaab", +"bjh c #bbaadc", +"bBt c #bbab95", +"ghZ c #bbabac", +"gKJ c #bbb1b1", +"gKv c #bbb1b2", +"gKR c #bbb1b3", +"gLO c #bbb2b0", +"gKQ c #bbb2b1", +"gKD c #bbb2b2", +"gKF c #bbb2b3", +"gLa c #bbb2b4", +"gLH c #bbb3b1", +"gL1 c #bbb3b3", +"gKW c #bbb3b4", +"gKp c #bbb4b2", +"gLS c #bbb4b3", +"gK5 c #bbb4b4", +"gL6 c #bbb4b5", +"gLm c #bbb4b6", +"gHM c #bbb4b9", +"gLf c #bbb5b4", +"gLU c #bbb5b5", +"eap c #bbb7aa", +"amI c #bbb7b6", +"b9t c #bbb8ba", +"d7Q c #bbb9ac", +"bGO c #bbb9b7", +"bVz c #bbb9b8", +"bCB c #bbb9bd", +".tw c #bbbaba", +"bRb c #bbbabb", +"eXU c #bbbabd", +"e36 c #bbbabe", +"fnc c #bbbabf", +"fIE c #bbbac0", +"fea c #bbbac1", +"fLp c #bbbac2", +"#FU c #bbbbb6", +"b5C c #bbbbb8", +"gsO c #bbbbba", +"#0G c #bbbbbb", +"fgZ c #bbbbbf", +"f56 c #bbbbc0", +"e4S c #bbbdc3", +"f5X c #bbbdc4", +"#ml c #bbbebd", +".G1 c #bbbebf", +"gxF c #bbbec1", +"f5P c #bbbec5", +"gEI c #bbbfbc", +".HJ c #bbbfbf", +"e1Q c #bbbfc5", +"dSW c #bbc0b8", +"#Sj c #bbc0be", +".Ju c #bbc0bf", +".O6 c #bbc0c0", +".O7 c #bbc0c1", +"cM. c #bbc1b7", +"#2. c #bbc1bd", +"#Fd c #bbc1bf", +".Jt c #bbc1c0", +".L. c #bbc1c1", +"gH7 c #bbc1c3", +"#1j c #bbc2ba", +".Jk c #bbc2c0", +".Lc c #bbc2c2", +"gvh c #bbc4c6", +"cSg c #bbc4c9", +"fWQ c #bbc4d0", +"cUs c #bbc5bc", +"cMm c #bbc5bd", +"cK1 c #bbc5be", +"#BH c #bbc5c1", +"gbb c #bbc5c6", +"coP c #bbc5d2", +"cUu c #bbc6bd", +"#OI c #bbc6be", +"gno c #bbc6c6", +"gvf c #bbc6c7", +"gs7 c #bbc6c8", +"cPl c #bbc7be", +"cJl c #bbc7bf", +"bGI c #bbc7c4", +"a8G c #bbc7c5", +"cTb c #bbc8bd", +"cUC c #bbc8bf", +"dJI c #bbc8c3", +"c3f c #bbc9bf", +"dQC c #bbc9c0", +"dOo c #bbcac1", +"e44 c #bbcadf", +"c3r c #bbcdc8", +"c7D c #bbceca", +"c6c c #bbcecc", +"fb0 c #bbd7db", +"bt8 c #bbd8b6", +"d0H c #bbdcb4", +"ctG c #bbdfbd", +"eYp c #bbe3ca", +"fhG c #bbf8f9", +"aGj c #bc0017", +"#GG c #bc00ff", +"aun c #bc0b0d", +"at3 c #bc3e4a", +".Eg c #bc8b3d", +"fC. c #bc9596", +"ez2 c #bc9797", +"ggs c #bc9ba0", +"gwF c #bc9ca2", +"grZ c #bca0a3", +"gr2 c #bca0a4", +"ela c #bca29c", +"eiG c #bca39e", +"goc c #bca4a6", +"b6I c #bca58c", +"fjL c #bca5a1", +"fqq c #bca5a5", +"gnX c #bca5a8", +"b6K c #bca68e", +"gj5 c #bca7a9", +"glX c #bca8aa", +"cm0 c #bca990", +"cm3 c #bca991", +"cpI c #bca992", +"bH3 c #bca994", +"gl7 c #bca9ab", +"f6T c #bca9ad", +"cpF c #bcab91", +"brw c #bcab94", +"bKq c #bcab99", +"bji c #bcabd7", +"bUh c #bcac95", +"bUt c #bcad9b", +"elq c #bcada1", +"dRH c #bcadad", +"es7 c #bcaea3", +"gMr c #bcb1b1", +"d2I c #bcb2a8", +"gLR c #bcb2b1", +"gK7 c #bcb2b2", +"gKK c #bcb2b3", +"gKV c #bcb2b4", +"gKO c #bcb3b2", +"gKw c #bcb3b3", +"gKH c #bcb3b4", +"gLF c #bcb3b5", +"gLE c #bcb3b6", +"gLc c #bcb4b3", +"gLC c #bcb4b5", +"gL# c #bcb4b6", +"gMk c #bcb5b4", +"gLY c #bcb5b5", +"gM. c #bcb5b6", +"gLl c #bcb6b4", +"gLk c #bcb6b5", +"gLB c #bcb6b6", +"aj7 c #bcb7b6", +"gEl c #bcbab9", +"bXw c #bcbaba", +"fe. c #bcbabe", +"#yK c #bcbabf", +"bTm c #bcbbbc", +"f.v c #bcbbbd", +"e7l c #bcbbbe", +"eY. c #bcbbc0", +"fLs c #bcbbc2", +"fLm c #bcbbc3", +"cN5 c #bcbcba", +"a35 c #bcbcbc", +"eX4 c #bcbcbe", +"e1c c #bcbcbf", +"fFw c #bcbcc0", +"fK6 c #bcbcc1", +"fN0 c #bcbcc2", +"diH c #bcbdb5", +"#95 c #bcbdbb", +".FY c #bcbdbd", +"fAg c #bcbdc0", +"dFg c #bcbeb6", +"gCK c #bcbebc", +"asg c #bcbebd", +"a01 c #bcbebe", +"eC4 c #bcbebf", +"gIa c #bcbec5", +"dFc c #bcc0b5", +"el5 c #bcc0bd", +"#lX c #bcc0c0", +"fIs c #bcc0c2", +"fN1 c #bcc0c8", +"#jq c #bcc1c0", +".Js c #bcc1c1", +"fT1 c #bcc1cb", +"cUp c #bcc2ba", +"#YM c #bcc2be", +"#2b c #bcc2bf", +"#Me c #bcc2c0", +"#eD c #bcc2c1", +".KL c #bcc2c2", +"gJx c #bcc2c4", +"cO7 c #bcc3b8", +"#4z c #bcc3bb", +".Jl c #bcc3c2", +".Md c #bcc3c3", +"f6n c #bcc3c5", +"fTY c #bcc3cc", +"#Fe c #bcc4c1", +"f6o c #bcc4c6", +"gbc c #bcc5c6", +"f8H c #bcc5c7", +"cMl c #bcc6be", +"#xW c #bcc6c2", +"gdg c #bcc6c5", +"g.5 c #bcc6c7", +"g.6 c #bcc6c8", +"cFT c #bcc7bf", +"#BI c #bcc7c4", +"cJj c #bcc8be", +"bS5 c #bcc8c4", +"bK4 c #bcc8c5", +"aWJ c #bcc8c6", +"cJk c #bcc9bf", +"dL2 c #bcc9c0", +"cCj c #bcc9c2", +"gIq c #bcccc4", +"c3o c #bcccc6", +"e4Q c #bcd4db", +"fc# c #bcdbf5", +"cof c #bcdec4", +"e4X c #bcebfb", +"a6H c #bcee5d", +"fkM c #bcf7fb", +"aUK c #bcff33", +"a0R c #bd006e", +"#6j c #bd00ff", +"auI c #bd014d", +"aNM c #bd3d7a", +"aiR c #bd4c42", +"#Q5 c #bd6a00", +".El c #bd8b3d", +"ftI c #bd8b88", +".uq c #bd8e42", +".rb c #bd8e45", +".xn c #bd9047", +"fEG c #bd9094", +"fT# c #bd929a", +"e6E c #bd9498", +"fVY c #bd959d", +"f7o c #bd989e", +"#MY c #bd993a", +"eu8 c #bd9999", +"gkC c #bd9ea4", +"fEb c #bd9fa3", +"gr1 c #bd9fa4", +"gwG c #bd9fa5", +"gr0 c #bda0a3", +"gr3 c #bda1a5", +"cc7 c #bda486", +"ftH c #bda5a6", +"gpY c #bda5a8", +"caL c #bda78a", +"b0C c #bda78f", +"gpW c #bda7a8", +"brG c #bda88e", +"b2G c #bda98d", +"b2F c #bda991", +"bMf c #bda994", +"es1 c #bda9a0", +"gjZ c #bda9ab", +"gjY c #bda9ac", +"b2M c #bdaa91", +"cuP c #bdab92", +"b0N c #bdab94", +"bMe c #bdab95", +"bYz c #bdab97", +"gh0 c #bdabac", +"bDw c #bdac96", +"bMd c #bdac97", +"chJ c #bdad92", +"b4q c #bdad95", +"bUg c #bdad97", +"bKo c #bdae9e", +"eiV c #bdafa3", +"bPK c #bdb09d", +"a7H c #bdb09e", +"fU9 c #bdb0b4", +"d0a c #bdb1a7", +"gLP c #bdb1b1", +"gLQ c #bdb1b2", +"gLI c #bdb2b2", +"gLG c #bdb2b3", +"gL0 c #bdb3b2", +"gKN c #bdb3b3", +"gKL c #bdb3b4", +"gL5 c #bdb3b5", +"gKC c #bdb4b2", +"gKz c #bdb4b3", +"gKx c #bdb4b4", +"gKG c #bdb4b5", +"gMh c #bdb4b6", +"gMa c #bdb4b8", +"gMc c #bdb5b3", +"gLD c #bdb5b4", +"gK6 c #bdb5b5", +"gLn c #bdb5b6", +"gLX c #bdb5b7", +"gLu c #bdb6b6", +"gLq c #bdb6b7", +"gLo c #bdb7b4", +"gLt c #bdb7b5", +"gLp c #bdb7b6", +"gLA c #bdb7b7", +"dN0 c #bdb8ad", +"gGr c #bdb8b4", +"gLe c #bdb8b7", +"gCv c #bdb9b9", +"fQ2 c #bdbabf", +"gI. c #bdbbbb", +"bAI c #bdbbbc", +"bXz c #bdbcbd", +"fna c #bdbcbf", +"f0m c #bdbcc0", +"fIx c #bdbcc1", +"fLA c #bdbcc2", +"fOr c #bdbcc3", +"fRy c #bdbcc5", +"gDH c #bdbdba", +".uY c #bdbdbc", +".BQ c #bdbdbd", +"cma c #bdbdbe", +"fq# c #bdbdc0", +"e1b c #bdbdc2", +"fLo c #bdbdc4", +"fOg c #bdbdc5", +"b5x c #bdbebc", +".BR c #bdbebe", +"bCS c #bdbebf", +"fKX c #bdbec1", +"dQr c #bdc0b5", +"cxT c #bdc0b7", +".HI c #bdc0c1", +"f0V c #bdc0c2", +".HG c #bdc1c1", +"gjq c #bdc1c4", +"#mI c #bdc2c1", +".L8 c #bdc2c2", +"ghq c #bdc2c5", +"g.7 c #bdc2c6", +"cNv c #bdc3b9", +"#2# c #bdc3bf", +"#Vh c #bdc3c0", +"#xV c #bdc3c1", +".K3 c #bdc3c2", +".KQ c #bdc3c3", +".RU c #bdc3c4", +"f8I c #bdc3c6", +"cUq c #bdc4bc", +"dSX c #bdc4bd", +"#BG c #bdc4c1", +"#IO c #bdc4c2", +".QL c #bdc4c4", +"gjr c #bdc4c6", +"f8J c #bdc5c7", +"fZP c #bdc5d1", +"cn2 c #bdc6bd", +"#BK c #bdc6c3", +"#xX c #bdc6c4", +"gp# c #bdc6c8", +"cqH c #bdc7be", +"f8G c #bdc7c8", +"gq7 c #bdc7c9", +"#OJ c #bdc8c0", +"dS3 c #bdc8c1", +"#x2 c #bdc8c4", +"cK0 c #bdc9c0", +"dL1 c #bdc9c1", +"cCi c #bdc9c2", +"#Fj c #bdc9c5", +"aZF c #bdc9c7", +"fQ7 c #bdc9d1", +"cV8 c #bdcac0", +"cEb c #bdcac2", +"#x0 c #bdcac4", +"dL3 c #bdcbc3", +"cWf c #bdccc6", +"c1M c #bdcec8", +"f2Y c #bdd1df", +"e1Y c #bde8fd", +"fhK c #bdfbfd", +"aI9 c #bdfd16", +"#yX c #bdff00", +"arQ c #be0004", +"baQ c #be00a7", +"aju c #be028a", +"aW5 c #be3aa9", +"ftJ c #be7773", +".By c #be8e41", +".vS c #be9049", +"fpE c #be9496", +"fgt c #be9696", +"fV9 c #be979f", +"fzC c #be9899", +"ggC c #be9aa0", +"f9D c #be9b9f", +"fgd c #be9c9f", +"g#4 c #be9d9f", +"f2v c #bea0a2", +"gqi c #bea1a5", +"fVG c #bea1a6", +"eOa c #bea29b", +"gr4 c #bea3a6", +"gig c #bea3a7", +"gp0 c #bea3a9", +"d4T c #bea5a1", +"goS c #bea5a8", +"bnF c #bea68a", +"d9O c #bea6a1", +"gy2 c #bea6aa", +"eHd c #bea7a0", +"e#1 c #bea7a1", +"bNQ c #bea98d", +"bYp c #bea98f", +"b2K c #bea992", +"gpX c #bea9aa", +"bu6 c #beaa91", +"ghX c #beabac", +"gh2 c #beabad", +"bSb c #beac94", +"gh1 c #beacad", +"f63 c #beacae", +"bxi c #bead92", +"bFL c #bead95", +"bpE c #bead98", +"bUf c #beae99", +"bUe c #beae9a", +"bL9 c #beb0a4", +"bIc c #beb1a1", +"gLT c #beb2b5", +"gMg c #beb3b4", +"gM# c #beb3b5", +"gKB c #beb4b3", +"gKM c #beb4b4", +"gKy c #beb4b5", +"fXY c #beb4b6", +"gMn c #beb4b7", +"gLN c #beb5b4", +"gLZ c #beb5b5", +"gLd c #beb5b6", +"gLK c #beb5b7", +"gLs c #beb6b5", +"gLr c #beb6b6", +"gLv c #beb6b7", +"bPF c #beb7a9", +"d0d c #beb7aa", +"gLz c #beb7b6", +"gG4 c #beb7b8", +"gLy c #beb8b7", +"aph c #beb9b9", +"ahd c #beb9ba", +"e.d c #bebbae", +"bAG c #bebbba", +"dSG c #bebcb0", +"#W6 c #bebcb9", +"fFf c #bebcbf", +"fRm c #bebcc2", +"a03 c #bebdbe", +"fw7 c #bebdc0", +"fx. c #bebdc1", +"fFP c #bebdc2", +"e4# c #bebdc3", +"fOt c #bebdc5", +"fhD c #bebdc6", +"cN6 c #bebebd", +"ahg c #bebebe", +"bJd c #bebebf", +"aNJ c #bebec0", +"bfy c #bebec1", +"f53 c #bebec2", +"fLy c #bebec5", +"f50 c #bebfbe", +"bZL c #bebfbf", +"bsi c #bebfc0", +"fWN c #bebfc2", +"bAH c #bec0c0", +"cvm c #bec1b8", +".Hr c #bec1c1", +".HH c #bec1c2", +"f5Z c #bec1c3", +"f5S c #bec1d0", +".Hs c #bec2c2", +"dSS c #bec3b9", +"#Mg c #bec3c1", +"#fO c #bec3c2", +".Os c #bec3c3", +"gjt c #bec3c5", +"dmg c #bec4ba", +"#YN c #bec4c0", +"#2a c #bec4c1", +"#xU c #bec4c2", +".K4 c #bec4c3", +".Mc c #bec4c4", +"gbd c #bec4c6", +"gjs c #bec4c7", +"aA3 c #bec5bd", +"#IP c #bec5c2", +"#xY c #bec5c3", +".Jm c #bec5c4", +".Ph c #bec5c5", +"f3Q c #bec5c7", +"#BJ c #bec6c2", +"#Ff c #bec6c3", +"fWO c #bec6d0", +"cPg c #bec7bf", +"#Fg c #bec7c4", +"g.4 c #bec7c9", +"dOn c #bec8c0", +"dVu c #bec8c1", +"#BL c #bec8c4", +"gnn c #bec8c9", +"dVv c #bec9c1", +"#BN c #bec9c5", +"b7I c #bec9d3", +"cRX c #becac0", +"dVw c #becac1", +"#BM c #becac5", +"#x1 c #becac6", +"a8F c #becac8", +"cTc c #becbc0", +"cUz c #becbc2", +"dVx c #becbc3", +"eYs c #becddc", +"c0r c #becfc9", +"c8V c #becfce", +"c7E c #bed1ce", +"fkN c #befbfa", +"bdI c #bf00bb", +"bgH c #bf19c6", +"#6N c #bf2700", +"aFy c #bf2f2e", +"a8U c #bf3bb6", +".vN c #bf9149", +"eNP c #bf9798", +"e9V c #bf9898", +"fYW c #bf99a0", +"gis c #bfa0a6", +"gwH c #bfa1a7", +"gmS c #bfa2a6", +"gpZ c #bfa3a8", +"eLS c #bfa49d", +"gp1 c #bfa4a9", +"gp3 c #bfa6a8", +"gy3 c #bfa7ab", +"gof c #bfa7ac", +"bUD c #bfa88f", +"eEP c #bfa9a0", +"bYs c #bfaa8f", +"b0B c #bfaa92", +"eHe c #bfaaa1", +"bL2 c #bfab92", +"bUo c #bfab94", +"gfR c #bfabad", +"b2E c #bfac93", +"gh3 c #bfacae", +"fvk c #bfacaf", +"bKd c #bfad95", +"bH2 c #bfad96", +"enT c #bfada3", +"gh5 c #bfadae", +"gh4 c #bfadaf", +"evu c #bfaea4", +"bMc c #bfaf9b", +"enV c #bfafa4", +"fDC c #bfafb0", +"eej c #bfb0a7", +"at8 c #bfb0b0", +"d93 c #bfb3aa", +"gMi c #bfb3b6", +"bhB c #bfb4a2", +"gMj c #bfb4b2", +"gLJ c #bfb4b5", +"gLW c #bfb4b6", +"gLg c #bfb5b5", +"gKP c #bfb5b6", +"gL8 c #bfb5b7", +"d7H c #bfb6ac", +"gMb c #bfb6b4", +"gMd c #bfb6b5", +"gLh c #bfb6b6", +"gLM c #bfb6b7", +"a7B c #bfb7a9", +"gMo c #bfb7b6", +"gL9 c #bfb7b8", +"a4H c #bfb8a9", +"gLw c #bfb8b8", +"elP c #bfbab7", +"bXv c #bfbcba", +"gDi c #bfbdbe", +"gIL c #bfbdbf", +"fQX c #bfbdc1", +"fIv c #bfbdc4", +"eV# c #bfbebf", +"eV. c #bfbec0", +"clq c #bfbec1", +"fTX c #bfbec2", +"fg0 c #bfbec3", +"fIB c #bfbec4", +"fIF c #bfbec5", +"fOw c #bfbec6", +"gHE c #bfbfbc", +".BW c #bfbfbe", +"#A# c #bfbfbf", +".xK c #bfbfc0", +"aKI c #bfbfc1", +"bcx c #bfbfc2", +"f6. c #bfbfc3", +"fFm c #bfbfc4", +"bqt c #bfc0c1", +"blD c #bfc0c2", +"f5G c #bfc0c3", +"bGT c #bfc0c7", +"dme c #bfc1b9", +"gKj c #bfc1c0", +"bZJ c #bfc1c1", +"bCI c #bfc1c3", +"f5N c #bfc1c5", +"gDn c #bfc2c0", +".HB c #bfc2c2", +"f5K c #bfc2ca", +".He c #bfc3c3", +"gju c #bfc3c5", +"gbe c #bfc3c6", +"dFb c #bfc4b9", +"#fN c #bfc4c2", +"#mw c #bfc4c3", +"gdh c #bfc4c7", +"fWS c #bfc4d0", +"#xT c #bfc5c3", +".K5 c #bfc5c4", +".I2 c #bfc5c5", +".Vg c #bfc5c6", +"f6p c #bfc5c7", +"gbf c #bfc5c8", +"ejC c #bfc5c9", +"f5Y c #bfc5cb", +"#BF c #bfc6c4", +".QR c #bfc6c5", +".QM c #bfc6c6", +"f8K c #bfc6c9", +"ghr c #bfc6ca", +"dSY c #bfc7bf", +"#xZ c #bfc8c5", +"dOm c #bfc9c1", +"#Fh c #bfc9c5", +"dX5 c #bfcac0", +"dQA c #bfcac2", +"#Fi c #bfcac6", +"cRW c #bfcbc1", +"dX6 c #bfcbc2", +"bQV c #bfcbc7", +"a2y c #bfcbc9", +"cTf c #bfccc3", +"c3p c #bfd0ca", +"c3q c #bfd1cc", +"c8U c #bfd3ce", +"dbK c #bfd4ce", +"#Cy c #bfec10", +"ci5 c #bfefc2", +"fb1 c #bfeff1", +"amf c #c00001", +"aLv c #c01cff", +"#WX c #c05000", +".Eh c #c08f43", +".C7 c #c08f44", +"fB2 c #c0969a", +"gkH c #c09ca3", +"fqE c #c09e97", +"fvW c #c09ea4", +"fv0 c #c09ea5", +"fzb c #c0a1a6", +"gr8 c #c0a2a6", +"gr6 c #c0a4a8", +"gp2 c #c0a5a9", +"gp4 c #c0a6a9", +"eSm c #c0a7a0", +"gm1 c #c0a7aa", +"gog c #c0a7ab", +"b8C c #c0a88c", +"eLT c #c0a8a0", +"fa6 c #c0a8a2", +"gp6 c #c0a8ab", +"bjj c #c0a8d3", +"cfp c #c0a98a", +"c.t c #c0a98b", +"bQa c #c0a98f", +"gy4 c #c0aaae", +"b8x c #c0ab8f", +"fdW c #c0aca6", +"ckl c #c0ad93", +"cko c #c0ae95", +"bbM c #c0ae96", +"bpF c #c0ae97", +"b0O c #c0ae98", +"elo c #c0aea5", +"bnB c #c0af98", +"bKp c #c0af9d", +"dyY c #c0afb0", +"bR3 c #c0b19e", +"bMb c #c0b19f", +"bN0 c #c0b2a3", +"bM. c #c0b3a6", +"bPJ c #c0b4a2", +"ecf c #c0b5ac", +"gLV c #c0b5b5", +"gMe c #c0b5b6", +"bbD c #c0b6a6", +"gMf c #c0b6b6", +"gMp c #c0b6b7", +"gMq c #c0b7b6", +"gCw c #c0b7b7", +"gLL c #c0b7b9", +"gEc c #c0bcba", +"bTs c #c0bcbc", +"a00 c #c0bdbc", +"gBu c #c0bebf", +"fK5 c #c0bec3", +"fIh c #c0bec4", +"elX c #c0bfbe", +"b5z c #c0bfc1", +"f2Q c #c0bfc2", +"f57 c #c0bfc3", +"fRl c #c0bfc4", +"f.y c #c0bfc5", +"diG c #c0c0b8", +"gDj c #c0c0ba", +".BP c #c0c0c0", +".xN c #c0c0c1", +"aWW c #c0c0c2", +"f8c c #c0c0c3", +"f52 c #c0c0c4", +"fID c #c0c0c5", +"f59 c #c0c0c6", +".BO c #c0c1c1", +"box c #c0c1c2", +"b9l c #c0c1c5", +"gHg c #c0c1c7", +"dHh c #c0c3ba", +"bo4 c #c0c3bf", +".Ht c #c0c3c3", +"f6t c #c0c3c5", +"dVn c #c0c4bb", +".HA c #c0c4c4", +"gfh c #c0c4c7", +"dFd c #c0c5ba", +"#Mf c #c0c5c4", +".Pe c #c0c5c5", +".P4 c #c0c5c6", +"ghs c #c0c5c8", +"#Pv c #c0c6c3", +"#BE c #c0c6c4", +".L9 c #c0c6c5", +".Ou c #c0c6c6", +".VR c #c0c6c7", +"f3S c #c0c6c9", +".To c #c0c7c6", +".O9 c #c0c7c7", +"gfj c #c0c7ca", +"fQ4 c #c0c7d3", +"bix c #c0c9c0", +"#IR c #c0c9c6", +"dVt c #c0cac1", +"dX4 c #c0cac2", +"eC2 c #c0cad8", +"d0A c #c0cbc1", +"dS2 c #c0cbc2", +"#RK c #c0cbc3", +"bCf c #c0cbc9", +"cKX c #c0ccc2", +"cNK c #c0ccc3", +"bK5 c #c0ccc8", +"aZE c #c0ccca", +"eYO c #c0ccd9", +"c1G c #c0cdc4", +"fZX c #c0cedc", +".20 c #c0d1e7", +"c4W c #c0d3cf", +"ci6 c #c0efc3", +"#NV c #c0fd01", +"#GQ c #c0ff00", +"aRN c #c1004f", +"aXZ c #c10063", +"fkt c #c16c64", +"fhn c #c18881", +".xm c #c1944b", +"fQg c #c1959c", +"fEz c #c1979c", +"fwu c #c19899", +"g#3 c #c19ea3", +"g#0 c #c1a0a5", +"fy7 c #c1a3a7", +"guu c #c1a3a8", +"ggo c #c1a3a9", +"gr5 c #c1a4a8", +"gp5 c #c1a5a8", +"gut c #c1a5aa", +"eb2 c #c1a7a2", +"f1G c #c1a8aa", +"goh c #c1a8ac", +"goi c #c1a9ab", +"gbQ c #c1a9ac", +"bpO c #c1aa8f", +"eJy c #c1aba3", +"bPV c #c1ac90", +"b6E c #c1ac91", +"bLY c #c1ac93", +"b4J c #c1ac95", +"evp c #c1aca3", +"gy5 c #c1acb0", +"ckm c #c1ad94", +"ghY c #c1adaf", +"brx c #c1ae95", +"f4r c #c1aeb0", +"gf4 c #c1aeb1", +"buX c #c1af97", +"b2O c #c1af98", +"dEE c #c1afad", +"gh6 c #c1afb1", +"caz c #c1b097", +"bbP c #c1b09a", +"eiT c #c1b0a6", +"bUd c #c1b19e", +"bM# c #c1b4a6", +"bPI c #c1b7a6", +"bDK c #c1b8ae", +"gMm c #c1b8b8", +"ecm c #c1b9ae", +"gLx c #c1baba", +"gDy c #c1bcb3", +"eC5 c #c1bdbf", +"bo3 c #c1bebb", +"e.e c #c1bfb2", +"bmX c #c1bfbd", +"bZI c #c1bfbe", +"f5Q c #c1bfc1", +"gaK c #c1bfc2", +"gBA c #c1c0c0", +"bZM c #c1c0c1", +"ciI c #c1c0c3", +"fIJ c #c1c0c4", +"f55 c #c1c0c5", +"f58 c #c1c0c6", +"fLl c #c1c0c7", +"fbl c #c1c0c8", +"bCt c #c1c1be", +".BJ c #c1c1c1", +"bAj c #c1c1c3", +".px c #c1c1c4", +"eyy c #c1c1c5", +"fOf c #c1c1c7", +"#Cl c #c1c2c1", +"b5y c #c1c2c2", +"gl. c #c1c2c4", +"gDo c #c1c3c1", +"fFv c #c1c3c5", +"dVm c #c1c4ba", +"dFe c #c1c4bb", +"gKk c #c1c4c4", +"gfi c #c1c4c7", +"dVo c #c1c5bd", +"elT c #c1c5c4", +"gdk c #c1c5c8", +".P5 c #c1c6c6", +"gfk c #c1c6c9", +"#Mh c #c1c7c5", +".P1 c #c1c7c6", +".Ok c #c1c7c7", +".WA c #c1c7c8", +"gdj c #c1c7c9", +"g.8 c #c1c7ca", +"#IQ c #c1c8c6", +".Pg c #c1c8c8", +"gdi c #c1c8ca", +"f3R c #c1c8cb", +"d0z c #c1cac3", +"d28 c #c1cbc1", +"dSZ c #c1cbc2", +"cMk c #c1cbc3", +"e1P c #c1cbd1", +"d0y c #c1ccc2", +"dS0 c #c1ccc4", +"bOS c #c1ccc6", +"bMP c #c1ccc7", +"bEm c #c1ccca", +"cPk c #c1cdc2", +"cPj c #c1cdc3", +"cNJ c #c1cdc4", +"bOW c #c1cdc9", +"bMT c #c1cdca", +"bK7 c #c1cdcb", +"c0k c #c1cec4", +"coN c #c1d0c1", +"eyA c #c1d0d6", +"#gJ c #c1d2d0", +"ci4 c #c1e8c3", +"cjc c #c1ebc1", +"ciO c #c1ebc6", +"cj# c #c1ecc4", +"cj. c #c1ecc5", +"ciP c #c1ecc6", +"ciX c #c1edc6", +"aOP c #c1fe28", +"#Ks c #c1ff00", +"aJc c #c20022", +"a9S c #c20099", +"b#X c #c22ccd", +"aRh c #c22dff", +"aW1 c #c23691", +".xq c #c29143", +".zr c #c29244", +"faL c #c2989b", +"f9Z c #c29ea2", +"gcA c #c29ea4", +"f2i c #c29fa6", +"eG1 c #c2a09c", +"ez9 c #c2a09d", +"eCf c #c2a19b", +"gkN c #c2a1a7", +"goN c #c2a6aa", +"gsb c #c2a6ab", +"gr7 c #c2a7ab", +"gp7 c #c2a8aa", +"evm c #c2a9a2", +"d7o c #c2a9a5", +"gp9 c #c2a9ab", +"gk0 c #c2a9ac", +"esU c #c2aaa3", +"gqF c #c2aaad", +"goe c #c2aaae", +"bWu c #c2ac94", +"cfm c #c2ad91", +"bWr c #c2ad92", +"exM c #c2aea5", +"b2N c #c2af97", +"gh7 c #c2afb1", +"bnC c #c2b099", +"exQ c #c2b0a6", +"d2G c #c2b4ab", +"d0b c #c2b8ae", +"d2K c #c2bbaf", +"eao c #c2bdb0", +"el1 c #c2bdb9", +"asf c #c2bdbe", +"gD6 c #c2bebd", +"#JA c #c2bf3b", +"gIo c #c2bfc0", +"bGS c #c2c0c0", +"cCt c #c2c0c4", +"bTa c #c2c1bf", +".xL c #c2c1c0", +".tB c #c2c1c1", +"gi5 c #c2c1c3", +"cEm c #c2c1c4", +"fFB c #c2c1c5", +"fFl c #c2c1c6", +"fIu c #c2c1c7", +"fIA c #c2c1c8", +"eHJ c #c2c2c1", +"aMf c #c2c2c2", +"bJh c #c2c2c3", +".od c #c2c2c4", +"fRk c #c2c2c5", +"fLt c #c2c2c6", +"e1R c #c2c2c7", +"f5J c #c2c2c8", +"cH7 c #c2c3c2", +"gBx c #c2c3c4", +"eyi c #c2c3c5", +"f3J c #c2c3c7", +"gfl c #c2c4c8", +"#lD c #c2c5c4", +"#lB c #c2c5c5", +"gHn c #c2c5cb", +"dVl c #c2c6bc", +".Hu c #c2c6c6", +"f3T c #c2c6c9", +"feM c #c2c6cd", +"dOe c #c2c7bb", +"dJs c #c2c7bd", +"dVp c #c2c7c0", +"#.v c #c2c7c7", +".QW c #c2c7c8", +"f6q c #c2c7ca", +"f8L c #c2c7cb", +"dLQ c #c2c8bd", +".RM c #c2c8c7", +".M9 c #c2c8c8", +".RV c #c2c8c9", +"ayd c #c2c9c1", +".QS c #c2c9c8", +".RW c #c2c9c9", +"dX3 c #c2cbc2", +"fIk c #c2cbd4", +"cNH c #c2ccc2", +"d27 c #c2ccc3", +"fxq c #c2cdbe", +"d5w c #c2cdc3", +"dS1 c #c2cdc4", +"bVb c #c2cdc6", +"bQR c #c2cdc7", +"d5x c #c2cec3", +"cKZ c #c2cec4", +"dX2 c #c2cec5", +"bS4 c #c2ceca", +"bMS c #c2cecb", +"a2A c #c2cecc", +"cXy c #c2cfc6", +"fxP c #c2d4e6", +"dam c #c2d6d1", +"ctg c #c2e1bf", +"e8b c #c2e3f9", +"e1X c #c2eafe", +"cjb c #c2ecc5", +"ciQ c #c2ecc6", +"ciV c #c2eec6", +"feP c #c2fbfc", +"ao2 c #c30000", +"#Tq c #c300f7", +"aAv c #c31519", +"aTU c #c33797", +"dYx c #c37674", +".FC c #c39243", +".Ej c #c39348", +"fnv c #c3948e", +"fsU c #c39799", +"ftT c #c39a96", +"eW8 c #c39a9f", +"fg# c #c39ba1", +"eQ# c #c39c9a", +"ePX c #c39d9f", +"fst c #c39da4", +"fY7 c #c39ea6", +"fw. c #c39fa3", +"f12 c #c3a1a7", +"exB c #c3a29f", +"guy c #c3a2a6", +"fZq c #c3a4a5", +"gp8 c #c3a6aa", +"guv c #c3a7ac", +"goj c #c3a9ac", +"fML c #c3a9ae", +"eUR c #c3aba4", +"gb4 c #c3abae", +"bnK c #c3ac90", +"bkG c #c3ac91", +"bnE c #c3ac93", +"eCq c #c3aca4", +"god c #c3acad", +"gol c #c3acaf", +"bNU c #c3ad95", +"b4I c #c3ad96", +"dXi c #c3adaa", +"f7# c #c3adae", +"gmm c #c3adb0", +"gy6 c #c3adb1", +"bhK c #c3ae8f", +"b8G c #c3ae94", +"bYo c #c3ae96", +"gmp c #c3aeb0", +"c.m c #c3af96", +"g#t c #c3b0b4", +"bBs c #c3b199", +"b0P c #c3b19b", +"ckk c #c3b297", +"c.h c #c3b299", +"bku c #c3b3a0", +"gfV c #c3b3b4", +"gbN c #c3b3b5", +"gfU c #c3b4b5", +"bMa c #c3b5a3", +"evw c #c3b5aa", +"d5O c #c3b6a3", +"bP2 c #c3b6a7", +"b.I c #c3b9a9", +"ely c #c3b9ad", +"f1# c #c3b9bb", +"elA c #c3bab0", +"d5a c #c3bbb0", +"b.D c #c3beb1", +"#93 c #c3bfbd", +"d2U c #c3c1b4", +"f8w c #c3c1c7", +"e1a c #c3c1c8", +"#0B c #c3c2be", +"bvj c #c3c2c0", +"eC6 c #c3c2c1", +"aGu c #c3c2c3", +"gId c #c3c2c4", +"ge1 c #c3c2c5", +"gc5 c #c3c2c6", +"fx# c #c3c2c7", +"fxa c #c3c2c8", +"fIz c #c3c2c9", +"bCH c #c3c3c1", +".u2 c #c3c3c2", +".uR c #c3c3c3", +"e48 c #c3c3c4", +"bCp c #c3c3c5", +"f0D c #c3c3c6", +"gCb c #c3c4c6", +"gxz c #c3c4c8", +"f3V c #c3c6c8", +"gHN c #c3c7c8", +"#ms c #c3c8c7", +".3r c #c3c8c8", +".4w c #c3c8c9", +"gbg c #c3c8cb", +"gsQ c #c3c8d0", +".SF c #c3c9c8", +".N. c #c3c9c9", +"dVq c #c3cac3", +".I1 c #c3caca", +"eYu c #c3cadf", +"dVr c #c3cbc3", +"gsU c #c3cbd6", +"e12 c #c3cbd9", +"d73 c #c3ccc3", +"fxx c #c3ccdf", +"d26 c #c3cdc3", +"dVs c #c3cdc4", +"d0x c #c3cdc5", +"cQL c #c3cec4", +"bQS c #c3cec8", +"bMQ c #c3ceca", +"cKY c #c3cfc5", +"gEU c #c3cfc9", +"bI3 c #c3cfcb", +"a2z c #c3cfcd", +"bS3 c #c3d0cc", +"bqv c #c3d2c2", +"de4 c #c3d4d1", +"f#. c #c3d7dc", +"fxO c #c3d7e5", +"e4P c #c3e5ea", +"cja c #c3ecc6", +"ciW c #c3edc5", +"ci8 c #c3edc6", +"ciT c #c3eec4", +"ciU c #c3eec5", +"ciS c #c3eec6", +"ciR c #c3eec7", +"ci7 c #c3efc5", +"a0L c #c3ff42", +"aw4 c #c4080e", +"aw3 c #c41214", +"aZX c #c433b8", +"at0 c #c43a4b", +".ur c #c4954a", +"fwp c #c4999b", +"fHp c #c49ba0", +"fTl c #c49ca3", +"faA c #c49da2", +"gc# c #c4a0a5", +"eEB c #c4a29d", +"evc c #c4a5a2", +"guw c #c4a5a8", +"gwI c #c4a5aa", +"ek6 c #c4a6a3", +"gei c #c4a6ac", +"fBv c #c4a8ab", +"e3N c #c4a9a4", +"e0Q c #c4aaa3", +"eJx c #c4aaa4", +"gok c #c4aaae", +"giS c #c4abae", +"cc6 c #c4ac8f", +"gq. c #c4acaf", +"bSp c #c4ad92", +"bYu c #c4ad94", +"gop c #c4adb0", +"bL1 c #c4ae97", +"b0G c #c4af93", +"bYt c #c4af94", +"bKc c #c4af97", +"gmo c #c4afb1", +"b4B c #c4b094", +"bpG c #c4b097", +"b4K c #c4b098", +"bUi c #c4b198", +"b0A c #c4b199", +"evq c #c4b1a8", +"bWo c #c4b29a", +"bzm c #c4b398", +"ckn c #c4b39a", +"bWl c #c4b49f", +"gfT c #c4b4b5", +"evv c #c4b5aa", +"bSg c #c4b6a4", +"bN1 c #c4b7a8", +"d0Y c #c4b891", +"gMl c #c4babb", +"a7C c #c4bcac", +"eer c #c4bcb1", +"#Hc c #c4bdbd", +"bGN c #c4bfbd", +"bEu c #c4c1bd", +"gBQ c #c4c2c3", +"elS c #c4c2c5", +"fIg c #c4c2c8", +"#Dj c #c4c30a", +"b9w c #c4c3c2", +"gCa c #c4c3c3", +"c#A c #c4c3c4", +"gEg c #c4c3c5", +"gCc c #c4c3c6", +"fFL c #c4c3c7", +"fw6 c #c4c3c8", +"fFH c #c4c3c9", +"fOs c #c4c3cb", +".tC c #c4c4c3", +".uZ c #c4c4c4", +"bJi c #c4c4c5", +"cbM c #c4c4c6", +"eX3 c #c4c4c7", +".qC c #c4c4c8", +"bQ5 c #c4c5c1", +"amL c #c4c5c4", +"gGe c #c4c5c6", +".FV c #c4c5c8", +"c#N c #c4c6c4", +"gIg c #c4c6ca", +"bCr c #c4c7c5", +"#nc c #c4c7c7", +"gFX c #c4c7c8", +"f0W c #c4c7c9", +"f6r c #c4c7cb", +"eHK c #c4c8c5", +"#.w c #c4c8c8", +".4x c #c4c8c9", +"gsP c #c4c8d1", +"f5M c #c4c8d2", +"dSR c #c4c9be", +".RP c #c4c9c9", +"gJy c #c4c9d0", +"gqX c #c4c9d2", +"gDG c #c4cac8", +".Ol c #c4caca", +".SN c #c4cacb", +"gGC c #c4cacf", +"eeF c #c4cbc4", +".Tp c #c4cbca", +".Om c #c4cbcb", +"d25 c #c4ccc5", +"e.v c #c4cdc4", +"dX1 c #c4cdc5", +"d74 c #c4cec5", +"gET c #c4cfbf", +"cPh c #c4d0c5", +"cNI c #c4d0c6", +"bQT c #c4d0c9", +"bMR c #c4d0cc", +"bK8 c #c4d0cd", +"bEl c #c4d0ce", +"fxQ c #c4d0e1", +"bOV c #c4d1cd", +"e4z c #c4d3c0", +"d.I c #c4d5d4", +"ddg c #c4d6d3", +"eYN c #c4d6e5", +"fxN c #c4d7e4", +"dVB c #c4dec0", +"ci1 c #c4dfc5", +"ciM c #c4eac3", +"e1W c #c4ebfd", +"ci9 c #c4eec6", +"e77 c #c4f4f7", +"#WR c #c4fb00", +"feS c #c4fdfc", +"a3L c #c4fe52", +"aXT c #c4ff3f", +"#NE c #c500ff", +"axT c #c51416", +"aw0 c #c5302f", +"awZ c #c53939", +".FD c #c59245", +".FH c #c59446", +".vL c #c5984c", +"e9K c #c59ba0", +"fsG c #c59ea3", +"eJg c #c59f9e", +"fHv c #c59fa3", +"#Jv c #c5a134", +"f2n c #c5a4a7", +"gwJ c #c5a6ab", +"fWs c #c5a7a6", +"e61 c #c5a8a5", +"enH c #c5a9a5", +"awN c #c5a9aa", +"gsd c #c5a9af", +"goq c #c5aaad", +"fD5 c #c5aaae", +"eOb c #c5aba3", +"eXE c #c5aca4", +"fjJ c #c5aca9", +"gko c #c5acaf", +"cfo c #c5af8e", +"bWG c #c5af96", +"gmq c #c5afb1", +"bWs c #c5b094", +"bR8 c #c5b095", +"b6D c #c5b096", +"bti c #c5b097", +"bYn c #c5b098", +"bnD c #c5b199", +"b4N c #c5b19a", +"eEQ c #c5b1a8", +"f1y c #c5b1b3", +"bDB c #c5b39a", +"cm2 c #c5b39b", +"bWn c #c5b39c", +"bYA c #c5b39f", +"dLd c #c5b3af", +"bBm c #c5b49b", +"b6w c #c5b49c", +"eqx c #c5b4aa", +"gfW c #c5b4b6", +"bFI c #c5b59d", +"bWm c #c5b59e", +"bN2 c #c5b8a9", +"bWb c #c5baa6", +"f38 c #c5bbbd", +"ei5 c #c5bfb3", +"gEG c #c5c1bc", +"gBv c #c5c1be", +"gk9 c #c5c1bf", +"aRY c #c5c1c4", +"f2M c #c5c2bd", +"fZN c #c5c2be", +"geU c #c5c2bf", +"geS c #c5c2c1", +"gCd c #c5c2c6", +"e.f c #c5c3b6", +"fZM c #c5c3be", +"gi2 c #c5c3c0", +"gCe c #c5c3c6", +"fUq c #c5c3c8", +"fe# c #c5c3c9", +"b7u c #c5c4c3", +".uK c #c5c4c4", +"bQ4 c #c5c4c5", +"gCf c #c5c4c6", +"fIP c #c5c4c8", +"eYD c #c5c4c9", +"fIH c #c5c4ca", +"gIe c #c5c5c2", +".tR c #c5c5c4", +".uL c #c5c5c5", +".xO c #c5c5c6", +"dof c #c5c5c7", +"fxW c #c5c5c8", +"fw5 c #c5c5c9", +"eX2 c #c5c5ca", +"fxH c #c5c5cb", +"cGf c #c5c6c4", +"eC0 c #c5c6ce", +"el2 c #c5c7c7", +"eyp c #c5c7c8", +"elY c #c5c7ca", +"dHd c #c5c8bd", +"dHb c #c5c8be", +"dXX c #c5c8c0", +"gEn c #c5c8c2", +"#3Y c #c5c8c5", +"cEw c #c5c8c7", +"fFt c #c5c8ca", +"f3U c #c5c8cb", +"#gD c #c5c9c9", +".3c c #c5caca", +"eAW c #c5cad0", +"d71 c #c5cbc4", +"#g5 c #c5cbc9", +".1p c #c5cbca", +".N# c #c5cbcb", +".SM c #c5cbcc", +"e.u c #c5ccc4", +"eaA c #c5ccc5", +".SG c #c5cccb", +".IY c #c5cccc", +"eaz c #c5cdc3", +"ecB c #c5cdc4", +"d5u c #c5cdc5", +"d0w c #c5cdc6", +"gxB c #c5cdcf", +"ejc c #c5cec3", +"ecA c #c5cec4", +"d5v c #c5cec5", +"ecC c #c5cfc5", +"e.w c #c5cfc6", +"eaD c #c5d0c7", +"bQU c #c5d0ca", +"cPi c #c5d1c6", +"bOT c #c5d1ca", +"bOU c #c5d1cb", +"bI4 c #c5d1cd", +"bI5 c #c5d1cf", +"cTd c #c5d2c8", +"fxM c #c5d3e2", +"f#j c #c5def4", +"dYb c #c5e3bd", +"e4W c #c5e8fa", +"ciN c #c5eac8", +"ciY c #c5edc9", +"#9O c #c5fc00", +"fhH c #c5fcfc", +"#GP c #c5ff00", +"ajY c #c60003", +"av# c #c61205", +"aw2 c #c61d1a", +"aw1 c #c62724", +"awG c #c6324e", +"#3O c #c63300", +"aog c #c6342f", +"awY c #c64242", +"awX c #c64c4b", +"aKR c #c64d89", +"awW c #c65553", +"awV c #c65e5e", +"awU c #c66768", +"fnC c #c66c5c", +"awT c #c67171", +"#2N c #c67a35", +"awS c #c67a79", +"awR c #c68482", +"fqr c #c68d86", +"awQ c #c68e8e", +".Ef c #c69445", +".Ei c #c69548", +".vM c #c6964d", +"awP c #c69696", +"fmB c #c69b9d", +"e6F c #c69da0", +"faT c #c69e9e", +"eLw c #c69e9f", +"ger c #c69fa8", +"awO c #c6a0a1", +"eG0 c #c6a29f", +"eGZ c #c6a3a0", +"esH c #c6a3a2", +"gak c #c6a4a7", +"gc. c #c6a4a9", +"gee c #c6a4aa", +"ged c #c6a5aa", +"bjq c #c6a7d9", +"gse c #c6abaf", +"bnG c #c6ac8f", +"eQn c #c6aca5", +"ge# c #c6acaf", +"fSR c #c6acb0", +"eUQ c #c6ada6", +"gmz c #c6adaf", +"evo c #c6b0a8", +"fMD c #c6b0b3", +"bR9 c #c6b196", +"bWq c #c6b197", +"bWt c #c6b198", +"chF c #c6b199", +"fSJ c #c6b1b4", +"bUn c #c6b29a", +"dGH c #c6b2b1", +"dNE c #c6b3af", +"awM c #c6b3b3", +"fVw c #c6b3b4", +"gfS c #c6b3b5", +"bYm c #c6b49b", +"csc c #c6b49c", +"bWk c #c6b59f", +"egy c #c6b5ac", +"gfX c #c6b5b7", +"chI c #c6b69b", +"gfY c #c6b6b7", +"es8 c #c6b8ad", +"fnu c #c6b9bb", +"a7F c #c6bbac", +"beA c #c6bcad", +"eaf c #c6bcb2", +"fxg c #c6bcbe", +"azn c #c6bdbd", +"fxh c #c6bdc2", +"ecq c #c6c0b4", +"#KO c #c6c0c0", +"f2O c #c6c1be", +"fZL c #c6c2be", +"gcY c #c6c2bf", +"#6W c #c6c2c0", +"ggZ c #c6c2c1", +"aeb c #c6c2c3", +"f5E c #c6c3bd", +"gg0 c #c6c3be", +"f8a c #c6c3bf", +"g.s c #c6c3c0", +"gcW c #c6c3c1", +"fxj c #c6c3c8", +"fK4 c #c6c3ca", +"f2N c #c6c4be", +"gE# c #c6c4c1", +"ejF c #c6c4c6", +"fLk c #c6c4cb", +"diF c #c6c5be", +"gi3 c #c6c5bf", +".w. c #c6c5c6", +"fuw c #c6c5c9", +"eVa c #c6c5ca", +"fxG c #c6c5cb", +"bJf c #c6c6c5", +".v4 c #c6c6c6", +".rK c #c6c6c8", +"fxF c #c6c6c9", +"e19 c #c6c6cb", +".xC c #c6c7c6", +"#DM c #c6c7c8", +"eyj c #c6c7c9", +".rh c #c6c7ca", +"f6s c #c6c7cc", +"dXW c #c6c8bd", +"gDP c #c6c8c6", +"b9x c #c6c8c8", +"el0 c #c6c8c9", +"f8M c #c6c8cc", +"dQq c #c6c9be", +"dJr c #c6c9bf", +"dXY c #c6c9c2", +"gEe c #c6c9c8", +"#kW c #c6c9c9", +"g.9 c #c6c9cc", +"dVk c #c6cabf", +"eAF c #c6cac2", +".Hc c #c6caca", +"eFn c #c6cacc", +"gxE c #c6cacd", +"f5L c #c6cad5", +"#gL c #c6cbca", +".Yh c #c6cbcb", +".Yi c #c6cbcc", +"fxR c #c6cbd6", +"elI c #c6ccc0", +"egT c #c6ccc1", +"e.s c #c6ccc2", +"egU c #c6ccc4", +"dXZ c #c6ccc5", +".1o c #c6cccb", +".RH c #c6cccc", +".TA c #c6cccd", +"gG7 c #c6ccd1", +"eja c #c6cdc1", +"e.t c #c6cdc4", +"dX0 c #c6cdc5", +"eaB c #c6cdc6", +".Ua c #c6cdcc", +".KP c #c6cdcd", +"cQ4 c #c6cdd2", +"ejb c #c6cec2", +"ejd c #c6cec4", +"eaC c #c6cec6", +"d72 c #c6cfc6", +"#XL c #c6d0c8", +"gJz c #c6d1c3", +"#RH c #c6d1c9", +"bS0 c #c6d1cb", +"bS1 c #c6d1cc", +"f2T c #c6d1e0", +"bS2 c #c6d2cc", +"a5G c #c6d2d0", +"gDF c #c6d2d7", +"cl2 c #c6d4c8", +"fZQ c #c6d5e7", +"bt7 c #c6dbc5", +"ci3 c #c6dfc7", +"cqR c #c6e0ca", +"ciZ c #c6e4c5", +"f## c #c6ebef", +"e4O c #c6efef", +"#Wt c #c700fc", +"#GH c #c700ff", +"aDo c #c71420", +"ad4 c #c71c14", +"aiU c #c74635", +"dYy c #c76161", +"fqv c #c76656", +"#8Q c #c76834", +"a9y c #c76bf9", +"#G0 c #c78e00", +".FE c #c79547", +".D# c #c79649", +".FF c #c7964a", +".xl c #c79950", +"fKj c #c79fa5", +"fgb c #c7a1a6", +"fkz c #c7a49f", +"eEq c #c7a4a6", +"esK c #c7a8a5", +"fG2 c #c7a8ab", +"ggl c #c7a8ad", +"e98 c #c7a9a6", +"gin c #c7a9ae", +"fgG c #c7aaa6", +"gwK c #c7aaaf", +"gcd c #c7aab0", +"eiE c #c7aba7", +"gkz c #c7abae", +"gb6 c #c7abaf", +"elc c #c7aca8", +"gsf c #c7adb1", +"d2p c #c7aeaa", +"fJP c #c7aeb1", +"gms c #c7aeb2", +"d9N c #c7afaa", +"gmr c #c7afb2", +"gmn c #c7b0b4", +"c.s c #c7b195", +"b4G c #c7b198", +"dZV c #c7b1ac", +"gy7 c #c7b1b5", +"b2H c #c7b296", +"b6F c #c7b297", +"b4A c #c7b298", +"bK# c #c7b299", +"bPZ c #c7b29a", +"bky c #c7b399", +"b4L c #c7b39b", +"bSa c #c7b49b", +"cm1 c #c7b49d", +"cpH c #c7b59d", +"bbO c #c7b5a0", +"fYp c #c7b5b8", +"chH c #c7b69c", +"bYl c #c7b69f", +"bUc c #c7b7a3", +"gfZ c #c7b7b9", +"bWj c #c7b8a2", +"bkv c #c7b8a3", +"b.K c #c7baaa", +"b.J c #c7bcac", +"d7F c #c7bcb2", +"bPH c #c7bfaf", +"gGH c #c7c0c2", +"eYj c #c7c0c3", +"fZK c #c7c1bd", +"goZ c #c7c2be", +"f8# c #c7c2bf", +"geR c #c7c2c0", +"aMa c #c7c2c2", +"gBw c #c7c3bd", +"fWL c #c7c3bf", +"gk8 c #c7c3c0", +"fWI c #c7c4bf", +"fAc c #c7c4c0", +"geT c #c7c4c1", +"fCG c #c7c4c2", +"fQV c #c7c5bf", +"fWJ c #c7c5c0", +"gcX c #c7c5c1", +"aJk c #c7c5c4", +"gCt c #c7c5c5", +"fIf c #c7c5ca", +"e5d c #c7c5cb", +"fCF c #c7c6c0", +"fWK c #c7c6c1", +"c#m c #c7c6c3", +".tO c #c7c6c6", +".Qu c #c7c6c8", +"eOz c #c7c6cb", +"e1# c #c7c6cc", +"f.x c #c7c6cd", +"bCA c #c7c7c2", +"f.t c #c7c7c3", +"bmZ c #c7c7c5", +"gBB c #c7c7c6", +".v3 c #c7c7c7", +".V9 c #c7c7c8", +"dap c #c7c7c9", +"eYY c #c7c7cb", +"eeI c #c7c8c8", +"eQM c #c7c9c1", +".FP c #c7c9c9", +"bLl c #c7c9ca", +"gAZ c #c7c9cf", +"dXV c #c7cabe", +"dJq c #c7cac0", +"evS c #c7cac3", +"eye c #c7cac4", +"eto c #c7cac5", +"#k# c #c7cac9", +".Hb c #c7caca", +".Hd c #c7cacb", +"ej# c #c7cbc0", +"egS c #c7cbc2", +"d70 c #c7cbc3", +"d24 c #c7cbc5", +"etp c #c7cbc6", +"#i4 c #c7cbca", +"gxD c #c7cbce", +"eay c #c7ccc1", +"d5t c #c7ccc5", +"d0u c #c7ccc6", +"#h. c #c7cccb", +".3s c #c7cccc", +"ecz c #c7cdc2", +"elJ c #c7cdc3", +"d0v c #c7cdc6", +".Na c #c7cdcd", +"gxC c #c7cdd0", +".I0 c #c7cecd", +".IZ c #c7cece", +"gD4 c #c7cecf", +"fT0 c #c7ceda", +"#RJ c #c7d2ca", +"cV9 c #c7d3ca", +"bK6 c #c7d3cf", +"crq c #c7d4c6", +"cUv c #c7d4c9", +"cTe c #c7d4cb", +"eYM c #c7deed", +"dVC c #c7dfc4", +"ctT c #c7e1c9", +"eYo c #c7e1ce", +"a9J c #c7f269", +"f#e c #c7fbfd", +"#TL c #c7fc00", +"aGe c #c7fc15", +"#QY c #c7fd00", +"aL3 c #c8002e", +"a6O c #c8008e", +"auJ c #c80143", +"aIG c #c816ff", +"#TS c #c86100", +".FG c #c89649", +"#Dv c #c89f00", +"eCe c #c8a5a2", +"gad c #c8a5ab", +"f4X c #c8a8ad", +"eqd c #c8a9a6", +"fjH c #c8aaa7", +"fdQ c #c8aba7", +"ed6 c #c8ada9", +"gge c #c8adb0", +"gqc c #c8adb2", +"eSl c #c8aea7", +"fdS c #c8aea8", +"gsc c #c8aeb3", +"ggh c #c8afb1", +"fGV c #c8afb2", +"eXF c #c8b0a8", +"gmt c #c8b0b3", +"caK c #c8b296", +"b4C c #c8b298", +"b0J c #c8b29a", +"evn c #c8b2aa", +"c.o c #c8b397", +"bUk c #c8b398", +"bUj c #c8b399", +"bWp c #c8b39b", +"dUI c #c8b3b0", +"gy8 c #c8b3b7", +"fgN c #c8b4ae", +"bxh c #c8b599", +"bHZ c #c8b59c", +"b0z c #c8b59e", +"chG c #c8b69d", +"bH1 c #c8b69e", +"b2D c #c8b69f", +"bYk c #c8b6a0", +"bzg c #c8b79d", +"chE c #c8b89d", +"gf0 c #c8b8b9", +"bhE c #c8b9a4", +"bR2 c #c8b9a6", +"bR1 c #c8b9a7", +"beD c #c8baa5", +"bN3 c #c8baa9", +"es9 c #c8baaf", +"bP3 c #c8bbaa", +"d7D c #c8bbb2", +"dYt c #c8bd97", +"geP c #c8bebc", +"ggW c #c8bfbd", +"f2L c #c8c0bc", +"#DK c #c8c0c1", +"b.H c #c8c1b1", +"f2J c #c8c1bd", +"f8. c #c8c1c0", +"cME c #c8c2ba", +"fp7 c #c8c2bd", +"gqM c #c8c2bf", +"g.r c #c8c2c0", +"g.q c #c8c2c1", +"ftm c #c8c3be", +"ftn c #c8c3bf", +"fp5 c #c8c3c0", +"ggY c #c8c3c1", +"fto c #c8c4c0", +"fAe c #c8c4c1", +"fNV c #c8c4c3", +"aa9 c #c8c4c4", +"fCE c #c8c5bf", +"fwY c #c8c5c1", +"fFd c #c8c5c3", +"a96 c #c8c5c5", +"eeM c #c8c5ca", +"fNT c #c8c6bf", +"fgW c #c8c6c1", +"#3X c #c8c6c2", +"f.s c #c8c6c3", +"fZ0 c #c8c6c6", +"eFm c #c8c6c7", +"fFR c #c8c6cb", +"eOp c #c8c7bc", +"eJV c #c8c7bd", +"eSJ c #c8c7bf", +"fKW c #c8c7c0", +"fgX c #c8c7c2", +"fd8 c #c8c7c3", +".BN c #c8c7c5", +"b9f c #c8c7c6", +"aJm c #c8c7c9", +"eVS c #c8c7ca", +"eT# c #c8c7cb", +"eMr c #c8c7cc", +"eK. c #c8c7cd", +"fLx c #c8c7ce", +"fOv c #c8c7cf", +"e7i c #c8c8c2", +"fd9 c #c8c8c3", +"fbi c #c8c8c4", +"gDS c #c8c8c6", +".tz c #c8c8c7", +".tA c #c8c8c8", +".BX c #c8c8c9", +"b3s c #c8c8ca", +"fxk c #c8c8cc", +"gqZ c #c8c8d5", +"eU6 c #c8c9c0", +"eHE c #c8c9c1", +"eJX c #c8c9c2", +"f.u c #c8c9c3", +"c#x c #c8c9c8", +".FO c #c8c9ca", +"cTu c #c8c9cb", +"gEX c #c8c9cc", +"dHe c #c8cabf", +"etm c #c8cac0", +"dHg c #c8cac1", +"egR c #c8cac2", +"eeD c #c8cac3", +"eyd c #c8cac4", +"eqU c #c8cac5", +"c#r c #c8cac8", +"gEY c #c8cac9", +"gEk c #c8caca", +"fxz c #c8cacb", +"d0s c #c8cbbe", +"dVi c #c8cbbf", +"d20 c #c8cbc0", +"eeE c #c8cbc2", +"d0t c #c8cbc4", +"evT c #c8cbc5", +"d23 c #c8cbc6", +"bmY c #c8cbc8", +"fxb c #c8cbca", +".FS c #c8cbce", +"eod c #c8ccc0", +"dJo c #c8ccc1", +"e.r c #c8ccc2", +"d5s c #c8ccc4", +"eqV c #c8ccc6", +"gAV c #c8ccc7", +"#i2 c #c8cccb", +"#hS c #c8cccc", +"fbZ c #c8ccd1", +"elM c #c8cdc6", +"#mu c #c8cdcb", +"#je c #c8cdcc", +".5z c #c8cdcd", +".7W c #c8cdce", +"fQZ c #c8cdd6", +"gsW c #c8cddf", +"elK c #c8cec6", +"elL c #c8cec7", +".KM c #c8cece", +".SO c #c8cecf", +"eje c #c8cfc6", +"ejf c #c8cfc7", +"ejg c #c8cfc8", +".KN c #c8cfce", +".KO c #c8cfcf", +"b7K c #c8d0d4", +"bso c #c8d2c5", +"cXr c #c8d5cb", +"c1F c #c8d5cc", +"fQ5 c #c8d5e1", +"e1O c #c8d7de", +"ci2 c #c8e1ca", +"fb2 c #c8fafc", +"fhJ c #c8fcfa", +"amg c #c90000", +"arR c #c90003", +"baR c #c900aa", +"#Kf c #c900fb", +"#3l c #c900fe", +"#9o c #c900ff", +"a8Z c #c906f3", +"ag8 c #c91515", +"aa1 c #c92512", +"a3s c #c953fe", +"#8N c #c95e37", +".pf c #c99e56", +"fdw c #c99fa3", +"eXr c #c9a3a2", +"fhs c #c9a79f", +"ggm c #c9a9af", +"gkF c #c9aaae", +"fTF c #c9abab", +"gsg c #c9afb5", +"gmv c #c9b0b2", +"gij c #c9b1b3", +"bNT c #c9b399", +"fYz c #c9b3b6", +"b0H c #c9b499", +"bta c #c9b49a", +"b4z c #c9b49c", +"bu5 c #c9b59a", +"bhO c #c9b59b", +"dPU c #c9b5b2", +"gy9 c #c9b5b8", +"bjk c #c9b6db", +"cpG c #c9b79f", +"bkw c #c9b7a1", +"b2C c #c9b8a0", +"bbH c #c9b9a2", +"gf1 c #c9b9ba", +"fJn c #c9b9bc", +"bRZ c #c9baa4", +"bR0 c #c9baa5", +"bbE c #c9beac", +"cN2 c #c9beb9", +"ggX c #c9bebc", +"geO c #c9bebd", +"awL c #c9bebe", +"ei1 c #c9bfb4", +"f5B c #c9bfbd", +"f2H c #c9bfbe", +"gw4 c #c9bfbf", +"en4 c #c9c0b5", +"fZI c #c9c0bd", +"f2K c #c9c0be", +"f5C c #c9c0bf", +"g.p c #c9c0c0", +"gcU c #c9c1bd", +"fZJ c #c9c1be", +"f79 c #c9c1bf", +"gsG c #c9c2bf", +"geQ c #c9c2c0", +"gk7 c #c9c2c1", +"gGw c #c9c3bb", +"gsH c #c9c3bf", +"fwW c #c9c3c0", +"fH5 c #c9c3c1", +"fwV c #c9c4bf", +"fp6 c #c9c4c0", +"gi1 c #c9c4c1", +"fH7 c #c9c4c2", +"#Od c #c9c4c3", +"fn. c #c9c5c0", +"fwZ c #c9c5c1", +"fKU c #c9c5c2", +"#Rf c #c9c5c3", +"elR c #c9c5c4", +"eSF c #c9c6be", +"fFc c #c9c6c0", +"fAd c #c9c6c1", +"fI. c #c9c6c3", +"fbh c #c9c6c4", +"b7P c #c9c6c8", +"eh. c #c9c6c9", +"fxE c #c9c6cd", +"e.g c #c9c7ba", +"eMd c #c9c7bc", +"eQK c #c9c7bd", +"fKV c #c9c7c0", +"fH8 c #c9c7c1", +"fNU c #c9c7c2", +"byB c #c9c7c6", +"fFA c #c9c7cd", +"e.h c #c9c8ba", +"eOq c #c9c8bd", +"eHA c #c9c8be", +"eQL c #c9c8c0", +"fH9 c #c9c8c1", +"fj3 c #c9c8c2", +"bCs c #c9c8c7", +"cJK c #c9c8c8", +"eFw c #c9c8cb", +"eHQ c #c9c8cc", +"eDa c #c9c8cd", +"fbk c #c9c8ce", +"eMe c #c9c9be", +"eOr c #c9c9c0", +"e33 c #c9c9c1", +"evP c #c9c9c2", +"e.p c #c9c9c3", +"eAE c #c9c9c4", +"eyc c #c9c9c5", +".tD c #c9c9c8", +".tJ c #c9c9c9", +".w# c #c9c9ca", +"aNI c #c9c9cb", +"fxC c #c9c9ce", +"dJn c #c9cabf", +"eya c #c9cac0", +"eXR c #c9cac1", +"etn c #c9cac2", +"eMg c #c9cac4", +"bGW c #c9cac5", +"fxc c #c9cac9", +".Ff c #c9caca", +"eYC c #c9cad1", +"d0r c #c9cbbe", +"dXT c #c9cbbf", +"dVj c #c9cbc0", +"dSO c #c9cbc1", +"eHF c #c9cbc3", +"ecy c #c9cbc4", +"evR c #c9cbc5", +"cN4 c #c9cbca", +"fxB c #c9cbcc", +"dVh c #c9ccbf", +"dQo c #c9ccc0", +"ej. c #c9ccc1", +"dJp c #c9ccc2", +"dmf c #c9ccc3", +"eqT c #c9ccc5", +"eof c #c9ccc6", +"#j9 c #c9cccb", +"#lG c #c9cccc", +"gDW c #c9ccce", +"eVw c #c9ccd7", +"dOd c #c9cdc2", +"e.q c #c9cdc3", +"d7Z c #c9cdc4", +"eog c #c9cdc5", +"eoe c #c9cdc6", +"gHH c #c9cdcc", +"d5q c #c9cec2", +"#.E c #c9cecd", +".Ze c #c9cece", +"fQ1 c #c9ced9", +"dLP c #c9cfc3", +".Wm c #c9cfce", +".L1 c #c9cfcf", +".SQ c #c9cfd0", +"eYP c #c9cfd6", +"cEr c #c9d0ce", +".W8 c #c9d0cf", +".L2 c #c9d0d0", +"gEK c #c9d0d1", +"fxL c #c9d1df", +"eVu c #c9d4d3", +"biH c #c9d6cc", +"cWd c #c9d6cd", +"eVt c #c9d7ce", +"fQ6 c #c9d8e2", +"#gK c #c9dad9", +"e1N c #c9e1e5", +"e4N c #c9f3f2", +"e76 c #c9fbf8", +"aaV c #c9fd00", +"a6G c #c9fd5e", +"a3S c #ca0080", +"ajv c #ca037f", +"aCA c #ca1317", +"d09 c #ca4e55", +"#KB c #ca8000", +".xp c #ca9e55", +"ftR c #ca9ea1", +".nU c #ca9f57", +"fnI c #ca9fa1", +"fdF c #caa1a1", +"eW9 c #caa3a9", +"fQl c #caa4a9", +"f5f c #caaaae", +"bjr c #caabdb", +"enA c #caaca8", +"giw c #caacb0", +"gio c #caadb1", +"gqe c #caafb4", +"ggO c #cab0b3", +"bpN c #cab195", +"e63 c #cab1ac", +"bpM c #cab295", +"g#H c #cab4b9", +"bS. c #cab59a", +"b4D c #cab59b", +"eAl c #cab5ad", +"b0y c #cab7a0", +"eqw c #cab7ad", +"b0x c #cab8a1", +"bbN c #cab8a2", +"caD c #cab99f", +"bFK c #cab9a0", +"gdQ c #cab9bb", +"cPB c #cababa", +"bhD c #cabba6", +"g#C c #cabbbb", +"bhC c #cabda9", +"bP4 c #cabdad", +"gqL c #cabdbc", +"en2 c #cabeb2", +"gi0 c #cabebc", +"f2G c #cabebd", +"f5A c #cabebe", +"g.n c #cabfbd", +"gcV c #cabfbe", +"goY c #cabfbf", +"fZH c #cac0bd", +"gaI c #cac0be", +"gk5 c #cac0bf", +"elB c #cac1b7", +"f77 c #cac1be", +"f78 c #cac1bf", +"fWG c #cac1c0", +"#vR c #cac1c2", +"g.o c #cac2be", +"f5D c #cac2bf", +"fQU c #cac2c0", +"fWH c #cac3bf", +"fAb c #cac3c0", +"fH6 c #cac3c1", +"fxd c #cac3c5", +"ftl c #cac4bd", +"fCD c #cac4c0", +"fwX c #cac4c1", +"fFa c #cac4c2", +"#T1 c #cac4c4", +"fp4 c #cac5c0", +"ftp c #cac5c1", +"eas c #cac6b9", +"eau c #cac6ba", +"e.i c #cac6bb", +"eQI c #cac6be", +"fj2 c #cac6c1", +"fNS c #cac6c2", +"d5k c #cac7bc", +"eHB c #cac7bd", +"eOo c #cac7bf", +"fw0 c #cac7c1", +"fbg c #cac7c2", +"fxD c #cac7cf", +"dVc c #cac8bc", +"eHC c #cac8be", +"eMf c #cac8bf", +"eHD c #cac8c0", +"fd6 c #cac8c2", +"fd5 c #cac8c3", +"guV c #cac8c5", +"elW c #cac8c6", +"cm. c #cac8c8", +"coU c #cac8c9", +"eHL c #cac8cc", +"erc c #cac8ce", +"eSI c #cac9c1", +"eF. c #cac9c2", +"eyb c #cac9c3", +"evQ c #cac9c4", +"bJg c #cac9c9", +"cTw c #cac9ca", +"ewh c #cac9cc", +"etM c #cac9cd", +"fw3 c #cac9ce", +"e7p c #cac9cf", +"e4. c #cac9d0", +"elH c #cacabe", +"etk c #cacabf", +"evO c #cacac1", +"e05 c #cacac2", +"eF# c #cacac3", +"eeC c #cacac4", +"c#o c #cacac7", +".uM c #cacac9", +".we c #cacaca", +".uU c #cacacb", +"aTN c #cacacc", +"ejK c #cacacd", +"em# c #cacace", +"ecK c #cacacf", +"dSN c #cacbc0", +"etl c #cacbc1", +"e.o c #cacbc2", +"dHf c #cacbc3", +"d7X c #cacbc4", +"eAG c #cacbc5", +"eCK c #cacbc6", +"ewa c #cacbc8", +"gEZ c #cacbc9", +"gCx c #cacbca", +"fxA c #cacbcb", +".FW c #cacbcc", +"fRj c #cacbcd", +"c#s c #cacbce", +"b5F c #cacbd0", +"fK3 c #cacbd7", +"dXU c #caccbf", +"d0p c #caccc0", +"d7W c #caccc1", +"dSP c #caccc2", +"eax c #caccc3", +"d7Y c #caccc4", +"c#q c #caccc9", +"bGQ c #caccce", +"fFu c #cacccf", +"fxK c #caccd6", +"dLK c #cacdbf", +"dOa c #cacdc0", +"dJm c #cacdc1", +"dQp c #cacdc2", +"d22 c #cacdc5", +"#hX c #cacdcd", +"dOb c #cacebf", +"dLL c #cacec0", +"dLM c #cacec1", +"d21 c #cacec4", +"dJV c #cacecf", +".4n c #cacfcf", +"gxA c #cacfd1", +".UR c #cad0cf", +".L3 c #cad0d0", +".Uj c #cad0d1", +"eVv c #cad0d7", +".SK c #cad1d1", +"b5K c #cad4d6", +"cYK c #cad7cd", +"fWP c #cad8e9", +"fT5 c #cadee4", +"cls c #cae0cb", +"e1V c #caeafc", +"#GO c #caff03", +"#GI c #cb00ff", +"azI c #cb0b05", +"azH c #cb0f10", +"aof c #cb2b2b", +"ajV c #cb9109", +".rD c #cb9d4f", +"e6N c #cba3a3", +"e0f c #cba3a8", +".pi c #cba562", +"fgk c #cba6a7", +"f7L c #cba6ad", +"fS9 c #cba6ae", +"fdu c #cba7a8", +"fzl c #cba7ab", +"eGY c #cba8a5", +"gex c #cba9ae", +"gct c #cba9af", +"g#7 c #cbacb2", +"#zT c #cbaf01", +"enI c #cbafab", +"gkv c #cbb1b4", +"gqf c #cbb1b5", +"gqg c #cbb1b6", +"gmu c #cbb2b6", +"cfn c #cbb395", +"bnJ c #cbb397", +"fgI c #cbb3ae", +"bry c #cbb59b", +"bUl c #cbb69b", +"beN c #cbb79f", +"b4y c #cbb7a0", +"b0w c #cbb8a2", +"enU c #cbb8ae", +"bBr c #cbb99f", +"c.l c #cbb9a0", +"bN8 c #cbb9a1", +"b0Q c #cbb9a3", +"e1v c #cbb9b6", +"beF c #cbbaa3", +"elp c #cbbab0", +"b.N c #cbbba5", +"eCx c #cbbbb1", +"giZ c #cbbbbb", +"bRY c #cbbca8", +"ece c #cbbcb3", +"ggU c #cbbcbb", +"gf2 c #cbbcbc", +"d3s c #cbbd88", +"bbF c #cbbdaa", +"exX c #cbbdb2", +"gm6 c #cbbdbc", +"fxf c #cbbdbe", +"beC c #cbbeaa", +"goX c #cbbebc", +"gm7 c #cbbebe", +"b.L c #cbbfac", +"gk4 c #cbbfbc", +"gaH c #cbbfbd", +"ggV c #cbbfbe", +"gm8 c #cbbfbf", +"f2I c #cbc0bd", +"fZG c #cbc0be", +"fWF c #cbc0bf", +"fH1 c #cbc1bd", +"fNP c #cbc1be", +"fQT c #cbc1bf", +"gk6 c #cbc1c0", +"fE9 c #cbc2bd", +"gaJ c #cbc2be", +"fNR c #cbc2bf", +"fTU c #cbc2c0", +"f65 c #cbc2c1", +"fKT c #cbc3c0", +"fTV c #cbc3c1", +"fxi c #cbc3c9", +"ftk c #cbc4be", +"fCC c #cbc4c1", +"fFb c #cbc4c2", +"fwU c #cbc5be", +"fp3 c #cbc5c0", +"fAa c #cbc5c1", +"fCB c #cbc5c2", +"eSE c #cbc6be", +"eMb c #cbc6c0", +"fj0 c #cbc6c1", +"fj1 c #cbc6c2", +"fm9 c #cbc6c3", +"go0 c #cbc6c4", +"eCF c #cbc7bc", +"eQJ c #cbc7bd", +"eCG c #cbc7be", +"eMc c #cbc7bf", +"eSG c #cbc7c0", +"eSH c #cbc7c1", +"fd7 c #cbc7c2", +"e7h c #cbc7c3", +"elZ c #cbc7c5", +"bLj c #cbc7c7", +"eMa c #cbc8bb", +"e.j c #cbc8bc", +"d7S c #cbc8bd", +"eJU c #cbc8be", +"eE8 c #cbc8bf", +"eJT c #cbc8c0", +"e32 c #cbc8c2", +"f.r c #cbc8c3", +"gqO c #cbc8c6", +"avk c #cbc8c7", +"e03 c #cbc9be", +"etj c #cbc9c0", +"eX1 c #cbc9d0", +"ex9 c #cbcabe", +"eJW c #cbcabf", +"eoc c #cbcac0", +"eE9 c #cbcac1", +"eju c #cbcac7", +"aDu c #cbcac8", +"gAN c #cbcac9", +".uI c #cbcaca", +"c#w c #cbcacb", +"#A. c #cbcacc", +"ehd c #cbcace", +"e.H c #cbcacf", +"dXS c #cbcbbf", +"e.m c #cbcbc0", +"eeB c #cbcbc1", +"eAB c #cbcbc2", +"eCI c #cbcbc3", +"eJY c #cbcbc4", +"eCJ c #cbcbc5", +"eAD c #cbcbc6", +"c#t c #cbcbca", +".uT c #cbcbcb", +".uS c #cbcbcc", +"aWV c #cbcbcd", +"aQB c #cbcbce", +"dQm c #cbccc0", +"d7V c #cbccc1", +"e.n c #cbccc2", +"bEG c #cbccc5", +"d5r c #cbccc6", +".FQ c #cbcccc", +".Dl c #cbcccd", +"fxI c #cbccd0", +"dO# c #cbcdc0", +"dSQ c #cbcdc2", +"ecw c #cbcdc3", +"ecx c #cbcdc4", +"gGQ c #cbcdcc", +"ceo c #cbcdcd", +"f51 c #cbcdd0", +"dOc c #cbcec0", +"dLO c #cbcec1", +"gDO c #cbceca", +"#nf c #cbcecd", +"#kU c #cbcece", +"gEo c #cbcecf", +"eVK c #cbced3", +"dLN c #cbcfc1", +"#.x c #cbcfcf", +"cAS c #cbcfd1", +"#ih c #cbd0cf", +".5p c #cbd0d0", +".7V c #cbd0d1", +".X3 c #cbd1d0", +".SJ c #cbd1d1", +".TC c #cbd1d2", +"fNZ c #cbd1dc", +".Wq c #cbd2d1", +".Tw c #cbd2d2", +"gqR c #cbd2d7", +"#RI c #cbd6ce", +"eyB c #cbd6dc", +"c0l c #cbd8cf", +"dbL c #cbdedb", +"dan c #cbdfdc", +"eYL c #cbe4f5", +"e1M c #cbe6eb", +"aOV c #cc003b", +"aUQ c #cc005d", +"a0S c #cc0072", +"b#0 c #cc00fc", +"a0q c #cc4bff", +"d06 c #cc6161", +"#N3 c #cc7600", +"fex c #cc8c80", +".E7 c #cc9a4b", +".t. c #cc9b4e", +"#SP c #cc9f2f", +"fNb c #cca2a9", +"fBK c #cca2ab", +"eNO c #cca5a6", +"eR9 c #cca6a5", +"fga c #cca6ab", +"ez8 c #ccaaa7", +"f9I c #ccaeb4", +"fmP c #ccafab", +"guz c #ccb0b4", +"fgJ c #ccb2ad", +"egj c #ccb2ae", +"cc5 c #ccb396", +"e0R c #ccb3ac", +"gqd c #ccb3b7", +"bjp c #ccb3db", +"brF c #ccb49a", +"bpH c #ccb59a", +"b6H c #ccb69b", +"bzl c #ccb79c", +"bhG c #ccb79f", +"exN c #ccb7ae", +"gkr c #ccb8ba", +"bxb c #ccb99f", +"bH0 c #ccb9a1", +"b2B c #ccb9a2", +"b0v c #ccbaa3", +"cfh c #ccbba0", +"ccY c #ccbba1", +"bUu c #ccbca9", +"giY c #ccbcbc", +"gdR c #ccbcbd", +"f5x c #ccbcbe", +"bN4 c #ccbdaa", +"geM c #ccbdbc", +"f5z c #ccbdbd", +"f5y c #ccbdbe", +"gw2 c #ccbdbf", +"fxe c #ccbdc0", +"gk3 c #ccbebd", +"gaG c #ccbebe", +"f68 c #ccbec0", +"d95 c #ccbfb6", +"eel c #ccbfb7", +"geN c #ccbfbd", +"gf3 c #ccbfbf", +"fYt c #ccbfc0", +"g.m c #ccc0be", +"fZF c #ccc0bf", +"f9g c #ccc0c0", +"f4x c #ccc0c2", +"beB c #ccc1ae", +"fE8 c #ccc1be", +"fQR c #ccc1bf", +"fCz c #ccc1c0", +"f9h c #ccc1c1", +"en5 c #ccc2b9", +"fH0 c #ccc2bd", +"fKR c #ccc2be", +"fz9 c #ccc2bf", +"fCy c #ccc2c0", +"f64 c #ccc2c1", +"fCx c #ccc3be", +"fF# c #ccc3bf", +"fA# c #ccc3c0", +"fwT c #ccc4bf", +"eQH c #ccc5bf", +"fp2 c #ccc5c0", +"fCA c #ccc5c2", +"eez c #ccc6bb", +"ex8 c #ccc6bc", +"e04 c #ccc6c0", +"e31 c #ccc6c2", +"fjZ c #ccc6c3", +"eJR c #ccc7bc", +"eOm c #ccc7bd", +"eHy c #ccc7be", +"eHz c #ccc7bf", +"eJS c #ccc7c0", +"eU5 c #ccc7c1", +"fm8 c #ccc7c2", +"e7g c #ccc7c3", +"gsI c #ccc7c4", +"eQF c #ccc8bc", +"d7R c #ccc8bd", +"eOn c #ccc8be", +"eCH c #ccc8bf", +"eti c #ccc8c0", +"evN c #ccc8c1", +"b7O c #ccc8c7", +"cen c #ccc8c9", +"eoC c #ccc8cc", +"eat c #ccc9bd", +"eav c #ccc9be", +"eAz c #ccc9bf", +"ey. c #ccc9c0", +"gDY c #ccc9c5", +"aAC c #ccc9c7", +"fIe c #ccc9d1", +"d7T c #cccabe", +"ecs c #cccabf", +"eqR c #cccac0", +"ey# c #cccac1", +"aGs c #cccaca", +"f2R c #cccacf", +"fFz c #cccad0", +"elF c #cccbbf", +"d2Z c #cccbc0", +"eqS c #cccbc1", +"eAC c #cccbc4", +"b1U c #cccbca", +".uJ c #cccbcb", +"c#u c #cccbcc", +"d1c c #cccbcf", +"e1. c #cccbd0", +"d0q c #ccccbf", +"e.l c #ccccc0", +"d2Y c #ccccc1", +"ecv c #ccccc2", +"c#v c #cccccb", +".xD c #cccccc", +"aKF c #cccccd", +"aKH c #ccccce", +"eyk c #cccccf", +"fFG c #ccccd1", +"dSL c #cccdc0", +"dXQ c #cccdc1", +"eaw c #cccdc3", +"gDM c #cccdc7", +"c#p c #cccdcb", +".Dh c #cccdcc", +".FR c #cccdcd", +"gq0 c #cccdcf", +".BS c #cccdd0", +"fxJ c #cccdd1", +"dLJ c #cccec1", +"dJl c #cccec2", +"dQn c #cccfc1", +"#j6 c #cccfcf", +"biV c #cccfd2", +"dHc c #ccd0c5", +"#94 c #ccd0cd", +"#mr c #ccd1d0", +".FM c #ccd1d1", +"#.B c #ccd1d2", +"#jb c #ccd2d0", +".1h c #ccd2d1", +".SR c #ccd2d2", +".Tz c #ccd2d3", +".VF c #ccd3d2", +".Tx c #ccd3d3", +"gJA c #ccd4cf", +"c1E c #ccd8cf", +"eVs c #ccd8d0", +"cXs c #ccd9cf", +"fTZ c #ccd9e9", +"fT2 c #ccdaea", +"e4V c #cce1f5", +"ci0 c #cce2c5", +"e4M c #ccf1f3", +"f#a c #ccf8fb", +"feQ c #ccfdfc", +"bgI c #cd1acb", +"aOo c #cd23ff", +"aXw c #cd40ff", +"fmf c #cda4ad", +"eJd c #cdacac", +"eJb c #cdacad", +"eJc c #cdadae", +"f7w c #cdaeb2", +"eGT c #cdb0ae", +"egi c #cdb1ad", +"f7t c #cdb1b6", +"e62 c #cdb2ae", +"f.. c #cdb2af", +"gqh c #cdb2b8", +"e3O c #cdb3ae", +"fdR c #cdb4af", +"bYG c #cdb69f", +"dSa c #cdb6b4", +"b0I c #cdb79d", +"f4z c #cdb7b9", +"bxg c #cdb89b", +"bUm c #cdb89d", +"bPY c #cdb89e", +"bKb c #cdb8a1", +"gks c #cdb8b9", +"gkp c #cdb8ba", +"b2J c #cdb9a1", +"evr c #cdb9b0", +"gdU c #cdb9bc", +"gkq c #cdbabb", +"cff c #cdbba1", +"b2A c #cdbba3", +"guS c #cdbbbc", +"cfg c #cdbca1", +"c.k c #cdbca2", +"b4x c #cdbca4", +"bYj c #cdbca6", +"eiU c #cdbcb2", +"guQ c #cdbcbb", +"goW c #cdbcbc", +"caA c #cdbda3", +"ccU c #cdbda5", +"bUb c #cdbdaa", +"gm5 c #cdbdbb", +"f76 c #cdbdbd", +"f67 c #cdbdbe", +"beE c #cdbea8", +"eek c #cdbeb6", +"f2F c #cdbebd", +"f2E c #cdbebe", +"f1C c #cdbebf", +"f1D c #cdbec0", +"f9k c #cdbec1", +"d00 c #cdbf9b", +"bSh c #cdbfae", +"eqE c #cdbfb3", +"gcT c #cdbfbd", +"gqI c #cdbfbe", +"g#E c #cdbfc0", +"f4w c #cdbfc1", +"d5. c #cdc0b7", +"gqJ c #cdc0be", +"gdS c #cdc0bf", +"f4s c #cdc0c0", +"f9i c #cdc0c1", +"f69 c #cdc0c2", +"fNO c #cdc1be", +"fKQ c #cdc1bf", +"fNQ c #cdc1c0", +"fQS c #cdc2bf", +"fA. c #cdc2c0", +"fYs c #cdc2c2", +"fz8 c #cdc3be", +"fH2 c #cdc3bf", +"fwS c #cdc3c0", +"fF. c #cdc3c1", +"eU4 c #cdc4bc", +"ftj c #cdc4bf", +"eHw c #cdc5be", +"bbA c #cdc6ba", +"eQE c #cdc6bc", +"eJQ c #cdc6bd", +"eSD c #cdc6be", +"f.q c #cdc6bf", +"aO4 c #cdc6c7", +"egN c #cdc7bb", +"eE7 c #cdc7bd", +"eHx c #cdc7be", +"eQG c #cdc7bf", +"eAy c #cdc8be", +"fjY c #cdc8c1", +"fm7 c #cdc8c2", +"evK c #cdc9bc", +"eth c #cdc9be", +"eAA c #cdc9c0", +"evM c #cdc9c1", +"gsJ c #cdc9c5", +"guW c #cdc9c6", +"axY c #cdc9c8", +"evL c #cdcabf", +"d7U c #cdcbbe", +"e.k c #cdcbbf", +"eqQ c #cdcbc0", +"fQY c #cdcbcf", +"dQW c #cdcbd0", +"cbZ c #cdcbd1", +"dXO c #cdccbf", +"d0o c #cdccc0", +"dXR c #cdccc1", +".v9 c #cdcccb", +"#Js c #cdcccc", +"dTr c #cdcccf", +"coV c #cdccd0", +"dOH c #cdccd1", +"cb0 c #cdccd2", +"dVe c #cdcdc0", +"dO. c #cdcdc1", +"ecu c #cdcdc2", +".xT c #cdcdcd", +".sp c #cdcdce", +"aHT c #cdcdcf", +"aO5 c #cdcdd0", +"fLj c #cdcdd1", +"dSJ c #cdcec1", +"dSK c #cdcec2", +"gCy c #cdcecc", +"gE0 c #cdcecd", +".FX c #cdcece", +"cb2 c #cdcecf", +"cbY c #cdced0", +"eVm c #cdced1", +"biT c #cdced2", +"dSM c #cdcfc2", +"biD c #cdcfce", +"f5R c #cdcfcf", +"cyO c #cdcfd0", +"biU c #cdcfd3", +"eVx c #cdd0d8", +"gIp c #cdd1cf", +"gHD c #cdd1d0", +"gE8 c #cdd1d6", +"#g0 c #cdd2d1", +".Xf c #cdd2d2", +".6F c #cdd2d3", +"eYB c #cdd2d8", +".Y1 c #cdd3d2", +".SP c #cdd3d3", +".Ty c #cdd3d4", +"cTt c #cdd3d6", +"eVJ c #cdd3d9", +"biG c #cdd4cb", +".VG c #cdd4d3", +".TB c #cdd4d4", +"e71 c #cdd6dd", +"cUw c #cdd9cf", +"c0m c #cddad1", +"fZU c #cddae6", +"cXx c #cddbd2", +"e8a c #cddff3", +"e72 c #cde6eb", +"fhI c #cdfcfb", +"ao3 c #ce0001", +"aaw c #ce00fd", +"ajw c #ce026b", +"aGk c #ce1530", +"aQM c #ce268e", +"#9U c #ce2e11", +"aUl c #ce34ff", +"a6r c #ce5ffd", +"a9z c #ce73fc", +".Fa c #ce9e50", +".Bx c #ce9e51", +".rx c #cea055", +"fEF c #cea3a8", +"fgu c #cea6a6", +"eR8 c #cea7a6", +"eXs c #cea8a7", +"eLv c #cea8a8", +"bjs c #cea8da", +"eEA c #ceaba7", +"eLs c #ceacad", +"exA c #ceaeaa", +"eGR c #ceaeaf", +"enz c #ceb0ad", +"eGU c #ceb0ae", +"eGS c #ceb0af", +"fgH c #ceb3ae", +"e99 c #ceb3af", +"gst c #ceb3b7", +"fa5 c #ceb4b0", +"fkk c #ceb4b6", +"guA c #ceb4b7", +"gsB c #ceb5b8", +"e#0 c #ceb6b0", +"bUC c #ceb79c", +"bu4 c #ceb89c", +"bL0 c #ceb8a0", +"bPW c #ceb99e", +"b2R c #ceb9a1", +"cc2 c #ceba9f", +"b6L c #cebaa1", +"es2 c #cebab1", +"gwW c #cebabc", +"eYi c #cebbb8", +"gm4 c #cebbbb", +"giX c #cebbbc", +"guR c #cebbbd", +"cfe c #cebca2", +"b4w c #cebca5", +"f74 c #cebcbd", +"cPz c #cebcc0", +"bDx c #cebda4", +"bN7 c #cebda6", +"f4v c #cebdbd", +"f66 c #cebdbe", +"f9j c #cebdbf", +"bWi c #cebea8", +"bN5 c #cebeaa", +"f2D c #cebebe", +"fVC c #cebebf", +"fSN c #cebec0", +"fZC c #cebfbe", +"fVz c #cebfbf", +"fVA c #cebfc0", +"f1E c #cebfc1", +"evA c #cec0b5", +"fHY c #cec0bc", +"fZB c #cec0bd", +"gqK c #cec0bf", +"fDB c #cec0c0", +"fQQ c #cec0c1", +"a7G c #cec1b1", +"fE7 c #cec1be", +"g#F c #cec1c0", +"fSM c #cec1c1", +"eae c #cec2b9", +"fHZ c #cec2be", +"fCw c #cec2bf", +"fH4 c #cec3c1", +"g#D c #cec3c2", +"d3q c #cec4ae", +"en6 c #cec4bb", +"fjW c #cec4bf", +"fH3 c #cec4c1", +"fKS c #cec4c2", +"elC c #cec5ba", +"eSB c #cec5bb", +"eM. c #cec5bd", +"eM# c #cec5be", +"fp1 c #cec5c0", +"ex5 c #cec6bb", +"eXP c #cec6bc", +"ex7 c #cec6bd", +"eE6 c #cec6be", +"eXQ c #cec6bf", +"fjX c #cec6c0", +"biN c #cec6d9", +"bPG c #cec7b8", +"ei6 c #cec7bc", +"evJ c #cec7bd", +"fbf c #cec7be", +"e02 c #cec7bf", +"fm6 c #cec7c1", +"evG c #cec8bc", +"fd4 c #cec8bd", +"fgV c #cec8be", +"ei7 c #cec9be", +"eCE c #cec9bf", +"gsK c #cec9c6", +"aRW c #cec9c9", +"etg c #cecabd", +"eoa c #cecabe", +"gqN c #cecac7", +"aUZ c #cecaca", +"eo# c #cecbbe", +"egO c #cecbbf", +"d2W c #cecbc0", +"eeA c #cecbc1", +"gGf c #cecbc8", +"c#n c #cecbca", +"gEP c #cecbcd", +"egQ c #ceccbf", +"d2X c #ceccc0", +"d5p c #ceccc1", +"gDL c #cecccc", +"gEh c #ceccce", +"dFA c #ceccd0", +"fFk c #ceccd1", +"ect c #cecdc0", +"d0n c #cecdc1", +"dVg c #cecdc2", +"b5u c #cecdcc", +"bJc c #cecdcd", +"aRZ c #cecdce", +"eyl c #cecdcf", +"cb1 c #cecdd0", +"biW c #cecdd1", +"f.w c #cecdd2", +"e7o c #cecdd3", +"crr c #cecdda", +"dXP c #cecec2", +"dVf c #cecec3", +"c#z c #cececd", +".xB c #cecece", +".Dn c #cececf", +"aWU c #ceced0", +"cbW c #ceced1", +"dxV c #ceced2", +"fFF c #ceced3", +"gGR c #cecfcd", +"gDf c #cecfce", +".Gc c #cecfcf", +"biC c #cecfd0", +"biZ c #cecfd1", +"dqj c #cecfd3", +"fWY c #cecfd4", +"cCM c #ced0d0", +"eVL c #ced0d2", +"bH. c #ced0d4", +"bi1 c #ced1c8", +"gDN c #ced1cf", +"#Hd c #ced1d0", +"gqP c #ced1d4", +"cSh c #ced1d6", +"gEV c #ced1d7", +"b9q c #ced1dc", +"f.9 c #ced2d6", +"#eC c #ced3d2", +"#fj c #ced3d3", +"dBU c #ced3d4", +"#jg c #ced4d2", +".Z9 c #ced4d3", +".Uk c #ced4d4", +"b5M c #ced5d3", +".Wn c #ced5d4", +".Ws c #ced5d5", +"eVI c #ced5db", +"eVH c #ced8df", +"#Uz c #ced9d1", +"dVF c #cedad1", +"cW. c #cedbd1", +"cYP c #cedcd3", +".6d c #cedfe1", +"fWW c #cee2ea", +"eYK c #cee5f7", +"e73 c #cef3f7", +"a9I c #cef871", +"e74 c #cef9f9", +"e75 c #cefbf8", +"aDi c #cefc0a", +"aRH c #cefd2e", +"a3K c #ceff52", +"bdJ c #cf00bd", +"aFN c #cf12fd", +"azG c #cf1919", +"a5R c #cf2ab9", +"#0r c #cf3e00", +"af0 c #cf462a", +"azA c #cf5150", +"dYB c #cf5c5e", +"fqs c #cf7462", +".E8 c #cf9d4e", +".E9 c #cf9e50", +".F# c #cf9f53", +"fws c #cfa5a7", +"fB9 c #cfa6a8", +"faJ c #cfa6a9", +"fTi c #cfa7ac", +"eUD c #cfa9a8", +"eJf c #cfaaa9", +"eGX c #cfabaa", +"feC c #cfaca7", +"fgc c #cfacb0", +"eNM c #cfadae", +"fV7 c #cfadb0", +"fjb c #cfadb2", +"eJe c #cfaead", +"ev# c #cfb0ac", +"esJ c #cfb0ad", +"f9L c #cfb1b7", +"fjI c #cfb2af", +"fa4 c #cfb4b0", +"f4U c #cfb4b8", +"brE c #cfb599", +"fPQ c #cfb5ba", +"gd8 c #cfb6b9", +"brD c #cfb79b", +"gkt c #cfb8ba", +"bLZ c #cfb9a1", +"bNR c #cfbaa0", +"goV c #cfbabb", +"gqG c #cfbabc", +"b8w c #cfbba2", +"b2P c #cfbba3", +"fD6 c #cfbbbc", +"b2I c #cfbca2", +"bkx c #cfbca4", +"geJ c #cfbcba", +"gk2 c #cfbcbb", +"gm3 c #cfbcbc", +"ggT c #cfbcbd", +"b8q c #cfbda5", +"geK c #cfbdbb", +"f75 c #cfbdbd", +"fSO c #cfbdbe", +"fYu c #cfbdbf", +"c.j c #cfbea4", +"bFJ c #cfbea5", +"bhF c #cfbea6", +"fHX c #cfbebb", +"f5w c #cfbebe", +"fZD c #cfbebf", +"f1F c #cfbec0", +"bgy c #cfbee0", +"bN6 c #cfbfa8", +"guU c #cfbfbe", +"fNM c #cfbfbf", +"f4u c #cfbfc0", +"bUa c #cfc0ab", +"fE6 c #cfc0bd", +"fKO c #cfc0be", +"fWC c #cfc0bf", +"fZE c #cfc0c0", +"fVB c #cfc0c1", +"egz c #cfc1b8", +"fE5 c #cfc1bc", +"fWB c #cfc1bd", +"fNL c #cfc1be", +"fCv c #cfc1bf", +"fVy c #cfc1c0", +"fTT c #cfc1c1", +"f7. c #cfc1c2", +"biM c #cfc1dc", +"fKP c #cfc2bf", +"gbO c #cfc2c0", +"fYr c #cfc2c2", +"bRX c #cfc3af", +"eQC c #cfc4bc", +"eQD c #cfc5bc", +"eHu c #cfc5bd", +"eHv c #cfc5be", +"fgU c #cfc5c0", +"eCB c #cfc6ba", +"e01 c #cfc6bc", +"eU3 c #cfc6bd", +"evI c #cfc6be", +"eJO c #cfc6bf", +"f.p c #cfc6c0", +"ex4 c #cfc7bc", +"eSC c #cfc7bd", +"eJP c #cfc7bf", +"eE5 c #cfc8bc", +"egM c #cfc8bd", +"etf c #cfc8be", +"fgT c #cfc8c0", +"etd c #cfc9bd", +"elD c #cfc9be", +"eqN c #cfc9bf", +"ecr c #cfcabd", +"elG c #cfcabf", +"guX c #cfcac8", +"ei8 c #cfcbbe", +"eo. c #cfcbbf", +"d5m c #cfcbc0", +"bqO c #cfcbc8", +"guY c #cfcbc9", +"gzp c #cfcbca", +"d5n c #cfccc0", +"d5o c #cfccc1", +"el7 c #cfccd0", +"dSI c #cfcdc1", +"cbO c #cfcdca", +"gDD c #cfcdcb", +"bRh c #cfcdcc", +"fWZ c #cfcdce", +"dw. c #cfcdd1", +"cb3 c #cfcecc", +"cbS c #cfced1", +"cbX c #cfced2", +"fFy c #cfced3", +"e09 c #cfced4", +"biS c #cfcfcd", +"ev1 c #cfcfce", +".BK c #cfcfcf", +".Do c #cfcfd0", +"bcw c #cfcfd1", +"aEX c #cfcfd2", +"dok c #cfcfd3", +"biF c #cfd0cc", +"bVl c #cfd0cf", +"aMb c #cfd0d1", +"eok c #cfd0d2", +".Gn c #cfd1d3", +"gIl c #cfd1d7", +"bcz c #cfd2d1", +"cLj c #cfd2d2", +"cGb c #cfd2d4", +"cEu c #cfd2d5", +"cJG c #cfd3d1", +"#h5 c #cfd3d2", +"gGI c #cfd4ca", +"#ik c #cfd4d3", +"cCI c #cfd4d5", +".1g c #cfd5d4", +".Tv c #cfd5d5", +".1f c #cfd6d5", +".TF c #cfd6d6", +"gES c #cfd7cd", +"e1z c #cfd9ca", +"#XK c #cfd9d1", +"cYL c #cfdcd2", +"dVO c #cfddd1", +"e4L c #cfeaef", +"f#d c #cffcfb", +"#Kr c #cffd00", +"auK c #d00136", +"aZT c #d029a4", +"aE6 c #d02c62", +"azD c #d03635", +"azC c #d03e3f", +"azB c #d04848", +"av. c #d0580b", +"azz c #d05a59", +".F. c #d09f52", +"fjv c #d0a5a8", +"fzG c #d0a5aa", +"fsV c #d0a6a8", +"e9L c #d0a7aa", +"e0C c #d0aaa9", +"fNg c #d0aaad", +"fgl c #d0abac", +"eB8 c #d0acac", +"fzk c #d0acb1", +"fZd c #d0acb3", +"eLu c #d0adad", +"fWg c #d0adb3", +"eEu c #d0aead", +"eLt c #d0aeb0", +"fhd c #d0afa7", +"evb c #d0b0ad", +"eqc c #d0b0ae", +"f7P c #d0b0b3", +"eUk c #d0b1b5", +"fVV c #d0b1b6", +"ed5 c #d0b5b0", +"elb c #d0b5b1", +"fEa c #d0b6b8", +"geF c #d0b6ba", +"fy8 c #d0b6bb", +"btg c #d0b89d", +"fVF c #d0b8bb", +"bth c #d0b99e", +"bu3 c #d0ba9d", +"bS# c #d0bb9f", +"fjM c #d0bbb5", +"gm2 c #d0bbbc", +"gsE c #d0bbbd", +"fME c #d0bbbe", +"beK c #d0bca0", +"evt c #d0bcb3", +"geI c #d0bcba", +"gaE c #d0bcbc", +"ggS c #d0bcbd", +"f9m c #d0bcc0", +"ccW c #d0bda3", +"b4M c #d0bda4", +"b4v c #d0bda6", +"eAm c #d0bdb3", +"gcO c #d0bdba", +"fWy c #d0bdbb", +"fQM c #d0bdbc", +"g.j c #d0bdbd", +"fE. c #d0bdbe", +"fMH c #d0bdbf", +"ccX c #d0bea4", +"b2z c #d0bea6", +"b0u c #d0bea7", +"g.k c #d0bebe", +"cPA c #d0bebf", +"fYv c #d0bec0", +"bDA c #d0bfa5", +"gaF c #d0bfbe", +"g.l c #d0bfbf", +"fWD c #d0bfc0", +"fE4 c #d0c0bc", +"fWA c #d0c0bf", +"fNN c #d0c0c0", +"f4t c #d0c0c1", +"f9l c #d0c0c3", +"fCu c #d0c1be", +"fTR c #d0c1c0", +"fYx c #d0c1c1", +"fYq c #d0c1c2", +"fDz c #d0c1c4", +"bYe c #d0c2ac", +"et. c #d0c2b8", +"fTQ c #d0c2be", +"fQO c #d0c2bf", +"fWE c #d0c2c1", +"f9f c #d0c2c2", +"d49 c #d0c3ba", +"fz7 c #d0c3c1", +"d2H c #d0c4bb", +"eE1 c #d0c5bb", +"eSA c #d0c5bc", +"f.o c #d0c5be", +"eJN c #d0c5bf", +"elx c #d0c6ba", +"eCC c #d0c6bb", +"eHs c #d0c6bd", +"eHt c #d0c6be", +"fbe c #d0c6bf", +"f.m c #d0c6c0", +"ex1 c #d0c7bc", +"eE4 c #d0c7bd", +"ete c #d0c7be", +"fbd c #d0c7c0", +"evH c #d0c8bc", +"en8 c #d0c8bd", +"eqO c #d0c8be", +"eAx c #d0c8bf", +"e30 c #d0c8c0", +"eAw c #d0c9bc", +"eCD c #d0c9bd", +"eey c #d0c9be", +"eob c #d0c9bf", +"biI c #d0c9d6", +"elE c #d0cabe", +"eqP c #d0cabf", +"egP c #d0cbc0", +"gw6 c #d0cbca", +"bdW c #d0cbcb", +"ei9 c #d0ccbf", +"gDU c #d0ccca", +"d2V c #d0cdc1", +"cbP c #d0cdcd", +"fnb c #d0ced2", +"dmH c #d0ced3", +"fFD c #d0ced4", +"dQl c #d0cfc3", +"biA c #d0cfcc", +"biE c #d0cfcd", +"biY c #d0cfce", +"biX c #d0cfcf", +"bCE c #d0cfd0", +"eFc c #d0cfd1", +"eU9 c #d0cfd2", +"dbR c #d0cfd3", +"fIt c #d0cfd4", +"e39 c #d0cfd5", +"biB c #d0d0cd", +"bLd c #d0d0cf", +".Di c #d0d0d0", +"gDK c #d0d0d1", +"bCk c #d0d0d2", +"b3r c #d0d0d3", +"dfa c #d0d0d4", +"biR c #d0d1cc", +"gGS c #d0d1d0", +".Go c #d0d1d3", +"bCC c #d0d1d4", +"gEO c #d0d2d1", +"ewb c #d0d2d2", +"fQ9 c #d0d2d4", +"bRj c #d0d3d2", +"cH3 c #d0d3d3", +"fId c #d0d3e0", +"biQ c #d0d4cb", +"cN9 c #d0d4d2", +"bVr c #d0d4d4", +"dqf c #d0d4d5", +"dsf c #d0d4d6", +".6A c #d0d5d5", +".6G c #d0d5d6", +".Wo c #d0d6d5", +".Tu c #d0d6d6", +".TE c #d0d6d7", +"dhc c #d0d7d5", +".1e c #d0d7d6", +".U4 c #d0d7d7", +"eVr c #d0d8d2", +"eYA c #d0d8dd", +"eVG c #d0d9e0", +"#Uy c #d0dbd3", +"adY c #d0ff01", +"ava c #d10002", +"azE c #d12c29", +"azy c #d16464", +"fqu c #d16d55", +"azx c #d16d6f", +"azw c #d17777", +"azv c #d17f7e", +"fnw c #d18671", +"azu c #d18989", +"azt c #d19293", +"ftS c #d19298", +"azs c #d19b9d", +".sf c #d1a154", +".nS c #d1a55f", +"fwt c #d1a6a9", +"fjw c #d1a7a9", +"e3B c #d1aba9", +"eB9 c #d1acad", +"eCd c #d1adab", +"eGV c #d1aeac", +"eNN c #d1aeaf", +"f44 c #d1aeb4", +"exy c #d1afad", +"eEt c #d1afae", +"esI c #d1b0af", +"ggG c #d1b0b5", +"exz c #d1b1ae", +"eva c #d1b2af", +"eqb c #d1b2b0", +"fQD c #d1b2b3", +"fbP c #d1b3b0", +"fYV c #d1b3b8", +"g#9 c #d1b3b9", +"eiF c #d1b7b3", +"bpI c #d1b89b", +"gih c #d1b8ba", +"bpL c #d1b99d", +"b8B c #d1b99f", +"guP c #d1b9bb", +"gou c #d1b9bc", +"bQ# c #d1ba9f", +"b0V c #d1baa3", +"geH c #d1bab9", +"gsD c #d1babc", +"fJQ c #d1babd", +"bWF c #d1bba2", +"bKa c #d1bba3", +"g.g c #d1bbbb", +"ggR c #d1bbbc", +"fGW c #d1bbbd", +"b8y c #d1bca1", +"beM c #d1bca4", +"f73 c #d1bcba", +"f2z c #d1bcbb", +"gaC c #d1bcbc", +"gaD c #d1bcbd", +"fPN c #d1bcbf", +"buY c #d1bda3", +"b4F c #d1bda4", +"gcN c #d1bdba", +"g.h c #d1bdbb", +"fTN c #d1bdbc", +"f5u c #d1bdbe", +"fPM c #d1bdbf", +"fz# c #d1bdc0", +"b8v c #d1bea6", +"fHU c #d1beba", +"fHW c #d1bebc", +"fTO c #d1bebd", +"giW c #d1bebe", +"fMG c #d1bebf", +"fVD c #d1bec0", +"b4u c #d1bfa7", +"fKM c #d1bfbc", +"fNI c #d1bfbd", +"f5v c #d1bfbf", +"fYw c #d1bfc0", +"fQP c #d1bfc1", +"gd9 c #d1bfc2", +"biK c #d1bfdc", +"b8u c #d1c0a8", +"fKL c #d1c0bb", +"gcS c #d1c0c0", +"fTS c #d1c0c1", +"fPL c #d1c0c2", +"eEX c #d1c1b7", +"fNK c #d1c1bd", +"fQN c #d1c1be", +"f1B c #d1c1c2", +"fVx c #d1c1c3", +"bbG c #d1c2ae", +"fCt c #d1c2be", +"fSL c #d1c2c2", +"fPK c #d1c2c3", +"biJ c #d1c2d9", +"d94 c #d1c3ba", +"fDA c #d1c3c3", +"eQB c #d1c4ba", +"d7E c #d1c4bb", +"eJK c #d1c4bc", +"eJI c #d1c4bd", +"fz6 c #d1c4c1", +"eE2 c #d1c5ba", +"eOl c #d1c5bb", +"eHp c #d1c5bc", +"eL9 c #d1c5bd", +"f.k c #d1c5bf", +"ex6 c #d1c6bc", +"eJM c #d1c6be", +"f.l c #d1c6bf", +"f.n c #d1c6c0", +"ex2 c #d1c7bc", +"eqG c #d1c7bd", +"eqI c #d1c7be", +"e7f c #d1c7c0", +"e7e c #d1c7c1", +"evE c #d1c8bc", +"en7 c #d1c8bd", +"etc c #d1c8be", +"eqJ c #d1c8bf", +"e7d c #d1c8c1", +"ex3 c #d1c9be", +"e3Z c #d1c9c0", +"eqM c #d1cabe", +"gw7 c #d1cbcc", +"gx. c #d1ccce", +"gGG c #d1cccf", +"bjO c #d1cdcb", +"gw8 c #d1cdcd", +"biz c #d1cdcf", +"biy c #d1cdd1", +"biO c #d1cdd5", +"gHO c #d1cec8", +"eAL c #d1cec9", +"bi0 c #d1cecc", +"gIn c #d1ced1", +"ecI c #d1ced3", +"eoj c #d1cfcd", +"bwv c #d1cfce", +"gqQ c #d1cfcf", +"cbQ c #d1cfd3", +"bO1 c #d1cfd4", +"f5I c #d1cfd5", +"coO c #d1cfdb", +"gCN c #d1d0cf", +"bM5 c #d1d0d0", +"aDx c #d1d0d1", +"eVl c #d1d0d3", +"c7N c #d1d0d4", +"fCT c #d1d0d5", +"fFK c #d1d0d6", +"gHh c #d1d1cb", +"eyw c #d1d1cd", +"gDT c #d1d1ce", +"cAV c #d1d1cf", +"cbT c #d1d1d0", +".Ev c #d1d1d1", +"b7s c #d1d1d2", +"bOZ c #d1d1d3", +"fw2 c #d1d1d4", +"c86 c #d1d1d5", +"c#y c #d1d2d0", +"b#P c #d1d2d1", +"aE0 c #d1d2d3", +"c3C c #d1d2d4", +"b9n c #d1d3d2", +"fN5 c #d1d3d5", +"aH3 c #d1d4cf", +"gC4 c #d1d4d0", +"cPE c #d1d5d4", +"cl4 c #d1d5d9", +"biP c #d1d6cc", +".7U c #d1d6d6", +".4A c #d1d6d7", +".Yd c #d1d7d6", +".TG c #d1d7d7", +".TD c #d1d7d8", +"de6 c #d1d8d6", +".X7 c #d1d8d7", +".Ul c #d1d8d8", +"#yT c #d1d923", +"c80 c #d1d9d7", +"cSe c #d1dae2", +"bt9 c #d1ddcf", +"cUx c #d1ddd4", +"fQ0 c #d1ddec", +"cYM c #d1ded4", +"cUy c #d1ded5", +"cWc c #d1ded6", +"#F2 c #d1e11e", +"eYJ c #d1e6f8", +"e1L c #d1e7ec", +"e1U c #d1e8f9", +"a9H c #d1fa75", +"f#b c #d1fbfd", +"fb5 c #d1fcfc", +"fb3 c #d1fcfd", +"aLX c #d1fe1f", +"#yW c #d1ff00", +"aCR c #d20dfc", +"b#Y c #d211ec", +"aJd c #d2163c", +"aH1 c #d21a67", +"azF c #d22220", +"#2K c #d26f28", +"a9A c #d276fd", +"fnB c #d2775b", +".uv c #d2a153", +".s# c #d2a156", +".vR c #d2a255", +".q7 c #d2a55d", +".qp c #d2a55e", +"azr c #d2a5a7", +"fzH c #d2a5a9", +"fpF c #d2a8aa", +"bjt c #d2a8de", +"e1u c #d2a998", +"fpG c #d2a9aa", +"fT. c #d2abb3", +"ez4 c #d2adae", +"azq c #d2adb0", +"eCa c #d2aeac", +"eC. c #d2aead", +"exx c #d2aeae", +"fsF c #d2aeb3", +"ez5 c #d2afad", +"ev. c #d2afae", +"ez7 c #d2b0ad", +"f9R c #d2b0b6", +"ez6 c #d2b1af", +"fen c #d2b2a3", +"e4v c #d2b2ab", +"fVX c #d2b2b7", +"fpR c #d2b4b1", +"gkO c #d2b4b8", +"fmR c #d2b5b1", +"azp c #d2b7b8", +"f1Z c #d2b7bc", +"eb1 c #d2b8b3", +"fmU c #d2b8b4", +"gaB c #d2b8b9", +"fBw c #d2b8bb", +"gcJ c #d2b8bc", +"geG c #d2b9ba", +"goT c #d2b9bc", +"bpJ c #d2ba9e", +"fmV c #d2bab7", +"gcL c #d2babb", +"ggQ c #d2babc", +"gcM c #d2bbb9", +"g.f c #d2bbba", +"exO c #d2bcb3", +"fQK c #d2bcba", +"g.i c #d2bcbb", +"f5t c #d2bcbc", +"goU c #d2bcbe", +"fBz c #d2bcc0", +"bxf c #d2bda1", +"bzk c #d2bda2", +"bNS c #d2bda3", +"b4E c #d2bda4", +"f5s c #d2bdbb", +"f2A c #d2bdbc", +"fZz c #d2bdbd", +"gk1 c #d2bdbe", +"gcP c #d2bdbf", +"caH c #d2bea3", +"beL c #d2bea4", +"fQL c #d2bebd", +"fZA c #d2bebe", +"f2C c #d2bebf", +"fMI c #d2bec0", +"biL c #d2bedd", +"caB c #d2bfa6", +"b8s c #d2bfa8", +"exP c #d2bfb5", +"fHV c #d2bfbb", +"fKK c #d2bfbc", +"fKN c #d2bfbd", +"fNJ c #d2bfbe", +"fNH c #d2bfbf", +"fD9 c #d2bfc0", +"fYy c #d2bfc1", +"b4t c #d2c0a8", +"b6A c #d2c0a9", +"bYi c #d2c0ab", +"fWz c #d2c0bf", +"fGZ c #d2c0c0", +"fBA c #d2c0c1", +"b6B c #d2c1a9", +"bYB c #d2c1ac", +"gbP c #d2c1c2", +"ggg c #d2c2c2", +"bSi c #d2c3b1", +"eJJ c #d2c3ba", +"eHr c #d2c3bb", +"f.g c #d2c3bc", +"ge. c #d2c3c4", +"bP5 c #d2c4b3", +"eSy c #d2c4ba", +"eSz c #d2c4bb", +"eU2 c #d2c5ba", +"e3Y c #d2c5bc", +"eJL c #d2c5bd", +"fbc c #d2c5bf", +"eCA c #d2c6ba", +"eE0 c #d2c6bc", +"f.j c #d2c6c0", +"eE3 c #d2c7bc", +"e7c c #d2c7c0", +"fjV c #d2c7c1", +"fm5 c #d2c7c2", +"bRU c #d2c8b7", +"evF c #d2c8bc", +"etb c #d2c8bd", +"eqH c #d2c8be", +"eqK c #d2c8bf", +"fti c #d2c8c1", +"gEL c #d2c9bd", +"eqL c #d2c9be", +"en9 c #d2cabf", +"bgY c #d2cccd", +"gw9 c #d2cdce", +"buf c #d2cecd", +"ba4 c #d2cece", +"byD c #d2cfd1", +"fNW c #d2cfd4", +"#Ct c #d2d023", +"gDI c #d2d0cc", +"etH c #d2d0d2", +"cbV c #d2d0d3", +"d.R c #d2d0d4", +"cm# c #d2d0d5", +"dVd c #d2d1c4", +"gFy c #d2d1cb", +"cbR c #d2d1d0", +"b9o c #d2d1d1", +"etI c #d2d1d3", +"c6m c #d2d1d5", +"eX0 c #d2d1d6", +"e08 c #d2d1d7", +"bCG c #d2d2ce", +".Dm c #d2d2d1", +".BV c #d2d2d2", +"bCD c #d2d2d3", +"bZq c #d2d2d4", +"cAx c #d2d2d5", +"gIx c #d2d2d6", +"azc c #d2d3d1", +".Er c #d2d3d2", +"fof c #d2d3d4", +"cTx c #d2d3d5", +"bZu c #d2d4d2", +"eFo c #d2d4d6", +"ct2 c #d2d5d1", +".7R c #d2d6d6", +"elQ c #d2d6d8", +"gF# c #d2d7d3", +"cQ1 c #d2d7d6", +".2p c #d2d7d7", +".1r c #d2d7d8", +"e4J c #d2d7dc", +".Xb c #d2d8d7", +".TH c #d2d8d8", +"fFo c #d2d8dd", +"ddj c #d2d9d7", +"d.M c #d2d9d8", +".Ue c #d2d9d9", +"c43 c #d2dad7", +"#XJ c #d2dcd4", +"cYN c #d2dfd5", +"e4K c #d2e0e5", +"a6F c #d2ff5e", +"ajZ c #d30000", +"b#Z c #d304f8", +"dYz c #d36466", +"fqC c #d39fa1", +".te c #d3a253", +"fzI c #d3aaad", +"#P6 c #d3ab2a", +"eUC c #d3adac", +"eEv c #d3aead", +"eu9 c #d3aeaf", +"fzF c #d3aeb3", +"eC# c #d3afac", +"eCb c #d3afae", +"ez3 c #d3afaf", +"fQt c #d3afb2", +"eGW c #d3b0ae", +"f7C c #d3b0b7", +"fY5 c #d3b4b6", +"fmQ c #d3b5b1", +"fvX c #d3b5ba", +"gmL c #d3b6ba", +"g.d c #d3b7b8", +"f11 c #d3b7bc", +"gcg c #d3b8bc", +"gej c #d3b8bd", +"guI c #d3b9bc", +"gsC c #d3b9bd", +"bnH c #d3ba9d", +"ggr c #d3babd", +"gov c #d3babe", +"bkF c #d3bba0", +"cc4 c #d3bc9f", +"b6G c #d3bca3", +"fQJ c #d3bcba", +"f72 c #d3bcbb", +"fWx c #d3bcbc", +"fZy c #d3bcbd", +"gku c #d3bcbe", +"giV c #d3bcbf", +"giu c #d3bcc0", +"fNF c #d3bdbb", +"fTM c #d3bdbc", +"fSQ c #d3bdc0", +"b8z c #d3bea2", +"b6C c #d3bea7", +"evs c #d3beb5", +"fZx c #d3bebc", +"f2B c #d3bebd", +"gcQ c #d3bebf", +"fJT c #d3bec0", +"ccV c #d3bfa6", +"fKJ c #d3bfbd", +"gcR c #d3bfbf", +"geL c #d3bfc0", +"fPO c #d3bfc2", +"c.i c #d3c0a6", +"bBn c #d3c0a7", +"b6z c #d3c0a9", +"eUY c #d3c0b9", +"fTP c #d3c0bd", +"f4y c #d3c0c1", +"b6x c #d3c1a9", +"e0Y c #d3c1b9", +"fHT c #d3c1bc", +"fE3 c #d3c1bd", +"f1z c #d3c1c2", +"fJS c #d3c1c3", +"g#G c #d3c1c4", +"fSK c #d3c2c3", +"bWh c #d3c3ac", +"bU# c #d3c3ae", +"eXN c #d3c3ba", +"eQA c #d3c3bb", +"eL5 c #d3c3bc", +"b0s c #d3c4ab", +"eL6 c #d3c4bb", +"eL8 c #d3c4bc", +"eHo c #d3c4bd", +"eL7 c #d3c4be", +"f1A c #d3c4c5", +"bU. c #d3c5af", +"b.M c #d3c5b3", +"eEZ c #d3c5ba", +"e0Z c #d3c5bb", +"eHq c #d3c5bc", +"eQx c #d3c5bd", +"fbb c #d3c5be", +"fz5 c #d3c5c2", +"eCz c #d3c6bb", +"eqF c #d3c6bc", +"f.h c #d3c6be", +"e7a c #d3c6bf", +"fd3 c #d3c6c0", +"ex0 c #d3c7ba", +"eAv c #d3c7bb", +"e7b c #d3c7c0", +"fp0 c #d3c7c1", +"evD c #d3c8bb", +"en3 c #d3c8bd", +"eta c #d3c9be", +"gzo c #d3caca", +"d5l c #d3cec4", +"b5S c #d3cfce", +"bi2 c #d3d0cb", +"gIc c #d3d0ce", +"b1B c #d3d1d2", +"gFF c #d3d1d3", +"cb4 c #d3d1d5", +"cY6 c #d3d1d6", +"gAU c #d3d2d1", +"bCq c #d3d2d2", +"cbU c #d3d2d3", +"a5N c #d3d2d4", +"e7x c #d3d2d5", +"c0D c #d3d2d6", +"e7n c #d3d2d7", +"fFO c #d3d2d8", +"e38 c #d3d2d9", +"aB5 c #d3d3d1", +"gGT c #d3d3d2", +".Ew c #d3d3d3", +"cCs c #d3d3d4", +"aQD c #d3d3d5", +"bZp c #d3d3d6", +"eVB c #d3d3d7", +"awA c #d3d4d3", +"bAC c #d3d4d5", +"aTO c #d3d4d6", +"aq2 c #d3d5d0", +"afU c #d3d5d2", +"gE. c #d3d5d4", +"bZr c #d3d5d7", +".4i c #d3d8d8", +".3d c #d3d9d8", +".TI c #d3d9d9", +".U5 c #d3d9da", +"eVF c #d3d9e1", +"c3w c #d3dad8", +".X8 c #d3dad9", +".UY c #d3dada", +"fK2 c #d3dcec", +"#1a c #d3ddd5", +"eYz c #d3dde2", +"e4U c #d3def0", +"cXt c #d3e0d6", +"cYO c #d3e0d7", +"d3f c #d3e4d9", +"f#c c #d3fcfb", +"a0K c #d3fd4a", +"amh c #d40000", +"arS c #d40003", +"aX0 c #d40068", +"baS c #d400b1", +"#GJ c #d400d2", +"#NF c #d400fc", +"#6O c #d43911", +"fqt c #d46d55", +"#Dw c #d4a200", +".zq c #d4a65d", +"fkx c #d4a7ac", +"bju c #d4aadf", +"e3C c #d4aeac", +"eEw c #d4aead", +"eEx c #d4afad", +"eEs c #d4b2b1", +"giC c #d4b5ba", +"fss c #d4b7bb", +"f70 c #d4b9bb", +"f91 c #d4b9bc", +"b8A c #d4baa1", +"fmS c #d4bab6", +"fTJ c #d4baba", +"eX# c #d4babc", +"giE c #d4babd", +"gkQ c #d4babe", +"goD c #d4bac0", +"fZu c #d4bbba", +"ggP c #d4bbbe", +"f7v c #d4bbbf", +"giU c #d4bbc0", +"bnI c #d4bca0", +"f.Y c #d4bcb8", +"fZv c #d4bcbb", +"giv c #d4bcbf", +"c.r c #d4bda1", +"fZw c #d4bdbc", +"fWw c #d4bdbd", +"ggq c #d4bdc1", +"fTL c #d4bebc", +"fNG c #d4bebd", +"ggf c #d4bebf", +"fz. c #d4bec1", +"gkE c #d4bec2", +"bPX c #d4bfa3", +"caC c #d4bfa6", +"fBy c #d4bfc0", +"fVE c #d4bfc2", +"bxc c #d4c0a4", +"bzh c #d4c0a5", +"bBq c #d4c0a6", +"b2Q c #d4c0a7", +"eXL c #d4c0b9", +"e3T c #d4c0ba", +"fGY c #d4c0c1", +"fMF c #d4c0c2", +"b8t c #d4c1a9", +"eSt c #d4c1ba", +"gii c #d4c1c1", +"fJR c #d4c1c2", +"b4s c #d4c2a9", +"b6y c #d4c2aa", +"eQy c #d4c2bb", +"e00 c #d4c3bb", +"eHn c #d4c3bc", +"gdT c #d4c3c4", +"eU0 c #d4c4bb", +"eU1 c #d4c4bc", +"fba c #d4c4bd", +"eJH c #d4c4be", +"fCs c #d4c4bf", +"azo c #d4c4c5", +"bWg c #d4c5ae", +"e3W c #d4c5bc", +"eL4 c #d4c5be", +"exZ c #d4c6ba", +"eSw c #d4c6be", +"eAu c #d4c7bb", +"eVi c #d4c7bf", +"f.i c #d4c7c0", +"fgS c #d4c7c1", +"evC c #d4c8bb", +"et# c #d4c8be", +"fwR c #d4c8c2", +"bRW c #d4c9b7", +"gzm c #d4caca", +"eVj c #d4cbc7", +"bsz c #d4cfcd", +"eVk c #d4cfce", +"gDJ c #d4d1cf", +"dSH c #d4d2c6", +"gHo c #d4d2cf", +"bCo c #d4d2d2", +"ewd c #d4d2d3", +"eXV c #d4d2d5", +"bXs c #d4d2d6", +"cQ7 c #d4d2d7", +"bCF c #d4d2d8", +"geW c #d4d3d3", +"aE2 c #d4d3d4", +"aZQ c #d4d3d5", +"byk c #d4d3d6", +"cOe c #d4d3d7", +"bZv c #d4d3d9", +"gC7 c #d4d4d1", +"geV c #d4d4d3", +".Ex c #d4d4d4", +"buh c #d4d4d5", +"aWY c #d4d4d6", +"byj c #d4d4d7", +"aiO c #d4d5d3", +"bZt c #d4d5d4", +"cjp c #d4d5d6", +"cCP c #d4d5d7", +"bZs c #d4d6d3", +"gDa c #d4d6d7", +".F3 c #d4d6d8", +"eVq c #d4d7d6", +".F2 c #d4d7d8", +"ftP c #d4d7d9", +"b9s c #d4d7de", +"eVn c #d4d8d9", +".Ye c #d4d9d9", +"eVE c #d4d9e0", +".3l c #d4dad9", +".Ud c #d4dada", +".Um c #d4dadb", +".X9 c #d4dbda", +".Vd c #d4dbdb", +"ag2 c #d4f807", +"#NU c #d4fc00", +"feR c #d4fcfb", +"aAp c #d4ff02", +"auL c #d5002b", +"aRO c #d50048", +"#Kg c #d500f9", +"adz c #d500ff", +"aLw c #d51ffe", +"aUm c #d539fb", +"#WY c #d54c00", +"a0r c #d54efd", +"#Q6 c #d56c00", +"fqD c #d59497", +"fbK c #d59584", +".xo c #d5a85f", +"fB8 c #d5a8ac", +"fB7 c #d5aaae", +"fmC c #d5abad", +"eEz c #d5b0ae", +"eCc c #d5b0af", +"exw c #d5b0b1", +"eEr c #d5b2b3", +"f7D c #d5b3ba", +"giJ c #d5b4ba", +"eX. c #d5b7ba", +"geu c #d5b7bb", +"giI c #d5b8bd", +"gmF c #d5b9be", +"eYh c #d5baad", +"fTI c #d5bab9", +"fWv c #d5baba", +"f5q c #d5babc", +"giF c #d5babd", +"gmP c #d5babf", +"fTK c #d5bbbb", +"guO c #d5bbbe", +"goE c #d5bbbf", +"goH c #d5bbc0", +"fmT c #d5bcb8", +"fQI c #d5bcbb", +"gmO c #d5bcbe", +"gcK c #d5bcbf", +"giT c #d5bcc0", +"gow c #d5bcc1", +"bpK c #d5bda1", +"f2y c #d5bdbc", +"gsp c #d5bdc0", +"f9K c #d5bdc1", +"git c #d5bdc2", +"bhN c #d5bea3", +"fG1 c #d5bebe", +"fBx c #d5bec0", +"fMK c #d5bec1", +"gcf c #d5bec2", +"fKI c #d5bfbd", +"fSP c #d5bfc2", +"e68 c #d5c1bb", +"fD8 c #d5c1c2", +"fBB c #d5c1c3", +"eL1 c #d5c2ba", +"eQz c #d5c2bb", +"f.d c #d5c2bc", +"fHS c #d5c2bd", +"fE2 c #d5c2be", +"fGX c #d5c2c3", +"b8r c #d5c3ab", +"b4r c #d5c3ac", +"eQu c #d5c3ba", +"e3X c #d5c3bb", +"eXO c #d5c3bc", +"fE1 c #d5c3bf", +"bdy c #d5c3d8", +"bDz c #d5c4ab", +"bYh c #d5c4ad", +"e7# c #d5c4bc", +"e7. c #d5c4bd", +"eJG c #d5c4be", +"b2w c #d5c5ac", +"e3V c #d5c5bc", +"eSv c #d5c5bd", +"eL3 c #d5c5be", +"fd2 c #d5c5bf", +"gza c #d5c5c6", +"eQw c #d5c6be", +"fdZ c #d5c6bf", +"fjU c #d5c6c2", +"fGv c #d5c6c7", +"fgQ c #d5c7c0", +"fth c #d5c7c2", +"fgR c #d5c8bf", +"fjT c #d5c8c2", +"fjS c #d5c9c3", +"bPc c #d5d2d1", +"bM9 c #d5d2d2", +"bZy c #d5d2d4", +"atX c #d5d3d1", +"gAj c #d5d3d2", +"aHV c #d5d3d5", +"eq9 c #d5d3d6", +"fFg c #d5d3d7", +"cGi c #d5d3d8", +"bZx c #d5d4d2", +"etG c #d5d4d3", +"#FT c #d5d4d4", +"#T3 c #d5d4d5", +"cEy c #d5d4d8", +"eXZ c #d5d4d9", +"bVk c #d5d5d3", +"eeJ c #d5d5d4", +".Fg c #d5d5d5", +"cMt c #d5d5d6", +"cNT c #d5d5d7", +"a#S c #d5d5d8", +"#8J c #d5d5d9", +".Es c #d5d6d5", +"bRk c #d5d6d6", +"eVA c #d5d6d8", +"cyv c #d5d6da", +"elU c #d5d7d5", +"aec c #d5d7d8", +"gG0 c #d5d7d9", +"e70 c #d5d7db", +"bVu c #d5d8d5", +"cWp c #d5d8d7", +"fqA c #d5d8da", +"cQ5 c #d5d8dc", +".F7 c #d5d9d9", +"cPw c #d5d9dc", +"gqS c #d5d9df", +".Y. c #d5dada", +".3w c #d5dadb", +"gF9 c #d5dadf", +".Yf c #d5dbda", +".Un c #d5dbdb", +".0# c #d5dcdb", +".Uo c #d5dcdc", +"blF c #d5ddd3", +"e1K c #d5e3e8", +"d3o c #d5e5d4", +"eYI c #d5e6f6", +"#Cx c #d5f706", +"aUJ c #d5fc3b", +"fb4 c #d5fdfc", +"a9T c #d6009f", +"d08 c #d6605f", +"dYA c #d66261", +"#VP c #d68027", +"fhm c #d68169", +"e4u c #d69a80", +"fnG c #d6a3a6", +"e7M c #d6a89d", +".vQ c #d6aa62", +"fwr c #d6adaf", +"eEy c #d6b0af", +"f43 c #d6b4bb", +"f2# c #d6b6ba", +"giG c #d6b6bc", +"gev c #d6b7bc", +"giH c #d6b7bd", +"f94 c #d6b8b9", +"gkS c #d6b8bc", +"f7O c #d6b8bd", +"ggF c #d6b8be", +"get c #d6b9bc", +"gan c #d6b9bd", +"gao c #d6b9be", +"f4W c #d6b9bf", +"f2w c #d6babd", +"ggE c #d6babe", +"fWu c #d6bbb9", +"gmN c #d6bbbd", +"giD c #d6bbbe", +"goM c #d6bbbf", +"gmG c #d6bbc0", +"fZt c #d6bcba", +"fQH c #d6bcbc", +"gqx c #d6bcbf", +"goI c #d6bcc0", +"gkD c #d6bcc1", +"bhM c #d6bda2", +"f71 c #d6bdbe", +"goG c #d6bdbf", +"gqr c #d6bdc0", +"fy9 c #d6bdc2", +"g.e c #d6bebe", +"ggp c #d6bec2", +"fKH c #d6c0be", +"fD7 c #d6c0c2", +"fPP c #d6c0c3", +"bxe c #d6c1a4", +"bxd c #d6c1a5", +"bzj c #d6c1a6", +"eSx c #d6c2ba", +"fdY c #d6c2bd", +"fJU c #d6c2c4", +"b2y c #d6c3ab", +"b0t c #d6c3ac", +"b0R c #d6c3ad", +"eOj c #d6c3bb", +"eHm c #d6c3bc", +"f.f c #d6c3bd", +"bDy c #d6c4ab", +"eHl c #d6c4bc", +"eXM c #d6c4bd", +"bWf c #d6c5ae", +"bT9 c #d6c6b2", +"bUv c #d6c6b3", +"fd0 c #d6c6bf", +"fgP c #d6c6c0", +"bUw c #d6c7b4", +"bSj c #d6c7b5", +"eEY c #d6c7bd", +"fm4 c #d6c7c2", +"fGu c #d6c7c9", +"fpZ c #d6c9c3", +"eVh c #d6cbc0", +"cjn c #d6d1d1", +"gAO c #d6d1d5", +"gAf c #d6d2d1", +"aob c #d6d2d2", +"gAe c #d6d2d3", +"gAg c #d6d3d2", +"b3O c #d6d3d3", +"aKK c #d6d3d6", +"gAk c #d6d4d2", +"b3v c #d6d4d3", +"gz3 c #d6d4d4", +"gz5 c #d6d4d5", +"eVf c #d6d4d6", +"fCM c #d6d4d7", +"cwz c #d6d4d9", +"fKZ c #d6d4da", +"dVR c #d6d5cd", +"bZw c #d6d5d0", +"gz7 c #d6d5d4", +"#SG c #d6d5d6", +"fC1 c #d6d5d8", +"cyS c #d6d5d9", +"fFE c #d6d5da", +"fFJ c #d6d5db", +"eFd c #d6d6d3", +".u0 c #d6d6d4", +".tv c #d6d6d5", +"#PX c #d6d6d6", +"bZN c #d6d6d7", +"#5I c #d6d6d8", +"crz c #d6d6d9", +"eVb c #d6d6da", +"crt c #d6d6de", +"#Zg c #d6d7d5", +"#2F c #d6d7d6", +"fRK c #d6d7d7", +"frb c #d6d7d8", +"cer c #d6d7d9", +"b9m c #d6d7da", +"cJJ c #d6d8d7", +"bEE c #d6d8d8", +"byw c #d6d8d9", +"by. c #d6d8da", +"eVD c #d6d8de", +"gBM c #d6d9d9", +"gJw c #d6d9da", +"gBJ c #d6d9db", +"fNX c #d6d9e2", +"gBN c #d6dad9", +"gD9 c #d6dada", +"cSb c #d6dbda", +".0c c #d6dbdb", +".4K c #d6dbdc", +"gGM c #d6dcd3", +".4g c #d6dcdb", +".Up c #d6dcdc", +"d0V c #d6ddd1", +"eYn c #d6ddd4", +".4f c #d6dddc", +".0f c #d6dddd", +"cjf c #d6e0d7", +"d0J c #d6e1d3", +"cW# c #d6e2d8", +"fWT c #d6e4f3", +"#0k c #d6fe00", +"ajx c #d7005b", +"#Z0 c #d700fa", +"agC c #d701f5", +"axl c #d704ef", +"bgJ c #d71bce", +"aRi c #d72dfb", +"d07 c #d76466", +"a6s c #d766ff", +"fkl c #d79785", +".vO c #d7ab62", +".nT c #d7ad67", +"faK c #d7adb1", +"fKn c #d7b0b5", +"fdm c #d7b5b8", +"fTu c #d7b5b9", +"fBL c #d7b5ba", +"ggD c #d7b5bc", +"f2. c #d7b6ba", +"f9S c #d7b6bc", +"gcv c #d7b7bc", +"f92 c #d7b7bd", +"gap c #d7b7be", +"fNy c #d7b8b8", +"gcw c #d7b8bd", +"gkR c #d7b8be", +"gew c #d7b9be", +"gmQ c #d7b9bf", +"f7N c #d7babe", +"goF c #d7bcbe", +"f5r c #d7bcbf", +"gmM c #d7bcc1", +"f2x c #d7bdbd", +"gqt c #d7bdc0", +"gqu c #d7bdc1", +"gqn c #d7bdc2", +"gox c #d7bec1", +"gwO c #d7bec2", +"goC c #d7bec3", +"fNE c #d7bfbd", +"f4V c #d7bfc4", +"btb c #d7c0a5", +"fvY c #d7c0c2", +"gce c #d7c0c4", +"bu2 c #d7c1a5", +"fHR c #d7c1bf", +"fMJ c #d7c1c5", +"bzi c #d7c2a7", +"bWE c #d7c2aa", +"fJV c #d7c2c4", +"fb# c #d7c3be", +"fG0 c #d7c3c3", +"gb5 c #d7c3c4", +"eJF c #d7c4bd", +"e3U c #d7c4be", +"eUZ c #d7c5be", +"fjP c #d7c5c0", +"fgO c #d7c6bf", +"fd1 c #d7c6c0", +"fjQ c #d7c7c1", +"fm2 c #d7c7c2", +"ftf c #d7c7c3", +"fjR c #d7c8c2", +"ftg c #d7c8c4", +"eCy c #d7c9be", +"fm3 c #d7c9c3", +"evB c #d7cabf", +"gIh c #d7d0cc", +"eVg c #d7d2ca", +"gEx c #d7d3d1", +"gAi c #d7d3d2", +"gAh c #d7d3d3", +"gAy c #d7d3d4", +"als c #d7d3d5", +"gAm c #d7d4d3", +"bEW c #d7d4d4", +"gA. c #d7d4d5", +"gEN c #d7d5d3", +"gAn c #d7d5d4", +"gz4 c #d7d5d5", +"gz1 c #d7d5d6", +"gz6 c #d7d5d7", +"fns c #d7d5d9", +"fCZ c #d7d5da", +"e07 c #d7d5dc", +"gFO c #d7d6d5", +"bP. c #d7d6d6", +"b7F c #d7d6d7", +"bTo c #d7d6d9", +"cg1 c #d7d6da", +"e37 c #d7d6db", +"bVn c #d7d7d3", +".Dj c #d7d7d7", +"c8Z c #d7d7d8", +"d.L c #d7d7d9", +"ccb c #d7d7da", +"eVy c #d7d7db", +"bVo c #d7d8d6", +"bM1 c #d7d8d7", +"fup c #d7d8d8", +"gBL c #d7d8d9", +"b5V c #d7d8da", +"eSM c #d7d8db", +"gIy c #d7d9d7", +"gIz c #d7d9d8", +"cTo c #d7d9d9", +"eS1 c #d7d9da", +"gBI c #d7d9db", +"gBV c #d7d9dc", +"coQ c #d7d9df", +"gBO c #d7dada", +"eys c #d7dbd9", +".4J c #d7dcdc", +"e1I c #d7dcdf", +"gH0 c #d7dce0", +".Y5 c #d7dddc", +".Ve c #d7dddd", +".VL c #d7ddde", +".Y6 c #d7dedd", +".Yl c #d7dede", +".pw c #d7def1", +"b3H c #d7dfe1", +"e1J c #d7dfe3", +"cQ2 c #d7dfe5", +"ft2 c #d7e0ee", +"fNY c #d7e1f0", +".6e c #d7e2d9", +"e1T c #d7e3f3", +"cXw c #d7e4db", +"#6H c #d7fe00", +"a3T c #d80085", +"a6P c #d80091", +"#6k c #d800fe", +"azY c #d807ff", +"aj0 c #d81315", +"a2O c #d824b1", +"#G1 c #d89300", +"f.T c #d89f8e", +"fhq c #d8acaf", +".qq c #d8af6d", +"fB6 c #d8b3b6", +"fB3 c #d8b5b7", +"d04 c #d8b6b7", +"fw# c #d8b7ba", +"gaq c #d8b8bb", +"fTk c #d8b8bd", +"fV8 c #d8b8be", +"gcy c #d8b9be", +"gcu c #d8babe", +"gmR c #d8babf", +"gkP c #d8bbbf", +"goJ c #d8bbc0", +"fTH c #d8bcbb", +"goK c #d8bcbf", +"fYT c #d8bcc0", +"fQG c #d8bdbc", +"goL c #d8bdc0", +"fZs c #d8bebc", +"f10 c #d8bec3", +"brz c #d8bfa3", +"fND c #d8bfbe", +"gmE c #d8bfc3", +"caJ c #d8c0a3", +"bkE c #d8c0a4", +"f7u c #d8c0c5", +"fE# c #d8c1c3", +"fBC c #d8c1c4", +"g#8 c #d8c1c5", +"buZ c #d8c2a6", +"fdX c #d8c2be", +"f.e c #d8c2bf", +"c.q c #d8c3a6", +"eOk c #d8c3bd", +"e69 c #d8c3bf", +"cc3 c #d8c4a7", +"bBp c #d8c4ab", +"eQv c #d8c4bc", +"eSu c #d8c4bd", +"eL2 c #d8c4be", +"fjN c #d8c5bf", +"fwN c #d8c5c0", +"e7Q c #d8c5c1", +"ftd c #d8c6bf", +"fjO c #d8c6c0", +"fwO c #d8c6c1", +"fz3 c #d8c6c2", +"fm1 c #d8c7c2", +"fpX c #d8c7c4", +"fpY c #d8c8c4", +"bP6 c #d8c9b5", +"fwQ c #d8c9c4", +"exY c #d8cabf", +"gAx c #d8d3d4", +"gz8 c #d8d3d6", +"gAz c #d8d4d4", +"gz9 c #d8d4d5", +"bsB c #d8d4d6", +"gAl c #d8d5d4", +"gA# c #d8d5d6", +"cwx c #d8d5d7", +"gAo c #d8d6d4", +"gAc c #d8d6d5", +"gAb c #d8d6d6", +"gz2 c #d8d6d7", +"e4j c #d8d6da", +"b9A c #d8d6db", +".tE c #d8d7d5", +"bLf c #d8d7d7", +".BL c #d8d7d8", +"bO2 c #d8d7da", +"b1Y c #d8d7db", +"bO8 c #d8d8d7", +"#FO c #d8d8d8", +"aEZ c #d8d8d9", +"bZo c #d8d8da", +"bZO c #d8d8db", +"gBW c #d8d8dc", +"fC6 c #d8d9d6", +"fAq c #d8d9d7", +"aR0 c #d8d9d8", +"b1W c #d8d9d9", +"eSN c #d8d9da", +"gBK c #d8d9db", +"gBU c #d8d9dc", +"gBS c #d8dad9", +"gBP c #d8dada", +"bv5 c #d8dadb", +"eVC c #d8dadc", +"fIa c #d8dae0", +"eS3 c #d8dbd9", +"eSV c #d8dbdc", +"bCu c #d8dbdd", +"b3I c #d8dcda", +"cyN c #d8dcdc", +"#h1 c #d8dddc", +".5O c #d8dddd", +".6O c #d8ddde", +".Vf c #d8dede", +"dYq c #d8dfd8", +".0. c #d8dfde", +"g.C c #d8e0dd", +".qB c #d8e0f0", +"cWb c #d8e5dd", +"ciJ c #d8e6da", +"cgV c #d8eadd", +"cgq c #d8ecd9", +"axO c #d8f208", +"ao4 c #d90000", +"aL4 c #d91646", +"azi c #d91f54", +"aQJ c #d92087", +"a3t c #d954fe", +"fky c #d99ca2", +"e1t c #d9a481", +"bjv c #d9aade", +".vP c #d9ad64", +".pg c #d9b270", +"fEA c #d9b5b8", +"fHq c #d9b6ba", +"fzD c #d9b7b8", +"fEC c #d9b9bb", +"gam c #d9b9be", +"gcx c #d9b9bf", +"fHs c #d9bbbe", +"f93 c #d9bbbf", +"eYg c #d9bca5", +"fWt c #d9bdbc", +"fZr c #d9bdbd", +"fYU c #d9c0c4", +"f9J c #d9c1c6", +"bUB c #d9c2aa", +"fxp c #d9c3c5", +"bBo c #d9c5ac", +"fte c #d9c5c0", +"b2x c #d9c6af", +"fmY c #d9c6c0", +"fmX c #d9c6c1", +"fm0 c #d9c6c3", +"fz2 c #d9c7c2", +"fwP c #d9c7c3", +"bT8 c #d9ccb7", +"bRV c #d9d0be", +"gAq c #d9d3d4", +"gAr c #d9d4d5", +"gAv c #d9d5d6", +"gAa c #d9d5d7", +"eym c #d9d6d3", +"gAp c #d9d6d5", +"gAd c #d9d6d7", +"f3a c #d9d7d8", +"ct0 c #d9d7d9", +"fR. c #d9d7da", +"gBH c #d9d7db", +"gBX c #d9d7dc", +"cPI c #d9d8d5", +".uN c #d9d8d6", +"cyR c #d9d8d7", +"bXj c #d9d8d8", +"cJD c #d9d8d9", +"fC3 c #d9d8da", +"eSU c #d9d8db", +"bLm c #d9d8dc", +"fFI c #d9d8dd", +"fFN c #d9d8de", +"cTr c #d9d9d7", +".zD c #d9d9d8", +".Ep c #d9d9d9", +"ejj c #d9d9da", +"#yE c #d9d9db", +"bv9 c #d9d9dc", +"eyt c #d9d9dd", +"eC3 c #d9d9df", +"gsS c #d9dad5", +"bO4 c #d9dad7", +"bv6 c #d9dad9", +".Fh c #d9dada", +"b1E c #d9dadb", +"eSW c #d9dadc", +"fK0 c #d9dae2", +"cWt c #d9dbd8", +"a97 c #d9dbdb", +"eS2 c #d9dbdc", +"eSR c #d9dbde", +"gIt c #d9dcd4", +"bM3 c #d9dcdc", +"eSQ c #d9dcdd", +"bCJ c #d9dce1", +"#h2 c #d9dddd", +"eSP c #d9ddde", +"eeL c #d9deda", +".89 c #d9dedd", +".9. c #d9dede", +".5N c #d9dedf", +".Y7 c #d9dfde", +".VQ c #d9dfdf", +".Wv c #d9dfe0", +"g.B c #d9e0da", +".6s c #d9e0df", +"fqN c #d9e0ef", +"#1# c #d9e4dc", +"eYH c #d9e5f1", +"cXu c #d9e6dc", +"cgU c #d9e8d9", +"fT3 c #d9edf8", +"aCw c #da2727", +"aCv c #da302f", +"aCu c #da393a", +"#3P c #da4412", +"acY c #da4820", +"aCl c #da8f8e", +"aCk c #da9799", +"fhr c #da9ea4", +".t# c #daac61", +".us c #daac65", +".qt c #dab371", +"fdv c #dab4b5", +"fHu c #dab6bc", +"f5b c #dab7bd", +"ges c #dab9bf", +"fKm c #dabbc0", +"fHr c #dabcbf", +"fNe c #dabcc0", +"fQj c #dabcc1", +"fY6 c #dabdc1", +"fpS c #dabeba", +"#GN c #dabf08", +"brA c #dac1a6", +"fNC c #dac1bf", +"bu0 c #dac3a6", +"fHQ c #dac3c0", +"fzY c #dac4c1", +"c.p c #dac5a9", +"bQ. c #dac5ac", +"bWD c #dac5ad", +"b0S c #dac5ae", +"fmW c #dac5c0", +"fwJ c #dac5c2", +"fE0 c #dac5c3", +"fCp c #dac5c4", +"fza c #dac5c8", +"fwM c #dac6c0", +"fz0 c #dac6c3", +"bWC c #dac7b1", +"fwL c #dac7c0", +"fmZ c #dac7c1", +"fz1 c #dac7c3", +"fz4 c #dac7c4", +"bYC c #dac8b5", +"bWA c #dac8b6", +"bWB c #dac9b5", +"bUx c #dac9b6", +"bWe c #dacab3", +"fkv c #dad4d5", +"gAu c #dad4d6", +"gAt c #dad5d5", +"gAs c #dad5d6", +"gAw c #dad6d7", +"gsV c #dad7d3", +"gxs c #dad7d7", +"gzM c #dad7d8", +"gB2 c #dad7da", +"gBT c #dad7dc", +"gEj c #dad8d5", +"eyq c #dad8d7", +"gBF c #dad8d8", +"bRd c #dad8d9", +"b3u c #dad8da", +"gBG c #dad8db", +"bVw c #dad8dc", +"gFP c #dad9d5", +"gCL c #dad9d6", +"gC3 c #dad9d7", +"bM2 c #dad9d8", +"bw. c #dad9d9", +"eeK c #dad9da", +"bv8 c #dad9db", +"bwb c #dad9dc", +"bw# c #dad9dd", +"bH# c #dadad9", +".v5 c #dadada", +"bAu c #dadadb", +"#Cj c #dadadc", +"buj c #dadadd", +"bGV c #dadbd8", +"eq0 c #dadbd9", +"b1G c #dadbda", +"bJ. c #dadbdb", +"b1F c #dadbdc", +"bAk c #dadbdd", +"eAK c #dadbde", +"bv4 c #dadbe0", +"fuc c #dadce1", +"gEf c #daddd6", +"eq8 c #daddda", +"bVq c #dadddb", +"g.D c #daddde", +"eSS c #dadde0", +"fqZ c #dadde6", +"gDx c #dadee3", +".3u c #dadfdf", +".74 c #dadfe0", +".Zc c #dae0df", +".Ww c #dae0e0", +"fnR c #dae0ef", +".Ym c #dae1e1", +"gEQ c #dae1e3", +".rg c #dae2ef", +"fK1 c #dae2f0", +"fIc c #dae3f2", +"fkT c #dae4ef", +"cWa c #dae6dd", +"blL c #dae8da", +"cgJ c #daeadc", +"aXS c #dafb3c", +"a3J c #daff56", +"a6E c #daff65", +"aCz c #db070c", +"aIH c #db1efc", +"aKO c #db1f70", +"a2S c #db22d5", +"aXx c #db42fd", +"aCt c #db4345", +"aCs c #db4c4d", +"aCr c #db5655", +"aCq c #db5f5e", +"au9 c #db650b", +"aCp c #db6968", +"aCo c #db7274", +"aCn c #db7b7d", +"fks c #db846a", +"aCm c #db8584", +"fnH c #db989f", +"aCj c #dba1a2", +".sa c #dbae66", +".ry c #dbb069", +"#zU c #dbb100", +".ra c #dbb16c", +"fja c #dbb7be", +"fB5 c #dbb9bb", +"gcz c #dbb9be", +"fTj c #dbbabf", +"fEB c #dbbbbd", +"fKl c #dbbbbf", +"fNd c #dbbbc0", +"fKE c #dbbcba", +"fQi c #dbbcc2", +"fWi c #dbbdc0", +"fTG c #dbbebe", +"fpT c #dbc1bd", +"bkD c #dbc2a7", +"bhL c #dbc3a7", +"ft# c #dbc3c0", +"fzX c #dbc3c1", +"fCo c #dbc4c0", +"fHP c #dbc4c1", +"bu1 c #dbc5a8", +"fzZ c #dbc5c2", +"bYF c #dbc6ae", +"ftc c #dbc6c0", +"fwK c #dbc6c2", +"fCq c #dbc8c4", +"bYD c #dbc9b3", +"fCr c #dbc9c4", +"bYg c #dbcbb2", +"bP7 c #dbccb7", +"e4y c #dbccc7", +"gBY c #dbd6d9", +"gB1 c #dbd6da", +"eVe c #dbd7dc", +"cOb c #dbd8d4", +"cLm c #dbd8d7", +"gq1 c #dbd8d8", +"bv7 c #dbd8d9", +"fCY c #dbd8de", +"ewc c #dbd9d9", +"eSZ c #dbd9da", +"bO9 c #dbd9db", +"eS4 c #dbd9dc", +"cUT c #dbdad7", +"bwa c #dbdad8", +"gzE c #dbdad9", +"eq4 c #dbdada", +"bXp c #dbdadb", +"bEr c #dbdadc", +"eVz c #dbdadd", +"fI# c #dbdade", +"eSL c #dbdadf", +"bVj c #dbdbd9", +"cY4 c #dbdbda", +"#Aa c #dbdbdb", +"aEY c #dbdbdc", +"#FN c #dbdbdd", +"acR c #dbdbde", +"eyr c #dbdcd8", +"eSY c #dbdcda", +"fFC c #dbdcdb", +"eST c #dbdcdc", +"bCl c #dbdcdd", +"ba7 c #dbdcdf", +"b7D c #dbdddd", +"g.A c #dbded8", +"g.E c #dbdedc", +"cyK c #dbdfdf", +"eYy c #dbdfe3", +"cws c #dbe0de", +".Zd c #dbe0e0", +"f.7 c #dbe0ed", +".Y8 c #dbe1e0", +".Xi c #dbe1e1", +".Xh c #dbe1e2", +"fn3 c #dbe1ea", +"e7Z c #dbe1ec", +"fbY c #dbe1ed", +"dTd c #dbe2db", +".7L c #dbe2e1", +"fIb c #dbe2ee", +"dYe c #dbe3da", +"cgK c #dbe7de", +"cXv c #dbe8de", +"cgp c #dbebdd", +"fT4 c #dbf2f7", +"a9G c #dbf38a", +"avb c #dc0000", +"arT c #dc0002", +"auM c #dc0024", +"#zE c #dc0920", +"avc c #dc1315", +"aOW c #dc1552", +"aCx c #dc1d1e", +"a6t c #dc6cfe", +"#KC c #dc8400", +"a9B c #dc8cf4", +"#VS c #dc941f", +"axU c #dc969a", +"aCi c #dcaaad", +"aCh c #dcb2b4", +"feA c #dcb3b7", +"fEE c #dcb7bb", +"fKk c #dcb7bd", +".ph c #dcb977", +"fNc c #dcb9c0", +"gal c #dcbac0", +"fQk c #dcbbbf", +"fs7 c #dcbeba", +"fZg c #dcbfc2", +"f5d c #dcbfc3", +"fs9 c #dcc0bc", +"fQF c #dcc0bf", +"ft. c #dcc2be", +"fNB c #dcc2c0", +"fCn c #dcc3c1", +"bkC c #dcc4a7", +"fHM c #dcc4bf", +"fpU c #dcc4c0", +"fwI c #dcc4c1", +"fEZ c #dcc4c2", +"#M2 c #dcc522", +"fzW c #dcc5c0", +"fEY c #dcc5c1", +"fHN c #dcc6c1", +"fHO c #dcc6c2", +"aCf c #dcc6c7", +"b0U c #dcc7b0", +"bYE c #dcc7b1", +"fpW c #dcc7c1", +"fvZ c #dcc7c9", +"bUA c #dcc8b1", +"bUz c #dcc9b4", +"bUy c #dccab6", +"bSk c #dccbb9", +"cPC c #dcd2d1", +"gH8 c #dcd6d1", +"eVp c #dcd6d9", +"gzr c #dcd7d8", +"gBZ c #dcd7d9", +"gB0 c #dcd7da", +"elO c #dcd8d4", +"gu7 c #dcd8d5", +"cMK c #dcd8d8", +"gg5 c #dcd8de", +"go7 c #dcd9d7", +"eSO c #dcd9da", +"gzx c #dcd9dc", +"c0B c #dcdad8", +"eSX c #dcdad9", +"dVE c #dcdadc", +"gqW c #dcdade", +"f8s c #dcdbd9", +"eoi c #dcdbda", +"bCM c #dcdbdb", +"fC0 c #dcdbdc", +"b1J c #dcdbdd", +"a98 c #dcdbde", +"cyz c #dcdbdf", +"e06 c #dcdbe1", +"gIF c #dcdcd6", +"b1K c #dcdcd8", +"gHI c #dcdcd9", +"b1L c #dcdcda", +"bZn c #dcdcdb", +"aO9 c #dcdcdc", +"dog c #dcdcdd", +"#2C c #dcdcde", +"afR c #dcdcdf", +"fFM c #dcdce1", +"eq3 c #dcdddc", +"cAy c #dcdddd", +"cyJ c #dcdddf", +"a04 c #dcdde0", +"eyC c #dcdedb", +"b7L c #dcdedd", +"byv c #dcdede", +"byq c #dcdedf", +"byu c #dcdfdb", +"eYU c #dcdfde", +"byp c #dcdfe1", +"eYx c #dce0e3", +".rJ c #dce0e6", +"bXq c #dce1dd", +"eVN c #dce1df", +".6N c #dce1e1", +".4B c #dce1e2", +"fFj c #dce1ea", +".6t c #dce2e1", +".Yn c #dce2e2", +"e4H c #dce2e9", +"feL c #dce2ed", +"fhB c #dce2ee", +".1j c #dce3e2", +".oc c #dce3f3", +"#Kq c #dcfb01", +"aI8 c #dcfd19", +"aOO c #dcfd2c", +"ajy c #dd004f", +"bdK c #dd00c2", +"#Wu c #dd00f9", +"aCy c #dd1314", +"a#V c #dd4d21", +"ajU c #dd8d0a", +"fwq c #ddb3b4", +"fzE c #ddbbbd", +"fB4 c #ddbcbd", +"fTv c #ddbcbf", +"fNf c #ddbcc0", +"f5e c #ddbfc3", +"f2l c #ddc0c4", +"f2m c #ddc1c4", +"fVW c #ddc1c6", +"eUl c #ddc2c4", +"fbA c #ddc3b1", +"fHL c #ddc3be", +"btc c #ddc4a9", +"fta c #ddc4c0", +"fEX c #ddc4c1", +"fzV c #ddc5bf", +"ftb c #ddc5c0", +"fwH c #ddc5c1", +"fxn c #ddc6c7", +"caI c #ddc7ab", +"b0T c #ddc7af", +"bP9 c #ddcbb4", +"bT6 c #ddd2be", +"fho c #ddd4d5", +"cl3 c #ddd5db", +"c3A c #ddd8dc", +"gs1 c #ddd9d9", +"c1V c #ddd9da", +"gi7 c #ddd9de", +"g.P c #dddada", +"eS0 c #dddadb", +"bLk c #dddadc", +"geY c #dddade", +"gD5 c #dddbd8", +"gaT c #dddbda", +"go4 c #dddbdc", +"cyj c #dddbdd", +"cyx c #dddbdf", +"cyM c #dddbe0", +"bv0 c #dddbe2", +"gC6 c #dddcd9", +"gI7 c #dddcda", +"elV c #dddcdb", +"bO6 c #dddcdd", +"bLe c #dddcde", +"bg1 c #dddcdf", +"cym c #dddce0", +"eXY c #dddce1", +"g.u c #ddddda", +"bAt c #dddddb", +"bO5 c #dddddc", +"apl c #dddddd", +"b1H c #ddddde", +"#5G c #dddddf", +"aX9 c #dddde0", +"cyC c #dddde1", +"eq2 c #dddde2", +"g.F c #dddedc", +"cCu c #dddede", +"fk7 c #dddedf", +"b1I c #dddee0", +"aMh c #dddee1", +"cwr c #dddfdb", +"eCS c #dddfdd", +"dJS c #dddfdf", +"gJF c #dddfe1", +"dJL c #dde0dd", +"gIN c #dde0de", +"ff# c #dde0df", +"eAZ c #dde0e2", +"eYw c #dde0e3", +"gEa c #dde0e4", +"gJe c #dde1de", +"e16 c #dde1df", +"fh3 c #dde1e0", +"dT. c #dde2df", +".4C c #dde2e2", +".5D c #dde2e3", +"c#G c #dde2e5", +".7M c #dde3e2", +".Zk c #dde3e3", +"e1S c #dde3ee", +"fh0 c #dde5ed", +"d8e c #dde6e7", +"fhO c #dde8f1", +"cgI c #dde9dd", +"boF c #dde9de", +"#QX c #ddfc00", +"ami c #de0000", +"aq7 c #de0813", +"aB9 c #de1b4f", +"#0s c #de4e11", +"#TT c #de5b00", +"ag9 c #de9590", +"aAw c #de969d", +"aDp c #de96a1", +".rC c #deb36d", +"aCg c #debbbe", +"fHt c #debcc1", +"fdn c #debdbf", +"f90 c #debdc3", +"fxo c #debec4", +"eYf c #dec1a6", +"f2k c #dec1c5", +"fEV c #dec2bf", +"fZf c #dec2c7", +"fEW c #dec3bf", +"fNA c #dec3c1", +"fCm c #dec5c0", +"brC c #dec6aa", +"fpV c #dec6c2", +"bSo c #dec8af", +"bP8 c #deceb7", +"bT7 c #ded3bf", +"aCe c #ded3d3", +"aFa c #ded4d4", +"gHv c #ded9da", +"eVd c #ded9db", +"c47 c #ded9dc", +"c7K c #ded9de", +"eCM c #dedbd9", +"dat c #dedbdb", +"c84 c #dedbdc", +"el6 c #dedbdd", +"gc0 c #dedbde", +"cyD c #dedbdf", +"cyB c #dedbe0", +"d.Q c #dedcda", +"dbQ c #dedcdb", +"cyL c #dedcdd", +"cyI c #dedcde", +"aU4 c #dedcdf", +"cyy c #dedce0", +"fN6 c #dedddb", +"de9 c #dedddc", +"b7E c #dedddd", +"cyw c #deddde", +"byr c #dedddf", +"aGy c #dedde0", +"byl c #dedde1", +"gDR c #dedde2", +"g.H c #dededb", +"bT# c #dededc", +"b1C c #dededd", +"#Ac c #dedede", +"bym c #dededf", +"bLb c #dedee0", +"ax2 c #dedee1", +"cl5 c #dedee2", +"cvL c #dedee4", +"g.G c #dedfdc", +"g.N c #dedfdd", +"dJM c #dedfde", +"byC c #dedfdf", +"#vT c #dedfe0", +"fCU c #dedfe1", +"eol c #dedfe2", +"eq1 c #dee0dc", +"dJP c #dee0dd", +"g.K c #dee0de", +"aJl c #dee0df", +"dJT c #dee0e0", +"f3D c #dee0e1", +"fcm c #dee1df", +"gI1 c #dee1e2", +"bEU c #dee1e7", +"e49 c #dee2e0", +"fRL c #dee2e1", +"el3 c #dee2e6", +"fOD c #dee3e1", +".7Z c #dee3e3", +".6J c #dee3e4", +"#.m c #dee4e3", +".5E c #dee4e4", +"eYG c #dee4ec", +".2l c #dee5e4", +"cgM c #dee6dd", +"cgL c #dee6de", +"fe8 c #dee6ed", +"cgS c #dee7dd", +"cgD c #dee9de", +"fZW c #def0f9", +"#WQ c #defc00", +"#yV c #deff00", +"aUR c #df0056", +"a0T c #df0078", +"#Kh c #df00fb", +"#N4 c #df7900", +"ad5 c #df9791", +"e7L c #df9879", +"aGl c #df98a4", +"aa2 c #df9b94", +"feB c #dfa7ae", +"bjw c #dfa9e0", +"fQh c #dfb9bf", +"fbN c #dfbbbf", +"fED c #dfbcbe", +"fs8 c #dfc1bd", +"fwD c #dfc1be", +"fQE c #dfc2c2", +"fwF c #dfc3bf", +"fzU c #dfc3c0", +"fwG c #dfc4c0", +"fKG c #dfc4c1", +"btd c #dfc6aa", +"btf c #dfc7ab", +"d3x c #dfcfd0", +"fey c #dfd4d2", +"eVo c #dfd8db", +"eyE c #dfdbdc", +"eVc c #dfdbdd", +"cyF c #dfdbdf", +"ejk c #dfdcd6", +"gqV c #dfdcdb", +"f0y c #dfdcdc", +"bGR c #dfdcdf", +"g.v c #dfdddb", +"fOF c #dfdddc", +"dhg c #dfdddd", +"bys c #dfdddf", +"cwq c #dfdde7", +"fCS c #dfdeda", +"g.x c #dfdedb", +"g.w c #dfdedc", +"b5t c #dfdede", +"b3J c #dfdedf", +"#KQ c #dfdee0", +"aDy c #dfdee1", +"dJN c #dfdee2", +"cwa c #dfdee4", +"g.I c #dfdfdb", +"g.M c #dfdfdc", +"dJR c #dfdfdd", +"b1D c #dfdfde", +".zW c #dfdfdf", +"bGU c #dfdfe0", +"aHS c #dfdfe1", +"ask c #dfdfe2", +"g.L c #dfe0de", +"g.J c #dfe0df", +"b3G c #dfe0e0", +"bGM c #dfe0e1", +"gIV c #dfe0e2", +"abb c #dfe0e3", +"fIK c #dfe1de", +"gIQ c #dfe1df", +"f0x c #dfe1e1", +"f21 c #dfe1e3", +"b5N c #dfe2de", +"fFS c #dfe2df", +"fuq c #dfe2e0", +"fUB c #dfe2e1", +"fXt c #dfe2e2", +"gu6 c #dfe2e3", +"cH1 c #dfe4e2", +"#.k c #dfe4e4", +".6K c #dfe4e5", +"fk5 c #dfe4e8", +"#.j c #dfe5e4", +".6H c #dfe5e5", +".2k c #dfe6e5", +"cgN c #dfe7dd", +"cgR c #dfe7de", +"cgT c #dfe8dc", +"cgt c #dfe8df", +"cgF c #dfebe0", +"cgG c #dfebe1", +"d5K c #dfedde", +"fZV c #dff2f9", +"#yU c #dff60a", +"a8Y c #e000ff", +"#zH c #e02803", +"aOp c #e029fb", +"alx c #e02c21", +"#9V c #e0a092", +"fhe c #e0a184", +".td c #e0b36b", +".ta c #e0b36c", +".ut c #e0b46d", +".uu c #e0b56f", +".q8 c #e0b673", +"fHJ c #e0c0bd", +"f7M c #e0c0c7", +"f5c c #e0c2c6", +"fwE c #e0c4c0", +"bSn c #e0ceb8", +"d3w c #e0d2d5", +"bWd c #e0d3bd", +"gs2 c #e0d6d6", +"go3 c #e0dadd", +"fXu c #e0dbdc", +"cyA c #e0dbde", +"gAA c #e0dcdb", +"fUD c #e0dcdc", +"go6 c #e0dcdd", +"fLB c #e0dcde", +"cyG c #e0dcdf", +"bv3 c #e0dce0", +"cyH c #e0dce1", +"bv1 c #e0dce2", +"fRN c #e0dddb", +"di8 c #e0dddd", +"eFf c #e0ddde", +"dJQ c #e0dddf", +"dJO c #e0dde0", +"fAr c #e0dde1", +"fCX c #e0dde2", +"cvO c #e0dde3", +"g.y c #e0dedc", +"g.z c #e0dedd", +"c#J c #e0dedf", +"bM4 c #e0dee0", +"amP c #e0dee2", +"cv8 c #e0dee3", +"cl6 c #e0dfdf", +"eSK c #e0dfe0", +"byt c #e0dfe1", +"apn c #e0dfe2", +"#98 c #e0dfe3", +"eXX c #e0dfe5", +"byn c #e0e0de", +"fLi c #e0e0df", +"#T5 c #e0e0e0", +"bQ2 c #e0e0e1", +"aka c #e0e0e2", +"aeh c #e0e0e3", +"bXk c #e0e1df", +"b5U c #e0e1e0", +"eoy c #e0e1e1", +"gDd c #e0e1e3", +"#Oh c #e0e1e4", +"bVp c #e0e1e5", +"b3B c #e0e1e6", +"d1# c #e0e2dd", +"eox c #e0e2e2", +"cjh c #e0e2e4", +"b1V c #e0e3e3", +"ecG c #e0e4e1", +"gDg c #e0e4e6", +".6L c #e0e5e5", +".6M c #e0e5e6", +"e1H c #e0e5eb", +"cgQ c #e0e6de", +"#.i c #e0e6e5", +".6I c #e0e6e6", +"fck c #e0e7ec", +"cgP c #e0e8de", +"cgO c #e0e8df", +"feW c #e0e9f3", +"cgC c #e0eade", +"#TK c #e0fe00", +"ajz c #e10041", +"aRP c #e1145c", +"#WZ c #e15d11", +"aJe c #e199a8", +"bjx c #e1a9e4", +"fbO c #e1b0b7", +".tb c #e1b771", +"f.X c #e1b9be", +".qr c #e1ba7c", +"eYe c #e1c1a5", +"dYw c #e1c1c2", +"fET c #e1c2c1", +"fzS c #e1c3c2", +"f2j c #e1c3c8", +"eYc c #e1c4b2", +"fzT c #e1c4c2", +"fCl c #e1c5c2", +"dVV c #e1c9c9", +"bSl c #e1cfbc", +"eYb c #e1cfc9", +"e1y c #e1d6d1", +"cyE c #e1dbdf", +"dmG c #e1dcdc", +"cvN c #e1dce1", +"dsh c #e1dce2", +"dkQ c #e1dddd", +"fhC c #e1ddde", +"bv2 c #e1dddf", +"fIM c #e1dde0", +"dzO c #e1dde2", +"cvY c #e1dedf", +"cvM c #e1dee1", +"cwb c #e1dee2", +"cwl c #e1dee3", +"cwd c #e1dee4", +"egW c #e1dfdd", +"cwh c #e1dfdf", +"bXo c #e1dfe0", +"cwi c #e1dfe1", +"d8c c #e1dfe2", +"cwm c #e1dfe4", +"cwn c #e1dfe6", +"gD. c #e1e0dd", +"bXn c #e1e0df", +"bM0 c #e1e0e1", +"bvZ c #e1e0e2", +"#KU c #e1e0e3", +"fFx c #e1e0e4", +"dMg c #e1e1df", +"ecE c #e1e1e0", +"aeg c #e1e1e1", +"bAr c #e1e1e2", +"#60 c #e1e1e3", +"#Ag c #e1e1e4", +"bqP c #e1e2df", +"ecF c #e1e2e1", +"eow c #e1e2e2", +"eyD c #e1e3de", +"gJm c #e1e3e1", +"gIU c #e1e3e2", +"gJl c #e1e3e5", +"fxl c #e1e3e6", +"eYv c #e1e3ea", +"gC5 c #e1e4e0", +"gEi c #e1e4e3", +"gJd c #e1e4e4", +"gEr c #e1e4e5", +".72 c #e1e6e6", +".9p c #e1e6e7", +"e8l c #e1e6e9", +"f#u c #e1e6ea", +".3g c #e1e7e7", +"fFi c #e1e7ee", +"cgu c #e1e8df", +"cgB c #e1e8e0", +"cgs c #e1e8e1", +"cgr c #e1eae0", +"a0J c #e1fc4f", +"a6D c #e1ff6d", +"ao5 c #e20000", +"aq6 c #e2000a", +"#Tr c #e200f5", +"#QH c #e200fc", +"a8V c #e216e6", +"aNP c #e21a89", +"bgK c #e21ad3", +"alw c #e22c23", +"fnx c #e28f6d", +"d1. c #e2a1a6", +"e1s c #e2b384", +".sb c #e2b874", +"f.W c #e2c3c5", +"fEU c #e2c4c1", +"fCk c #e2c4c2", +"fKF c #e2c5c3", +"fNz c #e2c5c4", +"brB c #e2caae", +"f.J c #e2cebe", +"bSm c #e2d1bc", +"e7C c #e2d3c9", +"fbL c #e2d5d3", +"eYm c #e2dcda", +"doi c #e2ddde", +"dqh c #e2dde0", +"dDJ c #e2dde1", +"duh c #e2dde2", +"cv9 c #e2dde5", +"cv7 c #e2dee0", +"cwg c #e2dee1", +"cwk c #e2dee5", +"cv6 c #e2dfdf", +"cvP c #e2dfe1", +"eJ5 c #e2dfe3", +"cv3 c #e2e0df", +"cv4 c #e2e0e0", +"cv1 c #e2e0e1", +"fCW c #e2e0e5", +"eyv c #e2e1de", +"dOF c #e2e1e0", +"byo c #e2e1e1", +"eCZ c #e2e1e2", +"fUp c #e2e1e3", +"#Hg c #e2e1e4", +"fKY c #e2e1e5", +"eXW c #e2e1e6", +"bjo c #e2e1eb", +"gCY c #e2e2df", +"cUV c #e2e2e0", +"bMZ c #e2e2e1", +"#vU c #e2e2e2", +"bwc c #e2e2e3", +"aKG c #e2e2e4", +"#v2 c #e2e2e5", +"cwt c #e2e2e6", +"b3w c #e2e3e0", +"fCV c #e2e3e2", +"b5I c #e2e3e3", +"bCy c #e2e3e4", +"bAv c #e2e3e5", +"eVM c #e2e3e6", +"eq5 c #e2e4e3", +"eon c #e2e4e5", +"ety c #e2e4e6", +"e45 c #e2e4e8", +".33 c #e2e5e7", +"fCR c #e2e5e8", +"cJC c #e2e6e2", +"b1P c #e2e6e6", +"cgE c #e2e7de", +".4m c #e2e7e7", +".71 c #e2e7e8", +"dQM c #e2e8e2", +".5s c #e2e8e7", +".73 c #e2e8e8", +"ctU c #e2e8e9", +"cgw c #e2e9df", +"cgv c #e2e9e0", +"cgA c #e2e9e1", +"cgH c #e2eae1", +"arU c #e30001", +"auN c #e3001e", +"baT c #e300b2", +"a3u c #e359fe", +"a6u c #e370fe", +"few c #e39371", +"aj1 c #e39593", +"fnA c #e39a72", +"#6P c #e3a58f", +"#zV c #e3b500", +".se c #e3b872", +".rz c #e3bb79", +".qs c #e3be7e", +"eYd c #e3c0a6", +"fZe c #e3c3ca", +"fHK c #e3c5c2", +"fWh c #e3c5c9", +"bte c #e3cbaf", +"bWc c #e3d6c2", +"dv8 c #e3dce1", +"cwj c #e3dde3", +"cwe c #e3dde6", +"dHE c #e3dee1", +"cwc c #e3dee2", +"cwf c #e3dee3", +"cw. c #e3dee4", +"cwo c #e3dfe4", +"cv5 c #e3e0df", +"cv2 c #e3e0e0", +"cvZ c #e3e0e1", +"cv0 c #e3e0e2", +"eMl c #e3e0e4", +"gGU c #e3e1dc", +"gCM c #e3e1df", +"ev3 c #e3e1e0", +"fb9 c #e3e1e1", +"eq7 c #e3e1e2", +"fC2 c #e3e1e3", +".sA c #e3e1e5", +"b7H c #e3e2e2", +"b9p c #e3e2e3", +"bXl c #e3e2e4", +"d8b c #e3e2e5", +"fCL c #e3e2e6", +"bO3 c #e3e3e1", +"bm0 c #e3e3e2", +"#vW c #e3e3e3", +"bVC c #e3e3e4", +"bt4 c #e3e3e5", +"e7m c #e3e3e6", +"dVP c #e3e3ea", +"eqZ c #e3e4e1", +"bXm c #e3e4e2", +"gIY c #e3e4e3", +".uV c #e3e4e4", +"c#B c #e3e4e5", +"eAJ c #e3e4e6", +"e.C c #e3e4e7", +"eoo c #e3e5e3", +"d3C c #e3e5e4", +"gld c #e3e5e5", +"etB c #e3e5e6", +"eov c #e3e5e7", +"gzY c #e3e6e4", +"ctV c #e3e6e7", +"fFh c #e3e6ea", +"fxy c #e3e6ed", +"gzZ c #e3e7e5", +"fCQ c #e3e7e7", +".70 c #e3e8e8", +"cgy c #e3e9e0", +"cgz c #e3e9e1", +".7P c #e3e9e8", +".9# c #e3e9e9", +"cgx c #e3eae0", +"fc. c #e3eaf4", +"d5A c #e3efe1", +"aGd c #e3fc16", +"#Ki c #e400fa", +"#9p c #e400fd", +"aIq c #e40a0c", +"avd c #e49599", +"aFh c #e49c9b", +"#3Q c #e4aa8e", +"bjy c #e4abe6", +"e7D c #e4ba96", +"e7P c #e4c1c6", +"bYf c #e4d5bd", +"e4l c #e4dbd7", +"cw# c #e4dde3", +"cwp c #e4dee3", +"gE2 c #e4e0d9", +"dYD c #e4e0dd", +"eYa c #e4e0df", +"dJU c #e4e0e3", +"eos c #e4e1dd", +"dYH c #e4e1e0", +"dTp c #e4e1e1", +"d5R c #e4e1e5", +"bCn c #e4e2e1", +"bCN c #e4e2e3", +"gEb c #e4e3e0", +"eou c #e4e3e1", +"eaN c #e4e3e2", +"eq6 c #e4e3e3", +"bXr c #e4e3e4", +"fbj c #e4e3e5", +"eoq c #e4e3e6", +"fLw c #e4e3e7", +"cyk c #e4e3e9", +"eop c #e4e4e2", +"bEt c #e4e4e3", +"ak# c #e4e4e4", +"bQ1 c #e4e4e5", +"b7t c #e4e4e6", +"cyl c #e4e4e7", +"gzS c #e4e4e8", +"d0X c #e4e5dc", +"bir c #e4e5e3", +"cTv c #e4e5e4", +"etD c #e4e5e5", +"fRH c #e4e5e6", +"etu c #e4e5e7", +"gzU c #e4e5e8", +"ets c #e4e6e4", +"#DL c #e4e6e5", +"etv c #e4e6e6", +"dMf c #e4e6e7", +"etz c #e4e6e8", +"eFu c #e4e6e9", +"b7C c #e4e6ea", +"eYF c #e4e6eb", +"gne c #e4e7e5", +"bt6 c #e4e7e6", +"gzQ c #e4e7e8", +"gIZ c #e4e7ea", +"bTk c #e4e7ed", +"dYc c #e4e8e3", +"f6# c #e4e8e7", +"gIP c #e4e8ea", +"dQL c #e4e9e4", +".9s c #e4e9e9", +".9r c #e4e9ea", +"eFj c #e4e9eb", +".9e c #e4eae9", +"#.D c #e4eaea", +"d0D c #e4eee5", +"d5E c #e4f2de", +"#9N c #e4ff00", +"a6Q c #e50095", +"#NG c #e500fb", +"aFx c #e50603", +"aRj c #e536f8", +"a0s c #e551fc", +"#5O c #e56817", +"aFm c #e56e6c", +"a6v c #e574fe", +"aFl c #e57776", +"aFi c #e59391", +"aFg c #e5a6a5", +"#Dx c #e5a700", +"e4t c #e5a87c", +"#0t c #e5ad8e", +".tc c #e5bb74", +".sc c #e5bc77", +".rA c #e5bd7a", +"dYs c #e5e0e1", +"eaJ c #e5e1e5", +"gDe c #e5e2de", +"d8h c #e5e2e3", +"bEX c #e5e2e4", +"eYE c #e5e2e5", +"erb c #e5e2e6", +"eor c #e5e3e1", +"e.G c #e5e3e2", +"eot c #e5e3e3", +"f.8 c #e5e3e5", +"gI0 c #e5e3e6", +"ejJ c #e5e3e7", +"gCO c #e5e4e0", +"gJi c #e5e4e2", +"bjQ c #e5e4e4", +"bHa c #e5e4e5", +"b3t c #e5e4e6", +"crx c #e5e4e7", +"cdX c #e5e4e8", +"gxe c #e5e5dd", +"dV0 c #e5e5e2", +"gl# c #e5e5e3", +"etr c #e5e5e4", +"#vX c #e5e5e5", +"bEV c #e5e5e6", +"bMX c #e5e5e7", +"cbN c #e5e5e8", +"gzT c #e5e5e9", +"gC2 c #e5e6e4", +"eoz c #e5e6e5", +"etw c #e5e6e6", +"etA c #e5e6e7", +"eYQ c #e5e6e8", +"eHP c #e5e6e9", +"eMp c #e5e6ea", +"dTl c #e5e7e5", +"dMa c #e5e7e6", +"ett c #e5e7e7", +"bwi c #e5e7e8", +"gzR c #e5e7e9", +"gg3 c #e5e8e5", +"gi6 c #e5e8e6", +"gaR c #e5e8e7", +"gDB c #e5e9e5", +"eS5 c #e5e9e7", +".9q c #e5eaeb", +"dVA c #e5ebe5", +".9a c #e5ebea", +"dS6 c #e5eee4", +"#NT c #e5fc00", +"aRG c #e5fd36", +"a6C c #e5ff73", +"amj c #e60000", +"ajA c #e60031", +"a9U c #e600a3", +"aFw c #e61010", +"#Di c #e63204", +"aFs c #e63532", +"aFq c #e64948", +"aFp c #e65251", +"aFn c #e66562", +"au8 c #e66608", +"aFk c #e6817f", +"aFj c #e68a87", +"aL5 c #e69baf", +".q9 c #e6c081", +"e4m c #e6c2a8", +"f.K c #e6c49a", +"dVW c #e6c8c9", +"e7O c #e6cbcd", +"d3z c #e6cdd0", +"d3y c #e6cfd2", +"e1m c #e6d6c9", +"f.U c #e6dcdb", +"e7N c #e6e1e1", +"d3G c #e6e2e3", +"gI9 c #e6e3e3", +"cvV c #e6e3e4", +"bRi c #e6e3e5", +"gzW c #e6e3e6", +"ehc c #e6e3e7", +"bVv c #e6e4e4", +"gz0 c #e6e4e5", +"gzV c #e6e4e6", +"gzX c #e6e4e7", +"bZG c #e6e4e8", +"gnb c #e6e5e2", +"gna c #e6e5e3", +"b3K c #e6e5e4", +"b5P c #e6e5e5", +"eom c #e6e5e6", +"b1A c #e6e5e7", +"aQC c #e6e5e8", +"cgo c #e6e5e9", +"eD. c #e6e5ea", +"bO0 c #e6e6e4", +"bJb c #e6e6e5", +"#DQ c #e6e6e6", +"bwn c #e6e6e7", +"bwl c #e6e6e8", +"bwh c #e6e6e9", +"bwq c #e6e7e5", +"bZz c #e6e7e6", +"bwj c #e6e7e7", +"dL9 c #e6e7e8", +"bAB c #e6e7e9", +"eJ8 c #e6e7ea", +"fCK c #e6e7eb", +"byx c #e6e8e6", +"bwm c #e6e8e8", +"dMe c #e6e8ea", +"geX c #e6e9e6", +"fcq c #e6e9e7", +"gzK c #e6e9e9", +"gJ. c #e6e9ea", +"eoA c #e6eae7", +"cAQ c #e6eae8", +"g.O c #e6eae9", +"bJl c #e6eaea", +"eJ3 c #e6ebe7", +"gED c #e6ebea", +"#.r c #e6ebeb", +"#.n c #e6eceb", +"#.C c #e6ecec", +"fWU c #e6faff", +"#Kp c #e6fd00", +"a3I c #e6fd5d", +"aX1 c #e70064", +"#Kj c #e700ff", +"a5V c #e709ec", +"azg c #e7123d", +"aFO c #e719fa", +"aFt c #e72c29", +"aFr c #e73f3e", +"a3v c #e761fe", +"aOX c #e799b5", +"fkm c #e79d78", +"dYC c #e7aaac", +"aFf c #e7afb0", +"e4x c #e7cacc", +"d3A c #e7d0d0", +"dVU c #e7d6d5", +"baF c #e7dcc8", +"cvQ c #e7e2e5", +"em. c #e7e3e8", +"b1N c #e7e4e2", +"gJa c #e7e4e3", +"gnc c #e7e4e5", +"b5T c #e7e4e7", +"eA2 c #e7e4e9", +"gC8 c #e7e5e5", +"b5O c #e7e5e6", +"e8o c #e7e5e8", +"dMd c #e7e5e9", +"dL8 c #e7e5ea", +"gn. c #e7e6e4", +"glc c #e7e6e5", +"dMb c #e7e6e6", +"ctW c #e7e6e7", +"bwk c #e7e6e8", +"aHU c #e7e6e9", +"etC c #e7e7e4", +"bwf c #e7e7e5", +"bVi c #e7e7e6", +"#DP c #e7e7e7", +"bXA c #e7e7e8", +"bwe c #e7e7e9", +"eyh c #e7e7ea", +"bwd c #e7e7eb", +"gIT c #e7e8e4", +"gla c #e7e8e7", +"bZC c #e7e8e8", +"#z9 c #e7e8e9", +"ev0 c #e7e8ea", +"bcy c #e7e8eb", +"cLg c #e7e9e4", +"dM. c #e7e9e5", +"cAJ c #e7e9e6", +"fZZ c #e7e9e7", +"bZB c #e7e9e8", +"cAO c #e7e9e9", +"bAA c #e7e9ea", +"eYS c #e7e9eb", +"dYr c #e7e9ed", +"bZF c #e7eae7", +"gIS c #e7eae8", +"gA0 c #e7eae9", +"gvb c #e7eaea", +"bVs c #e7eaef", +"gJn c #e7ebe6", +"gGn c #e7ecec", +"d5z c #e7ede7", +"dX9 c #e7ede9", +"gJk c #e7edea", +"#.o c #e7edec", +"eFk c #e7edf2", +"d5H c #e7eee7", +"#3I c #e7fe00", +"auO c #e80016", +"#Df c #e80033", +"bdL c #e800c4", +"auP c #e8020e", +"aUS c #e81569", +"acW c #e83a12", +"aFo c #e85c5a", +"#Q7 c #e86800", +"asc c #e89598", +"aRQ c #e898ba", +"bdS c #e89bd2", +"bjz c #e8abe7", +"aFe c #e8b8b8", +"feo c #e8ba95", +"e1n c #e8c6ad", +"dVX c #e8c9c9", +"aFc c #e8caca", +"dVY c #e8cfcc", +"gAE c #e8e3e3", +"gDq c #e8e4de", +"ecH c #e8e4e6", +"eyI c #e8e4e8", +"eQR c #e8e4e9", +"gAG c #e8e5e4", +"cvX c #e8e5e5", +"cvU c #e8e5e6", +"dM# c #e8e5e8", +"bsj c #e8e5ea", +"gsR c #e8e6e4", +"glb c #e8e6e5", +"gAJ c #e8e6e6", +"dMc c #e8e6e7", +"bwo c #e8e6e8", +"bwp c #e8e6e9", +"aKJ c #e8e6ea", +"eFi c #e8e7e2", +"bwg c #e8e7e6", +"dL7 c #e8e7e7", +"bZD c #e8e7e8", +"gCZ c #e8e7e9", +"aWX c #e8e7ea", +"gIW c #e8e7eb", +"bCz c #e8e8e3", +"e1l c #e8e8e5", +"cAR c #e8e8e6", +"dL6 c #e8e8e7", +"#0I c #e8e8e8", +"b#O c #e8e8e9", +"aZP c #e8e8ea", +"eYT c #e8e8eb", +"etx c #e8e8ec", +"gC9 c #e8e9e6", +"gnd c #e8e9e7", +"bZA c #e8e9e8", +"cAK c #e8e9e9", +"cAN c #e8e9ea", +".Dp c #e8e9eb", +"gI2 c #e8eae6", +"b3A c #e8eaea", +"fnt c #e8eaeb", +"fAv c #e8eaee", +"cdZ c #e8ebe9", +"e15 c #e8ebea", +"gxr c #e8ebeb", +"gaQ c #e8ebec", +"eaI c #e8ece9", +"gle c #e8ecea", +"gCQ c #e8eced", +"f#i c #e8ecf5", +"f3H c #e8edea", +"f0B c #e8edec", +"bgT c #e8f0ef", +"gBm c #e8f1ef", +"aXR c #e8fc45", +"fWV c #e8fdff", +"aFv c #e9191d", +"aFu c #e92122", +"aXy c #e949fd", +"ape c #e99597", +"#G2 c #e99600", +"a3X c #e99dca", +"a6U c #e99ecb", +"bgS c #e9a2d7", +"#W0 c #e9b28e", +".sd c #e9bf7b", +".rB c #e9c280", +".r. c #e9c484", +"e4w c #e9d3d5", +"gAH c #e9e4e5", +"b1O c #e9e4e7", +"eS9 c #e9e4ea", +"fFn c #e9e5ea", +"gAI c #e9e6e5", +"cvW c #e9e6e7", +"bZE c #e9e6e8", +"gIE c #e9e6ea", +"gu0 c #e9e7e4", +"gAL c #e9e7e7", +"gII c #e9e7e8", +"gCR c #e9e8e6", +"cjj c #e9e8e7", +"cAP c #e9e8e8", +"bAz c #e9e8e9", +"eqY c #e9e8ea", +"cAL c #e9e8eb", +"gDX c #e9e9e3", +"bVB c #e9e9e8", +"#yI c #e9e9e9", +"b1Q c #e9e9ea", +"bRl c #e9e9eb", +"aHR c #e9e9ec", +"fxV c #e9e9ed", +"fAp c #e9eae8", +"bwr c #e9eae9", +"bCm c #e9eaea", +"bAw c #e9eaeb", +"ff. c #e9eaec", +"fFX c #e9eaed", +"ctf c #e9ebe4", +"dVQ c #e9ebe6", +"eY# c #e9ebe7", +"gGF c #e9ebe8", +"bqB c #e9ebe9", +"byd c #e9ebea", +"byc c #e9ebeb", +"gIJ c #e9ebed", +"dS7 c #e9ece8", +"dQP c #e9ece9", +"#T2 c #e9ecec", +"dVD c #e9eee5", +"d3# c #e9eee9", +"d02 c #e9eeea", +"d8. c #e9eeee", +"#.p c #e9efed", +"gBj c #e9efef", +"gBk c #e9f0ef", +"gBl c #e9f1ef", +"gBi c #e9f1f0", +"bgU c #e9f2ec", +"a0Y c #e9f2f1", +"aX5 c #e9f3ef", +"aJg c #e9f4f2", +"aGn c #e9f5f1", +"ao6 c #ea0000", +"aC# c #ea1254", +"a#X c #ea4b11", +"#TU c #ea6a12", +"#Zo c #ea8611", +"amB c #ea9496", +"baZ c #ea9ece", +"aFd c #eac1c1", +"e1o c #eac29f", +"aFb c #ead7d7", +"gAF c #eae3e5", +"gn# c #eae4e8", +"eYX c #eae4ea", +"eVR c #eae5ea", +"b1M c #eae6e8", +"cvR c #eae6e9", +"gIK c #eae7e6", +"fh8 c #eae7eb", +"blE c #eae7ec", +"eFe c #eae8e8", +"gIR c #eae8e9", +"ew. c #eae8ea", +"cte c #eae8eb", +"bu. c #eae8ec", +"dYv c #eae9e6", +"e4I c #eae9e7", +"bJn c #eae9e9", +"bJk c #eae9ea", +"fhc c #eae9eb", +"cb5 c #eae9ec", +"bQ3 c #eaeae8", +"bye c #eaeae9", +"#DO c #eaeaea", +"cAM c #eaeaeb", +"f5H c #eaeaec", +"cd0 c #eaeaed", +"eFg c #eaeaee", +"bEF c #eaebe8", +"aX8 c #eaebea", +"b5G c #eaebeb", +"gBp c #eaebec", +"gIO c #eaece9", +"foe c #eaecea", +"gA6 c #eaeceb", +"gBE c #eaecec", +"dYl c #eaeced", +"gaP c #eaecee", +"bR# c #eaecef", +"cTs c #eaecf0", +"cHS c #eaedea", +"gJb c #eaedeb", +"gBq c #eaedec", +"#KP c #eaeded", +"dQR c #eaedee", +"e8# c #eaedf4", +"c49 c #eaeeea", +"dFz c #eaeeeb", +"bqE c #eaeeed", +"gCk c #eaeeee", +"cNU c #eaeeef", +"e4T c #eaeef2", +"d77 c #eaefea", +"bAD c #eaefef", +"gaN c #eaeff0", +"gBg c #eaeff1", +"gBh c #eaf0f1", +"aJf c #eaf1ec", +"aGm c #eaf1ed", +"a3Y c #eaf1f0", +"a3Z c #eaf1f1", +"#DE c #eaf1f3", +"#G8 c #eaf1f4", +"a6W c #eaf2f0", +"aUV c #eaf3ef", +"a90 c #eaf3f0", +"#0v c #eaf3f3", +"aDr c #eaf4ef", +"#3S c #eaf5f5", +"aaU c #eafd00", +"aax c #eb00fb", +"asb c #eb1416", +"aLx c #eb26fc", +"#SM c #eb930e", +"aUT c #eb9abf", +"a0W c #eb9cc7", +"bjA c #ebabe8", +".r# c #ebc687", +"fbB c #ebcaa0", +"ftQ c #ebe1e2", +"fkw c #ebe6e7", +"clr c #ebe6ec", +"eyu c #ebe8e8", +"fem c #ebe8e9", +"fre c #ebe8eb", +"d5N c #ebe9e8", +"go5 c #ebe9ea", +"by# c #ebe9eb", +"foi c #ebe9ec", +"fuv c #ebe9ed", +".tK c #ebeae8", +"bAs c #ebeae9", +"fw4 c #ebeaea", +"bJj c #ebeaeb", +"byi c #ebeaec", +"cd1 c #ebeaed", +"fC4 c #ebeaee", +"ce. c #ebeaef", +"byg c #ebebe8", +"b3F c #ebebe9", +"b1X c #ebebea", +"#Hf c #ebebeb", +"aRX c #ebebec", +"cjo c #ebebed", +"bAy c #ebebee", +"gCX c #ebece8", +"c#F c #ebece9", +"b3x c #ebecea", +"bO7 c #ebeceb", +"byb c #ebecec", +"bmx c #ebeced", +"#PW c #ebecee", +"b3C c #ebecef", +"gKi c #ebecf1", +"gIm c #ebedea", +"bVt c #ebedeb", +"dui c #ebedec", +"boY c #ebeded", +"dhi c #ebedee", +"bmT c #ebedef", +"d0Q c #ebedf0", +"eFh c #ebedf1", +"d0I c #ebeee9", +"d3c c #ebeeea", +"cF5 c #ebeeeb", +"#0u c #ebeeec", +"bss c #ebeeed", +"di9 c #ebeeef", +"ejD c #ebeef0", +"dOs c #ebefeb", +"bqD c #ebefed", +"bsv c #ebefee", +"byy c #ebefef", +"bjK c #ebeff0", +"gBf c #ebeff1", +"eOw c #ebf0ed", +"a0X c #ebf0ef", +"gGD c #ebf0f3", +"ba1 c #ebf1ef", +"#R# c #ebf1f3", +"#KI c #ebf1f4", +"a6B c #ebf285", +"#W1 c #ebf2f1", +"ah# c #ebf4f4", +"aj3 c #ebf5f4", +"asd c #ebf6f2", +"amk c #ec0000", +"ajB c #ec0022", +"a3U c #ec008c", +"#Kk c #ec00cf", +"amA c #ec1416", +"bgR c #ec2aae", +"#GM c #ec3003", +"#5M c #ec5f10", +"a6w c #ec86f0", +"#KD c #ec8900", +"ajT c #ec8d0c", +"aX3 c #ec9bc3", +"a9Z c #ec9ece", +"f.S c #eca480", +"e1x c #ecd5d6", +"#FY c #ecd615", +"eYl c #ecdcde", +"cjg c #ece1e7", +"fqB c #ece2e2", +"fxm c #ece6e6", +"cvS c #ece6ea", +"dVS c #ece7e7", +"cvT c #ece8e8", +"fLD c #ece8ee", +"fT7 c #ece9ea", +"gA4 c #ece9ec", +"cd2 c #ece9ee", +"gJ# c #eceaea", +"gA5 c #eceaeb", +"g.R c #eceaec", +"ce# c #eceaed", +"fXy c #eceaee", +"byh c #ecebe8", +"gIb c #ecebe9", +"gBs c #ecebea", +"cek c #ecebeb", +"byf c #ecebec", +"aE1 c #ecebed", +"ceg c #ecebee", +"gE1 c #ecebef", +"cd9 c #ecebf0", +"dQO c #ecece9", +"eaH c #ececea", +".wc c #ececeb", +"#Og c #ececec", +"atV c #ececed", +"#yF c #ececee", +"bRm c #ececef", +"cef c #ececf0", +"gJo c #ecede8", +"fCP c #ecede9", +"bsr c #ecedeb", +"#yJ c #ecedec", +"#T4 c #eceded", +"#VK c #ecedee", +"eCL c #ecedef", +"d03 c #ecedf0", +"gJ0 c #ecedf2", +"#N8 c #eceee9", +"dqi c #eceeea", +"c7M c #eceeeb", +"c#E c #eceeec", +"dOx c #eceeed", +"b3E c #eceeee", +"df# c #eceeef", +"el4 c #eceef0", +"gaM c #eceef1", +"eFl c #eceef2", +"dQI c #ecefe7", +"gGp c #ecefea", +"gEE c #ecefeb", +"dOt c #ecefec", +"bjJ c #ecefed", +"d3u c #ecefee", +"bub c #ecefef", +"dkR c #eceff0", +"gxu c #eceff1", +"#3R c #ecf0ec", +"aX4 c #ecf0ee", +"gJ8 c #ecf0ef", +"gJJ c #ecf0f0", +"gB. c #ecf0f1", +"gKe c #ecf1eb", +"cgX c #ecf1ed", +"gBe c #ecf1ee", +"a6V c #ecf1f0", +"e7B c #ecf1f3", +"#N9 c #ecf1f4", +"#z3 c #ecf1f5", +"apf c #ecf3f0", +"aRS c #ecf3f1", +"aOZ c #ecf4f2", +"aL7 c #ecf4f4", +"avf c #ecf5f1", +"bmK c #ecf7f1", +"bmN c #ecf9f0", +"aDh c #ecfc12", +"#Cw c #ecff00", +"arV c #ed0000", +"auR c #ed1416", +"aX2 c #ed1675", +"aUn c #ed3dfc", +"au7 c #ed6308", +"bjE c #edaae2", +"bjD c #edaae4", +"bjB c #edaae8", +"fkr c #edae87", +"#TV c #edb78d", +"d50 c #eddee7", +"bdv c #ede1ea", +"#Jz c #ede210", +"eoB c #ede8eb", +"boy c #ede8ee", +"fbz c #ede9ea", +"gCu c #ede9ec", +"fOJ c #ede9ef", +"gH2 c #edeae4", +"bya c #edeaea", +"cec c #edeaeb", +"cea c #edeaec", +"bdY c #edeaed", +"cd3 c #edeaee", +"cd7 c #edeaf0", +"b5H c #edebeb", +"cvK c #edebec", +"aAE c #edebed", +"cd4 c #edebee", +"cd5 c #edebef", +"cd8 c #edebf0", +"fCO c #edece4", +"b5J c #edece8", +"gB9 c #edece9", +"etF c #edecea", +"cN3 c #edeceb", +"b3D c #edecec", +"aAF c #edeced", +"bqG c #edecee", +"bAx c #edecef", +"cd6 c #edecf0", +"gI8 c #edecf1", +"ev9 c #ededea", +"#KH c #ededeb", +"bmS c #ededec", +"#yG c #ededed", +"#Ck c #ededee", +"bqI c #ededef", +"cb6 c #ededf0", +"gaO c #ededf2", +"fAi c #edeee9", +"#TW c #edeeea", +"cH2 c #edeeec", +"afS c #edeeed", +"boI c #edeeee", +"cji c #edeeef", +"aDq c #edeef0", +"gBb c #edeef1", +"gzP c #edeef3", +"bmv c #edefe9", +"gID c #edefeb", +"ah. c #edefec", +"#6Q c #edefed", +"boK c #edefee", +".wa c #edefef", +"aOY c #edeff0", +"cMw c #edeff1", +"gGo c #edeff3", +"gJG c #edf0eb", +"aj2 c #edf0ed", +"boW c #edf0ee", +"aUU c #edf0ef", +"gKg c #edf0f0", +"gB# c #edf0f1", +"gA9 c #edf0f2", +"dQH c #edf1ee", +"gBd c #edf1ef", +"f8q c #edf1f1", +"e4k c #edf1f5", +"aL6 c #edf2ef", +"axV c #edf2f0", +"gJ2 c #edf3ef", +"aa3 c #edf4f0", +"#9X c #edf4f2", +"#6R c #edf4f4", +"bmL c #edf8f2", +"bmM c #edf9f1", +"a3H c #edfc66", +"aLW c #edfd26", +"#Ko c #edff02", +"arW c #ee0101", +"agD c #ee01f3", +"amu c #ee0505", +"auQ c #ee0509", +"aTR c #ee0a9b", +"aCS c #ee0ffc", +"bgL c #ee1ad3", +"a3w c #ee67fd", +"ajS c #ee8207", +"fbJ c #eea57e", +"fny c #eea87e", +"bjC c #eea9e7", +"bjF c #eeaae0", +"fhl c #eeb38b", +"#Q9 c #eebb8d", +"#Kn c #eebe06", +"e1r c #eecb99", +"e1p c #eecca3", +"bjI c #eed5e5", +"e1w c #eedcdf", +"eYk c #eee1e4", +"d3v c #eee4e4", +"fnF c #eee5e6", +"fhp c #eee7e8", +"coe c #eee8ef", +"gG# c #eee9e3", +"fUH c #eee9ef", +"bqu c #eee9f0", +"ceb c #eeeaed", +"ev2 c #eeebeb", +"a6X c #eeebec", +"gA3 c #eeebed", +"bmw c #eeebef", +"gI4 c #eeece9", +"gCP c #eeecea", +"#G7 c #eeeceb", +"boX c #eeecec", +"bo0 c #eeeced", +"aUX c #eeecee", +"bqF c #eeecef", +"cb8 c #eeecf0", +"aAA c #eeecf1", +"e.z c #eeedeb", +"cOd c #eeedec", +"aRT c #eeeded", +"#KR c #eeedee", +"aGo c #eeedef", +"bJm c #eeedf0", +"fAo c #eeedf1", +"#R. c #eeeeeb", +"c#D c #eeeeec", +"#Ae c #eeeeed", +".xU c #eeeeee", +"#6Z c #eeeeef", +"bMY c #eeeef0", +"aRR c #eeeef1", +"d5M c #eeeef2", +"gCS c #eeefeb", +"bu# c #eeefec", +"boL c #eeefed", +"boM c #eeefee", +"aiN c #eeefef", +"boJ c #eeeff0", +"gBa c #eeeff1", +"gC# c #eeeff3", +"gK# c #eeeff4", +"gDp c #eef0ec", +"boP c #eef0ed", +"bdT c #eef0ee", +"boO c #eef0ef", +"boN c #eef0f0", +"cQ6 c #eef0f1", +"gA8 c #eef0f2", +"gBc c #eef1ee", +"c#C c #eef1ef", +"aGt c #eef1f0", +"dTf c #eef1f1", +"fCJ c #eef1f3", +"gJj c #eef2ef", +"gI3 c #eef2f0", +"f0C c #eef2f2", +"gJP c #eef3f2", +"ad7 c #eef3f3", +"amD c #eef4f3", +"bmO c #eef8ee", +"bmJ c #eef8f0", +"aUI c #eefa3d", +"dTk c #eefaf9", +"a0I c #eefd55", +"ao7 c #ef0000", +"ajC c #ef0016", +"#QI c #ef00fb", +"amt c #ef0805", +"a5S c #ef08e3", +"aW4 c #ef09bc", +"aHZ c #ef0b62", +"a0V c #ef1780", +"#N5 c #ef7800", +"bjG c #efa7de", +"bjH c #efaddd", +"fnz c #efb386", +"#N7 c #efbe8a", +"#DC c #efc88e", +"bgv c #efe3ee", +"fez c #efe8e7", +"gIH c #efe8ea", +"fbM c #efe9e9", +"gI5 c #efe9ea", +"ced c #efe9ef", +"cee c #efeaef", +"bjl c #efebe8", +"aDs c #efebf1", +"dOA c #efebf5", +"#z2 c #efece9", +"#DD c #efecea", +"cLi c #efecec", +"bqK c #efeced", +"eJ4 c #efecee", +"bwt c #efecef", +"fCN c #efecf0", +"gB5 c #efede9", +"gDc c #efedec", +"a92 c #efeded", +"ave c #efedee", +"axZ c #efedef", +"bqJ c #efedf0", +"gH1 c #efedf1", +"ad9 c #efedf2", +"dS8 c #efeeeb", +"eeR c #efeeec", +"bgV c #efeeed", +"#9W c #efeeee", +"#KK c #efeeef", +"bsu c #efeef0", +"cb7 c #efeef1", +"avg c #efeef2", +"gGE c #efefeb", +"aO0 c #efefec", +"boV c #efefed", +"#vZ c #efefee", +"#v0 c #efefef", +"#2D c #efeff0", +"aq0 c #efeff1", +"ew# c #efeff2", +"gqU c #efeff3", +"f8i c #eff0eb", +"gJs c #eff0ec", +"boT c #eff0ed", +"ba0 c #eff0ee", +"alr c #eff0ef", +"bst c #eff0f0", +".mN c #eff0f1", +"gA7 c #eff0f2", +"eyz c #eff0f3", +"boU c #eff1ee", +"eOv c #eff1ef", +"ax1 c #eff1f0", +"eJ9 c #eff1f1", +"f3I c #eff1f3", +"eCX c #eff1f5", +"gJQ c #eff2ec", +"gJ7 c #eff2ee", +"aAy c #eff2ef", +"gc4 c #eff2f0", +"gg9 c #eff2f1", +"f8p c #eff3ef", +"gJT c #eff3f1", +"gCp c #eff3f4", +"gJS c #eff4f0", +"gJ4 c #eff4f6", +"bmQ c #eff5f1", +"bmI c #eff7f0", +"bmH c #eff8f1", +"bmP c #eff9f1", +"aON c #effb33", +"a0U c #f00072", +"#Z1 c #f000f9", +"adA c #f000ff", +"axm c #f004ec", +"amv c #f00605", +"awE c #f00a2a", +"apd c #f01417", +"baY c #f0179d", +"afY c #f02507", +"#Q8 c #f07712", +"#KG c #f0c28d", +"#G6 c #f0c58e", +"e4n c #f0c79d", +"#z1 c #f0cc8d", +"dVT c #f0e7e8", +"cqQ c #f0e9ef", +"f.V c #f0ebec", +"gB3 c #f0ebee", +"boH c #f0ecee", +"d5S c #f0ecef", +"dQG c #f0ecf0", +"gB6 c #f0edea", +"gaL c #f0edeb", +"ad6 c #f0edec", +"cN7 c #f0eded", +"#H. c #f0edee", +"dOr c #f0edef", +"cMM c #f0edf0", +"cb9 c #f0edf1", +"aa5 c #f0edf2", +"gJc c #f0eee9", +"cei c #f0eeec", +"amC c #f0eeed", +"#DG c #f0eeee", +"bqH c #f0eeef", +"bua c #f0eef0", +"#O# c #f0eef1", +"#0x c #f0eef2", +"gKd c #f0efe9", +"gCz c #f0efec", +"bsq c #f0efed", +"aL9 c #f0efee", +"boR c #f0efef", +"ax0 c #f0eff0", +"b3y c #f0eff1", +"#9Z c #f0eff2", +"f8d c #f0eff3", +"gD# c #f0f0ec", +"boS c #f0f0ed", +"#vY c #f0f0ee", +"#Ad c #f0f0ef", +"#yH c #f0f0f0", +"a64 c #f0f0f1", +"aTM c #f0f0f2", +"#KT c #f0f0f3", +"cCE c #f0f1ed", +"eOt c #f0f1ee", +"eMj c #f0f1ef", +"#0w c #f0f1f0", +"#DF c #f0f1f1", +"bCL c #f0f1f2", +"cPJ c #f0f1f3", +"gJV c #f0f1f4", +"bCK c #f0f1f6", +"bmR c #f0f2ed", +"gs4 c #f0f2ef", +"#G9 c #f0f2f0", +"fAm c #f0f2f1", +"aP. c #f0f2f2", +"aMg c #f0f2f3", +"d8d c #f0f2f5", +"bRa c #f0f3ef", +"d3e c #f0f3f1", +"fAw c #f0f3f3", +"bmb c #f0f4f1", +"gJL c #f0f4f3", +"gJU c #f0f4f4", +"bTl c #f0f5ef", +"bjn c #f0f5f1", +"gJM c #f0f5f2", +"gJI c #f0f5f5", +"d5V c #f0f8f5", +"dTj c #f0f9f9", +"#QW c #f0fc00", +"#GK c #f10030", +"#6l c #f100fa", +"#NH c #f100fc", +"a8X c #f100ff", +"ams c #f10703", +"aKQ c #f10774", +"amw c #f10803", +"a3W c #f11789", +"#NN c #f12d03", +"#zW c #f1ba00", +"e7K c #f1bf94", +"dOu c #f1eaf1", +"gGq c #f1ece9", +"d8# c #f1eced", +"bug c #f1ecee", +"d5B c #f1ecf1", +"dQJ c #f1edec", +"d3. c #f1edf2", +"d5C c #f1edf3", +"dQN c #f1eeef", +"bg0 c #f1eef0", +"e.A c #f1eef1", +"#Rb c #f1eef2", +".49 c #f1efe3", +"gIX c #f1efed", +"gCD c #f1efee", +"boQ c #f1efef", +"eMk c #f1eff0", +"dVJ c #f1eff1", +"gCB c #f1f0ee", +"aa4 c #f1f0ef", +"#W2 c #f1f0f0", +"#z4 c #f1f0f1", +"d78 c #f1f0f2", +"amO c #f1f0f3", +"gJ1 c #f1f0f4", +"cdY c #f1f0f6", +"cEs c #f1f1ee", +"cCD c #f1f1ef", +"#Ri c #f1f1f0", +"#v1 c #f1f1f1", +"#Af c #f1f1f2", +"#DR c #f1f1f3", +"eD# c #f1f1f4", +"gJK c #f1f1f5", +"gJR c #f1f1f6", +"b3z c #f1f2ef", +"gq5 c #f1f2f0", +"bEs c #f1f2f1", +"#3T c #f1f2f2", +"ahh c #f1f2f3", +"gJg c #f1f2f5", +"blR c #f1f2f6", +"eAV c #f1f2f7", +"dOy c #f1f3f0", +"gKb c #f1f3f1", +"fRR c #f1f3f2", +"blS c #f1f3f3", +"e5c c #f1f3f4", +"gJv c #f1f3f5", +"e1k c #f1f3f6", +"bl4 c #f1f4ef", +"fcr c #f1f4f4", +"gJW c #f1f4f5", +"fCI c #f1f4f7", +"gJO c #f1f5f0", +"gJN c #f1f5f4", +"gKh c #f1f5f5", +"bmG c #f1f7f0", +"bmB c #f1f8f2", +"dTi c #f1f8f9", +"bmA c #f1f9f1", +"#NS c #f1fb00", +"#0j c #f1fc00", +"ajD c #f2000d", +"bdM c #f200c2", +"as# c #f20203", +"a8W c #f205f6", +"amr c #f20604", +"bdR c #f213a1", +"bgQ c #f215b4", +"a6T c #f21890", +"a9Y c #f21899", +"aIn c #f21b17", +"#QQ c #f22702", +"#Km c #f23004", +"aOq c #f230f6", +"a0t c #f258fb", +"ajR c #f27006", +"#Zm c #f27708", +"e4s c #f2cb97", +"#Jw c #f2cd0c", +"e1q c #f2d5a6", +"a9F c #f2d8b3", +"d3B c #f2e9e5", +"cgW c #f2ebed", +"d76 c #f2ebf3", +"gEF c #f2edeb", +"aAx c #f2edef", +"gEs c #f2eee9", +"bsp c #f2eef0", +"ceh c #f2eef1", +"dYj c #f2eef2", +"gG. c #f2eef3", +"gCl c #f2eff0", +"d3d c #f2eff1", +"boZ c #f2eff2", +"d3j c #f2eff3", +"axN c #f2f009", +"fAj c #f2f0ee", +"d5T c #f2f0ef", +"fAn c #f2f0f0", +"apg c #f2f0f1", +"aDw c #f2f0f2", +".sN c #f2f0f3", +"eOu c #f2f1ef", +"#KJ c #f2f1f0", +"aAz c #f2f1f1", +"aUW c #f2f1f2", +"a0Z c #f2f1f3", +"blQ c #f2f1f4", +"f8o c #f2f2ee", +"eCY c #f2f2ef", +"bl6 c #f2f2f0", +"#9Y c #f2f2f1", +"#vV c #f2f2f2", +"#Rk c #f2f2f3", +"a65 c #f2f2f4", +"etE c #f2f2f5", +"bma c #f2f3ef", +"f8r c #f2f3f0", +"blV c #f2f3f1", +"#Rj c #f2f3f2", +"dHz c #f2f3f3", +"blU c #f2f3f4", +"eQS c #f2f3f5", +"gKa c #f2f3f6", +"gKc c #f2f3f7", +"bl3 c #f2f4f0", +"bl5 c #f2f4f1", +"gJr c #f2f4f2", +"a#R c #f2f4f3", +"bPe c #f2f4f4", +"eMq c #f2f4f5", +"fra c #f2f5f4", +"eFv c #f2f5f5", +"fxS c #f2f5f6", +"d5X c #f2f6f4", +"d5W c #f2f6f5", +"blX c #f2f7ee", +"d5U c #f2f7f5", +"cJF c #f2f7f6", +"dTg c #f2f7f7", +"d5Y c #f2f8f2", +"d01 c #f2f9f3", +"adX c #f2ff00", +"a9V c #f300a7", +"baU c #f300b5", +"#Wv c #f300f7", +"aml c #f30101", +"amq c #f30403", +"aZW c #f307d0", +"auW c #f31110", +"bgO c #f318c4", +"bgM c #f319d0", +"bgP c #f31ac0", +"aiS c #f31c0a", +"aII c #f31ff9", +"aA# c #f32228", +"aXz c #f350fa", +"au6 c #f35907", +"baC c #f3d3e1", +"e4o c #f3d6aa", +"f8g c #f3eef0", +"f8e c #f3efee", +"ev7 c #f3efef", +"gJH c #f3eff1", +"ba2 c #f3eff2", +"d0O c #f3eff4", +"#O. c #f3f0f0", +"#TX c #f3f0f1", +"#Ra c #f3f0f2", +"aJh c #f3f0f3", +"a30 c #f3f0f4", +"byz c #f3f0f5", +"bqC c #f3f1f0", +"fAh c #f3f1f1", +"ad8 c #f3f1f2", +"aha c #f3f1f3", +"a91 c #f3f1f4", +"bws c #f3f1f5", +"f8h c #f3f2ec", +"blO c #f3f2ef", +"bl7 c #f3f2f1", +"dHA c #f3f2f2", +"#6S c #f3f2f3", +"bt5 c #f3f2f4", +"blT c #f3f2f5", +"d5Q c #f3f2f6", +"gJp c #f3f2f7", +"f8n c #f3f3ee", +"blP c #f3f3f0", +"bl8 c #f3f3f1", +"afT c #f3f3f2", +"#MQ c #f3f3f3", +"bm. c #f3f3f4", +"eT. c #f3f3f5", +"gJ9 c #f3f3f7", +"gJh c #f3f4ee", +"bl9 c #f3f4ef", +"f8m c #f3f4f0", +"gCA c #f3f4f1", +"acS c #f3f4f2", +"cej c #f3f4f3", +"bAl c #f3f4f4", +"dOw c #f3f4f5", +"f3C c #f3f4f6", +"blW c #f3f5ef", +"gIC c #f3f5f0", +"gJY c #f3f5f1", +"aU3 c #f3f5f3", +"cc. c #f3f5f4", +"evX c #f3f5f5", +"bN. c #f3f5f6", +"ag1 c #f3f608", +"bmF c #f3f6ef", +"bjP c #f3f6f4", +"ev8 c #f3f7f3", +"bmC c #f3f7f4", +"blY c #f3f9f0", +"dTh c #f3fafb", +"#TJ c #f3fb00", +"a3G c #f3fc6c", +"ajE c #f40008", +"#Ts c #f400f8", +"ar7 c #f40b01", +"bgN c #f418cb", +"aIm c #f42622", +"aC4 c #f4282d", +"aAc c #f42f2c", +"aF0 c #f43234", +"aIk c #f43838", +"au5 c #f44d06", +"#P3 c #f4a80b", +"fhf c #f4c29c", +"fkn c #f4c398", +"e7E c #f4d2a4", +"f8j c #f4f0f0", +"d8a c #f4f0f2", +"gzL c #f4f0f3", +"d0W c #f4f0f4", +"amE c #f4f1f2", +"aL8 c #f4f1f3", +"bmc c #f4f1f4", +"gg4 c #f4f1f5", +"dOz c #f4f1f7", +"d79 c #f4f1f8", +"gCU c #f4f2f0", +"gJq c #f4f2f1", +"gK. c #f4f2f3", +"e.B c #f4f2f4", +"d3p c #f4f3f1", +"gJu c #f4f3f2", +"bm# c #f4f3f3", +"#Of c #f4f3f4", +".so c #f4f3f5", +"gJX c #f4f3f7", +"gC0 c #f4f4f0", +"fRJ c #f4f4f1", +"fUA c #f4f4f2", +"atW c #f4f4f3", +"#Ab c #f4f4f4", +"#2E c #f4f4f5", +"gs0 c #f4f5f1", +"bmy c #f4f5f3", +"aq1 c #f4f5f4", +"evW c #f4f5f5", +"gIA c #f4f5f6", +"gJ6 c #f4f5f7", +"#F1 c #f4f608", +"bmE c #f4f6f0", +"gJf c #f4f6f4", +"bmu c #f4f6f5", +"gKf c #f4f6f7", +"gI6 c #f4f6f8", +"bl1 c #f4f7ef", +"bmD c #f4f7f2", +"cAA c #f4f7f6", +"bmz c #f4f8f3", +"cWu c #f4f8f8", +"#Cu c #f4f90c", +"aXQ c #f4fa4d", +"#6G c #f4fb00", +"ao8 c #f50000", +"amy c #f50004", +"a6R c #f5009b", +"amp c #f50202", +"amx c #f50205", +"aNN c #f5057d", +"aTT c #f506a7", +"azZ c #f508fe", +"aIo c #f50e11", +"#TB c #f52103", +"axB c #f5221e", +"au2 c #f52d06", +"aIl c #f52f2e", +"ajN c #f53405", +"aC7 c #f53535", +"aIT c #f53a3d", +"aF3 c #f53e39", +"ajO c #f54108", +"aIj c #f54342", +"au4 c #f54405", +"ajP c #f54f06", +"ajQ c #f55f04", +"a3x c #f56afd", +"#G5 c #f59511", +"#DB c #f59d12", +"#Dy c #f5a800", +"#NO c #f5b805", +"fev c #f5caa0", +"f.L c #f5e2b7", +"dVZ c #f5e5e3", +"f8f c #f5eeec", +"bdU c #f5eef2", +"glf c #f5f0f3", +"blN c #f5f0f4", +"gcZ c #f5f0f5", +"gaS c #f5f1f3", +"bjm c #f5f1f4", +"e8p c #f5f1f5", +"gJt c #f5f2ea", +"gJ5 c #f5f2f0", +"bmd c #f5f2f2", +"dVK c #f5f2f4", +"eVO c #f5f2f5", +"dYk c #f5f2f6", +"boG c #f5f3f3", +"eeQ c #f5f3f6", +"ev5 c #f5f4f1", +"e8n c #f5f4f3", +"#5H c #f5f4f4", +"cCG c #f5f4f5", +"fOC c #f5f5f2", +"fXs c #f5f5f3", +"cCF c #f5f5f4", +"#KS c #f5f5f5", +"bXi c #f5f5f6", +"dHF c #f5f5f7", +"bl0 c #f5f6ee", +"gCW c #f5f6f2", +"gIG c #f5f6f3", +"gIB c #f5f6f4", +"cAz c #f5f6f5", +"bN# c #f5f6f6", +"cUU c #f5f6f7", +"blZ c #f5f7ef", +"bl2 c #f5f7f1", +"evY c #f5f7f6", +"c0C c #f5f7f7", +"bms c #f5f8f3", +"ab. c #f5f8f7", +"cY5 c #f5f8f8", +"cXO c #f5f9f9", +"aAo c #f5ff08", +"amz c #f60000", +"#NJ c #f600f0", +"#Kl c #f6012f", +"aE8 c #f6055a", +"as. c #f60a01", +"ar8 c #f60b01", +"auV c #f60d09", +"#3x c #f61302", +"axv c #f61632", +"#0# c #f61701", +"axy c #f6191e", +"#WG c #f61d02", +"au1 c #f62505", +"axw c #f62637", +"au3 c #f63705", +"axx c #f6434c", +"aLI c #f64649", +"aIW c #f64a3f", +"aIi c #f64c4b", +"aOA c #f65259", +"aFX c #f65381", +"agV c #f65e03", +"aFZ c #f66885", +"a3y c #f672ff", +"#N6 c #f68112", +"a3z c #f681e9", +"#KF c #f68b12", +"#QR c #f6a106", +"a6A c #f6c3a1", +"e4p c #f6e5bf", +"d0P c #f6eff8", +".5. c #f6f0d9", +"dQS c #f6f0f4", +"gJZ c #f6f1f2", +"fur c #f6f1f5", +"fk9 c #f6f1f6", +"f3E c #f6f2f3", +"dOB c #f6f2f4", +"bwx c #f6f2f5", +"e5. c #f6f2f6", +"d8i c #f6f3f7", +"fAk c #f6f4ef", +"#Rh c #f6f4f5", +"d54 c #f6f4f7", +"gu1 c #f6f5f2", +"gCT c #f6f5f3", +"ev4 c #f6f5f4", +"dFy c #f6f5f6", +"dTq c #f6f5f7", +"dxU c #f6f5f8", +"gCC c #f6f6f3", +"cN8 c #f6f6f4", +"bPf c #f6f6f5", +".Ey c #f6f6f6", +"bXh c #f6f6f7", +"c1W c #f6f6f8", +"e47 c #f6f7f4", +"avn c #f6f7f6", +"evU c #f6f7f7", +"bdX c #f6f7f8", +"#WP c #f6f901", +"bmq c #f6f9f0", +"bmt c #f6f9f1", +"bmr c #f6f9f2", +"aI7 c #f6fb1f", +"#WF c #f70000", +"#NM c #f70029", +"#3m c #f700f4", +"#NI c #f700f7", +"arX c #f70101", +"agP c #f70200", +"ajF c #f70307", +"ar3 c #f70400", +"aW2 c #f704b0", +"at2 c #f7061a", +"ar6 c #f70a01", +"agQ c #f70b02", +"auS c #f70b0b", +"auX c #f70d08", +"aFR c #f721c2", +"ajM c #f72702", +"aRk c #f73afa", +"axC c #f74238", +"aIh c #f75757", +"aC3 c #f76377", +"aOD c #f76653", +"aIS c #f76c91", +"aRw c #f7735c", +"aOz c #f773aa", +"#z0 c #f7a412", +"ag0 c #f7e304", +"a3E c #f7ec83", +"d3t c #f7f0ed", +"dQQ c #f7f0f7", +"fIL c #f7f1f4", +"dOv c #f7f1f8", +"gJ3 c #f7f2f0", +"fUC c #f7f2f3", +"fOE c #f7f2f4", +"fFT c #f7f2f5", +"fh4 c #f7f2f7", +"fRM c #f7f3f3", +"gCq c #f7f3f5", +"ffa c #f7f3f6", +"dOG c #f7f3f7", +"cGa c #f7f4f5", +"dMk c #f7f4f6", +"dv9 c #f7f4f7", +"gCV c #f7f5f4", +"avm c #f7f5f7", +"dzP c #f7f5f8", +"ev6 c #f7f6f5", +"d5Z c #f7f6f6", +"dJY c #f7f6f7", +"dhh c #f7f6f8", +"#NR c #f7f700", +"bmg c #f7f7ec", +"bmk c #f7f7f1", +"gC1 c #f7f7f5", +"#97 c #f7f7f7", +"fAl c #f7f8f5", +"ba6 c #f7f8f7", +"aAD c #f7f8f8", +"a0H c #f7f95e", +"bmp c #f7f9ef", +"aRF c #f7fa3b", +"e14 c #f7faf6", +"a3F c #f7ff74", +"#Dh c #f80000", +"amn c #f80001", +"#TA c #f8001c", +"#QP c #f80021", +"a3V c #f80082", +"#NK c #f800f9", +"amo c #f80101", +"asa c #f80102", +"a2P c #f803d2", +"adM c #f80400", +"axq c #f8048b", +"ar4 c #f80600", +"ar5 c #f80801", +"#6x c #f80f01", +"auZ c #f81603", +"aiT c #f81907", +"au0 c #f81e03", +"aC1 c #f8466d", +"aLL c #f85849", +"aRt c #f85d66", +"a0u c #f85ef8", +"aA. c #f85f6e", +"aIg c #f86163", +"aLH c #f8709d", +"#2M c #f87205", +"aC8 c #f87362", +"agW c #f87506", +"aUz c #f8806a", +"#TC c #f88806", +"aIb c #f89394", +"aIa c #f89d9e", +"#MZ c #f8bc08", +"fkq c #f8d6ac", +"d3k c #f8eef8", +"fbH c #f8f4e2", +"cEt c #f8f4f6", +"d5L c #f8f4fd", +"bme c #f8f5ea", +"bmi c #f8f5ef", +"dsi c #f8f5f7", +"c3B c #f8f5f9", +"bmf c #f8f6ea", +"bmh c #f8f6ee", +"bmj c #f8f6f0", +"doj c #f8f6f6", +"ddn c #f8f6f7", +"df. c #f8f6f8", +"c7L c #f8f6f9", +"gDb c #f8f7f5", +"bNa c #f8f7f7", +"aU2 c #f8f7f8", +"ct1 c #f8f7fa", +"bsA c #f8f8f5", +"evZ c #f8f8f7", +".Fe c #f8f8f8", +"evV c #f8f8f9", +"aUH c #f8f942", +"cAB c #f8f9f9", +"cwy c #f8f9fa", +"cPD c #f8faf6", +"fC5 c #f8fafa", +"#Dg c #f90000", +"ajG c #f90002", +"#0. c #f90012", +"#WE c #f90017", +"agH c #f90075", +"#WA c #f900a9", +"#NL c #f900c7", +"a2R c #f900ef", +"#QJ c #f900f2", +"ajH c #f90101", +"aIp c #f90109", +"aQL c #f9029a", +"axp c #f903a4", +"ajI c #f90403", +"at1 c #f9041b", +"axo c #f904bd", +"axn c #f904da", +"aaI c #f90700", +"auU c #f90704", +"axr c #f90772", +"axA c #f90a09", +"ar9 c #f90b03", +"auY c #f90e02", +"adN c #f91300", +"aFS c #f925ae", +"aLy c #f92af1", +"aIV c #f92c2b", +"#6y c #f94004", +"agU c #f94801", +"#3y c #f95005", +"aXA c #f956f3", +"aIQ c #f95991", +"#6z c #f95a01", +"#0a c #f96007", +"axH c #f96109", +"aAd c #f96555", +"aIf c #f96a6d", +"aIe c #f97476", +"aRs c #f974b4", +"aId c #f97d80", +"aF4 c #f97f65", +"#KE c #f98700", +"aIX c #f98a67", +"aXJ c #f99079", +"#G3 c #f99a00", +"#SO c #f9a704", +"axK c #f9a707", +"a6x c #f9abbd", +"a3D c #f9b191", +"aRx c #f9b373", +"#P5 c #f9bb04", +"a9C c #f9c0d2", +"aH8 c #f9c6c8", +"aH7 c #f9d0d1", +"fhk c #f9e0ba", +"fbC c #f9ebc5", +"feu c #f9f0d6", +"aOM c #f9f136", +"dTe c #f9f4fa", +"cCH c #f9f5f7", +"cOc c #f9f6f7", +"c85 c #f9f6f8", +"c48 c #f9f6f9", +"#3H c #f9f700", +"bJa c #f9f7f9", +"bmo c #f9f8f0", +"bAm c #f9f8f8", +"eYR c #f9f8f9", +"bml c #f9f9f2", +"cQX c #f9f9f7", +"gxv c #f9f9f8", +"#X. c #f9f9f9", +"bLc c #f9f9fa", +"f.P c #f9faf3", +"fbG c #f9fbf9", +"#vS c #f9fbfb", +"#GL c #fa0000", +"agO c #fa0001", +"agM c #fa0015", +"agI c #fa005b", +"agG c #fa008c", +"#Tz c #fa0094", +"#WB c #fa009e", +"bdQ c #fa00a8", +"#Wz c #fa00b2", +"#9q c #fa00f5", +"agF c #fa01c2", +"agN c #fa020b", +"ar2 c #fa0300", +"axs c #fa0960", +"#9B c #fa0a00", +"aAb c #fa0f10", +"aCV c #fa16b7", +"aC6 c #fa1718", +"ajL c #fa1c01", +"aCX c #fa208c", +"adO c #fa2100", +"aF2 c #fa2121", +"aCY c #fa2381", +"aIK c #fa28cf", +"adP c #fa2c00", +"aFU c #fa2e91", +"agT c #fa3500", +"aFV c #fa3687", +"aaL c #fa3800", +"aFW c #fa3f81", +"axF c #fa410e", +"#8P c #fa5304", +"aRo c #fa53cd", +"adS c #fa6600", +"aRq c #fa66c0", +"aUw c #fa6975", +"#WH c #fa7304", +"axI c #fa750a", +"aAi c #fa750e", +"aF7 c #fa803e", +"aF6 c #fa824c", +"aIc c #fa8889", +"aAj c #fa8a0c", +"agX c #fa8c04", +"axJ c #fa8c09", +"aDc c #fa911b", +"aIZ c #fa9357", +"a0C c #faa185", +"aOE c #faa76f", +"aI# c #faa7a8", +"aI. c #fab0b0", +"#zX c #fab700", +"aDe c #faba18", +"aH9 c #fabcbd", +"aUA c #fac077", +"axL c #fac308", +"agZ c #fac402", +"#M1 c #face04", +"f.R c #fad4ab", +"aDf c #fad513", +"fbI c #fad8af", +"aH6 c #fadadb", +"axM c #fadc09", +"fko c #fae1bc", +"e4r c #fae6b5", +"fkp c #fae7c2", +"e7F c #faecc6", +"e4q c #faedc5", +"#TI c #faf000", +"f8k c #faf3f1", +"#NQ c #faf400", +"f.Q c #faf4dd", +"aGc c #faf519", +"e7G c #faf5de", +"f8l c #faf5f3", +"aLV c #faf62c", +"fbD c #faf8e8", +"bmm c #faf8f2", +"fh1 c #faf8f5", +"fe9 c #faf8f6", +"cML c #faf9fa", +"e8m c #fafaf4", +"bqR c #fafafa", +"cLn c #fafafb", +"gs3 c #fafbfb", +"#z8 c #fafcfb", +"aDv c #fafdfd", +"#zF c #fb0000", +"ap# c #fb0001", +"#6w c #fb000b", +"#3w c #fb000f", +"agL c #fb0021", +"aaG c #fb0023", +"agK c #fb002f", +"agJ c #fb0043", +"#Z8 c #fb0085", +"#6p c #fb009b", +"#9t c #fb00a3", +"baX c #fb00a4", +"a9W c #fb00a9", +"#3p c #fb00ae", +"#QO c #fb00af", +"baW c #fb00b2", +"baV c #fb00b4", +"bdP c #fb00b5", +"#Z4 c #fb00bf", +"bdN c #fb00c0", +"#6m c #fb00ea", +"#Tt c #fb00ee", +"ar0 c #fb0100", +"aZU c #fb01c7", +"arZ c #fb0200", +"agE c #fb02e1", +"ajJ c #fb0700", +"axt c #fb0a4f", +"ajK c #fb1000", +"aCU c #fb13d1", +"agR c #fb1400", +"aCW c #fb1ba2", +"agS c #fb2300", +"aIJ c #fb23e8", +"aCZ c #fb2975", +"aIL c #fb2abd", +"aaK c #fb3000", +"axE c #fb3412", +"aIN c #fb36a0", +"aLK c #fb383a", +"axD c #fb3b29", +"adQ c #fb3c00", +"aIO c #fb4097", +"aUo c #fb43f8", +"aaM c #fb4500", +"aOC c #fb474a", +"#9E c #fb4900", +"adR c #fb5000", +"axG c #fb500c", +"aUq c #fb50e5", +"#9F c #fb5400", +"aUr c #fb59dd", +"#6A c #fb5e00", +"aLF c #fb60a2", +"aUy c #fb6365", +"aOx c #fb63b3", +"aFY c #fb668b", +"#6B c #fb6800", +"aUt c #fb69d0", +"aD# c #fb6b33", +"aaO c #fb6c00", +"aRr c #fb6fc4", +"#3z c #fb7202", +"aDa c #fb7229", +"aUv c #fb77c2", +"aXG c #fb7985", +"aXF c #fb7bd0", +"adT c #fb7e00", +"a0y c #fb7fde", +"aDb c #fb801f", +"aaP c #fb8200", +"a0z c #fb8895", +"#9I c #fb8e00", +"aI0 c #fb924b", +"aI1 c #fb983f", +"a3A c #fb98a9", +"aLM c #fb996c", +"#6D c #fb9d00", +"aIY c #fb9d6a", +"#WJ c #fb9f00", +"aAk c #fb9f0f", +"aG. c #fb9f27", +"aI2 c #fba337", +"aDd c #fba41b", +"#WK c #fba700", +"a6z c #fbadae", +"a6y c #fbb1af", +"#WM c #fbc300", +"aRz c #fbc361", +"aOK c #fbcd3e", +"aXK c #fbd17b", +"#WN c #fbd700", +"#TH c #fbdf00", +"a0D c #fbe17f", +"fep c #fbe1bc", +"#Jy c #fbe502", +"fhg c #fbe6cb", +"e7J c #fbe8c2", +"#6F c #fbea00", +"aDg c #fbec13", +"adW c #fbed00", +"dQK c #fbf0fa", +"aUG c #fbf148", +"#9M c #fbf400", +"a0G c #fbf565", +"aXP c #fbf655", +"f.M c #fbf6de", +"e7H c #fbf8e5", +"f.N c #fbf8ee", +"bmn c #fbf8f2", +"f.O c #fbf9f3", +"fk6 c #fbf9f4", +"e46 c #fbf9f5", +"fcl c #fbf9f6", +"aU1 c #fbf9fb", +"fet c #fbfaf2", +"f#v c #fbfaf4", +"blM c #fbfafa", +"bgZ c #fbfafb", +"bCx c #fbfbfb", +"#NP c #fbfc01", +"fXr c #fbfcf9", +"fUz c #fbfcfa", +"aX7 c #fbfdfd", +"#Oe c #fbfefe", +"ao9 c #fc0000", +"amm c #fc0001", +"adL c #fc0002", +"aaH c #fc0005", +"#9A c #fc0007", +"adK c #fc0013", +"adJ c #fc0020", +"awF c #fc0026", +"#3v c #fc0058", +"#6u c #fc0059", +"#6t c #fc005e", +"adF c #fc0063", +"#Z9 c #fc0068", +"aaC c #fc0069", +"#3u c #fc0070", +"#6r c #fc0077", +"adE c #fc007b", +"aaB c #fc007d", +"#WD c #fc007f", +"#Z7 c #fc0085", +"#Z6 c #fc0090", +"aaA c #fc0097", +"#WC c #fc009e", +"aaz c #fc00af", +"#6o c #fc00b4", +"bdO c #fc00ba", +"#9s c #fc00bd", +"#Tw c #fc00c1", +"aay c #fc00d1", +"#Ww c #fc00ee", +"arY c #fc0100", +"ar1 c #fc0200", +"auT c #fc0606", +"axu c #fc0b3e", +"az5 c #fc1673", +"aFP c #fc17f4", +"aFQ c #fc1adf", +"aaJ c #fc2000", +"aFT c #fc299c", +"#9C c #fc2e01", +"az8 c #fc2f55", +"aC0 c #fc346c", +"#9D c #fc4300", +"aOB c #fc484d", +"aIP c #fc4893", +"aRn c #fc4ad5", +"#8O c #fc4d02", +"aOv c #fc4ebd", +"aRv c #fc5456", +"aaN c #fc5600", +"aRp c #fc5bc5", +"aUs c #fc61d6", +"aAh c #fc6318", +"a0v c #fc65f6", +"aIR c #fc6b99", +"aD. c #fc6d40", +"aOy c #fc6eb8", +"aUu c #fc72d4", +"#3A c #fc7300", +"aXE c #fc74e6", +"a0x c #fc74f6", +"#6C c #fc7500", +"aXI c #fc7576", +"#9H c #fc7800", +"aXH c #fc7876", +"#3B c #fc7c00", +"#0b c #fc8703", +"#0c c #fc8800", +"aF5 c #fc8f65", +"#0d c #fc9000", +"aF9 c #fc912b", +"#VR c #fc9400", +"adU c #fc9500", +"a3B c #fc9c9c", +"aLP c #fca254", +"aLO c #fca35d", +"agY c #fca703", +"#0f c #fcad00", +"#3E c #fcae00", +"aG# c #fcb025", +"aI3 c #fcb033", +"#WL c #fcb200", +"aOH c #fcb258", +"aOG c #fcb25f", +"aLR c #fcb340", +"aaR c #fcb400", +"aAl c #fcb810", +"#TE c #fcb900", +"#TD c #fcbc02", +"#9K c #fcbe00", +"aLS c #fcbf3a", +"#TF c #fcc200", +"aOJ c #fcc244", +"aGa c #fcc61f", +"a9D c #fcc8c6", +"aRy c #fcc96f", +"#6E c #fccd00", +"#TG c #fcce00", +"aaS c #fcd000", +"aUC c #fcd365", +"aAm c #fcd40a", +"aRC c #fcd447", +"aUB c #fcd672", +"aUD c #fcd75e", +"#QS c #fcde02", +"aOL c #fcde38", +"aGb c #fcdf19", +"aRD c #fce041", +"baD c #fce1e0", +"aUF c #fce64f", +"#WO c #fcea04", +"aaT c #fcec00", +"#0i c #fcee00", +"aRE c #fcee3e", +"fhj c #fcf3dc", +"e7I c #fcf7dc", +"fbE c #fcf9f4", +"fer c #fcf9f5", +"fes c #fcf9f7", +"fbF c #fcfaf8", +"bdw c #fcfbf4", +"cSa c #fcfbfb", +"cF4 c #fcfbfc", +"bAq c #fcfcfc", +"bww c #fcfcfd", +"fRI c #fcfdf9", +"f0w c #fcfdfb", +"cEn c #fcfdfd", +"avl c #fcfefd", +"#Rg c #fcfefe", +"#zG c #fd0000", +"apc c #fd0003", +"aaF c #fd002b", +"adI c #fd002e", +"#9z c #fd0033", +"aaE c #fd0038", +"adH c #fd003c", +"#9y c #fd003f", +"#6v c #fd0046", +"aaD c #fd0047", +"#9x c #fd0048", +"adG c #fd004c", +"#9w c #fd0056", +"#9v c #fd0064", +"#6s c #fd0068", +"#3t c #fd0071", +"aNO c #fd0086", +"#6q c #fd0089", +"#3r c #fd008c", +"a6S c #fd0091", +"adD c #fd0094", +"#3q c #fd009c", +"#Z5 c #fd00af", +"#Wy c #fd00c5", +"#3o c #fd00c6", +"#Tv c #fd00cc", +"#Z3 c #fd00d7", +"#Tu c #fd00db", +"#QN c #fd00dc", +"#QK c #fd00ea", +"#Z2 c #fd00ed", +"axz c #fd080a", +"aAa c #fd0f10", +"aCT c #fd10ed", +"az4 c #fd1187", +"aC5 c #fd1a16", +"az6 c #fd1b62", +"afZ c #fd1e00", +"aF1 c #fd2321", +"aIU c #fd2d2e", +"aIM c #fd2fab", +"aLJ c #fd393d", +"aOs c #fd39e1", +"aRl c #fd3eee", +"aOt c #fd3fcd", +"aRm c #fd44dc", +"aOu c #fd45c7", +"aLD c #fd48aa", +"aAf c #fd532c", +"aOw c #fd56b6", +"aAg c #fd5721", +"aRu c #fd575b", +"aXB c #fd5cec", +"aC2 c #fd5d7d", +"#9G c #fd6300", +"aUx c #fd6667", +"aAe c #fd674a", +"aXD c #fd6be3", +"a0w c #fd6bf4", +"aC9 c #fd7e5d", +"aF8 c #fd8633", +"a0B c #fd8787", +"#3C c #fd8800", +"a0A c #fd8a88", +"#G4 c #fd9100", +"a3C c #fd989a", +"#3D c #fd9900", +"aaQ c #fd9a00", +"#DA c #fd9b00", +"#0e c #fd9c00", +"#WI c #fd9f01", +"#zZ c #fda400", +"#Dz c #fda600", +"aLQ c #fda84a", +"#zY c #fdaf00", +"adV c #fdb100", +"aOI c #fdb84d", +"aOF c #fdbc6d", +"aI4 c #fdbe2c", +"#0g c #fdc000", +"#3F c #fdc300", +"aRA c #fdc45a", +"a9E c #fdc6c6", +"aLT c #fdce33", +"#QT c #fdd800", +"#9L c #fddb00", +"#3G c #fdde00", +"aLU c #fde32f", +"aH5 c #fde3e4", +"aXL c #fde774", +"aI6 c #fdeb21", +"aAn c #fded08", +"d5D c #fdf1fd", +"dS9 c #fdf4fc", +"feq c #fdf5e4", +"fhh c #fdf6e8", +"a0E c #fdf775", +"fhi c #fdf7eb", +"e13 c #fdfbfa", +"fr# c #fdfcfa", +"fuo c #fdfcfb", +"cS# c #fdfcfc", +"cHR c #fdfcfd", +"fod c #fdfdf8", +"bAp c #fdfdf9", +"dDF c #fdfdfa", +"cPv c #fdfdfc", +"aba c #fdfdfd", +"bgw c #fdfefa", +"cL# c #fdfefd", +"bCv c #fdfefe", +"#Cv c #fdff00", +"cS. c #fdffff", +"ap. c #fe0000", +"aE7 c #fe0053", +"aH0 c #fe0062", +"#9u c #fe0076", +"#3s c #fe007b", +"a9X c #fe009c", +"adC c #fe00ad", +"#Tx c #fe00b6", +"#Ty c #fe00b8", +"#6n c #fe00ce", +"#QM c #fe00d6", +"#Wx c #fe00da", +"#9r c #fe00dd", +"a5T c #fe00ff", +"az3 c #fe0ea1", +"az7 c #fe2056", +"aLz c #fe2de0", +"aLA c #fe33cf", +"aOr c #fe34f1", +"aLC c #fe3eb3", +"aUp c #fe4aee", +"aLE c #fe51a5", +"aXC c #fe63e8", +"#2L c #fe6c00", +"aLG c #fe6ea8", +"#VQ c #fe8900", +"#SN c #fea100", +"#9J c #fea400", +"aLN c #feac6d", +"aRB c #feca51", +"#0h c #fed400", +"aI5 c #fed526", +"aUE c #fedd56", +"#QU c #fee000", +"baE c #fee0e1", +"aXM c #fee56a", +"aXN c #fee762", +"#QV c #feea00", +"aXO c #feee5b", +"a0F c #fef46c", +"cMv c #fefcfc", +"cUP c #fefcfd", +"ba5 c #fefcfe", +"ab# c #fefdfd", +"cF3 c #fefdfe", +"dBS c #fefef9", +"dBT c #fefefa", +"dBR c #fefefb", +"bgx c #fefefc", +"bJ# c #fefefd", +"cCv c #fefefe", +"dFv c #fefeff", +"bAo c #fefffd", +"aU0 c #feffff", +"apa c #ff0000", +"apb c #ff0002", +"azh c #ff0036", +"aC. c #ff0043", +"aKP c #ff0070", +"aQK c #ff0096", +"aTS c #ff00ab", +"aW3 c #ff00c0", +"aZV c #ff00d4", +"#3n c #ff00df", +"#QL c #ff00e1", +"a2Q c #ff00e6", +"adB c #ff00ee", +"a5U c #ff00ff", +"az0 c #ff09ef", +"az2 c #ff0cb6", +"az1 c #ff0ccf", +"acX c #ff2c00", +"aLB c #ff38bc", +"a#W c #ff3c00", +"az9 c #ff4c68", +"#5N c #ff5e00", +"#Zn c #ff7f00", +"#P4 c #ffb500", +"#M0 c #ffca00", +"#Jx c #ffe000", +"aH4 c #fff1f0", +"#FZ c #fff600", +"bdx c #fffbf9", +"cWo c #fffcfc", +"bPd c #fffcfd", +"cXL c #fffdfb", +"#F0 c #fffe00", +"cMu c #fffefd", +"cR9 c #fffefe", +"bCw c #fffeff", +"dzK c #fffff9", +"dxR c #fffffa", +"cY0 c #fffffb", +"c1R c #fffffc", +"cXK c #fffffd", +"bAn c #fffffe", +"#W9 c #ffffff", +"Qt.Qt.Qt.Qt.Qt.Qt.Qt.Qt.Qt.Qt.Qt.Qt.Qt.Qt.Qt.Qt.Qt.Qt.Qt.Qt.Qt.Qt.Qt.Qt.Qt.Qt.Qt.Qt.Qt.Qt.Qt.Qt.Qt.Qt.Qt.Qt.Qt.Qt.Qt.Qt.Qt.Qt.Qt.Qt.Qt.Qt.Qt.Qt.Qt.Qt.Qt.Qt.Qt.Qt.Qt.Qt.Qt.Qt.Qt.Qt.Qt.Qt.Qt.Qt.Qt.Qt.Qt.Qt.Qt.Qt.Qt.Qt.Qt.Qt.Qt.Qt.Qt.Qt.Qt.Qt.Qt.Qt.Qt.Qt.Qt.Qt#Qt#Qt#Qt#Qt#Qt#Qt#Qt#Qt#Qt#Qt#Qt#Qt#Qt#Qt#Qt#Qt#Qt#Qt#Qt#Qt#Qt#Qt#Qt#Qt#Qt#Qt#Qt#Qt#Qt#Qt#Qt#Qt#Qt#Qt#Qt#Qt#Qt#Qt#Qt#Qt#Qt#Qt#Qt#Qt#Qt#Qt#Qt#Qt#Qt#Qt#Qt#Qt#Qt#Qt#Qt#Qt#Qt#Qt#Qt#Qt#Qt#Qt#Qt#Qt#Qt#Qt#Qt#Qt#Qt#Qt#Qt#Qt#Qt#Qt#Qt#Qt#Qt#Qt#Qt#Qt#Qt#Qt#Qt#Qt#Qt#Qt#Qt#Qt#Qt#Qt#QtaQtaQtaQtaQtaQtaQtaQtaQtaQtaQtaQtaQtaQtaQtaQtaQtaQtaQtaQtaQtaQtaQtaQtaQtaQtaQtaQtaQtaQtaQtaQtaQtaQtaQtaQtaQtaQtaQtaQtaQtbQtbQtbQtbQtbQtbQtbQtbQtbQtbQtbQtbQtbQtbQtbQtbQtbQtbQtbQtbQtbQtbQtbQtbQtbQtbQtbQtbQtbQtbQtbQtbQtbQtbQtbQtbQtbQtbQtbQtbQtbQtbQtbQtbQtbQtbQtbQtbQtbQtbQtbQtbQtbQtbQtbQtbQtbQtbQtbQtbQtbQtbQtbQtbQtbQtbQtbQtbQtbQtbQtbQtbQtbQtbQtbQtbQtbQtbQtbQtbQtbQtbQtbQtbQtbQtbQtbQtbQtbQtbQtbQtbQtbQtbQtbQtbQtbQtbQtbQtbQtbQtbQtbQtbQtbQtbQtbQtbQtbQtbQtbQtbQtbQtbQtbQtbQtbQtbQtbQtbQtbQtbQtbQtbQtbQtbQtbQtbQtbQtbQtbQtbQtbQtbQtbQtbQtbQtbQtbQtbQtbQtbQtbQtbQtbQtbQtbQtbQtbQtbQtbQtbQtbQtbQtbQtbQtbQtbQtbQtbQtbQtbQtbQtbQtbQtbQtbQtbQtbQtbQtbQtbQtbQtbQtb", +"QtcQtcQtdQteQtfQtfQtgQthQtiQtjQtkQtlQtmQtnQteQtkQtjQtgQtgQteQteQtmQtoQtoQtoQtmQteQteQteQteQteQtpQtkQteQtoQteQteQtfQtfQtqQteQteQteQteQtfQtoQtoQteQteQtgQteQteQthQtgQtgQtkQtlQtlQtkQteQteQtiQtfQtfQtfQtlQtfQtfQtfQtlQthQthQtgQtgQtlQtfQteQteQtrQtfQteQteQtkQteQteQtfQtsQtrQteQteQteQteQteQteQttQtuQtvQtwQtxQtyQtzQtzQtAQtBQtzQtzQtAQtCQtBQtBQtBQtBQtAQtAQtAQtBQtBQtAQtAQtCQtCQtDQtEQtzQtBQtCQtCQtzQtDQtAQtAQtAQtAQtBQtCQtCQtzQtzQtAQtAQtAQtBQtCQtAQtAQtAQtAQtAQtAQtFQtFQtFQtFQtFQtFQtFQtFQtFQtFQtFQtFQtAQtAQtFQtFQtFQtGQtFQtFQtFQtFQtFQtFQtFQtFQtGQtGQtFQtAQtAQtAQtAQtAQtAQtAQtAQtAQtAQtAQtAQtAQtAQtAQtAQtAQtAQtHQtAQtAQtAQtIQtAQtFQtHQtHQtHQtHQtAQtAQtAQtAQtHQtHQtAQtFQtAQtAQtIQtIQtIQtIQtAQtIQtIQtIQtIQtIQtIQtIQtIQtIQtIQtIQtIQtJQtJQtJQtJQtJQtJQtJQtJQtJQtJQtJQtJQtJQtJQtJQtJQtJQtzQtAQtzQtzQtzQtAQtzQtJQtJQtJQtJQtAQtzQtzQtJQtzQtAQtAQtzQtAQtAQtJQtJQtHQtIQtHQtKQtIQtJQtKQtKQtIQtLQtLQtKQtKQtKQtKQtKQtJQtKQtKQtKQtJQtIQtKQtHQtKQtKQtKQtHQtHQtHQtKQtKQtJQtKQtKQtJQtIQtHQtHQtKQtKQtKQtKQtKQtKQtLQtKQtMQtMQtMQtMQtKQtKQtLQtKQtKQtKQtKQtKQtNQtNQtNQtMQtKQtKQtOQtHQtKQtKQtHQtHQtKQtMQtKQtKQtKQtKQtKQtKQtMQtMQtKQtKQtKQtKQtKQtGQtNQtPQtQQtMQtLQtRQtQQtQQtNQtQQtSQtQQtRQtPQtPQtPQtKQtQQtQQtLQtPQtTQtSQtUQtRQtTQtSQtPQtTQtP", +"QtVQtVQtWQtXQtYQtZQt0Qt1Qt2Qt3Qt4Qt5Qt5Qt4Qt6Qt6Qt3Qt7Qt8Qt9Qt9.#..##.##.##.##.##.#a.##.#b.#b.#c.#b.#d.#eQtQQtN.#f.#f.#g.#gQtB.#h.#i.#j.#k.#l.#m.#n.#o.#p.#q.#r.#s.#t.#u.#v.#v.#w.#w.#x.#x.#y.#z.#z.#A.#A.#A.#A.#A.#y.#y.#y.#B.#C.#D.#E.#F.#s.#G.#G.#G.#G.#G.#G.#G.#H.#H.#I.#G.#H.#H.#r.#t.#J.#K.#v.#L.#M.#N.#O.#P.#Q.#R.#R.#R.#R.#R.#R.#S.#T.#U.#U.#V.#V.#W.#V.#V.#V.#N.#X.#Y.#Z.#0.#Y.#1.#N.#V.#U.#U.#U.#U.#U.#U.#2.#2.#T.#3.#U.#U.#U.#2.#2.#U.#U.#U.#U.#2.#2.#2.#4.#4.#2.#4.#4.#4.#4.#4.#4.#4.#2.#2.#U.#2.#2.#T.#T.#2.#2.#2.#2.#2.#2.#2.#T.#T.#T.#T.#U.#U.#U.#2.#2.#U.#U.#2.#2.#4.#4.#S.#S.#5.#O.#R.#O.#R.#R.#6.#6.#6.#R.#7.#7.#7.#8.#7.#7.#7.#7.#7.#8.#9.#9.#7.a..a#.a..aa.#9.ab.ab.#7.aa.#9.#9.#9.#9.#9.#9.#9.#9.#9.#9.#9.#9.#9.#9.#9.#9.#9.#9.#9.#9.#9.#9.#9.#9.aa.aa.aa.#7.#7.#7.#7.#7.#7.#R.#O.#O.#O.#O.#O.#4.#4.#4.#4.#4.ac.ac.ad.ad.ac.#U.ad.ad.ad.ad.ac.#4.#O.#O.#7.#7.aa.ab.#7.#7.#7.#7.#7.#7.#P.#R.#R.#R.#O.#O.#5.#S.#S.#4.#2.#2.#U.#U.#U.#U.#U.#U.#U.#S.#5.#O.#7.a..a..a..a..aa.ae.ae.#9.ae.ae.ae.#9.a..#9.#9.#9.#9.#9.af.af.af.aa.aa.ag.ah.ai.aj.aj.ak.al.ak.am.an.ao.ao.ap.aq.aq.aq.ar.as.as.as.as.as.at.au.av.aw.ax.ax.ax.ay.az.aA.aB.aw.aw.aC.aC.aC.ax.aD.aE.aF.aG.aH.aI.aJ.aK.aL.aM.aK.aN.aI.aK.aO", +".aP.aP.aQ.#d.aR.aS.aT.aU.aV.aW.aX.aY.aZ.aY.a0.a1.a2.a2.a3.a3.a4.a5.a6.a7.a7.a7.a7.a8.a8.a9Qt7Qt7Qt7.b.Qt8.b#.ba.ba.ba.aR.bb.bc.bd.be.bf.bg.bg.bh.bi.bj.bk.bl.bm.bn.bo.bp.#H.#G.bq.bq.bq.bq.br.br.br.bs.bt.bs.bt.#C.#y.bu.bu.#w.bv.bw.bx.by.by.bz.bA.bA.bA.bA.bA.bB.bC.bz.bD.bz.bm.bE.bF.bG.bH.bI.bJ.bK.bL.bM.bN.bO.bO.bP.bQ.bQ.bQ.bR.bP.bS.bT.bU.bM.bM.bV.bV.bM.bV.bV.bV.bW.bX.bY.bZ.b0.bX.b1.b2.bT.b3.bT.bT.b4.b4.b5.b3.b4.bT.bT.bT.b6.b3.b3.b3.b5.b3.b3.b4.b3.b3.b3.b3.b5.b7.b7.b7.bN.b3.b5.b5.b3.b3.b3.b4.b4.b4.b8.bT.b4.b4.b3.b3.b3.b4.b3.b3.b3.b3.b4.b4.b3.b3.b3.b4.bT.b3.b3.b3.bN.b9.b9.bR.c..c..c..c..c#.ca.ca.ca.c#.c..c..ca.ca.ca.ca.ca.ca.cb.cb.cb.cb.cb.cb.cb.cb.cc.cc.cc.cc.cb.cc.cc.cc.cc.cc.cc.cc.cc.cc.cc.cc.cc.cc.cc.cc.cc.cc.cc.cc.cc.cc.cc.cc.cc.cc.cc.cb.cc.cb.cb.cd.cd.c#.c..c#.bR.bR.c..bR.bR.ce.b7.b7.b7.b7.b3.b3.b3.b3.b4.cf.b4.b4.cf.cf.cf.b4.b7.cg.ch.cc.ci.cc.cc.cc.ci.ch.cc.ca.ca.cj.ck.ck.c..cl.b9.b9.b9.cm.b3.b3.b3.b3.b3.cf.cf.cf.cf.b3.cm.cl.ck.ca.ca.ch.ch.cc.cn.cn.cn.cn.cn.ci.ch.ca.cj.ca.ch.ca.cc.cc.cc.co.cp.b5.cq.cr.cs.ct.cu.cv.cw.cv.#8.ah.cx.cy.cz.cA.cB.ak.cC.cD.cE.cF.cF.cE.cG.cH.cI.az.cJ.cK.cL.cM.cN.cJ.cO.cP.cQ.cR.cS.cT.cU.cV.cW.cX.cY.cZ.c0.c1.c2.c3.c4.c5.c6.c7.c8.c9", +".d..d..d#.da.db.dc.dd.de.df.dgQtX.dhQt5.dh.aQQt2.di.dj.dk.dl.dm.dn.do.dp.dq.dr.ds.dp.dt.dt.a0.du.dv.dv.dw.dx.dlQt2Qt2.dl.a5Qt7Qt7Qt7Qt7.aQ.#e.dy.dy.dz.#e.dA.dA.dA.dB.dC.dD.dE.dC.dF.dF.dF.dE.dF.dG.dH.dI.dJ.dK.dL.bf.dM.dM.dN.dO.dP.dQ.dQ.dR.dS.dT.dT.dU.dU.dV.#b.dW.dI.dX.#f.dB.#g.dQ.dY.dZ.bG.d0.d1.d2.d3.d4.d5.bQ.d6.b4.b4.d4.bN.bQ.bN.b4.d7.d8.d9.d8.bV.bV.e..bV.e#.ea.eb.ec.ed.ee.ef.bW.bU.bU.bU.bU.bU.bU.bU.bU.bU.eg.bV.bW.bW.eh.bV.ei.bU.bU.b2.bU.ei.ei.bV.bV.ei.bU.bU.bU.eg.bU.b2.bV.bU.bU.bU.bU.bU.ej.ej.bV.bV.bV.b2.bU.bU.bU.bV.ei.eg.eg.ei.eg.bU.b2.b2.bU.bU.bU.ei.b4.b4.b3.b3.bN.b9.bR.b9.b9.bP.bR.c..cj.c..bR.bP.bP.bR.c..bR.c..c..c..cj.cj.ck.cj.cj.cj.cj.cj.cj.cj.cj.cj.ek.el.el.em.cj.cj.cj.cj.cj.cj.em.em.em.em.cj.el.cj.cj.cj.cj.cj.cj.cj.cj.cj.cj.cj.el.em.el.cj.c..bR.bR.bR.bR.bR.bR.d5.en.bN.b4.b4.b4.b6.bU.bU.eo.ep.eo.bU.bU.bU.bU.d7.ej.ej.bU.bU.b7.bR.cj.em.ek.cj.cj.em.cc.cj.ek.bR.bR.bR.d5.bR.b9.bN.b3.b4.b4.b4.b4.bT.bU.bU.bU.bU.bU.bU.bU.b4.bN.bR.bR.bR.bO.cj.ch.eq.eq.eq.eq.eq.eq.el.cg.ce.ce.ck.el.em.em.er.#Z.es.eg.et.eu.ev.cn.ct.cu.cu.cu.ew.ex.#8.ey.ah.cy.cz.cz.cA.ez.eA.eB.eC.eB.cG.eD.eE.eF.au.eG.eH.eI.eF.au.eJ.eK.eL.eM.dq.cT.eN.eO.eP.eQ.eR.eS.eT.eU.eV.eW.eX.eY.eZ.e0.e1.eS", +".d..d..e2.e3.e4.e5.e6.ak.e7.du.e8.dJ.e9.dw.f..dW.##.#l.f#.fa.fb.fc.do.fdQtN.d..#.Qt9.fe.#g.dh.ff.fg.fh.fi.fj.fk.fl.fm.#.Qt9.fn.fo.dE.dL.#j.fp.#h.fq.fr.fs.fb.dZ.#i.ft.#o.fu.#o.#i.dH.fv.fv.fw.fx.#k.fy.#p.fz.fA.fe.fe.#l.aP.fB.fp.fC.#i.fD.fs.#l.dX.#h.#i.aQ.#..#..fE.fF.#D.fG.#l.#I.#o.#p.fb.bm.fH.fI.d2.fJ.fK.fL.fM.fN.fO.fO.fN.fP.bQ.fQ.fR.d7.d9.fS.fT.d8.d3.e..e..bW.ea.fU.ed.fV.ed.eb.bW.bU.bU.b2.bM.b2.bV.b1.bV.bV.bV.fW.fX.fY.bX.ea.fZ.ea.ea.ea.ea.fS.ea.ea.ea.fZ.d8.d8.bW.fZ.fZ.ea.ea.fZ.bV.b2.b2.ei.bV.bV.f0.f0.f0.b1.bV.b2.bM.b1.f0.b1.b1.f0.bV.bV.b1.b1.bV.bU.b2.bV.b2.b2.b2.bU.b4.b5.b5.b3.bT.b4.b5.b5.b5.b5.b4.b4.b4.b5.b5.b5.bN.bN.bN.bN.bN.bN.bN.bP.bP.bP.bN.bN.bQ.bP.bR.bQ.d5.bR.bR.bQ.bQ.bN.bQ.bQ.bQ.bR.bO.c#.c#.bP.bR.bP.bP.bP.bP.bP.b9.bN.bO.c#.c#.bO.bO.bO.bO.bR.bP.bQ.bN.bN.bQ.bQ.bQ.bN.bN.d4.bT.bU.bU.bU.bM.b2.f1.f1.bU.bM.bV.bV.bV.b1.b1.bV.bV.bV.f1.b5.bR.cj.bO.bR.bO.co.cb.cj.bR.bP.bN.bN.bN.bN.b5.b4.b4.bT.f1.bU.bU.b2.bM.b2.bV.bV.bV.bM.bU.bU.b4.bN.bP.bR.bO.cj.cj.cc.cc.co.em.cc.em.bR.bQ.bN.bN.bO.ek.ek.f2.f3.fQ.ep.f4.f5.f6.f7.co.f8.f9.f9.g..g#.f9.ga.gb.gb.#6.#6.#8.a#.gc.gd.cB.ak.ak.cF.ge.gf.dO.gg.gh.gi.gj.gk.gl.gm.gn.go.gp.gq.gr.gs.gt.gu.gv.gw.gx.gy.gz.gA.gB.gC.gA.gD.gE.gF.gG", +".fw.fw.gH.gI.gJ.gK.gL.gM.gN.gO.gP.gQQty.gR.gS.dB.dI.#p.gT.do.gU.gV.a0.gW.gX.#F.#F.fu.gY.fpQtB.e8.gZQtD.fg.#c.dp.#i.g0.g1.fb.g2.g3.g4.g5.g6.g7.g8.g9.h..h#.ha.hb.#A.hc.hd.he.ha.fF.hd.hc.hf.#I.fe.h#.hg.hh.hi.hc.gY.hj.hk.hl.hm.hn.ho.hp.hq.hr.hs.hj.fC.ht.dU.hu.dL.hv.hw.bH.fv.#s.ht.h..hx.#E.bl.#L.hy.hz.fJ.hA.hB.fM.fN.hC.hC.fN.fM.hB.fM.fN.bM.d8.hD.hD.fT.d8.d8.d8.fS.hE.hF.hG.hH.hI.bY.fS.bM.b2.b1.b1.d8.hJ.hJ.hJ.d8.fZ.hK.hL.b0.hE.hE.hE.b0.b0.b0.b0.hM.hL.bL.hK.bX.fS.fS.hK.hK.bL.hE.bL.fS.b1.bM.bM.b1.b1.d8.f0.f0.f0.b1.b1.bV.bV.b1.f0.f0.f0.bW.b1.bV.bV.b1.bV.bU.bU.b2.b2.bM.bV.bU.bU.b4.b4.b4.bT.b4.b4.b4.b4.bT.bT.b4.d4.b5.b4.b5.b5.b5.b5.b5.bN.bN.bN.bN.bP.bP.bQ.bN.bN.bQ.bQ.bQ.bQ.bQ.bQ.bQ.bN.bN.bN.bN.bN.bQ.c..c#.bR.bR.bR.bR.bR.bR.bR.bP.bN.bN.bP.bP.bR.bQ.bQ.bN.bQ.bN.bN.bN.d4.b4.b4.b4.b4.b4.b4.f1.bU.bM.bM.bV.bV.bV.bM.bM.bV.d8.bW.bW.bW.bW.fZ.bW.bW.bW.bV.bU.b4.bQ.bN.bN.bN.bR.bR.bP.bN.b3.b4.b4.b4.bT.bU.f1.bU.b2.bV.b1.b2.bM.bV.bM.bV.bV.bV.bV.bU.b2.bU.d4.bN.bP.bR.cj.cj.cc.cc.em.cc.cc.cc.c#.bP.bQ.bR.bO.bO.bO.bO.bR.b7.hN.hO.hP.hQ.hR.ek.hS.g..g..g#.cc.hS.hS.g..f9.f9.ga.#5.hT.#8.gc.hU.cA.cA.cF.hV.hW.hu.aQ.a5.hX.gW.dU.hY.gW.g2.fEQt4.hZQt4.aQ.h0.h1.h2.h3.h4.h5.h6.h7.h8.h9.i..h6.i#.ia.ib", +".ic.ic.#g.id.ie.eD.if.ig.ao.ihQtQQtP.ii.ij.aY.ik.il.ij.fc.do.dV.fj.imQt7.dI.#g.#i.fq.dU.e2.in.io.ip.f.QtG.e2Qt9.dL.iq.dK.#o.fr.hu.ir.ir.gH.is.dH.hq.g0.#m.it.iu.#v.iv.g8.iw.#I.g8.ir.bl.bD.dZ.dY.#I.hb.ix.#I.fy.#I.iy.iz.g5.#z.#E.dJ.iA.g8.iB.iC.gZ.#z.iD.iE.fE.iE.fE.iF.bE.bj.iG.iH.bn.iI.g8.bn.iJ.hz.iK.fJ.fN.fM.fM.fM.fP.fP.d4.bS.bS.d4.b4.f1.bM.b1.d8.d8.d8.bW.bW.fZ.fX.bZ.iL.iM.fU.hE.fZ.b1.bV.bV.bV.d8.bW.d8.bW.b1.bW.fZ.ea.fS.fS.fS.hK.hL.hE.hK.hK.bX.fS.fZ.hJ.d8.d8.bW.d9.d9.fS.fS.fS.d8.bM.bM.fO.bM.bM.bM.d3.e..bM.bM.iN.b1.bM.bM.bM.d8.d8.d8.iN.bM.bM.bM.bM.b2.b2.b2.bM.bM.bM.b2.b2.f1.f1.bT.bT.fP.bT.bT.f1.bT.fP.d4.b5.b5.d4.b5.b5.bQ.bS.bS.bQ.iO.bQ.fQ.iP.cp.iP.bQ.bQ.iQ.bP.iQ.iQ.iP.bO.bO.bR.bP.bP.bR.bR.ek.ek.ek.ek.ek.ek.ek.ek.ek.cj.ek.ek.cg.bO.ek.ek.bO.bO.bR.bR.bR.bR.bR.bP.bN.b5.d4.b5.bN.d4.b4.b4.bT.f1.f1.bU.bU.bU.bU.bM.bM.bV.e..e..e..d8.bV.bV.b1.bV.bU.bT.bN.bN.bQ.bQ.bR.bR.bR.bQ.bN.bN.bN.b5.b4.b4.b4.b4.f1.bU.bM.b2.bM.bV.bM.bV.bV.bV.bV.bM.bV.bM.bU.b4.b4.bN.bR.c#.co.cj.cj.cj.cj.cj.ek.bO.bO.bO.bO.bR.bQ.d5.b9.cm.hN.iR.iS.iT.f7.ek.cb.cc.cc.cc.co.co.co.cc.hS.hS.g#.f9.ga.hT.#8.ah.ah.iU.cA.ge.iV.g3.gg.il.g2.gW.iW.iW.fn.iX.fn.fn.fn.iW.iY.iZ.cC.i0.i1.i2.i3.i4.i5.i1.i6.i4.i4.i7.i8.i9", +".fs.fs.fq.fD.j..j#.ja.jb.jc.jd.ih.je.dv.dv.jf.jg.jh.fd.ji.dt.a7.jj.jk.a7Qt7.gS.jl.g3.ap.ap.ge.ge.jm.hV.dT.dE.dO.dF.gn.jn.jo.bh.jp.dD.jq.jr.js.js.jt.g8.dO.ju.#3.bE.bs.jv.jp.bl.bm.jv.jw.jv.jv.iH.jx.jy.jz.bn.jA.bo.bm.#L.jB.jC.bz.bk.bn.jD.jE.#v.bk.jF.d0.jG.jH.jH.jI.jJ.jt.jt.iF.jK.jw.bp.jF.jL.jM.jN.jO.jP.fO.fN.jQ.fN.fN.fN.fN.jQ.fN.fN.f1.jR.bM.fJ.hJ.hD.jS.iK.iK.hK.hE.jT.bZ.bZ.bY.hE.bX.fS.fS.fS.fZ.fS.fS.fS.fS.fS.fS.fS.fS.jS.fS.jS.hK.jU.bL.hK.hK.jS.fS.fZ.hJ.hJ.d8.hJ.d8.d8.bW.bW.d8.d8.b1.b1.b1.b1.b1.b1.b1.b1.b1.b1.d8.bW.d8.d8.d8.bW.bW.bW.b1.b1.b1.b1.b1.b1.b1.b1.b1.b1.b1.b1.b1.b1.bV.b2.f1.f1.bT.f1.jV.f1.fP.fP.d4.d4.d4.d4.d4.bS.bS.bS.d4.bS.fM.bQ.iP.iP.bQ.bQ.fQ.bQ.bQ.bQ.iP.iP.iP.iP.bQ.bS.bQ.iP.bQ.iP.iP.iQ.iQ.iQ.iP.iP.cp.bO.bO.cp.cp.iP.iP.iQ.iP.iP.bQ.bQ.bQ.bQ.bQ.bQ.fM.d4.fN.fN.fN.fR.fN.f1.f1.f1.jR.fO.bM.bM.d3.fJ.d8.fJ.d8.d8.hD.hD.fS.fS.fS.fS.hD.d8.bM.f1.b4.bN.bN.bQ.bQ.bQ.bQ.bN.bN.d4.d4.b4.b4.f1.f1.f1.bM.bM.bM.bV.b1.bV.d8.d8.d8.d8.d8.d8.d8.d8.bM.bM.f1.d4.bQ.iP.bO.bO.bO.bO.bO.cp.iP.iP.iQ.iP.bN.bN.bQ.bN.b7.jW.cf.eo.eo.d4.iQ.bO.bO.c#.ek.bO.jX.co.co.co.co.jY.hS.f9.f9.#5.#6.jZ.jZ.a#.ah.gt.al.h0.h0.h0.ge.j0.j1.j0.ap.j2.j2.j2.j3.j3.j3.j2.cF.j4.ar.ar.ar.j5.j5.j6.j6.j7.as.j7.as", +".fB.fB.j8.bg.j9.hq.fb.k..k#.fr.dy.#.Qt9Qt9.dz.dz.ka.dz.dz.dA.jc.#e.kb.bf.dQ.dQ.dF.gk.#R.hT.#R.#S.kc.#3.#W.kd.jy.#0.kd.ke.kf.kg.kh.ki.ki.hC.fO.kj.kk.kl.jB.km.jL.jL.kn.kn.bI.ko.ko.kp.kq.kr.ks.kt.kr.kp.bJ.bJ.ku.kv.kp.kp.kt.kq.kw.kq.kr.kx.bJ.bI.ky.bI.kz.bH.kA.kA.d0.kB.kC.kC.d0.kl.kD.kE.kF.kG.kH.kH.kI.iK.kJ.kK.jR.hC.jR.hC.kK.jR.jR.kK.jR.hC.kJ.d3.kL.kM.hz.d2.d2.hK.kN.jU.jU.jU.jU.kN.hK.iK.iK.jS.jS.jS.jS.jS.iK.hz.hz.hz.iK.jS.jS.jS.iK.iK.iK.iK.iK.hz.hD.hD.hD.hD.hD.jP.jP.hD.fS.hD.hD.hD.hD.hD.hD.hD.hD.hD.hD.hD.hD.hD.fS.fS.hD.fS.hD.jP.hD.hD.fS.fS.fS.hD.hD.hD.kM.hD.hD.hD.fS.hz.fS.hD.hD.fT.fJ.fJ.d3.d3.d3.d3.fO.fO.fO.fO.fO.fO.jR.jR.jR.fO.f1.f1.ep.d4.d4.fP.fR.ep.fR.ep.fR.fR.fR.fR.fR.fR.ep.fR.fR.fR.fR.fR.d4.fM.d4.d4.d4.d4.d4.fM.d4.d4.d4.d4.d4.d4.d4.d4.fR.d4.d4.fR.fR.fR.ep.fR.kK.jR.jR.kK.jR.jR.jR.kJ.kJ.d3.d3.kL.fT.kL.fT.fT.hD.hD.hD.hD.hz.hz.hz.kO.hz.hz.fT.kL.d3.jR.kK.kP.fR.fR.fR.fR.kK.kK.jR.jR.fO.kJ.d3.d3.d3.kL.fT.fT.fT.fT.hD.hz.kM.kM.hz.hz.hz.hz.kM.fT.kQ.jR.kK.fR.fR.d4.fM.d4.d4.fK.fK.fK.fK.fK.fR.fR.fK.jQ.fR.ep.ep.f1.fN.fR.fM.d6.d6.fQ.fQ.fQ.fL.fL.cp.cp.#Z.#Y.f2.jY.er.er.#U.#2.#2.#2.#5.#6.#6.#6.a..a..a..#9.ae.kR.gt.gt.kS.kT.kT.ak.am.j0.j0.j0.kU.kU.j0.kU.kU.kU.kU.kV.kW.kX.ap", +".#j.fe.dQ.iE.dU.kY.jd.jd.aV.aV.kZ.k0Qt3.k0Qt2.aVQt3.k1Qt8Qt8Qt8.aQ.dy.dA.#e.#d.dU.k2.kR.k3.k4.jr.gl.gl.gk.dF.dF.dD.k5.dD.gk.dD.ju.jK.iu.jK.#W.jo.jo.jo.#X.iA.iH.iH.iH.iH.g9.k6.bn.bn.bp.k7.k7.bn.bn.k7.bm.k8.k9.jv.bn.bm.bl.bn.bF.k7.k7.bn.bm.bm.g9.iq.iH.jp.iG.jt.it.dZ.bk.jw.iq.jw.dZ.bk.bE.jx.iH.iu.jK.k5.jq.gn.jr.gl.gl.gl.gl.gl.gl.dT.l..l#.gl.jq.dF.dF.dD.dD.k5.js.js.la.lb.jn.jn.jn.jn.jn.lb.gk.k5.lb.#P.jn.#R.lc.#P.ld.lb.lb.gk.lc.lc.lc.ld.ld.ld.lc.jq.jq.jq.jq.jq.jq.jq.jq.jq.jq.lc.lc.jq.jq.jq.jq.jq.jq.jq.jq.dF.gk.lc.jq.gl.jq.jq.jq.jq.jq.lc.lc.lc.lc.jq.jq.jq.jq.jq.lc.lc.jq.lc.lc.jq.jq.gl.jr.jr.jr.jr.jr.gn.gn.gn.gn.gn.gn.l..l..gn.gn.gn.l..l..l..l..l..l..l..l..l..l..l..l..l..l..l..l..l..le.l..l..l..dT.dT.k2.l..l..l..k2.k2.l..l..k2.k2.le.l..l..le.le.le.le.l..l..l..l..l..l..l..l..l..jr.jr.gl.gl.gl.gl.gl.gl.jr.jr.jr.gf.gf.lc.gf.lc.lc.#P.lc.lc.#P.lc.gf.gl.lf.l..le.lg.le.lg.lg.lg.le.le.le.l..lf.lf.lf.lf.lf.jr.jr.gl.gf.gf.gf.lc.lc.lc.gf.lc.#P.lc.jq.gl.gl.l..l..k2.lh.lh.lh.lh.k2.k2.lh.hY.lh.lh.lh.lh.hY.li.li.lh.lh.lh.k2.lh.k2.lh.lh.lh.lh.lh.hY.lh.hY.lj.lj.gm.gm.gm.lk.ll.lk.lk.hV.hV.lm.kU.lm.kU.kV.kV.kV.kV.ln.ln.ln.iX.iX.iX.iX.fa.lo.lo.lo.lp.lp.lp.lp.lq.a2.a2.a2.lr.ls.lp.lp", +".aP.#l.dY.ji.lt.lt.lu.lu.lu.lt.lv.lv.lw.lw.lw.lw.lu.lx.lw.ly.lz.lv.lt.lw.lw.lz.lA.lA.lA.lA.aw.lB.lB.lB.lB.lw.lA.lu.lw.lC.lD.lw.lt.lt.lt.lt.lt.lt.lt.lB.lA.lz.lz.lw.lA.lE.lF.lG.lF.lH.lv.ly.ly.lt.lt.lI.lw.lw.lw.lC.lz.ly.lt.lt.lB.lB.lJ.ly.lw.lw.lt.lI.aA.lK.lL.lt.lv.lM.lt.ly.lB.lv.lN.lN.lO.aA.lD.lw.lM.lP.lQ.lP.lP.lR.lP.lS.lR.lM.lS.ly.lI.lR.lT.lT.lU.lS.lR.lV.lR.lW.lW.lW.lR.lP.lR.lP.lP.lP.lR.lM.lX.lP.lJ.lV.lR.lP.lP.lY.lM.lM.lM.lM.lM.lM.lR.lR.lM.lP.lP.lR.lR.lM.lM.lM.lM.lM.lM.lS.lS.lM.lS.lS.lP.lP.lP.lP.lP.lS.lS.lM.lS.lP.lM.lR.lM.lP.lP.lP.lR.lR.lM.lM.lS.lS.lP.lP.lP.lR.lR.lR.lV.lQ.lQ.lV.lR.lV.lV.lV.lV.lV.lU.lZ.lZ.lV.lV.lU.lT.lT.lZ.lZ.lU.lT.lV.lV.lV.lU.lV.lV.lZ.lT.lT.lZ.lT.lT.lT.lT.lT.lT.lZ.lT.lV.lV.lU.lU.lU.lU.lV.lV.lV.lU.lU.lV.lU.lU.lU.lV.lV.lV.lT.lT.lT.lZ.lZ.lV.lV.lT.lV.lU.lU.lU.lV.lV.lV.lV.lV.lV.lV.lV.lT.lT.lV.lV.lV.lV.lV.lV.lV.lV.lU.lV.lV.lV.lV.lV.lV.lV.lU.lV.lT.lT.lZ.lT.lV.lV.lU.lU.lV.lV.lV.lV.lV.lV.lV.lV.lV.lV.lV.lV.lV.lV.lV.lV.lV.lV.lV.lV.lV.lV.lV.lV.lV.lV.lV.lV.lV.lV.l0.l0.l0.l1.l1.l1.l0.l0.lZ.l1.l1.l1.l0.l1.l1.l1.l1.l1.l1.lT.l0.l1.l0.l0.l1.l1.l1.l1.l1.l1.l0.lT.l1.l1.l1.l0.l1.l1.l0.l0.l0.l1.l1.l0.l0.l2.l0.l0.l0.l2.l0.l0.l0.l0.l0.l3.l0.l0.l0.l0.l0.l0.l0.l1.l0", +".l4.aP.fw.l5.l6.l7.l8.l9.m..m#.ma.mb.mc.mc.md.me.lI.mf.mg.l2.mh.mi.mj.mk.mb.ml.mm.m#.mn.mo.mp.mm.mb.mq.md.mr.ms.mb.mk.mt.mu.mv.me.mw.md.md.md.me.md.mw.ms.mk.mk.mx.my.mz.mA.mB.mC.mD.mE.mF.mw.mb.ml.mk.mk.mk.mG.mH.mI.mm.m#.mI.md.mJ.mK.mL.mc.mk.mk.mM.mN.cS.mO.mP.mQ.mR.mq.mw.mb.ms.mk.mk.l6.mS.mT.mU.mI.md.md.mV.mW.mX.mk.ms.mk.mk.mb.mh.mY.mm.mZ.mV.m0.mv.mm.md.m1.md.md.mk.mx.m2.m2.m3.mm.lX.mG.mW.md.mt.mW.mb.mx.mk.m2.m2.m2.m2.m2.m2.m2.m2.m2.m2.m2.m2.m2.m2.m2.m3.m2.m2.m2.m2.m2.m2.m2.m3.m3.m3.m2.m2.m2.m2.m2.m3.m3.m3.m3.m2.m2.m2.m2.m2.m2.m2.m2.m2.m3.m3.m2.m2.m2.m2.m2.m2.m2.m2.m2.m2.m2.m2.m2.m2.m2.m2.m2.m2.m2.m2.m2.m2.m2.m2.m2.m2.m2.m2.m2.m2.m2.m2.mx.m2.m2.m2.m2.m2.mx.m2.m2.m2.m2.m2.m2.m2.m2.m2.m2.m2.m2.m2.m2.m2.m2.m2.m2.m2.m2.m2.m2.m2.m2.m2.m2.m2.m4.m4.m4.m4.m5.m4.m4.m4.m4.m6.m6.m6.m6.m6.m6.m6.m6.m6.m6.m6.m6.m6.m6.m6.m6.m6.m6.m7.m6.m6.m7.m6.m6.m6.m7.m6.m6.m6.m6.m4.m4.m4.m4.m4.m4.m4.m6.m6.m6.m6.m6.m6.m6.m6.m6.m6.m6.m6.m6.m6.m6.m6.m6.m7.m6.m6.m7.m4.m4.m6.m6.m4.m6.m4.m4.m4.m4.m4.m4.m4.m4.m4.m4.m4.m4.m4.m4.m4.m4.m4.m4.m4.m4.m4.m4.m4.m4.m4.m4.m4.m4.m4.m4.m4.m4.m4.m3.m3.m3.m3.m3.m3.m3.m3.m3.m3.m3.m3.m3.m3.m3.m3.m3.m3.m3.m3.m3.m3.m3.m2.m3.m3.m2.m2.m2.m3.m4.m4.m4.m3.l6.m8.m9", +".fv.#m.ic.n..n#.na.nb.nc.nd.ne.nf.ng.nh.ni.nj.nk.nl.nm.nn.no.np.nq.nr.ns.nt.nh.nu.nv.nw.nf.nx.ny.nz.nA.nB.nC.nD.nj.nE.nF.nG.nH.nI.nJ.nK.nL.nM.nN.nL.nO.nC.nD.nD.nP.nQ.nR.nS.nT.nU.nV.nW.nX.nY.nZ.n0.n1.n2.n3.n4.n5.nK.n6.n7.n8.nN.n9.o..o#.oa.ob.n1.oc.od.oe.n6.of.og.oh.nM.oi.oj.nC.n3.nD.n3.ok.ol.nH.om.on.oo.op.o..oq.or.ns.nD.ob.os.ol.ot.ou.ov.ow.ox.nx.of.oy.oz.nN.oA.nZ.nC.ns.ni.n#.oB.nw.n8.n5.nc.ol.oC.nO.oD.nD.nD.nD.nD.nD.nD.nD.nD.nD.nD.nD.nD.nD.nD.nD.nD.nD.nD.nD.nD.nD.nD.nD.nD.nD.nD.nD.nD.nD.nD.nD.nD.nD.nD.nD.oE.oE.oE.oE.oE.ns.ns.ns.ns.ns.ns.ns.ns.ns.ns.ns.ns.ns.ns.ns.ns.ns.ns.ns.ns.ns.ns.ns.ns.ns.ns.ns.ns.ns.ns.ns.ns.ns.ns.ns.ns.ns.ns.ns.ns.ns.ns.ns.ns.ns.ns.ns.ns.ns.ns.ns.ns.ns.ns.ns.ns.ns.ns.ns.ns.ns.ns.ns.ns.ns.ns.ns.ns.ns.ns.ns.ns.ns.ns.ns.ns.ns.ns.ns.ns.ns.ns.ns.ns.ns.ns.ns.ns.ns.ns.ns.ns.ns.ns.ns.ns.ns.ns.ns.ns.ns.ns.ns.ns.ns.ns.ns.ns.ns.ns.ns.ns.ns.ns.ns.ns.ns.ns.ns.ns.ns.ns.ns.ns.ns.ns.ns.ns.ns.ns.ns.n#.n#.n#.n#.n#.ns.ns.n#.n#.n#.n#.n#.n#.n#.n#.n#.n#.n#.n#.n#.n#.n#.n#.n#.n#.n#.n#.n#.n#.n#.n#.n#.n#.n#.n#.n#.n#.n#.n#.n#.n#.n#.n#.n#.n#.n#.n#.n#.n#.n#.n#.n#.n#.n#.n#.n#.n#.n#.n#.n#.n#.n#.n#.n#.n#.n#.n#.n#.n#.n#.n#.n#.n#.n#.n#.n#.oF.n#.n#.n#.n#.ns.ns.oF.oF", +".fv.fv.fs.oG.nD.oH.oI.oi.np.oJ.oK.oL.oM.oN.nt.mQ.fc.oO.n6.oP.oQ.oR.oS.n1.oT.oU.ob.oV.oW.oX.oY.oZ.o0.o1.o2.o3.o4.oN.o5.mH.no.o6.o7.o8.o0.o9.p..o0.p#.pa.pb.o5.pc.pd.pe.pf.pg.ph.pi.pj.pk.pl.pm.pn.nh.oM.oN.o5.po.pp.pq.pr.ps.pt.o1.pu.pu.pv.ng.o5.oN.pw.px.py.pz.nb.pA.pB.pB.pC.pD.pE.nt.o5.o5.pF.nx.pG.o8.ow.pH.pH.pI.pJ.pK.pL.pM.pM.pN.pO.pP.pQ.pR.o8.pS.pT.o0.nb.nb.p..pU.pV.pW.n1.nt.n3.pX.pY.n6.pR.pZ.np.pR.p0.p1.p2.nh.pM.nh.pM.pM.pM.nh.nh.nh.nh.nh.nh.nh.nh.nh.nh.nh.nh.nh.nh.nh.nh.nh.nh.nh.nh.nh.nh.nh.nh.nh.nh.nh.nh.nh.nh.nh.nh.nh.nh.nh.nh.nh.nh.nh.nh.nh.nh.nh.nh.nh.nh.nh.nh.nh.nh.nh.nh.nh.nh.nh.nh.nh.nh.nh.nh.nh.nh.nh.nh.nh.nh.nh.nh.nh.nh.nh.nh.nh.nh.nh.nh.nh.nh.nh.nh.nh.nh.nh.nh.nh.nh.p3.p3.p3.p3.p3.o4.o4.o4.o4.o4.o4.o4.o4.o4.o4.o4.o4.o4.o4.o4.o4.o4.o4.o4.o4.o4.o4.o4.o4.o4.o4.o4.o4.o4.o4.o4.o4.o4.o4.o4.o4.o4.o4.o4.o4.o4.o4.o4.o4.o4.o4.o4.o4.o4.o4.o4.o4.o4.o4.o4.o4.o4.o4.o4.o4.o4.o4.o4.o4.o4.o4.o4.o4.o4.o4.o4.o4.o4.o4.o4.o4.o4.o4.o4.o4.o4.o4.o4.o4.o4.o4.o4.o4.o4.o4.o4.o4.o4.o4.o4.o4.o4.o4.o4.o4.o4.o4.o4.o4.o4.o4.o4.o4.o4.o4.o4.o4.o4.o4.o4.o4.o4.o4.o4.o4.o4.o4.o4.o4.o4.o4.o4.o4.o4.o4.o4.ob.ob.ob.ob.ob.ob.ob.ob.ob.ob.ob.ob.ob.ob.ob.ob.ob.ob.ob.ob.ob.ob.ob.ob.n1.p4.p4", +".p5.bA.#k.oG.p6.p7.p8.p9.nK.ou.nN.ng.oM.pM.o5.mn.q..q#.nA.qa.oo.qb.qc.nD.ni.nt.n3.qd.qe.oD.nM.ou.qf.qf.oD.qg.nD.nh.o4.lx.nz.qh.qi.qj.nN.nN.n..qk.nI.ql.qg.qm.qn.qo.qp.qq.qr.qs.qt.qu.qv.qw.oi.qx.nD.nt.nh.p3.p7.nI.on.qy.qz.qf.nL.on.nL.pK.qA.ni.nt.qB.qC.qD.qE.qF.nA.nA.nL.qG.qi.nh.p3.p3.nh.nD.mO.nA.ou.qH.qI.qJ.nK.qK.ng.ob.o5.p3.ni.qL.qI.nN.qM.qN.nL.qO.pK.qP.qQ.pR.qR.qS.qA.n1.nh.ni.qT.qU.qV.qW.oA.qX.n7.qY.pW.n1.nh.nh.p3.p3.p3.p3.p3.p3.p3.p3.p3.p3.p3.p3.n3.n3.n3.n3.n3.n3.n3.n3.n3.n3.ob.n3.ob.ob.ob.n3.n3.ob.ob.ob.n3.n3.ob.ob.ob.n3.ob.ob.ob.ob.ob.ob.n3.ob.ob.n3.n3.ob.n3.ob.ob.ob.n1.n1.qZ.n2.n2.n1.n1.n1.ob.n1.ob.ob.ob.ob.ob.ob.ob.ob.ob.ob.ob.ob.ob.ob.ob.ob.ob.ob.ob.ob.ob.ob.ob.ob.ob.nD.nD.ob.ob.ob.n3.n3.ob.ob.ob.n3.ob.ob.ob.ob.n3.n3.n3.n3.n3.n1.ob.ob.ob.n1.ob.ob.ob.ob.ob.ob.ob.ob.ob.ob.ob.ob.ob.ob.ob.ob.ob.ob.ob.ob.ob.ob.n1.n1.ob.nD.n1.ob.ob.n3.n3.ob.ob.ob.ob.ob.n3.ob.ob.ob.ob.ob.ob.ob.ob.ob.ob.ob.ob.ob.ob.ob.ob.ob.ob.ob.ob.ob.ob.ob.ob.ob.ob.ob.ob.ob.ob.ob.ob.ob.ob.ob.ob.ob.ob.ob.ob.ob.q0.ob.ob.ob.ob.q0.ob.ob.ob.ob.ob.ob.ob.ob.ob.ob.ob.q0.ob.ob.ob.ob.ob.ob.ob.ob.ob.ob.ob.ob.ob.ob.ob.ob.ob.ob.ob.ob.ob.ob.ob.ob.ob.ob.ob.ob.ob.ob.ob.ob.ob.ob.ob.ob.ob.ob.ob.ob.ob.ns.pL", +".p5.bA.q1.q2.nD.p3.o4.nh.nh.n2.n2.ni.nt.nt.o5.q3.ni.nj.nj.nj.nD.p3.nt.nt.nt.nt.nt.nt.nj.ni.nD.nj.ni.nD.nj.nt.nt.nt.nt.nt.ni.nD.nj.ni.nD.n3.qj.qf.nt.nD.q4.q5.q6.q7.q8.q9.r..r#.ra.rb.rc.rd.re.rf.nt.nt.nt.ni.nt.ni.nD.nD.ni.n3.n3.nE.nE.nj.nj.ni.nj.rg.rh.nE.n3.n3.n3.nE.n3.n3.n3.nD.nj.nD.p3.nD.n3.ns.n3.n3.n3.n3.n3.nD.nD.nD.nD.nD.nj.n3.oE.ob.ob.nD.n3.n3.n3.pF.ri.on.or.pL.n1.nD.nD.ni.nj.n3.n3.nD.oE.oE.or.rj.n3.nD.nD.nD.nD.nD.nD.nD.nD.nD.nD.nD.nD.nD.nD.nD.nD.nD.nD.nD.nD.nD.nD.nD.nD.nD.nD.nD.nD.nD.nD.nD.nD.nD.nD.nD.nD.nD.nD.nD.nD.nD.nD.nD.nD.nD.nD.nD.nD.nD.nD.nD.nD.nD.nD.nD.nD.p3.nD.n1.n2.rk.n2.p3.o4.o4.n1.o4.o4.qZ.qZ.qZ.qZ.qZ.rl.rl.rl.rl.rl.rl.rl.rl.rl.rl.rl.rl.rl.rl.rl.rl.rl.rl.ob.n3.n3.nD.ns.n1.ob.oE.oE.ns.ns.ns.oE.oE.ns.ns.ns.ns.ns.oE.n3.ob.ob.ob.ob.ob.ob.ob.ob.ob.ob.ob.rl.rl.rl.rl.rl.rl.rl.rl.rl.rl.rl.rl.ob.ob.ob.ob.ob.ob.ob.ob.ob.ob.ob.n3.ob.ob.ns.oE.oE.oE.ns.ns.ns.ns.ns.ns.ns.ns.ns.oE.oE.ns.ns.ns.ns.ns.ns.ns.ns.ns.ns.ns.ns.oE.oE.ns.ns.oE.oE.ns.ns.ns.ns.ns.ns.ns.ns.ns.ns.ns.ns.oE.oE.oE.ns.ns.ns.ns.oE.ns.oE.oE.ns.ns.ns.oE.ns.n#.pF.n#.n#.n#.n#.n#.n#.n#.n#.ns.n#.n#.n#.n#.n#.oF.n#.n#.oF.n#.n#.n#.n#.oF.n#.n#.n#.n#.n#.n#.n#.n#.n#.n#.n#.n#.n#.n#.n#.n#.n#.n#.ns.oF.rm", +".#q.#q.dZ.rn.ro.rp.lv.lv.rq.rr.rr.rr.rq.rq.rs.rq.mn.mn.mn.rt.ro.ro.ro.rp.rp.rp.ro.ro.mn.ro.mn.mn.mn.mn.ro.mn.mn.ro.ro.mn.mn.ro.rp.mn.mn.ro.rp.ro.mn.ru.rv.rw.rx.ry.rz.rA.rB.rC.rD.rE.rF.rG.oz.rH.mn.mn.mn.mn.mn.mn.mn.mn.mn.mn.rI.rI.rI.mn.mn.rt.rp.rJ.rK.mn.mn.mn.mn.mn.mn.ro.rp.mn.mn.mn.mn.oH.rL.rM.rL.rM.rM.rN.mn.mn.mn.ro.mn.ro.mn.mn.mn.rO.mn.rt.mn.ro.rP.rQ.rQ.rL.rR.rQ.rQ.rS.oH.rp.mn.mn.rp.mn.mn.ro.ro.lX.lM.ro.rO.rO.rO.rO.rO.rO.rO.rT.rU.rV.rN.rW.rO.rO.rO.rO.rO.rO.rO.rX.rY.rY.rY.rY.rH.rO.rO.rO.rO.rO.rO.rO.rO.mn.mn.mP.mP.mW.mP.mP.mW.mW.mW.rZ.mP.rO.rO.rO.rO.rO.rO.rO.rO.rO.mn.mn.rO.rO.r0.r1.r0.r0.mn.rO.mn.mn.mn.rO.rO.rO.rO.rO.rO.rO.rO.rO.rO.rO.rO.rO.rO.rO.rO.rO.rO.rO.rO.rO.rO.rO.mn.rO.rO.rO.mn.mn.mn.rO.rO.rO.rO.rO.rO.rO.rO.rO.rO.rO.rO.rO.mn.r0.r0.mn.rO.rO.mn.r0.r0.mn.mn.rO.rO.rO.rO.rO.rO.rO.rO.rO.lU.lU.lU.lU.mW.mW.mW.mW.mW.mW.mP.mP.mP.mP.mP.mP.mP.mP.mP.mP.mP.mP.mP.mP.mP.mP.mP.mP.mP.m#.m#.mv.mv.r2.mv.m#.m#.mv.mP.mP.mv.m#.m#.m#.mv.mv.m#.m#.mv.mv.mP.mP.mP.mP.mP.mP.mP.mP.mP.mP.mP.mP.mP.mP.mP.mP.mP.mP.mP.mP.mP.mP.mP.mP.mP.mP.mP.mP.mP.m#.m#.mv.mv.mv.mv.m#.m#.m#.mv.mP.mP.mP.mP.mP.mP.mP.mP.mP.mP.mP.mP.mP.mP.mP.mP.mP.mP.mP.mP.mP.mP.mP.mP.mP.mP.mP.mP.mP.mP.mP.mP.mP.mP.m#.mP", +".g7.#s.aP.ji.r3.r4.r4.mt.r5.mt.mt.mt.r6.r6.r4.r7.l2.r6.r6.r6.r4.r8.r7.r4.r4.r4.r6.r4.r4.r4.r6.r6.r6.r4.r4.r4.r4.r4.r4.r4.r4.r6.r6.r6.r4.r4.r4.r4.r9.s..q6.s#.sa.sb.sc.sd.se.sf.sg.sh.si.sj.sk.l0.sl.sm.sn.r4.r6.l0.l0.r4.sn.mg.mg.mg.mg.mg.mt.r4.mt.so.sp.sq.mg.mg.sm.sm.mt.sr.l0.ss.st.gh.su.gq.fe.sv.sw.sx.sy.sz.sA.su.st.cR.cR.cR.su.su.cT.sB.r4.sr.mt.sC.sD.sE.sF.sG.sH.sI.sI.sJ.sK.sL.sm.sm.sm.sm.sm.sm.mg.sm.sm.sm.mg.sm.mg.mg.sm.mg.gp.sM.lU.sN.sN.sN.sO.sm.mg.mg.sm.mg.mg.sP.sQ.sQ.sQ.sQ.sR.mg.sm.sm.mg.l7.sm.sm.sm.sr.mt.lv.gh.gh.su.su.su.su.su.l8.lz.sr.sr.mt.sr.sr.sr.sr.sr.sm.sm.sm.sm.sm.mg.mg.sl.sl.sl.sl.sl.l7.sl.sl.sS.sS.sS.sS.sS.sS.sS.sS.sS.sS.sS.sS.l7.l7.l7.l7.l7.l7.l7.l7.l7.l7.l7.l7.l7.l7.sm.sm.sm.mg.mg.mg.mg.mg.mg.mg.mg.mg.mg.mg.mg.sm.mg.mg.mg.mS.sS.sS.sS.l7.sS.l7.l7.l7.l7.sS.sS.sS.sS.sS.sS.sS.sS.sS.sS.sS.sS.l7.l7.l7.l7.l7.l7.l7.l7.mS.l7.l7.sm.mg.l7.mg.sT.mg.mg.mg.mg.mg.mg.sU.lR.ss.cR.sV.cS.cS.nF.su.su.sW.r4.sU.lv.su.sV.sV.su.sV.sV.sV.cR.lv.sm.l7.l7.sX.l7.mg.sX.sX.sY.sY.sY.sY.sY.sY.sY.sY.sY.sY.sZ.sZ.sZ.sZ.sU.sU.sU.sZ.sU.sU.mg.lv.sV.ss.ss.s0.s0.ss.cS.ss.l0.sU.sX.sU.sU.sU.sU.sU.sU.sU.sU.sU.sU.sU.sU.sU.sU.sU.sU.sU.sU.sU.sU.sU.sU.sU.sU.sU.sU.sU.sU.sU.sU.sS.l7.sX.sX", +".g7.g7.bD.ji.sm.l3.lU.lZ.l0.s1.s2.s3.s4.s5.r5.r6.l3.l3.r7.r7.r8.l0.r8.r8.r7.lQ.lS.lS.l1.s6.s6.l3.r7.r4.r7.l3.r7.r7.r7.r7.r7.l3.r7.r7.lT.lS.l1.s7.s8.s9.t..t#.ta.tb.tc.td.te.tf.tg.th.ti.tj.tk.ti.tl.tm.tn.to.tp.cU.sB.tq.#a.#j.tr.gQ.gY.ts.tt.tu.r4.tv.tw.tp.cU.tx.ty.s6.r7.l0.sB.cU.lV.l1.lT.cT.tq.tz.tA.tB.tC.tD.tE.cQ.l3.l1.l0.l1.l1.l1.lQ.tF.lQ.tG.aC.tH.tI.tA.tJ.tD.tD.tD.tD.tA.tK.tL.lJ.lJ.tL.tL.tL.lP.lQ.lP.lP.lP.lP.lP.lP.lP.lP.lP.tM.tN.tO.tO.tO.tO.tP.sl.lP.lP.lP.lP.lP.tQ.tO.tO.tO.tO.tR.lP.lP.lP.lP.lP.lS.lJ.lV.s6.l1.aB.lD.r4.lT.l1.r7.r7.l3.lQ.tS.lP.r4.s6.s6.s6.s6.s6.r4.s6.s6.s6.r4.mt.sT.sr.tT.tU.tV.tW.tV.tV.tV.tV.tV.tV.tV.tV.tV.tV.tV.tV.tV.tV.tV.tV.tV.tV.tV.tV.tV.tV.tV.tV.tV.tV.s1.tX.r8.r4.r4.tY.r7.s6.r4.r7.s6.s6.s6.s6.sn.sn.sn.s6.s6.tZ.sr.t0.t1.t2.t3.t4.t4.t4.t4.tW.t4.t4.t4.t4.t4.t4.t5.t5.t5.t5.t5.t5.t5.t5.t5.t5.t5.t5.tT.t5.t6.tT.t4.t7.r7.sl.t8.sn.sn.sm.sm.sm.sl.sn.sm.sl.r4.sm.aB.t9.r7.r7.tG.r7.r7.r7.l1.lD.lt.sm.gi.lS.s6.r7.l3.l3.r7.r7.lP.cQ.lT.sn.lJ.lD.lD.lu.lu.lA.lA.lA.lA.lA.lA.lA.lA.lA.lA.lA.lu.lA.lA.lA.lA.aC.lD.aC.lP.sn.lP.cQ.l1.r7.r7.r7.s6.l3.r4.aC.aC.s6.sm.sm.sm.sm.sm.sm.sm.sm.sm.sm.sm.sm.sm.sm.sm.sm.sm.sm.sm.sm.sm.sm.sm.sm.sm.sm.u..u..u..u..u..u..u#.ua.sX", +".h#.ub.uc.dr.mt.ly.s0.lt.ud.ue.uf.ug.uh.ui.sr.uj.r8.l3.l0.l0.l0.mv.uk.l2.mh.tI.l0.cQ.cT.mh.ro.l1.l3.ul.tG.tG.tG.tG.ul.r7.tY.l1.r7.r7.um.dq.un.uo.up.uq.ur.us.ut.uu.ut.uv.uw.ux.uy.ts.dw.ty.uz.uA.uB.tH.gQQtS.eN.lt.t9.ti.hn.uC.hn.hn.uD.uE.dh.sn.l0.uF.uG.uHQtZ.dr.tt.aB.l1.l1.aB.aB.r7.r7.r7.cU.tp.uI.uJ.uK.uL.uM.uN.lD.l0.cU.cR.aC.lt.l1.r7.tS.uO.l3.uP.uQ.uR.uS.uS.uT.uT.uU.uT.uV.cR.cU.sB.aB.aB.aB.aB.lD.aB.aB.sB.gi.cS.cS.cS.cS.gi.uW.uX.uY.uZ.uZ.uZ.uZ.uZ.u0.cS.cS.cS.cS.cS.u1.uZ.uZ.uZ.uZ.u2.cS.cS.cS.cS.sB.aC.cS.tS.u3.l1.aB.t9.u..t8.u4.tT.l1.sn.tG.tS.lJ.r7.sn.sn.sn.sn.sn.ul.sn.sm.sm.u5.sn.u6.u7.u8.u9.v..v#.v#.va.va.vb.vb.vb.vb.va.vb.vc.vb.vd.ve.ve.ve.vd.va.vb.vb.va.vd.vb.vd.vd.vd.vd.vf.vg.vh.vi.vi.vj.lQ.r4.sm.sX.vk.u..s6.r7.sn.u..sl.sm.sm.sn.sr.sm.vl.vm.vn.vc.v#.v#.v#.v#.va.vb.vb.vb.vb.vo.vb.vp.vd.ve.ve.vd.vb.vb.vb.v..va.vb.va.vb.vq.v#.vr.vs.vt.aw.lJ.lt.lS.lV.sn.u5.vk.sX.sn.sn.l1.l0.cU.lt.sm.s6.s6.r7.r4.sn.r7.aC.lu.s6.aB.vu.tG.vu.tG.u..u..sn.r7.vv.tL.vw.vx.t9.l1.lQ.lV.lQ.lQ.lT.lQ.lV.l1.lV.lQ.lT.l1.lV.lV.lQ.lV.lV.l1.lV.l1.aC.cS.l1.lS.aB.sm.sn.l0.r7.r4.sl.sX.lt.aC.t8.sm.sm.sm.sm.sm.sm.sm.sm.sm.sm.sm.sm.sm.sm.sm.sm.sm.sm.sm.sm.sm.sm.sm.sm.sm.sm.sm.sm.sm.sm.sm.u5.sn.sl.l7", +".#E.#J.#q.dr.r3.lt.lu.r5.vy.vz.vA.vB.vC.vD.lz.vE.uk.l2.r7.r8.uk.mv.l0.l0.oo.vF.sX.cJ.cR.vG.vH.lB.aA.vI.t9.l0.l2.l0.lT.l1.l0.l0.l0.r4QtN.ij.vJ.vK.vL.vM.vN.vO.vP.vQ.vR.vS.vT.vU.tr.uQ.gp.aB.sk.vV.vW.vV.vX.tn.vY.lV.lu.vZ.v0.vV.hx.vX.vV.vVQt6.r4.l0.v1.v2.uBQtZ.lS.vY.sj.cT.l0.cS.aB.l1.l1.sn.uzQtZ.v3.uT.uL.v4.uT.v5.sB.lJ.eN.tj.ty.uW.aC.v6.ty.nF.hj.v7.v8.v9.w..w#.uS.uS.uS.wa.lt.cR.cS.lt.lS.l0.l0.l1.l0.l0.l0.lt.sW.uk.l0.l0.l0.l0.l0.wb.uT.uT.uT.uT.uT.uT.wc.l0.l0.l0.l0.l0.wd.uT.uT.uT.uT.we.l0.l0.l0.l0.lV.lV.lV.lu.cS.lS.sB.lu.mt.r4.wf.wg.wh.lV.l0.cT.lt.l0.lS.cS.lt.r8.r4.r4.r4.l0.lt.vj.r7.s5.wi.wj.wk.wl.wm.wn.wo.wp.wp.wq.wp.wp.wp.wr.ws.wq.wr.wt.wu.wt.wv.wp.ww.wq.wp.wp.wp.wo.wx.wy.wz.wA.wB.wC.lu.sB.t9.lQ.r7.lQ.lu.t9.tU.r8.ul.wD.uW.cU.l0.sm.sm.sn.sm.wE.wF.wG.wH.wH.wI.wq.wJ.wK.wL.wL.wL.wL.wM.wN.wp.wO.wP.wu.wu.wK.wQ.wL.wR.wL.wL.wr.wq.wS.wn.wz.wT.wU.lB.lz.ss.uO.lV.r4.lt.lt.lt.lV.sm.l0.uj.cS.lt.sr.l3.lu.rW.wV.tG.l0.lu.un.r4.wW.wX.lR.mQ.aA.wY.lT.r4.l0.cS.lS.lS.cQ.gi.wi.r3.mg.sm.sn.s6.r4.lX.uj.r4.s6.lC.wZ.t8.tu.lJ.r4.lU.lv.lV.sl.lS.cS.lS.vj.cS.r4.lV.lu.lu.sB.lS.sm.lz.lD.r4.t8.t8.t8.t8.t8.t8.u4.u4.u4.u4.u4.u4.u4.u4.u4.u4.u4.u4.u4.u4.u4.u4.u5.u5.u5.u5.u5.u5.u5.u5.u5.u5.sm.sm.u5", +".#D.#D.#s.tt.r4.lI.w0.t0.w1.w2.w3.w4.w5.w6.##.nG.to.eN.w7.eM.lI.l3.l1.lV.w8.w9.r4.tI.x..x#.xa.uW.xb.xc.xd.xe.xf.to.xg.xh.lu.r4.l0.r4QtN.xi.xj.xk.xl.xm.xn.xo.xp.xq.xr.xs.xt.uE.xu.xv.su.lV.cT.tH.uB.tH.vX.ii.gp.sB.lu.tr.hn.uP.xw.tH.hn.uP.dr.l0.lV.xx.xy.gP.xz.sX.cSQt6.cR.l0.cS.cR.lS.lV.lVQt6.xA.we.xB.xC.v3.xD.v5.cS.lu.tk.xE.cR.xF.lu.r4.xG.xH.xI.xJ.xK.xL.sJ.xM.xN.xO.xP.mS.lJ.uz.gO.gO.to.gp.dn.xQ.dr.eN.xR.sj.qX.xS.uk.lZ.lZ.uO.l0.ii.uT.xT.xT.xT.xT.xT.xU.r7.r7.r7.r7.r7.xV.xT.xT.xT.xT.uT.r7.l0.r7.r7.eNQtS.uz.lS.aB.lJ.sB.tI.ui.xW.xX.xY.xZ.x0.lV.mT.vj.r4.tp.xf.xd.gp.vY.tq.vY.vY.tt.x1.xE.st.x2.x3.x4.x5.x6.x7.x8.x9.y..y..y..y..y#.ya.yb.yc.yd.ye.yf.yg.yh.yi.yj.y..y..x9.x9.x8.yk.yl.ym.yn.yo.yp.lI.lz.lu.lS.r4.xE.yq.yr.tn.l0.sm.ys.fh.#a.di.yt.yt.yu.yv.yw.yx.x4.ym.yy.yz.x9.y..y..y..y..yA.y..yB.yC.yD.yE.yF.yG.yH.yI.yi.y..y..yj.x9.x9.x8.yJ.yK.yL.yM.yN.lB.lt.yO.tU.lQ.l1.tn.tH.gQ.uW.sm.r7.r8.cU.aC.l1.t9.xF.yP.yQ.wi.lV.aB.t9.r4.yR.wD.mn.yS.yT.yU.cR.lQ.tW.cU.lM.lX.eG.tt.xe.tq.yV.yW.yX.tq.lz.tj.dr.xh.lA.#..yY.yZQt5.sj.xe.drQtZ.sj.dn.y0.tI.lV.lv.cS.lV.lt.lu.lS.lS.lV.r4.lt.sB.r4.sm.sm.sm.sm.sm.sm.sm.sm.sm.sm.sm.sm.sm.sm.sm.sm.sm.sm.sm.sm.sm.sm.sm.sm.sm.sm.sm.sm.sm.sm.sm.sm.t8.sn.t8", +".#D.#K.#s.dv.r4.lv.rs.r3.r8.y1.y2.y3.y4.y5.y6.#p.#pQtNQtN.y7.l9.r4.uO.lM.y8.y9.z..z#.za.zb.zc.zd.zeQtZ.zf.ti.zg.gP.zh.zi.st.r4.l0.l0.zj.zk.zl.zm.zn.zo.zp.zq.zr.zs.zt.zu.vW.xw.rS.ov.lv.l0.cT.vV.zv.tH.hn.vV.hn.dr.lu.ti.wb.zw.zx.zy.zz.zA.to.r4.sk.zB.zC.tj.lV.r4.r7.t9.lt.lQ.aB.cT.lu.cUQt6.tiQtz.v3.tA.uL.tJ.xB.zD.cT.cS.sk.sB.cR.yZ.tk.sV.zE.zF.zG.zH.zI.zJ.zK.zL.zM.zN.zO.r4.wi.eG.dW.zP.zQ.zg.zf.zR.wb.zS.zT.yq.zU.lI.mu.lC.lC.zV.lu.cS.zW.we.we.we.we.tA.zW.lu.lu.lu.lu.lu.vV.we.we.we.we.tJ.lu.lu.lu.ltQt6.gP.dq.lu.cS.lS.cS.zX.lu.zY.zZ.z0.z1.z2.lu.sC.lt.l0.xf.z3.z4.tmQtB.z5.z4QtZ.tnQtT.##.nl.z6.z7.z8.z8.z9.A..A#.Aa.Ab.Ab.Ab.Aa.Ac.Ad.Ae.Af.Ag.Ah.Ai.Aj.Ak.Al.Am.Am.Am.Al.An.Ao.Ap.Aq.Ar.As.At.Au.yO.Av.lz.lS.r4.cS.ts.tH.tj.sY.mt.nz.nyQtKQtA.tnQtKQtZ.xG.Aw.Ax.Ar.Ay.Az.AA.AB.AC.AD.AD.AD.Am.AD.AE.AF.AG.AH.AI.AJ.AK.AL.Am.AD.AM.AM.AM.AB.AN.AO.AP.Ar.AQ.AR.AS.AT.mU.lS.lS.sm.dr.AU.gP.lu.sm.l0.l0.cR.cS.lA.cS.yP.AV.AW.AX.lu.cQ.lu.l3.uW.sW.AY.AZ.A0.n9.vF.mu.zV.uW.vi.lS.eL.#b.tmQty.A1.A2.A3.A4.A5.A6.A7.A8.A9.e9.B..A3.h#.vX.B#Qtz.e9.zw.Ba.Bb.Bc.lV.lJ.uW.t9.aB.aC.r7.l0.aB.uW.cT.aC.sn.sn.sn.sn.sn.sn.sn.sn.sm.sm.sm.sm.sm.sm.sm.sm.sm.sm.sm.sm.sm.sm.sm.sm.sm.sm.sm.sm.sm.sm.sm.sm.sm.r3.sm.Bd", +".bu.bu.#E.tt.l0.lA.tU.t8.sX.tT.Be.Bf.lV.Bg.Bh.dg.sj.xf.tj.Bi.w0.l1.vu.m..Bj.Bk.Bl.Bm.Bl.Bn.Bo.Bp.ty.eNQtZ.B..xd.sj.dn.sC.ss.l0.l0.nP.Bq.Br.Bs.Bt.Bu.Bv.Bw.Bx.By.Bz.BA.uX.wd.tsQtE.BB.lV.l3.l8.AU.BC.AU.xV.BD.BE.dq.ltQtC.ts.tr.uC.BF.BG.vV.tt.sm.dq.BG.BH.sj.lV.r4.sX.sX.sB.sB.cS.sk.cS.dr.gPQty.hn.BI.sK.BJ.uT.BK.BL.xE.xE.dq.tk.tt.yq.wd.gZ.BM.mv.BN.BO.xK.xN.BP.BQ.BR.BS.lv.l0.lu.w7.z3.dhQtM.#fQtZ.dr.gOQtY.y6.e9.ys.BT.xF.BU.cT.tS.xF.uW.lS.BV.v3.tA.BW.BV.uW.uW.uW.uW.uW.cR.uC.tA.tA.tA.BX.v3.cR.cR.cR.cR.xE.tq.xE.sk.cR.lS.cS.BY.cR.cT.BZ.B0.B1.BU.cS.xE.lt.lZ.st.tp.B2.B3.ih.sjQt6.gp.B4.tq.je.B5.sC.B6.B7.B8.B9.C..C#.Ab.Ab.Ab.Ab.Ab.Ca.Cb.Cc.Cd.Ce.Cf.Cg.Ch.Ci.Cj.Ab.Ab.Ab.Ab.Ab.C#.C..B9.Ck.B7.Cl.Cm.Cn.Co.Cp.lt.lV.r4.cS.tk.lQ.s6.lU.qd.wZ.tk.tt.dn.dq.ds.Bp.Aw.Cq.Cr.Cs.Ct.Cu.Aa.Ab.Ab.Ab.Cj.Cj.Cj.Cv.Cw.Cx.Cy.Cz.CA.CB.Ao.CC.Am.Am.Am.Am.Al.CD.CE.CF.CG.CH.CI.CJ.CK.q..lX.lt.sm.lV.tk.aB.r4.r4.l0.l0.cR.cR.cQ.mH.CL.CM.CN.CO.su.uW.aC.l2.st.Av.CP.CQ.AV.qP.yT.qd.ss.cT.vi.lt.eGQt5.tn.fxQt0.CR.CS.B..A5.eN.#b.gR.yV.tj.tx.#a.d.QtT.CT.tt.tt.#a.fh.dj.CU.lS.t9.tF.cS.cR.cR.lt.dq.uP.ts.dq.sB.r4.r4.r4.r4.r4.r4.r4.r4.r4.r4.r4.r4.r4.r4.r4.r4.r4.r4.r4.r4.r4.r4.r4.r4.r4.r4.r4.r4.r4.r4.r4.r4.r4.r4.r4.uj", +".CV.CV.#D.ih.l0.zV.lu.l0.wi.sB.CW.lY.lM.lS.lM.wi.lv.lv.lS.lS.lM.lS.lQ.mQ.zb.CX.CY.CZ.CZ.C0.C1.mU.t9.Bg.uW.qd.lS.vj.vj.lS.lS.lS.C2.C3.C4.C5.C6.C7.C8.C9.D..D#.Da.Db.hi.fAQt6.uz.cS.vj.lQ.l1.sk.Dc.Dd.tM.hj.yq.g6.aC.lJQtA.uA.uA.tH.zx.De.xV.ze.l1.uz.r4.xy.dq.cS.r4.s6.lS.xE.gi.cS.sk.cR.tt.sj.tt.tH.Df.Dg.uR.Dh.Di.Dj.tx.tk.dr.dqQtZ.yr.zv.DkQtz.Dl.Dm.Di.Dn.Do.xB.Do.Dp.lv.lX.uk.zV.tk.tk.sk.tk.vY.xE.xE.xz.eM.vY.yV.oz.xz.xz.xE.B5.uz.xE.xE.xE.xE.cT.l0.xE.xE.xE.xE.xE.xE.xE.xE.Dq.tA.tA.tA.tA.v3.xE.xE.xE.xE.sk.uW.sk.vY.cT.lS.zX.uz.cT.CU.Dr.kV.Ds.zX.cR.tk.lu.lV.lM.sB.cS.cS.lt.lQ.tU.t9.lS.vj.sB.lV.lA.Dt.Du.Dv.Dw.yl.x7.Dx.Dy.Dy.Dy.Dy.Dz.DA.DB.DC.DD.DE.DF.DB.DG.DH.DA.DA.DA.yk.yk.x7.yy.ym.DI.DJ.DK.DL.yO.ss.sB.lt.lV.l0.sm.sX.uj.lV.uk.l0.uj.l0.lt.uk.uk.lZ.lZ.DM.DN.DO.DP.DQ.DG.Dx.yk.DA.DA.DA.DA.DA.DR.Ae.DS.DT.DE.DE.DU.x8.DA.DA.yk.DA.yk.yk.x7.yl.Dw.Dv.DV.DW.lN.sW.ss.lt.vi.l0.r4.sX.sm.lV.l0.lV.lV.cT.cT.BU.CU.DX.DY.DZ.D0.mT.tS.sB.uk.D1.BU.D2.D3.qe.Bp.mH.cR.cR.ty.lt.lu.eG.tq.tk.tk.yu.D4.D5.D6.sk.sk.eM.tk.sk.tF.uW.D7.xE.ty.zd.BY.xE.uz.ty.w7.yW.lJ.t9.ty.cU.uW.cT.cR.ii.xw.hn.tq.sB.l0.r4.r4.r4.r4.r4.r4.r4.r4.r4.r4.r4.r4.r4.r4.r4.r4.r4.r4.r4.r4.r4.r4.r4.r4.r4.r4.r4.r4.r4.r4.r4.r4.uj.r4.r8", +".iI.iI.bu.xd.l1.tU.aB.t9.vx.cS.lt.lP.wi.lV.lU.uk.l0.l0.l1.lV.lV.lS.lQ.vi.D8.D9.E..E#.E#.Ea.Eb.yO.r7.r7.l0.l2.l0.l0.l0.lT.lV.Ec.Ed.Ee.Ef.Eg.Eh.Ei.Ej.Ek.El.Em.En.yq.ti.x1.sk.lu.wi.uk.lX.lV.cT.Eo.uPQty.tn.tq.cR.lS.ltQt6.Eo.tr.ti.tm.EoQtQ.cT.lS.lS.Ep.BP.cR.BU.lP.sB.cT.tk.lD.cS.tp.BY.tk.sk.tqQtz.Eq.uZ.tA.xT.Er.Es.yX.xE.tq.yX.yX.##.Et.Eu.Eq.Ev.Ew.Ew.Ex.Ex.Ex.Ey.r8.r8.uO.uO.lJ.cU.tS.uW.cU.cU.Ez.uW.Ez.Ez.EA.cU.zX.xF.xF.xF.BU.gh.cR.cR.cR.cR.cR.cR.cR.uW.uW.cR.cR.uW.cR.cR.v0.uJ.uJ.uJ.uJ.we.cR.uW.cR.cR.BU.cT.cT.gh.lz.lV.cT.tk.cT.tk.B5.D1.sk.sk.sk.tk.t9.lV.l0.t8.t8.t8.r4.r4.t8.r4.r4.uj.uj.r8.uO.EB.EC.ED.ED.ED.EE.EF.EF.EF.EF.EF.EG.wB.EH.EI.EH.EJ.wB.EH.EG.EK.EL.EG.EG.EG.EK.EK.ED.EK.EM.EN.EO.EP.lV.lQ.lJ.lP.lZ.l0.lT.lT.uk.uk.uO.l0.l0.l0.r3.r4.t8.r4.s6.EP.EQ.EK.EG.EG.EG.ER.EG.ES.ET.EU.ER.ER.ER.EV.EW.EX.EY.EZ.EX.EU.ER.E0.EU.EU.EU.ET.E0.EL.EL.EK.E1.E2.l0.l0.l0.lV.l0.l0.l0.l0.l0.l0.r4.l0.l0.cT.xE.mT.sk.tF.cT.yU.mT.yU.sk.lu.l2.sk.ty.cT.mT.cT.cT.cT.cT.tS.ty.lt.lV.sB.cS.sB.sB.ss.cS.cS.gi.sV.su.tI.ss.cR.cR.cR.gi.cS.cS.cS.cS.cS.cS.cS.cR.sB.lV.lu.xE.cT.cT.cT.sk.vYQtNQt6.sk.cR.l0.l0.l0.l0.l0.l0.l0.l0.l0.l0.l0.l0.l0.l0.l0.l0.l0.l0.l0.l0.l0.l0.l0.l0.l0.l0.r7.r7.r7.r7.r7.r7.r7.r7.r7.r7", +".iv.iv.CV.dx.lV.vj.lu.lu.lu.lt.vj.lB.lt.lt.lt.lt.lt.lB.lt.lt.lv.lv.lJ.lt.w0.E3.tI.sB.sB.sB.lI.lS.lS.lJ.tL.lP.lS.lQ.lQ.lS.E4.E5.E6.E7.E8.E9.F..F#.Fa.E7.Fb.Fc.Fd.EoQtZ.w7.cU.t9.lJ.lS.lQ.lB.aB.cU.aB.aC.un.lt.lR.lP.lS.mu.sB.cS.sB.ly.lC.lD.lS.lS.l0.Fe.tJ.lu.lu.ly.cT.cT.cR.lS.sB.tp.tk.xE.xE.CR.tt.xT.uT.Ff.Di.Fg.Fh.xh.tk.xE.xE.BY.yq.Dq.BI.tJ.BV.Ew.Ew.Ew.Ew.Fi.lV.lS.lS.wi.wi.lV.lS.lt.lt.lS.lv.lS.vi.lt.vY.fh.Fj.uP.Fk.Fk.Fl.lt.lv.lS.cR.Fk.Fk.Fk.Fk.yq.lS.vi.lS.lS.vi.ly.ly.xV.Ew.Ew.Ew.Ew.Ev.Fm.Fm.Fm.vZ.vY.lS.xE.vZ.hc.vZ.vV.Fn.uC.Fo.sM.sM.uC.uC.uE.Fp.hn.uP.uP.Fq.uP.zwQtz.xe.uO.l1.l1.uO.uO.uO.lV.l3.Fr.r5.r5.r5.Fs.r5.Ft.Fs.Fs.Fu.Fu.Fs.Fs.Fs.Fs.Fs.Fu.Fu.Fu.Fu.Fu.Fu.Fu.Fv.Fu.Fu.Fw.Fu.Fs.Fu.l3.l0.l1.uO.lZ.lZ.lV.lT.lV.lV.lV.lV.lV.lV.lV.lV.lV.lV.lV.lX.lP.lZ.Fw.Fx.Fw.Fw.Fw.Fw.Fx.Fx.Fx.Fu.Fw.Fw.Fu.Fu.Fs.Fu.Fu.Fu.Fu.Fw.Fu.Fu.Fu.Fw.Fu.Fu.Fu.Fu.Fw.Fs.Fw.l0.l0.l0.l0.l0.l0.lV.l0.lU.lU.lV.l0.lV.l0.cT.vY.yt.tk.tk.eG.tx.tk.vY.tk.lu.l1.ty.yX.uz.uz.uz.uz.w7.tx.w7.ty.t9.l1.lQ.vj.lJ.lJ.lJ.lJ.lJ.lJ.lQ.lQ.lX.lV.lQ.lQ.lV.lV.lV.lV.lV.lV.lV.lM.lM.lV.lV.l0.lt.xE.tk.xE.xE.xE.sk.cR.cT.tk.cR.l0.l0.lV.l0.l0.l0.l0.l0.l0.l0.l0.l0.l0.l0.l0.l0.l0.l0.l0.l0.l0.l0.l0.l0.l0.l0.l0.l0.l0.l0.l0.l0.uk.lV.l1.l1", +".iv.iv.CV.aV.lu.wW.cS.sB.cS.ss.cS.cS.cS.cS.cS.cS.cS.cS.cS.cS.sB.ss.cS.cU.uW.tF.l8.cT.l8.l8.l8.yu.yu.yu.yu.BY.Fy.sk.sk.Fz.FA.FB.FC.FD.FE.D#.FF.FG.FH.FI.FJ.FK.xV.fAQtZ.gp.tk.yu.yu.yu.Fy.B5.FL.st.zX.mT.yU.sC.yu.xz.xz.sk.cT.zX.zX.mT.st.cT.sC.xE.xz.FM.BO.xz.A5.FL.yV.FL.xz.A5.xz.tq.xQ.xQ.xQ.FN.B..FO.FP.tJ.FQ.FR.FS.tq.xQ.tq.tq.FT.FU.FV.w#.FW.FX.FX.Dn.FX.FY.vi.mT.mT.mT.cT.mT.yU.mT.mT.mT.mT.CU.st.aW.FZ.F0.F1.F2.F3.F4.F5.F6.F7.CU.CU.F8.fg.F9.F9.G..G#.Ga.mT.CU.CU.CU.CU.st.Gb.Gc.Gc.Gc.Dn.Gc.F9.F9.F5.F9.Gd.Ge.nG.Gf.Gg.Gg.Gh.Gi.Gi.Gj.Gj.Gj.Gj.Gj.Gi.Gk.Gl.Gl.Gl.Gl.Gl.Gm.Gn.Go.sW.zR.sk.sC.sC.y0.yU.yU.yU.st.st.cT.yU.l8.yU.yU.yU.yU.yU.CU.n4.CU.CU.CU.st.st.st.st.st.st.st.st.st.st.st.st.cR.zX.cT.x..yW.yW.yW.cT.cT.xF.cT.xF.xF.xF.xF.xF.xF.xF.xF.xF.xF.xF.BU.uW.cQ.cQ.cQ.cS.sV.cS.cS.su.su.cR.Gp.cR.cR.su.cR.cR.su.su.cR.cR.cR.su.su.cR.cR.cR.cR.cR.cR.gh.gh.st.mT.cT.cT.cT.cT.st.cT.cT.st.cT.cT.cT.cT.su.st.cT.cT.cT.cT.sk.tk.yt.xE.cR.cR.sk.vY.tk.tk.tk.tk.tk.tk.vY.sk.cR.cR.cR.cR.cR.cS.cS.cU.cR.cR.cS.lu.lt.lz.t9.un.t9.lu.lu.lz.lt.lt.lt.lu.lu.lu.lu.lu.sB.cR.sk.cT.cT.cT.cT.cT.cT.cT.sB.lu.lu.lu.lu.lu.lu.t9.t9.t9.t9.t9.t9.t9.t9.t9.t9.t9.t9.t9.t9.t9.t9.t9.t9.t9.t9.t9.t9.t9.t9.t9.lt.lt.lt.lt.t9", +".Gq.Gq.iv.aV.cS.xz.xE.xE.xE.xE.sk.sk.sk.sk.sk.sk.ty.ty.ty.tS.uW.sk.ty.uW.GrQtzQtNQtTQtT.GsQtPQtSQtQ.fx.fxQtS.ii.ii.io.Gt.Gu.Gv.Gw.Gx.Gy.Gy.Gz.GA.GB.GC.GD.uX.GE.GF.GG.zh.Gs.GH.Gs.zRQtTQtT.GI.GJ.GK.GL.GM.GM.GM.GN.GM.GM.GL.GL.GO.GP.GO.GO.GQ.GO.GR.GS.GT.GR.GR.GR.GP.GP.GP.GU.GV.GW.GX.GY.GZ.GR.G0.G1.G2.G3.G4.G5.G6.G7.G8.G9.H..H#.Ha.Hb.Hb.Hb.Hb.Hc.Hd.He.Hf.Hg.Hg.Hg.Hh.Hi.Hj.Hk.Hl.Hm.Hn.GV.oP.Ho.Hp.H..Hq.Hr.Hr.Hr.Hs.Ht.Hu.Hv.Hw.Hx.Hy.Hz.HA.Ht.HB.Hs.HC.GY.GY.GY.HD.HD.HE.HF.HG.HG.HG.HH.HH.Hs.Hs.HI.HJ.HK.HL.HM.HN.HO.G2.G2.HP.HQ.HQ.HP.HQ.HK.HQ.HP.HQ.G2.HR.HO.HO.HR.HR.HO.HR.HR.HS.HT.GV.GV.H..H..GV.GV.H..H..HU.HV.GR.HW.HX.GP.HU.GV.GV.HY.HZ.Hn.Hn.Hn.H0.H1.H1.G8.H2.H3.H3.H4.H4.G8.H5.G8.Hm.G8.G8.G8.H4.Hw.H6.H7.H8.H9.H9.I..I..F8.rT.rT.H9.F8.H9.F8.F8.F8.xQ.F8.F8.xQ.ys.xQ.ys.ys.I#.Ia.Ib.no.zR.#c.zR.zR.#c.#c.#c.#c.#c.#c.#c.#c.#c.#c.#c.#c.#c.#c.#c.#c.#c.#c.#c.tn.tn.tn.tn.tn.tn.tn.tn.tn.#b.tn.sk.lS.lQ.lQ.lS.lJ.cU.cT.lu.lu.lu.t9.t9.t9.lu.t9.t9.t9.t9.lu.lt.lt.lu.lu.lu.lu.lu.lu.lu.lu.lu.sB.sk.FL.cT.cT.cT.cT.cT.cT.cT.cT.cT.cT.cT.cT.cT.cT.cT.cT.cT.cT.cT.cT.cT.cT.lS.lS.lS.lV.lS.lS.lS.lS.lS.lS.lS.lS.lS.lS.lS.lS.lS.lS.lS.lS.lS.lS.lS.lS.lS.lS.lS.lS.lS.lS.lS.lS.lS.lS.lS.lS.lS.lS.lS.lS.lJ", +".Gq.Gq.iv.dx.cS.nF.lu.lu.lu.lu.lu.lu.lu.lu.lu.lu.lu.lu.lu.sk.tn.dq.tI.CU.Gf.Fl.xA.xAQtzQtzQtz.d..d..Ic.Ic.d..d..Ic.Id.Ie.If.Ig.Ig.Ih.Gx.Gx.Ii.Ij.Ik.Il.Im.In.Io.Ip.Iq.xA.Ic.Ic.d..xA.GI.Ir.Is.Ho.It.Iu.Iv.HM.Iw.Ix.Iy.HM.Iz.Iz.Iz.Iz.IA.HM.HM.HM.HM.IB.IC.ID.IA.IE.IF.IF.IF.IG.IH.II.IJ.IK.IL.IM.IN.IO.IP.IQ.IQ.IR.IS.IT.IU.IV.IW.IX.IY.IZ.IZ.IZ.I0.I1.I2.I3.I4.I5.I6.I7.I8.I9.J..J#.Ja.Jb.Jc.Jd.Je.Jf.Jg.Jh.Ji.Ji.Jj.Jj.Jk.Jl.Jm.Jn.Jo.Jp.Jq.Jr.Jl.Js.Jt.Ju.Jv.Jw.Jx.Jb.Jw.Jw.Jy.Jz.JA.JA.JB.JC.JC.JD.JE.JF.JG.JH.JI.JJ.JK.JL.JM.JM.JN.JO.JO.JO.JP.JM.JM.JM.JM.JM.JM.JQ.JQ.IP.IP.JQ.JQ.JQ.JQ.JR.JS.JT.JU.JT.JT.JT.JV.JV.JW.JX.IN.JY.JZ.J0.J1.Jr.J2.J2.II.Jq.IL.IJ.IL.J3.J4.J5.J6.J7.J8.J9.Hy.Jx.K..J3.K#.K#.J6.Ka.J7.Kb.Kc.Kd.Ke.Kf.Kg.z6.Kh.Kh.Ki.Kh.Kh.Kh.Kh.Kh.Kj.Kk.Kk.Kk.Kk.Kk.Kl.Kl.Kk.Kl.Km.F8.pp.zh.Kn.Kn.Gs.Gs.Gs.Gs.Gs.Gs.Gs.Gs.Gs.Gs.Gs.Gs.Gs.Gs.Gs.Gs.Gs.Gs.Gs.Gs.Gs.Gs.Gs.Gs.Gs.Gs.Gs.Gs.Gs.Gs.zh.Kn.yu.lM.lV.lV.lV.lS.sB.lu.sX.sm.lV.lt.r4.sm.sm.sm.sm.sm.lS.r4.sm.sm.r4.sm.sm.sm.sm.sm.sm.sm.sm.r4.sB.cS.lS.lS.lS.lP.lS.lS.lX.lS.lS.lS.lt.lS.lS.lQ.lQ.lQ.lQ.lQ.lQ.lS.lt.cU.lu.l1.lQ.l1.l1.lV.lV.l1.l1.l1.l1.l1.l1.l1.l1.l1.l1.l1.l1.l1.l1.l0.l0.l0.l0.l0.l0.l0.l0.l0.l0.l0.l0.l0.l0.l0.l0.uk.lV.l0.l1", +".Ko.Kp.fy.dh.cU.sB.lt.t9.t9.lt.lt.lt.lt.lt.lt.lt.t9.lJ.cR.Eo.uD.wb.lu.cT.dvQtCQtzQtzQtGQtGQtGQtzQtz.zh.zhQtzQtz.Kq.Kr.Ks.Gw.Gw.Gw.Ii.Kt.Gw.Ku.Kv.Kw.Im.In.Io.Ip.Fl.Ic.nb.nb.zh.zh.zh.GI.Ir.IK.Kx.Ix.Ky.Ky.Kz.Ky.Kz.Iv.Iv.Iu.Iu.Iu.Iu.IA.Iu.Ix.KA.Jd.KB.KC.Jd.JV.Jd.Jd.Jd.Je.KD.II.KE.J2.KF.KG.IN.JY.IP.KH.KH.KH.KH.KI.JK.KJ.KK.JY.KL.IZ.KM.KN.KO.KP.KQ.KR.KS.KT.JS.KU.KS.KV.J#.KW.KX.JK.JT.J0.IN.KY.KZ.K0.K1.Ji.K2.Js.Jl.K3.K4.K5.K6.K7.K7.K8.K9.Js.Jt.Jt.L..JR.K..L#.Jw.Jw.La.La.Lb.KL.KL.Lc.Lc.KL.JD.Ld.Le.Lf.Lf.Lg.Lh.Li.Lj.JG.JG.Lj.JG.Lk.Lj.Lj.Lj.Lj.JG.JG.JG.JG.Lj.Lj.Lj.Lj.Lj.Lj.Lj.JG.JG.Ll.KG.JT.JT.JT.JV.IN.J0.J0.J0.IN.IN.J0.J0.IE.Lm.Jc.Ln.II.Lo.Ja.Jb.Jw.Lp.KV.KV.Lq.Lp.Lr.Ls.Ls.KE.Lt.Jw.Lu.K#.K#.J..Lq.Jp.Lv.Lw.Lx.Lw.Ly.Kg.Kg.Kg.Lz.Lz.Lz.LA.LA.Kh.LA.Lz.H9.Kg.Kg.Kh.H9.Hg.Hi.LB.Hi.LC.gR.zh.Gs.Kn.Gs.Gs.ii.ii.ii.ii.ii.ii.ii.ii.ii.ii.ii.ii.ii.ii.ii.ii.ii.ii.ii.ii.ii.ii.ii.ii.ii.ii.ii.iiQtNQtN.xE.lV.to.dw.cU.lU.s0.lC.sX.r4.cT.#a.tt.cR.BY.vY.cR.eLQt6.yX.vY.dr.dg.vY.yU.sk.xE.sC.mu.sm.sX.r4.sB.sB.lV.lX.aB.ze.lS.FL.l5.yV.tS.xf.B2.dq.zX.mu.sW.ss.sB.t9.mu.lV.lv.su.sW.lV.lS.lV.lV.lV.lV.lV.lV.lV.lV.lV.lV.lV.lV.lV.lV.lV.lV.lV.lV.lV.lV.lV.lV.lV.lV.lV.lV.lV.lV.lV.lV.lV.lV.lV.lV.lX.lS.lV.lQ", +".LD.LE.Gq.aV.cR.cS.lu.lu.lu.lu.lu.lu.lu.lu.lu.lu.lu.lt.tk.tr.tr.tm.lu.yU.rn.Fl.xA.d..d..d..xA.xA.xA.xA.xA.d..LF.LG.LH.Gw.Gw.Gw.Gw.Gw.Gw.LI.LJ.LK.LL.LM.hn.LN.tm.d..zh.zh.zh.zhQtzQtz.zh.A1.LO.LP.Iz.Iw.HM.HM.Ky.HM.Iv.Iv.Iz.Iz.Iz.Iu.HM.HM.HM.IF.Jd.LQ.LR.IF.JV.IF.IF.Jd.KD.KG.II.LS.KD.KD.KG.LT.LU.LV.JH.LW.IP.LW.LX.Jc.LY.LZ.L0.IY.L1.L1.L2.L3.IZ.L4.KX.L5.I9.KV.Ja.KJ.Jw.KX.KX.JK.Je.IN.L6.IN.L7.J2.Jh.Ji.JB.L..L8.K3.K4.L9.L9.M..J8.KV.Jr.J0.Js.Js.L..Js.M#.Ma.Ma.Mb.Jw.Jw.KW.Lb.KQ.KQ.Mc.Md.L..L..K2.Me.Mf.Mf.Mg.Mh.Mi.Lf.Mj.Lf.Lf.Lf.Lf.Lf.Lf.Lf.Lf.Mk.Mj.Mj.Mk.Lf.Lf.Lf.Lf.Lf.Lf.Mj.Mj.Lf.Le.Ml.KD.K9.IA.Mm.Mm.Mn.IA.IE.Mn.IF.IM.Mo.IF.J1.KG.II.Lt.Jx.J9.Mp.Mp.Mq.J8.Mq.J3.Mr.II.IH.Ms.II.IJ.K..J9.K#.Lq.Lq.K#.J8.Mt.Mu.Mv.Lw.Mu.Mw.G9.Mx.My.Kg.Lz.LA.LA.Lz.Kh.LA.Kh.Kg.Kg.Kh.I..LB.H6.H6.Mz.Bb.xv.zh.nb.Kn.Kn.Gs.Gs.Gs.Gs.Gs.Gs.Gs.Gs.Gs.Gs.Gs.Gs.Gs.Gs.Gs.Gs.Gs.Gs.Gs.Gs.Gs.Gs.Gs.Gs.Gs.Gs.Gs.Gs.Gs.zh.zh.FL.lz.xE.xE.lu.lv.cS.sB.sm.r4.t9.jeQtFQtCQtA.MA.vY.MB.xEQtNQtE.MC.zPQty.xAQtN.tm.FT.x1.l1.u..r7.aB.BU.aC.MDQtY.gQ.gOQty.gX.tm.ME.dgQtQQty.z4.z5.zw.ff.wb.MF.ii.vi.sW.zX.sB.lQ.lJ.lS.lS.lS.lS.lS.lS.lS.lS.lS.lS.lS.lS.lS.lS.lS.lS.lS.lS.lS.lS.lS.lS.lS.lS.lS.lS.lS.lS.lS.lS.lS.lS.lS.lS.lM.lS.lQ.wi", +".MG.MH.MIQtX.Ez.cS.t9.lu.t9.t9.t9.t9.t9.t9.t9.t9.t9.lt.cT.ii.sj.cT.sB.yU.rn.fB.xA.MJ.MJ.MJ.MJ.MJ.xA.xA.xA.MK.ML.MM.MN.MO.MO.MO.MO.MO.MP.MQ.MR.MS.MT.fz.g7.MU.fG.xA.xA.xA.xA.Ic.xA.MJ.A8.GO.Ky.Iu.MV.MW.Iv.Iu.Iu.MX.MX.MX.MV.Iu.Iu.Iu.Iu.Iu.Iu.MY.IE.MZ.LR.IE.IE.IE.JW.Jd.K9.K9.K9.M0.Jd.JV.JV.M1.M2.M3.Le.M4.Le.M3.M5.M6.M7.M8.M9.N..N#.N#.Na.L3.IQ.Nb.L#.Nc.Mp.Nd.Ne.Ls.IT.IH.Jr.J1.IE.Nf.L6.L6.Ng.Nh.Ni.Jh.Jt.KQ.K4.Nj.Nk.Nl.Nm.Nn.Nc.No.Np.Mo.K3.K3.L8.L8.L0.Ma.Jq.Ma.Ma.Jw.Jw.Lb.Mc.Mc.Mc.JB.Nq.Nr.Ns.Nt.Nt.Nt.Ja.JT.Lp.Nu.Nv.Nv.Nw.Nx.Nv.Ny.Nz.NA.NB.Nz.NC.Nx.NB.NA.NB.Nv.Nv.ND.NE.Mf.Mf.Me.K2.NF.Je.JW.Mn.IE.IE.IE.NG.IE.IE.Jd.M0.M0.KD.Lm.Jc.Lr.J3.J9.KV.KV.K#.J..K#.NH.Lt.KE.II.J2.J2.II.NI.Ma.Ja.Lu.KV.K#.J8.J8.NJ.NK.Mw.NK.NL.NM.NN.NN.NK.My.H9.NO.H9.H9.H9.H9.H9.NP.Hg.Hg.NQ.NR.NS.NR.NT.NU.zR.#f.uQ.uQ.#f.#fQtNQtNQtNQtNQtNQtNQtNQtNQtNQtNQtNQtNQtNQtNQtNQtNQtNQtNQtNQtN.Gs.Gs.Gs.Gs.Gs.Gs.Gs.Kn.zh.zh.FL.lz.lt.lt.lS.lt.su.s0.sm.sn.lV.uW.NV.Bi.to.F1.mh.cT.x1.dq.zh.dr.tj.CR.di.xE.tq.x1.yV.lZ.sm.l0.nF.FL.NW.D6QtFQtNQty.Eo.tsQty.to.##Qty.A1Qtz.gQ.hm.NX.zw.LN.oI.su.yU.sk.zV.lS.lS.lS.lS.lS.lS.lS.lS.lS.lS.lS.lS.lS.lS.lS.lS.lS.lS.lS.lS.lS.lS.lS.lS.lS.lS.lS.lS.lS.lQ.lQ.lQ.lQ.lQ.lQ.lQ.lQ.lS.lQ.lQ", +".NY.NZ.N0.aV.cR.xE.cR.cR.cR.cR.cR.cR.cR.cR.cR.cR.cR.cT.sk.sk.sk.sk.xE.yu.aW.zf.N1.fG.xA.xA.d..d.Qtz.d..N2.N3.N4.N5.N4.N6.Gw.Gw.Gw.Ks.N7.N8.MS.MT.fz.N9.#lQtC.d..d..d..d..d..d.QtCQtz.tm.O..O#.MV.Iz.Iv.Iz.Iz.It.Oa.Ob.Oa.It.Iz.Iv.Iu.Iu.Iu.Iu.Mn.Mn.LX.KC.IE.MY.JW.IE.Oc.M2.Oc.Mn.Od.IE.IE.IE.Oe.L6.Me.Me.Of.Og.K2.Oh.Oi.Oj.Ok.N..I1.Ol.Ol.Om.L..On.L5.Lp.Lp.Ja.KW.Oo.Oo.Jc.JT.JV.J0.Mn.Oc.JY.M2.Lb.Op.Oq.Jh.Jt.K5.Or.Nc.Nc.J9.Mp.Jx.Jq.Lt.J1.IE.K4.K4.K4.Os.Ot.Lt.Lr.Lo.Lo.Lo.Lo.Lb.Ou.Ou.Mc.JB.Me.JT.JT.JT.JT.Jc.IH.Np.Ov.Je.Je.Ov.Je.Ov.JT.J1.IM.IM.Ov.Je.IM.IM.Ov.J1.Ov.Ov.Je.J0.Ow.K2.K2.K2.Me.Ox.K9.IE.IE.IM.IM.K9.K9.IM.K9.K9.K9.J1.Np.Np.J2.Ma.J9.KV.KV.K#.K#.Lu.Jb.Lr.Lt.KE.II.II.JK.II.Lt.Jx.J9.Lu.KV.Lq.J8.Oy.NM.NL.NL.Oz.Oy.OA.NN.K#.Jp.OB.NO.My.Hi.OC.OD.Hg.Hg.LB.OE.Hw.pp.H4.H4.H4.Hw.pp.Gs.zh.zh.zh.zh.zh.zh.zh.zh.zh.zh.zh.zh.zh.zh.zh.zh.zh.zh.zh.zh.zh.zh.zh.zh.zh.zh.zh.zh.zh.zh.zh.zh.zh.MJ.d..B4.lu.lt.lt.lt.lu.cR.ss.sn.tZ.r7.r7.l1.r8.l1.l1.r7.r7.l1.tL.t9.l1.l1.l1.l0.r7.r7.l1.l0.s6.sn.l0.xF.tq.uz.eG.w7.tk.yX.eN.eN.eN.w7.OF.eN.A9.A9.OG.drQt6.eN.vY.yt.yu.FL.xE.lu.lR.lt.lS.lS.lS.lS.lS.lS.lS.lS.lS.lS.lS.lS.lS.lS.lS.lS.lS.lS.lS.lS.lS.lS.lS.lS.lS.lS.lS.lS.lS.lS.lS.lS.lS.lS.lS.lS.lS.lJ", +".OH.OI.OJ.d..tk.Bi.tq.ds.gp.gp.gp.OK.tq.tq.tq.tq.gp.vY.cT.cR.cR.cT.cR.su.aW.zf.fG.fG.xA.xA.xA.xA.xA.OL.OM.ON.OO.OP.ON.OQ.OR.OS.OT.OU.OV.OW.OX.OY.GF.MU.Fl.xA.xA.xA.xA.xA.xA.#h.Fl.d..zf.OZ.O0.O1.O2.O#.O2.MV.O2.O#.O#.O#.O2.It.Iu.Jd.Jd.MY.MV.L6.L6.LX.KC.Od.J0.JW.L6.O3.O4.LU.Nf.IF.IM.Mo.Mo.O5.IN.JB.JB.JB.O6.O7.O8.JV.Lc.O9.I1.Ol.Ol.Ol.I2.P..Mp.KV.Mp.Jw.Lo.Ls.P#.Lm.Ov.J0.J0.Mm.Nf.L6.Pa.LU.Pb.Op.Oq.Pc.Jt.K5.Pd.No.Lp.Nc.No.Jq.KX.KX.J1.Mo.K5.K5.I2.Pe.Pf.Lt.Lr.Ma.Lo.Lo.KW.Lb.Ok.Pg.Ph.L..JB.JT.JU.JT.Lm.JK.KX.Pi.JK.JT.Pj.Pk.Je.Je.Pl.Je.Je.JV.Pk.Pk.JV.JV.Pk.Je.Je.Je.Je.JV.Pm.JD.L..L..Me.Pn.JV.JV.Jd.Je.Je.Je.Je.Je.NG.K9.K9.JT.JT.Po.Jc.KX.Jb.NH.Lu.Lu.Jb.KX.KE.II.KE.II.II.Pp.KE.Pp.Ma.Nc.J9.K#.J6.Ka.Ka.Ka.NN.NN.Ka.J6.J3.J4.NN.Pq.Ka.Pr.Ps.OC.Pt.Pu.Pt.Pv.LB.NT.Hw.Pw.G8.Px.G8.G8.Pw.Px.zh.d.Qtz.zh.zh.#f.#f.#f.#f.#f.#f.Kn.Kn.Kn.Kn.Kn.Kn.Kn.Kn.Kn.Kn.Kn.Kn.Kn.Kn.Kn.Kn.Kn.Kn.Kn.Kn.#f.#f.nb.Ic.zh.tk.lz.lt.lt.lt.lu.cS.sW.lV.uO.l1.lV.lV.lX.lT.lT.lT.uO.lU.lQ.lV.lU.lV.lV.lV.lV.lV.uk.lV.lV.lU.lP.cT.ze.tq.tq.I#.xh.xh.Py.xR.Py.tq.eN.tq.xh.tq.gr.l5.tq.yX.Pz.Pz.eN.Bi.xh.xE.sk.sk.sk.sk.sk.sk.sk.sk.sk.tS.tS.tS.tS.tS.tS.tS.tS.tS.tS.tF.tF.tS.cT.cT.tS.tS.tS.sk.tF.tF.PA.tS.tS.tS.yW.sk.yW.tS.NW.PA", +".PB.PB.PC.fA.tt.gRQtZQt6.PD.sj.B2.PD.sj.PE.sj.nG.B2.ze.cS.aC.aB.aB.aC.cS.ij.zf.#hQtCQtCQtCQtCQtC.PF.PG.ON.PH.Gk.ON.aW.OK.PI.LG.LG.PJ.PK.PL.PM.tr.fA.fBQtCQtCQtCQtCQtCQtCQtC.#h.Fl.d..ti.PN.O1.O1.O2.O1.O#.MV.It.MV.PO.PP.MV.Ix.PQ.PR.KD.MY.L6.L6.L6.PS.KC.Mn.Oc.L6.PT.PU.O4.LU.Mn.Jd.M0.Je.Lm.O3.IN.L..KL.L..L..KQ.PV.PW.KQ.Ok.N#.N#.N#.N#.PX.Li.Lo.Ja.Jw.Ls.JK.Lm.JU.Pk.J0.IN.Mh.IN.JY.JY.PY.PY.PZ.P0.Ji.JC.K3.P1.P2.Jw.Nd.La.Jq.P3.P3.Ls.Je.JV.P4.Ou.Ou.P5.Pn.K8.Lt.Jq.Ma.Ma.L#.Lb.M9.M9.Ou.Ph.L..Je.JT.P#.Jc.Jc.K8.Jw.Jw.Ls.J1.P6.P7.LY.P8.P9.Q..Q..Q#.Q#.Q#.Qa.Qa.Qa.Qb.P9.Qc.Qd.Qe.KQ.KQ.KL.K2.IR.Je.Je.Je.Pl.Pl.JT.NG.NG.JT.JT.Pl.Je.JT.Lm.Jc.Pi.Ja.Lp.KV.Lp.KX.Jc.JK.JK.Pp.II.II.NI.Mb.Lo.Jw.J3.Lp.Qf.Lu.K#.J9.J9.NH.J3.NH.NH.Ja.J3.J9.J9.J9.Qg.Qh.Mw.Hj.Lv.NK.Qi.Qi.Hw.H4.G8.Hm.Qj.H1.Hm.Qj.Qk.xA.xA.xA.MJ.Ic.Ic.zh.zh.zh.zh.zh.zh.zh.zh.zh.zh.zh.zh.zh.zh.zh.zh.zh.zh.#f.#f.#f.#f.#f.#f.#f.#fQtG.zh.d.Qtz.tk.lu.t9.t9.t9.t9.lu.sB.tS.ty.BU.cT.BU.xF.zX.NW.NW.tS.xF.cR.cR.zX.Ql.Ql.BU.cR.uW.tS.D4.yW.mT.l8.ty.xE.xE.xE.xE.xE.xE.xE.xE.xE.xE.xE.xE.xE.xE.xE.yu.yu.xE.uz.uz.xE.xE.xE.xE.xE.xE.xE.xE.xE.xE.xE.xE.xE.xE.xE.xE.xE.xE.xE.xE.xE.xE.xE.yu.yu.xE.Qm.Qn.w7.A9.FL.xE.yu.BY.tx.ys.Qo.B5.xE.xE.xE.tF.cT.zd", +".Qp.Qp.PC.fx.nF.dv.tt.sk.cT.cT.cR.BB.ijQtK.B..xh.st.cR.sB.sB.aB.sB.sB.su.Qq.MU.Fl.Fl.Fl.Fl.Fl.Qr.Qs.ON.Qt.Qu.ON.Qv.l5.sW.ON.Qw.Qx.Qy.Qz.QA.QB.fm.zf.Fl.Fl.Fl.Fl.Fl.Fl.Fl.Fl.Fl.Fl.Fl.MU.QC.QD.QE.O1.O1.O1.O#.It.It.Ob.Nf.HM.Ky.QF.Ky.Mn.PP.PP.L6.L6.QG.QH.QI.PU.PU.QI.QJ.LU.Mn.IE.IM.IM.J1.IT.QK.Mh.KL.KQ.QL.Mc.QM.QN.Mf.I2.M9.Na.Na.N#.QO.IT.Jc.IH.P3.Ls.IH.Np.Mo.IN.Mh.Mh.Mh.IN.IN.JY.QK.PY.PY.QP.QQ.Jt.Jl.QR.QS.QT.La.No.QU.KX.Ls.QV.Ls.Pk.JV.QW.QW.QW.QW.IR.Ls.KE.KX.Lr.Lo.Lo.QX.Ol.N#.N..M9.I2.Lm.Lm.Jc.QY.QY.QV.KW.QZ.Q0.Q1.Jf.Q2.Q3.Q4.Q5.Q6.Q7.Q8.Q9.Q6.Q5.Q5.R..R#.Ra.Rb.Rc.Rd.Ou.QM.Md.JD.KH.Pk.Pk.Pk.Pk.Pk.Je.Je.Je.Je.Je.Ov.IM.J1.Np.Re.Jq.Nc.Ja.La.Lo.IT.Re.IH.IH.KE.IT.KE.Lt.J3.Nc.J3.J3.J9.J6.J9.J9.Nc.J3.No.Jx.No.J3.J3.Jx.L#.K..K..Jx.GX.Jp.Pr.NL.Rf.Hx.H4.H4.Hl.H1.H1.GY.Rg.H0.Rh.Ri.xA.xA.xA.GI.Ic.Ic.zh.zh.zh.zh.zh.zh.zh.zh.zh.zh.zh.zh.zh.zh.zh.zh.zh.zh.zh.zh.zh.zh.zh.zh.zh.zhQtz.Ic.fG.xA.yt.sW.lu.lu.lu.lu.lu.tI.uz.to.aV.yt.cS.xF.BB.l8.gpQt5.D4.st.yX.vY.yU.zX.st.st.zX.nF.cS.cS.ss.ss.wW.sB.sB.sB.sB.sB.sB.sB.sB.sB.sB.sB.sB.sB.aC.aC.aC.aC.aC.aC.aC.aC.aC.aC.aC.aC.aC.aC.aC.aC.aC.aC.aC.aC.aC.aC.aC.aC.aC.aC.aC.lD.u3.aB.zV.mu.Rj.Rk.Rl.Rm.xF.uW.aB.zV.zV.sk.xh.vY.xF.lD.lt.cSQt6QtN.Bi", +".Rn.Rn.RoQtX.vj.Py.tj.yX.aB.lu.lu.AX.F1.#a.Gf.zX.lu.lD.aB.aB.aB.aB.sB.cR.sj.MU.tm.tm.Iq.Rp.A4.Rq.Rr.Rs.Qu.ON.nl.dn.ss.ON.Rt.Ru.Rv.Rw.sD.uP.LN.zf.Fl.Fl.Fl.Fl.Fl.Fl.Fl.Fl.Fl.Fl.tm.Fl.MU.Rx.Ry.Ry.O1.O1.O1.O#.MX.Ix.Ix.Iu.Rz.G0.Jd.LU.RA.LU.PO.Mn.Mn.RB.RC.RD.RE.O4.LU.LU.Oc.JW.JV.M0.JV.K9.Lm.PY.JU.Mc.QL.Ph.Ou.Ok.RF.RG.I2.M9.N#.RH.Ol.RI.Lp.Lm.JT.RJ.JT.Lm.Je.IN.PY.PY.IN.IN.JZ.JY.JY.PY.RK.PY.Qd.RL.Jl.Ou.RM.Ol.RN.No.L#.RO.K8.Ls.IT.IT.P6.Je.RP.N..N..N..RQ.IT.KE.K8.Lt.Jq.Jq.QX.RH.Na.Na.RH.Ol.Ne.Ls.Ls.KX.KX.Lo.Lo.Jw.JT.RR.RS.RT.RU.Mc.I2.QM.I2.Ou.RV.RV.Ol.N..RW.Ol.Ol.RW.Ol.N#.RH.Ol.Ou.QL.JG.Je.Je.Je.Je.Pk.Je.Pk.Je.Je.Je.P6.Pk.Je.JT.Lm.RX.Lo.KX.JK.RX.JK.JK.JK.II.KE.Ls.NI.Lo.Lp.K#.Lu.Lp.J9.Lu.J9.J3.Jb.Jb.Jx.Jx.Jb.Ja.Jx.Ma.Lt.KE.KE.Lt.RY.Jb.J8.Jp.Oy.Hm.GZ.GZ.NN.H0.Ir.Hn.Hn.Hn.Hn.Hn.Fl.#h.Fl.xA.d..d.QtzQtzQtzQtzQtzQtzQtzQtzQtzQtzQtzQtzQtzQtzQtzQtzQtzQtzQtzQtzQtzQtzQtzQtzQtzQtzQtA.d.QtCQtC.vY.aC.lu.lu.lu.aC.aC.wW.PA.RZQtCQtz.dw.tn.GI.vY.sj.sj.R0QtP.R1.tm.R2.gR.tnQtKQtT.R3.vi.t9.lA.lA.lI.lI.lt.lt.lt.lt.lt.lt.lt.lt.lt.lt.lt.lt.lt.lt.lt.lt.lt.lt.lt.lt.lt.lt.lt.lt.lt.lt.lt.lt.lt.lt.lt.lt.lt.lt.lt.lt.lt.lt.lt.lI.lu.lA.lN.lI.R4.R5.R6.vx.lz.cR.lu.un.un.R7.R8.R9.S..lt.lV.tq.hn.tH.gO", +".S#.Sa.Sb.#c.mu.gp.fx.tn.cT.cS.su.l9.I.QtA.Sc.mH.nF.cS.cS.cS.cS.cS.sB.cRQt0.Sd.Se.Sf.Sg.Sh.du.Si.ON.Sj.ON.gq.Sk.ss.ON.ON.Sl.Sm.Sn.So.Sp.Sq.MU.zf.fB.Fl.Fl.Fl.Fl.Fl.Fl.Fl.Fl.tm.tm.#hQty.Sr.Ss.QE.St.St.St.Iz.HM.Ky.Kx.Kx.Su.Su.Ky.MV.Nf.MV.Iu.Ix.Sv.Sw.Sx.Sy.RE.LU.Mn.Sv.Mn.IF.Jd.Jd.Mo.IM.IM.RK.JK.RW.Ou.O9.Ok.N..Sz.SA.Ok.M9.N..N#.N#.Ol.SB.JK.Lm.JT.Pk.Je.SC.JY.PY.PY.JY.IN.IN.JY.JY.PY.O4.PY.SD.SE.Jm.QS.SF.SG.SH.Jw.QU.Ne.KX.Ls.JK.JK.JV.Je.Ol.RP.RP.Ol.SI.Ls.Ls.KE.KX.KX.KX.QX.KM.SJ.SK.KM.Na.Jw.Lo.SL.Pi.Q0.Q0.Lo.KX.P8.Li.Ou.SM.Om.I1.RV.M9.SN.IZ.SO.KM.SP.SK.SO.SJ.SK.SQ.SJ.SR.SP.L3.Ol.Pg.JF.JT.SS.Np.J1.IM.IM.IM.JV.P6.P6.P6.IM.J1.J1.JT.Jr.JK.Jr.Jr.JK.ST.Ls.Ls.KE.Lt.KE.Jq.No.Mp.J8.Mq.J4.J4.J9.J4.Jx.K..L#.Ma.L#.Jx.Jx.Ma.Lt.Lt.Ls.KE.Ma.Mb.Lt.J3.J8.J8.J8.NN.Rh.GX.G7.SU.GW.GW.GW.HY.HY.A4.xA.A8.N1.fG.xA.xA.xA.xA.xA.xA.xA.xA.xA.xA.xA.xA.xA.xA.xA.xA.xA.xA.xA.xA.xA.xA.xA.xA.xA.xA.xA.xA.xA.Fl.#h.vY.sB.lu.lu.lu.zV.sB.su.tS.eGQtZ.zf.ti.B#.MA.l5.#fQtz.SV.zw.SV.gP.fA.zfQtz.z5.SW.dj.lt.t9.aA.lA.un.un.lu.t9.t9.t9.t9.lA.t9.un.t9.t9.t9.t9.t9.t9.t9.t9.t9.t9.t9.t9.t9.t9.t9.t9.t9.t9.t9.t9.t9.t9.t9.t9.t9.t9.t9.t9.t9.lt.lt.lu.lu.lA.lN.un.Ql.SX.SY.t9.lt.cR.lu.lI.aA.SZ.S0.S1.S2.lv.lv.dr.uP.S3.tj", +".S4.S4.Sb.#b.lu.w7QtK.ii.sk.cS.cR.qd.S5QtD.x1.S6.Ez.cU.cU.cU.cU.cU.aB.cR.B..S7.S8.S9.T..T#.Ta.ON.ON.ON.dn.Sk.Av.ON.ON.Tb.Tc.LL.MT.fz.N9.Sd.zf.fB.fB.fB.fB.fB.fB.fB.fB.fB.fB.zf.zf.Fl.Sd.Sr.Td.Ry.Ry.O0.O1.Iu.Ky.Ky.G0.Lt.Te.HW.KA.MY.KA.JW.IE.Mn.Tf.Tg.Th.RD.O3.L6.J0.Od.J0.IE.JV.JW.JW.M0.Je.PY.KX.IY.Ol.N..Ol.N#.L4.Mh.Ti.M9.Ok.Ol.Na.RH.Ol.Tj.Np.JT.Mo.Tk.IN.Pa.RK.RK.RK.JY.Sv.Tl.Pa.RK.QI.RK.Tm.Tn.To.Tp.Tp.I0.Tq.Tr.Tr.Ts.RO.IT.ST.JK.Mo.Je.N#.N#.N#.N#.Tt.IT.IT.KE.K8.K8.Jq.IW.SR.Tu.Tv.SJ.KM.Jw.KJ.KW.Pi.Lo.KW.KW.LT.PZ.JL.Tw.Tx.Ty.Tz.SQ.TA.SQ.TB.Tw.TC.TD.TE.Tv.TF.TE.TG.TH.TI.TI.Tv.L1.IY.JB.JK.JK.Jc.Je.JV.JV.JV.JV.TJ.TJ.J0.JV.Je.Je.JT.Jc.Jc.RJ.Jc.Ls.Li.Pi.KX.Lt.Lo.Lo.Jw.NH.KV.J..KV.Ja.Jb.J3.J3.Jw.Ma.Lt.KE.NI.Lt.KX.Pp.Pp.KE.II.Ls.Lr.Te.Ma.HZ.Ka.NN.J6.Pq.HN.HN.TK.GW.H..TL.TL.TL.TM.fg.Fl.Fl.Fl.#h.#hQtCQtCQtCQtCQtCQtCQtCQtCQtCQtCQtCQtCQtCQtCQtCQtCQtCQtCQtCQtCQtCQtCQtCQtCQtCQtCQtCQtC.Fl.#h.vY.sB.lu.lu.lu.sB.sB.cR.sk.TN.tk.gp.gp.dq.xQ.yUQtS.tmQtK.dx.dn.di.nl.gp.tk.gp.je.tk.sB.sB.tI.sB.s0.aB.sB.sB.sB.sB.sB.s0.sB.sB.sB.sB.sB.sB.sB.sB.sB.sB.sB.sB.sB.sB.sB.sB.sB.sB.sB.sB.sB.sB.sB.sB.sB.sB.sB.sB.sB.sB.sB.sB.sB.s0.s0.sB.sB.sB.Bp.TO.ss.cQ.su.TP.lD.sW.cO.TQ.TR.TS.TT.aC.mu.yXQtX.to.Ql", +".TU.TU.TV.#d.aC.uW.tq.di.cT.su.su.TW.TX.TY.oz.CU.cR.cR.cR.cR.cR.cR.cS.CU.TZ.T0.Io.S#.Im.hp.ON.ON.ON.l5.di.su.ON.ON.ML.T1.OW.T2.T3.tr.fA.ti.fe.fe.fe.fe.fe.fe.fe.fe.fe.fe.fe.ti.ti.tm.fA.Sr.QD.Ry.Ss.St.St.Iz.LP.IA.LS.T4.HW.Kx.Mn.IE.Kx.IG.IE.L6.O4.T5.T6.PU.LU.Mm.IE.Mo.Jd.Jd.J0.TJ.JV.Je.Je.QK.JK.RH.RH.RH.RH.Na.Rd.Lm.KU.L..M9.Ol.Na.RH.N#.I1.T7.Je.J0.Mm.IN.PY.LT.LT.QI.RK.T8.T8.T9.QI.U..LT.Tm.U#.N..Ua.I0.KN.Tq.La.No.QU.P3.ST.Oo.Oo.JV.JT.Na.Na.Na.Na.Ub.Pp.Ls.KX.KX.Lo.Ja.Uc.TG.Ud.Ud.Ue.Tx.KV.KV.Uf.Ug.Lo.Lo.Jw.Uh.Ui.Uj.Uk.TD.Ul.Ul.TH.Tu.TF.TG.Tu.TE.Ud.Um.Un.Ud.Um.Uo.Up.Un.Uo.TI.SP.KM.KQ.KX.Ls.JT.J0.Tk.Tk.Mo.Mo.Mo.Tk.Tk.JV.Je.Ov.SS.JK.ST.Re.ST.KX.L#.La.Jw.Jw.No.Ja.Lp.Lp.KV.J..KV.J3.Jw.J3.NH.Ma.Lr.KE.JK.JK.KE.Pp.J2.Pp.KE.Pp.Pp.KX.Jx.J3.Lu.Lu.Lu.HZ.HZ.HZ.Hy.H..HU.GU.GU.GU.GU.GJ.MA.fB.fB.fB.fB.Fl.Fl.Fl.Fl.Fl.Fl.Fl.Fl.Fl.Fl.Fl.Fl.Fl.Fl.Fl.Fl.Fl.Fl.Fl.Fl.Fl.Fl.Fl.Fl.Fl.Fl.Fl.Fl.Fl.Iq.Fl.tq.cS.sB.sB.sB.ss.sB.uW.uz.ty.uW.uW.cU.uW.Ez.tS.ze.to.eN.sk.cR.cQ.cR.cR.cR.cQ.cQ.uW.tS.tS.mT.tS.tS.tS.tS.yW.mT.mT.cT.mT.mT.mT.cT.cT.cT.cT.cT.cT.cT.cT.cT.cT.cT.cT.cT.cT.cT.st.st.st.st.st.st.st.st.st.st.st.cT.cT.st.st.st.st.cT.mT.yW.cT.yU.xE.yV.tp.tk.Fy.st.oH.yW.Uq.Ur.Us.Ut.cT.zX.sk.tk.cT.xF", +".Uu.Uv.Uw.vG.Ux.uW.mY.Uy.Bc.uW.zX.mH.qd.tI.mH.cT.cR.cR.cR.cR.cR.cR.cS.Uz.UA.UB.UC.UD.PM.UE.ON.ON.dk.nl.su.ON.ON.ML.UF.UG.OX.PM.QB.LN.MU.zf.zf.zf.zf.zf.zf.zf.zf.zf.zf.zf.zf.MU.MU.zf.fA.Rx.O1.O1.O0.Ry.Ry.LU.MV.O1.Oc.MY.MY.Oc.IN.JV.K9.K9.Mn.JY.O4.UH.QH.PY.JY.Mn.IE.IM.IG.J1.J0.Tk.J0.JV.J1.Pa.Jc.Na.IZ.KM.L3.SK.UI.Np.IM.UJ.Ol.RH.IZ.Na.N#.Ol.Ou.Nt.UK.UK.UL.UM.UN.UO.UO.QI.RK.RK.QI.UO.UO.UM.UP.UQ.N#.I0.UR.L3.US.UT.UT.L#.K8.K8.UU.IT.UV.Lm.L1.L1.L3.SJ.UW.KX.Lo.Ma.Jx.Lp.KV.UX.UY.Un.Up.Up.TG.KU.UZ.U0.U1.Uf.Q0.QZ.U2.U3.TB.U4.Ud.U5.U5.Tu.U6.U7.U8.U9.V..V..V#.Va.Vb.Vc.JH.Vd.Ve.Vf.Up.Tu.SJ.Vg.Ls.JT.SC.IN.IN.IN.J0.J0.J0.TJ.JV.Pk.Je.JU.Lm.Ls.KX.Li.KX.Lo.Jw.Ja.Ja.J#.Lp.Lp.Lp.Ja.Ja.J9.J9.J3.L#.J5.J3.Jq.KE.IT.IH.J2.II.IH.KG.IH.Mr.Mr.K8.Lt.J3.J9.J4.J9.J9.J5.J5.Vh.Ma.IL.Su.LO.LO.T4.LO.GQ.MC.Fl.fB.fe.fg.tm.Fl.Fl.Fl.Fl.Fl.Fl.Fl.Fl.Fl.Fl.Fl.Fl.Fl.Fl.Fl.Fl.Fl.Fl.Fl.Fl.Fl.Fl.Fl.Fl.Fl.Fl.Fl.Fl.Iq.fB.l5.cS.sB.sB.sB.cS.cS.cS.cT.sk.cT.cT.cT.cT.cT.cT.nF.cS.cS.cR.cT.cT.cT.cT.cT.cT.cT.cT.cT.cT.cT.cT.cT.cT.sk.sk.yW.Vi.yW.Vi.sk.Vi.yW.yW.yW.yW.yW.yW.yW.yW.mT.yW.yW.yW.yW.yW.yW.yW.yW.yW.mT.yW.yW.yW.Vj.Ql.Ql.Ql.Ql.Ql.Ql.Ql.Ql.Ql.Vj.Ql.Ql.yW.cT.yW.zd.zd.ty.tS.tS.mT.cT.Ds.D6.BY.tF.cT.tS.uW.cU.cS.xF", +".Vk.Vl.Vm.Vn.Vo.Vp.Vq.Vr.Vs.Vt.sk.VuQtA.dw.ME.eN.uz.cU.l9.Vv.uW.uW.Vw.Vx.dj.Vy.Gk.N4.fm.hh.Vz.yu.nl.st.ON.ON.ML.VA.UG.BD.VB.hc.Eo.MU.ti.ti.ti.ti.ti.ti.ti.ti.ti.ti.ti.ti.ti.#lQty.zf.FT.QC.Ob.Ob.Ob.Ob.O1.St.O1.LU.O4.RA.PO.Oc.IE.JV.IE.Od.L6.L6.PY.VC.QH.O4.PY.IN.JV.Jd.Je.JV.Mh.Mh.IN.J0.JT.JY.JK.L1.L2.SJ.SP.SP.VD.JT.JT.JT.T7.RH.KM.KM.Na.RH.RH.Lk.Nc.J0.IN.T9.T9.O3.O3.U..QI.QI.U..QI.T9.T8.Tm.VE.I0.I0.VF.VG.VH.La.No.Ja.La.La.Ne.Re.P6.P#.L3.L3.SJ.SP.K2.Lt.Jq.Ma.J3.Nc.Mp.VI.TG.U4.TG.TH.Tu.K7.I9.I8.VJ.UZ.L5.Ja.VK.Tv.U5.Uo.VL.Vf.VM.I4.I7.VN.VN.VN.VN.VN.VN.VO.VO.VN.VN.VP.Un.VQ.VQ.Ud.Uk.VR.Jc.JV.JX.IN.Sv.Sv.Mm.JX.Mm.Mo.IM.JT.JT.Jc.Oo.KX.J#.Ja.Jw.Ja.J#.Lp.Lp.IV.KS.KV.J#.Jw.Mb.Jx.Ma.Jw.Ma.Jx.Jx.Lo.Ls.JK.Ln.Jc.J2.J2.Po.Lm.JK.NI.Ma.Jx.J3.NH.J3.Lp.J3.Hy.Te.Ma.Lt.T4.T4.HW.HW.HW.HW.HV.VS.fB.Iq.zf.zf.zf.fB.fB.fB.fB.fB.fB.fB.fB.fB.fB.fB.fB.fB.fB.fB.fB.fB.Fl.Fl.Fl.Fl.Fl.Fl.Fl.tm.tm.tm.Fl.zf.zf.tq.cS.aB.aB.aB.cS.cS.aB.aB.wW.aB.gi.wW.gi.aB.aB.aB.aB.gi.wW.aB.aB.aB.aB.aB.aB.cS.aB.aB.aB.aB.aB.aB.aB.aB.gi.aB.aB.aB.gi.gi.aB.tI.sB.sB.sB.sB.sB.sB.tI.sB.sB.tI.sB.sB.sB.sB.sB.sB.sB.sB.sB.tI.sB.tI.sB.sB.sB.sB.sB.sB.sB.sB.sB.tI.sB.sB.tI.sB.sB.sB.sB.sB.sB.sB.s0.ss.sB.lz.rH.sW.sB.ss.cS.cS.sB.sB", +".VT.VU.VV.VW.VX.VY.VZ.V0.V1.V2.vY.hn.V3.hx.to.tj.gp.cR.V4.V5.sk.V6.V7.Uz.lU.V8.V9.N4.Sq.BD.W..W#.yU.ON.ON.Ta.Wa.Wb.Qz.QA.Io.Sq.Sd.MU.MU.MU.MU.MU.MU.MU.MU.MU.MU.MU.MU.MU.MU.l4.l4.MU.LN.OZ.Iu.Iu.Iu.Ix.Iu.IA.HM.Nf.MV.IA.IA.IF.IE.PP.RK.QE.LU.LU.Pa.Wc.KC.Pa.Pa.IE.Jd.Jd.Wd.JV.Mm.Tk.Mo.IM.SS.Tl.Ls.Tw.Tw.TB.Tv.TB.We.JT.Jc.Jc.J1.Wf.L1.L3.L2.L1.Na.I0.Wg.Np.Sv.RK.UO.Wh.QI.UN.UN.UN.UN.Wi.Wj.IN.Wk.Wl.KN.Wm.Wn.Wo.VH.La.Nd.Wp.La.IH.Mm.RK.Wh.Ov.Wq.Tw.Tx.Uk.VM.KE.Lt.Ma.Jb.Jw.KJ.Wr.Tv.Ws.TB.SR.L2.IH.KX.Ug.Wt.U1.Wu.J#.RX.VQ.VQ.Wv.Ww.Ve.Wx.Wy.Wz.VJ.I8.I8.I8.Wz.VJ.VJ.VJ.Wz.VJ.UZ.Vb.VQ.Ww.VL.Ue.WA.RJ.Pl.SC.SC.IN.JZ.IN.IN.IN.Mo.J1.P#.IH.K8.K8.No.J..J..Wp.Nd.Nd.Nc.Nd.Lp.Mq.Mp.Ja.Ma.L#.Ma.K8.Lo.L#.Jq.Ma.Lt.KE.IT.IH.Jr.Jr.Jr.Jr.KG.J2.Lt.Jx.J3.Jx.J3.J5.J3.Hy.K..WB.IJ.Mr.HW.Hz.Hz.WC.WD.PQ.WC.Ba.fe.GG.zf.ti.zf.fB.fB.fB.fB.fB.fB.fB.fB.fB.fB.fB.fB.fB.fB.fB.fB.fB.fB.fB.fB.fB.fB.fB.fB.fe.fe.fe.Iq.GG.zf.tq.su.cS.cS.cS.cS.cS.cS.cS.cS.cS.cS.cS.cS.cS.cS.cS.cS.cS.cS.cS.cS.cS.cS.cS.cS.cS.cS.cS.cS.cS.cS.cS.cS.cS.cS.s0.Av.sV.sV.sV.cS.cS.cS.cS.aB.aB.aB.aB.aB.aB.aB.aB.aB.aB.aB.aB.aB.aB.aB.aB.aB.aB.aB.aB.aB.aB.aB.aB.aB.aB.aB.aB.aB.aB.aB.aB.aB.aB.aB.aB.gi.aB.wW.wW.s0.cS.wW.EA.vx.vx.aB.aB.aB.aB.zV.aB", +".Vk.WE.WF.WG.WH.WI.WJ.WK.WL.WM.dr.wd.WN.zA.tj.dr.dq.cT.WO.WP.WQ.WR.WS.oH.WT.WU.UC.N4.PM.Sn.WV.WW.LG.LG.WX.WY.WZ.W0.W1.vZ.#F.#p.MU.MU.MU.MU.MU.MU.MU.MU.MU.MU.MU.MU.MU.MU.MU.MU.l4.MU.LN.W2.Ix.Ky.Ky.Ky.Ky.Ky.KD.Ky.KA.W3.W4.Jd.LU.PT.LT.LT.PT.LU.L6.W5.W6.Oc.IN.IE.JW.Jd.KD.NG.J0.J0.Je.Jc.W7.JY.Lo.SP.SJ.SP.SP.SJ.We.Lm.Oo.Oo.Jc.Lo.KH.SR.SJ.L3.KM.KN.W8.W9.Tl.T9.X..O5.U..QI.T9.T9.PY.Wj.Mm.UK.X#.Xa.Wq.Wn.TH.Xb.Xc.Nc.Wp.Xd.RK.Xe.Xe.UN.UN.Lm.SP.SP.Uk.Tv.KL.Ma.Ma.L#.L#.L#.Jq.QX.Xf.SJ.L1.Na.Ol.Tl.JY.JX.Pk.ST.Ja.Ls.Xg.Xh.Xh.Xi.Xh.JE.VJ.VJ.Nb.Nb.Xj.I8.Xj.I8.Xk.Nb.VO.VJ.VJ.Xl.JK.Xi.Xi.Xh.Ve.M9.Xm.QY.Xn.Xn.J0.IN.IN.IN.J0.JV.Lm.Jc.Ls.Lo.Ja.Ja.Ja.Ja.KJ.Pi.KX.Lo.Lo.Jw.J#.Ja.Jw.Lo.Mb.Lo.KX.Lr.Lr.KX.Lt.Ls.II.JK.Jc.KG.KF.Lm.Lm.J2.Pp.Ma.Jb.Jb.Jx.Jx.Ma.Ma.Ma.Ma.KE.II.J2.J2.PQ.PQ.PQ.Rz.Xo.Xp.Xq.GG.Xr.zf.ti.zf.fe.fe.fe.fe.fe.fe.fe.fe.fe.fe.fe.fe.fe.fe.fe.fe.fe.fe.fe.fe.fe.fe.fe.fe.fe.fe.#j.zf.#l.ti.eN.cR.cU.cU.cU.cU.Ez.cU.cU.cU.cU.cU.cU.cU.cU.cU.cU.cU.cQ.cU.cU.cU.cU.cU.cU.cU.cU.cS.cU.cS.cS.cS.cS.cS.cS.cR.Xs.Xt.Xu.Xu.Xu.Xv.Xw.Xw.Xu.Xv.Xx.Xx.Xw.Xy.Xw.Xw.Xz.Xy.Xy.Xw.XA.XA.XA.Xx.Xx.Xz.Xz.Xx.Xy.Xy.Xx.Xz.Xv.Xv.Xu.Xx.Xy.Xv.Xw.Xw.Xw.Xw.Xw.Xy.Xy.Xu.Xu.Xu.XA.Xv.Xv.Xw.Xz.Xw.tS.cR.st.cT.cR.cS.cS", +".XB.XC.XD.hc.SU.XE.XF.XG.XH.XI.XJ.zh.aV.zg.vV.XK.tn.cR.XL.XM.XN.XO.XP.mH.Cp.UB.XQ.XR.OX.Sn.XS.XT.XU.XV.XW.Sg.Qz.In.Sp.N9.LN.Sd.Sd.Sd.Sd.Sd.Sd.MU.MU.MU.MU.MU.MU.MU.MU.MU.MUQty.#m.l4.gP.XX.QF.IG.XY.XY.IG.XY.XY.Ky.K9.K9.Ix.O1.XZ.PU.O4.O4.O4.LU.L6.X0.X1.L6.Mm.IM.Jd.K9.Np.JT.IM.Mo.Ov.Re.Jr.IN.Ja.Uk.SP.Tx.SR.SJ.X2.IH.ST.IH.IH.Re.UZ.N..VF.Wq.X3.L3.L3.UR.X4.T9.LT.QI.U..PY.Tl.Sv.IN.IN.Mm.J0.X5.X6.X7.X8.X9.Y..Y#.K8.L6.Ya.Yb.Yc.Jr.Lp.Ls.L#.Tu.Yd.Ye.Yf.P5.Lp.Ja.Mb.II.NG.IN.Yg.Yh.Yi.SN.Ol.RW.O3.Oe.Yj.Yk.Yk.O3.Yj.Wz.Vd.Yl.VQ.Ym.Le.I8.I8.I8.I8.UZ.I8.Xl.Xl.I8.Nb.VJ.VJ.Nb.UZ.Je.Yn.Yn.Ym.Up.Ol.Jc.JK.Re.Re.IM.J0.Mm.J0.Mo.JT.Jr.ST.KX.L#.L#.IT.IH.K8.KX.JK.Re.ST.IT.K8.L#.Jq.P3.Ne.L#.L#.K8.Jq.K8.IT.K8.IT.IT.IH.Jr.Jr.Jr.Np.KD.Ms.IL.Jx.Jx.K..Jx.Jx.Lt.Lt.Lt.KE.Yo.J2.Lm.KG.Xo.Kx.Kx.Kx.Kx.Yp.Xq.Xr.Xr.MU.MU.GG.zf.zf.zf.zf.zf.zf.zf.zf.zf.zf.zf.zf.zf.zf.zf.zf.zf.zf.zf.zf.zf.zf.zf.zf.zf.zf.ti.GG.MU.MU.gp.cR.cR.cR.cR.cR.cR.su.gh.dk.z3.tj.di.gr.su.cS.zX.qd.cS.cU.cS.sV.cS.cU.EA.wW.s0.cS.cU.EA.wW.wW.cS.cS.cS.DL.Yq.Yr.Ys.wU.Yt.Ys.Yu.Yu.Yu.Yu.Ys.Ys.Yv.Yv.Yv.Yv.Yv.Ys.Ys.Ys.Ys.Yu.Ys.Yw.Yx.EQ.wU.Yy.wU.Ys.wU.Ys.Yz.Yz.Ys.Ys.Ys.Yv.Yv.Yv.Yv.Yv.Yv.Ys.wU.YA.Yu.Yu.Yz.Yu.Ys.Ys.EV.YB.YC.YD.B5.xE.sk.cS.ss", +".W1.YE.YF.g0.HY.YG.YH.YI.YJ.YK.YLQtT.BY.zS.YM.YNQtA.tS.YO.YP.YQ.YR.YS.st.GHQt0.xA.YT.PL.Sn.YU.YV.YW.YW.YX.Sf.xw.wd.tr.Eo.Sd.Sd.Sd.Sd.Sd.Sd.Sd.Sd.Sd.Sd.Sd.Sd.Sd.Sd.Sd.Sd.Sd.fA.fm.fA.Ip.YY.Kx.KD.Rz.Kx.Ky.Ix.Ix.Iu.IE.L6.PU.YZ.PU.O3.O4.PY.Tf.PY.LU.I7.KC.Mn.IE.JV.Je.NG.KG.Po.JU.JU.JT.Jc.Jc.IN.Jw.Tv.Uk.TB.Uk.SP.X2.Jc.RX.IT.IT.P3.JK.Y0.VF.SP.Y1.SR.Wq.Wq.I0.Y2.Wj.RK.RK.Sv.UL.UL.Mm.UK.Mo.UK.Y3.Y4.Y5.Y6.Y7.Y8.Y9.Z..Z#.Yb.Sv.Nc.Za.Zb.No.Jp.Zc.Zd.Zc.Y7.M9.No.Jx.L#.Jq.IT.KG.Q..L3.Ze.N..I2.QL.Zf.Zg.Zh.P7.P7.O5.Zi.KU.Tv.TI.Un.Up.KH.Zj.KU.UZ.I8.I8.I8.I8.I8.Xl.I8.I8.I8.I8.I9.Je.Zk.Xi.Ve.Vd.Na.JK.Oo.Oo.Oo.Lm.JT.Je.JT.W7.JK.Ls.Li.Li.JK.W7.JT.Lm.Oo.RX.JK.Jc.W7.Lm.Jc.KX.Li.JK.Ls.KX.KX.Ls.Ls.Ls.Ls.JK.Jc.Jc.Lm.KD.KF.Jc.Lm.Jc.Lt.Mb.Jx.Jx.Jx.Ma.Lt.K8.KE.IT.IH.Zl.KD.K9.IF.Ix.HM.LP.QF.QF.XX.Xq.Xr.MU.MU.#l.#l.ti.ti.ti.ti.ti.ti.ti.ti.ti.ti.ti.ti.ti.ti.ti.ti.ti.ti.ti.ti.ti.ti.ti.ti.ti.ti.ti.#lQtyQty.gp.uW.cR.cR.cR.uW.uW.sV.BU.tq.Sc.oC.Zm.di.vI.ioQtN.yt.tq.uz.vY.l8.tp.sjQtS.tj.B5.yu.yu.xE.tk.xE.tk.y0.st.zX.Zn.Zo.Zp.Zq.Zr.Zs.Zt.Zt.Zu.Zu.Zv.Zw.Zw.Zw.Zw.Zw.Zw.Zw.Zw.Zx.Zy.Zy.Zu.Zz.ZA.ZB.ZC.ZD.ZE.ZF.yo.ZG.ZH.Zx.Zv.Zx.ZI.Zw.Zw.Zw.Zw.Zw.ZI.ZI.Zx.Zu.Zu.ZJ.Zt.ZK.ZL.B6.ZM.ZN.ZO.f#.w7.ZP.PA.cU.wW", +".ZQ.YE.ZR.ZSQt0.ZT.ZU.ZV.ZW.ZX.gZ.wb.ii.ti.ZY.yq.sj.CU.ZZ.YP.Z0.Z1.Z2.cT.Fl.fz.VB.LM.Z3.LL.Z4.Z5.YW.YW.Z6.Z7.Fp.uP.Sq.#p.fA.fA.fA.fA.fA.fA.fA.fA.fA.fA.fA.fA.fA.fA.fA.fA.fA.fm.#p.fA.LN.YY.Kx.IG.XY.QF.Ky.HM.Iz.PP.O1.Ry.XZ.RE.RE.RE.QJ.LU.L6.LU.QE.Kd.LR.Nf.IE.Jd.IM.KD.KG.KD.JT.J1.Np.Jr.Jr.JY.Ja.Tu.SP.TB.Ws.Uk.RG.Jc.JK.Ls.Ls.Ls.ST.P#.Z8.Z9.SP.VF.VF.SR.Wq.QR.L5.T8.Tl.Sv.Sv.Tl.IN.Tk.Je.Lm.Pm.RT.0..0..Vf.0#.0a.Pm.0b.K9.J8.Jp.J8.J8.Ma.Jo.Ww.0c.Tv.X3.JH.LT.L6.KD.Mb.K#.Lq.0d.Ve.Un.Tu.SR.L1.LT.Oe.P7.O5.T9.Pa.0e.KU.SP.Tu.Ud.0f.JQ.Lp.Wp.Mp.K7.0g.Xj.Xj.Xj.UZ.Xj.Xj.Xj.0h.0i.Pk.Yn.Vf.Un.TI.IY.Re.IH.IH.Jr.P#.Lm.Lm.Jr.IH.ST.IT.K8.Re.Ov.Je.J1.Np.Re.IT.IT.Re.P#.Np.Jr.Ls.P3.IH.ST.P3.IT.JK.IT.IT.IT.JK.Lm.W7.Lm.KD.KG.J2.JK.Ls.Ma.Jx.Jx.Jx.Mb.Lt.NI.JK.J2.KG.NG.M0.Jd.Od.L6.Mn.Iv.Ix.Wd.Ky.0j.pq.Xr.VS.VS.l4.MU.MU.MU.MU.MU.MU.MU.MU.MU.MU.MU.MU.MU.MU.MU.MU.MU.MU.MU.MU.MU.MU.MU.MU.MU.MU.MU.MU.MU.fA.#m.di.cT.cR.cR.cR.uW.uW.cQ.0k.Pz.0l.0m.oX.vY.0n.0o.#j.zw.hh.S3.GQ.g6.hp.0p.fC.0q.g6.0r.tr.S3.0s.gQ.yq.gR.cR.xF.0t.0u.0v.0w.0x.0y.0z.0A.0A.0A.0B.0C.0C.0C.0B.0B.0B.0C.0C.0C.0D.0D.0D.0E.0F.0G.0H.0I.0J.0K.0L.0M.0B.0N.0A.0D.0B.0B.0B.0B.0B.0B.0B.0B.0A.0O.0O.0O.0P.0Q.0R.0w.0S.0T.0U.YD.yu.vY.vY.cR.cS", +".0V.0V.0W.zg.OF.zi.no.#l.0X.0Y.0Z.PE.l5.yu.00.01.02.03.04.XM.05.XP.lx.yu.zf.T3.QA.06.Qz.OW.07.YW.YW.08.Sg.09.VB.1..Sq.fm.fm.fm.fm.fm.fm.fm.fm.fm.fm.fm.fm.fm.fm.fm.fm.fm.fm.LN.0r.LN.1#.1a.W4.Kx.W3.Ky.Iu.MV.Ry.Ry.O4.O4.LU.RA.PU.YZ.O4.LU.L6.Oc.L6.1b.W6.Mn.JW.IM.IM.Np.Jr.SS.Lm.Np.Lm.Jr.P#.JY.Ja.Ul.Tv.Ws.Tu.Tu.1c.Np.Lm.IH.JK.Jr.Jr.Xd.J1.1d.1e.1f.1g.Wn.1h.SJ.1i.Xd.Sv.Sv.Wj.Pa.Sv.Mo.Jr.Jq.Ya.X1.1j.Zk.Vf.W8.1k.1l.IM.J7.Jo.Ka.1m.L#.1n.J0.1o.RM.RM.1p.IP.O4.Mn.KD.II.Ma.Jx.1q.1r.TH.TI.Uo.Up.KJ.Lo.JK.JT.J0.IN.1s.KU.SR.SR.Ws.Ue.IQ.KJ.Lp.Lp.J#.Lp.J..1t.UZ.UZ.UZ.UZ.UZ.UZ.KU.QK.Up.Ud.TI.TH.RH.Lm.Lm.W7.Lm.Lm.Lm.Lm.W7.Oo.JK.RX.JK.RJ.JV.JV.Je.JT.Lm.Oo.Jc.Lm.JT.Lm.Jc.JK.JK.Jc.IT.K8.Jq.K8.K8.JK.JK.ST.P#.Jr.Lm.Np.J2.II.KE.Ma.K..Jx.K..Ma.IJ.II.IH.KG.KD.Jd.IF.IA.PP.PP.PP.Ob.Iu.HM.LP.QF.1u.1v.MU.VS.MU.#mQty.MU.MU.MU.MU.MU.MU.MU.MU.MU.MU.MU.MU.MU.MU.MU.MU.MU.MU.MU.MU.MU.MU.MU.MU.MU.MU.MU.MU.fA.MU.di.cT.cR.cR.cT.cT.st.zX.tS.gp.oW.1w.nI.l5.Ds.io.fp.zfQtA.gP.GN.wb.dJ.#m.zf.e9Qtz.Fl.fA.Eo.ts.0s.tr.xA.yU.xF.1x.1y.1z.1A.1B.1C.1D.1E.1E.1E.1E.1F.1F.1F.1F.1F.1F.1F.1F.1F.1G.1G.1G.1H.1I.1J.1K.1L.1M.1N.1O.1P.1Q.1Q.1R.1R.1S.1S.1S.1S.1S.1S.1S.1S.1R.1Q.1R.1T.1U.1V.1W.1X.1Y.1Z.10.11.zU.Qo.sC.cR.cU", +".12.VU.UwQtC.tS.sjQty.N9.13.14.e2.dj.15.16.17.18.19.2..2#.2a.2b.2c.ss.vY.fm.VB.ZQ.T2.Rw.Wb.2d.YW.YV.2e.2f.BD.OY.tr.Eo.#p.#p.#p.#p.#p.#p.#p.#p.#p.#p.#p.#p.#p.#p.#p.#p.#p.#p.LN.LN.LN.Fj.Xp.QF.LP.Ix.Iu.MV.St.QJ.Ry.O4.LU.Nf.Iu.IA.Mm.Jd.Mo.IE.IE.IA.2g.Wg.NG.M0.JV.K9.Po.Lm.JT.Lm.Lm.Lm.Lm.RJ.IN.KV.Ud.TG.TG.TH.TI.2h.RJ.SS.Lm.Lm.RJ.RJ.SS.Ov.IT.JH.TG.Yd.Wo.VG.Wn.Tv.2i.IN.JY.Pa.JY.JX.IM.IT.La.Zi.2j.2k.2l.TG.SF.2m.O4.K#.K7.No.J2.Je.O4.2n.2o.K5.SF.X3.2p.I2.Mr.II.J1.RK.Xe.2q.2r.Pe.P5.Ok.Ol.Na.Sv.KX.Jg.Mq.Wp.QU.J1.UZ.TI.TH.TG.TG.2s.K8.QU.Ja.Nc.Nc.Nc.Wp.Jo.0g.0g.0i.0g.Xj.Lm.O4.Vd.Um.Ud.TI.Na.Np.Np.Lm.Np.Lm.Np.Lm.P#.IH.Ls.IT.Jr.Ov.Mo.IM.JT.Lm.KG.P#.Jr.Jc.Lm.Lm.JK.JK.Jc.Oo.JK.Ls.Lo.KX.KX.Jc.Oo.Ls.Re.Jc.Xm.Jc.II.Ls.Lr.Mb.Ma.Lo.Lt.KE.J2.KG.KD.Jd.IE.Mn.M2.PY.PY.O4.LU.L6.MV.Ix.Ky.Kx.Yp.1v.fA.fA.fA.fm.fA.Sd.Sd.Sd.Sd.Sd.Sd.Sd.Sd.Sd.Sd.Sd.Sd.Sd.Sd.Sd.MU.MU.MU.MU.MU.MU.MU.MU.MUQtyQtyQty.MU.fA.#m.dq.tS.cT.uW.uW.tS.tS.xF.cT.tp.z3.NV.2t.yX.tS.uz.yV.xz.ty.D5.w7.xE.tx.xE.xE.zd.ty.xE.D7.w7.tk.w7.tk.xE.cT.yW.2u.2v.2w.2x.2y.2z.2A.2B.2C.2D.2D.2A.2D.2C.2C.2C.2C.2C.2B.2C.2C.2E.2C.2B.1E.2F.2G.2H.2I.2J.2K.2L.2E.2C.2C.2C.2C.2C.2C.2C.2C.2C.2C.2C.2C.2C.2C.2B.2M.2N.2O.2P.2Q.0L.2R.11.oy.ys.xz.cT.cR", +".0V.0V.TVQtz.2t.2S.W1.2T.2U.2VQt5.2W.2X.2Y.2Z.20.21.22.23.24.25.26.l8.gq.27.sD.LM.Z3.LL.YU.YV.XT.28.S8.Qz.LM.sP.N9.Sq.LN.LN.LN.LN.LN.LN.LN.LN.LN.LN.LN.LN.LN.LN.LN.LN.LN.LN.1#.1#.0r.GN.W2.KA.IE.Iu.MV.PP.QE.QE.LU.LU.Nf.IE.Jd.J1.IG.Jr.Np.Np.Jr.KD.29.Wg.IF.Jd.K9.KD.KD.KG.Jr.Np.Np.KG.Np.Lm.Mm.IV.Un.UY.TI.Ud.Un.3..3#.Np.J1.3a.Np.Np.3b.J1.Np.J7.3c.TI.3d.TG.X7.TG.Wo.3e.Pa.Pa.Nf.IM.IH.No.Mq.KY.3f.3g.Y8.SJ.M9.3h.3i.Ka.3j.IM.IA.QI.3k.X#.Zf.W8.1g.3l.0#.Mc.JY.3m.L7.3n.3o.3p.3q.3r.3c.RH.3s.Yi.3t.O4.IE.JT.II.Mb.Lp.KX.Yn.Xi.3u.Vf.Tu.J8.Jw.Ja.Lp.Lp.Ja.Ja.Ja.K#.KU.I9.NL.J..Pm.3v.Un.Un.3w.Ud.Lj.KD.Po.Lm.RJ.Po.KD.JT.Jr.IH.KE.IH.Np.K9.K9.K9.Np.KG.KG.KG.Jr.Jr.Lm.KG.II.II.Jr.J2.IH.KE.Jq.K8.KX.IH.JK.KE.IH.IT.IH.IH.KE.Jq.Ma.IL.Lt.Lt.KE.IH.Np.J1.Jd.Mn.Sv.Pa.O4.PU.QJ.QE.LU.PP.Nf.Ix.Kx.Zl.WC.1v.fA.fA.gP.gP.fA.fA.fA.fA.fA.fA.fA.fA.fA.Sd.Sd.Sd.Sd.Sd.Sd.Sd.Sd.Sd.Sd.Sd.Sd.Sd.Sd.Sd.Sd.fA.fA.fA.Sd.Ip.#p.ji.sk.cT.cT.cT.sk.sk.l8.yU.l8.tF.sk.ty.sk.l8.mT.cT.cT.cT.cT.tS.st.cT.cT.cT.cT.cT.cT.cT.cT.cT.cT.cT.cT.cT.sk.3x.3y.3z.3A.3B.3C.3D.3E.3E.3F.3G.3G.3H.3H.3H.3H.3G.3G.3G.3I.3J.3I.3K.3J.3L.3L.3M.3J.3J.3N.3J.3F.3E.3G.3J.3I.3G.3H.3H.3H.3H.3H.3H.3G.3G.3G.3G.3E.3C.3O.3P.3A.3Q.3R.3S.Fy.tk.tk.uz.0k.0k", +".v0.0V.Sb.fG.zR.3T.3U.3V.3W.3X.3Y.3Z.30.31.32.33.34.35.36.37.38.39.B4.aW.QB.YT.T2.4..UG.4#.2d.4a.4b.WZ.4c.QA.uP.#F.Eo.Eo.Eo.Eo.Eo.Eo.Eo.Eo.Eo.Eo.Eo.Eo.Eo.Eo.Eo.Eo.Eo.Eo.Eo.fp.Sq.Eo.GN.O..HM.Nf.Ob.PP.QE.Ry.Tf.PY.LU.Mn.JV.JT.KD.KD.KF.KG.J2.J2.KD.4d.4e.IE.Je.Lm.Lm.KF.Jc.KF.KG.Lm.Lm.Lm.Lm.Q1.Lp.Vf.4f.Un.4g.Ve.RT.Lm.J1.IM.P6.Je.JT.J1.IM.Np.IM.4h.TG.Yf.TI.4i.Xb.Yd.Wo.4j.L6.IM.Ms.Jq.1m.Jo.4k.4l.4m.4g.4n.SF.4o.3j.Ms.4p.IF.UM.4q.Yb.4r.O5.UR.4n.SP.Z9.LW.4s.4t.0d.Yb.4u.3k.4v.4w.4x.Ol.N#.Ol.Yb.4y.3k.4z.Sy.RE.L6.2q.4A.4B.Zk.4C.Xi.4D.4E.4F.0e.Xe.4G.4G.4G.3t.Yc.Yj.4H.4I.PY.N#.4J.Up.4K.Up.4L.IG.KD.KD.KD.KD.JT.KD.KG.Ln.Pp.J2.KD.Je.Je.M0.KD.Po.KD.Lm.Jc.KG.KD.KG.II.II.J2.Lm.Jc.Ls.Lt.KE.II.Jc.II.Pp.II.II.II.NI.Lr.Lr.Lt.KX.KE.KE.II.Lm.NG.JW.Mn.LU.PY.PU.PU.YZ.PU.O4.Tf.PO.Mn.Jd.KD.KG.WC.GO.fA.fA.fA.fA.fA.fA.fA.fA.fA.fA.fA.fA.fA.fA.fA.fA.fA.fA.fA.fA.fA.fA.fA.fA.fA.fA.fA.fA.fA.fA.fA.gP.fA.LN.gP.dr.sk.tS.tS.tS.tS.tS.sk.yW.yW.ty.ty.ty.sk.yW.tS.tS.tS.tS.tS.tS.cT.tS.tS.tS.tS.yW.tS.cT.tS.yW.sk.tF.tS.tS.ty.4M.4N.4O.4P.4Q.4P.4R.4R.4R.4Q.4Q.4R.4R.4R.4R.4R.4R.4Q.4S.4S.4P.4P.4R.4S.4O.4P.4S.4S.4T.4U.4S.4P.4V.4W.4Q.4S.4P.4R.4R.4R.4R.4R.4Q.4S.4P.4P.4P.4P.4R.4P.4P.4R.4X.4Y.A9.B5.uz.tk.xE.cT.tS", +".sD.sD.4Z.GG.40.41.42.43.44.45.46.47.48.49.5..5#.5a.5b.5c.5d.5e.xh.dq.gR.Sp.T2.Z3.5f.YU.5g.5h.5i.5j.Sn.So.fz.1..g7.Sq.Sq.Sq.Sq.Sq.Sq.Sq.Sq.Eo.Eo.Eo.Eo.Eo.Eo.Eo.Eo.Eo.Eo.Eo.fp.fp.Eo.5k.O..Iu.MV.Ob.O1.LU.LU.LU.O1.L6.IA.Jd.IG.KG.KG.LS.KG.KG.KG.K9.5l.NE.Wd.J1.Zl.Zl.IH.IH.Zl.KG.LS.J2.LS.Jr.IN.KV.Ww.Vf.Y6.0..Zc.5m.Np.UV.5n.UK.UK.5n.Mm.Sv.IM.IM.Mm.5o.Up.Yf.3l.3d.Xb.2p.5p.Ke.IH.Nc.5q.K7.Jo.P7.5r.5s.3l.5p.1o.5t.Mn.J0.K9.Mm.5u.0b.2q.5v.Yc.L1.UR.UR.Wm.IQ.0d.0d.4F.5w.5x.3k.5y.Na.5z.5z.KM.Ze.5A.5x.5x.3m.4H.4H.3m.5B.5C.TG.0c.3u.5D.5E.Ol.5F.5G.5H.5I.5J.5K.5K.5L.5M.T6.M4.1r.5N.Ve.Ve.Ve.5O.5P.KD.KD.J1.KD.KD.J1.KD.KG.IH.IT.J2.Np.K9.K9.J1.Np.J1.J1.Np.Jr.KG.J1.KG.Ms.II.LS.Np.Jr.KE.Lt.KE.II.J2.Ms.KE.K8.K8.K8.K8.K8.K8.KE.KE.II.II.Jr.Np.IM.Mm.Pa.O4.PU.5Q.RE.PU.PU.QJ.LU.L6.Ix.K9.KD.1u.WC.1v.Ip.Ip.Ip.Ip.fm.fm.fm.fm.fm.fm.fm.fm.fm.fm.fm.fm.fm.fm.fm.fm.fm.fm.fm.fm.fm.fm.fm.fm.fm.fm.fm.#p.Ip.0r.LN.nl.yu.sk.sk.sk.sk.sk.sk.xE.gpQt6Qt6.tt.dq.BY.tS.yu.yW.cT.cT.cT.sk.mT.tS.tS.xF.uW.NW.tS.sk.yW.tS.ty.tS.tS.ty.5R.5S.5T.5U.5V.5T.5W.5W.5W.5X.5X.5X.5X.5X.5X.5X.5X.5X.5X.5X.EK.EK.5X.ED.5Y.5Z.5Y.50.51.50.5Y.52.53.5V.5V.5X.5X.5X.5X.5X.5X.5X.5X.5X.5X.54.5W.5W.5W.54.5T.5W.55.56.57.gr.yX.vY.xE.cT.tS", +".W1.W1.Sa.ti.58.59.6..6#.0o.gR.6a.6b.6c.6d.6e.6f.6g.6h.6i.6j.6k.tt.sj.xA.OY.W0.LL.6l.5h.Sg.6m.6n.6o.T2.tH.uP.vX.#F.Sq.Sq.Sq.Sq.Sq.Sq.Sq.Sq.Sq.Sq.Sq.Sq.Sq.Sq.Sq.Sq.Sq.Sq.Sq.Sq.g7.Sq.6p.Ho.Nf.L6.O1.LU.M2.PO.6q.Od.IE.Jd.K9.JT.KG.KG.KF.KG.KD.JT.Je.6r.Ox.K9.Je.J1.Np.Jr.LS.Np.JT.Lm.Ln.J2.KF.J0.J..Yn.Wv.6s.Y8.6t.Ti.SS.UV.5n.UK.UK.Mo.IM.6u.Wd.IM.1n.6u.6v.Up.4g.Y..Ye.Ye.3l.L9.0g.Ka.6w.Za.Jo.P7.6x.5s.3l.1h.KM.6y.6z.Jr.IT.QI.0b.0b.Ya.Yb.L6.2p.6A.5p.Yh.6B.6C.4t.6D.4y.4z.Z..6E.2p.Tv.6F.Xf.SR.Xe.5u.3t.4G.5u.4z.5A.3k.KD.N#.Xf.6G.Y..Ww.6H.6I.6H.5E.6J.5E.6K.6L.6M.6I.6I.3g.6I.6N.5N.Vf.6O.Ol.KX.JT.NG.K9.JT.JT.K9.NG.Po.J2.Pp.Jc.KD.JT.NG.NG.K9.Je.M0.JT.KG.Lm.NG.Po.JK.Pp.KF.Po.KG.Pp.KX.Ls.Ls.J2.J2.KE.KX.Lo.Pp.J2.Pp.Pp.JK.Ln.J2.KG.KD.KD.Jd.Mn.LU.QI.5Q.PU.O5.PU.PU.QJ.PP.Iu.Jd.Kx.Rz.1u.6P.Fj.LN.LN.LN.LN.LN.#p.#p.#p.#p.#p.#p.#p.#p.#p.#p.#p.#p.#p.#p.#p.#p.#p.#p.#p.#p.#p.#p.#p.#p.#p.#p.#p.LN.fp.Eo.dr.xE.ty.ty.ty.ty.ty.sk.uz.to.tn.B2.xd.to.D6.W#.#f.6Q.B2.tj.ih.PD.ijQtX.gR.zi.dr.gO.zR.dj.sC.sk.ty.sk.tF.uz.6R.6S.6T.6U.6V.6W.6X.6X.6Y.6Z.6Z.6Z.6Z.6Z.6Z.6Z.6Z.6Z.6Z.6Z.6Z.60.6X.61.62.63.64.65.66.67.Ai.68.69.7..6Y.6Z.6Y.6Z.6Z.6Z.6Z.6Z.6Z.6Z.60.60.60.60.68.6X.7#.7a.7b.7c.7d.do.tq.yX.w7.tS.PA", +".12.Vl.7e.7f.7g.7h.7i.7j.zR.zh.H0.7k.7l.7m.7n.7o.7p.7q.Vt.7r.tnQtTQtN.Qk.7s.7t.7u.Sf.7v.7w.7x.7y.7z.7A.7B.7C.7D.7E.7F.#F.Sq.Sq.Sq.Sq.Sq.Sq.Sq.Sq.Sq.Sq.Sq.Sq.Sq.Sq.Sq.Sq.Sq.#F.#F.#F.6p.7G.MV.PP.PP.L6.Nf.Mn.Iu.IF.Jd.K9.IG.KD.Zl.KG.KG.KD.IG.K9.K9.7H.7I.Wd.6u.IM.7J.3b.Zl.Jr.Np.Zl.IH.II.IH.J0.7K.Zk.Xi.Xi.7L.7M.7N.3b.UV.IM.Mo.Tk.IM.J2.KE.K8.IM.Mm.Jd.J1.5r.Y5.0c.Yf.4g.Y7.Yn.7O.Jo.Jo.Jo.Jp.4G.KH.7P.Yf.Xf.UR.7Q.Yc.Ma.IM.Yb.2n.Z#.Zf.5A.K9.7R.4n.3c.3r.7S.LZ.0d.4y.5A.Zg.Oe.7T.7U.7V.Ze.7W.Na.UX.5v.6D.7X.4y.0b.0b.4y.Yb.7Y.Ze.L1.SJ.6A.4J.7Z.3g.70.71.3g.72.72.6I.6I.6J.6L.73.3g.7Z.Xi.74.75.K9.J1.K9.J1.J1.J1.K9.J1.KD.LS.II.LS.KD.J1.K9.JV.Jd.IM.Jd.J1.Jr.KG.KD.Np.IT.KE.J2.KG.KG.II.K8.KE.KE.IT.IT.II.IH.IT.Jr.Jr.IH.LS.KG.KG.Np.KD.K9.Jd.IE.Oc.LU.O3.RE.RE.RE.RE.O3.LT.LU.Od.KA.M0.KD.KG.Yp.GN.1#.1#.1#.Sq.1#.LN.LN.LN.LN.LN.LN.LN.LN.LN.LN.LN.LN.LN.LN.LN.LN.LN.LN.LN.LN.LN.LN.LN.LN.LN.LN.LN.0r.Sq.Sq.dv.xE.xE.xE.ty.ty.ty.sk.uz.to.B2.yZ.yZ.tj.eH.76.hc.77.78.g1.hc.0Y.79.hj.8..14.gQ.8#.vX.B..xE.ty.ty.ty.tF.8a.8b.8c.8d.8e.8f.8g.1V.8h.2K.2K.2K.2K.2K.2K.2K.2K.2K.2K.2K.8i.8i.8j.8k.8l.8m.8n.8o.8p.8q.8r.8s.8t.8j.8i.8i.2K.2K.2K.2K.2K.2K.2K.2K.2I.2K.2K.2I.8u.8v.8w.8x.8y.8z.8n.8A.8B.tq.tq.vY.sk.ty", +".8C.8C.8D.MA.8E.8F.8G.8HQt6.dw.wb.8I.8J.8K.8L.8M.8N.8O.2c.8P.8Q.5e.8R.8S.8T.8U.8V.8W.8X.8X.7x.7y.7y.8Y.8Z.80.81.81.82.83.N9.g7.g7.g7.g7.g7.g7.g7.g7.g7.g7.g7.g7.g7.g7.g7.g7.N9.ub.#F.84.Iw.MV.L6.MV.Mn.Mn.IE.IE.Jd.K9.K9.K9.K9.KD.KD.KD.K9.K9.K9.K9.85.7I.Jd.J1.J1.IM.J1.Zl.LS.Jr.Jr.II.IT.Ms.Mo.KU.6H.5E.Zk.7M.Zk.86.87.3b.J1.J1.6u.IM.87.IL.1m.J1.4p.IM.6u.88.3s.89.9..Y8.6L.9#.9a.9b.9c.J7.9d.Xe.IP.9e.4J.Xf.UR.9f.4u.IA.9g.9h.9i.0b.Sy.4u.RE.3s.Hu.P5.3r.2s.9j.4y.Zf.9k.9l.0b.9m.4n.Yh.Yh.Yi.Yh.9n.9n.3n.4E.2n.Pm.UX.2o.UX.Pm.9o.RH.5z.5z.7V.2p.3u.9p.9q.9q.9r.9s.9#.71.5D.6N.6L.4m.3g.4C.9t.NG.M0.Je.Pl.Je.Je.Je.Je.K9.JT.KG.JK.J2.JT.K9.JV.J0.JV.JV.JV.JT.J2.KG.KD.KG.Pp.KE.Ln.Jr.J2.KE.Lt.K8.IJ.IJ.K8.Jr.Np.KG.Np.Np.Jr.KD.K9.J1.IM.IM.Mo.IE.Mn.PP.QE.PU.O5.RE.P7.RE.5Q.O4.LU.L6.IE.Jd.IG.Zl.Xp.GN.Sq.fp.Sq.Sq.Sq.Eo.Eo.Eo.Eo.Eo.Eo.Eo.Eo.Eo.Eo.Eo.Eo.Eo.Eo.Eo.Eo.Eo.Eo.Eo.Eo.Eo.Eo.Eo.Eo.Eo.Eo.Eo.fp.Sq.ts.tt.tx.xE.xE.xE.xE.xE.sk.tk.dr.aW.l5.xQ.dr.vYQtF.tm.wb.Io.gP.hc.Eo.9u.zw.0X.9v.ts.zg.ti.ij.xz.xE.xE.xE.Fy.eM.9w.9x.9y.9z.9A.9B.9C.9D.9E.9E.9E.9E.9E.9E.9E.9E.9E.9D.9D.9E.9D.9F.9E.9G.9H.9I.9J.8s.9K.8s.9L.9M.9N.9N.9N.9D.9E.9O.9O.9O.9O.9O.9O.9D.9N.9N.9N.9D.9C.9P.9z.9Q.9R.9S.9T.Py.dq.gp.yX.ty.ty", +".W1.W1.Ro.#p.nGQtC.dXQtN.gO.sjQtK.9U.9V.9W.9X.9Y.9Z.90.91.92.93.94.95.96.97.98.99#...8X.8X.7x.7y#.##.a#.b.T3#.c#.d#.e.vZ.1..vX.#F.#F.#F.#F.#F.#F.#F.#F.#F.#F.#F.#F.#F.#F.#F.N9.vX.#F#.f.Sr.Nf.Nf.Iu.IA.Ix.IF.Ky.Wd.IG.IG.IG.IG.IG.IG.IG.Wd.Wd.K9.K9#.g.Ox.Mo.Wd.Wd.IF.IG.Zl.Jr.87.Jr.II.II.IH.KD#.h.5s#.i#.j#.j#.k.KC.Jr.Np.KD.J1.IM.Mo.Mo.LS.IL.KD.Mo.Jd.IF.IF#.l.4J#.m.5s.9a#.n#.o#.p#.q.Mq.Mp.Jd.Pc#.r.Zd.Xf.Ze.1k.9n.6D#.s#.t.0d.5u.4z#.u.Iu.3r#.v#.w.Hc.6x.0d.4u.9k.Zf.Ya.Yb.Lb.5p.4n.4n#.x.Ze#.y#.u.1l.7X.1l.1l#.z.3k.5A.9l.4y#.A.QH.5z.3s.5z#.B.Y..5E.9r#.r#.C#.C#.D.7Z.Zd.5D.6L#.E#.F.J2.KG.JT.IM.IM.Je.Je.Wd.K9.K9.IG.KG.Ms.J2.Zl.J1.IA.Mm.JV.IM.Jd.KD.LS.Zl.KD.LS.IT.KE.IH.Zl.J2.Lt.Lt.KX.Lr.NI.Ls.Po.K9.JT.M0.JV.Jd.JW.JW.JW.J0.Mn.IN.L6.LU.O4.LT.PU.RE.RE.Yc.O3.O3.LT.Tf.LU.Mn.Jd.K9.KD.PQ#.G.g7.g7.g7.Sq.Sq.Sq.Sq.Sq.Sq.Sq.Sq.Sq.Sq.Sq.Sq.Sq.Sq.Sq.Sq.Eo.Eo.Eo.Eo.Eo.Eo.Eo.Eo.Eo.Eo.Eo.Eo.Eo.fp.Sq.Sq.tt.uz.xE.xE.xE.xE.uz.xE.tk.ze.to.dq.tj.gp.w7.vY.D7.ze.dr.eN.um.gp.xf.2t.NV.dr.dn.yX.eN.eN.w7.uz.uz.uz.BY.w7#.H#.I#.J#.K#.L#.M#.N#.O#.P#.P#.Q#.R#.Q#.Q#.Q#.Q#.P#.R#.Q#.P#.O#.S#.T#.Q#.U#.V.8f#.W.8f#.X#.Y#.P#.O#.O#.P#.P#.Z#.0#.0#.0#.0#.Z#.Q#.P#.P#.Q#.P#.P#.1#.2#.3#.4#.5#.6.9T#.7.dq.gp.vY.xE.zd", +".Vk#.8.Ro.uP.0X.zA.xV.hm.ts.A3#.9##.########a.9Y##b##c.18.YP##d##e##f##g##h.98.99#...8X.8X.7x.7y##i##j.PL.LM.In.sD.QA.T3.Io.1..N9.N9.N9.N9.N9.N9.N9.N9.N9.N9.N9.N9.N9.N9.N9##k.GF.ub##l##m.Mn.Iu.IF.LP.LP.Ky.Kx.Kx.IG.IG.IG.IG.IG.IG.IG.IG.IG.IG.IG.7H.Ox.Mo.Wd.Wd.IG.LS.LS.3i.Jr.3i.Ms.Ms.Ms.IT##n##o.K6##p.Y9##q.M..3i.Jr.3b.Wd.IM.IM.IF.6u.Zl.Zl.IG##r.IF.Wd.IG##s##t.2i##u##v.86##w.9b##x.J4.J5##y##z##A##B##C.IM.Ng.9i.4t#.u.9l.9l.4s##D.5Q##E##F##G##H##I.Z#.7X.4y.3k.4H.5B##J##K##L##M##N##O##P#.s#.y##Q.6D##R.4y##S.3t.RE.YZ.RD.5A.J3##T##U##V##W##X##Y##Z##0##1##0##2##3##3.OB.K9.Je.K9.KG.KG.K9.JV.Jd.Jd.M0.Je.IG.KD.KG.IH.IH.J2.J1.Mm.Mn.Jd.K9.K9.Zl.KG.KD.KD.KG.Mr.Lt.II.J2.Mr.IL.IJ.KE.Lt.KE.IT.J1.Jd.Mo.Sv.QE.RK.L6.Mm.IE.Mn.Pa.QE.O4.O4.QI.5Q.PU.RE.RE.RE.PU.PU.5Q.QI.L6.Mm.Mo.Wd.K9.0j.6p.#F.#F.#F.ts.ts.Sq.Sq.Sq.Sq.Sq.Sq.Sq.Sq.Sq.Sq.Sq.Sq.Sq.Sq.Sq.Sq.Sq.Sq.Sq.Sq.Sq.Sq.Sq.Sq.Sq.Sq.Sq.Sq.27.g7.tt.tk.xE.xE.xE.xE.tk.tk.tk.tk.vY.vY.vY.tk.tk.sk.ty.tS.cT.tS.cT.l8.cT.tS.tS.cT.yU.sk.sk.xE.tx.tk.tk.tk.xE.w7##4##5##6.8m##7##8##9#a.#a.#a.#a.#a.#a.#a.#a.#a.#a.#a.#a.#a##aa#a.#ab#ac#a#.3E#ac.3G.3J#ad#ae#af#ag#ah#a.#a##a.#a.#a.#a.#a.#a.#ai#a.#aj#ab#a.#a.#ak#al#am#an##6#ao.10.B4.yX.yX.tp.ty.uz", +".2S#ap#aq.sD.78.uA#ar#as.uP.yq#at#au#av#aw#ax##b##b.18##c.YP##d##d##f##g##h.98.99#...8X.8X.7x.7y#ay.UG#az.T2.So.uC.W1.Rn.Fk.1..vX.vX.vX.vX.vX.vX.vX.vX.vX.vX.vX.vX.vX.vX.vX.h#.h#.GF##l.Sr.IA.IA.IF.LP.Ky.Ky.Wd.Wd.IG.IG.Wd.Wd.IG.IG.Wd.IG.IG.IG.K9#aA.5F.IE.K9.KD.KG.KG.KG.Jc.Jc.Jc.J2.IH.IH.II.K8.KE.J2.Jr.Jc.Jc.IH.IH.J2.KG.J1.K9.J1.J1.IM.Np.Jr.KG.IG.Wd.KG.II.J5.Mq.Nc.Jq#aB.9d.9d.1m#aB.J5#aC.IL.Mr.IG.9l#aD#aD.9h.9i.1l.1l.5v#.u.4r.6C#aE.9i.9i#aF#aG#aG.2n#aF.3n#aH.3n#aE.Ng#aI#.t#aJ#aK#aL#aL#aM#.t#aI#aI#aD#aN##P#.y.9g.P7.PU.5Q.4k.Sy.9l.6D.2n.3n.0d.Yc.IM.Mr.Lt.LS.Wd.IF.Jd.Jd.Jd.Jd.Wd.Zl.LS.Wd.IF.IF.Jd.Wd.K9.KD.KG.J2.IH.J2.K9.IA.Mn.Jd.K9.KD.Po.KD.NG.K9.Po.II.KE.J2.Ln.KE.NI.KE.KE.Pp.Ln.J2.NG.Od.Oc.Tf.O3.Oe.PU.JY.IN.JY.PY.PT.YZ.RE.RE.M1.Oe.RE.RE.YZ.PU.PU.YZ.PU.M2.Od.IE.Jd.W3#aO#aP.#F.#F.#F.5k.ts.Sq.Sq.Sq.Sq.Sq.Sq.Sq.Sq.Sq.Sq.Sq.Sq.Sq.Sq.Sq.Sq.Sq.Sq.Sq.Sq.Sq.Sq.Sq.Sq.ts.ts.ts.Sq.N9.#F.ih.w7.uz.uz.uz.tk.uz.tk.tk.uz.xE.xE.uz.uz.tk.w7.tk.tk.w7.w7.w7.tk.w7.w7.w7.w7.w7.w7.w7.w7.eM.uz.uz.eM.tk.tk.eN#aQ#aR#aS#aT#aR#aU#aV#aV#aV#aS#aW#aW#aW#aW#aW#aV#aV#aV#aS#aX#aY#aS#aS#aZ#aS#aS#aS#a0#aW#aW#aS#aY#aY#aX#aT#aV#aW#aW#aW#aW#aW#aW#aV#aV#aV#aV#aV#aW#a1#aR#aS.2R.4M.tk.B5.tk.tk.tk.xE.w7", +"#ap.S4.OI#a2.MC.vZ#a3#a4.ii.fA#a5#a6#a7#a8#a9.9Y#b..18##c.YP##d##d#b##ba##h.98.99#...8X.8X.7x.7y#bb.OW.PL.In.VB.PM.OY.sP.Io.1..GF.GF.vX.vX.vX.vX.vX.vX.vX.vX.vX.vX.vX.vX.vX.h#.h#.GF#.f.QC.Ix.IF.Ky.Ky.Wd.Wd.Kx.IG.Wd.Wd.Wd.IG.IG.IG.IG.IG.IG.IG.K9#aA.Ox.IA.K9.Zl.Zl.Np.Zl.KG.Jr.Jr.Jr.87.3i.IT.Mr.Mr.3j.Ms.Ms.IH.Ms.IT.IT.3i.Jr.Np.7J.Wd.3b.3j.Ms.3i.Zl.LS.Mr#bc.88.L#.K.#aC.1m.5q.J4#aC.K.#bd.IJ.LS.Wd.QE.1l#be#bf.Ng.0d.0d#bg#aF#bh.Uc.0d##D.1q.Ng.Ng#aI#.t.Pb#bi#bj##P#bk.Ng.Ng#bj#bl#bm#bn#bo#bo#bp#bi#bl#.t#bq#bp#br#bq#bj.3o.5B.5u.M1.RE.Yc.3t.5w.2o.9j.0d.4z.LU.KD.II.KG.K9.IM.Jd.IM.Wd.IF.IF#bs.LS.Wd.IF.IM.K9.IG.KG.J2.IH.Ms.KG.Wd.IF.Ix.K9.Kx.K9.IG.Zl.IG.K9.KD.IH.Ms.Jr.J2.II.II.II.Ms.J2.Jr.IH.IG.Sv.Pa.LU.O4.PU.PU.O4.LU.LU.PY.QI.RE.P7.Yc.Z..Yc.P7.RE.PU.PU.O5.O5.O4.Pa.Mm.Mo.Jd.Jd.QF.84.ub.ub.ub#aP.N9.#F.#F.g7.g7.g7.g7.g7.g7.g7.g7.g7.g7.g7.g7.g7.g7.g7.g7.g7.g7.g7.g7.g7.g7.#F.#F.#F.27##k.N9.aW.vY.tk.tk.tk.vY.tk.tk.tk.tk.tk.tk.tk.tk.w7.w7.B4.B4.tp.tp.B4.B4.eG.eG.eG.D7.D7.tx.eM.tk.uz.uz.uz.uz.w7.tk.yu#bt#bu#bv#bt#bt#bw#bx#bw#bw#bw#bw#bw#bw#bw#bw#bw#bw#bw#bw#by#bw#bw#bz#by#bw#bw#bw#bx#bw#by#bw#bx#bw#bw#bw#bw#bw#bw#bw#bw#bw#bw#bw#bw#bw#bw#bw#bv#bA#bB#bw#bx.BY.tx.w7.tx.eM.tk.D6.w7", +"#bC#bD.hg#bE.PD.#n.GK.tn.xd#bF#bG#bH#bI#bJ#bK#bL##b.18.04.YP##d##d##f#ba##h.98.99#...8X.8X.7x#bM#bN.Rw.uC.T3.Fk.vZ.vZ.uP.hc.1..tr.tr.tr.tr.tr.tr.tr.tr.tr.tr.tr.tr.tr.tr.tr.tr.0p.tr##l.7G.KA.Ky.Ky.K9.K9.KD.KD.Kx.K9.K9.K9.KD.J1.KD.KD.KD.J1.K9.Wd.6r.Ox.IE.J1.KD.KD.KD.KG.KG.KG.KG.KG.KG.J2.IT.Mr.IJ.KE.II.II.IH.Ms.Mr#bO.3j.3i.Zl.Wd.IF.IG.3j.Mr.LS.Zl.Mr.LS.IJ.Wd.4p.Ms#aB.J6.J4.J5.K..IL.IT.Wd.QE.Sy.Z##aF.9h#bP#.z.1l.9i#bQ#aF#bR#bS#bT#aK#bU#bV#aM#bW#bX#.t#.t#aI.H#.9h#bY.9h#bZ#aI#aN#b0#b1#aM#aM#bn#b2#b0#.t#b2#bW#b3#.t#b4#aF.4t.4y.4z.5u.5u.5u##S.5A.5B.2o.3m.RE.J0.NG.K9.Mo.IA.Jd.Jd.IE.IE.Jd.KD.KG.K9.K9.KD.KG.J2.II.Pp.II.KG.Ky.K9.K9.K9.W3.Jd.K9.Lm.KD.Ky.Kx.J2.J2.KG.KG.J2.Pp.J2.KG.KG.KG.J2.M0.IN.L6.LU.LU.O4.YZ.YZ.PU.O4.LU.QI.RE.RE.Yc.Yc.P7.RE.5Q.PU.PU.PU.O4.Sv.Mm.Mo.Jd.Jd.IF.QF.84.#J.ub.ub.vX.N9.#F.#F.#F.#F.#F.#F.#F.#F.#F.#F.#F.#F.#F.#F.#F.#F.#F.#F.#F.#F.#F.#F.#F.#F.#F.gX.gX.N9.GF.vXQt6.vY.w7.w7.w7.w7.w7.w7.w7.w7.tk.tk.w7.w7.w7.w7.tp.w7.w7.w7.w7.w7.w7.w7.tp.w7.w7.tp.w7.tk.tk.tk.tk.tk.tk.tk.yV.tk.tk.tk.tk.tk.yV.yV.tk.tk.tk.tk.tk.tk.tk.tk.tk.tk.yV.B4.w7.tk.yV.tk.tk.w7.tk.B4.tk.yV.tk.tk.yV.tp.tk.tk.yV.tk.tk.tk.tk.tk.tk.tk.tx.uz.eM.eM.tk.eM#b5.tx.tx.eG#b5.tx.tk.tk.tk.BY#b5", +"#bD#b6#b7#bE.B..Eo.ti.tmQtN#b8#b9##.#c.#c##ca#cb#bL.18.04.XM##d##d##f#ba##h#cc.99#cd.8X.8X#ce#cf.OWQts.PM.vZ.hc.1..1..1..tr.tr.tr.tr.tr.tr.tr.tr.tr.tr.tr.tr.tr.tr.tr.tr.tr.0p.1..0p##l.OZ.Ky.QF.Kx.IG.IG.IG.IG.Kx.Wd.Wd.Wd.Wd.Wd.IG.IG.IG.IG.IG.7J#cg.Ox.IF.IG.Np.IG.Zl.Zl.Np.Jr.LS.LS.IH.Ms.Mr.IJ.IL.Mr.Ms.Ms.LS.LS.Ms.Ms.3i.LS.IG.Wd.IF.Wd.LS.3i.IG.3i.LS.LS.IF.UM.QE.KD.K..No.K..K..Lt.Np.LU.Yj.Ya.2n.9i.3n.7X.5u.4y.3n#ch.9n#ch#ci#cj#ck#cl#cm#cn#br#bl#ci#.t#bW#bp#.t#ci.Pb#bX.Pb#bW#.t#aI#aN#b2#bW#bn#bm#b2#.t#b2#b2#b2#bm#co#bZ#cp.2n##R.9g.5A.4y.6D.4r.7X.4z.Zf.3t.5Q.L6.K9.K9.Jd.IF.IF.IF.IF.IF.IG.LS.Ms.Zl.Zl.LS.WB.IL.Su.K..Mr.LS.Zl.Zl.IG.Wd.IA.IF.Kx.Wd.LP.QF.Zl.LS.Jr.Zl.LS.3j.3i.Jr.Zl.KD.K9.Mn.PP.LU.PU.O4.RK.QJ.5Q.4k.PU.LU.QI.P7.P7.Yc.P7.RE.5Q.5Q.5Q.5Q.PU.QE.Mn.IE.JV.JW.IE.IE.Ky#cq.ub##k##k.hf.ub.N9.N9.N9.N9.N9.N9.N9.N9.N9.N9.N9.N9.N9.N9.N9.N9.N9.N9.N9.N9.N9.N9.N9.N9.N9.vX.vX.ub.GF.GF.ij.l5.w7.w7.w7.w7.w7.w7.w7.w7.w7.w7.w7.w7.w7.w7.Bh.w7.w7.w7.w7.w7.w7.w7.w7.w7.w7.w7.w7.w7.w7.w7.w7.w7.w7.w7.w7.vY.w7.w7.tp.A9.w7.tp.w7.A9.w7.w7.w7.w7.w7.w7.w7.w7.w7.A9.A9.tp.w7.w7.w7.w7.tp.A9.w7.tp.tp.A9.tp.w7.A9.w7.w7.A9.A9.w7.w7.w7.w7.w7.w7.tp.w7.w7.w7.w7.tp.A9.w7.yV.tk.tk.tk.yV.B4.xE.vY", +"#bD#b6#cr#.8#cs.ts.ZY.hn.uP#ct#b9##.#c.#cu#cv#cw#cx#cy.04.XM##d##d##f#ba##h#cc.99#cd.8X.8X#cz#cA.MS#cB#cC#cD.hc.QB.1..1..1..1..1..1..1..1..1..1..1..1..1..1..1..1..1..1..1..1..QB.1.##l.Xo.Kx.K9.Kx.KD.Kx.KD.Kx.K9.J1.K9.K9.IM.K9.K9.K9.J1.J1.K9.Jd#cE#cF.Wd.Zl.Jr.Jr.Zl.IG.IG.Zl.Ms.Ms.IT.Mr#cG.IJ.IJ.Mr.Ms.Ms.Ms.Ms.3i.LS.LS.Zl.IG.IG.7J.Zl.LS.Zl.87.LS.LS.IG.PP.1n.Wd.Zl.Mr.Ms.Mr.Mr.Wd.5Q#cH#.z.6C#bg.4s.Zf.QI#cH#aG#bg.9i#aD#bX#cI#cl#cJ#ck#cK#bU#bp#aI.9h#aD#be#bp#b2.9h.9h#b2#b3#b3#bn#bW#co#b0#bW#cL#b1#bm#b2#b2#.t#co#b2#b3#bW#.t#aI#cM#cN#cO.4H.7X.3n#aI#cP#cQ#cR.PT.Tf.IE.JT.Jd.IE.IE.Jd.Jd.J1.J2.II.IK.Ma.G0.II.Jx.Ma.J3.J9.HZ.IK.T4.J2.Ky.Mn.Mn.Jd.KD.Ky.IE.Ky.KD.Zl.Zl.Zl.LS.LS.Jr.LS.Zl.Wd.Jd.Mn.LU.PU.PU.O4.O4.O4.O4.PU.PU.LU.PY.PU.O5#cS.5Q.PU.O4.QJ.PU.QJ.O4.LU.Nf.IA.IE.IE.Mn.L6.Iv.1..h#.GF.GF.GF.h#.vX.vX.vX.vX.vX.vX.vX.vX.vX.vX.vX.vX.vX.vX.vX.vX.vX.vX.vX.vX.vX.vX.vX.vX.vX.vX.tl.h#.tr.GF.nG.tq.yX.yX.yX.yX.yX.vY.vY.vY.vY.vY.vY.yX.yX.vY.vY.vY.vY.vY.vY.vY.vY.vY.vY.vY.vY.vY.vY.vY.vY.vY.vY.vY.vY.vY.vY.vY.vY.vY.vY.vY.vY.vY.vY.vY.vY.vY.vY.vY.vY.vY.vY.vY.vY.vY.vY.vY.vY.vY.w7.w7.tp.A9.A9.tp.w7.w7.tp.w7.w7.w7.w7.A9.w7.w7.w7.w7.w7.w7.w7.w7.w7.w7.w7.w7.tp.A9.w7.vY.w7.w7.w7.tk.tp.uz.A9", +"#bC#b6#cT#cU.B#.Eo.tl.vX.vZ#cV#cW#bH#bH#cu#cX#cY#cZ##c.04.YP#c0##d##f#c1#c2#cc.99#cd.8X.8X#c3.Z4.Rw.uC#c4#c5#c6#c7.hc.1..1..1..1..1..1..1..1..1..1..1..1..1..1..1..1..1..1..hc.hc.hc.9u.Xo.Kx.IG.IG.IG.IG.IG.Rz.Rz.J1.Wd.IF.Wd.IG.IG.Wd.Wd.IG.IG.J1#c8#c9.Wd.IG.Np.Zl.Jr.Zl.Jr.LS.Ms.Mr.Mr.Mr#d..Mr.Mr.Ms.Ms#d.#d..Mr.Ms.87.Np.KD.Wd.Wd.J1.Jr.J2.Mr.Np.J2.Ms.IA.KD.KG.IM.J1.KG.Jr.Np.Nf.4k.9k.0d#ch.1q.9n.7X.4k.4z.0d.9n#ci.Qd.Pb#d##da#cl#ck#cK#bU#aL#b2#bZ#bZ#b0#b3#aM#b0#b4#bP#.t#bm#b1#bn#bp#b3#co#bm#cL#bm#b0#b0#.t#b0#b0#b0#.t#bm#bm#b1#b1#co#db#.y#.z#dc#dd#b3#de#df#dg.Ob.Nf.Jd.K9.IE.Mm.IA.Wd.Ms.IJ.IL.K..J5.Su.J5.HZ.J4.J6.Ka.J6.IL.Mr.Zl.IA.Nf.IA.K9.Zl.Kx.Wd.IG.Zl.Zl.Zl.IG.IG.Zl.Zl.IG.IF.IE.IF.Mn.Pa.RK.RK.RK.RK.LU.Pa.LU.PT.O3.O4.LT.PT.O4.O4.O4.O4.O4.Tf.LU.M2.L6.Mn.Od.J0.Od.Mn.LU.6q#dh.h#.hf.hf.hf.GF.GF.GF.GF.GF.GF.GF.GF.GF.GF.GF.GF.GF.vX.vX.vX.vX.vX.vX.vX.vX.vX.vX.vX.vX.vX.vX.vX.h#.0p.GF.dx.tq.yX.yX.yX.yX.yX.vY.vY.vY.vY.vY.vY.vY.vY.yX.yX.yX.yX.yX.yX.yX.vY.vY.vY.vY.vY.vY.vY.vY.vY.vY.vY.vY.yX.yX.yX.vY.yX.yX.yX.yX.yX.yX.yX.yX.yX.yX.yX.yX.yX.yX.yX.yX.yX.yX.vY.vY.yX.yX.yX.vY.vY.vY.vY.vY.vY.vY.vY.vY.yX.yX.yX.vY.vY.vY.vY.vY.vY.vY.vY.vY.vY.vY.vY.vY.vY.vY.vY.vY.vY.vY.vY.vY.vY.tk.vY", +"#bD#di#dj.#n.tj.to.xd.xd.dw.Qk#dk#dl#aw#cu#dm#dn##b.18.04.YP##d##d##f#c1#c2#cc.99#cd.8X.8X#do.UG.PL#dp.OY#c4#dq#dr.Io.9v.QB.QB.QB.QB.QB.QB.QB.QB.QB.QB.QB.QB.QB.QB.QB.QB.QB.9v.9v.9v.PN.Xo.Kx.IG.Rz.Rz.Zl.Zl.Rz.Rz.J1.IG.IG.IG.IG.IG.IG.IG.IG.IG.IG#ds#dt.Np.IG.Zl.Zl.LS.Ms.Ms.Ms.Mr.Mr.Mr.KE.Mr.IJ#du.IJ.IJ#du#du.IL.IL.Ms.Zl.Zl.7J.6u.Wd.IG.Ms.Ms.Ms.IJ.J1.Zl.IH.Wd.Wd.Zl.LS.IG.QE#dv#dw#aF#dx#aD#bP#aE.4u.9l.4r.9h#bX#bY.UP#bX#dy#ck#dz#dA#cK#bU#aL#bX#aI#bZ#aN#bW#aM#bX#.t#b2#bn#aJ#bn#aM#aM#aM#bn#b3#cL#br#dB##P.H##aI#dC#aI#aN#co#bm#bm#bn#bo#bp#bm#cM#dD##S##D#dE.zF#b2.4z.Mn.K9.KD.NG.JW.IN.Jd.II.Ma.J3.J3.Hy.J6.J6.J6.NN.Ka.Ka.J6.WB.Ms.Ky.Nf.IA.IF.IF.Kx.Ky.IF.IG.IG.Jr.LS.J1.Wd.IG.IG.HM.IF.IA.IF.Nf.L6.Pa.LU.QE.LU.PP.L6.Pa.RK.RK.Pa.Pa.LU.QE.LU.LU.LU.Pa.PP.L6.Nf.IA.IA.IA.IA.L6.LU.QE.Iv.9v.0p.0p.tr.0p.tr.tr.tr.tr.tr.tr.tr.tr.tr.tr.tr.tr.tr.tr.tr.tr.tr.tr.tr.tr.tr.tr.tr.tr.tr.tr.tr.tr.tr.1..0p.sj.tq.tq.tq.tq.tq.tq.vY.vY.vY.vY.vY.vY.vY.vY.vY.vY.vY.vY.vY.vY.vY.vY.vY.vY.vY.vY.vY.vY.vY.vY.vY.vY.vY.vY.vY.vY.vY.vY.vY.vY.vY.vY.vY.vY.vY.vY.vY.vY.vY.vY.vY.vY.vY.vY.vY.vY.vY.vY.vY.vY.vY.vY.vY.vY.vY.vY.vY.vY.vY.vY.vY.vY.vY.vY.vY.vY.vY.vY.vY.vY.vY.vY.vY.vY.vY.vY.vY.vY.vY.vY.vY.vY.yX.yX.w7.tq", +"#dF#dG.fF.wb.dr.#b.#aQtKQtKQtz#dH#bH#dI#dJ#dK#dL#dM.ZZ#dN#dO#dP##d#b##c1#dQ.98.99#cd.8X.8X#dR.Im.YT.tH.Rn.QA#dS#dT.xV.vZ.hc.hc.hc.hc.hc.hc.hc.hc.hc.hc.hc.hc.hc.hc.hc.hc.hc.g0.uP.uP.9u.Xo.IG.IG.IG.IG.IG.IG.IG.Kx.Wd.Wd.Kx.Wd.Ky.Jd.Wd.Wd.IG.IG.IG#dU#dt.87.LS#dV.J2.J2.II.II.Ms.Ms.II.IJ.Lt.IJ.Ma#dW#dX.1i#dY.1i.1i.W6.Mr.KG.K9.IM.IF.IF.IG.3j.IH.Jq.87.3b.LS.7J.IM.3b.Zl#bs#dZ#dv.1l#d0#d1##r#d2#dZ.4s#d3#d4#d5#bX#aD#b4.9i#aM#ck#ck#cK#dy#dy#d6#aM#bW#b2#d0#d0#bX#aL#cI#d7#aJ#aM#bo#df#d8#d9#e.#e##e##ea#eb#aJ#cM#dd##D#b4#d0#bZ#ec#b0#bW#bn#aJ#cj#cI#aK#ed#ee#ee#.t#dy#cK#bm.4u.IA.J2.IH.Zl.IG#ef#eg.IL.J4.J4.J4.GX.GX.GX.J6.J6.J6.J6.J5.LS.LP.Nf.Ob.Iz.Iz.Iz.Iz.IA.Wd.IG.3b.IG.Wd.K9.K9.Wd.IA.Mn.L6.L6.PP.LU.LU.RK.O4.PY.L6.Mn.L6.L6.IN.Jd.Je.IE.L6.L6.L6.L6.L6.Mn.Mn.Mn.IE.J0.Od.Mn.M2.PY.Tf.Iv.9u.0p.0p.tr.0p.tr.tr.tr.tr.tr.tr.tr.tr.tr.tr.tr.tr.tr.tr.tr.tr.tr.tr.tr.tr.tr.tr.tr.tr.tr.tr.tr.tr.tr.yq.0p.sj.gp.tq.tq.tq.eN.tq.yX.yX.yX.yX.yX.yX.yX.yX.yX.yX.yX.yX.yX.yX.yX.yX.yX.yX.yX.yX.yX.yX.yX.yX.yX.yX.yX.yX.yX.yX.yX.yX.yX.yX.yX.yX.yX.yX.yX.yX.yX.yX.yX.yX.yX.yX.yX.yX.yX.yX.yX.vY.vY.vY.vY.vY.vY.vY.vY.vY.vY.vY.vY.vY.vY.vY.vY.vY.vY.vY.vY.vY.vY.vY.vY.vY.vY.vY.vY.vY.vY.vY.vY.vY.xh.l5.l5.tq.tp.tq", +"#dF#dG.ZS.g6.tnQtS.dwQtz.wb.A3#eh#ei#ej#ek#el#em#en#eo#ep#eq#er#es#et#eu#ev#ew.99#cd.8X.8X#ex.Z3#dp.T3.OY.QA.In.sD.OY.Sp.Io.9v.9v.hc.hc.hc.hc.hc.hc.hc.hc.hc.hc.hc.hc.hc.hc.g0#ey.uP.9u#ez.XY.IG.XY.Rz.Zl.Rz.IG.Kx.Kx.Kx.Kx.IF.IF.IF.Wd.Kx.IG.IG.Np#dU#eA.Ms.Mr.Mr#d..Mr#cG.Mr.Mr#d..Mr.IL.IL.IJ#eB#eC.Xf.K3.Js#eD.L8#eA.Ms.Zl.Wd.IA#eE.IG#dV#dV#eF#d.#bs.87##r#eE.3b#bs#bs#eG#eH#eI#aD#eJ#bX#eK#dY#bO#cH#eL.RQ#cH.9h.9i#eM#bZ.Hp#eN#eO#dy.Hp#dy#eP#bp#bp#bp#bW#.t#bW#eP#bV#eQ#bo#bo#eQ#eR#eS#eT#eU#eV#eW#eV#eX#eQ#bp.H##eY.2n##P.H#.1q#bZ#.t#bp#eZ#eQ#bV#bV#aK#co.9i#bP#aM#cj#bV#b3.4s.Nf.Hz.Mr.Hz.HC#e0.Hz.IL.J4.GX.J4.HN.GX.HN.HN.J6.J6.IJ.Wd.Iz.St.QJ.Ss.St.PP.Ob.HM.IG.Zl.Zl.IG.IG.IG#e1.Wd##r.IA#e2.PP.PP.PP.PP.LU.PP.Nf.IA.IF.IA.IA.Mo.IG.KG.IG.IF.IA.IE.IA.IA.IE.IE.IE.IA.IA.Nf.L6.PP.Pa.LU.It.14.fC.yq.yq.yq.yq.1..1..1..1..1..1..1..1..1..1..1..1..1..1..1..1..1..1..1..1..1..1..1..1..1..1..1..1..9v.1.Qt0.gp.tq.tq.tq.gp.tq.tq.tq.tq.tq.tq.tq.tq.tq.tq.tq.tq.tq.tq.tq.yX.yX.yX.yX.yX.yX.yX.yX.yX.yX.yX.yX.yX.yX.yX.yX.yX.yX.yX.yX.yX.yX.yX.yX.yX.yX.yX.yX.yX.yX.yX.yX.yX.yX.yX.yX.yX.yX.yX.yX.yX.yX.yX.yX.yX.yX.yX.yX.yX.yX.yX.yX.yX.yX.yX.yX.yX.yX.yX.yX.yX.yX.yX.yX.yX.yX.yX.yX.yX.yX.yX.yZ.tq.tq.tp.Bi", +"#di.MG.gY.gZQtS.#a.B2.CT.wbQtA#e3#e4#e5#e6#e7#e8#e9.AU.AU.AU#f.#f##fa#fb#fc#fd#fe#cd.8X#ff#fg.xw.Rn#fh.xV.Rn#dp.QA.Rn#fh.vZ.uP.uP.uP.uP.uP.uP.uP.uP.uP.uP.uP.uP.uP.uP.uP.uP#ey.vZ.Io.14.Xo.Kx.Wd.QF.IG.Rz.IG.IG.Wd.Ky.Ky.Jd.Jd.Jd.Jd.Ix.Jd.K9.Wd.IM.VP#eA.J2.II.Mr.Mr.KE.K8.Mr.Mr.II.Mr.Jq.IJ.KE#fi#fj#fk.Ms.Ms.Mr.IJ#cG#dV.87.Zl.7J.7J#fl.3j#d.#bd#dV.87.7J.ID.7J#bs#bs#e1.6z#eI#dx#eJ#b3#fm#fn#fo.9d.Z.#fp.5Q.9i.9i#aF#aG#b2#cm#eN#cm#aL#cI#cI#bn#bn#cj#bV#bo#aI#b4#b2#dE#dE#d7#aK#bm#fq#fr#fs.zF#bU#aK#aK#ft#cM#fu#ec#db#aF#aF#aE#db#b4#d0#bm#d7#cj#aK#aL#cI#bU#cj#b2#b3#aM#aJ#aM#bW#aG#fv.Zl.HW#fw#fx.1u.WD.LO.J5.J4.J4.HZ.HZ.HZ.GX.J5.PQ.IF.MV.MV.Rz.T4.T4.PQ.IF.Ix.Kx.Zl.KG.KD.KD.IG.K9.IE.Iu.Nf.Nf.Mn.Mn.Mn.L6.LU.L6.IA.Jd.IM.Jd.Jd.Jd.Np.J2.J2.Np.K9.J1.IF.IF.Jd.Jd.IF.IA.Mn.Sv.PP.Pa.Pa.LU.It.Io.fC.yq.yq.yq.1..1..1..1..1..1..1..1..1..1..1..1..1..1..1..1..1..1..1..1..1..1..1..1..1..yq.yq.yq.1..9v.yqQtZ.gp.eN.eN.eN.ze.eN.eN.eN.eN.eN.eN.eN.eN.eN.eN.eN.eN.eN.eN.eN.eN.eN.eN.eN.eN.eN.eN.eN.eN.eN.eN.eN.eN.eN.eN.eN.eN.eN.eN.eN.eN.eN.tq.tq.tq.tq.tq.tq.tq.tq.tq.tq.tq.tq.tq.tq.tq.tq.tq.tq.tq.tq.tq.tq.tq.tq.tq.tq.tq.tq.tq.tq.tq.tq.tq.tq.tq.tq.yX.yX.yX.yX.yX.yX.yX.yX.yX.yX.yX.yX.yX.yZ.tq.tq.tp.ze", +"#fy.N0.#r.0rQtz.tmQtN.tm.gP#fz#fA.Fp.zv.XV#fB#fC.Dq.yr.wd.wd.wd.tH.vV.uH#fD#fE#fF#fG.8X#fH.LL.So.wd.Fk.Fk#fh.T3.T3.xV.Fk.uP.uP.uP.uP.uP.uP.uP.uP.uP.uP.uP.uP.uP.uP.uP.uP.uP#ey.Io.Io.14.Xo.QF.QF.IG.Rz.Zl.IG.Kx.Wd.IF.IF.IF.Ky.IF.IF.IF.IF.Wd.Wd.IF#.g#dt#fl#dV.Ms.Mr#bO#bO#d.#d.#d.#bO.IJ.Mr#d.#fI.Y1#aC#dV.LS.LS.LS.Ms.LS.Mr#fJ.Ju#fK.87#fL#fM#fN#fO#fP#fQ#du#e1#fR#fO#fS#cF#fT#fU#fV.9l#aF#fW#fX.Ni#fY#fZ#f0#ch#f1#f2.3n#eP#eN#f3#f4#f5#f6#br#f7#f8#f9#g.#g##ga#ch#aI#eZ.Hp#cj#bo#gb.Ga#gc#gd.zF#ge#aK#aK#ft#gf#gg#gh#gi#db#gj#gk#gl#gm#gn#go#gp#bo#aM#gq#gr#eW#gs#gt#gu#gv#bm#b4#gw#gx#gy#gz.HJ.5z#gA.PQ.Zl#gB#gC#.w.Hc#gD#gE#gF.HN.WB#gG#gH.HP#gI#gJ#gK#gL.Hc#gM.2g#e1.XY.3b.IG.IG#bs.IG.IF.PP.PP.Iz.IF.IA.IA.IA.IA.Nf.IA.IM.Wd.Wd.Wd.IM.KD.KG.Jr.Zl.KD.K9.IE.IE.IE.Mo.Mn.Nf.L6.Pa.QE.RK.QE.QE.It.79.hc.9v.9v.9v.QB.QB.QB.QB.QB.QB.QB.QB.QB.QB.QB.QB.QB.QB.QB.QB.QB.QB.QB.QB.QB.QB.QB.QB.QB.hc.hc.hc#dh.Io.9vQtZ.gp.eN.eN.eN.gp.gp.eN.eN.eN.eN.eN.eN.eN.eN.eN.eN.eN.eN.eN.eN.eN.eN.eN.eN.eN.eN.eN.eN.eN.eN.eN.eN.eN.eN.eN.eN.eN.eN.eN.eN.eN.eN.eN.eN.eN.eN.eN.eN.eN.eN.eN.eN.eN.eN.eN.eN.eN.eN.eN.eN.eN.eN.eN.eN.eN.eN.eN.eN.eN.eN.eN.eN.eN.eN.eN.eN.eN.eN.eN.eN.eN.eN.eN.eN.eN.eN.eN.eN.eN.eN.eN.Bi.gp.gp.Py.ze", +"#fy#gN.#H.gZ.#a.wb.A3.z5.wb#gO#gP.S3.uH.De#gQ#gR.yr.vZ.tl.ts.tr.vZ.zA.vV.BC.YV#gS#gT#gU#gV.Im.YT.wd.Fk.vZ.Fk#fh#fh#fh.Fk.vZ.vZ.vZ.vZ.vZ.vZ.vZ.vZ.vZ.vZ.vZ.vZ.vZ.vZ.vZ.vZ.Io#gW.FmQtx#gX#gY.K9.Kx.KD.KD.KD.K9.Jd.Jd.IE.IE.IE.IE.IE.Iu.IE.Jd.K9.IM.Mo#.g.6B.Zl.LS.3i.Ms#d.#d..Ms.Ms.Mr#bO#bO.3j.3j#gZ#g0#g1.LS#fl#fl#fl.LS#dV#g2.FM#g3#g4#bc#g5#g6#g7#g8#g9#h.#h##e1#ha#hb#hc#hd#he#hf#hg#hh#hi#hj.Ju#hk#eL#hl.6x#bh#hm#dY##S#aL#cl#hn#ho#hp#bo#hq#hr#hs#d8#ht#hu#hv.Z.#b4#hw#cI#cI#aK#hx#fq#hy#hz#gd#ge#cj#aK#bo#hA#hB#gm#hC#.u#gh#hD#hE#hF#hG#hH#hI#aM#db#hJ#ea#hK#hL#hM#hN#hO#aL#hP#gC#g.#hQ#hR#hD#.w#e0.PQ.G9#hS#hT#hU#hV#hW#hX#gH.Hy.WC#hY#hZ#h0.HC#h1#h2#h3#h4#h5#h6.Wd.XY.Zl.XY.IG.Zl.IG.MV.PP.Iz.IF.6u.Mo.Mo.Wd.Wd.Wd.Wd.Wd.IG.KD.KD.Np.KG.Np.Np.Zl.KD.IF.IE.IE.IE.Mo.Nf.Nf.L6.Pa.LU.RK.RK.RK.It.Io.g0.uP.uP.9v.hc.hc.hc.hc.hc.hc.hc.hc.hc.hc.hc.hc.hc.hc.hc.hc.hc.hc.hc.hc.hc.hc.hc.hc.hc.g0.g0.9v.9v#ey.uPQtZ.dq.ze.ze.ze.dq.ze.gp.gp.gp.gp.gp.gp.gp.gp.gp.gp.gp.gp.gp.gp.gp.gp.gp.gp.gp.gp.gp.gp.gp.gp.gp.gp.gp.gp.gp.gp.gp.gp.gp.gp.gp.gp.gp.gp.gp.gp.gp.gp.gp.gp.gp.gp.gp.gp.gp.gp.gp.gp.eN.eN.eN.eN.eN.eN.eN.eN.eN.eN.eN.eN.eN.eN.eN.eN.eN.eN.eN.eN.eN.eN.eN.eN.eN.eN.eN.eN.eN.eN.eN.eN.eN.Bi.Bi.gp.Py.dq", +"#h7#h8.#r.LN.dq.gO.gO.gO.gO.dwQtK.tm.gQ.ZY#h9#i..hj.gPQtCQtK.e9.wb.Eo.uP.T2#i#.XS#ia#ib#ic#az.Fp.xV.Fk.vZ.vZ.vZ.vZ.vZ.vZ.vZ.vZ.vZ.vZ.vZ.vZ.vZ.vZ.vZ.vZ.vZ.vZ.vZ.vZ.vZ.vZ.vZ.Fm.ZV.Fk#gX.QC.Kx.XY.XY.XY.Kx.Wd.IF.HM.IA.IA.IA.IA.Iu.Iu.IF.Ky.Wd.Wd.Wd#id#ie.XY.LS#fl.LS.WD#dV#dV.Ms.3j#if.Ms#dV#dV#fI#g0.88#fl#fl.1u.1u.1u#fl#ig#ih#ii.3j#ij#ik#il##r.4p#id.Ju.IC.Zl.IG#im.IG#in#io#ip#iq#fU.4u#eL.Js.Mq.6D#ir#is#bg.IE#it#iu#iv#f3#gf#iw#ix#d6#iy#iz#d6#bn#iA#iB#hH#iC#iD#db#co#aK#cI#gb#fq#iE#iF#iG#iH#iI#iJ#iK#iL#hH#cS#iM#iN#gC.It#bm#co.Ky#iO#iP#bm#iQ#iR#iS#d7#iT#iU#eT#iV#cK#iW#hY#iX#iD#co#db#iY#iZ.Ky#i0#hX.z6.QF.Xp.Is#i1#i2.TL#i3#i4#i5.LP.HN.Hr.Ht#i6.Kb#gl#i7.Iw.Wd.IG.QF.Wd.XY.Wd.QJ.St.IA.HM#eE.IF.IF.Wd.Wd.IG.Wd.IG.Zl.Zl.Zl.KG.Zl.IG.K9.IG.IM.Nf.J0.Mn.L6.Od.Oc.L6.M2.LU.PY.O4.O4.O4.O2Qtx.iC#ey.Io.iC.iC.9v.9v.9v.9v.9v.9v.9v.9v.9v.9v.9v.hc.hc.hc.hc.hc.hc.hc.hc.hc.hc.hc.hc.hc.hc.g0.9v.9v#ey.uP.dw.dq.ze.ze.ze.ze.ze.gp.gp.gp.gp.gp.gp.gp.gp.gp.gp.gp.gp.gp.gp.gp.gp.gp.gp.gp.gp.gp.gp.gp.gp.gp.gp.gp.gp.gp.gp.gp.gp.gp.gp.gp.gp.gp.gp.gp.gp.gp.gp.gp.gp.gp.gp.gp.gp.gp.gp.gp.gp.gp.gp.gp.gp.gp.gp.gp.gp.gp.gp.gp.gp.gp.gp.gp.gp.gp.gp.gp.gp.gp.gp.gp.gp.gp.gp.gp.gp.gp.gp.gp.gp.gp.gp.gp.di.xQ.nl", +"#fy#i8.#q.Eo.eN.to.to.tj.to.dwQtKQtA.#a.ii#i9.fA.gPQtA.tn.gO.dw.#aQtK.ti.S4.uX.Rw.OW.XS.OW.BD#dp.wd.Fk.Fk.Fk.Fk.Fk.Fk.Fk.Fk.Fk.Fk.Fk.Fk.Fk.Fk.Fk.Fk.Fk.Fk.Fk.Fk.Fk.Fk.Fk.Fk.Sp#fh#j.Qtx.Xo.XY.Rz.XY.Kx.Wd.LP.Ix.IA.Mn.IA.Iu.Nf.Iu.IF.IF.Ky.Wd.QF#e1#j##dt.Zl#fl.WD#dV.Ms.3j.3j#if#dV#dV#if.3j#dV#ja#jb.88#dV.WD#jc#bs#jc#fl#jd#je#if#d.#jf#jg#jh#ji#f0#.E#jj#jk#fl#jl#jm#dt#hg#hg#jn#fX#jo#dw#jp#jq.J5#jr#js#jn#jt#dd#ju#jv#d6#jw#jx#hJ#jy#cK#jz#jA#d0#jB#jC#jD#g#.MV.H###P#cM#aJ#ck#jE.Ga#jF#jG#jH#jI#jJ#eW#jK#jL#h4#b2#b4#jM#jN#jO#jP#jQ#h4#jR#jS#co#jT#h4#dC#jU#jV#jW#jX#jY#jZ#j0#j1#jy#iS#.s#.t#j2#j3#j4#j5#j6.NS#j7#j7.6P#j8#j9#i3#k.#k##ka.Iy#kb#hY#kc.Kb.HN#kd.G5.HM.LP.QF.QF.LP.XY.QF.Iz.Iz.HM.HM.IF.Wd.IG.IG.IG.Zl.Rz.1u.WD.LS.LS.Zl.Np.IG.K9.J1.IM.Mn.Mn.Mn.PP.Mn.L6.L6.PP.PP.LU.O4.QJ.O4.O##ke#ey#ey.Io#ey#ey.uP.uP.uP.uP.uP.uP.uP.uP.uP.uP.uP.uP.uP.uP.uP.uP.uP.uP.uP.uP.uP.uP.uP.uP.uP.uP#ey#ey.Fm#ey.tn.dr.dq.dq.dq.tj.tj.ze.ze.gp.gp.gp.gp.gp.gp.gp.gp.gp.gp.gp.gp.gp.gp.gp.gp.gp.gp.gp.gp.gp.gp.gp.gp.gp.gp.gp.gp.gp.gp.gp.gp.gp.gp.gp.gp.gp.gp.gp.gp.gp.gp.gp.gp.gp.gp.gp.gp.gp.gp.gp.gp.gp.gp.gp.gp.gp.gp.gp.gp.gp.gp.gp.gp.gp.gp.gp.gp.gp.gp.gp.gp.gp.gp.gp.gp.gp.gp.gp.gp.gp.gp.gp.gp.xf.dq.Bi.z3", +".NZ#kf.#o.#p#kgQtNQtK.iiQtZQtZ.#aQtKQtC.wb#kh.A3QtC.#a.B2.xd.xdQt6Qt6.ii.uP.Fp.uH.Z3.zv.W0#ki.tH.xV.Fk.Fk.Fk.Fk.Fk.Fk.Fk.Fk.Fk.Fk.Fk.Fk.Fk.Fk.Fk.Fk.Fk.Fk.Fk.Fk.Fk.Fk.Fk.Fk.hn#fh.sP.79.Xo.XY.Kx.QF.LP.Ix.IA.Iz.MV.PP.PP.PP.PP.IA.IF.IF.IF.Jd.Wd.Wd#.g#dt.XY.Zl.LS.Ms.Ms.Ms.3i#kj#kj#kj#dV.3j.3i#fI#g0.88.LS.1u.IG.IG.Zl.IG#jk#h.#dV.Mr#kk#g0#fo#je#kl#jk.LS.IG.QE.Mr#dt#km#kn#dv#du#ko#kp.9l#kq.Ju.K.#eI#kr#ks#ee#dd#kt#hT#j4#jw#ku#kv#cI#aL#kw#kx#ky#gH#kz.PQ#bn#b2#aN#db#kA#iA.zF#kB#hN#kC#ge#bV#dE#cj#bm#co#kD#iR#aJ#aK#kE#kF#fr#kG#kH#kI#b1#ft#kJ#kK#iR#kL#jW#kM#kN#dE#eO#cl#kO#kP#kQ#kR#iM#kA#kS#jz#kR#kT#kU.Kc#j7.7G#j7#kV#kW#kb#k.#k##kX#kY.Iy#kZ#k0.WC.XY#k1#k2.HM.IF.LP.LP.LP.QF.QF.QF.QF.IF.LP.Wd.IG.1u.PQ.PQ.J2.J2.J2.J2.J2.KG.J1.K9.K9.K9.Je.Jd.J0.L6.IN.L6.Od.L6.LU.L6.L6.LU.O4.O4.O4.O#.Fk#ey#k3.vZ#ey#ey.uP.uP.uP.uP.uP.uP.uP.uP.uP.uP.uP.uP.uP.uP.uP.uP.uP.uP.uP.uP.uP.uP.uP.uP.uP.uP#ey#ey.vZ.vZ.tn.dr.tj.dq.dq.tj.dq.ze.ze.ze.ze.ze.ze.ze.ze.ze.ze.ze.ze.ze.ze.ze.ze.ze.ze.ze.ze.ze.ze.ze.ze.ze.ze.ze.ze.ze.ze.ze.ze.ze.ze.ze.ze.ze.ze.ze.ze.ze.ze.ze.ze.ze.ze.ze.ze.ze.ze.ze.ze.ze.ze.ze.ze.ze.ze.ze.ze.gp.gp.gp.gp.gp.gp.gp.gp.gp.gp.gp.gp.gp.gp.gp.gp.gp.gp.gp.gp.gp.gp.gp.gp.gp.gp.gq.dq.gp.dr", +"#k4.Kp.fb.fp.tn#k5Qtz.#j.wb.tn.sj.ii.ts.hm#k6.wbQtKQtZ.B2.xd.xd.xd.tt.#..hf.VB.VB.In.LM.So.QA.T3.sP.Sp.Sp.Sp.Sp.Sp.Sp.Sp.Sp.Sp.Fk.Fk.Fk.Fk.Fk.Fk.Fk.Fk.Fk.Fk.Fk.Fk.Fk.Fk.Fk.hn.hn.sP.79.O..XY.Wd.Ky.LP.HM.Iz.Ob.Ob.PP.PP.PP.Nf.IA.IF.IF.Jd.Ky.Wd.Wd#.g#dt#bs.1u.LS.Ms.Ms.LS.3i.3i#dV#kj.3j.3j.3j#fI#g0#k7#bs.XY.XY#bs#bs.QF#k8#h.#dV#cG#kk#ih.Jv#ji#e1.QF##r#k9#eI#l.#l##d1#d1.9i#la#lb#kp#lc#ld.HJ#bc#dd#le#lf#ee#eM#ee.HC#lg#lh#li#lj#bU#co#j3#gH#lk#j4#b0#co#bo#aJ#b1#iA#cM#gv#aK#kB#eS#ll#de#bo#aK#d7#bm#co#jK#lm#bn#cj#ln#lo#lp#lq#lr#ls#lt.zF#fs#jK#lm#lu#lv.zF#dE#d7#ge#eO#lw#lx#eO#co#dD#ly#jH#lz#kQ#lA#lB.HE.XY.Iw.Iz#lC#lD#lE#lF#lG#lH#kY#lh#lI#lJ.St.O##lK#k2.HM.HM.LP.LP.QF.XY.QF.QF.XY.XY.1u#dV.Ms.Mr#d..Ms.Mr.Mr.Mr.Ms.PQ.IG.Wd.Wd.Wd.IM.Jd.Jd.IE.L6.L6.Nf.IA.L6.L6.Mn.Sv.LU.O4.O4.QI.QD.sP.Fm.ZY.78.Fm.vZ.vZ.vZ.vZ.vZ.vZ.vZ.vZ.vZ.vZ.vZ.vZ.vZ.vZ.vZ.vZ.vZ.vZ.vZ.vZ.vZ.vZ.vZ.vZ.vZ.Io.Io.Io.Io.Fk.Io.#c.dr.dq.dq.dq.dr.dq.dq.dq.dq.dq.dq.dq.dq.dq.dq.dq.dq.dq.ze.ze.ze.ze.ze.ze.ze.ze.ze.ze.ze.ze.ze.ze.ze.xe.dq.tj.tj.tj.tj.dq.dq.xe.xe.ze.ze.ze.ze.ze.ze.ze.ze.ze.ze.ze.ze.ze.ze.ze.ze.ze.ze.ze.ze.ze.ze.ze.ze.ze.ze.ze.ze.ze.ze.ze.ze.ze.ze.ze.ze.ze.ze.ze.ze.ze.ze.ze.ze.ze.ze.ze.ze.ze.xf.tj.gp.to", +"#lL.he#lM.gYQtz.z4.##.A3.g6.ii.xdQt6.ts.hm.uA.S3QtK.B2.B2.xd.xd.xd.ttQtZ.h#.Rn.wd.Rn.tH.tH.T3.xV#fh#fh#fh#fh#fh#fh#fh#fh#fh#fh#fh#fh#fh#fh#fh#fh#fh#fh#fh#fh#fh#fh#fh#fh#fh.sP.xV.xV#ke.QC.Ky.IF.HM.Iu.MV.PP.St.St.QE.St.O1.PP.Nf.IA.Ix.IF.LP.Wd.K9#j##l#.Rz.Zl.KG.LS.J2.LS.LS.3i.3i.87.3i.3i.LS#lN#eC#lO.1u#bs#bs#fl#bs##r#lP#i2.Ms.Su#lQ#.E#lR##r#bs#eE#e2#lS#lT#lU#is#bS#lT#fm#la#jv#lV#lc#lW#lX.TK#dd#lY#lZ#dD#l0#db#l1#f5#l2#l3#cK#fs#ed#l4#l5#bo#bm#co#co#bn#fs#bn#b1#b0#gv#ed#l6#lo#iK#b1#bm#b1#hw#aN#iA#l7#lm#bn#aL#l8#l9#m.#hz#m##ma#mb#mc#cl#md#lm#me#d7#cK.zF#dE#d7#ge#mf#mg#mh#mi#aN#ly#jW#lz#fs#mj#k2.LB.Ob.Iy#iX#mk#ml.7G#lF#kU#mm.Oa.Oa#lJ#mn#lh.Ob#mo#i7.MV.MV.Iu.Ix.QF.Kx.Kx.Rz.PQ.WD.WD.KE.IJ.Lt.IJ.KE.HW.II.G0.1u.Rz.IG.Wd.IM.IM.Wd.Jd.Mo.IE.L6.PP.Sv.Mn.Mn.Mn.Mn.Mn.L6.QE.RK.QI.QD.sP.Fm.vZ.Fm.Fm.vZ.vZ.vZ.vZ.vZ.vZ.vZ.vZ.vZ.vZ.vZ.vZ.vZ.vZ.vZ.vZ.vZ.vZ.vZ.vZ.vZ.vZ.vZ.vZ.vZ.vZ.vZ.vZ.vZ.hn.vZ.#a.tt.tj.tj.tj.dr.dr.tj.tj.tj.tj.tj.tj.tj.tj.tj.tj.tj.tj.tj.tj.tj.tj.tj.tj.tj.tj.tj.tj.tj.tj.tj.tj.tj#kg.to.dr.dr.to.to.dr.to#kg#kg.tj.tj.tj.tj.tj.tj.tj.tj.dq.dq.dq.dq.dq.dq.dq.dq.dq.dq.dq.dq.dq.dq.dq.dq.dq.dq.dq.dq.dq.dq.dq.dq.dq.ze.ze.ze.ze.ze.ze.ze.ze.ze.ze.ze.ze.ze.ze.ze.ze.dq.dq.gp.to", +"#mp.he.zS.zwQtN.0s.g6.gX.ts.tn.dr.tn.uP.vZ.hn.Eo.ii.sjQt6Qt6Qt6Qt6.toQtZ.h#.T3.sP.xV.wd.xV.xV#fh#fh#fh#fh#fh#fh#fh#fh#fh#fh#fh#fh#fh#fh#fh#fh#fh#fh#fh#fh#fh#fh#fh#fh#fh#fh.xV#cU#cU.hn.Ho.LP.HM.Iu.Nf.Ob.PP.St.St.St.St.St.Ob.Nf.Iz.HM.LP.Wd.QF#e1#mq#hH#bs#bs#fl.LS#dV#dV#fl#fl#fl#bs#bs#bs#bs.Kd#mr#eC#ms#fN#fO#fN#hg##r#mt#mu#dV#d.#mv#mw#mx#my#gZ#mz#mA#mB#mC.Ob#ko#mD#mE#mF#hD#jj#mG#dc#mH#mI.TK#la#mJ#i7#ee#d0#db#mK#h4#mL#mM#cm#bn#aN#mN#lm#kS#kz#kz#kz#mO#mP#d7#de#bn#co.H##mQ#lm#mR#kQ#iA#co#iA#ec#co#mS#mT#b1#bo#aJ#mU#gs#mV#mW#mX#mY#mZ#m0#m1#m2#m3#m4#m5#hM#m6.Qc#m7#m8#kG#m9#n.#n##jX.HK#lA#ed#ed#hr#h4#na#l3#nb#nc#nd#iU#ne#nf#ng#kY.Oa#lJ#nh.Oa.Iz#ni#nj.Ob.Ob#nk#nl#nm.XY#ez#nn.Hz#no#no.IL.IL.WB.IL.LO.Hz.Ms.1u.QF.QF.QF.IF.IF.IF.IF.Mm.Nf.Mn.Sv.QE.Pa.L6.Nf.Mn.Sv.Mn.PP.Ry.XZ.O5#iX.xV.LD.hn.hn.hn.hn.Fk.Fk.Fk.Fk.Fk.Fk.Fk.Fk.Fk.Fk.Fk.Fk.Fk.Fk.Fk.Fk.Fk.Fk.Fk.Fk.Fk.Fk.Fk.Fk.Fk.Fk.Fk.Fk.sP.vZ.#a.to.tj.tj.tj.dr.tj.tj.tj.tj.tj.tj.tj.tj.tj.tj.tj.tj.tj.tj.tj.tj.tj.tj.tj.tj.tj.tj.tj.tj.tj.tj.tj#kg#kg.to.Gr.dr#np.dr#nq.to.dr#kg.tj.tj.tj.tj.tj.tj.tj.tj.tj.tj.tj.tj.tj.tj.tj.tj.tj.tj.tj.tj.tj.tj.tj.tj.tj.tj.tj.tj.tj.tj.tj.tj.tj.tj.tj.tj.tj.tj.tj.tj.tj.tj.tj.tj.tj.tj.tj.tj.tj.tj.z3.xe.xd", +"#mp#nr#ns.zQ.dw.gQQtKQtKQtK.sj.to.e9.hj.z5.#a.gO.gO.sjQt6.xd.B2Qt6.xd.dw.tr.Rn#cU.xV.xV.xV.xV.xV.xV.xV.xV.xV.xV.xV.xV.xV.xV.xV.xV.xV.xV.xV.xV.xV.xV.xV.xV.xV.xV.xV.xV.xV.xV.fz.wd.fz.sP.Sr.Iv.Nf.Ob.Ob.O1.QE.Ry.Ry.Ry.QE.QE.O1.MV.Nf.Ix.LP.Ky.Kx#e1#nt#nu#bs#bs#fl#dV#dV.Ms#dV#fl#fl#bs#bs#bs#bs#fl#nv#nw#hg#nx#nx.Hq#ny#nm#nz#nA#d.#nB#nC#nD#nE#nF#nG#nH#lV#nI#bT#nJ.WD#nK#nL#nM#nN#nO#nP#dc#nQ#nR.1u#nS#nT#jv#ee#d0#iD#nU#nV#nW#ft#bU#aJ#b0#cM#nX#nY#kS#kS#e##e##nZ#d7#n0#bo#b2#d0#n1#n2#n3#kQ#co#kJ#mh#aN#b1#iL#n4#fs#fs#n5#n6#n7#n8#n9#o.#o##oa#ob#oc#od#oe#n4#lu#of#og#oh#mi#dz#oi#mY#oj#o##mV#ok#ol#om#kJ.Sr#on#oo#op#oq#or.Xo#os.WC#eS#ot#ou.It#ov#ow.Oa.It#ox#oy.Oa.Iy.Iy.Iy#j7.XX#nn#nn#no#oz.Vh.Vh.Vh.Vh.IL.Hz.1u.1u#ez.QF.QF.QF.Wd.Wd.Wd.IF.IA.IA.Nf.Nf.QE.L6.Sv.Mn.Mm.Nf.Mn.L6.Ry.XZ.5Q#iX.xV.LE.Sp.hn.hn.hn.Fk.Fk.Fk.Fk.Fk.Fk.Fk.Fk.Fk.Fk.Fk.Fk.Fk.Fk.Fk.Fk.Fk.Fk.Fk.Fk.Fk.Fk.Fk.Fk.hn.hn.hn.Fk.sP.hn.ii.tt.to.to.to.to.to.to.to.to.to.to.to.to.to.to.to.to.to.to.to.to.to.to.to.to.to.to.to.to.to.to.to.to.to.to#oA.dr.dj.Gf.to.to.Gf.dr.dr.dr.dr.dr.dr.dr.dr.dr.dr.dr.dr.dr.dr.tj.tj.tj.tj.tj.tj.tj.tj.tj.tj.tj.tj.tj.tj.tj.tj.tj.tj.tj.tj.tj.tj.tj.tj.tj.tj.tj.tj.tj.tj.tj.tj.tj.tj.tj.tj.tj.z3.xe.xd", +"#mp#oB#oC.zw.to.dw.xd.xd.xd.B2.B2.dw.dw.xdQt6.B2.gO.B2.B2Qt6.B2Qt6.xd.tn.0p.Rn#cU.xV.xV.xV.xV.xV.xV.xV.xV.xV.xV.xV.xV.xV.xV.xV.xV.xV.xV.xV.xV.xV.xV.xV.xV.xV.xV.xV.xV.xV.xV.fz.wd.wd.v7#ou.Iz.Ob.O1.St#k9.Ss.Ss.Ss.QJ.Ss.Ss.Ss.PP.Iz.HM.LP.Wd.QF.QF#e1.IG#bs.Zl#fl#dV#dV#fl#bs#fl#fl#bs#e1#bs#e1#bs#bs#bs#nm##r#nC#nl#nl#nC#oD#oE#fl#nC#oF#oF#oG#nm#oH#oI#oJ#oK#oL#bT#aL#lT#db#oJ#dd#iM#lc#gb#dc#gb#oM##D#eY##R#oN#aI#.s#cM#dE#oO#hn#d7#aJ#hw#ed#hw#b1#b0#ed#hw#b1#hw#aJ#dE#cI#ft#iA#ed#df#jy#oP#kQ#hw#aN#kJ#ft#aK#dE#dE#m7.zF#lt#oQ.zF#oR#dz#mi#mc#oS#oT#oS#mc#mi#n5#n0#oR#oU#m0#mc#oV#oV#oU#mc#m0#dz#oW#oX#oY#hw#m1#iA#oZ#o0#o1.Iy#o2#iX#kY.Iy.Oa#lh#o3.Iy.Iy#kY.Oa#lh#oF.7G#o4.Iy#o5#o6#kb#cG#i3#oz#oz.WB.WB.WB.Hz.XY.QF.XY.QF.IA.IA.IF.Ix.IA.Ix.IA.Mm.Mm.Nf#o7.QE.Pa.LU.Pa.PP.PP.Nf.QE.PU.RE.Yc#o8.fz.Sp.sP.sP.sP#fh.Sp.Sp.Sp.Sp.Sp.Sp.Sp.Sp.Sp.Sp.Fk.Fk.Fk.Fk.Fk.Fk.Fk.Fk.Fk.Fk.Fk.Fk.Fk.Fk.hn.hn.hn.hn.sP.hn.ii.tt.to.to.to.to.to.to.to.to.to.tt.to.xd.xd.xdQt6Qt6Qt6Qt6Qt6.xd.xd.xd.xdQt6.xdQt6.B2Qt6.xdQt6Qt6.xd.xdQt6.xdQt5Qt5.CR.xd.xd.xdQt5.B2Qt6.xd.xd.xdQt6Qt6.xd.xd.xd.xd.xd.xd.xd.xd.xd.xd.xd.xd.xd.xd.xd.xd.xd.xd.xd.xd.xd.xd.xd.xd.xd.xd.xd.xd.xd.xd.xd.xd.xd.xd.xdQt6.B2Qt6.xd.xd.xdQt6.B2Qt6.Gf.sj", +"#o9.44#oC#p..tt.PD.sj.sj.gO.gO.gO.xd.xd.dw.B2.xd.B2.gO.gO.B2.B2.sjQt6.#b.1..tH.wd.wd.wd.wd.wd.wd.wd.wd.wd.wd.wd.wd.wd.wd.wd.wd.wd.wd.wd.wd.wd.wd.wd.wd.fz.fz.fz.fz.fz.fz.fz.PB.T3.T3.v7.Iv.Iz.PP.St.Ss.XZ#fv#fv#fv#fv#fv.QJ.St.Ob.Iz.HM.LP##r.QF.QF#e1.IG#bs.Zl#fl.LS#dV#fl.Zl#fl#fl#bs#e1#bs#e1#bs.Zl#bs#e1##r#eE#p##e2#nl#e1#fl#nm#pa#pa#nk#nC#nm#pb#pc#pd#pd#pe#pf#pg#d0#pd#la#ph#cO#lc#pi#pj#pi#ee#eM#cN#pk#pl#b0#kA#gv#dE#pm#oO#d7#fs#bn#ed#co#aJ#b3#gv#iA#aJ#b1#bn#ge#cK#cI#b1#pn#mh#df#cN#oP#fs#fs#aJ#fs#po#dE#ge#pp#eO#ls#pq#ls#mi#gd#mi#oV#mb#oS#pr#oS#hn#lt#ge#iT#eO#oO#ps#oO#mb#oO#oO#oO#oO.zF#df#oX#oW#b1#n0#oW#pt#pu.7G#o3#o2#pv.Iy#lh#lh.Iy#o4#pw.XX.7G#kY.Iy#o4.7G.Iy.Iy#j7#no.TL.WB#oz#px.WB.WB.Mr.WD.XY.XY.XY.QF.Iz.HM.Wd.IF.Ix.IF.IE.Mm.Nf.Nf.Nf.Mn.Mn.QE.RK.QE.O4.O4#cS.4k.4k.Z.#py#pz#fh.sP.sP.xV#fh#fh#fh#fh#fh#fh#fh#fh#fh#fh#fh#fh#fh#fh#fh#fh#fh#fh#fh#fh#fh#fh#fh#fh#fh#fh.hx.sP.sP#cU#fhQtNQt6.xd.xd.xd.xd.xd.xd.xd.xd.xdQt6QtSQtK.ii.#aQtS.#a.ii.ii.ii.ii.ii.ii.ii.ii.ii.ii.tn.ii.ii.tn.ii.ii.ii.ii.ii.ii.R0.dw.tn.#a.#a.f..ii.#a.tn.tn.#a.A2.A2.iiQtS.#b.#b.#b.io#pA.iiQtS.ii.ii.ii.iiQtS.ii.A2.ii.#b.#b.#b.#b.ii.A2.A2.A2.A2.A2#pA#pA.#b.#b.#b.ioQtSQtSQtSQtNQtS.gO.B2.#aQtS.#a.tn.B3Qtz", +"#pB#o9.A7.zQ.tjQtZ.z5.#a.tt.xd.dw.gQ#pC.Eu.yr.yqQtNQt6.sj.B2.B2.B2Qt6.#a.yq.tH.wd.wd.wd.wd.wd.wd.wd.wd.wd.wd.wd.wd.wd.wd.wd.wd.wd.wd.wd.wd.wd.wd.wd.wd.wd.wd.wd.wd.wd.wd.wd#pD.T3#pD.wd.It.St.QJ#fv#py#py#py#py#py#pE#py#fv.QE.Ob.Iz.HM.LP.LP.LP.LP.Wd.IG.IG#bs#bs#bs#bs#e1#e1.IG#bs#e1#e1#e1#e1#e1#bs#e1##r#nC#nl#pa#k9#pF#pG#oE#p#.QJ#pa.ID#nC.Iz#pH#ee#db#ee#dD#pI#b3#bT#eM#ph#ee#oI#pJ#pj#cO#cO#gp#la#ee#pk#cM#aN#pK#oP#dE#pm#hn#fs#b1#bo#ed#gv#hw#aK#b2#gv#co#aK#fs#dE.zF#n5#fs#kJ#nU#mh#df#pL#kA#aJ#dE#d7#d7#m7#iT#pp#hz#lr#ls#mb#mb#oV#mi#mi#hz#oU#ma#oS#m0#mc#ls#dz#oR#ls#ps#oS#m0#m##ps#oc#ps#m##n5#oY#om#iA#aJ#aK#nS#l6#pM#o1#pN#pO.Iy#kY#iX#o1.XX.XX#jc.6P.6P.6P#o6.6P.7G#m.#pN#nn.WB#px#px#px.Su.WD.1u.XY.QF.QF.QF.LP.HM.HM.LP.Ix.Mn.Mn.Ix.Mn.L6.Mn.Mm.Mm.J0.Oc.LT.PT.PT.Yc.5u.5u#cH.Zf#pP.T3#fh.sP.sP.xV#fh#fh#fh#fh#fh#fh#fh#fh#fh#fh#fh#fh#fh#fh#fh#fh#fh#fh#fh#fh#fh#fh#fh#fh#fh#fh#fh.sP.sP#cU#fhQtNQt6.xd.xd.tt.xd.xd.to.dr.to.ttQt6.ii.dwQtKQtNQt6#pQ.dw.xd.B2Qt5.gO.B2.gO.gO.tt.dwQtCQtN.gP.gQ.#a.dwQtA.dw.CR.gO.io.hj.B#.ttQtSQtS.xd.CRQtAQtA.dw.gg.gO.gOQt6Qt6.CR.CR.B2.B2.du.xd.xd.Vu.xd.xd.xd.xdQt6Qt6Qt6Qt6#pR.CRQt6Qt6Qt6.aW.ihQt5Qt5Qt6Qt6Qt6.x1.x1Qt6Qt6Qt6.tt.tt.yq.Rn.tm.ij.tnQtT.tnQtK", +"#pS#pT#pU#pVQtL.zQ.zw.vX.g6.tn.B2.tr.Eu.hi.tM.S3.ii.sj.gO.gO.gO.gO.sj.ii.uP.vV.yr.T3.T3.T3.T3.T3.T3.T3.T3.T3.T3.T3.T3.T3.wd.wd.wd.wd.wd.wd.wd.wd.wd.wd.wd.wd.wd.wd.wd.wd.wd.T3.T3.T3#pz#pW#o2#mQ#py#py#py#py#pX#pE#pE#py.Ss.QE.PP.Iz.HM.LP.LP.LP.LP##r#e1#e1#e1#e1#pY#bs#oD#oD.IG#bs#oD#oD#e1#e1#e1#e1#eE#nl#nl#nk#k9#pZ#p0#oE#p1#p2#p3#pZ#p##oG#p4#p5#p6#nJ#p7#oJ#p8#p9#gv#nS#kR#q.#pj#q##lS#qa#qa#nS#pK#dd#oX#ed#b0#eM#df#bU#oc#m0#n0#iA#aJ#hw#ec#iA#bn#cI#b1#iA#n0#cI#bo#ge.zF#d7#qb#nU#mh#kJ#nU#pL#jy#kQ#ge#ge#qc#qc.zF#lt#lr#ls#mb#pm#pm#hn#mi#qd#hz#oU#m0#oc#m0#oV#oV#gd#gd#mc#oc#oS#m0#m0#oc#oc#oc#mb#n5#qe#ed#qf#m1#b1#qg#qh#qi#qj#pO#pv#qk#ql#qm#o5#o5#o5#lE#qn#qo#qn#qn#qp.Oa#qq.6P#px#i3#px#i3.Hz#jc.XY.XY#j7.7G.LP.QF.QF.LP.LP.IA.Ob.Nf.HM.Nf.PP.PP.L6.L6.Nf.MV.O4.PU.PU#qr.4z.7X.6D.4s#jO.PM#cU#cU.wd#qs#cU.xV.xV.xV.xV.xV.xV.xV.xV.xV.xV.xV.xV.xV.xV.xV.xV.xV.xV.xV.xV.xV.xV.xV.xV.xV.xV#cU#cU.wd#cUQtG.sjQt6Qt6Qt6Qt6Qt6Qt6.tnQtZ.ttQtX.#aQtQ#qs#qs#aP#qt.hm.gX#qu#qv.v7.uP.hj#qw.Eu#qx.Fq.MF.gP.A3#pV#qu#qy.wd.79.84.#a#qz#qA#qB.vV.u1.PM.yq.xV#qC#qw.wd#aP.dw.to.xd.xd.CR.CR.x1.tt.CR.xd.xd.xd.xd.xd.xd.du.xd.CR.CR.tt.xd.xd.xd.xd.xdQt5Qt5.xd.tt.CR#pR#qD.CR.xdQt5.xd.z3.zP#qE.WN.gY.zeQtC.MT#pCQtK", +"#qF#qF#qG.0qQtL#qH.e9.vX.g6.gO.tn.tl.wb.dw.wb.vXQtA.sj.gO.gO.gO.gO.sj.Gs.9v.vV.yr.T3.T3.T3.T3.T3.T3.T3.T3.T3.T3.T3.T3.T3.T3.T3.T3.T3.T3.T3.T3.T3.T3.T3.T3.T3.T3.T3.T3.T3.T3.Rn.Rn.Rn#qI#qJ#pX#pX#j4#py#py#pE#qK#pE.4k.5Q.QJ.QE.Ob#nk.Iz.HM.HM#nl.HM#nC##r##r#nC#p0#p0#nm#nm#p0#nm#nm#p1##r#e1.Wd#eE##r#eE#nl#nl#oF#p4#oF#qL#jc#qM#qN#qO#oF#qP#nl#qQ#pj#pe#ph#qR#qS#qT#hw#qU#qV#qW#oJ#pj#q##qX#lS#ly#p6#pK#dd#oX#ed#hw#pK#df#cI#m0#qY#n5#pn#iA#qb#pn#iA#hw#fs#cI#m1#n5#cK#aJ#ft#pp#dE#hw#ed#gv#mh#kJ#oP#pL#ol#oY#d7#ge#ge#oR#dz#mi#oV#oV#m##pr#ob#m##oV#hz#oV#m##ob#ob#ls#mi#ls#oV#oV#m0#oc#oS#oS#oc#qZ#q0#qZ#m0#n5#iA#b1#aJ#n5#qb#ol#q1#pv.XK#pM#q2#q3#lE#lE#lE#lE#q4#qo#qo#qo#qn#q4#q3.6P#kb#kb.GP.GP.GR.PQ.XY.Xo.XY.QF.LP.LP.LP.LP.LP.HM.Iz.Ob.Ob.HM.IA.MV.PP.PP.PP.L6.L6.LU#cS.Yc#q5.9g.6D#.u.6C#pi.tH#cU#qs.wd#qs#cU.xV.xV.xV.xV.xV.xV.xV.xV.xV.xV.xV.xV.xV.xV.xV.xV.xV.xV.xV.xV.xV.xV.xV.xV.xV.hi#cU#cU.wd#cUQtK.B2Qt6Qt6.B2Qt6.tt.vX.De.tM.B2.xdQtR.e8#q6#qC.vV#q7.hi.ZY#q8#q1#q9.xV#qu.tM.Dc.uC.xV.Eo.tr.zA#r.#r##ra#rb#pz.FT.CT#pC#ra.u1.AU.Dq.AU#qs#qB.tM#rc#rd.LN.dx.xd.B2.B2.B2.du.gg.du.B2.B2Qt6Qt6Qt6Qt6Qt6Qt5Qt6Qt6Qt4Qt4.aWQt6Qt6Qt6Qt6.du.du.xd.xd.xd.Vu.xd.xd.xdQt5.xd#re.MF.zz.uE.fq.xf.z5.zz.uAQtB", +"#rf#rf#qG.0q#rg.Wa.ZY.zA.A3.B2QtA.hj.e9.B2QtK.hj.A3.gO.dw.dw.dw.gO.sj.ii.9v.vV.yr.T3.T3.T3.T3.T3.T3.T3.T3.T3.T3.T3.T3.T3.T3.T3.T3.T3.T3.T3.T3.T3.T3.T3.T3.T3.T3.T3.T3.T3.T3.yr.Rn.yr.PM#qJ#pX#pX#py#py#pP#pE#pE#py#py#fv.QJ.Ry.Ob#nk#nk.Iz#nl#nl.HM#nC#nC#nC#eE#p0#p0#nm#p0#nC#p0#p0#nC#nC#p0#p0.ID.ID#nl#nk#oF#oH#rh#qq#pY#qL#pN#ri#qO#rj#qM#qM#rk#rl#qa#rm#rn#ro#rp#rq#rr#p6#qU#rr#pi#hx#rs#lS#ly#rt#kA#nS#qg#iA#ru#kA#df#n0#qY#qY#dz#n5#d7#m1#b1#qf#kJ#ft#n0#n0#oR#hn#eO#rv#cL#qc#b1#pn#mh#nU#mh#mh#nU#jy#kB#kR#mh#dE#oR#rw#pp#qd#hz#oV#m0#pr#ob#m##oV#mi#hz#m##oc#m0#mi#gd#oV#ls#mc#m0#oS#ps#oS#ob#qZ#q0#rx#m0#dE#ry#aJ#m1#n0#oY#rz#rA#qv#pO#pv#rB#rC#rC#q4#kb#q4#q4#q4#qo#qn#qo#qo#qn#qn#kb#qo#kb.XX#pY#pY#pY#pY#nm.HM.HM.Iy.HM.HM.Iz.Iz.St.St.Ob.MV.PP.Ry.QJ.QE.XZ.QJ.QJ#dg.9k.4u.4s.4t.2n.3n#rD.VB#qs#pC#pC#pD.wd.wd.wd.wd.wd.wd.wd.wd.wd.wd.wd.wd.wd.wd.wd.wd.wd.wd.wd.fz.fz.fz.fz.fz.fz.fz.wd.fz.fz.wd.xVQtJ.B2Qt6Qt6.B2.B2Qt6QtK.zw.wb.B2.B2QtM.io#rEQtR.ZY#qvQtA.io.ff.z4.iiQtNQtFQtAQtAQtCQtK.dwQtSQtAQtF.y6QtH.e9QtK.B3.B2QtAQtBQtAQtzQtCQtzQtAQtAQtJQtC.flQt8Qt5Qt5Qt5.xdQt5Qt5Qt5Qt6.CRQt5Qt5Qt5Qt5.CR.xdQt5.CR.CRQt5Qt5Qt6Qt6.CRQt6Qt5Qt5Qt6Qt6Qt6Qt5Qt5.CR.CRQt6Qt6Qt6.xdQtz.vX#pQ.PD.xd.#aQtDQtS.#b", +"#rF#rG#rH.0q.CS.zw.g6.zwQtA.sjQtN.A3QtK.dw.ii.tiQtKQtZ.dw.dw.dw.dw.gOQtN#ey.QA.PM.Rn.Rn.Rn.Rn.Rn.Rn.Rn.Rn.Rn.Rn.Rn.Rn.Rn.Rn.Rn.Rn.Rn.Rn.Rn.Rn.Rn.Rn.Rn.Rn.Rn.Rn.Rn.Rn.Rn.Rn.PM.tH.tQ.VB#rI#pE#pP#rJ#pP#qK#pP#pE.4k.4k.5Q.QJ.St.Ob.Ob#oF.Ob#nk.HM#nC.Iy#nl#nl#nl#nC#p0#p0#nC#nC#nC#p0#nC#nC#nC#p0#rK#nk#nk#oF#rj#p4#p4#nl#pY#nm#rL#rM#rN#qq#rK#rj#rO#rk#rP#oI#p7#rQ#dA#rq#oJ#p6#pd#p6#hx#rR#rs#rS#rS#pL#kA#nS#ol#pn#m1#oY#rT#aJ#jw#jw#cl#ck#dz#gd#n0#fs#kJ#kQ#rU#po#oR#oV#m0#hz#m7#m7#d7#kJ#kJ#mh#mh#mh#pn#iA#oP#pL#oX#rT#rV#rw#pp#rW#gd#mi#mc#oc#qZ#pr#ps#ls#rX#mc#m0#ob#mc#qd#mi#mc#mb#ps#oc#ob#ob#pr#q0#rY#rZ#r0#mb#iT#rU#m1#n5#r1#rt#r2#pM#qx#r3#j7#r4.GM#r4#r5#q4#q4#q4#qn#qn#qo#q4#kb#qn#qn#qn#r5#j7#nC#nm.QF#pY.LP.HM.HM.IF.HM.HM.Iz.Ob.St.St.PP.O1.Ry.5Q.4k#cS.Z..Yc#dg.9k.3k##R.4t.3n#.s.3n#gb.VB.wd#pC#pC#pD.wd.wd.wd.wd.wd.wd.wd.wd.wd.wd.wd.wd.wd.wd.wd.wd.wd.wd.wd.wd.wd.wd.wd.wd.wd.wd.wd.wd#pD.yr.wdQtz.sj.B2.B2.sj.gO.B2.xd.xd.xd.CR.gOQtKQtK.dw.#a.e9#k5.ii.#a.#a.#a.fh.#b.#b.ii.#c.#c.#e.#e.#d.#b.#b.#a.#a.#a.#a.R0QtS.ii.tn.#a.#a.#a.#a.A2.A2.tn.#c.#c.#b.#d.dB.dU.#e.d#.jc.dz.dz.dz.dy.dy.dy.dy.dy.tn.tn.dy.#c.H4#nt.H4.fh.fh.tn.#c.XR.XR.#c.zR.zR.no.no.no.R2.R2.R2.no.R2.nb#r6.Px.Gs.fx.ii.##QtG", +"#rG#rG#r7#r8.PD.R0QtZ.#a.#a.dw.tn.tn.dw.dw.dw.tn.dw.dw.dw.dw.dw.dw.gOQtK.Io.QA.PM.Rn.Rn.Rn.Rn.Rn.Rn.Rn.Rn.Rn.Rn.Rn.Rn.Rn.Rn.Rn.Rn.Rn.Rn.Rn.Rn.Rn.Rn.Rn.Rn.Rn.Rn.Rn.Rn.Rn.Rn.tH.S4.tH.VB#pX#rJ#rJ#n1#qK#pE#pE#pE#py#py#fv.St.Ob#oF#oF.Ob#oF#oF.Iz#nl#kY.Ob#oF#nk#nl#nl#pF#pF#nl#pF#pF#pF#qP#nl#rK#qM#oF#oF#oH#r3#rh#oH#r9#nm#oG#r3#s.#rh#rj#qq#pN#ri#rO#lS#rO#s##sa#sb#rq#pd#nJ#sc#qV#rR#rR#rs#ly#sd#p6#df#rT#ol#gv#n5#ed#kA#qb#ck#oV#ck#oR#aK#m1#ft#fs#nU#gf#se#sf#oR#rX#oU#ma#sg#gd#ge#ft#sh#kJ#kJ#mh#mh#kJ#kJ#mh#si#sj#qg#sk#m1#oR#rW#dz#qd#oV#m0#oc#oc#m0#oU#oV#mc#ps#ps#oV#dz#mi#mc#m0#oS#oc#pr#qZ#rx#r0#rZ#sl#q0#mb#n5#sm#n0#n5#sn#oZ#so#pM#r3#sp#q3#r4#lE#sq#lE#lE#r4#q4#q4#r4#r4#mv#q4#kb#q4.XX#sp#nl#nC#nC#nm.HM.Iz.IA.Iz.Iz.Iz.Ob.St.Ss.St.O1.Ry.5Q.4k.Z..Sy.9k.4z.5A#.z##R#oM#eY#.s.HF.9i#pk#sr#pD.Rn.yr.yr.yr.T3.T3.T3.T3.T3.T3.T3.T3.wd.wd.wd.wd.wd.wd.wd.wd.wd.wd.wd.wd.wd.wd.wd.wd.wd.wd.wd.T3.yr.wdQtz.sj.B2.B2.sj.B2QtZQtz.A3.tm.e9.A3.wb.z5QtyQty.A3.A3.B#QtyQty.MU.l4.l4.z5#ss#st#su#su#st#st#ss.#l#sv.aP.#l.zg.z5QtyQtyQty.0Z.0Z.0Z.zP#sw.B#.dK.zP#sx#sy#sz#sA#sA#sA#sB#sC#sC#sD#sE#sF#sG#sH#sI#sJ#sJ#sK#sI#sL#sM#sN#sO#sP#sQ#sR#sS#sS#sT#sU#sV#sV#sW#sX#sY#sZ#sZ#sY#sY#s0#s1#s2#s3#s4.ioQtT.tn.io", +"#s5#s5#s6#r8#pR.dw.ii.#a.dw.dw.dwQtZ.dw.tn.dw.dw.dw.dw.dw.dw.dw.dw.gOQtG.Io.QA.PM.Rn.Rn.Rn.Rn.Rn.Rn.Rn.Rn.Rn.Rn.Rn.Rn.Rn.Rn.Rn.Rn.Rn.Rn.Rn.Rn.Rn.Rn.Rn.Rn.Rn.Rn.Rn.Rn.Rn.Rn.tH.S4.Rn#sr#rJ#s7#s7#s7#rJ#qQ#pX#py#py#fv#iX.St.St#lh#lh.St.Ss#lh#nk#nk#nk#oF#oF#nk#rK#nl#nl#pF#qP#pF#qP#oF#oF#qq#qq#rj#qq#pN#r3#s8#pN#qM#p1#o4#qP#qP#o4#r9#pN#qq#qq#s.#ri#rn#s9#t.#t##ta#tb#tc#sc#qU#td#pt#rR#rS#sd#pi#qV#df#qU#te#om#p8#tb#qU#tc#oR#oV#dz#po#qf#mh#pn#ru#jy#pM#sd#sf#pp#ls#mb#m##tf#mb#ls#gd#ru#qb#sh#tg#tg#kJ#qb#kQ#ft#qe#th#ti#rT#qb#n0#oR#dz#qd#oV#mc#ps#ob#oS#oU#oU#mb#ps#ps#rX#gd#rX#mb#oc#oc#qZ#r0#q0#rx#r0#sl#sl#q0#oU#n5#sm#tj#ru#tk#tl.13#pM#q2#tm#sq#sq#sq.MF#r4#r4#sq#r4#r4#q4#q4#r4#q4#q4#pw#sp.Iy.Iy.Iy#nC#nl#nl#nl#nk#nk.Iz.Iz.Ob.Ob.Ob.Ob.QE.Ss.5Q#dg#cH.9l.9k.9g.1l.4s.0d.6C.9n#ch.Ng#ee#rd#pD.Rn.yr.yr.yr.T3.T3.T3.T3.T3.T3.T3.T3.T3.T3.T3.T3.T3.T3.T3.T3.T3.T3.T3.T3.T3.T3.T3.T3.yr.yr.yr.yr.PM.yrQtCQtZ.gO.gO.gO.B2QtA.S3.hj.g6.zw.tl.ZY.vV#.8.tM#r##tn.AU#to#to#tn#tp#tq#tr#ts#tt#tu#tv#tw#tx#ty#tz#tA#tB#.8.TU#tC.VB#pO#tD#tD.uA#tE#tF#qx#tD#bE.Uu#tG#tH#tI#tJ.1H.0y#tK#tL#tM#tN#tO#tP#tQ#tR#tS#tT#tU#tV#tW#tX#tY#tZ#t0#t1#t2#t3#t4#t5#t6#t7#t8#t9#u.#u##ua#ub#uc#ud#ue#uf#ug#uh#ui#uj#uk.nGQt6.B2", +"#ul#um#un#r8Qt6QtD.z5.wbQtA.dw.dw.dwQtAQtCQtK.#a.dw.dw.dw.dw.dw.dw.gOQtN.Io.QA.PM.Rn.Rn.Rn.Rn.Rn.Rn.Rn.Rn.Rn.Rn.Rn.Rn.Rn.Rn.Rn.Rn.Rn.Rn.Rn.Rn.Rn.Rn.Rn.Rn.Rn.Rn.Rn.Rn.Rn.Rn.tH.tH.tQ#sr#o0#uo#uo#s7#nP#rJ#pX#m.#o2#oH.St#oH#oH.St#p4#fv.Ss.Ob.Oa#qq#oH#iX#pN#oF#qq#nl#oG#nl#qM#qP#qP#oH#p2#pN#rj#s8#pN#rL#up#uq#qM#ur#p1#us#ur#ut#uu#p1#uq#uv#rK#rN#qO#rN#uw#ux#uy#uz#p9#uA#uB#rr#td#sd#pt#pt#rS#rR#rs#df#sc#td#ol#t.#ru#sc#uB#uC#mi#dz#m1#qf#qe#gv#qb#rt#pO#uD#qf#n0#dz#mb#m##sg#oU#rX#oU#rW#ru#uE#oY#oW#uE#sh#sh#qf#rU#sf#sk#rt#rt#uF#qb#n0#oR#dz#mi#ls#m0#ps#m##oU#oU#mb#ps#mb#hz#dz#rX#m0#oc#ob#q0#sl#sl#rY#uG#uH#uH#q0#oV#rw#n5#rw#qe#uI#tl#uJ#qj#rB#q3#tm#tm#tm.MF#q3#q3#q3#q3#r4#lE#lE#lE#lE#o5#r9#rK#kY#kY#kY#kY#kY#nk#oF.Ob.Oa.Ob.Ob.St.Ss.Ss.QJ.QJ.4k#f6.9l.4u.4u#.z.1l#.u#.u#aF#ch.H#.Ng#gp.Gb#pD.yr.yr.Rn.yr.T3.T3.T3.T3.T3.T3.T3.T3.T3.T3.T3.T3.T3.T3.T3.T3.T3.T3.T3.T3.T3.T3.T3.T3.yr.yr.yr.yr.PM.yrQtCQtZ.gO.gO.gO.sj.ti.yq.A3QtS.ti.g6.ZY.BD#uK#uL.YN.uB.W0#uM#uN#uO#uP#uQ#uR#uS#uT#uU#uV#uW#uX#uY#uZ#u0#u1#u2#u3.YN#u4.YN#u5.uX.YN.YN.YN.uX#uL#u6#u7#u8#u9#v.#v##va#vb#vc#vd#ve#vf#vg#vh#vi#vj#vk#vl#vm#vn#vo#vp#vq#vr#vs#vt#vu#vv#vw#vx#vy#vz#vA#vB#vC#vD#vE#vF#vG#vH#vI#vJ#vK#vL#vM#vNQtY.ziQt6.B2", +"#vO#vP#vQ#vR#vS#vT.uZ.we.tJ#vU#vV#vW.xB.tJ.BV#vX.xU.xU.xU#vY#vZ#v0#v1#v2#v3#v4.N4.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.N4#v5#v6#v7#v8#v9#w.#w##wa#wb#ka#wc#wd#we#wf#wg#wg#wh#wi#wj#wk#wl#wm#wn#wo#wp#wq#wr#ws#wm#wt#wm#wu#wv#ww#wx#wy#wz#wA#wA#wB#wC#wD#wE#wF#wG#wH#wI#wG#wJ#wK#wL#wM#wN#wO#wP#wQ#wR#wS#wT#wU#wV#wW#wX#wY#wZ#w0#w1#w2#w3#w4#w5#w6#w7#w8#w9#w6#x.#x##xa#xb.Xd.UX.QX.5B.Je.J##xc#xd#xe#xf#xg.JK.J0.Je#xh#cn#xi#xj#xk.H##xl.LY.JT#xm#xn.UZ.KV.J..KU.KX.LT.LT.Lo#xo#xp#xq#xn.Lo.LT#xr#xs#xt#xu#xv#xw#xx#xy#xu#xz#xA#xB.LZ.Q.#xC#xD#xE#xF#xG#xG#xH#xI#xJ#xH#xK#xL#xM#xN#o7#xO#xP#xQ#xR#xS#xT#xU#xV#fN.Ht#fO#xW#xX#xY#xZ#xZ#x0#x1#x2#x3#x4#x5#x6#x7#x8#x9#y.#wk#y##ya#yb#yc#yd#ye#yf#yf#yg#yh#yi#yj#yk#yl#ym#yn#yo#yp#yq#yr#ys#ys#yt#yu#yv#yw#yx#yy#yz#yA.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON#v6#v6.N4#yB#yC#yD#yE#yF#v0#yG#yH#v0.Ex.v3#yI#yJ.uL#yK#yL#yM#yN#yO#yP#yQ#yR#yS#yT#yU#yV#yW#yX#yY#yZ#y0#y1#y2#y3#y4#y5#y6#y7#y8#y9#z.#z##za#zb#zc#zd#ze#zf#zg#zh#zi#zj#zk#zl#zm#zn#zo#zp#zq#zr#zs#zt#zu#zv#zw#zx#zy#zz#zA#zB#zC#zD#zE#zF#zG#zH#zI#zJ#zK#zL#zM#zN#zO#zP#zQ#zR#zS#zT#zU#zV#zW#zX#zY#zZ#z0#z1#z2#z3#z4#v0", +"#z5#z6#z7#vR#z8#z9#A..uT#A##Aa#Ab#Ac.we.uR.tJ#vU#v0.xU.xU#Ad#Ae.xU#Af#Ag#Ah#Ai.N4.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.N4#Aj.N4#Ak#v8#Al#Am#An#Ao#Ap#Aq#Ar#As#wg#At#Au#Av#Av#wi#we#Aw#Ax#Ay#Az#AA#AB#ws#AC#AD#ws#Ay#wu#Ay#wx#wx#AE#AF#AG#AH#AI#AJ#AK#AL#AL#AM#AN#wH#wI#AN#AM#AO#AP#AQ#AR#AS#AT#AU#AV#AW#AX#AY#wV#AW#AZ#A0#A1#A2#A3#A4#A5#A6#A7#A6#A8#A9#B.#w4##x#B##bd.29.NL.PY.IW#Ba.Yk.Jc.NH#Bb.Lq.1b#Bc.RX.IN.KV.Lq##R#Bd#xx#Be#Bf#Bg#Bh.4H.Ls.I9.I9.KX.P3.Lp.L5.Ls.IN.JV.JK.KU#Bi#Bj#Bk#xo.Mb#Bl#Be#Bm#xu#xu#xi#Bm#xy#cn#Bn#Bo.Uc.LZ#Bp#Bq#Br#Bs#Bt#Bu#Bv#Bw#Bv#Bv#Bx#By#bR#Bz#BA##x#BB#BC#BD#g6#xU#BE#BF#BF#xT#BG#BH#BI#BJ#BK#BL#BM#x1#BN#BO#BP#BQ#x7#BR#x8#BS#BT#wk#wk#BU#BV#BW#BX#BY#BZ#B0#B1#yi#B2#B3#B4#B5#B6#ym#B7#B8#B9#C.#C##Ca#Cb#Cc#Cd#yw#Ce#Cf#Cg#yA.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON#v6#Ch.N4#yB#Ci#v6#Cj#Ck#vZ.xU#yH#v0.Ex.BP.we#Cl.Gi#Cm#Cn#Co#Cp#Cq#Cr#Cs#Ct#Cu#Cv#Cw#Cx#Cy#Cz#CA#CB#CC#CD#CE#CF#CG#CH#CI#CJ#CK#CL#CM#CN#CO#CP#CQ#CR#CS#CS#CT#CU#CV#CW#CX#CY#CZ#C0#C1#C2#C3#C4#C5#C6#C7#C8#C9#D.#D##Da#Db#Dc#Dd#De#Df#Dg#Dh#Di#Dj#Dk#Dl#Dm#Dn#Do#Dp#Dq#Dr#Ds#Dt#Du#Dv#Dw#Dx#Dy#Dz#DA#DB#DC#DD#DE#DF#DG", +"#DH#DI#DJ#DK#DL#DM.sR#DN.xD#DO#yH#DP.Ep.xB.Fg#DQ#v0#v0#v0#Ad#Ae#v0#DR#v2#DS#v4.N4.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.N4#DT#Cf#DU#DV#DW#DX#DY#DZ#D0#lH#mm#wg#wh#Av#D1#D2#D3#Au#wf#wf#D4#D5#D6#D6#D7#D8#D9#E.#E##Ea#wp#Eb#Ec#Ed#Ed#Ee#Ef#Eg#Eh#Ei#Ej#wJ#Ek#AM#Ej#wI#El#AN#wF#Em#En#Eo#Ep#Eq#Er#Es#Et#Eu#Ev#wY#Ew#Ex#Ey#Ez#EA#EB#EC#ED#EE#EF#EG#EH#EI#EJ#EK#EL#EM#p3##r.Pu#EN.Nc.4H.Lb.LZ.Tf.2e.RY.J9.RY.Mb#EO.RK.Jw#EP#EQ#ER#ES#xy#ET.4y.LY.UX.PY.KX.KX.JY.Yj.X..Xn.Lm.JY.J0.JK.Lp#EU#xo#EV#EW#EX#EY.Qg#Bl.HF#EZ#xi#xx#bi#Bm#xy.PZ#E0.Uc.IW.6E#E1#E2#E3#E4#E5#E6#E7#E8#E9#F.#F##Bz#bR.Xd#Fa#xQ#Fb#Fc#Fd#xT#BE#BF.K4#BG#Fe#BK#Ff#Fg#Fh#Fi#Fj#Fk#Fl#Fm#Fn#BR#Fn#x7#Fo#Fp#Fq#Fr#Fs#Ft#Fu#BX#BY#Fv#Fw#Fx#B3#Fy#B4#Fz#FA#ym#FB#FC#FD#FE#C.#FF#FG#hm#FH#FI#FJ#FK#yB#yz#yA.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON#v6#FL.N4#yB#yC#FM#FN#Ck#v0.xU#yH#yH#FO#FP#FQ#FR#FS#FT#FU#nY#FV#FW#FX#FY#FZ#F0#F1#F2#F3#F4#F5#F6#F7.ix#F8.ay#F9#G.#G##Ga#Gb#Gc#Gd#Ge#Gf#Gg#Gh#Gi#Gj#Gk#Gl#Gm#Gn#Go#Gp#Gq#Gr#Gs#Gt#Gu#Gv#Gw#Gx#Gy#Gz#GA#GB#GC#GD#GE#GF#GG#GH#GI#GJ#GK#GL#Dh#GM#GN#GO#GP#GQ#GR#GS#GT#GU#GV#GW#GX#GY#GZ#G0#G1#G2#G3#G4#G5#G6#G7#G8#G9#H.", +"#H##Ha#Hb#Hc#Hd#He.Eq.BV#yG#yH#yG#yG#DO#vW#Hf.xU#yG#v0#yH#vZ#vZ#v0#DR#Hg#DS#v4.N4.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.N4#Hh.N4#Hi#Hj#Hk#Hl#Hm#Aq#lH#Hn#Ar#Ho#Hp#Hq#Hr#Hs#Ht#Hu#Hv#Hw#Hx#Hy#Hz#HA#HB#HC#HD#HE#D9#HF#HG#HH#HG#HI#HJ#HK#HL#HM#HN#HO#HP#HQ#HR#HS#HT#HU#HU#HV#wE#HP#HW#HX#HY#HZ#H0#H1#H2#H3#H4#H5#H6#H7#H8#H9#I.#I##xa#Ia#Ib#Ic#Id#Ie#If#Ig#Ih#Ii#Ij.Ms.QE#k7#Ik.z6.XY.6C.Pb#iM.6q.G0.Su.Hz.Rz.Rz.Nf.Iz#Il#Im#In#xx#E1#bl#ET.3m.0d#Io.KF.Je.Oc.M2##J.5w.5x.L7.LZ.3k.Q1#Ip#Iq.8S#Ir#Is#It#Iu#Iv.Mw.PO#Iw#EZ#xy#xy#Ix#Iy.Ng#ch.3o#Iz#IA#ES#E2#IB#IC#ID#IE#IF#IG#IH#II#b2#l0#qQ#IJ#IK#IL#IM#IN#xU#BE#BF#xU#IO#IP#fN#xY#BF#IQ#IR#IS#IT#IU#IV#IW#IX#IY#IZ#I0#I1#I1#I2#I3#I4#I5#I6#I7#I8#I9#J.#J##Ja#Jb#Jc#Jd#FB#FB#Je#Jf#Jg#Jh#Ji#Jj#Jk#Jl#Jm.ON#Jn#yB#yz#yA.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON#v6#Ch.N4#yB#Jo#FM#Cj#Ck#v0#yG#v0#v1#FO#Jp#Jq#Jr#A##Js#k0#Jt#Ju#Jv#Jw#Jx#Jy#Jz#JA#JB#JC#JD#JE#JF#JG#JH#JI#JJ#JK#JL#JM#JN#JO#JP#JQ#JR#JS#JT#JU#JV#JW#JX#JY#JZ#J0#J1#J2#J3#J4#J5#J6#J7#J8#J9#K.#K##Ka#Kb#Kc#Kd#Ke#Kf#Kg#Kh#Ki#Kj#Kk#Kl#zF#zF#Km#Kn#Ko#Kp#Kq#Kr#Ks#Kt#Ku#Kv#Kw#Kx#Ky#Kz#KA#KB#KC#KD#KE#KF#KG#KH#KI#KJ#KK", +"#KL#KM#KN#KO#KP#KQ#KR#KS#yH.xU.xU.xU#v0#v0.xU.xU#yG#v0#yH#Ad#vZ#v0#KT#KU#Ah#Ai.N4.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON#yD#Hh#yz#KV#KW#KX#ka#KY#KZ#KZ#Aq#D0#K0#D0#K1#K2#K3#K4#K5#K6#K7#K8#K9#L.#E.#HB#L##La#Lb#AG#Lb#AG#Lb#AG#wz#Lc#Ld#Le#Lf#Lg#Lh#Li#Li#Lj#HS#Lk#Ll#Lg#Lm#Lf#Ln#Lg#Lo#Lp#Lq#Lr#Ls#Lt#Lu#Lv.4Y#Lw#Lx#Ly#H9#Lz#LA#LB#LC#LD#LE#LF#LG#LH#LI#LJ#LK#LL#LM.UO.3##LN#LO.Kc#fv#b2#d0#LP.HM.XY.QF.Iz.Iz.HM.Iz.LO#LQ#LR#LS#xi#xv#LT#ET#Bf#LU.MX.L6#LV.Yo.MY#LW#Bf#ET#bl#LX#xy#LY#LZ#L0#L1.26#L2#L3#L4#LR#L5.Mu#EO#L6.HF#bi#Bm#bj#bj#cp#aH#xy#E1#ES#Bs#L7#L8#L9#M.#M##q0#Ma#cK#d0#cN#Mb#Mc#Md#fM#g6#Me#xT#BE#xT#xT#Mf#Mg.K3.K5#Mh#Mi#Mj#Mk#Ml#Mm#Mn#Mo#Mp#IY#Mq#Mr#Mr#Ms#Mt#Hn#Mu#lK#Mv#Mw#Mx#My#Mz#MA#Ja#MB#MC#MD#MD#ME#MF#MG#MH#MI#MJ#MK#ML#MM#MN#yy#MO#MP#yA.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON#v6#Ch#yB#yB#yC#FM#FN#yF#vZ.xU.xU#MQ.Fg#MR#MS#MT#MU#MV#MW#MX#MY#MZ#M0#M1#M2#M3#M4#M5#M6#M7#n.#M8#M9#N.#N##Na#Nb#Nc#Nd#Ne#Nf#Ng#Nh#Ni#Nj#Nk#Nl#Nm#Nn#No#Np#Nq#Gk#Gn#Nr#Ns#Nt#Nu#Nv#Nw#Nx#Ny#Nz#NA#NB#NC#ND#NE#NF#NG#NH#NI#NJ#NK#NL#NM#zF#Dg#NN#NO#NP#NQ#NR#NS#NT#NU#NV#NW#NX#NY#NZ#N0#N1#N2#N3#N4#N5#N6#N7#N8#N9#O.#O#", +"#Oa#Ob#Oc#Od#Oe#Of#Ad#yJ#Og.xU.xU#Og#yG#yG.xU#v0.xU.xU#yH#Ad#Ae#v0#DR#Oh#Oi#v4.N4.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.UC#Oj#Ok#Ol#Om#On#Oo#Op#Aq#Oq#Or#Os#wb#wb#Ot#Ou#Ov#Ow#Ox#Oy#E##Oz#Oz#E##E##Oz#Hy#OA#OB#OC#OD#Lb#OD#OB#OE#wA#OF#OG#OH#OI#OJ#OK#OL#OM#HS#ON#OK#OO#Li#Lk#OP#OQ#OR#OS#Ln#OT#OU#OV#OW#OX.4Q#Lw#OY#OZ#O0#O1#O2#O3#O4#O5#O6#LI#O7#O8#O9#P.#P##Pa#Pb.3b.UM.IL.Ps#Pc.Su#la#aL#la#qK.Ob.HM.St#pE#pE.Ob.Ky.Qg#Pd#Pe.RA#Pf#Pf#xs#Pg.RA#LS#Bl.RA#EO.PR.PO#L6#ET#aH#bj#Bm#Ph#Pi#Pj#ER#Bf.Hl#Pk#Pl#Pl#Im#Pm#Pe.Mu.Qf.KA#L6#Be#cp.HF#aH#cp#Pf#ES#ES#Pn#Po#M.#ID#Pp#Pq#Pr#Ps#d6#b0.1m#Pt#Pu#xR#Fc#IN#xU#xT#xT#xT#xU#IO#xU#Pv#Pw#Px#Py#Pz#Ml#Ml#PA#IX#PB#PC#Ms#Ar#mm#PD#Ar#PE#PF#PG#PG#Mv#PH#My#PI#PJ#MA#MA#PK#PL#PM#PN#PN#PO#PP#MJ#PQ#PR#PS#PT#PU#PV#Cf#yz#yA.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON#v6#Ch.N4#yB#yC#FM#FN#PW#v0.xU.xU#Ab#PX#PY.zB#PZ#oa#P0#P1#P2#P3#P4#P5#P6#P7#P8#P9#CR#Q.#Q##Qa#Qb#un#Qc#Qd#Qe#Qf#Qg#Qh#Qi#Qj#Qk#Ql#zb#Qm#Qn#Qo#Qp#Qq#Qr#Qs#Qt#Gn#Qu#Qv#Qw#Qx#Qy#Qz#QA#QB#QC#QD#QE#QF#QG#Kf#QH#QI#QJ#QK#QL#QM#QN#QO#QP#zF#Dh#QQ#QR#QS#QT#QU#QV#NQ#QW#QX#QY#QZ#Q0#Q1#Q2#Q3#Q4#Q5#Q6#Q7#Q8#Q9#R.#R##Ra#Rb", +"#Rc#Rd#Re#Rf#Rg#Rh#Ri#Rj#MQ#v0#yG#Hf#yH#Ab#yH#v0#v0#v0#yH#Ad#Ae#v0#Rk#Ag#v3#v4.N4.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.UC#Oj#yD#Rl#Rm#Aq#Rn#Ro#ox#D0#Rp#Ao#Ao#Rq#Rr#Rs#Rt#Ru#Rv#Rw#L.#Rx#Ry#HB#L.#Rz#K6#RA#RB#RC#RC#OB#OE#RD#RE#RF#RG#Lj#OO#RH#RI#RJ#RK#OH#Lj#RL#OK#OO#Lk#ON#Lh#RM#RN#OS#RO#Lj#RP#OW#RQ#OX#RR#Lw#RS#Ly#O0#RT#RU#RV#RW#RX#RY#RZ#LE#R0#R1#R2#R3#BB#R4#il.KY.IF.Pq.z6.Kb#R5#b3#b0#dD#qK.St.St.4k#dc#cO#py.Rz.Qg.Mv.Qg#R6#Bd#EZ#bj#aH.PR.KF#L6.W4.Pp#LS.RA#ET#xs#bj#bj#Pj#bW#bl#EZ#R7#R8#LS.Mu#R9#LR#Iu#S.#S#.Mw.Mw.Mt.RY.W3#cR#cQ#Pg#bj#Bd#Sa#Sb#Sc#xI#L9#L9#Sd#Se#Se#Se#Sf.Wd#Sg#Sh#fM#Si#fP#Me#xU#xT#xU#xV#xV#Mh#Sj#Sk#Sl#Pz#Ml#Sm#Sn#PA#IX#So#Sp#Sq#lH#mm#mm#Ar#Sr#Ss#St#PG#Mv#PH#Su#PJ#MA#MA#Sv#Sw#PK#Sx#Sy#FB#Sz#MH#MI#SA#SB#SC#SD#SE#SF#DT#yz#yA.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON#Ch#Ch#v6#yB#yC#FM#FN#PW#v0.xU.xU#Ab#SG#SH#SI#Gn#SJ#SK#SL#SM#SN#SO#SP#SQ#SR#SS#ST#SU#SV#SW#SX#SY#SZ#S0#S1#S2#S3#S4#S5#S6#yQ#Nd#S7#S8#CP#S9#T.#T##Ta#Tb#Tc#Td#Te#Tf#Qv#Tg#Th#Ti#Tj#Tk#Tl#Tm#Tn#To#Tp#Tq#Tr#Ts#Tt#Tu#Tv#Tw#Tx#Ty#Tz#TA#GL#Dg#TB#TC#TD#TE#TF#TG#TH#TI#TJ#TK#TL#TM#TN#TO#TP#TQ#TR#TS#TT#TU#TV#TW#R##TX#Rb", +"#TY#TZ#T0#T1#T2#T3#vV#T4.Fg#T5#v0#yH#DQ.Ep#DQ#yG#yG.xU#v0#Ad#vZ#v0#DR#Ag#v3#v4.N4.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON#T6#T7#T8#T9#U.#U##Ms#Ua#Hp#DZ#Rr#Ub#wb#Ap#Uc#Ud#Ue#Uf#Ug#Ox#Uh#Ui#Uj#Uk#Ul#Um#Un#Uo#Up#Uq#Ur#Us#OB#Ut#Uu#AG#Uv#Uw#Lk#Ux#Uy#Uz#RH#OI#OP#UA#UB#UC#UD#UE#OO#UF#OS#UG#RN#UH#UI#UJ#UK#OX#UL#UM#RS#UN#UO#UP#UQ#RW#UR#US#UT#UU#UV#UW#O7#UX#UY#UZ#U0#U1.Mo.1l.Rz.Pu.My.Rz#cO#b1#b4#dD#q##pE#pE.1l#iD#eM#Bf.JW#In.NM.Qf#cQ#U2#xx#br#cQ#U3.KA#U4.1a.HV#EO.6q#ET.Pb#U5#bp#.t#d0#d0#bW#U6#cQ.MY#LS.Sg.7r#U7#U8.Kg.GX.NM.Mx.Mx.Oy.Yo.PO#Bf#bj#IA#U9#V.#M##IF#V##Va#Vb#Se#Ma#cJ.9k#Vc#Vd#Ve#Vf#Vg#xS#xV#xU.K3#Vh#xT#Vi#Vj#Vk#Vl#Vm#Vn#Vo#Vp#Vq#Sp#Vr#Vs#Aq#Ho#lH#lH#Aq#Vt#Vu#Vv#Vw#I8#Vx#MB#PJ#MA#Vy#MA#Fy#Vz#PN#VA#VB#VC#VD#VE#VD#VF#VG#VH#VI#VJ#Cf#Ok#yA.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON#v6#Ch.N4#yB#yC#FM#Cj#VK#v0.xU#v0#Ab#PX#VL.tN#VM#VN#VO#VP#VQ#VR#VS#VT#VU#VV#zi#VW#VX#VY#VZ#V0#V1#V2#V3#V4#V5#V6#V7#V8#V9#W.#W##zc#Wa#Wb#Wc#Wd#We#Gs#Wf#Wg#Wh#Wi#Qk#Wj#Wk#Wl#Wm#Wn#Wo#Wp#Wq#Wr#Ws#Wt#Wu#Wv#Ww#Wx#Wy#Wz#WA#WB#WC#WD#WE#Dg#WF#WG#WH#WI#WJ#WK#WL#WM#WN#WO#WP#WQ#WR#WS#WT#WU#WV#WW#WX#WY#WZ#W0#KH#W1#W2#Rb", +"#W3#W4#W5#W6#W7.zS#W8.lV#Jp#Og#v0#W9#FO#FR.Ep#X.#yH#Og.xU#v0#Ad#v0#KT#Ag#v3#Ai.N4.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON#MP#Cg#X##Xa#Xb#Xc#Xd#Xe#Xf#Xg#Xh#Xi#Xj#Xk#Xl#Xm#Xn#Xo#Xp#Xq#Xr#Xs#Xt#Xu#Xv#Xw#Xx#Xy#Xz#XA#XB#XC#XD#XE#XF#XG#XH#XI#HR#Lh#RJ#XJ#XK#XL#UG#Lh#XM#XN#XO#XP#XQ#XR#XS#XT#XU#XV#XW#XX#XY#XZ#X0#X1#X2#X3#X4#X5#X6#X7#X8#X9#Y.#Y##Ya#Yb#Yc#Yd#Ye#Yf#Yg#Yh#Yi#Yj#Yk#jc#Yl#Ym#Yn#Yo#Yp#Yq#Yr#Ys#s7#oZ#iA#m1#qe#pk.Ob#Yt.NU.NO.1u#ge#lt#bm#Yu.0j#pv.Gb#i3#lF.GR#o1#te#qf#n5#bU#ru#qb#ed#rT#Yv#od.Iw#pM#Yw.GP#Yx#Yy.mY.Mw#Yz.Qh.Qh.Qf#U3.W4.RA#ET#ge#rZ#YA#YB#M.#YC#Bv#YD#Se#YE#YF#YG#YH#YI#YJ#YK#YL#YM#YN#xV.K4#YO#YP#jo#YQ#YR#YS#Pz#Vn#YT#YU#YV#YW#YX#YY#YZ#Aq#Aq#Hp#K0#Y0#Y1#Y2#Y3#Y4#Y5#Vy#PJ#Y6#Y7#Vz#PN#Y8#Y9#Je#VC#Z.#Z##Za#Zb#Zc#Zd#Ze#Zf#Zf#yz#yA.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON#Ch#yB#yB.XQ#FM#Cj#Ck#vZ#v0#v0#Ab#Zg#Zh#Zi#Zj#Zk#Zl#Zm#Zn#Zo#Zp#Zq#Nd#Te#Zr#VM#Zs#Zt#Zu#Zv#Zw#Zx#Zy#Zz#ZA#ZB#ZC#ZD#ZE#ZF#ZG#ZH#ZI#CQ#ZJ#ZK#ZL#ZM#ZN#ZO#ZP#ZQ#CU#ZR#ZS#ZT#ZU#ZV#ZW#ZX#ZY#ZZ#Ke#Z0#Z1#Z2#Z3#Z4#Z5#WC#Z6#Z7#Z8#Z9#0.#GL#WF#0##0a#0b#0c#0d#0e#0f#0g#0h#0i#0j#0k#0l#0m#0n#0o#0p#0q#0r#0s#0t#0u#0v#0w#0x", +"#0y#0z#0A#0B#0C#0D#0E.lu#0F.Fe#v1#0G#0H.sB.v1#0G#0I#v1.xU#v0#Ad#v0#DR#Ag#v3.UB.N4.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.N4#0J#DT#Xa#or#lC#Or#0K#0L#Oo#0M#0N#0O#0P#0Q#Xk#0R#0S#Xr#0T#0U#0V#0W#0X#0Y#0Z#Xu#00#01#02#03#Up#04#05#06#07#08#XI#09#1.#RJ#1##1a#1b#1c#UD#1d#1e#1f#XO#1g#1h#XS#1i#1j#1k#1l#1m#1n#X6#1o#1p#1q#1r#1s#1t#1u#1v#1w#1x#1y#1z#1A#1B#1C#1D#1E#1F#1G#1H#1H#1I#1J#1K#1L#1M#1N#1O#1P#1Q#1R#1S#qh#pt#rT#ru#m1#qb#tk#1T#qo#np.vE#1U#pt#m1#qb#pt#qm#qi#qi#k5QtJ#ne#o1#pt#1V#qf#n5#m1#ru#oY#pt#1W#pz#o1#o0#o0#1X#rB#1Y.8P.8S.Mu.Qh.Oy#1Z.PR.Po.MX#10#pn#oR#V.#E6#11#IC#12#Se#R7#13#14#15#16#17#18#19#2.#2##2a#2b#ie#2c#ja#2d#2e#2f#2g#2h#2i#2j#2k#2l#2m#2n#K0#D0#D0#D0#2o#2p#Ot#Ub#2q#2r#Jc#2s#Ja#Vy#2t#2u#PN#2v#2w#FB#2u#PN#Z##2x#2y#2z#2A#VI#SF#Cf#2B#yA.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON#v6#Ch.N4#yB.XQ#FM#2C#Ck#2D#v0#v0#2E#2F#2G#2H#2I#2J#2K#2L#2M#2N#2O#2P#CV#mY#ZI#zd#2Q#2R#2S#2T#2U#2V#2W#2X#2Y#2Z#20#21#22#23#mY#24#25#ZI#26#Np#27#28#29#3.#3##3a#3b#3c#3d#3e#3f#3g#3h#3i#3j#3k#3l#NG#3m#3n#3o#3p#3q#3r#3s#3t#3u#3v#3w#zF#Dg#3x#3y#3z#3A#3B#3C#3D#3E#3F#3G#3H#3I#QY#3J#3K#3L#3M#3N#3O#3P#3Q#3R#3S#3T#Rb", +"#3U#3V#3W#3X#3Y.TN#3Z#30#31.Ey#v1#32#33.r4#Jq.Eq#DP#vV.xU.xU#vZ#v0#DR#Ag#v3#v4.N4.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON#34#yB#yz#35#36#D0#On#37#Vr#Oo#38#0M#39#4.#4##Xr#4a#4b#4c#4d#4e#4f#4g#4h#4h#4i#Xu#4j#00#02#4k#4l#4m#4n#4o#4p#08#4q#Li#RL#RH#Uy#1d#4r#4s#4t#1b#1e#4u#4v#4w#4x#4y#1i#4z#4A#4B#4C#4D#4E#1o#X6#4F#4G#4H#4I#4E#4J#4K#4L#4M#4N#4O#4P#1C#4Q.Xu#4R#Ye#4S#4T#4U#4V#4W#4X#4Y#4Z#40#41#Yk#42#43#sd#pt#oZ#oW#ru#m1#pn#rt#o0#ql#44#45.x.#46#pO#oZ#oZ#pM#pu#qx#47#48#46#o1#49#qg#oY#ru#pn#rT#ol#qh#pu#qk#o3#49#pt#uJ#U4#5..Oy#EY#EY#S#.Oy.Yo.W3.MX#mQ#5##om#qf#V.#Bv#Va#5a#YD#aL#5b#5c#1E#5d#5e#5f#5g#5h#YN#2##5i.2i#5j#5k#5l#5m#5n#5o#2i#5p#5q#5r#5q#5s#5t#5u#2o#kX#2o#Y0#wb#Ao#Ot#5v#5w#5x#Y7#5y#Vy#5z#Y9#5A#2w#Y8#5B#Vz#MD#hC#5C#2y#5D#2A#5E#5F#Cf#yz#yA.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON#v6#Ch.N4#yB.XQ#FM#5G#Ck#2D#yH#v0#5H#5I#5J#5K#VM#5L#5M#5N#5O#5P#5Q#CS#zd#mX#zd#ZI#mX#5R#5S#5T#5U#5V#5W#5X#5Y#5Z#50#51#52#53#Zt#54#55#Q.#mY#56#57#58#59#6.#6##6a#6b#3c#6c#6d#6e#6f#6g#6h#6i#6j#6k#6l#6m#6n#6o#6p#6q#6r#6s#6t#6u#6v#6w#zF#GL#6x#6y#6z#6A#6B#6C#3C#6D#WL#6E#6F#6G#6H#6I#6J#6K#6L#6M#6N#6O#6P#6Q#6R#6S#Rb", +"#6T#6U#6V#6W#6X.ti#SW.cT.v1#Og#yH#yG.Eq#6Y.Eq#DP.xU#yH#6Z#v0#vZ#v0#DR#60#v3#v4.N4.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON#61.UC#62#63#64#65#Vr#66#Ro#67#38#68#69#7.#7##4c#0T#Xp#Xo#Xp#7a#7b#7c#0Y#4i#4i#7d#7e#7f#7g#7h#XA#7i#7j#7k#7l#7m#XI#7n#Lm#OO#7o#4r#4s#7p#7q#7r#XM#XO#7s#7t#7u#7v#7w#4z#7x#7y#7z#4D#4E#1o#7A#7B#7C#7D#7E#7F#4J#7G#7H#7I#7J#p3#7K#4P.Xu#7L#7M#7N#7O#7P#7Q#7R#7S#7T#7U#7V#7W#7X#7Y#7Z#1V#jy#oZ#sd#qg#ed#m1#m1#qb#rT#oZ#49#ql#1U.x.#1U.WY#ql#pu#o2#uJ#pM#qo#44#70#qm#71#sd#om#oW#oZ#qh#71#uJ#pv#o1#pM#pt#uD#72#ET#Be.6q#73#Pd#74.NM.2e.L6#mQ#q1#ol#pK#aM#75#12#76#77#Pr#78#79#8.#8##8a#5f#5g#8b#8c#8d#Vf#8e#8f#8g#8h#8i#8j#8k#8l#8m#8n#8o#8p#8q#8r#8s#8t#8u#8v#8w#Ao#Rq#8x#8y#8z#5x#8A#8B#PJ#Sv#8C#8D#2v#Y8#8E#5A#MD#MD#Sx#8F#8G#8H#5E#8I#8I#yz#yA.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON#v6#Ch#v6#yB.XQ#FM#5G#Ck#v0#v0#v0#Ab#8J#8K#8L#8M#8N#8O#8P#8Q#8R#8S#8T#ZI#zf#mX#2Q#mX#8U#8V#8W#8X#8Y#8Z#80#81#82#83#84#85#86#87#VM#88#zd#89#9.#9##9a#9b#9c#9d#9e#9f#9g#9h#9i#9j#9k#9l#9m#9n#9o#9p#9q#9r#9s#9t#6q#9u#9v#9w#9x#9y#9z#9A#zF#GL#9B#9C#9D#9E#9F#9G#9H#9I#9J#9K#9L#9M#9N#9O#9P#9Q#9R#9S#9T#9U#9V#9W#9X#9Y#9Z", +"#90#91#92#93#94#95.v3#96#0G#Og#v0#97#T5.BP#vU#MQ.xU.xU#6Z#v0#vZ.xU#KT#98#99#v4.N4.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ONa..#MPa.#a.aa.ba.ca.d#ota.ea.fa.g#ka#Xea.ha.ia.j#Xsa.ka.la.ma.na.na.o#Xua.pa.qa.r#01a.sa.t#XA#02a.ua.va.wa.xa.y#4o#07a.za.Aa.Ba.Ca.Da.Ea.F#7s#4ua.G#4wa.Ha.Ia.Ja.K#XU#7xa.La.Ma.N#1ua.O#7Fa.M#7Aa.Pa.Qa.Oa.R#4La.Sa.Ta.Ua.V#nBa.Wa.Xa.Ya.Za.0a.1a.2a.3a.4a.5a.6a.7a.8a.9a#.a##a#a#sn#mh#rT#uI#oZ#jy#pn#r1#m1#qf#oW#qe#qb#qh.0XQt1a#b#re#46#j7#o3#o0#o0#ql#70a#c#qk#o0#sd#om#om#o0#pv#o1#pv#o3#o1#o0a#da#e#f6#eY#bj#Bf.NMa#f.mYa#g.KF#m.#r2#qg#pK#ed#cI#Psa#ha#ia#ja#ka#la#ma#na#oa#pa#qa#ra#sa#t#Ska#ua#va#wa#xa#y#8ja#za#A#5q#5q#5ra#Ba#Ba#C#Y0#8va#D#8v#Rq#8x#Rqa#Ea#Fa#Ga#H#2sa#I#8A#Y9a#J#MDa#Ka#L#Y8#2u#Z.#Sxa#Ma#Na#Oa#Pa#Q#8I#yy#yz#yA.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON#Ch#Ch.N4#yB.XQ#v6#FN#Ck#v0#KR#v0a#Ra#S#8Ka#Ta#Ua#Va#Wa#Xa#Ya#Za#0#Gna#1#mY#88#CSa#2a#3a#4a#5a#6a#7a#8a#9aa.aa#aaaaabaacaadaaeaaf#ZGaagaah#J1aaiaajaakaalaamaana.xaaoaapaaqaaraasaataauaavaawaax#WwaayaazaaAaaBaaC#9waaDaaEaaFaaGaaH#zF#DgaaIaaJaaKaaLaaMaaNaaOaaPaaQaaRaaSaaTaaUaaVaaWaaXaaYaaZaa0aa1aa2#H.aa3aa4aa5", +"aa6aa7aa8aa9ab.ab#aba#X.#MQ#v0.xU#v0#v0#v0#v0#yH#yG#yG.xU#v0#Ae#v0#DRabb#99#v4.N4.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON#Ce#Oj.XQabcabd#wd#Ms#0L#8rabeabfabgabhabiabjabkablabmabnaboabpabqabrabsabtabuabvabwabxabyabzabAabBabCabDabEa.xa.EabFabG#HMabHabIabJabKabIabLabMabNabOabPabQabRabSabT#1ka.L#1n#1u#1uabU#X6abV#4DabWabX#1oa.R#4LabYabZab0ab1ab2ab3ab4.vlab5ab6ab7ab8ab9ac.ac#acaacbaccac.acdQtRace#a2#tkacfacgach#tkaciacjack#sm#p9#ru#n5#n5#uE.Dq.8..z5.0X.0s#q3#qk#pM#o0#o1#47.WY#r4#pu#oZ#rT#sd#o3#rB#rB#q3#r4#o1#qh#kB#l6#Yu#pl#bo#kA.WC.D1.w0.Hg#r5#o0#rt#oW#pn#n5#rX#jw#qY#cl#d6acl#pjacmacn#5eacoacp#4Tacqacr#IMacs#Mda#va#xact#BCacuacv#8q#8jacwacxacy#Ap#Y0a#Da#Dacz#Ot#Rq#Xj#8xacAacBacCacDacEacFacGacHacIacJacK#PLacL#Z.acMacNacOacPacQ#8I.UC#yz#yA.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON#v6#Ch.N4#yB.XQ#FMacR#Ck#v0#KR#v0acS.FgacTacUacVacWacXacYacZac0#Ndac1ac2ac3ac4#CUac5ac6ac7ac8ac9ad.ad#adaadbadcaddadeadfadgadhadiadj#VY#Waadkadl#NpadmadnadoadpadqadradsadtaduadvadwadxadyadzadAadB#6nadCadDadEadFadGadHadIadJadKadL#zF#GLadMadNadOadPadQadRadSadTadUadV#TGadWadXadYadZad0ad1ad2ad3ad4ad5ad6ad7ad8ad9", +"ae.ae#aeaaebaecaedaeeaef.tJ#DO#yG#T5#Hf.Eyaegaeg#Hf.xU#yG.xU#vZ#v0#DRaeh#Oi#Ai.N4.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON#34#Aj#DT#eV#Rm#Rnaeiaejaekael#5q#5raem#5raenaeoa.maepaeqaeraesaet#w0aeuaevaewaexaeyaezaeAaeBaeCaeDaeEaeyaeFaeGaeHa.E#XFaeIaeIabSaeJaeKaeLaeMaeNaeOaePaeQaeRaeSaeTaeUaeV#7yabV#4E#X6abU#1uabV#7z.4WabX#X0aeWaeXa.TaeYaeZae0ae1ae2ae3ae4ae5ae6ae7ae8ae9.Gr.D7.s4af.af#afaafb.vw.vxafcafdafeaffafgafhafiafiafiafg#m1#n5#oR#dz#rX#iTafj.Dq.uC.Fp#qi#qm#qm#pO#pu#o3afka#c#ne#qi#pt#qg#uJ#qk#qoafkafkafk#o1#pt#sd#r2#5##oW#n5#mh#o3#1Uaflafm#qo#pt#pn#qf#oRafn#mc#oV#cK#b3#iv#aL.Kcafoafpafqafrafsaft#5jafu#xR#IL#Mdafva#v#VdafwafxafyafzafyafA#KX#K1#Y0#K0#Aq#Aq#8v#RracAafBafCafDafEafFafGafHafIafJafKafLafM#VB#Y9#Y8#Y9afNafOafPa#Q#8I#yy#yz#yA.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON#v6#Ch#v6#yB.XQafQafR#Ck#v0afS#KKafTafUafVafWafXafYafZaf0af1af2af3af4#CT#Nq#CUaf5af6af7af8af9ag.ag#agaagbagcagdageagfaggaghagiagjac0agkaglagmagnagoagpagqagragsagtaguagvagwagxagyagzagAagBagCagDagEagF#9tagGagHagIagJagKagLagMagNagO#GL#GLagPagQagRagSagTagUagVagWagXagYagZag0ag1ag2ag3ag4ag5ag6ag7ag8ag9ah.ah#aha#0x", +"ae.ahbahcahd#l3aheahf.zO#33#DQ#vV.v4.xB.xUahg.v3#yI#vV#v0#v0#Ad#v0ahhaeh#Oiahi.N4.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON#34#DTahj#jJahk#39ahl#2ia#B#5qahmahnahmaho#4aahpaeoahqahrahsahtaeraesahu#w0ahvahwahxahyahzabEabwahAahBaeza.EaeGahCabF#4nahDahEahFahGahHabTabTahIahJahKahL#GiahMahNahOahPahQahR#4EabUahS#7Aa.MahTahUahVabWahWahXa.TahYahZah0ah1ah2ah3ah4ah5ah6ah7ah8ah9.MEai..y6QtR.D5.ul.tY.PA.0kai#aia.ffaibafiaicaicafgaidaid#pn#m1#dz#mi#mi#hnaieaifaigaih#ol#oZ#49#uJ#o0#71#uJ#o1#i3#qo#o1#o0#71#o3#qo#46#47aii#47#o1#71#o0#uJ#oZ#qe#r1#qe#pu#44.BTaij#q3#qg#m1#dzaik#m0#oV#aJ#bZ#.t#R7.Izailaimainaioaipaiqair#5k##w#BD#Pu#Fbaisait#BCaiuaiuafz#8jafz#KX#Apaiv#Mr#mm#2oaiwaixaiyaizaiAaiBaiCaiDaiEaiFacIaiGaiHaiI#5zaiJ#VB#Vz#ylaiKaiLaiMa#Q#8I#yy#yz#yA.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON#v6#Ch#v6#yB.XQafQ#5G#Ck#v0aiN#v0#OfaiOaiPaiQaiRaiSaiTaiUaiVaiWaiX#W#aiYac3#GoaiZai0ai1ai2ai3ai4ai5ai6ai7ai8ai9aj.aj#ajaajbajcajdaje#W##Qu#Go#25ajfajgajhajiajjajkajlajmajnajoajpajqajrajsajtajuajvajwajxajyajzajAajBajCajDajEajFajG#GL#GLajHajIajJajKajLajMajNajOajPajQajRajSajTajUajVajWajXajYajZaj0aj1aj2aj3ad8#Rb", +"aj4aj5aj6aj7aj8aj9ak.#J1#SWak#.Ey.Di#FP.BQ#FR.BQ#DO#vV#yH#yH#vZ#v0ahhaka#Oi.UB.N4.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON#2B#Oj#Cf#huakbakcakdakeakf#2kakgakh#5qakiakjakkaklakmahsaknaepakoakpaesakqaewabuakraksabBabwabBaktahBakuakvakwakxakya.C#4takzakA#1i#1k#1kakBakCakDaeS#4BakEahQakDakFakFakEahRakG#7CakHakIakJakKa.OakLa.PakM#4KabYakNakOakPakQakRakSakTakUae7akVakWakX.sYakYakZQtA.R1QtRakZ.xcQtR#oAak0ak1#tFaffaicak2ak3afgafi#oY#qe#n0#dz#cl#ls#ob#oTak4#u5ak5#rT#pn#qe#rT#rt#nS#om#qhak6#qk.Iy#pM#qi#r4a#c.WY#48#csafk#pv#pO#pv#uJ#om#qb#pn#oW#sdafkaij#Yx#ql#oY#n5#m0#oc#mc#qg#ee#bX#b3#qrak7ak8#4T#5dak9#O8al.#8f##w#ja#Md#Puafv#Md#xQal#alaafz#8jafzalb#8valc#8v#8xaldaleaizalfaiBalgalealhalialjacCalk#Vy#Y6#Suallalm#2u#Y9alnaloalpalqa#Q#8I#yy#yz#yA.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON#v6#Ch.N4#yB.XQafQ#5G#Ck#v0#2Dalr#OfalsaltalualvalwalxalyalzalA#QualBaiYalCalDalEalFalGalHalIalJalKalLalMalNalOalPalQalRalSalTalUalValW#VX#89#mYalXalYalZal0al1al2al3al4al5al6al7al8al9am.am#amaambamcamdameamfamgamhamiamjamkaml#WF#GL#GLammamm#zF#Dgamn#DhamoamoampamqamramsamtamuamvamwamxamyamzamAamBamCamDamE#Rb", +"amFamGamHamIamJamKamLamM.v1#vU#MQ.Fe.BV.DfamN.BQ#DO#yH.xU#vZ#vZ.xUamOamP#Oi.UB.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ONamQ#Hh#MPamR#ovamSamTamU#8pamVamWabjamXakjakjakiamYamZam0am1aepam2am3am4am5aewakpam6aeyam7am8#RPaktam9an.#7pakva.D#4san##ROanaanbanc#XV#1kakCandaneanfangahQ#GianhanianjahKankank#7C#1rakI#7C#7z#7AanlanmannanoanpanqanrakPansantanuanvanwanxanyanzanA.zO.u.anAanBanC.SVak1#oA#oAQtHQtH.SVanDanEanFanGanHanIanE#kQ#tbanJ#oR#mi#mbanKanLanLanM#tk#sd#rT#m1#n5#n0#rU#rV#qeanN#hx#m.#spa#c#ne#46#44anO#1U#44#rB#qi#qi#qi#pt#pn#qb#oW#oW#ol#rB#1U#cs#pv#qe#oV#qZ#qZ#df#lc#b3#b0#pyanPafs#5danQanR#LHanS#BC##uafua#vaita#v#FbanTanUanVafz#8janWanX#OtanYanZan0an1an2an0alian3an4an5an6an7#Xlan8#My#MA#8A#Myan9#Sv#Sw#Fyao.ao#aoaalq#yB#5F#Hh#yA#yA.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON#v6#Ch.N4#yB.XQafQ#5G#Ck#v0#v0#KK#Rjaobaocaodaoeaofaogaohaoia#ZaojaokaolaomaonaooaopaoqaoraosaotaouaovaowaoxaoyaozaoAaoBaoCaoDaoEaoFaoG#zb#54aagaoHaoIaoJaoKaoLaoMaoNaoOaoPaoQaoRaoSaoTaoUaoVaoWaoXaoYaoZao0ao1ao2ao3ao4ao5ao6ao7ao8#zFao9#zG#zG#zF#Dg#Dh#Dh#Dh#GL#zFao9ap.ap.#zG#Dhap#apaapbapcap.apdape#Aeapfapg#Rb", +"amFamGamHaphapiapjapk.luamN#DQ#vV#yH#97aplapm#A##DO#v1.xU#vZ#vZ#yH#DRapn#Oi.UB.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ONapo.UC#yz#PVappapq#K1aprapsaptapuapvaenakiapwakjapxapyakoapzapAapBapCapDapEapFakqaeAapGapHapIapJaeFa.Eakw#7p#05apKapLapMapNapOapPakCapQapRapSakFakDapTahKapUapVapWapXapYahKapZap0ap1ap2ap3#1rap4#X6ap5ap6ap7ap8ap9aq.aq#aqaaqbaqcaqdaqeaqfaqgaqhaqiaqjaqkaqlaqmaqnaqo.y6ak1#p..y6.NVakZ#oA.ffaqpaicaqqaqqanHaqr#hzaqs#hz#rX#rX#sganLaqtaquaquaqv.WN#u5#skaqw#qdaqx#iT#rUaqy#tgaqz.xVaqA.nG.8.#pQQtJ.PD#1Uaii#ql#qi#o3#pu#rT#qf#oW#rt#oY#rt#ql#44#47#uJ#qf#oV#r0aqBaqCaqD#rQ#oJaqEaqF#7P#8#anRaqGaqHaqIa#wafuaqJ#Md#Puafvacu#R3afzaqK#5nanX#A5aqLaqMaiEaqNaqOaqPaqQ#Hs#Ot#Y0#Ar#PDaivaqRaqS#Mz#PJ#Su#PG#MwaqTaqUaqVaqWaqXaqYaqZ#yy#5F#yy#yA#yA.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON#v6#Ch.N4#yB.XQafQ#5G#Ck#v0#v0aq0aq1aq2aq3aq4aq5aq6aq7aq8aq9aiW#Gl#J0ar.ar#araarbarcardarearfargarhariarjarkarlarmarnaroarparqarrarsartaruarv#zdarwarxaryarzarAarBarCarDarEarFarGarHarIarJarKarLarMarNarOarParQarRarSarTarUarVarWarXarYarZar0ajH#zFarYar1ar2ar3ar3ar4aaIar5ar6ar7ar8ar9as.as#asa#GLasbasc.waasdahh#Rb", +"ae.#DHaseasfasgashasiasj.Dg#0I#yH#Og.xU.Ey.xD#PX#Hf.xU#yG.xU#vZ#v0#DRaskasl#v4.UC.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ONa..asm#Okasnasoaspasq#Hjasrassastasuasvaswasxasya.maszam4am4asAasBasBapzahuasCasDaeFasEapGa.E#XF#4pasFasG#06ahDasHakCapLahPasIa.JaniasJakBapSasKasLasLanhapXakFapWasMasNahQap3asOasPasQasRasSae3asTasUasVasWasXasYasZas0as1as2as3as4as5as6as7as8as9at.at#ataatbatcatd.tl.SV.0Z.0Z.SV.ff#oA.D5.D5.R0ateatfak3atgathati#obanLanL#oTaqtatjatkatkatl#oTatmatnatoatp#maatpaqwatqatrats.Im.tm.hn.hn.vX.tr.#lQt6#cs#r4#pv#qi#pO#qg#qf#pn#om#rt#oY#rt#pOafk#qk#rt#ru#oV#rZattatuatvatwatxaty#5dafsanQ#7OatzatA#IK#g9afua#vatB#FbatC#YH#8j#5natD#w2atEatFatGatHatIatJatK#Uc#DZ#Hp#2o#8v#DZ#D0a#D#Y3atL#Mv#Mv#MwatMatNatOatPatQatPatRatSatT#VJ#yy#Cg#yA.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON#Ch#FL.N4.UCatUafQ#5GatV.xU#yG#v0atWatXatYatZat0at1at2at3at4at5agnat6#m6at7at8at9au.au#auaaubaucaudaueaufaugauhauiaujaukaulaumaunauoaupauqauradlausautauuauvauwauxaf6auyauzauAauBauCauDauEauFauGauHauIauJauKauLauMauNauOauPauQauRauSauTauUauVauWauXauYauZau0au1au2au3au4au5au6au7au8au9av.av#avaavbavcavdaveavf#Afavg", +"avhaviavjavkavlavm#KSavn#MQ.xU#Og.xU.xU#Og#Ab#vV.xU#yG.xU#v0#vZ.xU#DRaskavo#Ai.N4.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON#34#v5#MOavp#KX#8xavqavrastastastasr#23asyakkavsavtaszakoam3am2am3avuaesaeuavvavwa.xavxavyavyasGakvakxavzakwavAavBavCavDapXahLapWasMavEaeVavEasKavFasLasKapR#XVapYanhahJapTavGavHavIannavJavKasSavLavLavMavNae2avOavPavQat#avRavSaqcavTas2avUavVavWavVavXavYavYavZafhav0#tnav1.R1.0Z.ff.ff.y6.Vu.0kakY.OFQtK.hm.u1av2av3av4atkatjaqt#uGav5av6av7av7av4av8.WNaqy#maanL#sgatpaqwav9aw.atpaw#.WN.yr.vZ.tr.zg.WY#47#qm#pM#uJ#oZ#qb#ru#oY#om#rt#oY#oY#49#qo#qi#qb#ru#rpawaatvawbawcawdawe#7Pafs#1Fawfawgawhawi#Md##w#g9#Sha#w#YfawjawkawlawmawnawoawpatIawqaklabgawr#Fn#Mr#Y0#Ot#Rq#Aoaws#kXawtawu#Mu#Vw#VxatNatPatOawvawwawxawyawz#61apo#Hh#MP#yA.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON#v6#Ch.N4#yBatUafQ#5G#Ck#Ck.xU#vZafTawAawBawCawDawEawFawGawHawIadkawJawKawLawMawNawOawPawQawRawSawTawUawVawWawXawYawZaw0aw1aw2aw3aw4aw5aw6aw7aw8aw9ax.ax#axaaxbaxcaxdaxeaxfaxgaxhaxiaxjaxkaxlaxmaxnaxoaxpaxqaxraxsaxtaxuaxvaxwaxxaxyaxzaxAaxBaxCaxDaxEaxFaxGaxHaxIaxJaxKaxLaxMaxNaxOaxPaxQaxRaxSag7axTaxUaveaxVapgad9", +"axWaj5axXaxY#vSaxZax0ax1#v0#KK.xU.xU#v0.xU#v0#yH#yH.xU#v0#Ad#vZ#v0#DRax2ax3#v4.N4.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ONa..asm#yD#eUax4#Ucax5ax6avrasrasuasuavrax7ax8a.max9amZaerapEam5avvaetaeuaetam5ay.ay##7pakwan.aktabCam9aeFayaavzaybapWaeKayc.w1akEapTakFavCasLapVasNanjapYaeMaydaeVapXahNaePayeayfap0avIayfaygayhayiasUavLayjaykaylaymavQaynavZayoaypas3ayqayrat#aysatbaytavZayuayvaywanH.xIacj.YMayx#tn.hi.8#ak1.R0.OFayy.u#ayz.l1.ssQt6.xV.WNatpatjayAav7ayBayCayBayCav6aw#aifayD#uGatkatjanLaieanMaqyaw.av8ayE.AU.hn.wd#q3#46#rB#pO#sd#rT#n0#dz#qb#rT#qg#om#qe#qf#71ayF#oZ#n5#qfayGayHayHayIayJ#1DayKayLayMayNayOayP#xPayQ#ja#IM#Fb#PuayR#xPaySayTayUayVayWayXayYahn#x4ayZay0ay1ay2#Xc#DZaczacz#DZa#Day3#k1#lKay4#PHay5atNay6atNay7ay8ay9az.a..az##yy#yz#yA.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON#v6.N4azaazbafQ#2C#Ck#v0.xU.xU#vVazcazdazeazfazgazhaziazjazkazlazmaznazoazpazqazrazsaztazuazvazwazxazyazzazAazBazCazDazEazFazGazHazIazJazK#ZtazLazMazNazOazPazQazRazSazTazUazVazWazX#GGazYazZaz0az1az2az3az4az5az6az7az8az9aA.aA#aAaaAbaAcaAdaAeaAfaAgaAhaAiaAjaAkaAlaAmaAnaAoaApaAqaAraAsaAtaAuaAvaAwaAxaAyaAzaAA", +"axWaj5aABaACaADaAE#v1#yH#KRaAF.xU.xU#yG#Ab#Ab#vV.xU#yG#6Z#v0#vZ#v0#KTaskax3#v4.UC.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ONa..asm#yD#eUaAGaAHaAIaAJaspaAKastaALaAMapxahpahpaANaAOaer#AVaAPaAQ#w0am3am4aARaASaATakwavzavzahza.uaeGaAUaAVaAWaeSaAXaAYayeaAZahMaeRaA0ahKaAXaycanhaniapYaA1aA2aA3asJaeRahMangaA4aA5ap0anoaA6aykaA7aA8asUayjaA9ah2aB.aB#aBaayoaBbaBcavXaBdaBeaBfayuaBgaytavVaBhaBiaBjaBkaBlaBlaBmaBnaBoaBpanFanIafgatfaBqav1.xc.lSaBraBs#6YaBt.xEQtz.xV.BEaif#oTayAaBuayCaBv#oTav8#maaBwav6ayA#uGanLaqwaw.aqyaw.ayE.Dq#oZ#uJ#qo#r4#pM#qg#pn#oR#r0#mc#qe#qg#om#qe#n0#m1#pM#pv#sh#oRaBxaByayGaBzaBAaBBaBCaBDaBEaBFaBG#ILaBHaBI#8g#Si##u#YHatAaBJayTaBKaBLaBMaBNakgaBOaBPaBQaBRay1aBSaBSaBT#lH#8v#Ap#8v#HoaBUaBVay4aBVaBWaBXaBYaBZaB0aB1ay8aB2aB3#61aB4#yy#yz#yA.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON#Ch.N4#T6azb#FM#2C#DP#0I#yI.xU#MQaB5aB6aB7aB8aB9aC.aC#aCaaCbaCcaCdaCeaCfaCgaChaCiaCjaCkaClaCmaCnaCoaCpaCqaCraCsaCtaCuaCvaCwaCxaCyaCzaCAaCBaCCaCDaCEaCFaCGaCHaCIaCJaCKaCLaCMaCNaCOaCPaCQaCRaCSaCTaCUaCVaCWaCXaCYaCZaC0aC1aC2aC3aC4aC5aC6aC7aC8aC9aD.aD#aDaaDbaDcaDdaDeaDfaDgaDhaDiaDjaDkaDlaDmaDnaDoaDpaDqaDr#v1aDs", +"aDtaj4axXaDuaDvaDwaDx.BJ#yH#yH.xU#yG#MQ#yI#Jpasj#FO#MQ#Ck.xU#vZ#v0#DRaDyax3#v4.N4.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ONa..#0JahjasnaAGaDzaDAaDBavraCCaDCaAL#5vaDDakkasyahpam0am5#w0aDEapF#AVaDFam5aDEaDGaDHaDIaDJapHabCaDKaDLaDMaDNaDO#4IaDPap1#XWaDP#4BaeSaDQap1aDRaDSakEasKapSavCaeUancancaneahKaDTaDUaDVaDWaDXaDYaDZaD0aD1asVaD2aA9aymaD3ae1akQaD4aD5aD6aD7aqjavYaD8ayraD9aE.aE#aEaaEbaEcaEdaEeaEfaEgaEhaEiaEjaEkaElaEmaEnaEoaEkaBmaqw.WN.yr.ttaEp.v1#Jq#SI.cS.ttQty.hn.uC.XVaEqav8aEraEr#oTaEsaEtayAanLaw#ayDaqyaw.av8aEuaEu#rt#o3#rB#pv#ol#qb#n0#oc#Pq#dz#rT#om#qe#ru#oV#pn#pv#oZ#n5atwaEvaEwawcaExaEya#n#7P#8aaEzaEzaEAaEB#IcaECaEDaEEauraEFaEGaEHaEIaEJaEKaELaBOaEMaEMaENaEOaEPaEQaERaESaET#Mr#lH#Hp#wd#mo#VvaEU#lK#moaEU#PH#Su#PI#Mz#5xay9alq#2Bapo#CfaEVaEW.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON#FL.N4#Oj#JoafQaEXaEYaEZ.ExaE0aE1aE2aE3aE4aE5aE6aE7aE8aE9aF.aF#aFaaFbaFcaFdaFeaFfaFgaFhaFiaFjaFkaFlaFmaFnaFoaFpaFqaFraFsaFtaFuaFvaFwaFxaFyaFzaFAaFBaFCaFDaFEazLaFFaFGaFHaFIaFJaFKaFLaFMaFNaFOaFPaFQaFRaFSaFTaFUaFVaFWaFXaFYaFZaF0aF1aF2aF3aF4aF5aF6aF7aF8aF9aG.aG#aGaaGbaGcaGdaGeaGfaGgaGhaGiaGjaGkaGlaGmaGn#AfaGo", +"aGpaGqaGraGsaGtaGuaGvaGw#DO#v1#Og.Ey#vW#30.draGx#Aa#MQ#Ae#vZ#vZ.xU#RkaGyax3#v4.N4.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ONa..#Oj#OkaGzaGAaGB#XhaGCaALaGDasuaGEaAKaDDamYa.mavtaGFahuaew#EtaDGam5aGGaGHaGIaGJaGKaGL#H4aGMaGNaGOaGPakJaGQaGRaGRap1aGSaGTaGUaGVasRaGWavGahKaeSanfakDaGXabTavCavFaGXakCapWaGYaGZaG0#1vaG1aG2aG3aG1aG4aD2aD2ae2aG5aG6aG7aG8aG9aH.anxaH#aHaaHbaHcaHdaHeaHfaHgaHhaHiaBhaBhas9avWaHjaHkaHlaHmaHnaHoaHpaHqaHqaHraHsayBaEtav6#uGav8.Dq.ii.r4aBs#zdaEp.xE.tm.hn.uC.BE.xw.tH.tH.BGaqtatjaqtatpav8aw.av8aHtav8#sn#oW#71#ql#o1#49#oW#qf#oR#Pq#Pq#ru#oY#oW#ru#oV#mc#oZ#o0#m1#sbaHuaByaExaBxaHv#YdayLa#oaBFa#taHwaHxaHyaHzal.#5jaHA#QhaHBaHCaHDaqKaHEaHFaHGaBOaHH#FlaHIaHJaEPaHKaHKaHL#mm#mm#AraHMaHN#PG#lK#Vu#Vu#lK#Vw#MzaHOaHP#5xaHQaiM.N4#Aj#DT.UCaEW.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON#v6#Ch.N4.UC#JoafQ.uSaHRaHSaHT.odaHUaHVafoaHWaHXaHYaHZaH0aH1aH2aH3aH4aH5aH6aH7aH8aH9aI.aI#aIaaIbaIcaIdaIeaIfaIgaIhaIiaIjaIkaIlaImaInaIoaIpaIqaIraIsaItaIuaIvaIwaIxaIyaIzaIAaIBaICaIDaIEaIFaIGaIHaIIaIJaIKaILaIMaINaIOaIPaIQaIRaISaITaIUaIVaIWaIXaIYaIZaI0aI1aI2aI3aI4aI5aI6aI7aI8aI9aJ.aJ#aJaaJbaJcaJdaJeaJfaJgaJh#9W", +"aJiaa6aJjaJkaJlaJmaJn.vY.we.Ey#yH#97.tJaJo.sBahg.xU#yH.xU#v0#vZ#v0#Rkax2ax3#v4.N4.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON#JnaJpaJqaJr#HjaJsasraJtaALaJuaJuassaJva.maANaJwaJxaDGaJyaJzaDGaetasCaJA#AYaJB#wV#Lw#OX#RRaJCaGMaJDaJEaJFaJGaJHaJIavIannahKaJJaJKap2aJLapUaJLaJMaAZanfandapQapXayeapTaA1aJNaGYaJOaJPaJQap8aJRaJSaJTaJUayhaJVaA9akQakQaG3aJWaJXaJYaBgaJZaJ0aJ1aJ2aJ3aJ4aJ5aJ6aJ7aBaayuat#avXaJ8aJ9aK.aK.aK#aKaaKbafhaKcaKdaHsaHqaKeayBaBvaBvaBvaBu#uGaqy.uHQtz.l0#6YaKf.lS.tn.vZ.uC.Fp.vZ.vZ.BDaEqayDayDayDaqwayDayDaKg#sk#pn#rt#pM#o1#o0#oY#pn#qf#m0aKh#mc#qb#qe#ru#dz#m0#n0#o0#scatvaExaBxaBxaKiaHvaweafs#4T#4TaHwaKjaKk#RZ#YaaKlaHwaHw#R1aKmaKn#2faKoaKpaKpaHFaKqaBOaHHaKraKsaKtaESaKuaKv#BR#FnaKw#x8aKx#k1#k1#k1aKyaKy#Vu#PGaKzaKAaKBaKCaKD.UC#Hh#yyaKEaKE.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON#v6#Ch.N4a..#Oj#PUaKF#2DaKGaKHaKIaKJaKKaKLaKfaKMaKNaKOaKPaKQaKRaKSaKTaKUaKVaKWaKXaKYaKZaK0aK1aK2aK3aK4aK5aK6aK7aK8aK9aL.aL#aLaaLbaLcaLdaLeaLfaLgaLhaLiaLjaLkaLlaLmaLnaLoaLpaLqaLraLsaLtaLuaLvaLwaLxaLyaLzaLAaLBaLCaLDaLEaLFaLGaLHaLIaLJaLKaLLaLMaLNaLOaLPaLQaLRaLSaLTaLUaLVaLWaLXaLYaLZaL0aL1aL2aL3aL4aL5aL6aL7aL8aL9", +"aM.aa7aM#aMaaMbaMc.r4aMd.uT#vV#v1.BKaMe.xyaMf#DP#yH.xU.xU.xU#vZ#6ZaMgaMhax3#v4.N4.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON#JnaJpaJq#kuaMiaMjaMkaJuaMlaMmaMnaMoaMpaMqaJxaMraMs#wYaGHaew#w0aMtaJz#wYaMuaewaGGaMvapHaktaAUapGaMwaMxap2aMyasRannaA5aJIaGRaMzaMAaMBaMCap2aMDaME.EOaJLahJakFahKaMCaycahLaMFaMGaMHaMIaMJaJQaMKaMLaMMaMNaMOavKaMPaMQanraMRaMSaMTaMUaMVaMWaMXaMYaMZaM0aM1aM2aMUaM3aM4aM5aM6ayrayraM7aM8aM9aN.aN#aNaaNbaNcaffanFaNdaNeayBaBvaBvaBvayBaNfayCav7aqtaEq.yr.tkaNgaKf.lt.tm.AU.AU.uP.vZ.uXaifaEr.WNaifayDanMayDaEu#qe#oY#71#pv#pu#rt#qe#qe#n5aNh#V.#oR#qb#m1#mi#mc#mc#rt#rRaNia#laNjatu#79#7LaNkaBD#4TaNlaNm#O8aNnaNoaNp#LE#R2aNqaNraNsaNtaNu#MjaKpaNv#BP#x4aNwaKqaNxaNyaNzaNAaERaNBaNCaNDaNE#x7aNF#lK#Vu#Mu#k1aNG#k1#Mv#I8#Mw.HLaNHaz..UC#Hh#yy#yxaKE.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON#v6#FL#yBa...XQ#PUaKF#2DakaaNIaNJaHUaE2.v2aNKasuaNLaNMaNNaNOaNPaNQ#XlaNRaaeaNSaNTaNUaNVaNWaNXaNYaNZaN0aN0aN1aN2#26#W.aN3#JXaN4aN5aN6aN7aN8aN9aO.aO#aOaaObaOcaOdaOeaOfaOgaOhaOiaOjaOkaOlaOmaOnaOoaOpaOqaOraOsaOtaOuaOvaOwaOxaOyaOzaOAaOBaOCaODaOEaOFaOGaOHaOIaOJaOKaOLaOMaONaOOaOPaOQaORaOSaOTaOUaOVaOWaOXaOYaOZamEaO0", +"aO1aO2aO3aO4aO5aO6aO7aO8.uT#Ab#vU#Jp.sxaO9#yH#yH.xU#yG.xU#v0#vZ#v0aP.ax2aP##Ai.N4.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON#61#OjaPa#jGaPbaPcatKaPdaPeaPfaPgaPhaMmaPiaPjaPkaPlaGHaAQaeuaPmaPnapFaDEavuam3#w0aPoaPpaPqasFaPraPsapUaAYa.PaPtaAZasRaMAap1aPuaA4aJKaA4aJFaJLahJaeRapUakDasMaAXaPvaycaJLaPwaPxaPyaPzaPAaPBaPCaG2aMMaMIaPDaPEaPFaPGaPHaPIaPJaPKaPLaPMaPNaPOaPPaPQaPRaPSaPTaPUaPVaMWaPWaM5aPXaPYaPZaP0aP1aP2aP3aP4aqpateaP5afdateaP6#maatkaP7av5aBwaBuaBvaP8ayBaEtatkaP9.Dq.z5.tk.sBQt6.uP.hm.ts#pz.XVaEr.XV.zv.XVaEqaQ..Dk#oY#qe#pt#pO#pu#ol#oW#oW#qf#oc#Sc#oc#n0#n5#oV#mi#oV#ru#uoawbayIaBAawbayGaQ#aQaaBDaQbaQcaQd#R0a.1aQeaiq#R0aKjaEAaQfaQgaQhaQiaQjaQkaQlaQmaQm#x4aKqaQnaQoaNyaHJaQpaQqaQraQsay2#x7#PE#VwaHNaQtaQuaQt#VvaQvaQw#PIaQxaQyaQz#2BamQaQA#FK#Ce.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON#v6#Ch.N4#yBatUafQaQBaq0aHSaNIaNJaQCaQDaQEaQFaQGaQHaQIaQJaQKaQLaQMaQNaQOaQPaQQaQR#MSaQSaQT#hsaQUaQG#VXaQVaQW#ZsaQXaQYaQWaQZaQ0aQ1aQ2aQ3aHyaQ4aQ5aQ6aQ7aQ8af4aQ9aQ9aR.aR#aRaaRbaRcaRdaReaRfaRgaRhaRiaRjaRkaRlaRmaRnaRoaRpaRqaRraRsaRtaRuaRvaRwaRxaRyaRzaRAaRBaRCaRDaREaRFaRGaRHaRIaRJaRKaRLaRMaRNaROaRPaRQaRRaRSaL8aRT", +"aRU#DHaRVaRWaRXaRYaRZaR0#Ac#v1#DQ.tJ#Aa#yH#v1.xU.xU.xU#v0#Ad#vZ#vYahhaGyaR1#v4.N4.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ONa..azbaR2aR3aR4aR5#OvaPhaR6aR7aR7aMmaR8aR9aS.aS#aPlaSaaSbaScaSdaSeaSfaSgam0am2aShaSiaPqavzaeFaSjaSkaSlaSmaSn#4HaAZaSoaSpavIaSqaSraSsayfaMD#GiavDaA1apYakDakEaSt#XWangaMCaAXapUaSuaMCaA5aJUaJPaSvaMMaSwaD0aSxaSyaSzaSAaSBaSCaSDaSEaSFaSGaSHaSIaSJaSKaSLaSMaSNaSOaSPaSQaSRaPWaSSayqaSTaSUaP0aSVaSWaSXaSYaSZaS0.S..vx.Py.fCaS1aKg.xIaS2aS3aS4aS5ayAaS6aS7aS8aBjaS9aT..to.eM.A2aT#.zT.Eu#omayE.XV.BE.uBaTaayD#oY#qe#ol#uJ#uJ#pt#rT#oY#qe#miaTbaTcaTdaTeaTdaTfaTgaTh#5#aTiaTjatwaTka#laTl#1Bak9#16aNqayK#RZaKl#UXaTma#naiqaTnaToaTpaTqaQj#MjaHFaTraTsaTsaTtaNwaTuaTv#FlaTwaTxaTyaTzaTAaTBaBT#D0aTC#HlaTDa.caTEaTFaTGaTH#MAaiHaTIaTJ#yA.UCaTK#Jna...ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON#v6#Ch#v6.N4atUaTLaHTaTMakaaTNaKIaHUaTO.v2#oaaagaTP#zbaTQaTRaTSaTTaTUaTVaTWaTXaQGaTYaTZ#Gn#ZHaT0#CS#9.ac1ac3#2Q#J0aT1agn#yQaTYaT2aT3aT4aT5aT6aT7aT8aT9aU.aU##ziaUaaUbaUcaUdaUeaUfaUgaUhaUiaUjaUkaUlaUmaUnaUoaUpaUqaUraUsaUtaUuaUvaUwaUxaUyaUzaUAaUBaUCaUDaUEaUFaUGaUHaUIaUJaUKaULaUMaUNaUOaUPaUQaURaUSaUTaUUaUVaUWaUX", +"ae.aUYaxXaUZaU0aU1aU2aU3#yH.xU.xU#yH#v1.xU.xU.xU#v0#v0#yH#Ad#vZ#Ad#DRaU4aP##v4.UC.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ONazaaU5aU6aU7aU8aU9aV.aV#aVaaVbaVbaVcaVdaVeaVf#UPaS#aVgaMraVhaMsaViaVjaVkam5aepaVlaVmaAUaVnaVoaVpaVqahVahV#1oakJaVraAZakJaVsaVtaSsaGPaJKaJFap2aAXaneaVuaneaGTaMBaJLaeSaDPaJMaVvaycahMaVwaVxaMNaJTaJTaSwaVyaVzaJQaJRaVAaVBaVCaVDaVEaVFaVGaVHaVIaVJaVKaVLaVMaVNaVOaVPaVQaVRaVSaVTaVUaVVaVWaVXaVYaVZaV0aV1aV2any#1L.MEaV3.l3aV4#lMateaV5atmaV6aV7aV8aV9aW.aW#aWaaWbaWcaWdQtI.D7aWeaWf.ff#pMaWg.XV.uX.xw.BCaw.#pn#oW#rt#49#pu#qh#om#oY#oWaWhaWiaWjaWkaWlaWmaWnaWoaWp#YraWqaWraWsayGaBAaWtaWuaWv#5d#O9aWwaWxaWy#O9aiq#LF#LHaWzaWAaWBaWCaQj#MjaWDaTraWEaTsaTtaNwaKqaHHaENaWFaWGaWHaWIaWJaWJaWK#mm#RqaGB#8u#2oapqaWLaWMaWNaWOaWPaWQaQzaJqaWRaQAaWS#61.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON#v6#FL#v6.ON#yCaWTaWUaTM#60aWVaWWaWXaWY#ofaQF#ZI#NdaWZaW0aW1aW2aW3aW4aW5aW6#mXaW7aw8aW8aag#Goaoj#Q##CR#zi#zi#QkaW9a#1#ZraX.aX#aXa#ZGaXbaXcaXdaXeaXfaXgaXhaXiaXjaXkaXlaXmaXnaXoaXpaXqaXraXsaXtaXuaXvaXwaXxaXyaXzaXAaXBaXCaXDaXEaXFaXGaXHaXIaXJaXKaXLaXMaXNaXOaXPaXQaXRaXSaXTaXUaXVaXWaXXaXYaXZaX0aX1aX2aX3aX4aX5#AfaxZ", +"aj4aRUaX6aUZaX7aDw#yGaX8#Hf.xU#yG#yG#yG#yG#v0#v0#yH#yH#yH#Ad#vZ#Ad#AfaX9aP##Ai.N4.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ONa..aY.aY#aYaaYbaYcaYdaPhaYeaYfaYgaVbaYhaYiaYjatIaYkaYlaMraYmaYnaYnaeuaAPaerapzaYoaYpaDJaVnaYqaYra.P.s2aYsabV#7AaMCaJJaA4aYtayfasQaGWaMDannaJHannaycavFasManfayeaeSakEaSpaGUaDLaMCakEaDPavIaYuaYvaYwaD0aYxaYyaJQaMKaYzaYAaYBaYCaYDaYEaYFaYGaYHaYIaYJaYKaYLaYMaYNaYJaYOaYPaYQaYRaYSaYTaYUaYVaYWaYXaYYaYZaY0aY1#t#aY2aY3.k7.dVaY4aY5aY6aY7aY8aY9aZ.aZ#aZaaZbaZcaZdaZeaZfaZgaZhaZi.y5aZj#47aZk.uX.BE.xw.xw.WN#tg#qe#om#49#pu#49#rt#oW#oY#42aTdaTbaTbaZlaZmaZnaZo#Yk#43#p7a#laWsayIaBAaZpaHvaZq#Ye#O7aZraZs#7OaZtaZuaZvaEAaZwaZxaZy#x3aZzaQjaNuaZAaZBaWEaQm#x4aNwaBO#FlaZCaWGaZDaTzaWJaZEaZFaBTacz#wb#Ap#wbaZGaTHaZHaZIaZJaZKaZLaZMaZN#yz#yy#8IatT.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON#v6#Ch#v6.N4aZOaWTaWUaTMaKGaWVaKIaZPaZQahfaZR#88#mYaQGaShaZSaZTaZUaZVaZWaZXaZYaZZaZ0#IcaezaojaZ1#J0aah#VMac1#Qk#7TaZ2aZ3aZ4aZ5aZ6aZ7aZ8aZ9a0.a0#a0aa0ba0ca0d#VMaT2a0ea0fa0ga0ha0ia0ja0ka0la0ma0na0oa0pa0qa0ra0sa0ta0ua0va0wa0xa0ya0za0Aa0Ba0Ca0Da0Ea0Fa0Ga0Ha0Ia0Ja0Ka0La0Ma0Na0Oa0Pa0Qa0Ra0Sa0Ta0Ua0Va0Wa0Xa0Ya0Z#KK", +"axWaj5amHa00a01a02a03.we.Ex#DQ#v0#yG.xU#v0#yH#yH#yH#yH#Ad#vZ#vZ#vY#vVa04aP##v4.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON#34#DTa05#n2a06a07a08a09a1.a1#a1aa1ba1ca1da1daVfaViahpaSbaYlaJxayXaGFaeraepa1eaVlaeB#OUapH#OUabDanga1f#1tahSa1gaAZaGPavIaJIaJGaGWa1haA4aVwap0asQanfaePahQakEahKapUahMaDPaJJaGTa1iaJMa1j#4Da1kap8aG0a1la1mahTa1na1oa1pa1qa1ra1sa1ta1ua1va1wa1xa1ya1za1Aa1Ba1Ca1Da1Ea1Fa1Ga1Ha1Ia1Ja1Ka1La1Ma1Na1Oa1Pa1Qa1Ra1SaEma1Ta1Ua1Va1Wa1Xa1Ya1Za10a11a12a13a14a15a16a17a18a19a2.a2#aZfa2aa2b.57.x..ti.xw.BE.Dq.uC#tl#tk#oW#om#49#pu#71#qg#qe#oWa2caWnaWkaTba2daWka2eaZo#Yra2fa2gaTkaBzaTjayGa2haQ##1Ea2ia2ja2kaHBa2la2manRa2n#5fa2oa2pa2qa2raQha2saWDaHEa2ta2uaTsaTsaTtaKqaHHaEMa2va2wa2xa2ya2za2AaTB#DZ#Rq#Rraiwa#Ga2Ba2Ca2Da2Ea2Fa2GaJr#yA.UC#yy#8IatT.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON#Ch#Ch#v6.UCa2HaWTaWUaTM#60aWVaWWaZPaE2a2Ia2Ja2K#88ac4a2La2Ma2Na2Oa2Pa2Qa2Ra2Sa2Ta2Uaoka2Va2Wa2Xa2Ya2Za2Ya20a21a22a23a24a25a26a27a28a29a3.a3#a3aa3ba3ca3d#VM#Gna3ea3fa3ga3ha3ia3ja3ka3la3ma3na3oa3pa3qa3ra3sa3ta3ua3va3wa3xa3ya3za3Aa3Ba3Ca3Da3Ea3Fa3Ga3Ha3Ia3Ja3Ka3La3Ma3Na3Oa3Pa3Qa3Ra3Sa3Ta3Ua3Va3Wa3Xa3Ya3Za30#KR", +"aj4a31a32a33.NUa34#6Y.xya35aO9#v1.xU.xU#v0#yH#yH#yH#yH#Ad#Ad#vZ#Ad#RkaX9aP##v4.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON#34#DTaU6a36a37a38a39a4.a4#a4aa4ba1ca1ca4ca4da4eaANaeoaSbaJxaeoa4fa4gasAasAa4hapBa.vahAayaapHaeya4ia4j.s3a4ka4kaSoakJaSsa4laJHaVwap1aMAaJFaJI.w1anhahMaAYaeSakEahLahMaDSa4ma4naAYaGV#XWa4oa4paMJaMJaMIa4qa1na4raYwa4sa4ta4ua4va4wa4xa4ya4za4Aa4Ba4Ca4Da4Ea4Fa4Ga4Ha4Ia4Ja4Ka4La4Ma4Na4Oa4Pa4Qa4Ra4Sa4Ta4Ua4Va4Wa4Xa4Ya4Za40aPQa41a42a43a44a45a46a47a48a49a5.a5#a5aa5ba5ca5da5ea5fa5ga5h.cR.uP.uXa5i.uC#q1#qh#ol#oZ#71#uJ#o0#qg#pna2c#oWaThaTdaWka2da5jaWlaWo#7Za5ka5la5ma5na5oatuaTla5pa5qa2i#Ye#UXa5r#RZaKka5sa5ta5ta5ua5va5wa2ra5xa2saNuaKoa5ya5zaWEaQla5AaHHa5Ba5Ca5Da5Ea5Fa2Aa5Ga5GaTA#K0an6acAan5#Oua5Ha5Ia5Ja5Ka2Fa5LaTJaJq.UC#yyatT#8I.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON#v6#FL#v6.N4azba5MaWUaTMakaaWVaWWaZPa5Na5OaNg#2Q#VM#GoagnaQ0a5Pa5Qa5Ra5Sa5Ta5Ua5Va5Wa5Xa5Ya5Zar.#CRaoi#W##W#a50a51a52a53a54a55a56a57a58a59a6.a6#a6a#Ne#VX#ZGac4a6ba6ca6da6ea6fa6ga6ha6ia6ja6ka6la6ma6na6oa6pa6qa6ra6sa6ta6ua6va6wa6xa6ya6za6Aa6Ba6Ca6Da6Ea6Fa6Ga6Ha6Ia6Ja6Ka6La6Ma6Na6Oa6Pa6Qa6Ra6Sa6Ta6Ua6Va6Wa30a6X", +"a6Ya6Za60a61a62.#la63.sK.uZ.zW#v1.xU.xU#v0#yH#yH#yH#yHa64#Ri#vZ#Ada65aX9aP##v4.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON#34#yza66a67a68a69aR7a7.a7#aYea7aa7ba7ca7d#w8a7ea7fa7gasyaANa.m#0Sa7hapzasAa1eahrahxahA#OUa7iaVn#4IavGabWa7ja.PaJJasRaJIaSraJGasRaGR#XWaDS.EOahMakDahLaJLaStaGT#GiahKavGa4maPvakEaMAa7ka7la7ma7naSwa7oaJPaPCa7paPCa7qa7ra7sa7ta7ua7va7wa7xa7ya7za7Aa7Ba7Ca7Da7Ea7Fa7Ga7Ha7Ia7Ja7Ka7La7Ma7Na7Oa7Pa7Qa7Ra7Sa7Ta7Ua7Va7Wa7Xa7Ya7Za70a71a72a73a74a75a76a77a78a79a8.a8#a8aa8ba8ca8da8ea8f#tea8g.eM#pz#uD#q7#rJ#71#o0#pu#pu#pu#s7#rt#pn#qb#qea5kaThaWla5ja5jaZma8h#1Qa8ia8jayJatwaTjatwaZpa8k#1Ba#na8laZtaHya2laTma8ma8na8ma8oa8pa8qa8ra8sa8ta8ua8va8wa8xa8ya8za8Aa8BaENaHHaHGa8Ca8Da8Ea8Fa8GaNC#Ho#Uc#Uda8Ha8Ia8Ja8Ka8LaZHa8Ma8Na8OaJq#yz#yyatTatT.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON#Ch#v6.N4a8PaWTaWUaTM#60aWVaWWaZPa5N#MT#oa#iV#mYaf4a8Q#Goa8Ra8Sa8Ta8Ua8Va8Wa8Xa8Ya8Za80a81a82a83a84a85a86a87a88a89a9.a9#a9aa9ba9ca9da9ea9fa6caTYa9g#Gk#88#88a0ca9ha9ia9ja9ka9la9ma9na9oa9pa9qa9ra9sa9ta9ua9va9wa9xa9ya9za9Aa9Ba9Ca9Da9Ea9Fa9Ga9Ha9Ia9Ja9Ka9La9Ma9Na9Oa9Pa9Qa9Ra9Sa9Ta9Ua9Va9Wa9Xa9Ya9Z#Ada90a91a92", +"a93a94a95a96a97.BX.xD.we.Ew#0I.xU#yG.xU#v0#yH#yH#yH#yH#yH#vZ#vZ#Ad#vVa98aR1#v4.UC.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON#JnaQAa66#iz#xfaixaixa99b..b.#a7aa7aa1bb.#aVbb.ab.bb.caswavsaJva1eb.db.eakoapAb.fb.gb.haDJb.ib.jb.kap2ap2aGVb.lasQaMEasRaYtb.mavGaDSaDPaMBaeRaA0anfaeSaGTaPv#XWaycaSpap3aMEb.nb.ob.pb.qb.rb.sb.taDUb.uaYuaPCb.vaMKa7qb.wb.xb.yb.zb.Ab.Bb.Cb.Db.Eb.Fb.Gb.Hb.Ib.Jb.Kb.Lb.Mb.Nb.Ob.Pb.Qb.Rb.Sb.Tb.Ub.Vb.Wb.Xb.Yb.Zb.0b.1b.2b.3b.4b.5b.6b.7b.8b.9b#.b##b#ab#bb#cb#db#eb#fb#gb#hb#ib#j.tM#ru#rt#Yxa5h#pz#rJ#pM#o0#pM#qm#qm#pM#71#rt#pn#qf#42#1RaWoa2ea5ja5ja2daZna8hb#kb#laTkayHaWsayHaWtb#mb#n#1E#7NaweaHz#7OaQfa#r#8db#ob#pb#qb#rb#sb#tb#ub#vb#wb#xb#yb#zb#Ab#B#Fmb#Cahnb#Db#Eb#FaND#x8awr#K0#wb#8w#8x#Aob#GaZGajeb#Hb#Ib#Jb#Kb#Lb#M#yzapo#8IatT.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON#Ch#v6#v6.N4a8Pb#NaWUaTM#60aWVaWWb#Ob#Pb#Qb#Raagaahb#S#VWb#T#Gn#J1b#Ub#Vb#Wb#Xb#Yb#Zb#0#6jb#1b#2b#3b#4b#5b#6b#7b#8b#9ba.ba#baababbacbadbaea24bafb#Ta#1#QkaBs#zdbagbahbaibajbakbalbambanbaobapbaqbarbasbatbaubavbawbaxbaybazbaAbaBbaCbaDbaEbaFbaGbaHbaIbaJbaKbaLbaMbaNbaObaPbaQbaRbaSbaTbaUbaVbaWbaXbaYbaZba0ba1ba2aRT", +"ba3aUYaABba4#W9ba5ba6#97#MQ.xU.xU#Og#yG.xU#v0#yH#yH#yH#Ad#Ad#vZ#Ad#vVba7ba8#v4.N4.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ONa..#yBa66ba9bb.bb#bbaaMma4aa7ca4bb.#bbbb..bbcaJuaspaAMbbdasybbdbbeapCam1am0aDFbbfbbgbbhaAW#RPaAW.YqbbibbjaVwbbkap3.EOap3aJKbbla4maJJ.w1apUahLaeSaMBaStaGTaGTaGTaMBaJFa4lbbkbbmb.oaJOaA7b.rbbnaJOaA7bboaSwaG0aMMaJRbbpbbqbbrbbsbbtbbubbvbbwbbxbbybbzbbAbbBbbCbbDbbEb.LbbFbbGbbHbbIbbJbbKbbLbbMbbNbbObbPbbQbbRbbSbbTbbUbbVbbWbbXbbYbbZbb0bb1bb2bb3bb4bb5bb6bb7bb8bb9bc.bc#bcabcbbccQtI#oZ#oR#oZaij#1U#pO#pu#71#pOayF#46#qk#o0#qg#pn#ru#uAbcdaWoaZna2da5ja2daZma2eaTdbceayGawbaTjawbbcfaZp#4Q#1Dbcgaf3#O7b#qbch#5gaBFbci#O8aHzaiqbcjbckbclbcmaexam2bcnbcob#zbcp#2jamW#5q#2mahmbcq#Ar#8xa8H#Ud#RsacAbcr#Rrbcsbcta#FaTGa8KbcubcvaZMaEW.N4#yy#8I.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON#v6#v6#v6.N4.XQb#NbcwaTM#60aWVbcxbcybczbcAbcBa9g#WhbcCbcDbcEbcFbcGbcHbcIbcJbcKbcLbcMbcNbcObcPbcQbcRbcSbcTbcUbcVbcWbcXbcYbcZbc0bc1bc2bc3bc4bc5bc6bc7.sEbc8bc9bd.bd#bdabdbbdcbddbdebdfbdgbdhbdibdjbdkbdlbdmbdnbdobdpbdqbdrbdsbdtbdubdvbdwbdxbdybdzbdAbdBbdCbdDbdEbdFbdGbdHbdIbdJbdKbdLbdMbdNbdObdPbdQbdRbdSa3YbdTbdU#KK", +"aa6bdVaRVbdWbdXbdY#yJ.xU.xU#v0#v0#v0.xU#yG.xU#v0#v0#v0#yH#Ad#vZ#Ad#RkafRaR1#v4.N4.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ONbdZ#MPaU6bd0bd1afBan4aPgbbbbd2bd3a7abd4aVaaJubd5aDAbd6akjamYamYbd7b.eapAakoam4bd8bd9.vbaVobe.be#beaaJJaGVb.maJJ.EOaDPaGPaGPap1ap2#XWaA0#GiaeSahKahKanfahKahQahLaAYap1aYtbebbecbedbeebefbegaMNbehbeibejbekaYvb.vbelaMKbembenbeobepbeqberbesbetbeubevbewbexbeybezbeAbeBbeCbeDbeEbeFbeGbeHbeIbeJbeKbeLbeMbeNbeObePbeQbeRbeSbeTbeUbeVbeWbeXbeYbeZbe0be1be2be3be4be5be6be7be8be9bf.bf#.hm#49#m1#mc#49.Vi#44#pO#o0#pM#ql.WY#47#qi#rt#qb#m1a8i#1Qa8iaZnaWkaWjaTba2daZmbfabfbbfcayGawcaBA#5cbfdbfe#Yb#YcaKkaECaEAa#tbffa2kaKka2laHybfgbfhbfibfjbfkaMubflbfmapzapDbfnbfoamVabjabj#8rbfp#Y0#Ud#Ud#Hs#RsacAacAbfqbfrb#HbfsbftbfubfvbfwaZM#2B#yz.N4bfxatT.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON#v6#v6#v6.N4a8Pb#NbcwaTMakaaWVbfyaHUa#SbfzbfAbfBbfCbfDbfEbfFbfGbfHbfIbfGbfJbfKbfLbfMbfNbfObfPbfQbfRbfSbfTbfUbfVbfWbfXbfYbfZbf0bf1bf2bf3bf4bf5bf6bf7bf8bf7bf9bg.bg#bgabgbbgcbgdbgebgfbggbghbgibgjbgkbglbgmbgnbgobgpbgqbgrbgsbgtbgubgvbgwbgxbgybgzbgAbgBbgCbgDbgEbgFbgGbgHbgIbgJbgKbgLbgMbgNbgObgPbgQbgRbgSbgTbgU#TXbgV", +"aj5bgWbgXbgYbgZbg0atVaiN#v0#v0#v0#v0#v0#v0#v0#v0.xU#v0#yH#Ad#vZ#Ada65bg1aR1#v4.N4.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON#2Bbg2aU6bg3bg4bg5b.abg6bg7a4bbg8bg9bh.bh#bd5asrbhabhbbhc#0SasybbdbhdasAapAaDFbheay#am9aVobhfaDObhgaAZ.EO.EOaMC.w1aGRaMyaMzaDRaGTaeTapT#4B#4B#4BakEahQahMaeRapVabRa1iaGUbhhaG0bbobhia7obbmaMIa7naMHbhjbhkap8aYwbhlbelbhmbhnbhobhpbhqbhrbhsbhtbhubhvbhwbhxbhybhzbhAbhBbhCbhDbhEbhFbhGbhHbhIbhJbhKbhLbhMbhNbhObhPbhQbhRbhSbhTbhUbhVbhWbhXbhYbhZbh0bh1bh2bh3bh4bh5bh6bh7bh8bh9bi.bi#aBo#ocbia#M##oc#qm.BTafk#uJ#o0#pOa#cbibayF#qg#qb#ru#uz#1QaWoaWnaZlaTba5jaWkbicbidbieatwayHa#lbfd#5cbifaHv#4Pawe#1Fbigbigbcia2kbih#LI#LI#7Oal.biibija8tbfibikam5aJyaGGahuahqbilbimbhcabkbin#Udan7bcr#UdbcracAbcran7bcran5bfsaTGbiobipa5Jbiqb#LaKE#yz.N4#8IatT.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON#v6#v6#v6.N4a8Pb#NbcwaTMakaaWVbfyaKJbirbisbitbiubivbiwbix.ErbiybizbiAbiBbiCbiDbiEbiFbiGbiH.5pbiIbiJbiKbiLbiMbiNbiOazcbiPbiQbiRbiSbiTbiU.5pbiVbiWbiEbiXbiYbiZbi0bi1bi2bi3bi4bi5bi6bi7bi8bi9bj.bj#bjabjbbjcbjdbjebjfbjgbjhbjibjjbjkbjlbjmbjnbjobjpbjqbjrbjsbjtbjubjvbjwbjxbjybjzbjAbjBbjCbjDbjEbjFbjGbjHbjIbjJbjKa91.xU", +"bjLbjMbjNbjObjPbjQ#vV#Og#yG#yG#v0#KS.Fe.Fe#Ab#v0#Og#v0#yH#Ad#vZ#vYahhafRaR1#v4.N4.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.UCbjRbjSbjTbjUbjVbjWbjXbjYbjZbg8a7abj0aJuaALbj1bj2a#CakiamYahpaeoam2aeram4ahtaDDbd8bj3bj4bj5bj6bj7.vtbj8avGaVravGaSpaDRaGUaycaePaeRaePaePahQangangaeS#4BapWanhakEahKangbj9bk.bk#b.nbkabkbbkcaJPbkdbeibkeaPBaYwbhlaSvbkfat.bkgbkhbkibkjbkkbklbkmbknbkobkpbkqa7YbkrbksbktbkubkvbkwbkxbkybkzbkAbkBbkCbkDbkEbkFbkGbkHbkIbkJbkKbkLbkMbkNbkObkPbkQbkRbkSbkTbkUbkVbkWbkXbkYbkZbk0bk1bk2bk3ayCbk4bk5bk6anM#k5.eMak6#sd.uH.tm.OGbk7#u5bk8#r1#p9bk9#1Qb#kaZmaTba5ja2daWkbl.bl#aNiatva#lblablbblcbldbleblfblgblhblibljblkbllblmblnbloblpblqblrblsbltblublvahwaGGavvabpblwahpahpaANblxblxbly#7a#Xr#K2#OuaMjan5an5an5blzblAbfqaWMblBblCaZMaJq#yz#yy#8I#8I.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON#v6#Ch#v6.N4a8Pb#NbcwaTMakaaWVblDblEblFblGblHblIblJblKblLblMblNamEblOblPblQblRblS#RkblTblUblVblWblXblYblZbl0bl1bl2bl3bl4bl5bl6bl7#Rkbl8bl9#vVbm.bm#bm#bm##RkbmabmbbmcbmdbmebmfbmgbmhbmibmjbmkbmlbmlbmmbmnbmobmpbmqbmrbmsbmqbmtbmubmvbmwbmxaUUbmybmzbmAbmBbmCbmDbmEbmFbmGbmHbmIbmJbmKbmLbmMbmNbmObmPbmQbmRbmSbmTa91#KR", +"bmUbmVbmWbmXbmYbmZbm0#MQ#yG#v0#vX.we#A#.Fi.uT#DO.xU.xU#v0#vY#vZ#Ad#3Tba7aR1#v4.N4.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ONamQa8PaJqbm1bm2bm3bm4bm5bm6bg9bg9aVbaMmassaMpbm7asra#BakjaJwaANahpaGF#w0akpam5akobm8bm9bn.bn#bnabnbbncbndaAZbne#4BahM#4BahK#4BaeSabRapWaeT#GiakEakEanfahManhaA0aGTahMapUaAXabWabWbnfahRap7befaJQaA7aJOa4pbekbngaMMbnhbnibnjbnkbnlbnmbnnbnobnpbnqbnrbnsbntbnubnvbnwbnxbnybnzbnAbnBbnCbnDbnEbnFbnGbnHbkEbkEbnIbnJbnKbnLbnMbnNbnObnPbnQbnRbnSbnTbnUbnVbnWbnXbnYbnZbn0bn1bn2bn3#gdaif.zv.BD.Dq.XV#uGbn4bn5.gp.tm.uC.Fp.dX.uz.xcaBqanEbn6#sfbn7#1QaThbn8a5ja5ja5jbl.bn9bo.bo#atwatvaTlboaaJQasSbobbocbodboebofbodbogbogbohboibojbokbolbombltbonboobopaMuaMtaGGaMuboqaYmayXaSbaMqbor#4dabl#53bosbot#RsacAacAacAacAbfqacAboubovaWQbowa05#yzapo#8IatT.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON#v6#FL#v6.N4.XQb#NbcwaTMakaaWVboxboybozboAboBboCboDboEboFboGboH.xUafS#KKboIaiN#v0aiNboJboKboLboMboNboOboPba0boM#Ae.xU#KK#6Z.waboMbgVaveboQboRaiN#v0#v0#v0#v0#KK#KKaiNalraO0amC#DG#Ad#vYboS#Adalr#vYboSba0alrboTaL9boR#Ad#Ad#vYboTafS#Ck.xU#vZboUboM#KK#9WboVboPboOboNboM#vYba0bdTboPboMboMboMboWboK#6Q#AeboXboYboZbo0", +"bmVbo1bo2bo3bo4bo5.BK#vU#MQ#Ab.BV#MRaGxaBsaGw.Ep#yH#yG.xU#Ad#vZ#yH#Rka98aR1#v4.N4.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON#yy#Hh#yA#8Hbo6#Anbo7bo8bo9bbbaYeaPfbp.bd5aALaMlb.abp#aenaeoaANaJwbpaahw#w0am3am0bpbbpcbpdbpcbpebpfbpgbphbpiaeTaneahNaePakEangaAYahQapWapWaePahMakEabRaeRasManfaAXahKabRaAZabWakLaSm#XYa7obpjaD0a4pbhjaDUaSwaMJaYwbpkbplbpmbpnbpobppbpqbprbpsbptbpuavZbpvbpwbpxbpybpzbpAbpBbpCbpDbpEbpFbpGbpHbpIbpJbnIbpKbpLbpMbpNbpObpPbpQbnObpRbpSbpTbpUbpVbpWbpXbpYbpZbp0bp1bp2bp3bp4bp5.tH.lu#J1aNg.lV.uPav4#sgaEq.gP.gp.vX.wd.tiaqm.NVaT.afgbp6a8ibp7aWoaWoaWla5ja5ja5jbp8bn9bp9aNiatwa5nbq.bq#aygbldbqabqbbpha.LbqcbqdbqebqdbqfbqgapLbqha8rblsa8rbqibqjbqkaJAbqlbqmbqnaVhbqoaYmayX#4ebqp#4d#7a#4aa8Han7#Udan7bcr#K2bcr#Hs#HsaMjbqqbqrb#Lbqs#yz#yybfxatT.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON#v6#Ch#v6.N4.XQb#NbcwaTMaHSaWVbqtbqubqvbqwbqxbqybqzbqAbqBbqCaAFbqDbqEbqFbqGboMave.xUboKboMboMboMaiNaiNboMboM.xU#yG#KK#KK#6Z#6ZboI#AeavebqHamC#vZ#v0#v0#v0#KKaxZaxZ#v0bdT.xUbqI#6ZbqJ#9WboLboKboMboMboLboMboJ#v0axZ#KK#KK#KK#9WbgV#KRboI#vZboMboK#Ae#KK#9Wa92#vZboKaDq#KRamC#9W#9WbgV#9W#9WbgV.xU#6Z#6ZaGobqKbqEblQave", +"bqLbqMbqNbqObqPbqQ.Dg.xD#DQbqR.webqS.v1aBs#JqbqT#DQ#v1#yG#vZ#vZ#yH#Rka98aR1#v4.UC.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON#yzbqU#yzaTJbqVbqWbqXbqYb.#aYebqZaMnasuaAK#23bq0aR6aR8aMqaswakiaANavuaesam3aerbq1bq2bq3bj4bq4bq5bq6bq7bq8bq9br.apWapTahLaA0akEaycakE#GiahMahQapUahMapWanhahQaAYaJLaeS#4BavG#1uabWbq7br#braaA7b.ubbnbbobkcaMNaPBbrbb.vbrcbrdbrebrfbrgbrhbribrjbrkas9brlbrmbrnbrobrpbrqbrrbrsbrtbrubrvbrwbrxbrybrzbrAbhLbrBbrCbrDbrEbrFbrGbrHbrIbrJbrKbpUbrLbrMbrNbrObrPbrQavXaZfbrR.Kp.VkbrS.EobrT#32#30.r4aEraEsayDaif.vV.gp.sj.ts.e9.NVak0av1afiaicbrUbrVaWo#1QaTdaTbaTca2daZlbcea5nbrWatvayIbrXbrYbrZae3br0br1br2br3br4bqebr5br6br7asJa.Jbr8br9bs.bs#bsaapAakp#wXbsb#wWbscbsdaPiaViax9bqpbse#4d#7a#Xo#Udaiw#8x#Rraiw#8yan6#Hs#RsbsfaQxbsgb#Lbsh#Cgapo#8I#8I.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON#v6#Ch#v6.N4.XQb#NbcwaTMakaaTNbsibsj.9sbskbslbsmbsnbsobspbsqbsrbss#T4bqK#KRalrboR#vYba0#vYba0#vZboVboL#v0boM.xU#Ae.xU#KK#6ZaGo.xUboI#9W#9W#KR#vZ#v0.xU#KK#KKax0ax0#yHalr#v0#2D#2Dax0boRalralralralralralrbst#yHax0ax0ax0ax0boRboR#v0#v0#Adalralr#v0ax0boRboR#Adalr#2D#v0boRboRboRboRboRboRboR#v0#2D#2Dbsu#KRbsvblT#KK", +"bswbsxbsybszbsAbsB.sy#0F#A##DO#PX.xy.Df.xx.zL.v4#0I#yH.xU#Ae#vZ#yH#vVacRba8#v4.N4.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON#yz#Cg#yAbjTbsCbsDbsEbsFbsGbsHbj0bsIavq#XhastaMmaPfbsJbsKaYmaswbfoasBaepahtam0am3bsLbsMbsMbq4bsNbsO#7ybsPaSl#7yapUapUapTanhapUaAYayeayeaAXaAXaAYapTahJaA0aGTangangaycahKaPvahRabVa.LbsQaPEb.tb.qb.ubpjbhkaG1bsRbrbaG1bpmbsSaMTbsTbsUbsVbsWbsXbsYbsZbs0bs1bs2aytbs3bs4bs5bs6bs7bs8bs9bt.bt#btabtbbtcbtdbtebtfbpJbtgbthbtibtjbtkbtlbtmbtnbtobtpbtqbtraPMbtsbs2ayobttbtuaJo#sjQt6#0G.BPapk.sPav7ayAaifav8ayEQtN.xEQtzQtN.NV.NV#p.btvbtwbtxa8i#1Qbn7btyaWjbtzbn8b#kbtAbtB#13atuaNibtCbtDakSavMbtEbtFbtGbtHbqgbtIbtJbtKbtLaePbnfbtMbtNbtObtPbtQbtRam1btSbtTbtUbtVbtWaPiaMrbtXbtYblya.nabl#XobtZaiw#Uc#wb#wb#wb#UcaiwbtZbt0bt1bt2bt3.N4.UC#yy#8IatT.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON#v6#Ch#v6.N4.XQb#NbcwaTMakaaNIaNJbt4bt5bt6bt7bt8bt9bu.#9ZboTbu#bqHbqJ#6Z#yH#Ad#yH#v0#v0#v0#Ri#Af#W2a64#v1#Ri#Af#v1#Ri#v1#v1#v1#v1#v1#Ri#Ri#v1#yH#yH#W2boR#KK.xU#KKax0ax0#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#Ad#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yHbua#KKbubblTaGo", +"bucbudbuebufbqRbugbuhbui.sw#DQ#HfaO9.v5aegak##yI#yG.xU#yG#v0#vZ#yH#Rkbujbuk#Ai.N4.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.N4#DTaJqbulbumbsD#w.bunbuobupbuqbm7avqax5buraR7busbutbuuaPjaeoaho#wRa1easBahrasAbuvbuwbuxbuybuvbuzbuAbsPaSlbq8ahMaePahNasMahKbuBaStaAZaDPaSpbuBaePaePaeSaMBaPv#XWaJLanfanfbkeap8buCbuDaYub.tbuEbpjbboa4pb.vbuFbuGa1obnmbuHbnkbrebuIbuJbuKbuLbuMaqibntbptbuNbuObuPbuQbuRbuS.VAbuTbuUbuVbuWbuXbuYbuZbu0bu1bu2bu3bu4bu5bu6bu7bu8bu9bv.bv#bvabvbbvcaEebvdbvebvfbvg#r#bvhasj.iibvibvj#0FQt6bvkayCaqw.uCanM#ma.xV.cT.tt.B2akZak0.0Zbvlbvmbvnbtw#1Q#1Qbvobvpbvqbvrbvs#1ObvtbvubvvbvwbvxbtDakSbvybvzbvAbvBbvCbvDbvEbqdbvFbvGabWbvHaSnbvIbvJbvKbvLbvMbvNbvObvPbvQ#EvbvRbvSbpabq1ablablbvTbvTbvUbin#8y#Ot#Ap#K0a#D#DZ#D0#2pbvVbvWbvXbvY#yz#yz.N4bfxatT.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON#v6#Ch#v6.N4.XQb#NbcwaTMakaaTNaKIaKGbvZbv0bv1bv2bv3bv4bv5bv6.Epbv7bv8bv9bw.bw#bwabwb.v5aEZaEZbwcbwdbwebwfbwgbwhbwibwjbwkbwlbwmbwnbwobwpbwo#DPbwqbwjbwlbwrafS#yG#KR#KK#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yHax0ax0bubbwsbwt", +"aGpaGqbwubwvbwwbwx#v1#Aa#FO#Og#v0#v1#vV#vV#vV#vV#v0#yG.xU#Ad#vZ#yH#RkacRba8#v4.UC.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.N4#Cg.ONbwybwzbwAbwBbwCbwDbwEbwFbwGbwHbj1aR6bj0bqZbwIaViaMqahpavsaepapAasAaepbwJbwKbs.bwLbwMbwNbwObwPa.La.LaePaA0anhahNahLaycaAXaAXaAXaAXaAYang#XWavGaSpaGUaGUaAZaMBayebwQa7kaYv.y4bwRaMNb.ra7mbbob.rbpjbngaJRbwSbwTbnjbuHbwUbsTbwVbwWbwXaEfbwYbwZbw0ayvbw1bw2bw3bw4bw5bw6bw7bw8bw9bx.bx#bxabxbbxcbxdbxebxfbxgbxhbxibxjbxkbxlbxmbxnbxobxpbxqbxrbxsbxtbxubxvbxwbxxbxy.u3bxzarvbxA#SIanMaNfav6bxB.AUbk8av5.XV.xE.sk.ze.Bhaqm.0ZaqpbxCbtwbxDacfbxEbxFbxGbxHas8bxIbxJbxKbxLbxMbxNbxObq#aygbxPbxQbxRbndbxSbr5bvFbxTakLanl.vtbxUbqcbxVbxSbohbojbxWbxXbpcbxYbxZ#Evbx0ahwbx1bx2ablbx3bx4bx5bx5abk#Uc#Ao#Ap#Mr#Xc#x8bx6bcqbx7aKxbx8bx9#Cg#62.N4#8IatT.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON#v6#Ch#v6.N4#yCb#NbcwaTMakaaWVaWW#60by.#Agby#byabybbycbydaX8bydbye#HfbyfbygaRXbyhbyi#DO#DPbyjbykbylbymbynbyoabbbypbyqbyraX9byq#5Gbys#KQbytbytbyubyvba7bywbyx#Ae#KR#vZ#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yHax0ax0byybyzave", +"aGqaa6byAbyBbyCbyD.Ev.Ex.Ep#0I.xU#yG.xU.xU#v0#v0#v0.xU#v0#vY#Ae#yH#vVacRba8.UB.N4.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.UCbqU.N4bwybyEbyFbyGbm4byHbwFbyIbyJbyKaPhaqLbj0aR7byLavtaANahpasyam4aDFam3am3bfkbn#buwbyMbyNbyObyPboibvFbyQakDapXavFahJapW#GiapU#GiahMahLaA0#4BaPva4maDRap3aDPaSt.EObyRbySaGYbyTa7mbyUaMIaDUa7mbpjbbobyVaMJaMKbwSbyWbyXbyYbnmbyZby0by1by2by3by4by5by6by7by8.R4by9avVbz.bz#bzabzbbzcbzdbzebzfbzgbzhbzibzjbzkbzlbzmbznbzobzpbzqbzrbzsbztbzubzvbzwbzxbzybzzbzAbzBbzCbzDbzEbzFbzGbzHbzIbzJaBuatrbzK.u1bzLbzMaqw.tt.lt.xE.D5aqm.0ZbzN#uKanEanEaidbzObzPbzQbzRbzSbzTbzUbrjbzVbzWbzXae7boabzYbzZbz0bz1a4kbz2bq7bz3bz4bxTboibohbvDbz5byQbpibxUbz6bnbbz7btPbz8bz9bA.bA#akpam0aer#0Tbin#XkbAa#4abAbbAc#K1#Y0bcqay1bAdbAeaBSay2bAfbAgbAhbAi.UC.N4#8I#8I.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON#v6#FL#v6.N4aZOaWTaWUaTMakaaWVbAj#60bAkbAl#W9bAm#MQbqR#W9aU0#W9#W9bAnbAobApbgx#W9aU0#W9bAqbAr#FNb#ObAsbAtbAubAvbAw#T4bAxbAyaRXbAy#Ck#KHbAz.Dp#KPbAAbABbACbyoboM#6ZaiNbst#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yHax0ax0bADbws#9W", +"aa6bAEbAFbAGbAHbAI.Dg.sx.zLaO9#Ab.xU#v0#v0#v1#yH#v1#v1#v1#Ad#Ad#yH#RkacRba8.UB.N4.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.UCatU#PUbAJbAKbALbAMaQybANbAObyIbAPbAQaMnbARbqZaVabASa.maboa.mavsaepapAaeravuakobuxbATbAUbAVbAWbAXbAYboebxSbofbAZakDaeTapUaA0bA0aeP#GiapWahLaeSaAYaMBa4maMAaDS.EO.4Vb.pbA1bA2aDUbegbyUbkcbkebuEb.rbA3aGZaD0aMMaG2aG3bA4aMTbnlbA5byZbA6bA7bA8bA9bB.bB#bBabBbbBcbBdaSQbBebBfbBgbBhbBibBjbBkbBlbBmbBnbBobBpbBqbBrbBsbBtbBubBvbBwbBxbBybBzbBAbBBbBCbBDbBEbBFbBGbBHbBIbBJbBKbBLbBMbBNbBObBPafiacebBQbBRbBSbBTav4QtC.l0.cR.tS.eNak1bBUbvlaicbtwbxCafiaBpbBVbBWbBXbBYbBZbB0bB1bxMbB2bB3ayhayjbB4bB5ap6bB6bB7#1tabWbz3bxVbtIbojboeaSmbB8a.Qbj8bxSbxWbB9bq3bsM#O0bC.bopamZbC#aerbCa#2qbCbabkbCc#AobCd#2o#HpaNDaTzbCeaWJbCfbCgbChbCi#Zf#62#yz.N4#8I.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON#v6#v6#v6.N4azbbCjbCkaTMakaaWVbAj#AgbClafT#W9bCm.FhbCnbCobCp#SGbCq.BPbCrbCsbCtbCubCvbCwbCx#vXbCybmybCzbCAaKIbCBbwvawAbCCbCDbCEbCFaWYbCGbCHbCIbCJbCKbCLbCMbCNaiNboOaiNbst#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yHax0ax0byyblT#KK", +"bCObCPbCQbCRbCS.V9#FPbCT.sx#PX#MQ.xU.xU#v0#yH#yH#yH#yH#Ad#vZ#vZ#yH#Rkbujba8.UB.N4.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON#CgbjR.ONbCUbsCbCVaNHbCWbCXbwFbwEbCYbAPaMnaR7bCZbC0bsLbC1asyasyaswaDDam1am4apEbC2bfkbuxbuwbn#bC3bnb#4BbC4bxTaSmbC5akEaAYaMBaAYanfaeSahManhaePayeaPvaPvaJMa4mbC6aGVbC7bC8bC9bD.beib.qbD#bA3bhkb.taA7befbuEbkeb.vaJRbDabsTbDbaMTbDcbDdbDebDfaYAbDgbDhbDibDjbDkbDlbDmbDnbDobDpbDqbDrbDsbDtbDubDvbDwbDxbDybDzbDAbDBbBtbDCbDDbDEbDFbDGbDHbDIbDJbDKbDLbDMbDNbDObDPbDQbDRbDSbDTbDUbDVbDWbDXbDYbDZaWfbD0atbbD1aHsbD2.yq.r4.lu.0kak0.ff.8#ayxbn6afgaffbvmaqqaBbbD3bzTbD4bD5bD6bD7aBbbD8bB3ayhbD9bE.bE#bEabsQ#1tbEb#1p#1tbvGbxUbB8bEcavGbj8a.PbsQbEdbEebEfbtNbEgbj4bbgbEhbEibC#am2bvUbAb#0QbEjbEk#2p#Hp#Ar#x8bAea8Ea2AbElbEmbEnbEobEpamQbEq#DT.N4#8IatT.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON#v6#Ch#v6.N4azbbCjbCkaTMakaaTNbAjaskbErbEs#W9bEt.FPbEubEvbEwbExbEybEzbEAbEBbECbED#W9ababCxbwcbEEbEFbEGbEHbEIbEJbEKbELbEMbENbEObEPbEQbECbERbESbETbEUbEVbEWbEXaiNboWboK#6Z#v0#v0#v0#v0#v0#v0#v0#v0#v0#v0#v0#v0#v0#v0#v0#v0#v0#v0#v0#v0#v0#v0#v0#v0#v0#v0#v0#v0#v0#v0#v0#v0#v0#v0#v0#v0#v0#v0#v0#v0#v0#v0#KK#KRbyyblQave", +"bEYbEZbE0bE1bE2bE3bE4bE5#31#FO#MQ.xU#yG#v0#yH#yH#yH#yH#yH#Ad#Ae#yH#Rkbv9bE6.UB.N4.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.UC#MPaKEaTJbE7b#GbE8bE9bF.byIbF#bF#bFaaMma99bFbb.a#4abFcbilahobilaekaVlapzapAbFdbwJbuybn#bwLbFe#7ybfBapUaSma.L#GiabRaGTaMBaAYahKahQakDapXaePayeaJMaDPavGbFfbFgb.tbFfa7lbFhbFiaGYb.saMGbejaSwbefb.rb.ua7maDUaPCbFjavPbFkbFlbFmbFnbFobFpa1qbFqbFrbFsbFtbFubFvbFwbFxbFybFzbFAbFBbFCbFDbFEbFFbFGbFHbFIbFJbhFbFKbFLbFMbFNbBvbFObFPbFQbuTbFRbFSbFTbFUbFVbFWbFXbFYbFZbF0bF1bF2bF3bF4bF5bF6bF7bF8bF9bG.bG#bGabGbbGc.yr.r7.lJ.cU.NV.ff#p.bGda2abGebGfbtwaqqbGganybGhbzTbxJbGibGjbGkbGlbGmbGna7kbGobGpbGqbhibGrbGs.y4aGZbGtbGuaJMaDSaDS#1tbGvaYsbC4bGwbGxbGybGzbGAbGBbGCbGDa.vam6akoaswaelbfnbGEbGFbGGbGHaZDbGIaZEbElbElbGJ#x6bGKbGL#v5#Ok#yz#yz#8I#8I.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON#v6#FL#v6.UCa8PbCjbCkaq0akaaTNbAjbGMbv8#AfbAn#Rib#PbGNbGO#l9bGP.w.#A#bGQbGRbGSbGT#W9ababAqbGU.uTbGVbGWbGX.GjbGYbGZbG0bG1bG2bG3bG4bG5bG6bG7bG8bG9bH.bH#bwvbHa#yH#0w#v0#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yHax0#KKbyyblTboR", +"bHbbHcbHdbHe.sH#fwbHfbHg.Df.Dj#Ab#yG.xU#v0#yH#yH#yH#yH#yH#Ad#vZ#yH#RkbujbHh.UB.N4.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ONapo.UC#yxbHibHjbHkbyGbHlbqXbHmbHnbHoa99aMpbHpbHqbHrbHsakf#2m#5ramWbfnapDaVlbHtapCbHubpdbwLbHvbHwbEdbHxaePaA0aeTapT#4Banga1iaStayeahQahNapTahKaJLaMCaSoaGU.5Ra7mb.n.y4aJObHybHzbwRbHzbHAb.qbhka7ob.ubefbuEaDUb.vbnibHBbHCbHDbA4bHEbHFbHGbHHbHIbHJbHKa7sbHLbHMbHNbHObHPbHQbHRbHSbHTbHUbHVbHWbHXbuVbHYbHZbH0bH1bH2bH3bH4bBvbH5bH6bH7bH8bH9bI.bI#bIabIbbIcbIdbIebIfbIgbIhbIibIjbIkbIlbImbInbIobIpbIqbIrbIsbItaHrbIu.wDayybIv.NV.ff.R1aT.bIwbIxbIyas9bIzaE#bIAbIBbw4bICbIDbIEbIFbIGbIHbIIbIHbIJbppbrgbIKbILbIMbINbIOaPwaJLbIPaJMavGabWa7jbEcbIQbIR#1taDSbISbITbIUbIVbIWahBaezbIXa1ebIY#wPbIZbI0bI1bI2bI3bI4bI5bI5bElbI6bI7bI8bI9bvY#yzbdZ.N4#8IatT.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON#v6#Ch#v6.N4a8PbCjbCkaTMaHSaNIaWWakabJ.#v1bJ#bJ#blMbJa#W9atWbJb#X.#W9#W9#W9#W9#W9ababAqbCxapl.uZbJc.DmbJdbJebJfbJg.BJbJh.BX.uM.tJ.tA.uLbJi.tC.uR.xT.xT.uT#T5#Hf#Hf#DO#Hf#Hf#Hf#Hf#Hf#Hf#Hf#Hf#Hf#Hf#Hf#Hf#Hf#Hf#Hf#Hf#Hf#Hf#Hf#Hf#Hf#Hf#Hf#Hf#Hf#Hf#Hf#Hf#Hf#Hf#Hf#Hf#Hf#Hf#Hf#Hf#Hf#Hf#Hf#Hf#Hf#Hf#HfbJjbJkbJlbJmbJn", +"bJobJpbJqbJrbJsbJtbJubJvbJw#Aa#MQ#yG#yG.xU#v0#Ad#v0#v0#v0#vZ#vZ#yH#Rkbw#bJx.UB.N4.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON#yy#v5#yzaz.bJybJzbJAbJB#DVbunbJCbJDbJEbJFaAIa.favqbJGbJHbimahobhcbJIapzasAb.fb.ebJJb#vbJKb#vbpebpiaQ3aA0apWapXasLabRayea1i.EOavGaMBaycaAYaAXaMCaDSaJMaDSaSpbkdbJLaJObeibJMb.sbA1bJNbJObhjbkca7na4pbbnbhjb.ub.vbFjaG2bJPbJQbwVbJRbJSbJTbJUbJVbJWbw7bJXbJYbJZbJ0bJ1bJ2bJ3bJ4bJ5bJ6a4TbJ7bJ8bbTbJ9bK.bK#bKabKbbKcbKdbKebuVbKfbKgbKhbKibKjbKkbKlbKmbKnbKobKpbKqbKrbKsbKtbKubKvbKw.MKbKxbKybKzbKAbKBbKCbIsbGbaHrateayybIv.wD.OFQtHak1bKDbKEbKFavVanwbKGaBbbD7bKHbKIbKJbA5bKKbKLbKMbKNbKObsUbKMbKPbKQbKRbKSbKSbKTapYbKUakEbIPbKVa1ibz4bnca.Q#X0bxTa4kbsPbphbKWbKXbKYaeyaey#7kbKZbK0bK1#EnbK2bK3bK4bK5bK6bK7bK8bI5a2zbK9bL.bL#bLa#KV.UC#yB.N4#8IatT.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON#v6#Ch#v6.N4a8Pb#Nbcw#DRbLbaNIaKI#60aKG#yH#97.EybLc#X.#Ab#KS#KS#v1#v1#vV#MQ#MQ#vV#v1#v1#v1.v5.uZ.tA.V9.xB.Di.xB.xT.EvbLd.xT.xD.xT.xT.xB.BK.xB.xT.tA.tA.we.Ex#FO#FO.Ep#FO#FO#FO#FO#FO#FO#FO#FO#FO#FO#FO#FO#FO#FO#FO#FO#FO#FO#FO#FO#FO#FO#FO#FO#FO#FO#FO#FO#FO#FO#FO#FO#FO#FO#FO#FO#FO#FO.Dj.Ep.v5aO9.v5.BL.BL.F7bLebLf", +"bLgbLhbLibLjbLkbLl.FfbJg.Fg#DO#yH.xUbmS.xU.xU#vZ.xU#yG.xU#v0#Ae#yH#RkbLmbuk.UB.N4.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.UCatU#yzbLnbLobLpbLqbHjbLrbLsbwFbANbLt#23ax5bj2aAKbLubLvbFcamVbbeasBbHtapBb.ebLwbJJb#vbLxbLxbLybyPbLzapUaePapXasNahNahQaAX.w1aGUaMEap2bblaJJa4maSpa1iaDKbLAbeibhjbhjbhjaGZbuEbuDbLBbLCbeibkcbekbhkbkcb.qaDUaJTaSvbLDbwTah2bLEbLFbLGbLHbLIbLJbLKbLLbLMbDtbLNbLObLPbLQbLRbLSbLT.nPa4SbLUbLVa7NbLWbLXbLYbLZbL0bL1bL2bL3bL4bL5bL6bL7bL8bL9bM.bM#bMabMbbMcbMdbMebMfbMgbMhbMibMjbMkbMlbMmbMnbMobMpbMqbMrbMsbMtaHqbzN.vxbIv.tY.0k.R0.ffbMubMvbMwaytaBhbxHbMxaqhbMybMya4sbIEbMzbMzbMAbKNbMBbMCbMDbKQbMEbMFbMGbMHbMIbMJaSl.w1bblbMKaJLbz3.s2#4Ea.MbxUboibofbqcbohbML#4saeGam9#XFbMMbMNb#ybMObMPbMQbI4bMRbI3bMSbMTaZEaWJbI6#MqbMUbMVbMW#2B#2B#yz#8IatT.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON#Ch#Ch#v6.UCa8Pb#NbCk#DRaHSaTNaKIbMXbMY.xU.xU#yG#2D#0IaplbErapl#AcbMZ#T5aeg#vWaegaegbM0aegaO9.EpbM1.Ep#FO#FO#FO.Dj.Ep#FO.Dj#FO#FO.Dj#FO#FO.Dj.Dj.Ep.Ep.Ep#FO.Dj.Dj.Dj.Dj.Dj.Dj.Dj.Dj.Dj.Dj.Dj.Dj.Dj.Dj.Dj.Dj.Dj.Dj.Dj.Dj.Dj.Dj.Dj.Dj.Dj.Dj.Dj.Dj.Dj.Dj.Dj.Dj.Dj.Dj.Dj.Dj.Dj.Dj.Dj#PX.Fg#PX.Dj.Dj#PX.Dj#T3bM2bM3bM4bM5", +"bM6bM7bM8bM9#W9bN.bN#bNa#KS#yH#Og.xUboV#v0#vZ.xU#yGbmS#yG.xU#vZ#yH#Rkbv9buk.UB.N4.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.XQ#yC.ON#DUbHjbNbbNcaqYbNdbNebF.bFbbNfaDCbj2bNgasqbhcaenbFcabjacybNhaVlaVlbikbNibiibNjbNkbNlbNmbr5apTanfabRahNanianjakDapTakE#XW.w1a4maGWakJasQ.4VayebNnbIS.y4behbegbuEbhjbJMbNobNpbNqaJOa7oaD0aSwbhkbega4pbpkbNrbwSbNsbNtbNubNvbNwbNxbNybNzbNAbNBbNCbNDbNEbNFbNGa7RbNHbNIbNJbNKbNLbNMbbSbNNbNObNPbNQbNRbNSbNTbNUbNVbNWbNXbNYbNZbN0bN1bN2bN3bN4bN5bN6bN7bN8bpGbN9bO.bO#bOabObbOcbOdbOebOfbOgbOhbOibOjaHsbOkbMu.0kakY.r9ayybOlbOmbOnbOobOpbOqbOrbOsbOtaE#anwbOubOvbDcbKLbMzbOwbOxbsUbOybOzbOAbOBbOCbODbOEb.obOFaGVaJKa1hbOGaJMaYs#1nbOHbGvbOIbOJbOKbqgbOLbOMa.BbONakvbOObOPbOQbORbOSbOTbOUbOVbI3bI3bOWbK4bGJaWKbx6bOX#8sbOYbvYbdZaWR.N4#8IatT.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON#v6#Ch#v6.N4a8PbCjbOZ#DRaHSaTNaWWbEV#yH#v1.Eya64#2DbO0bLfbO1bO2bO3bO4.zW#vXbO5#FO.v5#T3bO6#DObO7aX8bJj#Og#Og#Og#Og#Og#Og#Og#Og#Og#Og#Og#Og#Og#Og#Og#Og#Og#Og#Og#Og#Og#Og#Og#Og#Og#Og#Og#Og#Og#Og#Og#Og#Og#Og#Og#Og#Og#Og#Og#Og#Og#Og#Og#Og#Og#Og#Og#Og#Og#Og#Og#Og#Og#Og#Og#Og#Hf#DO#yI#OgaegaO8.Df#Aa#HfbO8#nfbO9bP.", +"bP#bPabPbbPcbPdbPe#MQ#MQ#vV#v0atV#Ck#vVbPfaTM#v0#Ck#Ae#yG#vZ#Ad#yH#Rkbv9buk.UB.N4.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.XQ#yCaKEatSbPgbsDbPhbPibPjbPkbPlbPmbupburaDBbPnbPobLuamXbimamW#8ra4haYoapCapCbNibPpbPqbPrbPsbPtbPuani#7ybB8akEakDanjapXasLakDahLaeSaGT#XWaJMaSoaDS#XWbPvbB8bOFa7mb.tb.tbhjb.sb.naMGbPwbNoa7naYuaSwbPxbej#1qaMMaJRbPybPzbwVbkjbPAbPBbPCbPDbPEbPFbPGbPHbPIbPJbPKbPLbPMbPNbPKbPObPPbPQbPRbL4bPSbPTbPUbPVbPWbPXbPYbPZbHYbuWbP0bP1bNZbP2bP3bP4bP5bP6bP7bP8bP9bQ.bQ#bQabQbbQcbQdbQebQfbQgbQhbQibQjbQkbQlbOjbOkbQmbBU.PAbQn.r9bQobQpbQqbQrbQsaytbQtaJ8bQuaBgbQvbQwbQubQxbQybIFbKKbQzbQAbQBbQCbQDbQDbQEbQFbQGbuCbhjaDUaYxbQHbQIbpjbQJanka.N.vtbpibojbQKahOasKbQL#XI#HMbQMbQNbQObQPbQQbQRbQSbQTbQUbOVbMRbMRbQVbQWbI6bQX#x7#lHbQYbLqbQZbdZ#yz.N4#8IatT.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON#Ch#v6.N4bQ0bCjbOZ#DRaHSaTNaWWbQ1#vV#Ac.tAbQ2#vVbQ3.zDbQ4.xDbQ5bQ6.Gm.FibQ7#4VbQ8bQ9bR.bR#bRa#vZax0#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#v0.xU#v0#yH#32.vZ.tk.xBbAqbRbbRc#96bRd", +"bRebRfbRgbRhbRibRjbRk#PX#Aa#yI#Afa65bRlbQ2bRma64.xU#yG.xU#v0#vZ#yH#Rkbv9bRn.UB.N4.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON#yy#OjaJqaQzbE7bALbRobRpbRqbRrbF.bRsaYeaPfbq0bha#0MbRt#4babjbRubRvbRwapCapCbRxaYobRybRz#7qbRAbRBbRCbRDbREbr.aGTbRFbRGakEahM#GiahQanf#4BahMahMahKaGTayc#XWaStbvB.y4aGZb.uaA7b.nbHzbLBbRHbeea7naMNbhkbRIbRJbppbRKbrfbpobRLbRMbRNbRObRPbRQbRRbRSbRTbRUbRVbRWbRXbRYbRZbR0bR1bR2bR3bR4bP0bR5bR6bR7bKdbR8bR9bS.bS#bPYbSabSbbScbSdbSebSfbSgbShbSibSjbSkbSlbSmbSnbSobpKbSpbSqbSrbSsbStbSubSvbSwbSxaWcbSybSzaEkaHqanGQtH.PAbIvbSAbSBbSCbSDbSEbSFas9aHibQuavZbDgbSGbSHbSIbSJbQybwUbbqbSKbSLbSMbSNbSNbSObSPbSQbuCbejbbnbbnbefbbnbSRbGna7naDRaycahNavFbSSbSTa.JbSUaeKbSVbSWbSX#OTbSYa.AbSZbS0bQUbS1bS2bS3bS4bS4bS5bS6bS7#kV#x8bI7bMUbS8bS9#2B#yz.N4#8IatT.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON#v6#Ch#v6.N4.XQbT.bOZ#KTaHSaTNaWWbwe#AbbCTaMdbGPbm.#R.bT#bTabTbbTcbTdbTebG6bTfbTgbThbTibTjbTkbTl#vZax0#z4#v1#v1#v1#v1#v1#v1#v1#v1#v1#v1#v1#v1#v1#v1#v1#v1#v1#v1#v1#v1#v1#v1#v1#v1#v1#v1#v1#v1#v1#v1#v1#v1#v1#v1#v1#v1#v1#v1#v1#v1#v1#v1#v1#v1#v1#v1#v1#v1#v1#v1#v1#v1#v1#v1#v1#v1#yH#vV#yG.sw.r4#PY#vX.EybTmbagbTnbTo", +"bTpbTqbTrbTsbTtbTubJwbTva35#vX#DRbOZbTwbTxbTy#T5#yG#yG#yG#v0#Ae#yH#Rkbv9bTz#v4.N4.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON#yy#Oj#v6bAJbTAbRqbTBbTCbOYbTDalAbTEbTFb..a99bd5#38bTG#2jaembTHbTIbTJbIYbTJbTKaVlbONbTL#7mbTMapKbvDbtJbTNbljbxS#4BaStaAZaAXaJLaJLbuBaGTahQahQ#4BangaycaAXbHzbTObTPbTQbpjaA7bwRbTRbTSbHAbLBa4paPBbhkaD0bTTbTUbTVbrfbTWbrebTXbTYbTZbT0bT1bT2bT3bT4bT5bT6bT7bT8bT9bU.bU#bUabUbbUcbUdbUebUfbUgbUhbUibUjbUkbUlbUmbrybUnbUobUpbUqbUrbUsbUtbUubUvbUwbUxbUybUzbUAbUBbUCbUDbUEbUFbUGbUHbUIbUJbUKbULaM4bUMbUNbvgaHsacj.NV.D5akYbUObUPbUQbURbUSbUTatabQubUUavXbUVbUWaMUbSIby7bUXbUYbUZbrgbU0bU1bU2bU3bU4bOzbU5b.naA7aDUbU6aD0a1ka1ka7obkdahQasLasNasNanjaA1bU7bU8bU9bOMahDbSYahE#OTbV.bV#bVabVbbVb#FibQVbOWbMTbVcbVd#kVbS7bVebVfbVgbVhbvY#yz#yz.N4#8IatT.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON#Ch#Ch#v6.UC.XQbCjbOZaq0aHSaTNaWWbMX#2D.Ex#A#.Dj#yHbVibO5bVj.EwbVkbVl.zMbVmbVnbVobVpbVqbVrbVsbVtbVtaAF#KR.xU.xU.xU.xU.xU.xU.xU.xU.xU.xU.xU.xU.xU.xU.xU.xU.xU.xU.xU.xU.xU.xU#Og#yG.xU.xU.xU.xU.xU.xU.xU.xU.xU.xU.xU.xU.xU.xU.xU.xU.xU.xU.xU.xU.xU.xU.xU.xU.xU.xU.xU.xU.xU.xU.xU.xU#Og#yG#Hf.Ex.BP.BV#yH#HfbysbVubVvbVw", +"bP#bVxbVybVzbVAbTu.xx.BI.BQbVBbVCbVDbVEbVFbVG.xN#DP#v0.xU#v0#Ae#yH#RkbLmbRn.UB.N4.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.UCbVH#62bVIbVJbVKbVLbVMbVNaNHaQybVObVPaPfaMmasrbfpbVQ#2m#5rbRvb#EbVRbOQbVSbVTaek#05bVUbVUbTMa.Cbz5bVVbtLa.JakFbVWaeTahQaeSbuB#XWaJLanfabRakEanfangayebOFbVX.y4aMHbVYaA7bboaGYbVZbPwbwRbV0bJMaMNbkcaYybV1bV2bpmbnlbV3bnqbV4bV5bV6bV7bV8bV9bW.bW#bWabWbbWcbWdbWebWfbWgbWhbWibWjbWkbWlbWmbWnbWobWpbWqbWrbWsbR9bWqbWtbWubWvbWwbWxbWybWzbUcbUvbWAbWBbWCbWDbWEbWFbWGbWHbWIbWJbWKbWLbWMbWNbWObWPbWQbWRbWSbWTbvgbzN.vx.OF.tSbw1bWUbSC#subWVby3bQubUUavUaHhat#bWWbWWaBgbWXbWYbUYbIIbWZbW0bW1bW2bW3bW4bA2bW5beibyVa4paD0aPBaMNbA3bW6bW7apXanjavFavFahJaniavCahObW8a.HaeIbQNbW9#OTbX.bOQbX#bXabXbaZCbXcbXdbXdaWKbXebx6bx6bXfbVf#PEbXgbS9#MP#yz#yz#8IatT.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON#v6#Ch#v6.N4#yCbT.bOZaTMaHSaTNaWWbt4#2D#AbbXh#KSbXi#yFaHSbGUaKG.uVbVCbXjbVkbXkak#.uVbXlbXm#60bQ2bXnbXobM0aegaegaegaegaegaegaegaegaegaegaegaegaegaegaegaegaegaegaegaeg#vU#vU#T5#Ac#Aa.v5aO9aO9aO9aO9aO9aO9aO9aO9aO9aO9aO9aO9aO9aO9aO9aO9aO9aO9aO9aO9aO9aO9aO9aO9aO9aO9aO9aO9aO9aO9aO9.v5#Aa#Aa.EpaO9aO9bXp#AabXqbXrbXs", +"ae#bXtbXubXvbXwbXxbXybXz.uLbXAbArbXBbXCbXDbXEbJd#DP#yH.xU#v0#vZ#yH#RkbLmbHh.UB.N4.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON#Hh.XQ#yzbXFbPgbyFbXGbXHbVNbNdbXIbXJbLtaGDassburbXKbXLbhcakjbhca#BbXMbXNbXObXPbXQ#4pbXR#08aPqbXSbXTbXUbXVbvEbvDbXWbXXapXbXYa1jbXZaSuaeRahLapUapUbX0bX1#7DaSpb.nbVXb.nbboaDUbNobTRbMIbwRbTSbX2aMIbefaPzbV1bV2bA5bX3bX4bX5bX6bX7bX8bX9bY.bY#bYabYbbYcbYdbYebYfbYgbYhbYhbYibYjbbNbkwbYkbYlbYmbYnbYobYpbYqbYrbYsbYtbNTbYubYvbYwbYxbYybYzbYAbYBbYCbYDbYEbYFbUBbYGbYHbYIbYJbYKbYLbYMbYNbYObYPbYQbYRbYSbYTbYUbxF#oA.vu.w7bYVbYWbYXbYYbYZas8bQtbUUavUayobY0bY1bY2bWWbY3bY4bplbplbMAbY5bOxbY6bY5bY7bQBbY8bY9bhjaA7bbnaSwbekbkcbJMbuCbZ.asLahJanjanjahJasNaeUbZ#akFbU9bXSahDbZabZbbZcbZdbZebZfbXPbZgbZhbZi#BPbZjay2#x7#FnbZk#mmaBUbZla8PbjR.UC.N4#8IatT.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON#v6#Ch#v6.N4#JobZmbOZaTMaHSaTNaKIbMX#6ZaegbZnbH#bAubZobZpbZqbyjbZraWY#FTbZsbZtaZQbZubZvbZwbZxbykbM9bZy#T3.Fg.Fg.Fg.Fg.Fg.Fg.Fg.Fg.Fg.Fg.Fg.Fg.Fg.Fg.Fg.Fg.Fg.Fg.Fg.Fg.Ex.Ex.BVapl#vX#DQ#DP#0I#0I#0I#0I#0I#0I#0I#0I#0I#0I#0I#0I#0I#0I#0I#0I#0I#0I#0I#0I#0I#0I#0I#0I#0I#0I#0I#0I#0I#0IbZzbVi#0IbZAbZBbZCbZDbZEbZF#KRbZG", +"avhbCObZHbZIbZJbZKbZLbZM.v4bQ1#6Z.xO.sK.Sj.BJbZN#Og.xU#yG#vZ#vZ#yH#RkbZObZP#v4.N4.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON#yya8P.N4#DUbZQbZRbZSbZTbZSbNdbwBbZUavqbd5bsIbZVaYfbZWaeobbdakibimbZXbNibLwbiibZYavAa.HbZZbZ0br6aA1bZ1bZ2btJbZ3bZ4bZ5bZ6bAYbZ7bZ8bZ9b0.bKUbHxaMGb0#aMxb0aaGQbuEaJObJMbbnbkeb.nbNpbZ.buCbLBb0bb0caA7bSLb0db0ebQyb0fb0gb0hb0ib0jb0kb0lb0mb0nbNKb0ob0pb0qb0rb0sbYgbDyb0tb0ub0vb0wb0xb0yb0zb0Ab0Bb0Cb0Db0Eb0Fb0Gb0Hb0Ib0Jb0Kb0Lb0Mb0Nb0Ob0Pb0Qb0Rb0Sb0Tb0Ub0Vb0Wb0Xb0Yb0Zb00b01b02b03b04bhvb05bWRb06b07b08b09b1.bQob1#b1ab1bbYWb1cb1das7aHiavUayob1ebY1bRMbY2bA7bKFb1fb1gb1hb1ib1jb1kb1lbrgb1mb1nb1ob1pb.qb.tbyVbehbhja7mb.naMHaDTb1qb1rahJanjahJanjaVubU7akFbW8b1sabHahDbSYb#xbV.#AP#XHb1tb1ubZi#BPb1vbXeb1wbZha5z#Mtbx7b1xb1ya8PbjR#Ok.N4#8IatT.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON#v6#Ch#v6.UCb1zbT.bOZaTMaHSaNIaWWb1Abyrb1Bb1Cb1D#Aab1Ebujb1FaO9b1Gb1Gb1Hb1IaEY#Aab1Gb1Jb1Kb1LaO9bZnbZnaO9aO9aO9aO9aO9aO9aO9aO9aO9aO9aO9aO9aO9aO9aO9aO9aO9aO9aO9aO9#Aa#AaaO9#FO.Di#DQ#yH.xU#v0#v0#v0#v0#v0#v0#v0#v0#v0#v0#v0#v0#v0#v0#v0#v0#v0#v0#v0#v0#v0#v0#v0#v0#v0#v0#v0#v0#v0#v0boM#AeboMboMbqIb1Mb1Nb1Ob1Pb1QbJj", +"b1Rb1Sb1Tb1Ub1V.Exb1W.v5apl#yI#v1#0I#FO#PXaO9b1X#yH#yG#OgboV#Ae#v0#Rkb1Yb1Z.UB.N4.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON#yyatUaKE#DUbHlb10b11bLqbNdb11bXHb12b13aVabbcaR6aVbb14aYkax9aeob15#YSb16b17bNlb18b19b2.b2#bvEbtJa.JandavCbtIb2ab2bbSQb2cbW4bNpb2db2ab2eaSubJNbwRb2fb.nbA3bhkbefbegbbobhkbefbuDbTRbZ.byUbZ7a0cbsUbQzb2gb2hboab.wb2ib2jb2kb2lb2mb2nb2ob2pb2qb2rb2sb2tb2ubeQb2vb2wb2xb2yb2zb2Ab2BbN8b2Cb2DbWob2Eb2FbrGb2GbWrb2Hbtab2Ib2Jb2Kb2Lb2Mb2Nb2Ob2NbWob2Pb2QbBpb2Rb2SbkOb2Tb2UbQfb2Vb2Wb2Xb2Yb2Zb20b21bUNb06bIsbOjb22b23b24b25b26aqmbSCb27bSEby3bUUayobY0bY1aqebrkb28bY3bY4bOpb29b3.b3#b3ab3bbW2b1nbSKb3cb3dbY9beibTQbuDbedbJObJNbFibyUbyUapTb3easNapYapYasNahOavEasKbKXbQObPraeIbZabRzb3fb3g#OTb3hbK1#x5#BPb3ib3jb3kb3ka2ub3lb3mb3nb3ob3p#MP.UC.UC#8IatT.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON#Ch#Ch#v6.N4azbb3qb3r#DRaHSb3sbAjb3tb3ub3vbwab3wb3x#DFb3y#z4bl6blPb3zb3Ab3Bb3Cb3x#Ogb3DbmSbmSbmSbmSbmS#yG#yG#yG#yG#yG#yG#yG#yG#yG#yG#yG#yG#yG#yG#yG#yG#yG#Og#Og#Og#DO#KS#v1#DO.xT#vW#yH.xU#v0#v0#v0#v0#v0#v0#v0#v0#v0#v0#v0#v0#v0#v0#v0#v0#v0#v0#v0#v0#v0#v0#v0#v0#v0#v0#v0#v0#v0#v0#9W#9W#yGb3Eb3Fb3Gb3HbAtb3Ib3Jb3K", +"b3Lb3Mb3Nb3OaX7ax0#v1#vV#v1#yG#yG#MQ#MQ#v1#yH#yH#v0#Og#yG#vZ#Ae#yH#RkbZOb3P.UB.N4.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ONapo.XQ#yAb3Qa.gb3RbJAbOYbOYbPjb3SbNeb3TaVabh.b3Ub3Vb3WaYk#UPb3X#7abJKbNjb16b#vb3Yb3Zb30bVVbRDbPuavEaA1bU7b31b32b33b2bb34bZ7byUbFibyUbHAaDTbHzbVYaJOb35befaYuaMNaMIbeka7obegbuCb36b37aPxaPyb38b39bY7b4.ae3b4#b4ab4bb4cb4db4eb4fb4gb4hb4ib4jb4kb4lb4mb4nb4ob4pb4qb4rb4sb4tb4ub4vb4wb4xb4xb2Ab4yb4zb4Ab4BbR8b4Cb4Db4Eb4Fb4Gb4HbL2b4Ib4Jb4Kb4Lb2Rb4Mb4Nb4Ob4Pb4Qb4Rb4Sb4Tb4Ub4Vb4Wb4Xb4Yb4Zb40b41aBjbIsb42b43b44b45b46b47b48b49bYZbWVaBhayobY0bY1aqeb5.bRMb5#b1fbhob1fb29b5ab5bb5cb5db5eb5fb5gbrgb5hbVYbVYbTPaDTbJObyUb.obNpb5ib.ob5janeakDaneapVaeTapVasKbSV#7q#7qbPraeIahDbSYbSXb3gb5kb5lbcpb5ma5zb5nbXeb3kb5oa5zb5pb5q#VubVJb3paWR#2B.N4#8IatT.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON#v6#Ch#v6.N4b5rb5sbOZaTMbLbaNIbAjbQ1b5tb5ub5vb5wb5xb5yb5zb5Ab5Bb5Cb5Db5Eb5FbCKb5Gb5HaAF#yG#yG#yG#yG#yG#yG#yG#yG#yG#yG#yG#yG#yG#yG#yG#yG#yG#yG#yG#yG#yG#yG#Og#Hf#v1.zWasj.xyak#.Ewb5Iax0.xU#v0#v0#v0#v0#v0#v0#v0#v0#v0#v0#v0#v0#v0#v0#v0#v0#v0#v0#v0#v0#v0#v0#v0#v0#v0#v0#v0#v0#v0#v0#9W#AebmSbqIb5Jb5Kb5Lb5Mb5Nb5Ob5P", +"ae#b5Qb5Rb5SbCLb5TbAzb5U#PX#vX#vV#DQ.Dj#vU#yG#v1#v0#yG.xU#6Z#vZ#yH#Rkb5Vb3P.UB.UC.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ONapoazbaJqb3Qb5W#w.bPkb5Xb3SbXHbNeb5YbZUb5ZaR7b50bbcb51aMraYk#UPaS.b52b53b#vb#vb54btLbPub55b55b55apSasJavDb56b57bRHaPxbD#beebVXb.sbJMbeibeibuEb.qbhjbJMbyVb58aMNaJQa1kbefbNob59b6.b6#b37b6abY7b6bbY5b6cb6db6eb6fb6gb6hb6ib6jb6kb6lb6mb6nb6ob6pb6qb6rb6sb6tb6ub6vb6wb6xb6yb6xb6zb6Ab6Ab6Bb6xb6Cb2Rb6Db6Eb6FbPWbNRb6Gb6Gb6HbQab6Ib6Jb6KbWtbL0b6LbpFb6Mb6Nb6Ob6Pb6Qb6Rb6Sb6Tb6Ub6Vb6WbKCaKdaywb6Xb6Ybvgb6Zb60b61aZib62b63b64b65b66as7avZb1ebY1bY1aqeaBab67b68bY4bY4bOpbY3b69b7.aS0b7#b7ab7bb7cb7db1obFfbuEbeibVXbuDbHzbTPb7eb7fbhibuBaAYaycayeaAX#XWaStakEb7gb7hasFaeIbQNbQNbRzahEb7iapOb7jb7kb7lb7mb7nb7nb5ob7nb7o#7#b7paHNbVJa8Pb7qb7r.N4#8IatT.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON#v6#Ch#v6#Cf#CibCjb7saq0#5GaNIaWWb7t#Acb7ua2Ib7vb7wb7xb7y#33b7zb7A.tZ#yOb7Bb7Cb7Db7Eb3J.zW.zW.zW.zW.zW.zW.zW.zW.zW.zW.zW.zW.zW.zW.zW.zW.zW.zW.zW.zW.zW.zW#Acaplaegb7F.sqb7G.Dj.xBb7Hb3y#KR#KKboRboR#Ad#Ad#Ad#Ad#Ad#Ad#Ad#Ad#Ad#Ad#Ad#Ad#Ad#Ad#Ad#Ad#Ad#Ad#Ad#Ad#Ad#Ad#AdboRboRboRboRbqHaveaRTaxZ#H.b7Ib7Jb7Kb7LbRi#DQ", +"aa7b7Mb7Nb7ObZNb7P.BJb7Qb7R#Ac#Ab.we.swa35.Di#T5.xU#yH.xU#yH#Ad#yH#RkbZOb3P.UBaKE.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON#yy#Cgb7Sb7Tb7Uan8#DYb7VbPjb7WbXJbwHb7XaMibq0bJEb7YbwIaPjaVib7ZaVeb70b71b72buwbs.b73bqeb74btLbr6bvDaA1apLb75bW7buCbNoaJO.y4b.nbJMbuEbuEa7mb.sbehbehaD1avMb6da4paMIaSwaA7buCb2bb76b77bVZb78b1nb79b8.b78b8#b8abQyb8bb8cb8db8eb6kb8fb8gb8ha7Mb8ib8jb8kb8lb8mb8nb8ob8pb8qb8rb6xb8sb8tb6Bb8ub8vb8wbKcb0Db8xb8ybzjb8zb8Ab8BbnJb8Cb8Db8Eb8Fb8Gb4Dbu6b8Hb8Ib8Jb8Kb8Lb8Mb8Nb8Ob8Pb8Qb8Ra1Tb8Sb8Tb41bvgbIsb8U.0ob8Vb47b8Wb8Xb8Yb8Zb66bWVbQtat#bY1bY1b1eb80at#b81b1fbOpbOpbs3bs3b82b83b84bw3b85b86bKPb87b1mbegb88b.ubpjb.rbyVb.qbegb.qbGtaGRaSob89aSoaSpaDPaDP.w1ahMb9.aeFasGbQObSYbQMb3f#OT#4rb9#b9ab9bb5nb1vbGGa5zb3lb9cb#D#Oqb9db9ea8P#yAb7r.N4#8IatT.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON#v6#Ch#v6aKEazbb3qbZq#DRakaaNIbAjbwh.v5b9fb9ga.4b9haO8.Gl.Dgb9ib9jb9k#jGb9lb9mb9nbCqaE2.Ex.Ex.Ex.Ex.Ex.Ex.Ex.Ex.Ex.Ex.Ex.Ex.Ex.Ex.Ex.Ex.Ex.Ex.Ex.Ex.Ex.Ex.EwawAb9o.Dj.uZ.BK.Ex.v4b9p#DF.xU#KKboRboR#Ad#Ad#Ad#Ad#Ad#Ad#Ad#Ad#Ad#Ad#Ad#Ad#Ad#Ad#Ad#Ad#Ad#Ad#Ad#Ad#Ad#Ad#AdboRbqHboRboRbqHboR.xU#vZbqKb9qb9rb9s.F9b9t#T5", +"ae#b9ub9vb9wb9x.svb9y.zOb9z#0I#DQ.Dg#Jp#0FbCT.BJ#0I#yH.xU#yH#Ae#yH#Rkb9Ab3P.UB.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON#yzbqUbqsb9B#Anb9Cb9DbVNb9Eb9FbXJb9Gb9Hb9IaJtavrb9JaANbvSb9Kb9Lb9MbAT#O1#H8b9Nb9Ob9PbISa.Lbq8bxUakEasManiapXahLb9Qbeha7mbuD.y4buDbHzbNobNobuDbVXb9Rb9Sb9Tb9Ub9Vb9Wb9Xb9YbLCbKTb9Zb90b.ob91b1mbKNb5fb92aA7b93b6fb94b95b96b97b98b99c..c.#c.ac.bc.cc.dc.ec.fc.gbnBbYxc.hb4tb4ub8vc.ic.jc.kc.lc.mbrHc.nc.oc.pc.qc.rbUCc.sc.tc.uc.vc.wc.xc.wc.yc.zc.Ac.Bb8Kc.Cc.Dc.Ec.Fc.Gc.Hc.IbWSc.Jc.Kc.Lc.Mb6Yb07c.N.s7c.Oc.Pc.Qc.Qc.Rc.Sc.TaHkc.Uc.VaPWb28ayobA7c.WbSFbhob1fbKFb68c.Xc.Yc.Zc.0c.1bQCb5fc.2c.3c.4c.5aDUc.6c.7c.8c.9c#.aD0c.6aGQbblaMEaJJaSoa1iaycahKakEaPsc##c#ac#baky#7qbSYbSXahEc#ca.AbcobXcc#dc#eb7k#7.b#Db9cc#fc#gc#hc#ic#j#yB#yz.N4bfxatT.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON#v6#Ch#v6#34c#kc#lbZq#yF#FNb3saWWbwhbO8c#mc#nbiSc#o.uM.xD.FQc#pc#qc#r.FWc#s.FWc#tc#tc#u.xD.xD.xD.xD.xD.xD.xD.xD.xD.xD.xD.xD.xD.xD.xD.xD.xD.xD.xDc#v.uTc#waTN.FW#A.c#xc#yc#z.tJc#Ac#Bc#C#6QbqG#KR.xUboMboMboMboMboMboMboMboMboMboMboMboMboMboMboMboMboMboMboMboMboMboMboMboM#KR#Ae#Ae#AeboLc#Dc#Ec#Fb7tc#GbEVc#Hc#Ic#J", +"c#Kc#Lc#Mc#N.RMb7yQtZaBt.uT#X..zWc#ObqTa35.Eq#A##DQ#v0.xU#v0#vZ#yH#Rkb1Yb3P.UB.N4.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.N4asm#yAc#Pc#Qc#RamTbMVc#Sc#TaTIc#Uc#VaPda37c#Wc#X#Xic#Yc#Zc#0c#1buybuwc#2c#3#O0#1ra4m.4W#X0c#4a1iakEahK#XWbuBbuDa7mbhjbVYbA1aDTbJObW6a7kb9Tc#5c#6c#7c#8c#9ca.ca#caacabcaccadcaecafcagbSLbQAbsUbKPbY7cahbrZcaicajcakcalcamcancaocapcaqcarcascatcaucavcawcaxcaybbNcazcaAcaBc.icaCbeLc.jcaDcaEcaFcaGcaHcaIcaJbpJcaKcaLcaMcaNcaOcaPcaQcaRcaScaTcaUcaVcaWcaXcaYcaZca0ca1bIrca2ca3b8Tc.Lca4b07b08ca5ca6ca7QtUc.Rca8ca9cb.cb#bMvaP2bYSbWRb28byYb81b1fcbacbbcbcb3.cbdcbdcbeb5bcbfcbgcbhcbicbjcbkcblcbmcbncbocbpcbqcbrcbscbtcbucbvcbwaJGaGSannb.maAZabRapVapYaeKc#ccbxcbycbzcbAcbxbQMbSXbSX#4r#LdcbBcbCcbDcbEcbFcbGb7ob1vcbHcbIcbJbx9bdZ#Cg.UC#8IatT.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON#v6#Ch#v6atTcbKcbLbZqbZoaNJcbMbAjcbNaKGcbOcbPcbQb7scbR.DocbSbLdcbTcbUcbVaEXcbWcbScbXcbXcbXcbXcbXcbXcbXcbXcbXcbXcbXcbXcbXcbXcbXcbXcbXcbXcbXcbXcbXcbWcbY.DncbZcb0cb1cb2c#zcb3aGscb4cb5aL9bgVcb6aRR#2Dcb7cb7cb7cb7cb7cb7cb7cb7cb7cb7cb7cb7cb7cb7cb7cb7cb7cb7cb7cb7cb7cb7cb7cb7bsu#v0boV#vZ#vZ#AebqIcb8cb9bqFbsrcc.aU1bmS", +"#z5cc#cca.tO#ks.lUQtC.v2#Aa#97#0I.uZ.BJ.Ev.xT.uT#0I.xU.xU.xU#vZ#yH#Rkccbb1Z.UB.UC.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON#yzazb#v6aTJ#DVcccccdbumcceaZLaZLccfccgcchcciaJtaAJccjaKncckawlcclccmccnbj4b72ccoccpbB8bnfa4kccqbxTanfaGUap3.4WbFfb.sb.qb.tbTQaMHbhibNoaGZbegccrccscctccub9Rccsccvccwccxccycczb8.bY5ccAbKNbOxbOwccBccCccDa7pbPxccEccFccGccHccIccJccKccLccMccNccOccPccQccRccSccTbkwccUc.jbBnccVb4EccWccXccYccZcc0cc1cc2cc3cc4cc5cc6cc7cc8cc9cd.cd#cdacdbcdccddcdecdfcdgcdh.UFcdicdjcdkcdlaEhcdmaEkca3aEkaEncdnaS9.cO.awcdocdpcdqc.QcdrcdscdtaWccdubYSaBgb1hcbbcdvcdwc.0cdxbY4b29by2cdyc.Zb3acdzcdAcdBcdCcdDcdEcbmca.ccsccsccscdFcdGcdHcdIcdJcdKaSqa4laYtap0aJIap1aJLapXaVucdL#4wcdMcbxcdNcdObSXbQMbQM#OTcdPaWFcbEcbEcdQcdRa2ua5zcdScdTcdUcdV#OlaWR#yz.N4#8IatT.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON#v6#FL.N4#34a8Pc#laQDaWWcdWaWW.odcdXcdYboOcdZbAycd0cd1cd2cd3cd4bdYbdYcd3cd5cd6cd7cd8cd8cd8cd8cd8cd8cd8cd8cd8cd8cd8cd8cd8cd8cd8cd8cd8cd8cd8cd8cd8cd9ce.bAyce#ce#ceacebbJjb1Xcec#O#aDscedceecd5cefcd6cb8cb8cb8cb8cb8cb8cb8cb8cb8cb8cb8cb8cb8cb8cb8cb8cb8cb8cb8cb8cb8cb8cb8cb8bqFaUXcb8bqFbAxcegcd4cd5aAAcehcei#3Rcejcek", +"aUYcelcemcenceocepceq.uR#Ac#vV#Hf.Fg#vU#v1#yG#vU#Og.xU#6Z#v0#vZ#v0#Rkcerces.UB.N4.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON#yzcetaZNceucevcewbJBcexceycezceAceBceCceDceEceFceGceHanXceI#2f#2fceJbtPbq3ceKbB9ceLceMboeboiaCcaSl.EOaGVceN.YqbTQbNob.sbejaA7bJMbJMbpjbefb.qceOcePceQb9RceRceSccvcdFceTceUcagceVbU1bU1bQzbOxceWceXceYccDaMPceZce0ce1ce2ce3a1Rce4ce5ce6ce7ce8ce9cf.cf#cfacfbcfccfdc.jc.jcfeb6Lb2RcffcfgcfhcficfjcfkcflcfmcfncfocfpcfqcfrcfscftcfucfvcfwcfxcfycfzcfAcfBcfCcfDcfEcfFaZ.cfGcfHc.LaqqcfIaEoaHqcfJ.hocfKcfLa2bcfMb8XaN.aM9cfNa5ecfOcfPbs2bhoc.0cfQcfRb69cfScfTbs3bs3cfUcdzb5bcfVcfWcfXcfYcfZcf0cf1cf2cf3cf1cdFca#cbtcf4cf5cf6cf6cf7#4Jcf8aVtcf9cg.aJKaPvakDcg#cgacgb#4wcgccbxbRzbQMbQM#HMbQM#UwcgdcgecgfcbFcggb1vbGGcghb5mcgicgjbS9cgkbsh.N4apocgl.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON#v6#Ch#yB#yB#JocgmbZqaHTcgncbMbAjcgoatVcgpcgqcgrcgscgtcgucgvcgvcgucgwcgxcgycgzcgzcgzcgzcgzcgzcgzcgzcgzcgzcgzcgzcgzcgzcgzcgzcgzcgzcgzcgzcgzcgzcgzcgAcgscgBcgCcgDcgCcgEcgFcgGcgHcgIcgJcgKcgLcgMcgNcgOcgucgucgucgucgucgOcgOcgucgucgucgucgucgucgucgucgucgucgucgucgucgOcgOcgucgPcgNcgQcgRcgScgLcgQcgTcgUcgVbCmcgWcgX#MQcek", +"cgYcgZcg0aobbdXaJhbEs#yG#Og#Og#v0#KS#KS#Ab#Ab#vV.xU.xU.xU#vZ#vZ#yH#Rkcg1b1Z.UB.N4.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON#yz#CgaY#cg2acOaZG#w.ccfcg3ceBcg4cg5cg6#A8cg7ceFceGa7fabf#2h#2f#2hbn.cg8cg9b16aVmbq6ch.bEdbr.bC4aDSaDRap2aMCch#byUbHAbJOa7mchabkbb.taDUaSwchbcf1chcchdchechfcbmchgchechhchichjb5ebQEb5echkbsUchlchmbWZbbochnchochpchqchrchsaM4bhuchtchuchvchwchxchychzchAchBchCchDcazchEbPZchFchFchGchHchIchJcaFchKchLchMchNchOchPchQchRchSchTchKchUcfxchVchWchXcaZchYchZch0ayoch1ch2ch3ca4anGaBpch4bItbGbch5.s7.cO.zTc.Rb8Xch6aM9cfNcdtbYTcfOch7cfNch8cbech9ci.cfUby2bs3c.Wby2ci.cbfci#ciacibciccidciecf0cifcigcihciicijcikcilcikcf5cdJcimcinaYsaJGciocipaAXapYaeUandavCciq#4vcirciscitciubRzbRzbQMbSXcivciwcixciya8xciz#7#ciAciBciCciDciE#yC#62ciF#MP#DTciG.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON#v6#Ch.N4#T7aZOciHb7sbwnaQDaTNciIaHUciJciKciLciMciNciOciPciQciRciRciSciTciUciSciUciUciSciSciSciSciSciVciSciSciSciSciVciSciSciUciUciSciSciSciUciUciSciWciWciXciYciZci0ci1ci2ci3ci4ci5ci6ci7ciWci8ciSciSciSciVciSciVciSciSciVciUciUciUciSciSciSciUciUciSciSciSciVciSciSciSci9ciTciScj.cj#cjacjbcjccjdcjecjfcjgcjhcjicjj", +"cjkcjlcjmcjncjocjp#FOak##v0.xU#0I#0I.v5.uL#Aa#Og#v0.xU.xU#vZ#vZ#yH#Rkcg1b1Z.UB.N4.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON#MP#Cgcjqba9aU8cjrcjscjtcjucjvcjucjwcjxcjyaPda2McjzcjAcjBactcjCcjDcjEaHBcjFcjGcjHcjIbq7aSlbnfabWbkbcjJ.EObPvcjKaGYbyUbNpbuCcjLcjMcjNcjOcjPcjQcjRcjScjTcjUcjVcjRcjWcjXcjYcjZcj0bKQbMEbSMchlbOwcj1bOxcj2bKOcj3cj4cj5cj6cj7cj8cfOcj9ck.ck#ckackbckcckdckeckfckgckhckickjckkcklckmbpGbDBckncknckockpckqckrckscktckuckvckwckxckyckzckAckBckCckDckEckFckGckHa4XckIckJckKckLckManFaKcav5ayCbGcanFckNckOckPckQckRckRckSaP3ckTckUcduaWcaqjaN#b8XckVckWby8ckXbKFckYby7ckZck0c.Yck1ck2ck3ck4ck5ck6ck7ck8ck9ccwcijcbtccwcl.cctcl.cl#claclbclccldcleclfb31#1iancapLaA1b19#XP#1e#XMclgclhbRzbRz#HMcli#Lccljciyclkclla5zclmcln#5rclmcloclpb5r#yzbdZaWR#MOcgl.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON#v6#Ch.N4#T6#yCciHbZq#DRakab3sclqclrclscltcluclvclwclxclyclzclAclBclCclDclEclEclDclFclEclEclEclEclEclGclEclEclEclEclGclEclEclFclFclEclEclEclDclFclEclGclHclIclJclKclLclMclNclOclPclQclRclSclTclCclGclEclEclGclEclEclEclEclEclDclFclDclEclEclEclFclDclEclEclEclGclEclEclGclEclEclUclVclWclXclYclZcl0cl1cl2cl3cl4cl5cl6", +"cl7cl8cl9cm.cm##lXcma.uR#vU#vV#vU.BV.sX.skbJw#PX#yG#yG.xU.xU#vZ#yH#Rkcg1b1Z#v4.UC.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON#MPaY.#FM#eacmbcmccmdcmecmfcmfcmgcmhcmfcjycmiaMic#Xcmjcmkcmlcmmcmnaiq#O8a2kcmocmpaSmbEc.4WcmqbFgbyVcmrbyUbwRbVYb.sbTQbwRbIScmscmtcmucmvcjQcmwcmxcmycmzcmAcmBcmCcmDcmEcmFcmGbWZbY5bY6bW0bV1chkcmHbKPcmIcmJb1gcmKcj5bOpcmLbtrcmMcmNcmOcmPcmQcmRcmSc.acmTcmUbeTcmVcmWcmXcmYcmZcm0bSacm1cm2bWobKdcm3cm4cm5cm6cm7cm8cm9cn.cn#cnacnbcnccndcnecnfcngcnhcnicnjcnkanMaqw#oT#uGcnlcnmaBkaEsaNfatkbBUckOcfLcnnb22b63cnocnpaP3cnqcnrbWRcdlaJ1cnscntcnucnvcnwcnxcnycnzcnAcnBck0cnCcnDcnEcnFcnGcnHcnIcnJcnKcnLcnMcnNcnOccucnPcnQcnRcnScnTcnUcnVcnWcnXcnYcnZasJasJapXcn0b9.cn1#XPcn2#1bcn3cn4bSYcn5clicn6cn7cn8cgfcn9co.ciAco#coacobcoccodb5r#yzbdZaWR#MOcgl.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON#v6#Ch#yB#T6b3pciHbZqaTM#5Gb3sclqcoecofcogcohcoicojcokcolcomconcoocopcoqcorcorcorcorcorcorcorcorcorcoqcorcoqcorcorcoqcorcorcorcorcorcorcorcorcorcoqcoscotcoucovcowcoxcoycozcoAcoBcoCcoDcoEcopcorcoqcorcorcoqcorcorcorcorcoqcorcorcorcorcorcorcorcorcorcorcorcoqcorcorcoqcorcopcoFcoGcoHcoIcoJcoKcoLcoMcoNcoOcoPcoQb1C", +"coRcoScoTcoUcoVcoWaeebqT.xT#vV#vW.v3.lt.cT.zLaef#yI#yH.xU#yH#vZ#yH#Rkcg1coXcoY.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON#Ce#2BaTLcoZco0co1co2co3bZVco4co5co6cg6b3VaMpbJFco7co8co9awiatzcp.#R1#O9aNraNrcp#cpa#7A#7A#7A#1obTQcpbaMGb.obW6beibehb.sbTPcpccnKce0cpdcpecpfcpgb94cphcmAcmzcpicpjcbkcpkbIHbsUbSLbQzbIIbMBbOwbIIcplcpmcpnbY3ckWby4b1gcpoaD9aM7cppcpqcprcpscptcpucpvcpwcpxcpycpzcpAcpBcpCcpDcpEcpFb0zcpGcpHbuXcpIcpJcpKcpLcpMcpNcpOcpPcpQcpRcpScpTcpUcpVcpWcpXcpYcpZcp0cp1cp2#oTanL#sgaieav4av7aBvav5.Dq.gi.xbcp3cnncp4cp5bMvcnpcp6cp7cp8bYTcdlcp9cq.cq#cqacqbcqccqdcqecqccqfcqgcqhcqicqjcqkcqlcqmcqncqocmDcqpcqqcl#cqrccscqscqtcqucqvcqwcqxcqycqzcqAcqBcqBcqCcqDaneanjaGTcqEcqFaPpcqGcqHcqI#Lia.Bcn5bSXcqJcqKcixcqLcqMaWF#x5a.icoacqNcqOcqPbx9#yzbdZ#yz#Cfcgl.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON#v6#Ch#v6.N4.XQbT.aWY#DR#5GaNIaWWcqQcqRcqScqTcqUcqVcqWcqXcqYcqZcq0cq1cq2cq3cq4cq5cq5cq4cq4cq4cq4cq4cq4cq4cq4cq4cq4cq4cq4cq4cq5cq5cq4cq4cq4cq5cq5cq6cq7cq8cq9cr.cr#cracrbcrccrdcrecrfcrgcrhcq2cqZcq6cq4cq4cq4cq4cq4cq4cq4cq4cq5cq5cq5cq4cq4cq4cq5cq5cq4cq4cq4cq4cq4cq4cq4cq6cricrjcq9crkcrlcrmcrncrocrpcrqcrrcrscrtbCM", +"crucrvcrwaHVcrxcry.zCb7R#32#yI#vU.BK.EqaEp.sm.sw#Hf#v1.xU#yH#vZ#v1#RkcrzbZP.UB.N4.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON#34#yBcrAcrBcrCcrD#xo.UZa4#co5bg7crEbC0b3VcrFc#WcrGcrH#Pt#Pt#R3cp.aKjcrIcrJaHAcrKaMAakJa.Nb88bj8bySbA2bD#bLBbNncjKcrLaGZbuEcrMcrNcrOcrPcrQcpicrPcmycpfcmAcmwcrRcrScpjcrTcrUbMBchmbIIcrVbOxbOwbOxcrWcrXcpnb1gcdvcrYaBgaMUbrkcrZcr0cr1cr2cr3cr4cr5cr6cr7cr8b2ucr9cs.cpQbbLcs#csacsbbBscpGcscbbMbKdcsdcsecsfcsgcshcsicsjcskcslcsmb4Ucsncsocspcsqcsrcssbs2cstcsu#maaw#aqwaqtav7aEsav5#ti.tk.DsQtO.zTcnncsvcswbMvaHkcsxcfOcsycszcsAcsBcsCaN#cdscnxcqdcsDcsEcsFcfMcsGcsHcsIcsJcsKcsLcsMcsNcsOcsPcsPcmDcqrcsQccscsRcsScsTcsUcnRcsVcsWcsXcsYcsZcs0cs1aMCaeRaVuapVcs2cs3cs4cs5#XPcs6#7r#Uw#HS#HQcs7cbEcs8cbCcs9ct.ct#cta#4#ctbctc#0KbAh#yzbdZ.UCcglcgl.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON#v6#Ch#v6.N4c#jctdaWY#DRbLbaNIbqtctectfctgcthctictjctkctlctmctnctoctpctqctrctsctscttctuctuctuctuctuctvctuctvctuctuctvctuctuctwctwctuctuctuctwctxctwctyctyctzctActBctCctDctEctFctGctHctIctJctKctLctvctuctuctuctuctvctuctuctvctwctwctwctuctuctuctwctwctuctuctuctuctuctuctuctuctMcttctNctOctPctQctRctSctTctUbwqctVce.ctW", +"ctXctYctZct0ct1ct2ct3asj.BQ.xUapl.v4#32apk.zO.v4#yG#v0.xU.xU#vZ#yH#Rka#ScoX#v4.UC.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON#61aQAcrAct4ct5ct5.Ls.INct6a4#busb50ct7cg7ct8c#WaMict9aQ0aBI#IK#xQ#O8aNr#R1cu.#EJap4cu#a.M#1raSlcuab.obD#bV0bNpcubaMGbedbTQcuccudcnKcuecufcugcmtcuhcuicujcmvcukculcumcuncuobMCcupcuqcurb1ocuscutcuucuvbKOcbdcbbbs3bSIcpocuwcuxcuycuzcuAcuBcuCcuDcuEcuFcuGcuHcuIcuJcuKcuLcuMcuNcuObPTb2NcuPcuQcuRcuScuTcuUcuVcuWcuXcuYb8McuZcu0cu1cu2cu3cuBcu4aqqanFcsucu5cu6#tjaqy#maav6cu7ayA.BG.dv.sB.CScu8.0qcsvcu9cv.cfNaV1aWccp8cv#cvaaHkcvbcvccvdcvecp6aJ0cqdbxtcnAcvfcvgbzzcvhcvicvjcvkcvlcvmcvncnIcmDcvocvpcikcnNcvqcvrcvscvtcvucvvcnRcvwcvxcsYcqzcvycvzbq8andahJcvA#RPcs4cvBb7icvCcvD#OP#Lm#OMcqLcvEcvFcs8aWFcvGb7mabiaemcvH#D7cvIcvJaWRciF#HhamQ.N4.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON#v6#Ch#v6.N4c#jctdaQD#DRbLbaNIaKIaHUcvKb5UcvLcvMcvNcvOaDycvPcvQcvRcvScvTcvUcvVcvWcvXbCNcvYcvZcv0cvZcv1cv2cv3cvZcv2cv4cv2cv2cv5cv5cv2cv2cv2cv5cv5cv2cv6cv7cv8cv9cw.cw#cwacwbcvMcwccwdcwecwfcwgcwhcv3cv2cvZcv5cv2cv3cv2cvZcv4cv5cv5cv5cv2cv2cv2cv5cv2cv2cv2cv2cv5cvZcvZcv5cv4cwicvMcwjcwkcwlcwmcwncwocwpcwqcwrcwscwt.zW", +"cwucwvcwwcwxcwy#DL.BK.tJ#vW#v1#vW.Fg.Ev.tJ.uR#vW.xU#v0.xU#v0#vZ#v0#RkcwzcwA.UB.N4.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON#61#yycwBcwCcwDcwE.L5cwFcwGcwHa4#b3UcwIa37cwJcwKcwL#xPawh#R3acucp.aKj#UXaZtcwMcwNcwOaMz#7z.EOapWcuaaPybNpbV0bU5bA2cwPbW4cwQchicsPcwRcwScrNcwTcwUcwVcuhcrNcnIcwWcwXcwYcwZcw0cw1cw2cdxcpnbeob69cw3cuucw4by8bOpb1faBgbSIbSHbSIbhsbrkcw5cw6cw7cw8cw9cx.cx#cxacxbcxccxdcxecxfcxgcxhcxicxjbt.cxkcxlcxmcxncxocxpcxqcxrcxscxtcxucxvcxwcxxcxycxzcxAaEj#oTaqtatjaS5#maaqw#tfcxBcxCaBkbp5.f..u3.ME.io.zTcsvcxDcxEcv.cxFcxGcnrcdubYScsEbxtcxHcxIcxJcqdcp6cxKcnwcqbcqdcxLcxMcxNcxOcxPcxQcxRcxScxTcxUcrNcxVcxWcbtcdGcl#cl.cxXcxYcxZcx0cx1cx2cx3cx4cx5anecx6ahKa.LasKakFb1qcx7cx8cx9#4qcy.cy#cya#UA#RLct.cybcyccbEcgecydcye#ACbGFcyf#wicygcyhbVH#MP#v5#Aj#yB.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON#v6#FL#v6.N4a8PcyibZq#DRbLbaNIaWWbwebQ2cyjcykb5Tb3tcylbwhcymcyncyocypcyqcyrcyscytcyucyvamPbLecywbg1cyxaU4cyycyxcyzbg1aU4cymaU4cyybylbylbylaGyaGybylaGyaX9aX9cyybyscyAcyBa04cyCa04cyDcyEcyFcymcyCaGybylbylaGybylaGybylbylbylaGyaGyaGybylbylbylaGybylbylbylbylaGybylbylaGycyCaX9aGycyGcyHbGRcyIcyJcyKcyLcyMbXpcyN#HgcyO", +"cyPcyQaX6cyRaDvbt5.Ey#vV#yG.xU#Og#v1#Og#vX.Ey#vV.xU#yG.xU#v0#vZ#yH#vVcyScoX#v4.N4.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON#34#yBcyTcyUcyVc#WcyW.KJ#oncwGcyXcyYcyZcy0cy1cy2cy3aBHcy4#Vd#Pucy5#O8cy6cy7cy8a#m#4CaVwasQaAYcy9bHxb0bbV0bTSbJNb5fcz.cafceYcz#czacqocnIcnKczbcufcuhce0csPcwWczcczccwXcqocmEczdczecbccbeczfczgczhcziczjcfScbdczkb67bA7bpubSHcpob28aBaczlczmcznczoczpczqczrczscztczuczvczwczxczyczzczAczBczCczDczEczFczGczHczIczJbxnczKczLczMczNczOczPczQczRczSav4atkatkanL#oTatkaBuaBwaqtczTczUczVczWczXcp3#r.czYczZcz0aP3a5ecnrcfOcz1cz2cz3bxtcxIcz3cxIaM1cnxcq#cnvcz2bpvcz4cz5cz6cz7cxPcz8cz9cA.cA#cAacmvcAbcAccAdccwcAecAfcAgcAhcAicAjcAkcAlaAZabRakFakFahLahQapTaVuapLbQLc#bcx8bW9cAm#4t#OLcAn#OR#OHcAocApcAqcgecArcAs#wm#wo#wocAtcAucAvcAwatU.XQ#Hh#Cg#yD.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON#Ch#Ch#v6.N4a8PctdcAx#DRbLbaNIbAjbMXcAy#DQ#2E.EycAzcAAcABbwecACcADcAEcAFcAGcAHcAIciD.4AaiN#0IcAJcAKbJkbZDbRlcALbAwcAKbJjcAM#z9b#OcAN.Dp.DpcANcAN.Dp.DpcANbZAcAKbZAbVBcAKcAKcANcAOcAKbVBcAPcAN.Dp.Dp.Dp.Dp.Dp.Dp.Dp.Dp.Dp.DpcANcANcAN.Dp.Dp.DpcAN.Dp.Dp.Dp.Dp.Dp.Dp.Dp.Dp.DpcANbZA#yI#yIcAKbZAbZAcAQbZBcAKb#OcARbspcAS", +"cATcAUa95cAVbAAb3J.BK.xy.BI#DQ#Hf.BPc#Oc#O#FP.xD#Og.xU#yG#v0.xU#v0#Rka#Sces.UB.N4.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON#2B.XQafQcAWcAXcAYcAZcA0a4#cA1#oncyXcA2cA3aHD#A7cA4aBHayQ#Sh#Mdait#7OcA5#LJ#IhcA6a.MbbkaMEaeScA7cA8aMGbRHbZ.bJOcagcA9bKPcB.b38cwWcmEcB#cBaczbce0cmvcnJcqocbkcwZcmEczacqocBbcbebOpby2cdycBccBdcBecBfcBgb5ac.WbpubSHaBgb5#bSHcpocpobY0cj8cBhchscBicBjcBkcBlcBmcBncBocBpcBqcBrcBscBtcBucBvcBwcr7cBxcBycBzcBAcBBcBCcBDcBEcBFcBGcBHaZccBIcBJcBKcBLatkayAav4cBMaBwaBuaP7#tfayE#oC.MDcBN#nqcBO#qzcBPcu9cu9cBQcBRbYTcdubWRa2#aK#ckScvecxKcBScqccsDcBTcqgcBUcBVcqdcBWcnucBXcBYcBZcB0cB1cB2cB3cB4cB5cpfcB6chgcB7cnOcB8cB9cC.cC#cCacCbcCcaGPap1aGTahNaA0apUaeRavEapQabNcCdcCecCfcCgcCh#LhcvDcy##UxcCicCjcAqcs8cCkcClcCm#wq#AycCncCocCpcCq#Aj#Hh#0J#2B#yA.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON#v6#Ch#v6.N4#yCcCrcCs#DRbLbaNIcCtbMXcCu#OgbAq#W9cCvcCv#W9boIcCwcCxcCycCzcCAcCB#StcCC.FM#X.cCDcCEatWcCF#9YcCGcCG#Rk#vZaAz#9Y.xU.xU#v0#yH#yH#yH#yH#yH#yH#yH#Ad#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#Ad#yH#yH#yH#yH#yH#yH#yH#yHalraO0cCHcCI", +"cCJcCKcCLbCscCM.sQcCN.gp#PY#DO#DObCTcCO#FR#PY.BP#Hf#v0.xU#v0#vZ#yH#RkcCPcCQ.UB.N4.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON#MPbjRaU6#n4cCRcCScCTcCUb3Ucg6co6cCVcCWcCXcCYcy1bC3cCZ#xQ#Sh#PuatBaKkcC0cC1cC2cC3bOH#7zaGUaGTcA8aQ3bLCaPxbTRcC4cutcC5cC6bKPb6acmEcqoculcwSczbcpicmtcC7culcsPcpkcbkcC8cC9cD.bw5b29cD#cDab7#cDbcDccDdcfUc.XczkbQwczkbQwaBgbSHb28cpob5#b67cDecDfcDgcDhcDicDjcDkcDlcDmcDncDocDpcDqbF1cDrcDscDtcDucDvcDwcDxcDycDzcDAcDBcDCcDDcDEcDFc.VcDGaBvcDHcDIayAav5ayAav6av7aqtaqw.BC.dX.aAcDJ.RZQtO#qzcDKczYczYcDLcDMcDNcz1bWRaV1cdrcqacnpcz2cfMcDOcDPcxIcDQcDRcDScDTcqbcDOcnwcDUcxPcDVa1qbHEcDWcDXcqmcDYcqpcDZccrccscD0b9ScD1cD2cD3cD4cD5cD6aJGaMzaJJ#4BaeP#GiaeTapSahFabIcD7cD8cD9cE.cE##LgcvDcEa#OJcEbcEccyccEdcEecEf#wmcEgcEhcEicEjcEkcEl#AjamQ#yB#Ce#yx.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON#v6#FL#v6.N4aZObZmbuhaTMbLbaNIcEmbwlbyC#HfbAq#W9cCvcEnbAnafScEo#RCcEp#Yn#u5#q5cEqb1xcEr.Fe#vYcEsacSatW#v1#MQ#Ab#yH#yG.xU#yH#yG.xU#v0#v0#yH#v0#v0#yH#v0#v0#v0#v0#v0#v0#v0#v0#v0#v0#v0#v0#v0#v0#v0#v0#v0#v0#v0#v0#v0#v0#v0#v0#v0#v0#v0#v0#v0#v0#v0#v0#v0#v0#v0#v0#v0#v0#v0#v0#v0#v0#v0#v0#v0boRaiN#v0#v0#v0boM#R.cEtcEu", +"cCJcCKcEvb9fcEwb9zcEx.smaef#97#yI.tJc#O.sw#Jp.xT#yG#v0.xU#v0#vZ#yH#vVcEyces#v4.N4.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON#yA#yz#MPa05cEzcCRcmicEAcEBceDcrCct7buscECcEDcEE#A3cEFcEG#YHatB#Sh#ShaHycEH.2RcwNcEI#1naGPcjLcEJahKch.cEKaPxbNqbyUcupcrVcELbQzcagcEMcwZcB#cwSczbcmtcENcC7cuncEOcEPcEQcwZcBbcERbKFbY4cESb82cETcEUcEUcfUcbbc.XbY3bs3bs3c.Wb5#b67bWWaMUcEVbGjcEWcDfbntcducEXcuAcEYcEZcE0cE1cE2cE3cE3cE4cE5cE6cE7cE8cE9cF.cF#cFacFbcFccFdcdnbzJcFe#L9cFfbk1cu7cFgcFhcFiav6av6ayA#ma#rU.uBQtC.lt.u3.GrcBO.hob6ZcFjczYczZcFkbzPcnrbYScFlcb.ckRcFmcp6cnxcFncFocFpcsGcFqcsxcFrcDPcfMcFscFtcFucFvcFwcFxcFycFzcFAcFBcB4cFCcFDccwcctcFEcFFcFGcFHcFIcFJcFKcFLanncFMcFNaJLapWbXZavFahGasHcFOc#bcFPcFQcFR#7ocyacFScFTcFTcFUcFVcqMcbCcEdcFWcFXcFX#wtcFYcFZcF0cF1cF2cF1#yy#FKaKE.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON#Ch#Ch#v6.N4#yCcCraWY#DRbLbaNI.odbwh.zW#HfbCx#W9cF3cF4bAncF5cF6angcF7cF8cF9cG..2RcG#.X9aq1#Ae#vYaiN#yH.xU.xU#v1#yH.xU#v0#vV#v0.xU#v1#vV#yH#vV#vV#v1#v1#yG.xU.xU.xU.xU#v0#v0#v0#v0#v0#v0#v0#v0#v0#v0#v0#v0#v0#v0#v0#v0#v0#v0#v0#v0#v0#v0#v0#v0#v0#v0#v0#v0#v0#v0#v0#v0#v0#v0#v0#v0#v0#v0#v0boRaiN#v0#v0#v0#6Q#KHcGacGb", +"cGccGdcGecGfcGgcGh#MTcCO.Ew#X.#vU#A#.sK#96cCO.BP#Og#v0#yG#v0.xU#v0#RkcGices.UB.N4.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON#2B#2B#OkaR2cGjcGkaHCcGlcGmcciceDcGnb3VcGo.1tcGpcGqcGrcGsco8cp.acuatBa5r#LJcGt#LBa8kayjcGuae3avGbndbyUb5icGvb37bD.cGwcGxcGycGzcpjcwScuncwScudcEOcB#cB#cuncrTcrTcGAcA.cGBcGCbFpb68cD#cGDcGDcGEcGEb5dbOpcbabw5bhobhob1fbY3bpucpob28cpocEVcGFbOqcGGcGHas2cGIcGJcGKcGLaZacw7cGMcGNcGOcGPcGQcGRcGScGTcGUcGVcGWcGXcGYcGZcG0cG1cG2cG3cG4ayBaNdcG5cG6av7cxBayAatjatpaEqcG7QtA.lQ.lB.xRQtO#qzcDKczYcFjcz0cG8cG9cnrbYScH.c.PcH#bDZcHacsEcFscDRa2#cnAcFqcHbcHccHdcp9cHecHfcHgcHhcHicHjbHEbHIcHkcHlcHmcHncHocHpcHqcf1cHrcHscHtcHucHvcHwcHxcHycFNcHzcHAbIPaePcHBabNcHCb31cHDcHE#EkcHFcHGcqIcHH#OIcFT#UxcHIcHJcEdcbDcHKcHLcHMcHN#wlcHOcHPcHQ#v5a.#amQamQ#FKaKE.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON#Ch#Ch#v6.N4.XQcCraWY#DRbLbaNI.odbXA.zW#OgbAq#W9cF3cHR#W9cHScHTcHUcHVcHWcHXcHYcHZcH0cH1#RkbmScH2.xU#Ck#v0#Og.zW.zW#yG#vU.Fg#DP.xU.v5#Aa#Og#DO#DO#Hf#0I#Og.xU#yG#yG#v0#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yHbdTcH2bXicH3", +"cH4cH5cH6cH7cH8cH9buibqT#FO#KS#DP.BPbJwcI.brT.xD#Og.xU#yG#vZ#vZ#yH#RkcEycwA.UB.N4.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON#61#FKaY.cI#cIa#EWcIbcIccIdcIebp.cchcIfcIgcIhcIi.9dcIjcIk#Pt#IKayQ#R3aHyaNocGtcIlcImcIna4pb.ta7kcpcb7ebOybW1bW2a0ccIobMzcIpbppcIqcmvcpicugcwUcbkcwZcukcrTcrRcufcIrcIscItcIucIvcIwb5ccIxb82czdcIybOpb68c.0by4cbcb3.cbdcEVbSIb28aMUcpoczkcrYbQsb1ecGHcGGcIzbWRcIAcfOb05cIBcDTcnvcICcIDcIEcIFcIGbxtcIHaV9bIscIIcIIbOkayBcIJayBaEtaEsav6av6aBucIKcILcIMaieav8aif.uDcINcIOcIPcIQcBO#qzcDKb6ZcIRaP4aP3aP2cIScITaHmcIUcIVcIWb8X.YHcqbcIXbxtcnocIYaP3cIBcu4cIZcI0cI1cI0cI2cI3cxQcI4cI5cI6cI6cpicDXcI7cAacI8ccxcI9chhcJ.cHscJ#cJacqzcJbcCacJccD2cAhcFIbcIcJdcitcn1cJecJfcJgcJhcJicJjcJkcJlcFT#UxcvDcHHcFVcEdcJmcEdcJncJocJpcJqcJrcJscJtc#j#DT.UC#yy#Ce#yx.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON#v6#Ch#Ch.N4.XQcJubZpaTM#5GaNI.odbwe.zW#Ogaba#W9bCvcEn#W9#yGcJvcJwcJxcJycJzcJAbC9cJBcJC#RbcJDaiO#0I#6Z#vV#Hf.uTaefak#.tJ.Df.Di#DPbCT.BI.uTbCTcJE#FP#A##DO#v1#Og#yG#v0#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yHbst#v0aRTcJFcJG", +"cJHcJIbwuc#vcJJcJK.v3.v4#T5#v1#yH.zW.uL.BQ.BK.xU.xU.xU#yG.xU#vZ#yHaUWbyjcJL#v4.N4.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON#34a..#OjcJMcJNcJOcchcJPcJQco7aPba68cmicJRcJScJT#ilcJUcJVcJWatz#IKcmncJXaNo#O5cJY#O3aJVbkcaA7buEb.scJZcJ0cJ1cJ2cJ3bOxbQybDdcj1ceZcmycJ4cEOcwXcJ5cpjcmDcrOcJ6cJ7cJ8cJ9cxQcK.cK#b69bc2cKaaS0b3bby2cKbcdxb3bc.XcbcbhobY3bA7aMUb28cpoaMUbQwc.XakUavZayravYcmMcfOcKccIScKdcKecKfcmMcKgbuQcb#cfNcKhcp7cv#bIsaKdb40aBjb8TaBwayAav5av5aBwav6av6av5av4#sgayDaEqaif.Dq.dgcKi.wXcKj.76cKkcKlafe#q8cFjcKmcKhcKncxGaHkcKocIWcKpcKqbzAcKrcKscKtcKucKtcKkcnrcKvcKwcKxcKycKzcKAcKBcKCcKDcKEcKFcq.cKGce0cEOcKHcxUcKIcKJcvvcvvcKKcqtcKLcKMcKNcxZcKOcKPcKQcKRcKScKTcvBcbAcKUcKVb1scKWcKXcKYcKZcKXcK0cK1#OIcAncK2cycct.cbEcK3cK4cK5cJq#FqcK6cK7cK8cK9.UC#MP#yy#CeaKE.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON#v6#Ch#v6.N4a8PcL.buh#DR#2Cb3s.odbwe.zW#Ogaba#W9cL#bAq#W9boNcLa#aB#pKcLbcLccLdcLecLfcLgb3t.xxcLh.tD#Hf#yG#0I.zW#96.Ev.Exaef#A#.v4#0G#FP#MR.gp.cR.sj#MU#0I#Ab#yG.xU#v0#v0#v0#v0#v0#v0#v0#v0#v0#v0#v0#v0#v0#v0#v0#v0#v0#v0#v0#v0#v0#v0#v0#v0#v0#v0#v0#v0#v0#v0#v0#v0#v0#v0#v0#v0#v0#v0#v0#v0#v0#v0#v0#v0aiNcjicLibmucLj", +"cLkcLlbyAcLmcLnaJh#vVbEs#yH.xU.xU#vV.Ey.Ey#97#v1#yH#v0#2D#Ad#vZ#yHblUbyjcLo.UB.N4.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON#34#34.UCcJMcLpa68cLqcLrcwLa.fcLsc#XaGCcLtcLucLvcLwcLxcLycLzaBH#xQ#xQa2lcLAcLB#O3a8ka7oc.7bA3byVaGZb6bcD.bW0bY8cLCb1obUZcLDcLEcLFcugcrSczccmEcsPcnKcmvcphcLGcLHcLIcLJcKEcLKcI6cLLcLMcLNbw5b29bQwbhob3bc.0b1fcfTcbdbQwcpob28bSIbSIaMUbDgb3.aD7bQtayub1eaPWbWRcxGckIbWQcLObGbcLPcLQaHocDNcszbUMcIIb08bvgbOjca5cLRcLSatjcFgayAav5av5aBwayA#oTanMaEqaEqaEr.AU.tpcLTanAcfLcnncKkcLUcLVcKlcLWcBQcLXaWccKccdsb62b47c.RaM9ckTcfNcdtcLYcLZcL0cBScL1cGLbYScL2cL3cL4cL5cL6bFocL7cfZcI4cL8cB2cKGcwVcrNczccDYcL9cM.cM#csUcMacMbcqucMccnXcKScMdcMecMfcx0cHwcMgaPpcMhcMibRBcHFcMjcKXcKZcKZcMk#OJ#OIcMlcMmcMncyccvFcbEcMocMpcMq#Aw#FqcMr#i5b7VbQ0#MP.UC#yy#CeaKE.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON#v6#Ch.ON.N4a8PcMscMt#DR#5Gb3s.odbwe.zW#Ogaba#W9cMucMv#W9cMwcMxcMycMzcMAcMBcMCcMDcMEc#FakacMFcMGcMHbGU.zW.Di.BV.sJaef#DP.Ey.FiaO8.zW.zW#33aEpaNg.xV#SH#yI#MQ#yG#v0#v0#v0#v0#v0#v0#v0#v0#v0#v0#v0#v0#v0#v0#v0#v0#v0#v0#v0#v0#v0#v0#v0#v0#v0#v0#v0#v0#v0#v0#v0#v0#v0#v0#v0#v0#v0#v0#v0#v0#v0#v0#v0#v0#v0aiNbubbqKcAzaE0", +"crucMIcMJcMKcMLcMMboM#Ad#KK.xU#yG.xU#v0#yH#v0.xU#v0.xU#v0#AdboV#yHblUbyjcLocoY.N4.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON#34#34.XQcMNcMOcIecMPaKMcJQcMQcMR#66cMScMTcMUcMV#PbcMWcLy##ncMX#R3cp.#LIcEH#UTcMYcMZbU6a7na7obbnbA3chmbOxcM0ceWbSLbMCbV1bDdcM1cGzcM2cM3cudcufcrOcM4cmzb94cnKcA.cM5cnEcM6cM7cM8cbfcbgcbabQwaBgbY4cdvcmKczkb1gbKFb81bSHaMUaBgcEVb5#b5#bY3b1favWatbbOqatacM9cnrcdubWRcLQcIIbGbbItcN.cN#bGbb08bxvbOjca5b41cfHcfHckMcNacNbcFhav5aBwayAaqtatpaqy.BFaEq#uF.hn.aC.mJcNccNdcNe#r.#r.#r.cNfafecNgcLXcNhbs2cNicH#b8WaK#cKgcnqaP2cnqaK#cNjcNkcNlcNmcp7cNnbYTcDTcNocKBcI0aPTcNpcfZcfZcI4cNqcB0cNrcrTcmDcpkcNscNtcNucsTcNvcNwcNxcNycNzcFKcNAcNBcNBcNCcMecNDcNEcNF.vbcNG#4vcNHcNIcNIcKYcNJcNK#OJ#OIcMmcNLcNMcNNcNOcbE#7.cHNcJpcJq#y#cNPcNQcNRc#j.UC#Cf#yy#CeaKE.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON#v6#Ch#v6.N4#yCcNScNT#DR#5Gb3s.odbwe.zW#OgbAq#W9ab#ab##W9cNUcNVcNWcNXcNYcNZcN0cN1cN2cN3bAwcN4cN5cN6#Aa.tA.sJa35#32aMec#O#32.uR.tJaef.Eq.xx#MS#6YaJobui#yI#vV#yG#v0#v0#v0#v0#v0#v0#v0#v0#v0#v0#v0#v0#v0#v0#v0#v0#v0#v0#v0#v0#v0#v0#v0#v0#v0#v0#v0#v0#v0#v0#v0#v0#v0#v0#v0#v0#v0#v0#v0#v0#v0#v0#v0#v0#v0aiNaiNcN7cN8cN9", +"cO.cO#cOacObcOcbo0cOd#vZ#Ck#Og#yG.xU#v0.xU#v1.xU#Og#yG.xU#v0boV#yH#RkcOecLocoY.N4.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON#yDaWR#yC.ONcOfcmbaW7cOgcOhaAIatY#0K#0LcOicOjcOkcOlcOmcOncOocIk#P.cOpaiqcOqcOrcOscOtb4#aMNaMNbrbcOub0echmbOwbMAbKObMBchmcGzbQAbMCcC5cmCcxVcOvcOwcOxcOycOzcOAcvicDdc.0cOBcOCcGEcdvb1fcKbbQwbY4cD#b3bb81aBgbKFb68cKbbWWbA7bKFb29czkbhob69cfQbwZbWVcODbzQaywcz1cOEcLOcOFcOGaElbItbItbItcIIb6YaBjca5b41b41ca5ca5b06b6XcOHatlav4#oTaqxatrcOIbrS.BF.zv.dX.sYcOJ.ME.0ZcOK#r.cKk#r.cNfcOLcOMcONcOOb42cOPcOQcORaHkcKhcOSa5ebs2ckTcOTcOUcGTcOVaHmcNncrZcnrcOWcKAcL5cOXcL6cKzcOYcOCcI6cOZcsLcO0cudcO1cO2cO3cO4cO5cO6cO7cO8cO9cP.cP#cPacJbcPbcPccPccPdcPecPfcNFcs4#1hcPgcPhcPicKYcPjcPkcNKcPlcy#cy#cPmcPmcPncFVcPo#wwcPpcPqcPrcPscPt#I7bLocPu#Zf#MO#yy#CeaKE.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON#v6#Ch#v6.N4#yCcNScNT#DR#5Gb3s.odbwe.zW#OgbAq#W9cEncEncPvbCLcPwcyucPxcPycPzcPAcPBcPCbgVblU#DFboV#Hfbm..xT.sx#0F.BHcI.bCT#Jp.v5#yHcJE.Dg#vX#Aa.Ep#DQ#DP#v1#v1#v1#vV#vV#vV#vV#vV#vV#vV#vV#vV#vV#vV#vV#vV#vV#vV#vV#vV#vV#vV#vV#vV#vV#vV#vV#vV#vV#vV#vV#vV#vV#vV#vV#vV#vV#vV#vV#vV#vV#vV#vV#vV#vV#vV#vV#vV#3TaP.aa4cPDcPE", +"cPFcPGcPHcPIcPJ.74#vTcAOaiN#yG#yG.xU#Aa.Diaeg.xU#yG#yG.xU#v0boV#yH#RkcOecLocoY.N4.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.N4#yz#yC#FMcPKcPLaW7cOgcPMavq#0McMR#37#37cPNcPOcrFct7#.hcLycPPcPQatz#R1cPRcPSankaJGcPTaJPbrbaG0anobQycPUbKOchmbQAbMCbU0b86b1ncPVcPWby2cPXcfScD#cPYcC5cdyb7#cPZckWby2cP0cP1cP2aHibQwcEVcfTb3bb3bbs3bSHcbdbKFbY3bA7b28b1gcP3b1fb1gcIwcP4cP5cJxatbcP6cOFcfObWRbp0cP7cP8bIsb6YaElcIIbGbcIIb08b6YbvgaBjc.Mb6XaV9cfHcP9cQ.cQ#cQaaV6aV6atraV6cQb#bE.PycQccQd.0ocp4cQe#pBcKkcKkcLUcQfcQgcQhcQicQjcQkcQlcQmcQncQocQpcQqcnqckScxKcQrcQscQtcQucQibk0cducw5cQvcQwcKBaPScQxcQycKCcQzcI5cB0cNrchpcwTcQAc#9cQBcQCcQDcsYcQEcQFcsYcJ#cQGcAhcQHcQIb89aDPcQJaAYcQKcbA#1h#XNcqHcQLcNIcKZcPjcPkcNKcQMcQNcQOcPmcPmcPncFVcQPcQQcQRcQScQTcPscPtcQUcQVcQW#Cf#MO#yy#CeaKE.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON#v6#Ch#v6.N4#yCcNScNT#DR#5Gb3s.odbwe.zW#OgbAq#W9abaababAqbqRbAqcCvcCvabaabacCvababCxbqRbAqbAqbAqbAqaba#v1ak#aeg#T5#DQ.xU.xU#KS.Fe#v0#yHbqRcCvcCvcCvababqRbqRbCxbCxbCxbCxbCxbCxbCxbCxbCxbCxbCxbCxbCxbCxbCxbCxbCxbCxbCxbCxbCxbCxbCxbCxbCxbCxbCxbCxbCxbCxbCxbCxbCxbCxbCxbCxbCxbCxbCxbCxbCxbCxbCxbCxbCxbCxbCxbqRcQXcCv.Ye", +"cQYcQZcQ0cQ1cQ2cQ3cQ4cQ5cQ6#Ae#Ad#vX.uZ#32.Eq#vW.xU#yG#Og.xU#vZ#yHaUWcQ7cLocQ8.N4.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.N4#yz#OjaJq#hpcQ9cR.cR#cjzbHrcMScMRcMRcMScRaco7crGc#WcRbcLwcIk#BB#Pt#O8#LIcRcaJHayfaG1bpkaMKaYwa7qbMzcRdbSLb86ccCccCcLCbU0b79cRecbecPYcPYcbeaS0cEScRfcGDbB.cbgb5ab5db5cb5acRgbQwbY3cfTcRhaS0bhobSHcEVbs3b68cEVcpobQwcfTby2cP3b29c.Wbs3aEfaBhataayubtrcRibYScz1cGLcOEaElcRjcIIbGbbItb08b07aBjca5a5fbxFb42aS9bp6cRkcRlcRmcRmcOIaV6cRncRo.hq.lWcOJcIQcnn.hk.hk.hlcRp#r.#r#aP4cRqcRrcRscRt.#XcRua1XbxqcRvcRwcRxcKgaN.aM9cFfcRycRzcRAcRBbkZbk0cLPcRCcRDcREcNpcRFcKBcRGcxQcsKcIvcRHcI6cRIcnJcRJclacRKcKScHwcRLcMccRMcRNcROcRPcKNcRQcRRanfayeangaA0cRScRTcRUcircRVcJjcRWcRXcRXcKXcNJcQMcQNcK2cPmcRYcRZcR0cR1cR2cR3cR4cJrcR5cR6cR7bLqcR8#yB.UC#yy#CeaKE.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON#v6#Ch#v6.N4#yCcNScNT#DR#5Gb3s.odbweb1D.wcbAq#W9abacEnbCxbAqcCvcR9#W9#W9aU0cS.aU0cCvcS#abacCvcCvcCvbAqabacCvabaabacCvcCvcCvbAqbAqcCvababAqbAqbAqcCvcCvabaabaabaabaabaabaabaabaabaabaabaabaabaabaabaabaabaabaabaabaabaabaabaabaabaabaabaabaabaabaabaabaabaabaabaabaabaabaabaabaabaabaabaabaabaabaabaabaabaabacSa#W9cSb", +"cSccSdc#M.7UcSecSfcSgcShahh#W2cjj.xB.Evaeg.uL#Aa#v0.xU.xU#vZ#Ae#yH#RkbZpcLocoY.N4.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.N4.N4#Ojcgl#e.cSicSjcSkcSlcSmcSncMRatYceGaPbaMib.bco7cSoaEB#YH#xQcSp#O9#O8cSqaMDaSscSrbngaMJa4pcw2b1pb1nbWZcLCcB.bKPbMCbQzbKNbSKcxNcBgcbeb69b5dcRfbB.cBccmKcD#cdycM8cSscEVbY3bKFby2b84cdwb3.aBgaBgb81bY3cEVbSIbA7bs3bhobs3b68b81bpubSIayoavUavZavUavUcKccxGaWccz1bOicLPcStb08b07aBjaV9cSucSvcSwbxDcSxcFkbzObzOcSycSzcSAcSBcSAcOIcSC.hXaV3.ghQtFcdocSD#nrav1bMucsvcKl#uMbxDcSEcSFcSGcSHcSIcSJcSKcSLcSMcSNcqbaK.cxFbWQcSOcSPcSQcSRcSScSTcSUbp0cSVcSWcI5cL4cSXcSYcSZcS0cIrcK.cI4cqlcS1cS2cS3cS4cQCcS5cS6cHwcS7cRLcRLcJ#cRMcROcS8cx5cS9avCahPapQcT.#UE#4vcT##XMcTacTbcTccKZcTdcTecTfcQOcTgcThcTicPmcTjcTkcTlcTmcTncHOcR4cQScK7cQVbQ0.UCbAhamQ#CeaKE.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON#Ch#Ch#v6.N4azbcMscNT#DR#5Gb3s.odbwe.zWbmSbAq#W9cCvababAqabaabaab#cCvcCvbCvbCvbCvabaabaabaabaabaabaabacCvabaabacCvababAqabaabaabacCv#W9bAqbAqabaabaabaabaabaabaabaabaabaabaabaabaabaabaabaabaabaabaabaabaabaabaabaabaabaabaabaabaabaabaabaabaabaabaabaabaabaabaabaabaabaabaabaabaabaabaabaabaabaabaabaabaabacF4#W9cTo", +"cTpbJpcTqcTrcTscTtcTu.FOcTvafTbZAcTw#vWcCv.Fgapl.xU#v0#v0#v0aO0#yH#RkcTxcJLcoY.UC.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.N4#yD.XQcMNcTyaMibjUcTzcTAcTBcTBaAJaCCceFcCSaPbcTCcPMcTDcTE#g9aqJcTFcTFbcibr4cTG#1taGZbhjbkdaMHaGYcTHbY8bW0bSLcM0cTIbKMchocTJcTKcPYcRhcbecfQcEScTLcRhcbacj5b82cM8by4cbdb1fcIwcSscdwbw5cEVb5#b5#bpubQwcKbbSIb67bQwc.WczkbpubOrc.Wb81bTVaJ8cTMavXcTNcTObYScGJbWRcfOcnraywbzPanHcSwcTPcTQcTRcFkcTRcTScTTcTSbxCbxC.zy.BCcTUatocSA#eycTVcTW.hZ.#I.#A.44.hk#qwaT.#tFanDcTTbxFb6YcTXcTYcTZcSGcT0cSKcT1cT2cT3bBNcT4aWccP7cT5cT6cT7cT8cT9cGWcU.cLPcOEcU#bhscI5cUacQxcUbcUccUdcJ9cUecqkcUfcUgcnIcHpc#7cUhcUicHwcHwcx0cUjcUkcUlcUmcUncKMcUoakA#1icUpcUqcUrcUscUtcUt#1ecUucNJcUvcUwcUxcUycTecUzcUAcPmcUBcUCcUDcUEcUFcUGcUHcUIcUJcUKcUL#VscUM#AjcUN#yy#Ce#yx.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON#v6#FL#Ch.N4b1zcUOcNT#DR#5Gb3s.odbwebGU#yGbCx#W9#W9cCvcCvcCvcCvcCvcCvcCvcCvcCvcCvcCvcCvcCvcCvcCvcCvcCvcCvcCvcCvcCvcCvcCvcCvcCvcCvcCv#W9cCvcCvcCvcCvcCvcCvcCvcCvcCvcCvcCvcCvcCvcCvcCvcCvcCvcCvcCvcCvcCvcCvcCvcCvcCvcCvcCvcCvcCvcCvcCvcCvcCvcCvcCvcCvcCvcCvcCvcCvcCvcCvcCvcCvcCvcCvcCvcCvcCvcCvcCvcCvcCvcCvcCvcUP#W9#FO", +"cUQcURcUScUTcUUbCmcUV.Dm#FO#v0#v0bO6.Fgapl.tJ#vX#yG.xU.xU#vZboV#yH#vVbZpcUWcQ8.UC.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.N4#yDb5rbshcUXa.g#AmcUYcUZaCIbiqcjscU0c#VcCSaJtcCSb5ZcrHcU1acs#xR#xRaNqcU2cU3cy6bxUcU4cU5bEacU6cU7b79cU8bQAceWcU9cV.bV2cV#cdxbGicdxcfUci.cLNb5dby8bw5cfQb7#cBccj5cbaby2cbacj5cdvb3.bA7aMUaMUb67b67b67b28bWWcpobA7b5#cKbbQwbQtb29cVacVbch7cuwcduaBfcVccVdcVecDNaM8a2#cVfbzOcRqcVgcBQcVhcVicVicOMcVjcVkcVlcTTcVgcVmcVncVocVp.#dcVqcVr.dEcVs.hecVtcVucVvcVwcVxcVicSwbQmb08aV7cVycVz#ulcVAcVBcVCcVDcVEcVFcVGbUMcVHcVIcSOcVJcVKcVLbOgcVMaWacOFbWQaP0cVNcVOcI0cVPcVQcBZcVRcVScIscpkbeocVTcVUc#8cPecVVcVWcUicUicUlcVXcVXcVYbfJcVZcV0cV1cV2avBakBcV3cV4cV5cV6cV7#LocV8cV9cW.cW#cWacWbcWccWdcTfcPmcWecWfcWgcWhcWicWjcWkcWlcWmcQR#BVcWn#Ol#Oj#Hh#yy#CeaKE.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON#v6#Ch#v6.N4cbKcUObyj#DR#5Gb3sbAjbwl.zW#yGbAq#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9bAncWo#W9cWp", +"cWqcWrcWscWtcWu#9W#vZbZzak##Ck#yH#Og#AcaO9#Aa#Hf.xU#yG#Ck.xUboV#v0#vVbZpcgmcoY.N4.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.N4.N4a8P.N4cWv#DYb#HbPlcg3cWwcceaWQcWxaPdaPdcCSaGCcrGcWy#Shafvacs##uak8ak8cWz#7OcWAa1fcWBcWCcWDcWEcj1bIJcWFbMAcLFcWGc.XcWHcdxc.XcfScPYcfQb3bb5ac.0cBccGDcdyb84cWIcbacWIb84c.0b68bWWbWWb28b5.aPWbRMb5.b5.b5.b28bSIcKbcVbbQtbQtaHicWJcuwcfOcNnaM4bYSckIcLXcTQcTScv.cWKcWL#qF#rF#pScWMcWNcWOcWPcWQcWRcWScWTch2cWUcWVcLb#cTcWWcVqcWX.iHcVs#b7#b7cWYcWZcW0cW1cW2cW3aHrbMscWK.0qcW4cW5cWUczRcVBcW6cW7b6ZcG9cW8cW9cX.cX#cSObxucXacXbcT1cXccXdbUMcOEbWQcHbcsBcL3cXecXfcL7cxPcxOcLJcXgcctcXhcXicS4ceTcXjcXjcMecUlcXkcXlcXmahMapXaeJbVWcRSbRBbRBbXScitcXncXocXocXpcXqcRXcXrcXscXtcXucXvcXwcXxcXycQNcXzcXAcXBcXCcXBcXDcUEcXEcXFcXGcXHcXIcXJ.UCamQamQ#CeaKE.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON#Ch#Ch#v6.N4a8PcMscMt#DR#2Cb3s.odbwe.zW#yGaba#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9cXKcXL#W9.TH", +"cSccXMcXNbJ.cXOboI#2D#yH.xU#Ck.xU#v0.xU#Og#yG#v0.xU#v0#yH#RiboV#v1a65bZpciHcoY.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.N4.N4atUb7ScXPbLsblzblCcg3cg3cWwcXQcXRc#WcTCcrGcTB#38cXS#IL#BD#FbcXTbcicXUbciaKjcXVbvAae4ae3aPBakScXWcLDcmHcXXcXYbIDbKFb1fcrYc.0cXZcdvcD#cD#cbgb82bB.cIyb69cSscdxby4cmKc.XbQwb5.b5.aMUbWWb5.b5.brkbrkaPWb28cpobA7cKbcRgavZavUat#aB#cX0cvacOScFlckTcnpcv.aV5czZcIRcX1cW0cX2cX3cW0cWM#s5cX4cX5czRczRcVBcX6cX7czRcX8.kWcX9cY..ll.jv#cT#b7.ks.kscY#cYa#s5cT0cYbcYccYdcYecYfcYgcYhcYicQhcYjcWMcW0cYkaywcGZcYla1ScYmcYncYoc.QcYpcYqcr0cYrb08cv#bp0bWQcDPcYscYtcYucUacQycIrcLJcYvcYwcf3cf3cB8cf2cYxcYycPecFKcKOcYzcYAcYBbndang#GiasMcYCcYDcbAcitcYEcYFcYGcYHcYIcYJcJkcYKcYLcYMcYMcYNcYOcYPcXycYQcYRcYScXCcYTcYUcXDcYVcYWcYTcUGcYXcYYcF1#MObAh#yy#CeaKE.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON#Ch#v6#2BbjRcYZ#5I#DRbLbb3sbCpaZPbGU#yGaba#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9cXKcY0#W9.UY", +"cY1cY2cY3cY4cY5atV#yGafS#yG#yG#yG#yG.xU#v0.xU#v0#yG.xU#yH#RiboV#v1a65cY6ciHcoY.UC.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.N4.UCatUcY7cY8bwFcY9cZ.cZ#cZacZbbt2cZccLsatYcSmatYasocZdaita#wa#vaEEaHwbigbciaECcZecZfcZgcZhcZibekcZjcLDcTKcTJcZkcZlcbccrYcSsby4cWIcWIcPYcLNcZmcZmcLNcdwb5acbbcD#cD#b3.bSHaD9b5.aPWaPWbRMb5.b5.brkaPWaMUb67bA7b5#cKbaBgbQuavZbQubOrcZnckTcnpcdsaM9.YHcFjcZo#racLVcLUcZpcWM#rFcZqcZrcT0a1VcZscSFcZtcZucRscQgcZvcZwcZxcZy.glcZz#cTcZAcZBcZCcZCcZDcZqcZEbn0cZFcZGcZHcZIcW1cZJa1VcZK#rFcZLcQfcZMcZNcZOcZPcZQcZRcZScZTcdl.sicZU.f6cZVcZWaElcv#cGLbWQcZXcZYcZZcZ0cZ1cZ2cOYcZ3cZ4cZ5checl#cdFcZ6cZ7cXkcZ8cZ9c0.c0#c0ac0baAZayec0cc0dc0ec0fcdOcAmcbxc0gc0hc0icYIcXpc0jc0kcYKcYLcW.c0lc0mcWdcUCc0nc0oc0pcXCc0qc0rcYUcYTc0sc0tc0uc0vc0w#SF#MObAh#yB#CeaKE.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON#Ch#v6bdZaZOc0x#5I#DRbLbb3sbAjaZPb1D#yGaba#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9cXKcY0#W9.UY", +"c0yc0zc0Ac0Bc0Ccd4#yG#yG#yG.xU#v0.xU#yG.xU.xU#v0.xU#v0#yH#AdboV#yH#Rkc0DciHcoY.UC.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.N4a8P.XQc0Ec0Fc0Ga#IbXIb9EbI9c0HbXgbI9c0IcMSc0Jc0Kasoc0LayQacua#v#8g#UY#UY#UYaNrc0MbcgaJOc0Nc0Oc0PbMCc0QcB.cJZc0Rch9cfRcfQckWcdwcdvb84cBccZmc0ScESb3bby8c.0by8cSsb29aBibRMbWWcpob67bSIbSIbSHbA7bpub5#b5#bQubQwb81bY3as9c0TbIxbUTb.wc0UckSaK#aK#cb#cdraib#tncKlcu9cBQch5c0VcWUcQhcQhcZsc0Wc0Xc0Yc0Za1WcSI.at.cV.cI.kV.dEc00#b7cZCc01c01c02c03c04cX7c05c06c07cSHc08cRtc09c1.c1#cYac1ac1bcX6bItc1cc1dbUMcSJc1ec1fc1gc1hc1ic1jc1kc1lc1mbItbUMcGLbntc1nc1ocOXc1pcUfc1qc1rcBYc1sck8cf2cf1cZ6cdFcl.cifc1tc1ucD2c1vcKQc1wahManhapWbISc1xc1ycitcgccdNc1zc1AcYIc1BcYJc1Cc1DcJicTdcXsc1Ec1Fc1Gc1Hc1Ic1JcXCc1Kc1Lc1Mc0rc1McYUc0sc1Nc1Oc1Pc1Q#HhcCq#T6a..#Ce.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON#v6#FL#v6#yB#CicYZ#5I#DR#5Gb3s.odaZP.zW#yGaba#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9bAnc1R#W9.3l", +"c1Sc1Tc1Uc1Vc1WaAFatV.xU#v0#yH#yH#yH.xU#v0#v0#yH#yH#yH#yH#vZboV#v0#vVcAxciHcoY.N4.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.N4#yC#yC#Cgc1XcAvbMUbNcc1Yc1Zc10c11c12cMRc13c0KcSncLsc14co8#BC#ILc15aTmaECa2k#R2c16br0bNoc17c18c19c2.b7bbSMbW4c2#c2ac2bc2cb1icRhc2dcRfc2ec2fcU8c2gcOzc2hc2iby2by1aPWat.bpuaBgcEVb1gbKFb1fb3.cfTcIwcIwb3.as7aytc2jb1fas7bOoaHac2kc2lc2mcnocdrcqacqacb#c2ncVhch5c2oc2pc2qczRcWUcWUcQhc2rcGVcRsc09c2s.ge.wfc2t.j2.aa.kc.jx.g5c2uc2vc2w#qGc2xc2yc2zc2Aa1V.hlc2Bc2Cc2Dc2Ec2Fc2Gc2Cc2HbzBc2Ic2Jcv#cFfc2Kc2Lc2Mc2Nc2OcQnc2Pc2Qc2Rc2Sc2Tc2UcN.bGbbp0bSyc2jc2VaMZc2WcfZc2Xc2Yc2Zc20c21c22ceOciiceQca.c23c24c25cKPc26cx0c27akDavFahJc28c29c3.cbybRBc3#c3ac1AcXocXpcYJc3bc3cc3dc3ec3fcUzc3gc3hc3ic3jc3kc3lc3mc3nc3oc3pc3qc3rcWjc3sc3tc3ucEl.XQ#Oj#T6aza#61.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON#Ch#Ch#v6aQA#yCc3v#5I#DR#2Cb3sbCpaZPb1D#yGbAq#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9bAncXK#W9c3w", +"c3xc3yc3zc3Ac3BbVt#CkaxZ#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#Ad#AdboV#yH#Rkc3CciHcoY.N4.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON#yz.XQ.XQbqUc3Dc3Ec3FbOYbPgbPgbVJbEpc11c3Gc3HcSnc3Ico7#EHc3J#YHatBcSp#O8aKj#R1#UXc3Kc3Lc3MasUc3NblcaMIa4pc3ObuDcC4c3PceYb1oceWbMBc3QbWZbMDbKPc3RbOxc3ScmHbuHaMTbpobUYc3TbDcc3UcbccrYc3Vc3Vcbac3Wc.Xc3WakUbUSc2lcdxc3Xc3Yc3Zc30c31cb#cb#c3ZaK#aM9cfNcKgcWTc32cVAcT0cZKcYja1WcYjcVAcQhc33c34c2C.amc35c36.ae.#N.#S.#R.#N.kOc2Cc37c38c39c4.aSVaHqc4#c4a.lgc4bc4cc4dc2Fc4ec4fc4g#umcNabItaHrb21bBOc4hc4ic4jc4kc4lc4mc4nc4oc4pc4qbOgc1fc4rc4sc4tbWQc4uc4vc4wc4xc4yc4zcItc4Ac4BcNscEOcuhcuhca#cnOc4CcGuc4DcHxcUlc4Ec4FbAZc4GasLapXc4HaPrc4IcKVcJdcdNc4JcYHc4Kc1Bc4LcYJc4Mc4Nc4Oc4Oc4Pc4Qc4Qc4Rc4Sc4TcYRcYRc4Uc4Vc0rc4Wc4Xc4Yc4Zc40c41cAwc42#yz#yB#JnatT.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON#v6#Ch#v6#T6azbcYZa#S#DR#2Cb3sbCpaZP.zW#yGaba#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9bAnc1R#W9c43", +"c44c45c46c47c48c49#6Zbuaax0#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#AdboV#yH#RkcAxcUWcoY.UC.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.N4#Hh#Hh#Cgc5.bRoc5#c5ac5bc5bbyEc5cbXgbZl#0LcMRcRac#Xc14c5d#R3#IKc5ebihc5faHA#LHc3Jc5gbLCc5hap5avKbyTaPBc5ibU6b.ubKMcuqbUZbKOcB.bY5cagbU0b1nbQzcRdbrdaMTbwVbrdc3TbKKbDdcM1c5jcbbcrYc5kbKFbs3avVavVbMwc5lc3Wc5mc2mc2lc2kckS.YHaM9cdscnpcfNaHkcKgaHmcKgc5nc5oc1#cZqcQgcZGcYjcZKcZrcW1.iJc5pc5qc5r.a..kQ.hy.iJ.#N.#Uc08c5s#umcZqcZKc5tc5ubk0cSvcVuc5vc5wc5xc5yc5z#r7c5Ac5Bc5Cc5Dcdnc5Ec5Fc5GbQjbp1c5HcG0cRxc5Ic5Jc5Kbvbc5Lc5Mc5Nc5Oc1mc5PcKdcKdc5Qcvfc5Rc5Sc5Tc5Ucqlc5Vc5WcB3cwUcmvcDZc5XceQc4Cc5YcXkc5ZcQGcS5cqzc50c51apXanjapYbU9cJdcs4cx8c52c53c54c55c55c3ccYJc56c4NcYJc57c58c59c4Qc4Rc6.c6#cYRc6acR1c6bcYTc6cc6dc6ec6fc6gc6hc6icgkc6j#yy#8IatT.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON#v6#FL#v6#yBb1zc0x#5I#DR#2Cb3sbCpaZP.zW#yGaba#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9bAnc1R#W9.3d", +"c6kc6lcOac47c3BcF5#6Zax0#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#AdboV#v0#Rkc6mc6ncoY.N4.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ONatTc6ocCq#yAc6paNHc6qc6rc6sc6tbPgc6uc6sbAKcLsc0KcMS#8jcp.c6v#IK#BCatzbihc5faKkbihc6wc3Lc6xbxQc6ybVYb.qbehb.rbekbrZbnlcIpcutbW3bSMb86bQzbMAcGybwUbsTa1pbUYbIFbMzcIpc6zcXXcM1c6AbhobKFbKFcK#b29aytas7as8c5las8bSFas7atbbzVbQscdsbwYcnpaHkaHkaP3cfNcnpc6Bc6Cc6DcQgc6EcYjcZKc6FcSGc6Gc6Hc6Ic6J#Zv.#Nc6Kc5Ac5Ac6Lc6Mc6Nc6Ec6OcVBc6Pc6Qc6Ra1Uc6S.j2.BZc6Tc6Uc6Vc6WcSIc6XcWUc6Yc6Yc4hc4hc6Zc60cSFc61c62c63c64c65c66c67c68c69c7.c7#c7ac7bc2UcZPcP8c7cbWRaJ2c5Sc7dc7ec7fc7gcEPc7hczccrTcrNcf0ca.cbnca.c7ic7jcAgcQGcNCc7kc7lc7mapXapYaVuabNcCec#bcKVc7nc7oc1Ac7pcYHc0ic55c3bc4Oc7qc7rc7sc7tc7uc59c7vc7wc7xc7ycgdc7zc7Ac7Bc7Cc7Dc7Ec7Fc7GcF1bVH#yzapobfxatT.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON#v6#Ch#v6.UCazbc0x.Dj#DR#2Cb3sbCpaZPb1D#yGbAq#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9bAnc1R#W9.TH", +"c7Hc7Ic7Jc7Kc7Lc7MboIboR#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#Ad#AdboV#yH#Rkc7Nc#lcoY.N4.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ONatTapoa8P#yzaiMafVc#hbPhbwzc6tc5bc6tb5Wc7OcTBaMic7Pc7QayQc6vatBatBayQ#LHc7Rbih#O7a2ic7Sc3Lc6w#S6c7TbuEbU6aMMbFjaMIb91c7UbW1cB.bMBcGxbnmbnmbrdbV3bUYbpmbKLc7Vbbqc7WcM1bDdc7Xc7YaJ1cxJcfTcbccrYbWVc2kas8bMwavVbMwbSFc6Ac6AcdsbMvcnpcnpbwYcdscdsbwYaP3cKgc7Za1Wa1Wa1WcZqcX2.j2c70c71c72#Zv.#U.kQc6Lc6Tc73c74c75c76c77ca3b6YcdnbGbca5c78c79c5r.hSc8.c8#.fRc8ac8bc5yc.Jc2JcXcc8cc4hbn1c8dc5CcQhc8ecRsc8fc8gc8hc8ic8jc8kc8lc8mc8nc8oc8pc8qcN#cZPbWQcp7c4vcvbc8rc8sc8tc8ucwUc8vcwZcsPcunc8wceQcdGcZ7cl.cl.cVXcKRcNAc8xc8yabQbpgapYandc8zc8Acx7c0ecs4c8Bc8Cc0hc1Ac0hc8Dc8Ec8Fc1Cc8Gc8Hc8Ic8Jc8Kc8Lc8Mc8Nc8OcqKc8Pc8Qc8Rc8Sc8Tc8Uc8Vc8W#v5c8X#MPc8YaWS#34.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON#v6#Ch#v6.XQ#yCcYZc8Z#DR#2Cb3sbCpaZP.zW#yGaba#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9bAncY0#W9c80", +"c81c82c83c84c85bsrc#DaL9ax0#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#vZboVa64#Rkc86b3qcoY.UC.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON#34#yB#DT.XQc87bVLc6qc#Qc88bE9c88c89aiPc9.bPocrGcIecCSc9##BBco9awhcJWcMXaQeaEFc9ac9b#IibPvc9cc9dcjLbegaD2byVc9ebZ6c9fc9gc9hbX3c9ibpmbQybA5c9jcODc9kbWXb.wbbqc9lc9mc9nc9ocOubB2c9pcvdcIwbSFbMwavVbIxbUTatbas8as8as8as8avWaV2cDLckScnocqacqac9q.RvckTc9rc6Cc07cX2c9s.eXc9tc9uc9v.lgc9sc9wc9xc9yc9zc6Vc6Nc9Ac5zc09c9Bc9Ccdnc2Ic9DcLUc9Ec9Fc9Gc9Hc9Ic9Jc9Kc9Lc9Mc9Nca5c9OcIIcdnbn0c9Pc9Qc9Rc9Sc9Tc9Uc9Vc9Wc9Xc9Yc9Zc90c91c92c93c94c95c96c97c98c98cp7c99d..d.#d.ad.bcqld.cc8vcHmd.dc8vd.ed.fd.gcnOd.hd.id.jd.kd.lcS7bKUceMaA0apVakFbSVd.mbIWd.nc0ed.od.pc0icYGc4Jd.qd.rd.sd.td.ud.vd.wd.xd.yd.zd.Ad.Bd.Cd.Dc8Pd.Ed.Fd.Gd.Hc8Ud.Id.J#DTbjR#OjaTKazaa...ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON#v6#FL#v6.UCd.Kc3vd.L#DR#5Gb3sbCpaZP.zW#Ogaba#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9bAncY0#W9d.M", +"d.Nd.Od.Pd.QcCHbqGboVbsq#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#AdboVaq0#Rkd.Rb3qcoY.N4.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON#2B#MPaWR.UCd.SbNdb9dbCVbNebwBbyGd.Takca.gd.UcrGd.Vcmbd.WcPQaQ0d.Xd.Yd.Z#Pbd.0cIk#IJaNod.1crKd.2d.1btHc6wbocd.3bvzd.4bzYd.5d.6aJQcELd.7bnmc3TbKKd.8bIAd.9d#.aV2cGFbKId##bIAaqgavVby3as9as9aytbMwavWd#abWVd#ad#ac5ld#ac2kaNb#rabzK.uEd#bd#c#rfc1bc5zd#d.ge.cId#ed#fd#gd#h.kPc6Kd#id#jc4fd#kd#ld#md#nd#od#pd#qd#rd#sd#td#ud#v.atd#w.jXd#xc9Id#yd#zd#Ad#Bd#Cd#Dd#Ed#FcZud#GcU.d#Hd#Id#Jd#Kd#Ld#Md#Nc65d#HcZK#uld#NaMVd#Od#Pd#QcSSd#Rd#ScZWd#Td#UaZ#d#Vd#WaMYd#Xd#Yd#Zd#0d#1d#2d#3d#4cGAd#5d.fcnOd#6d#7bq8bfDapVaeRapTaeTaeTapWakDapKc52c#acMhd#8d#9d.pc7pc0icYHcYHda.da#daadabdacdadc8Ldae#Eadafdagd.Ddah#wxdaidajdakdaldamdandaob7rbEq#DTaQA#FK#34.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON#v6#Ch#v6.UC#yCc3vd.L#DR#2CdapbCpaZP.zW#yGaba#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9bAnc1R#W9d.M", +"daqdardasdatc85#CkboVbsq#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#AdboVa64#Rkc7Nb3qcoY.N4.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.N4#MPaWR#Cgdaudavb9db3RbyGbPkdawdaxdaydazax6aMiaGCaW7cEG#BB#Sg#Fad.0cLwcLwdaAdaB.7H#RYcy7a2l#O9daCdaDdaEdaFdaGa7mblcdaHaPFbq#bkecIpbplbIFbuIbGibIAbKHaqgaqgbKHbD3bKHbMyanwaqhbOqavVbSFc5lc2lc3WakUakUc3Wc2lc3WakUc3WdaIb6Zcu9cxEaidcTQdaJcYjdaKdaLc6HdaMc70.cI.lfcVzc6T#s6daNc6KdaOdaPdaQdaRdaSdaTdaUcBKdaVbn2cSFdaW.gcdaX.am.hDdaYdaZ.jV.jV.bLc9Md#Cd#Cda0da1da2c5Gc4hda3da4da5da6da7da8da9db.d#Hdb#dbadbbdbcdbdcT2dbedbfcSLdbgdbhcZWcU.dbic1gdbjdbkdbldbmdbndboc2WcNrcLJdbpdbqdbrdbsdbtca.cYxcXmbxTapTapUahK#GianeanjapVaePdbudbvc1yc0ec0edbwdbxc54c55dbyc7pc4JdbzdbAdbBdbCc8Kd.ydbD#HE#EedbE#Edd.DdbFdbGdbHdbIdbJdbKdbLdbMb7ra.##MO#T6#FK#34.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON#v6#Ch#v6.UC#yCc3vd.L#DR#2CdapbCpaZP.zW.xUaba#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9bAnc1R#W9d.M", +"dbNdbOdbPdbQc85aUX#vZaL9#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#RiboVa64#RkdbRb3qcoY.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.UCbjR#MP.N4dbSakcbLpbyGbyGbPkbwBb3RaNH#0NcR.cCSb9IaHCdbTdbU#SgdbVcJWcJWd.Y#SgdbWaBHdbXaNrb#pa#pdbYc6wcU4b2haPDakQdbZdaHbkebhkaPFbwUbA5cIpc6zcWGbKHdb0bB2bKIbKHdb1db2avVdb3anybUSdb4db5db6db6bSEatcakUc2lbWVc2kas8as7db7bn6aV8cNhbxFch5db8.gf.cIdb9c6H.atc9scSIc1acX3c76dc.c76dc#dcadcbcRscQicX7dccdcddcedcfdcg.fKdchdcidcjdckdcldcmdcndcodcpdcqdcqc2Ec9Mdcrdcsdcta1Uda2dcudcvda5dcwdcxdcyda9dczdcAdcBd#KdcCc90dcDdcEdcFdcGdcHdcIcZTdcJdcKdcLdcMdcNdcOdcPdcQdcRdcSdcTdcUcvjdcVcB1dcWdcXdcYchgdcZdc0aVraJM.EOaStaGTakEapU#4Bdc1dc2dc3c#bcs4cCedc4dc5dc6c4Lc4Ndacc8Ddc7dc8dc9dd.dd#d.yddaddbdafd.Dc8N#AEc8PddcddddbIddeddfddgddh.N4cF2bAh#yB#FKaKE.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON#v6#Ch#v6.UC#Ciddid.L#DR#FN.rKbCpaZP.zW#v0aba#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9bAncXK#W9ddj", +"ddkddlddmbAtddnaGo#vZ#9W#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#RiboVa64#Rkc7NddocoY.N4.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.N4.XQ.XQatTddpddqbsDc#Rb7Xc5ad.TbNcbOYakbddrcLs#0McRadds#jma#wddtc6v#xQ#Vddduddvair#7Oc7RaEC#O7ddwddxddyddzanuddAddBddCaMIaYvddDbIEbDdddEcM1ddFbB2bD3bD3cGFaqgbIAbD6ddGbBXbSDckWcP4ddHddIddJddKc2lc5lbSFavVas9bQuat.ddLb41aS9b6ZbBQddMddNddOddP.jmddQcZIcZHddRddScX4ddTddUddVddWddXddYddZbp1dd0.hbdd1dd2dd3dd4dd5c9Kdd6dd7.jX.jSdd8c9Mdd9de.dcpde#deadebdecdeddeedefdegdeddehdeidejdekdekdeldemdendeodepdeqderdesdetdeudevc4kdewdexdbhdeydbidezdeAdeBa1QdeCdeDdeEdeFdeGdeHcIrdeIdeJdeKdeLdeMcdJdeNahRaMDb.mbblcjL.5Rbj9aJM#4IcEJdeOaDIb.hdePdeQc4Kc55cXocYEdeRdeSdeTdc8deUdeVdeWdeXdeYdeZ#AEc8OdbFc8Pcydde0de1de2de3ddfde4de5#yz#Aj.UC#yy#CeaKE.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON#v6#Ch#Ch.XQ#yCcYZd.L#DR#2CdapbCpaZPbym#v0aba#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9bAnbAnc1R#W9de6", +"#vPde7de8de9df.df#.xUboR#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#Ric#Da64#Rkdfab3qcoY.UC.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.N4.UC#Cg.N4dfbdfcdfddfedffdfgdfhdfidfjdfkdflcMxdfmdfndfoc0Jdfpdfqdfrc0Ldfs#BCdftdbTazkayK#R1dfudfvdfw#tBdfxdfydfzdfAah3aNjdfzdfBdfCddydfDdfEdb3bICdfFanydfGbxIbBXbzUbD5dfHdfIcP5#qAbIudfJdfKdfLdfMaqfa5edfNcmMb1ebsZaD7dfOdfPdfQdfRczVdfSckNdfTdfU#pBcYgdfVdfWdfXcRsdfYdfZdf0dfZcX6bzPc8odf1df2df3df4df5df6df7df8df9.fKdg.dg#dgac2Fdgbdgcc2EdgdddVdgedgfdggdgh.iM.cvdgidgjdgkdgldczdgmc90c90dgndgodgpdgqdgrdgsdgtdgudgva3cdcHdgwdgxdgydgzdewdcMdgAdbkdgBdgCdgDdgEdgFdgGdgHdgIcnDdgJdcXdgKdgLdgMdgNdgOcHAdgPdgQdgR.5ZdgSbC9cQJdgTdgUdgVb89dgWc0edgXcYGc7oc7obRBdeTdeTdeTdgYdgZ#Emdg0#Ecdg1dg2#wxdg3c8Pdg4dg5dg6dg7dg8dg9dh.dh#dha#T8ahj#yy#CeaKE.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON#v6#FL#v6.UCazbdhbd.L#DR#2CdapbCpaZP#Ac#Ckaba#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9cXKbAncY0#W9dhc", +"dhddhedhfdhgdhhdhi#CkboR#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#AdboVa64#vVdfab3qcoY.N4.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.UC.UC.UCbS9dhjdhkdhldhmdfgdhndhodhpdhqbwBbNebTDbXIdhrbq0ceEdhscIeaGCaWZdhtaBMdbTdhudhvdhwaqIdhxdhycLBdhzdhAdhBdhCdhDaNjaNia#ldhEaWtbfdbfddhFdhGbzSbzSdhHbGhbD5dhIdfHbB0dhJcJxdhK#uLbxCbvmdhLdhMaBkbuMaV9aicb6ZdhN.eHdhO#8UdhPdhQ.eKdfTcVuaBqcVgaHlcSvdhRdhSdhTdhUdhVc60dhWdhXc0ZdhYc.Jbn0dhZ.hLdh0dh1dh2dh3dh4.kKdh5dh6dh7dh8dh9di.di.di#c8.diadibdicdiddiedifdigdih.evdgjdiidijdikcEXdildimcGWdindiod#IdipdiqdirdisditdiudivdewcZSdiwdcIdixcFddiyd#XdizdiAdiBdiCdiDdiEdiFdiGdiHdiIcnCdiJdiKdeMcbvcl#cf2checbmdiLcJbc0bdiMcRKcAfa4kdiNaGRaMBdiOdgXdiPcbAc4IcYDdiQdiRdgYdgYdiSdiTdiUdiVdabdiW#AJ#HJdiXdiYdg5diZdi0di1di2di3di4bshbEqciG#yy#FKaKE.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON#v6#Ch#v6.UC#Cidi5#5IaTM#2C.rKbCpbweapl.xUaba#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9bAnbAnc1R#W9de6", +"di6di7dhfdi8dhhdi9.xU#KK#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#vZboVa64#Rkb3rddo.UB.N4.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.UC.UC.UCa8Pdj.dj#b1xdjabRqb9DbNedjbdjcdjdbXJbXJbF.byKdjea2MdjfbHrdjgdjhaBM#w5aZAaZz#Pudji.3i.7J#EJdjjaWrdjkbrWdjlaBAatuatwdjmdjnbfdbcf#p3djodjpbendjqbGhdjrbGhdjqbzSdjsbGidjtaY2cp1ca3aBlca3cp1aP6#tD.y6cDJcLTbc6ac4djudjv.gfdjw#rFa1WdjxcfHb8TdjydjzdjAdjAcG1djBdjCbn0bn0dhWbn1djDdjEa1Vc6MdjFdjGdjHdjI.kMdjJdjKdjLdjMdjNdjOdjPdgcdjQdjRdjSdjTdeedjUc2EdjVdjWdjXdjYdjZdj0dj1dj2dczdekdj3dj4dj5dj6dj7dj8dj9dk.dk#dkadkbdkcdkddkedkfbvbdkgdkhdkidkjdkkdkldiAdiBdkmdkndkodkpdkqdkrdiIdksdktdkudkvcf3ca.cZ6ciidkwdkxdkydkzcZ9cUkcFKaAZ.w1aAXaeSb7hcdNc52bRBcbAcHEdkAdiRdgYdkBdkC#AMdkDdkEdab#AIdkFc8OdkGdkHde0dkIdkJdkKdkLdkMc3Ebsh#Okcgl#yy#CeaKE.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON#v6#Ch#yD#DT#CidkNbZo#DR#2Cb3sbCpbwe#2C.xUaba#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9bAnbAnc1R#W9.TG", +"cGcdkOdkPdkQc48dkR#6ZboR#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#AdboVa64a65b3rddodkS.N4.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.UC#Hh#yydkTdkU#kTbZRdkVdkWdkX#DXaje.GSbF.dkYbCXdkZdk0c0Ic0IatYb9IdjhaqKdk1aKodk2.7J#F#dk3#BA.1ndk4dk5dhBdk6dk7ayHatwaBAdk8djn#5cbq.aQ#dk9dl.dl#dlabGhddHatcbIAbB1dlbc9jbBVaBmanHacjayxav1.xc.wDdlc#Q#dldcLTddM.y6dlecWPc77cZEc0Wc0WcfHc.MaElcZPcGYdlfcG1cG1dlgdlhcU.dlidljdlkdlldlm.ledlndloc9vdlpdlqdlrdlsdltdludlvdjLdlwdcsdcrdlxdlydlzdlAdlBdlCdlDdlEdlFdlGdlHdlIdlJdlKdlLdlMdlNdlOdlPdlQdlRdlSdlTdlUdlVdlWdlXdlYdlZdl0dl1dl2dl3dl4dl5dl6bxsdl7dl8cBHdgCdl9dm.dm#dmacUfdmbdmcdmddmedmfdmgdmhccydmicI9checD6dcZcD5cFKcQGdmjbnda4naycdmkbITdgXc52bRBcbAdmldmmdgYdmndmoc8DdkDdmpdmqd.rdmrclkdmsdmtdmudmvdmwdmxdmydmzdmAdmBdmCahjciG#yy#CeaKE.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON#v6#Ch.N4#yBazbc0x#5IbMYcrzbCpaKIaZPb1H.xUaba#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9bAnbAnc1R#W9.Yd", +"dmDdmEdmFdmGddn#VK#Aebsq#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#AdboVa64aP.dmHddodkS.N4.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.N4.UC#HhatTcWv.GSb#GdmIdmJdmKdmL#SudkWb#HbLsdmMdmNbXIdmOcMRcLscrGaJt#5oaTq#Sm#B.dmPdmQdmRdmS.UM#eGdmTdmUaWrdhCdmVatuab2aKibfddmWdmXdmYbfedmZdm0dm1djqbxIbWVavVaqhdm2aqhdm3bKEaqp#pV.NV.vua2J#CUa2J.tY.2t.0qafebzOcSucfIcZudm4dm5cWUdm6bzPbOjcIIdm7cP8dm8dm9cG1dn.dn#dnac5OdhWc5n.#9dnbdncdnddnednfcYbc2Ac97c97dngdnhc4jcXdbn2dnidm5dm5ddVdnjdnkdnldnmdnndnodnpdnqdnrcLcdnsdlOdjWdntdnudnvdnwdnxdnydnzc8hdnAdj1dnBdnCdnDdnEdnFdnGdnHdnIdnJc4rdnKdnLdnMdnNdgCa4XdnOdnPdnQbDrdnRbbrcqkdnSdnTcO4dnUdnVdnWcvrdnXceTdnYcNzcNzcFKdnZaPta4odn0dn1c7lbU9dn2c52cbyc4IcHEdn3dgYdmndiRda#dn4dn5dmqdn6#AH#wAdn7dn8dn9do.do#doadobdocdoddoebg2bEqbAh#yB#0JaKE.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON#v6#Ch.N4#T7#yCdi5aQDb1HaEXdofaNIbRldog#Aeaba#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9bAnbAnc1R#W9.1g", +"dohc82dmFdoidojc#Ec#D#9W#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#vZboVa64ahhdokdoldkS.N4.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.N4.UC#Hh.N4cWvaje#Vwdom#Vv#PH#VxalldondoobPldopbm3doqaDAdoraDA#0N#Sodos#8ibsJdotdoudovdow#xM.K.doxdoydozdmTdoAdoBbfcdoC#p5b#mdoDdoEbfeaQ#djjdoFdoGdoHcWDdoIdoIdoJdoKbw4doLdoM.tYdoNdoOdoPakY#rEbKD.3VanIaBmaV9ca5c.MdoQdoRdoSdoTdoUdd0doVdoWdoXdoYaVZdoZdoZdo0do1cGYdo2cW6.lcc9udo3do4do5do6cTXcYddo7bBPdo8do9do0dp.cN#dp#dpac2zbp1dpbc6ZcQidc#dpcdpddpedpfdpgdphdpidpjdpkdpldpmdpndpodppdpqdprdpsdptbkYdcAdpudpvdpwdpxdpydpzdpAdpBdpCdpDdpEdpFdildpGdpHdgCdpIdpJdpKdpLdpMdpNdpOdpPdpQdpRdpSdpTdpUccscAecAecXic1vcAhdpVdpWdcZdpXdpYdpZdp0dp1dp2bTLdp3dp4b3ec4IdgYdc4dp5dbxdp6#AOdp6dp6dp7dp8c8Ndp9dbEdq.dq#dqadqbdqcdqddqebPj.XQcgk#MP#Oj.XQ.N4.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON#v6#Ch.N4.XQaZOavo#5Gbymbym#5GbVCaRXaEY#vZaba#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9bAnbAnc1R#W9dqf", +"dqgc6ldkPdqhddndqi#AeboR#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#AdboVa64#DRdqjddodkS.N4.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.UC#Hh.ONdqkbipdql#J#dqmdqm#MAdqndqodqpaWMdqqa8JaWMdjcdqrbyGdqsdqt#68co4dqudqvdqwdqxdqy.UK.XY#ckdqzdqAdqBdk3dqCdqD#fp.1n#aBdqEdoEcIl#RVdqFdqGdqHdqIa.Za#mab7dqJdqK.Bf#4WdqLcIO.PAQtR#tFacjaBpca4aEkc.LcfIaV9cfHcSudqMdqNdqOdqPdqQdqRdqSc9VdludqTcG1dqUdqVdqWbUNcOM.kcdqXdqYdqZdq0dq1dq2djNdq3dq4d#rdhUdq5djCdo9dq6dq7cN#cZPdo9bn0dq8dhWdq9cGVdr.dr#dradrbdrcdrddredrfdrgdrhdridrjdrkdrldrmdrndrndrodrpdrqdrrdrsdrtdrudrvdrwdrxdrydrzdrAdrkdrBdrCdrDdrEb8QdrFdrGdrHdrIdrJdrKdrLdrMdrNdrOdrPdrQdrRdrSceQcnOccwdrTdrUdrV#tAc24drWdrX.vddrYdrZdp2aniakDavFaJNdr0dr1dc4bIUdgXc4Kdr2c7pcYEdr3dn4dr4dr5dbEdr6dr7dafdr8dr9ds.ds#dsadsbaWRdsc.XQ#Aj#Cf.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON#v6#Ch.UC#T7dsddsebXA#v0#yH#v1#yH#DO#Aa#v0aba#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9bAnbAnc1R#W9dsf", +"dsgc3yc0Adshdsic7M#Ck#z4#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#RiboVa64amOdokb3qdkS.N4.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.UC.UC.ONdsjdskdslafLaiGdsmaiGdsndsodspa8JaWNa2Ca8LdsqdsrbRpdssdstdsubd2dsvdswdsxdsydsz.UKdsA#BxdsB#F#dsCdsDdsE#dw.5n#aB.K7.9ddsFdjodsGdqFbq.dsHdsI#4Qb#n.wCdsJ.t4.t4.BfdsKbzNbvmca3bQmbQmca4ca3aBlcfIcfHbxFaS9cTQc2odsLdsMdhTdsNdsOdsPc9VdsQdlgdsRdqWdsSdsTdsUdsVdsWdsXdsYdsZdfYds0ds1ds2ds3ds4ds5ds6ds3ds7dpads8cZWdcJc97ds9dt.c4hdq9dhWdt#c2JdtadtbdtcdtddtedtfdtgdthdtidtjdtkdtldtmdtndtodtpdtqdtrdtsdttdtudtvdtwdtxdtydtzdtAdtBdtCdtDdtEdtFdtGdtHdrGdtIdtJdtKdtLdtMdtNdtOdtPdtQdtRdtSdtTdtUdtVcO4dtWcjYdtXcS4dtYdtZcbldt0dt1dt2cQDdt3dt4akDapVanjdt5c52c52bRAc52cdMdt6c4Kc55dt7c4Kdt8dr6d.yd.ydt9dbFdu.du#duadubducdstamR#yzbdZ#DT#Cfcgl.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON#v6#Ch.UC#T7#yCdudbEV#AebmS#v0.xU#yIbZn.xUbww#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9bAnbAnc1R#W9.6A", +"duedufdugduhcEtdui#6Zax0#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#AdboVa64aTMcbXddodkS.N4.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.N4#Hh#Ok.N4dujduk#ldduldumdundundumduodupa8La2Cduqa8Kbm3bVNdurdhndusdutb.#duuduvduwduxduyduzduAduBdsC#F#duCdk3duz.4p#aC.6wduD.9cduE#LBduFcC3duGdsI#7MduH#1BduI#4WduJduKa#aduLduMaKdc.LaBlaBlca3aBlcfIaBlduNcTQbp6cZQdfNduOduPc9VdsPdsQdsPdsQdjAdsQduQcVm.aac70d#fduR.VzduSduTduUdpbds5duVduWduXduYduZdu0ds3du1du2bn1c05du3du4du5dlidjEbn1dhWdq8b08doWcYccSTdgndu6du7cPFdu8du9dv.dv#dvadvbdvcdvddvedvfdvgdvhdvidvjdvkdvldvmdvndvodvpdvqdvrdvsdvtdvudvvdvwc.HbDNdvxdtJdvydvz.TcdvAdvBdvCdvDdvEdvFdvGcBYdvHdvIdvJdvKdvLdvMcHmdvNdvOcJadvPcnRdvQdvRaeRaneavFbPwdp3dvSaPpcgcdvTdt7c4Kc1Bdc6dvUdvVdd#dvWd.wdvXdvYdvZdu.dv0dv1dv2djacF1#MPdv3.UC#Cfcgl.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON#v6#Ch.N4#Oj#yCdv4bMX.xU#Ae.xU.xU#DOcY4boVcPv#W9bAnbAnbAnbAnbAnbAnbAnbAnbAnbAnbAnbAnbAnbAnbAnbAnbAnbAnbAnbAnbAnbAnbAnbAnbAnbAnbAnbAnbAnbAnbAnbAnbAnbAnbAnbAnbAnbAnbAnbAnbAnbAnbAnbAnbAnbAnbAnbAnbAnbAnbAnbAnbAnbAnbAnbAnbAnbAnbAnbAnbAnbAnbAnbAnbAnbAnbAnbAnbAnbAnbAnbAnbAnbAnbAnbAnbAnbAnbAnbAnbAnbAncXKcXKcY0#W9.1g", +"dv5dv6dv7dv8dv9c#E#6Z#KK#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#vZaO0a64#DRdw.doldkS.N4.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.UCa8Pa.#aKEaB6dw#dwa#J##2tdwbdwcdup#MxaHOaWNaWMaTGbcsbRqde5dwd#Zcdwedwfdwgdwhdwidwjdwkdqydwldwmdwn#d1dwodsD#dxdwpdwq##x#il#cgdwrdws#O3a8kdwtdwuduH#1DdwvdwwdwxdwyaWndwzdwAbuMca4aBldwBcfIcfIca4cfIca3anGaS9cG9bOjb08b08dluc9VdsQdjBdsPdwCdwDdhRdwE.#bdwFdwG.as.j2.lfcVlb6YaBjb08cGYdwHdwHdwIcG0cG1dwJdwKdwLdwMdwNcRsdwOdwPdwQdwRdlidjEbn0dq8dq8dwSdwTdq8dq8dwUcZVdwVdwWdwXdwYdwZdw0dw1dw2dw3dw4dtvdw5dw6dw7dw8dw9dx.dx#dxadxbdxcdxddxedxfdxgdxhdxid#IdxjdxkdxldxmdxndxodxpdxqdxqdxrdxsdxtdxudxsdxvcnEcw1cIsd#4cVSdxwdxxdktdxydxzdxAdxBcvvcqsdxCapVdt5avFasNdxDbRBbW9dxEdxFdxGc55c1Bc55#AOdvVdxHc8JdxIdxJdxKdxLdxMdxNdxO#nydxPamQaY.ciF#0J#Hh.N4.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON#v6#Ch.N4#OjaZOdxQbXA#v0#vZ#v0#v0#HfbZn#vZbJ##W9cXKcXKcXKcXKcXKcXKcXKcXKcXKcXKcXKcXKcXKcXKcXKcXKcXKcXKcXKcXKcXKcXKcXKcXKcXKcXKcXKcXKcXKcXKcXKcXKcXKcXKcXKcXKcXKcXKcXKcXKcXKcXKcXKcXKcXKcXKcXKcXKcXKcXKcXKcXKcXKcXKcXKcXKcXKcXKcXKcXKcXKcXKcXKcXKcXKcXKcXKcXKcXKcXKcXKcXKcXKcXKcXKcXKcXKcXKcXKcXKcXKcXKc1Rc1RdxR#W9.Wn", +"dxSc7IdxTduhdxUc#E#Ckax0#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#AdboVa64#DRdxVddodkS.N4.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON#yybqU#Cg#5EdxWdxXdxYdxZ#Y8afM#Y7#Sudqmdx0a5HbiodkXbZRdx1dx2dx3dx4acEdx5dx6dx7dx8a7adx9dy.dy#duBdyadybdycdyddye.P3dyfcJV.VP#xm.Mq.Np.3icC2dyg#nvdyh#4P.3S#qOdyidyjdykcdmdyldwBdymdwBdylaTcb41aBlca3anGanHcfHbYUdoYaKeayBdoXdlgdlgdyndjxafj#dF.g2.f#.lidyo.k5.kXdypc60dp#c.JdludgxdyqdyrcN#cG1djzds7bn2ddZdwLdysdytdyudgddyvdywdyxdyyc05djEdyzdyAdyBdyCdyDdyEdyFc1gdyGdyHdyIdyJdyKdyLdyMdtAdyNdyOdyPdyQdyRdySdyTdyUdyVdyWdyXdyYdyZdw2dy0dy1dy2dy3dy4dy5dy6dy7dy8dy9dz.dz#dzadzbbetbetbzadzcdzddzedzfdzgdzhc8vc20dzidzjcNtdzkdzldzmdzndzodzpdzqdzrdzsb3eanjavFdztcdOcE##1cdxFdzudzvc8Fc8FdzvdzwdzxdzydzzdzAdzBd.DdzCdzDdzEdzFdzG#HhaY.#yBdzH#Oj.UC.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON#v6#Ch.UC#OjdzIdzJbXA#v0#vZ#yH#v0#Hfdog#v0cCv#W9cXKcY0cY0c1Rc1Rc1Rc1Rc1Rc1Rc1Rc1Rc1Rc1Rc1Rc1Rc1Rc1Rc1Rc1Rc1Rc1Rc1Rc1Rc1Rc1Rc1Rc1Rc1Rc1Rc1Rc1Rc1Rc1Rc1Rc1Rc1Rc1Rc1Rc1Rc1Rc1Rc1Rc1Rc1Rc1Rc1Rc1Rc1Rc1Rc1Rc1Rc1Rc1Rc1Rc1Rc1Rc1Rc1Rc1Rc1Rc1Rc1Rc1Rc1Rc1Rc1Rc1Rc1Rc1Rc1Rc1Rc1Rc1Rc1Rc1Rc1Rc1Rc1Rc1Rc1Rc1Rc1RcY0cY0dzK#W9cCI", +"dzLdzMdzNdzOdzPbVt#6Zax0#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#Ad#vZa64aTMbiTdoldkS.N4.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.N4#Cg#yzdzQdzRdzSdzT#2vdzU#5A#Sw#JddzV#PJdzWaQvdzX#VvdzYdzZdz0dz1dz2dz3dz4dz5dz6dz7dz8dz9dA.dA#dAadAbdAcdAddAedAfdAgdAh.I4.I9.Lo.Q0.I8dAidAjdAk.NR#LP#d6dAldAm#rZdAndyl#YAdAoaKhdAp#V.aNh#slbzPcp1anFcILayCcG4ayBaEsdAqdoYaVZa5fcBPQtOdAraY4dAsdAt.fN.lo.#icRndAudAvdsPdsQdyqdlgdlgc4sdqWc6Ydq8dyFdAwdAxcZFc5udAydAzdAAdABdACdADdAEdAFdfZbn1cVMdjEdAGdAHdcudyDdAIdAJdAKdALdAMd#IdANdvtdAOdAPdAQdARdASdATdAUdAVdAWdAXdAYdAZdA0dA1dA2dA3dA4dA5dA6dA7dA8dA9dB.dB#dBadBbdBcdBddvydBedBfdBgdBhdBidBjdBkdBldBmdBndBodBpdBqdBrdBsdBtdBudBvdBwdBxdBydBzdBAdBBcqwdBCdBDdBEdBFdBGcXndBHdvVdBIc4Mc4MdBIc58dBJdBKdBLdBMdms#wvc7ydBNdBOdBP#v5asm#Hh#T6#MP.N4.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON#v6#Ch.N4#Oj#CidBQbXA#vZ#vZ#v0#v0#HfaEY#6ZcCvcCvbJ#dBRdBSdBSdBTbgxbgxbgxbgxbgxbgxbgxbgxbgxbgxbgxbgxbgxbgxbgxbgxbgxbgxbgxbgxbgxbgxbgxbgxbgxbgxbgxbgxbgxbgxbgxbgxbgxbgxbgxbgxbgxbgxbgxbgxbgxbgxbgxbgxbgxbgxbgxbgxbgxbgxbgxbgxbgxbgxbgxbgxbgxbgxbgxbgxbgxbgxbgxbgxbgxbgxbgxbgxbgxbgxbgxbgxbgxbgxbgxbgxbgxbgxbgxdBS#W9dBU", +"dzLdBVc0AduhdzPc#E#6Zax0#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#Ad#vZa64#DRdxVdoldkS.N4.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON#yA#yz#yAdBWdBXdBYdBZdB0dxZ#Fy#Y8#PL#8B#Jc#Vx#VxdB1#MudB2#PIdB3dB4dB5dB6dB7bHndB8bd2dB9dC.dC#dCadAcdCbdCcdCdco6dCedAidCf.I7.Jw.LodCgdCh#xp.Ow.Yc#bT#b2#aL#Ps#Pqbia#PqaKh#YAaKhaTc#V.aNh#r0#m#aEganFcfIdCiayBaEtaEtav7cNbcSub6ZQtOcfL.76dCjcWOc6X.lgdCkdCldCmcG1duOduPdjBcG1dCndm9dCodCpcW8bItdo8dCqbIsb07aBjca5dCrdtcdCsdAPdCtdCudCvdCwdCxdAzdCydCzdyAdyAdCAdywdCBdCCdCBdAIdgkdcAdCDdCDdCEdCFdCGdCHdCIdCJdCKdCLdCMdCNdCOdCPdCQdCRdCSdCTdCUdCVdCWdCXdCYdCZdC0dC1dC2dC3dC4dC5dC6dvzdBhdC7dC8dC9dD.dD#dDadDbdDcdDddDedDfdDgdDhdDidDjdDkdDldDmdDndDodDpdDqdDrdDscFRdDt#1c#4wdDudvUc55dDvdDwdDxc4NdDydDzc56dzwdDA#wwdg4dDBc1JdDCdDD#SFcCqc6o#yB#yz.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON#v6#Ch.N4#Oj#CidDEbXA#v0#vZ#v0#v0#Hfdog#6ZcCvcCvababgxdBRdBRbgxbJ#bJ#bJ#bJ#bJ#bJ#bJ#bJ#bJ#bJ#bJ#bJ#bJ#bJ#bJ#bJ#bJ#bJ#bJ#bJ#bJ#bJ#bJ#bJ#bJ#bJ#bJ#bJ#bJ#bJ#bJ#bJ#bJ#bJ#bJ#bJ#bJ#bJ#bJ#bJ#bJ#bJ#bJ#bJ#bJ#bJ#bJ#bJ#bJ#bJ#bJ#bJ#bJ#bJ#bJ#bJ#bJ#bJ#bJ#bJ#bJ#bJ#bJ#bJ#bJ#bJ#bJ#bJ#bJ#bJ#bJ#bJ#bJ#bJ#bJ#bJ#bJ#bJ#bJ#dDF#W9.Ty", +"dDGdDHdDIdDJdv9#0ubMYax0ax0#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#Ad#vZa64#DRbiWdDKcoY.N4.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON#yA#yzb7ra5MdDLdDM#SzdDN#B4#Y8#PN#PL#5A#PIaHP#5ydqmdDOdDPdDQ#nTdsn#mN#hKdDRbAPdDSdDTdDUdDVdDWdDXdDYdDZdD0bg7bZVcmfdD1.I4.KV.Lp.6rdD2.KU.Yj.IW#ch#iD#iD#aM#YD#V.dAm#V.#YAaKhaKh#V.#PqdD3dD4#prcfHc.LbQmaEoaEtaEsaqtatsdD5.e8dD6.ho#uMcBPcTYcTZ.iV.zTbp6do9djAdD7dD7djBcG1dlgdlgdCodD8dD9b07dE.dE#cGVcQicX7dEadlldhZdEbdEcdlBdEddEedEfdEgdCudEhdEidEjdEkdEldEmdEndEodEpdCCdCBdEqdErdErdCDdEsdEtdEudEvdEwdExdEydEzdEAdEAdEBdECdEDdEEdEFdEGdEHdEIdEJdEKdEKdELdEMdENdEOdEPdEQdERdESdETdEUdEVdEWdEXdEYdEZdE0dE1dE2dE3dE4dE5dE6dE7dE8dE9dF.dF#dFadFbdFcdFddFedFfdFgdFhapPdFiakBdFj#HMcXocRTdFkdFldFmdFnc7qdFo#wE#EidFpdDBcYRdFqdFrdFsdFtcElaB4#Hh#yz#yA.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON#v6#Ch.N4azbdFucgnbwn#v0#vZ.xU#v0#DOaEY#2DdFv#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9.Ty", +"dv5dFwdFxcwjdFydFz.xUax0#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#AdboV#2D#DRdFAdDKdkS.N4.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON#yA#62b7qdFBdFCdFDdFEdFF#5A#PL#PLdFGdon#SudspdFHay4dzY#MAdundsndFI#jTdFJdFKbPldwedFLdC#dFMdFNdFOdFPdFQdFRdFSdFTdFUdAh.JS#xndAh.I8.3mdFV.Lb.Qe.2n#eM#iDdFWdFXdAmdD3#V.aKhaKh#V.#PqdAmdD3#PqaTcc.Lb8TbQmbQmdhM.WN.AU.uP.yrcsvcDKczYdFYdFZdF0.lrcKldF1dF2doXdF3dsPdsQdjAdwHdlgcG1dF4dF5dF6dF7dF8dF9dG.dG#dGadGbdGcdACdGddGedtcdGfdGgd#CdGbdGhdGidGjdGkdGldyBdjEdGmdGndGodGpdGqdcAdGrdGsdGtdGudGvdGwdGxdGydGzdGAdGBdGCdGDdGEdGFdGGdGHdGIdGJdGKdGLdGMdGNdGOdGPdGQdGRdGSdGTdGUdGVdGWdGXdGYdGZdG0dG1dG2dG3dG4dG5dG6dG7dG7dG8dG9dH.dH#dHadHbdHcdHddHedmfdHfdHgdmedHhdHidHjdHkdHldHmb19dHnasHdFidHodHpcisdHq#1cdHrdHsdHtcYRdHudHvdHwdHxcAwc5.cEl#MO#Okb7r.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON#v6#Ch.UC#Oj#CidHybXA#v0boV#v0#v0#DOaEZbVC#vV#MQ#MQ#MQ#MQ#MQ#MQ#MQ#MQ#MQ#MQ#MQ#MQ#MQ#MQ#MQ#MQ#MQ#MQ#MQ#MQ#MQ#MQ#MQ#MQ#MQ#MQ#MQ#MQ#MQ#MQ#MQ#MQ#MQ#MQ#MQ#MQ#MQ#MQ#MQ#MQ#MQ#MQ#6S#MQ#MQ#MQ#MQ#MQ#MQ#MQ#Rka0Zaha#6SdHzdHz#MQ#MQ#MQ#MQ#MQ#MQ#MQ#MQ#MQ#MQ#MQ#MQ#MQ#MQ#MQ#MQ#MQ#MQ#MQ#MQ#MQ#MQ#MQ#MQ#MQ#MQ#MQ#MQdHAbl7bAl.IY", +"dHBdHCdHDdHEdHFcF5#yGboR#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#vYaO0a64#DRbiWdoldkS.N4.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON#yA#62dHGdHHcZ#dHIdHJaln#VBdB0#ym#5BdHK#2wdHLalmdHM#I6dHNdHOdz2dHPdHQ#mRdHRdHSdHT#hKdHUdHVdHWdHXdHYdHZbjYdH0dH1b50dH2ct5.I4.IE.Pb#xCdFV#Bh.Uc.LY#fm#bZdH3a#hbp8bp8#V.#V.#V.#V.aKhaKh#V.dH4ca4cxBaKddH5#uL.hi.wd.xwayE.uBdH6cFjdH7cp4c9E.lrdH8cIIdH9dqUdI.dD7djBdjAcG1cG1ds4dI#dludaUdIadIbdIcdIddIedIfdIgdIhdIidIjdIkdIldImdyvdIndIodIpdIqdIrdIsdItdIudIvdyzdIwdIwdIxdIydIzdIAdIBdGsdICdIDdIEdIFdIGdIHdIIdIJdIKdILdIMdINdIOdIPdIQdIRdISdITdIUdIVdIWdIXdIYdIZdI0dI1dI2dI3dI4dI5dI6dI7dI8dI9dJ.dJ#dJadJbdJcdJddJedJfdJgdJhdJidJidJjdJkdJldJmdJndJodJpdJpdJqdJrdJsdJtdJudJvdJwdJxcgadJydJzdJAdJB#1ccE#a.GdJCdJDdJEdJFdJGdJHdJIdJJa8Pbx9amQ#MO#DT#yD.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON#v6#Ch.N4#Oj#yCdJKbwe#vZ.xU#v0.xU#Hfb1C#FO#T5aJldJL.zWb3J#T5#T5#T5#T5#T5bGUbGUbGUbGU#T5#T5#T5#T5#T5#T5#T5#T5#T5#T5#T5#T5#T5#T5#T5#T5#T5#T5#T5#T5#T5#T5#T5#T5#T5b3GaJldJMdJNdJOdJPb1Db3Jb3J.zWbGUbyC#vTcyHdJQdJRdJS#KQb3J#vTdJT#T5#T5#T5#T5#T5#T5#T5#T5#T5#T5#T5#T5#T5#T5#T5#T5#T5#T5#T5#T5#T5#T5#T5#T5bGU.zWb1CdJUdJV", +"dbNdJWdJXcvZdJYboIaL9boR#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#AdboV#Af#DRdxVdoldkS.N4.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.N4#Cg#yz#SEb7UdJZdJ0aiJdJ1dJ2dJ2dJ3dHJdJ4#lYdJ5dJ6dJ7dJ8acJdHLdJ9dK.afIdK#dKadKbdKcdKddKedKfdKgdKhdKidKjdKkbCYbAPdKldKm.Yb.M7#xDdKn.Q.#Bh.Uc.LY#bgdKodKpdKqbia#V.#V.#Pq#V.#ScdKr#Sc#V.dH4cxBaP7.BF.uP.uP.BE.BFaw.aErdKsd#cdKtdKudKvdKwc2HdjLdKxdKydKzdsPc9VdjAcG1djAdqTdKAds3dKBdKCdeqdKDdKEdKFdKGdKHdKIdKJdKKdKLdKMdKNdKOdKPdtddKQdrrdKRdKSdKTdKUdKVdKWdKXdwPdIwdjEdtadKYc6YdIwdKZdK0dK1dK2dK3dK4dK5dK6dK7dK8dK9dL.dL#dLadLbdLcdLddLedLfdLgdLhdLidLjdLkdLldLmdLndI2dLodLpdLqdLrdLsdLtdLudLvdLwdLxdLydLzdLAdLBdLCdLDdLEdLFdLGdLHdLIdLJdLJdLKdLLdLMdLMdLNdLOdLPdLQdLRdLSdLTdLUcV4cV4dLVdLWdFlc7qdLXdLYdLZ#UCdL0cMmdL1dL2dL3.JR#2B#T8dL4amQaQA#34.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON#v6#Ch.N4#Oj#CidL5bwe#2D#Ad#v0.xU.xUbO7#DP#DPcARbZz#DQ#DP#0IbXAbVBdL6#0I#DO#Hf#Hf#DO#yI#0IdL6#0IbXA#0IbXA#0I#0IbXA#0I#0I#0I#0I#0I#0I#0I#0I#0I#0I#0IbXA#0IbVB#0IbXAdL7ctWdL8dL9dM.dM#aHUdMadMbdMcdL7cAKdMdb5ObwjdMebZCbVi#DP#0I#0I#DP#0I#yI#yI#yI#yI#yI#0I#DP#0I#0IbXA#0I#0I#0I#0I#0I#0I#0I#0I#0I#0I#0IctWbwjdMfcebdMg", +"dMhdMidMjbXndMkbqGaL9bsq#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#AdboV#2D#DR.BSaTLdkS.N4.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON#yybqU.UC#61dMldMmdMndModMpdMqdMrdMsdMtdMua#LdMvdMwdMxdMydMzdMAdMBdMCdMDdFHdME#nVdMFdMGdMHdMIdMJdMKdMLbuodDSdB8bLsaVbdMMdMNdMOdMPdMQ.Q.#Bh.LY.LYdMR#BmdMSdMTdMUaKh#V.#rZaKh#M##M##IG#YAdMVcBM.uD.ts.xVayEav8aw.aErayEdMWdMXc6GdMYdMZdM0cWLdM1dyqdM2dM3cG1dsPdsPdsQdI#ds4dM4dM4du2dM5d#CdM6dIldM7dM8dM9dN.dN#cPFdNadNac3xdNbdNcdNddNedNfdNgdNhdNidcpdNjdcpdNkdNldGmdNmdNndyAdAGdyAdNodNpdNqdNrdNsdNtdNudNvdNwdNxdNydNzdNAdNBdNCdNDdNEdNFdNGdNHdNIdNJdNKdNLdNMdNNdNOdNPdNQdNRdNSdNTdLsdNUdNVdNWdNXdNYdNZdN0dN1dN2dN3dN4dN5dN6dN7dN8dN9dLJdO.dO#dOadOadObdOcdOcdLMdOddOedOfdOgdOhdOidOicqBdLUdOjdHpdOkdOlc3ecAn#OJdOmdOncUCdOo.7I#2B#T8dOpamQaQA#34.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON#v6#Ch.UC#OjdzIdOqbwe#2D#v0.xU.xU#yGcMMbqJ#KRafSaGo#KR.xUboM#6Z#v0.xU#v0#yGbye#DO#DO#Og#v0#Ae.xU#6Z#v0#6Z#yG#vVbm.#vV#v0.xU#v0#v0#v0#v0.xU#v0#v1#MQ#v0.xU#Ae.xU#6ZdOr#KRdOsdOtdOudOvdOwdOxaAFave#9W#6ZafSdOydOzdOAafS#TW.xU#v0#vZ.xU#v0#v0#v0#v0.xU.xU#yG.xU.xU.xU#6Z#v0#v0#v0#v0#v0#v0#v0#v0boR#v0#v0#KRboIdhidOBbwf", +"dOCdODdOEdOFdOG#KR#vZaL9#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#AdboVa64#DRdOHdOIdkS.N4.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.N4.UC#Cg.N4dOJdOKdOL#8CdHJdOMdMrdONdOOdMu#5xdOPdOQdORdOSdOTdOUdOVdOWdOXdundOYdOZdO0dO1dO2dO3dO4dO5dO6dO7dO8bF.byIdO9dP.dP#dPa#IAdPb#xl#Bh.Pm.Uc.4I#brdPcdKqdMU#V.#rZ#rZ#Sc#YB#YB#M##YB#oc#sr.#m.FpaEqaqwaqy.WN.BCaqz.Fn.glcZw.lgc1acX2#qGdPddjAdM2dM2dPedsQduPdsQds5dPfdq5dM4du2dPgdPhdlBdPidPjdPkdPldPmdPndPodPpdPqdPrdPsdPtdPudPvdPw.xXdPxdPydPzdCCdCCdPAdtbdCCdCCdPBdPCdNndPDdPEdPFdPGdPHdPIdPJdPKdPLdPMdPNdPOdPPdPQdPRdPSdPSdPTdPUdPVdPWdLadPXdPYdPZdP0dP1dP2dP3dLndP4dP5dP6dP7dP8dP9dQ.dQ#dQadQbdQcdQddQedQfdQgdQhdQidQjdQkdJgdO.dQldO.dLJdQmdOcdLJdQndQodJpdQpdQqdQrdQsdQtdQucsSdQvdQwdQxdQydQzcUCcNK#RKdQAcPgdQBdQCdQD#yB#DTdQE#Cf#MP#34.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON#Ch#Ch.N4azb#CidQFbwe#2D#6Z#v0.xU#OgdQGbqGdQHboUbwtaxZ#yGafS.xU.xU.xU#Hfak##vU#vX#vWaeg#DQ#yH#yG#v0#v0.xU.xU#yIaeg#DQ#Og.xU#yH#yH#yH.xU#v0#v0#yIak##yG#yH#Og#yG.xUaxZbqIdQIdQJdQKdQLdQM#yG#KKaiN#6ZdQNdQOcgudQPdQQdQNc7Mcji.xU#Ae.xU#Hf#vW#vWak#ak#ak##Hf.xU#yG#yG.xU#v0#2Dax0#Ad#Ad#Ad#yHbstaiN.xU#6Z#Ckb3EdQRdQSbZz", +"dQTdQUdQVdOFdv9aAFboVboR#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#AdaO0a64#DRdQWdQXdkS.N4.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.N4.UC#62#8Iay9dQYdQZdQ0#5BdQ1#B6dQ2dQ3#ZbdQ4dQ5dQ6dQ7dMxdOTdQ8dQ9dR.dR#dMAdRa#l2dRbdRcdRddMBdRedRfbuodRgdRhdO8dRidDZdRj#oidMPdRkdPbdFV.QX.LY.Qe.Wr#eZdRldKqdRm#Pq#r0#rZ#IG#YBdRndRo#m0#pO#qo.2SaEqayDayE.BC.WNaEr#uD.#fdRpdRqcX2cYa.g5dRrdPddRsdRtdo1c9WdRudRvcG1dm9dRwdwLds1dhUdRxdRydRzdEcdRAdRBdRCdRDdREdRDdRDdRFaxXdRGdRHdRIdRJdRKdRLdRMdRNdROdRPdGodcudRQdRRdRSdRTdGqdRUdRVdNpdRWdRXdRYdRZdR0dR1dR2dR3dR4dR5dR6dR7dR8dR9dS.dS#dSadSbdScdSddSedSfdSgdShdSidSjdSkdSldSmdSndSodSpdSqdSrdSsdStdSudSvdSwdSxdSydSzdSAdSBdSCdSDdSEdSFdSGdSHdSIdSJdSKdSLdSMdSKdSNdSOdSPdSQdQodSRdSSdSTdSUdSVdSWdSXdSYdSZdS0dS1dS2dS3#OJdL2cCidS4aQA#DTdQEbAh#yB#34.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON#v6#Ch.N4#Oj#CidS5bwe#2D#v0#v0#yGbmSbuabdTdS6dS7dOrax0dJY.Fe#z4#Og#yG#vX.zW#vUaeg#T5#Aa.Ep#yI.xU#yG#yG#v0#KS.Fg.uL.we#v0#v1.xU.xU#v0#yG#yH#DO.Di.uL#T5#vV.xU#Og.xU#KKaAFdS8dS9dT.dT#dTaatVax0bjJc#E#RacARdTbdTcdTddTecb7#yG#yG#KR#yG#DQdogbABcef#yIbMZbVi#yG#yG#yG.xU#v0boMboM#Ae#9WboLafSboIdTfdTgdThdTidTjdTkdhhdTl", +"dTmdTndTodTpdTq#VK.xU#9WboR#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#AdboVa64#DRdTrcjqcoY.N4.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.N4#Cg#MP#MNc88dTsdTtdTudTvdTwdTxdTydTz#FBdTAdTBdTCdTDdTE#lYdTFdTGdTHafKdTIdTJdTKdTL#mSdTMdTN#kDdTOdTPacBdO8dTQdKgdTRdTS#xldPa#xC.Jf.Jf.QX.Uc.KK.IWdTTdTUdTVdTW#rZ#qZ#PqdMV#YB#Pp#r0#pu.MF.xw#qEaEq.BC.Dq.V3aErdKs.ti.ji.g9dTXdTY.g5.hbdTZdT0cG1dT1dT2dT3cXdduPdm8dp#dT4dKBdoXdI.dT5dT6diedcodT7dT8dT9dU.dPldU#dUacg0dUbdUcdUddU#dUedUfdUgdUhdUidUjdUkdRVdyxdAMdyGdUldUmdUndUodUpdUqdUrdUsdUtdUudUvdUwdUxdUydUzdUAdUBdUCdUDdUEdUFdUGdUHdUIdUJdUKdULdUMdUNdUOdUPdUQdURdUSdUTdUUdUVdUWdUXdUYdUZdU0dU1dU2dU3dU4dU5dU6dU7dU8dU9dV.dV#dVadVbdVcdVddVedSKdO.dVfdVgdQmdVhdVidVjdSNdVkdVldVmdVndVodVpdVqdVrdVsdS1cMkdVtdVudVvdVwdVxdVyasmcF2.QtcF1aQA#61.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON#v6#Ch.N4#Oj#CidVzbwe#v0#v0#v0#yGaAFcb7dVAdVBdVCdVDb1XdVE.EpbZD#KR#v0#vX#T5#vX#DQ#yG#DO#vUaeg#yG#yG#yG#Og#Acaefc#ObqT.BV#DP#yG#yG#yG#v0#v0#PX.sKcJE.v3#0I#MQ#yG.xU#KKbo0afSdVFdVGdVHdVI#yGdVJboK#0udVKbVBdVLdVMdVNdVOaDqaveafSboM#AecbNdVPdVQdVRdVSby#bEV#Og#yG.xU#v0#yH#vYboLboIaxZcjidOxbgVdVTdVUdVVdVWdVXdVYdVZdV0", +"dV1dkOdV2dTpdHFdi9#CkboR#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#AdboVa64#DRcoVdDKdkS.N4.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON#yD#yz.XQaPadV3dV4dV5dV6dV7dV8dV9dW.dW#dWadWbdWc#MGdWddWedTIdWfdWgdWhdORdQ3dWidWjdWk#gqdWldWmdWndWodWpdWqdWrdWsdWtdWu.Lb.Q.dWvdWvdFV.Jf.IW.LY.Wr#ci#xidWwdWxaNh#rZ#r0aKh#M##PpaKh#qh#qlak5.BGdWyayE.uC.Dqav2dwE.fu.sj.KpdWzcZB#cTdWAcZBdWBduOcG1dyqdWCdWDaY0b08doWdt#bn0cYcaWad#Gbn1dWEdWFdWGdWHdWIdAAdWJdWKdWLdWMdWNdPodWOdWPdWQdWRdWSdWTdWUdWVdWWdRSdEpdWXc91dWYdWZdlMdW0dNpdW1dW2dW3dW4dW5dW6dW7dW8dW9dX.dX#dXadXbdXcdXddXedXfdXgdXhdXidXjdXkdXldXmdXndXodXpdXqdXrdXsdUSdXtdXudXvdXwdXxdXydXzdXAdXBdXCdXDdXEdXFdXGdXHdXIdXJdXKdXLdXMdXNdXOdXPdXQdXPdVgdXRdXSdXTdXTdXUdXTdXVdXWdHbdXXdXYdXZdX0dX1dX2cPjdSZdX3dX4dX4dX5dX6dX7cbKb5rcF2amQ#MP#34.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON#Ch#Ch.N4azb#CidX8aHU#vZ#v0boM.xU#CkdX9dY.dY#dYadYbdYcdYd.Df.Ep#v1#v1#DQ#T5#DQ#v0bCxbCx#vVaeg#DO.xU#v0#DO#32#Jp.BIaMeb7R#FO.xU#yG#yG#yH.Ep#96aMe#0F#JpaMf#yG#yH#yGaUXcMMdYedYfdYgdYhdYi#AddYj#yG#yJdYkdYldYmdYndYodYpdYqaJh.xUboLcH2dYrdYsdYtdYudYvbCL#DQ#Og#yG.xU#v0#yHaL9.xUaGobJmbqI.waboXdYwdYxdYydYzdYAdYBdYCdYD", +"dYEdYFdYGdYHdTqcNU#yGboR#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#AdaO0a64#DRcoVdDKdkS.N4.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.N4#yB#DTdYIbsCdYJdYKdYLdYMdYNdYOdYPdYQdYRdYSdYTdYU#MGdYVdYWdYX#hQ#MJdYYdYZdY0dY1dY2#mSdWldY3dY4dY5dY6dY7dY8dMJdY9#d#.Pb#xldZ.dZ.dFV.Jf.IW.Pm.Wr#Iy#xudZ#dZadZbaNh#rZ#YAdRo#YB#ol#qm#rT#uEdZcdZd.zv.vV.zvdZe#aqQt2#bCdZfdZgcVs#cTdZhdTZdZiduPdjAdCndjBbzMdZjc2JbWTdZkcZudhWdt#djEdZlds7bn2dZmdZndZodZpdIqdZqdZrdKJdpjdZsdZtdZudZvdZwaoOdZxdZydZzdZAdGldAMdGndgkdrsdZBdZCdZDdZEdyHdW2dZFdZGdw6dZHdZIdZJdZKdZLdZMdZNdZMdZOdZPdZQdZRdZSdZTdZUdZVdZWdZXdZYdZZdZ0dZ1dZ2dXndZ3dZ4dZ5dZ6dZ7dZ8dXwdZ9d0.d0#d0ad0bdXCd0cd0dd0ed0fd0gd0hd0id0jd0kd0ld0mdQld0ndO.dVed0odXSd0pd0pd0qd0rd0sdXVdJqdJpd0td0ud0vd0wd0xcPkd0yd0zdSZdSZd0AcNKd0Ba8P#v5cUN#DT#2BaKE.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON#v6#Ch.N4#Oj#Cid0CbAB#v0#v0boM#KK.xUd0Dd0Ed0Fd0Gd0Hd0I.zL.sIaeg#v1#yH#vX.zW#DQ#v1ababCx#v0#T5#DO.xU#v0#yH.uRcI..xx.BH#0F.zW#v0#Og#v0#v0.xDaMe#Jp.swbrT.Dg#DQ#v1.xUbo0buad0Jd0Kd0Ld0Md0Na64d0O#yJ.wcd0Pd0Qd0Rd0Sd0Td0Ud0Vd0WaxZaveafSd0Xd0Yd0Zd00d01d02b5P#Og.xU.xU#v0#yHbqHave#6Zd03bqGboNcekd04d05d06d07d08d09d1.d1#", +"cGcd1ad1bdYsdHFcNU.xU#9WboR#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#AdboV#2D#DRd1cdDKcoY.N4.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.N4asm.UC#FLd1dd1ed1fd1g.Tgd1hd1id1j.VCd1kd1ldJ1#MId1md1nd1odYXd1pdOOd1qd1rdY0d1s#mRd1tdO4#gqd1ua5Ja5Jd1vdMK#lnd1wd1x#bX#xldMQd1y.JfdMQ#Bh.UX.Ucd1z#xud1Ad1Bd1CdZbdym#IG#Pp#pn#qm#ol#n5#sn.BG.WN.xw.AU.zvd1D.#g#bCd1Ed1FcVsd1GdWzd1HcLbd1IdsPcG1djBd1JaEobUMc2JdwOddVdctd1Kda2dyzd1LdsQc2Ld1Md1Nd1Od1PdEjd1Qd1Rd1Sd1Td1Ud1VdWSd1Wd1Xd1Yd1Zd10d11d12d13d14d15d16d17d18d19dyId2.d2#d1Sd2adKTd2bd2cd2dd2ed2fdXad2gdXbdXbd2hd2id2jd2kd2ld2md2nd2od2pd2qd2rd2sd2td2ud2vd2wdZ2d2xd2yd2zd2Ad2Bd2Cd2Dd2Ed2Fd2Gd2Hd2Id2Jd2Kd2Ld2Md2Nd2Od2Pd2Qd2Rd2Sd2Td2Ud2Vd2Wd2Xd2Xd0odXQd2Yd2ZdXSdVhd20dJpd21d22d23d24dXZd25d26d27dSZd0Ad28d0ycKZ#fw#OjaQAc6o#MP#2BaKE.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON#v6#Ch.N4#Oj#Cid29#z9#v0#v0#v0.xUaAFd3.d3#d3ad3bd3cd3d#Abaq1#v1#yG.xU#DPaO9.zW#v1cCv#vV#vU.zW.xU#v0.xU#yH#DOc#O#96#0F#FO#v0.xU#yG#v0#v0#DQ.xD.Dg#96.BPapl#v0#yG#KRavebmSd3ed3fd3gd3hd3ibuad3j#yJbVtd3kcekd3ld3md3nd3od3paxZ#KR#6Z#Ogd3qd3rd3sd3t#0udJTbVi.xU#yG#yG#v0boRdOr#9Wd3ud03bqFafSc#Dd3vd3wd3xd3yd3zd3Ad3Bd3C", +"d3Dd3Ed3Fd3GdTqdf##v0boR#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#AdboV#Af#DRd1cdDKdkS.N4.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.N4#Oj.UC#Chc6td3Hd3Id3Jd3Kd3Kd3Ld3Md3Nd3Od3P#B6d3Qd3Rd3Sd3Td3Ud3Vd3Wd3Xd3Yd3Zd30#iW#kDd31d32d33aZIdx4d34d35d36d37.P9#bY.Q.dMQd1ydFV.Jf.PZ.Pm.LY.PZ#Pfd38#Pnd39dym#PqdRo#r0#pO#qh#oR#qb#tgd4..uX.vV.Fp.Dq.#I#aqcRn.e2.g2d1Gc2wd4#d4ad4#d4bdjAdyqdsPdhSd4ccVMd4dd4ed4fd4gdehdNkd4hdtadjAds4d4id4jd1LdAHdywd4kdGnd17d4ld4md4nd4od4pd4qd4rd4sd4td4ud4vd4wd4xd4ydW0dZDd4zd4Ad4Bd4Cd4DdyHdNpd4Ed4Fd4Gd4Hd4Id4Jd4Kd4LdXbdXbd2id4Md4Nd4Od4Pd4Qd4Rd4Sd4Td4Td4Sd4Ud4Vd4Wd4Xd4Yd4Zd40d41d42d43d44d45d2Bd46d47d48d49d5.d5#d2Ld5ad5bd5cd5dd5ed5fd5gd5hd5id5jd5kd5ld5md5nd2WdSId5od5pdVedQmdOdd5qd21d22d5rd22d5sd5td5ud5vd5wdX3cNHd5xcKY#fw#OjaQAc8Y#2B#2BaKE.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON#v6#Ch.N4#Oj#Cid5yb#O#v0#v0#v0#yH#Ckbsu#v0d5zd5A.xUd5B.xUboM.xU.xU.xU#v0.zW.Dj#Hf#Ab#vW.v5#DO#yH#Ck.xU.xU#Abapl.sJ.xD.xU#v1.xU#yH#v0#v0#vV#vUahgc#O.Dj#v1#yH#yGaiN#vZ#yGd5Cd5Dd5Ed5Fd5GcN7boZaGo.xUaL8d5Hd5Id5Jd5Kd5Ld5M.xUbdTcQ6d5Nd5Od5PboWd5QdzOd5RafSboM.xU#yG#v0#yHboR#9WboKbMYd5SaRTc7Md5Td5Ud5Vd5Wd5Xd5Yd5Zd50", +"d51d52d53bCNd54dOx#Ae#9W#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#AdaO0#Af#DRd1cdDKaZO.N4.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.N4#DT#DT#yAd55d56d57d58d59d59d6.d6#d6ad6bd6c#Szd6dd6ed6fd6gd6hd6id6jd6kd6ld6md6nd6od6pd6q#jKacEdFDd6rd6sdFLd6td6ud6vd6wd6xdFVd6ydFV#xl.Q..LZ.Pm.SDd6z#xvdTVd6A#rZaKhbk4#sd#uJ#ru#m1#qf#tg.BC.uC.xV.yr.uP#eycQ.dwEcTW.aQd6Bc04d6Cd6Dd6EdCrdoZd6Fc2zd6Gd6Hd6Id6Jd6Kd6LdlEd6Mdcpd6NdGndjBdjAd6Od6Pd6Qd6Rd6Sc6Zd6Td6Ud6Vd6Wd6Xd6Yd6ZdZDd1Sdpud60d61d62d63d64demd65d66d67d66d68d69d61d4Dd16d67d7.d7#d7ad7bd7cd7dd7edZMd7fd7gd7hd7id7jd7jd7kd7ld7md7nd7od7pd7qd2nd7rd7sd7td7ud4Zd7vd7wd7xd7yd7zd7Ad45d7Bd7Cd7Dd7Ed7Fd7Gd7HbDJd7Id7Jd7Kd7Ld7Md7Nd7Od7Pd7Qd5nd7Rd7Sd7Sd7Td7Ud0od7VdXSd7Wd7WdSPdHfd7Xd7Yd7Zd70d71d72dVsd73dVrd73d74#iedzHc8X#0J#v5#T6a...ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON#Ch#Ch.N4#Oj#Cid75b#O#v0#v0#v0#v0#yJbmSdOud76#O##KRb3D#yG.xU#v0.xU#yG.xU#v0ak##FO#FO.v5#0I#v1bqG#6Z.xU#Ae#yG#v0bO6#Hf.xU#yG.xU.xU#v0.xU#yG#yG#DO#DQ#Og.xU#Og.xUaiNboI#yG#R.d77d78d79d8.#yJboMaGo#KKdOtcHSd8#d8ac#Cbsr#DGafS#AeaRT#Ckcd1bynd8bd8cbm0#Ae.xU.xU.xU#yG.xU#v0boRaRT#CkbMYaUXaRTc#E#AeaAF#T4dOx#T4bo0d8dd8e", +"d8fdkOd8gd8hd8i#yG#vZboR#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#AdboV#Af#DRd1cdDKdkS.N4.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.UC.UC#Aj#yzbwzd8jd8kd8ld8md3Kd3Kd8nd6ad8od8pd8qdV9d8r##Kd8sd8td8ud8vd8wd8xd8yd8zd8Ad8Bd8Cd8Dd8Ed8Fd8Gd8Hd8Id8Jd8Kd8Ld8Md8Nd8Od8Pd6y.Jf#xl.4Id8Qd8R#xld8Sd8Ta#iaNh#M##dA#pO#rt#mi#n0#qb#oW#u5.tH.hn.yq.trbp4d8U.MId8V.fydZdak4d8Wdcgd8Xc2pca2aEgcWP.kMd8Yd8Zd80d81d82d83d84d85dACd86dq2d87d88d89d9.d6Sd9#d9ad9bd9cd9dd62d9ed9fd9gd9hdNod9id9jd6Zd9kd9ldRNdved9md9nd9od9pd4Bd9qd9rd4Cd9sd9td9ud9vd9wd9xd9yd9zd9Ad9Bd9Cd9Dd9Ed9Fd9Gd9Hd9Id9Jd9Kd9Ld9Md9Nd9Od9Pd9Qd9Rd9Sd9Td9Ud9Vd9Wd9Xd43d9Yd9Zd90d91d92d93d94d95d96d97d98bw8d99e..e.#e.ae.be.ce.de.ee.fe.ge.he.ie.je.ke.le.me.kd5md2Ze.ne.oe.pdHfe.qe.re.sdX0dX0e.te.ue.ve.we.xe.ybg2#2BamQaQA#34.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON#v6#Ch.N4#Oj#CidX8b#O#v0#v0#v0#KK#KRaxZaxZ#KR#9WafS#yG.xU.xU#v0#v0.xU#yG.xU#yH#v0#v0#yH#yH#yG#9WbJm#CkaRTe.z#KHaUW#yH.xU#yG.xU#v0#v0.xU#yG#v0#vV#vV#v0#yG.xU.xUaiN#6Z#6ZboI#Ae#Ckcb9e.AaxZ#KK#KK#KK#v0#9W#O#bsuboKafS#9W#9W.xU#yG#vZaTM#yH.xU#KK#W2boM#yG#v0.xU.xU.xU#v0boR.xU#KRbsu.xUboM.xU#2Dcji#6ZaGo#Ckbsse.Be.C", +"e.De.Ee.Fe.GcEtaUX#vZboR#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#AdboV#Af#DRe.H#PUcoY.N4.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.N4#Hh.UC#CgbMVdV7e.Ie.Je.Kd3Md6.d1ie.Le.Me.N.VCe.O#Cae.Pe.Qe.Re.Se.Te.Ue.Ve.We.Xe.Ye.Ze.0e.1e.2dMD#kKdRce.3e.4e.5e.6e.7e.8e.9e#..Yg.Yg.Jf#Bhe##e#a.Q.#xxe#bdAoaKh#M##qh#71#n0#oR#m1#ed#rt#q1.yr.yq.FT.uBc9Ve#c.LD.fu.TUcVpatoe#de#e.kd#r8dfKacj#rF.jS.jY.kK.iNe#fe#gd83e#he#ie#je#ke#le#me#ndM4e#odIAdyAdRUdyDde.e#pe#qe#rd6Ne#sdGodUodEpd1Pe#te#ue#vdWUe#we#xe#ye#ze#Ae#Be#Ce#De#Ee#Fe#GdR1e#He#Ie#Je#Ke#Le#Me#Ne#Oe#Pe#Qe#Re#Se#Te#Ue#Ve#We#Xe#Ye#Ze#0e#1e#2e#3e#4e#5e#6e#7e#8e#9ea.ea#eaad2Beabeaceadd7Deaeeafeageaheaieajeakealeameaneaoeapeaqeareaseateaueavd2XdO.d2Yd0od2Xd2Yeaweaxd7Xd7YdJoeayeaze.ueaAeaBd0veaCeaDeaEeaF#MPbsh#Cf#5FatT.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON#v6#Ch.N4#Oj#CieaGb#O#v0#v0#v0#KR#KKboM#6QbdTboMafSafS#yG#Og#yG#Og#Hf#Og#Og#Og#Og#Og#Og.wc.wc#OgatV.wceaH.wceaHeaH.wc#Og#Og#Og#Og#Og#Og#Og#Og#Og#Og#Og#Og#Og#Og#Og#Og#Ogbyfbyf#HfbO7byfbyf#Og#Og#Ogbyfbyfbyb#HfcekbybbO7.wc#Og#Og#Og#Og.wc.wc.wc#Og.wc.wc#Og#Og#Og#Og#Og#Og#Og#Og#Og#Og#Og#Og#yG#Og#HfbJjaX8eaIceheaJ", +"eaKeaLeaMeaNdMkbqF#vZaL9#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#AdboV#Af#DRe.H#PUcoY.UC.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON#Hh.UC#CgbI9eaOeaPeaQ.T5d3Md3KeaRd6aeaSeaTeaUeaVd1jeaWeaXeaYeaZeaP#hmea0d1s#jBea1e.Ze.0ea2ea3ea4ea5d31ea6ea7ea8e.6d6we.8ea9eb.dMQ.YgdFV.PZeb#eba.PZ#U5dH3dZbebb#m0#qJ#ol#oR#oR#m1#qe#tedD5.hn.ti.yqatkebcebdebe#aq#aq.0V.TU.bl.a3ebfdaJaElebgc0ZebhebidlydADdF7ebjebkeblebmebneboebpebqebrdIpdNnebsebtdRUdyAdyzdZlc4hd6SdyzdwPdRVebudGnebvebwebxebydZsebzd4BebAebBebCebDebEebFebGebHebIebJebKebLebMebNebOebPebOebQebRe#SebSebSebTebUebVebWebXebYebZeb0eb1eb2eb3eb4eb5eb6eb7eb8eb9d9Xec.d2Bec#ecaecbeccecdeced7Eecfecgecheciecjeckeclecmecnd7OecoecpecqecreauecsectdSKecud0od5pecvecwecxd7XecydmfeczecAecBd5udX0dX0ecCeaDeaEaWRbg2bsh#Cf#SFatT.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON#v6#Ch.N4#OjdFuecDb#O.xU#v0#v0.xU#v0alr.xU.xU#yG#v0#0IbyC#Acaeg#vU#vU#T5aeg#T5.zW#vUaeg.zWaegaeg.zWecE#vU#vU#T5ecFb5Uaeg#Acapl#Ac#Ac#Ac#Ac#Ac#Ac#Ac#Ac#Ac#Ac#Ac#Ac#Ac#Ac#Ac#Ac#Ac#Ac#Ac#Ac#Ac#Ac#Ac#Ac#Ac#Ac#Ac#Ac#Ac#Ac#Ac#Ac#Ac#Ac#Ac#Ac#Ac#Ac#Ac#Ac#Ac#Ac#Ac#Ac#Ac#Ac#Ac#Ac#Ac#Acaplaplaeg#vX#vUapl#AcaegecGecHecI", +"ddkdQUecJe.G#Rh#yGboVbgV#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#AdaO0a64#KTecKc0EdkS.N4.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.N4a8P.XQ#v6b9EecLecMecNecOecPd3Ke.T.MZe.NecQecRd6#ecSecTecUe.SecV#CbecWecXecY#jBecZec0ec1ec2ec3ec4d1tdY3ec5ec6ec7ec8ea9ec9ed.ed##xl.JfdFV.PZedaedb.X5#bk#xtedc#Po#uE#pO#oY#oR#n0#qf#kA#hx.tH.tsQtz.zvc8gcG1dCmcSB.S4.0V.#ledd.a3edeedfedgca5bIsedhediedjedkedld81edmcNYednedoedpedqedrdZwedsedtedudCBdGndIAd6RedvdIwd4ddtad4dedvd1MdALedwedxedyedze#Bd4BedAedBedCdUqedDedEedFedGedHedIedJedKedLedMedNedOedPedQedRedSedTedUedVedUedWedXedYedZed0ed1ed2ed3ed4ed5ed6ed7ed8ed9ee.ee#eeaeebeeceedeeeeefeegeeheeieejeekeeleemeeneeoeepeeqeereeseeteeueeveeweexeeyeezeeAd5odO.d2Ye.ld0oeeBdSPeaxeeCeeDeeEeczeazeeFd25d71e.uecBcNIeeGbVHc8XbshbAh#5FatT.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON#Ch#Ch.N4azb#CieeHb#O#v0#6Z#v0afS#yG#v0#MQ#97#v0#yHbQ2#CjeeI.uReeJ#vUak##vUak##DQ#Aa#PX.zWaO9.Dmcv3bO3aplaWYbvZbwcak#cl6#vWak#ak##vX#vX#vX#vX#vX#vX#vX#vX#vX#vX#vX#vX#vX#vX#vX#vX#vX#vX#vX#vX#vX#vX#vX#vX#vX#vX#vX#vX#vX#vX#vX#vX#vX#vX#vX#vX#vX#vX#vX#vX#vX#vX#vX#vX#vX#vX#vX#DQ#DQ#vX#0I#FO.Fia35aegak#eeKeeLcv0eeM", +"eeNeeOeePd3GeeQcH2eeRboR#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#AdboV#2D#DRe.HdQXaZO.N4.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.UC.XQ#CgcjqeeS#SAeeTeeU##XeeVeeWd8rd8qeeXeeYeeZee0ee1ee2ee3ee4ee5ee6ee7ee8d3Ud6gee9ef.ef#efaefbefc#gq#htefdefe#hyeffe.6.P8efg.Lbefh.JfdMQ.Q..QPefh.Q..3oefi#cKefj#uo#j4#co#cI#qf#oW#rt#qh#qI.tmQtyaqtefkdnheflefmaY3.htefnefo.ixefpdo5efqcVfdCrefrefsd#BeftdgbefuefvefwefxdWKefyeboefzefAdZvdWRefBefCd11dyBefDefEdt.efFefGefHefId6SefJefKefLefMefNefOe#AefPefQefRdvsefSefTefUefVefWefXefYefZef0ef1ef2ef3ef4ef5ef6ef7ef8ef9eg.eg#egaegbegcedZegdegeegcegfeggeghegiegjegkeglegmegnegoegpegqegregsegteguegvegwegxegyegzegAegBegCegDegEegFegGegHegIegJegKegLegMegNegOegPd0qdQmdXOegQd2ZdSNdSPe.oegRegSegTe.seazdX1d71egUe.te.weaEbg2bjRbdZ#Cf#8IatT.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON#v6#Ch.N4#Oj#CiegV#0I#v0#v0#v0#yG.xU#v0ak##Aa#KR#AdbVCegWegXegY#lxegZeg0.sveg1eg2eg3eg4.Dmeg5eg6eg7.G4a35#Akeg8eg9.GhbCIb3A#2D.xU#v0#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#v0#vV#Hf.xy.ts#MS#vU#AbbCTa2Xeh.cbQ", +"eh#ehaehbehcbXicH2#KK#W2#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#AdboVa64#Rkehd#PUaZO.N4.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.N4.UC#yzaJqbfweheehfehgehhd1jd6eeeTd6#ehiehjehkehl##0ehmehnehoehp.Tg.T5#ysehqehrehsecXea0ehtehuehvehwehxehyehzehA#E3dMP.Q.ehBehCd1z#xl.Yg.Jf.P9.Jf.Oi.Lb.4t#xsehDehE#72#ci#bm#qe#rT#ol#pt.XKQtN.uPaNfdM2ehFehGdZdc01ehH.BZ.#W.gfc9vc6IehId#mdibcRrehJd#xehKehLehMehNehOehPehQehRehRehSehTehUehVehWehXehYehZefFeh0cGXeh1dwQefHeh2eh3eh4eh5eh6eh7eh8eh9d68ei.ei#eiadZFeibeiceideieeifeigeiheiieijeikeileimedQeineioeipeiqeireiseiteiueiveiweixeiyeizeiAeiBegfeiCeiDeiEeiFeiGeiHeiIeiJeiKeiLeiMeiNeiOeiPeiQeiReiSeiTeiUeiVeiWeiXeiYeiZei0bH8ei1ei2ei3ei4ei5ei6ei7ei8ei9ectdSLd5nd5nd0nd0od0pej.dJmej.ej#ejaejbejcejdejeejfejgbXxcCq#2BbdZaWRatTatT.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON#v6#Ch.N4#Oj#CiejhaZP#v0#Ad#v0#v0#yH#Og.xyejiejjcCFb1Aejkejlejmejnejoejpejqbf6ejrejsejtejuejvejwejxbQZejyejzaJrejAejBejCejD#v1#yH#yH#v1#v1#v1#v1#v1#v1#v1#v1#v1#v1#v1#v1#v1#v1#v1#v1#v1#v1#v1#v1#v1#v1#v1#v1#v1#v1#v1#v1#v1#v1#v1#v1#v1#v1#v1#v1#v1#v1#v1#v1#v1#v1#v1#v1#v1#v1#yH#yH#Ab#Ac#SH.ttasj#yG#vVbuiejEejFbXs", +"ejGejHejIejJcc.cF5#KKbsu#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#vYboVa64#KTejK.ONaZO.N4.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.UC.XQ#62#FMejLejMehfejNejOd6#d6#.Tgd6..PSejPecQejQejRejSejT.WcehfejUejVejWejXejYejZej0ej1ehtej2ej3ej4dB7ej5ej6ej7ej8#Bsej9dFOehC#Bh.PZdMQ.Yg#xl.Jf.5y#xC#bP#aH#Iw.W4ek.dKo#nU#rT#om#oZek#.yrQtN.FpekadWCehFav4cSAcZzekbekc.kTekdekeekfekgdIbdegekhekidgidpcekjekkdpkdrheklekmeknekoekpdRDekqekreksd4xdCBdyBektekuc8cekvekwebtd4tekxekyekzekAekBekCdrrd4EekDekEekFekGekHekIekJekKekLekMekNekOekPekQekRekSekTekUekVekWekXekYekZek0ek1ek2ek3ek4egeek5ek6ek7ek8ek9el.el#elaelbelceldeleelfelgelhelieljelkellelmelneloelpelqelrelselteluelvelwelxelyelzelAelBelCelDelEelEe.kelFelGd5md2Xe.lelHdJnd7WdQodHeelIelIegTelJelKelLelMelN#v5#MPbdZ#62.N4atT.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON#Ch#Ch.N4azbdzIejhaZP#v0#Ad#v0.xU#yG#DO.sJ#Jpb1W#MQb9pelOelP.G5elQbRhelRelSbqt.HAelTelUelVelWelXelYc#telZel0.weel1el2el3el4aiN#vZ#v0#v0#v0#v0#v0#v0#v0#v0#v0#v0#v0#v0#v0#v0#v0#v0#v0#v0#v0#v0#v0#v0#v0#v0#v0#v0#v0#v0#v0#v0#v0.xU.xU#v0#v0#v0#v0#v0#v0#v0#v0#v0#v0#v0#v0#v0#v0.xU#yG#yH#vW.BQ.sx.xT#MQ#yI#Jsel5el6el7", +"el8el9eePem.bN#afS#KKax0#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yHboSa64#DRem##PUaZO.N4.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON#Hh#yyb7SaCIemaembemcemd.T5.UH.UHeme.RB##Y##2emfemgemh.LX.UHejUemiemjee4emkemlemmemnemo#hFempemq#hI#lvemremsemtemu#IBemvemwdTR.X#emx.PZ.YgdFVemyemzemAemB#bl#cR.Qf#L6#bW#df#rt#om#oX#5#ak6QtC#m8ehFemCdnhemDemE.dFemFemGemHemIemJemKemLemMdyudnjcQhemN.jVemOe#kemPemQdM9emRemSemTemUemVemWemXd60emYemZdyxem0dyAeh2dpuem1d18d4Eem2em3em4em5em6dPFem7em8em9en.en#dZzenaenbencendeneenfengenheniekQenjenkenlenmennenoenpenqenrensentenuenvenwenxenyenzenAenBenCenDenEenFenGenHenIenJenKenLenMenNenOenPenQenRenSenTenUenVenWenXenYenZen0en1en2en3en4en5en6en7en8en9elDeo.eo#eoaeobegPd2Xd2Zeoce.nd7Vej.ej.eoddJod22eoeeofeogbXxapo#Oj#0J#yz#yA.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON#v6#Ch.N4#Oj#yCeohaZP#v0#Ad#v0.xU#yG#v0#yG#Og.xU#AbbwqeoieojeokeoleombEtbVCbCyeoneooeopbVCeoqbXlbVCeoreose.Geoteou#vXeovc#B.uVak#ak#ak#ak#ak#ak#ak#ak#ak#ak#ak#ak#ak#ak#ak#ak#ak#ak#ak#ak#ak#ak#ak#ak#ak#ak#ak#ak##vW#vWaeg#T5.zWaeg#vU#vU#vU#vU#vU#vU#vU#vU#vU#vUeoweoxeow#vU#vUeoy#T5#T5.Ep.Dj#vU#0I.uVeozeoAeoBeoC", +"eoDeoEeoFehcbXiafS#KKax0#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yHboV#Af#DRem##PUaZO.N4.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON#Hh#yyeoGbqreoHeoIeoJeoK.VCeoLeaUeoMeoNeoOeoPeoPeoQe.LeoR.UHeoSeoSeoTeoUeoVeoWeoXeoY#VF#SBeoZeo0eo1eo2efdeo3eo4eo5emueo6eo7eo8#Bo.LZ.LZ.Qd.Jf.7Teo9ep.ep#dMOepa.Mw.MY#db#aN#pK#ol#oX#rz.78QtybxBcIJdnhepbepcemE.kWepdepeepfepgephepiepjepkepldAwdM4epmepnepoeppepqeprepseptepuepvepwepxepyepzd9gebvdAJdCCdRTepAepBepCe#DekDepDepEepFepGepHem1epIdZEepJe#AepKepLepMepNepOepPepQepRepSepTepUepVepWepXepYepZep0ep1ep2ep3ep4ep5ep6ep7ep8ep9eq.eq#eqaeqbeqceqdeqeeqfeqgeqheqieqjeqkeqleqmeqneqoeqpeqqeqreqseqtequeqveqweqxeqyeqzeqAeqBeqCeqDeqEeqFeqGeqHeqIeqJeqKeqLeqMelEelGeqNeqOeqPd5meqQeqReqSd7Vd7Wd7Wd20d20d22eqTeqUeqVeqWapo#Oj#0J#yz.N4.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON#Ch.N4#Oj#yCeqXb1Q#v0#v0#v0.xU.xU.xU#yG.xU#yIeqYeqZdogeq0#FNb1JaX9dJSeq1dJSeq2aGyaplb1HbytbGUcCucCubymbymcyw#vTbyCeq3aO9bZnaO9aO9aO9aO9aO9aO9aO9aO9aO9aO9aO9aO9aO9aO9aO9aO9aO9aO9aO9aO9aO9aO9aO9aO9aO9aO9aO9aO9eq4cAyaeg#vWdMb#DQ#DP#DPak#b5I#vUbwcb5I#vW#vWbm0#vWeq5bCyb9peq6eq7#vU.uV#vX#DQaeg.Djb1W#Aaeq8dqheq9", +"er.er#eraerbbm.afS#KKax0ax0#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yG#Af#DRerc#PUaZO.UC.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.UCa8PaQAeoGcZaerdereerfergerh.UH.LX.MZ.PS.X0erierjecR.T5erkd59erlecRermerneroerperqerrersehuerteruerverwerxeryerz#xFerAerBerCerD#Iz.LYerE.UX.PZ.Jf#xCerFerG#xG#dC.Qf#U3.5u#oNerH#oZ#pt#qh.8..gZatraEtbzJerIav7erJerKerLerMdnberNerOerPerQerRdjUc6Zc05djDerSdABerTerUerVerWerXerYerZdGuer0er1er2dUmer3er4er5er6er7er8er9es.es#esaesbescesdeseesfesgeshesid2.dcAeiaesjeskeslesmesnesoespesqesressestesuesveswesxesyeszesyesAesBesCesDesEesFesFesGesHesIesJesJesKesLesMesNesOesPesQesResSesTesUesVesWesXesYesZes0es1es2enUes3es4es5es6es7es8es9et.et#etaetbetceqHen7eeyetdelDeqOeteetfetgethetietjetkdVjetletmetnd5sd0tetoetpeqW#T6asmetqaWRapo#8I.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON#Ch.N4#OjdzIeqXb1Q#v0#v0#v0.xU.xU#yI#vX#0I#DQbMXetrb7tetsettb7tetuetvbXmetwetxaQC#v2ak##vXeq6b5IetyetzetAbQ1etB#DLetCbwfdMabwj#DP#DP#DP#DP#DP#DP#DP#DP#DP#DP#DP#DP#DP#DP#DP#DP#DP#DP#DP#DP#DP#DP#DP#DP#DP#DP#DPbQ1etDbCmaRXbZC#DQetrbwfb1XboR#OfetEaiN#yJb3DetFb3DaAEcvKbO7bVtaa4aUW#VKbmSbXAetGbRhbPc.Ev#g0etHetI", +"etJetKetLehc#2EafS#KK#KK#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#Ad#Aea64#DRetM#FMaZO.N4.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.N4a8P#yB#PUaCIerdemeerfetN.UHemeeoNd6a.MZeoN.VC.LX.Wc.SwetOetP.RBehietQeoVernetRetSerserrej2etTetUetVetW#d8etXetY#ohetZet0et1d6ue.7et2et3et4et5et6.6Eet7#Btet8#xv.6q.W3.MY#os.BD.Rw#r2aZk.gQ.#ocSAdCmet9dqWeu.eu#euaeubeuceud.iNeueeueeufeugeuheuidCqaWadcJdGmeujeukeuleumdGkeundwVeuoeupeuqeurdZDdW0euseuteuueuveuweuxeuyeuzeuAeuBeuCepEeuDeuEeuFeuGeuHdZFdxheuIeuJeuKeuLeuMeuNeuOeuPeuQeuReuSeuTeuUeuVeuWeuXeuYeuZeu0eu1eu2eu3eu4eu5eu6eu7eu8eu9ev.ev#evaevbevcevdesNeveevfevgevhevievjevkevlevmevnevoevpevqevrevsevtevqevuevvevwevxevyevzevAevBevCevDevEevFeeyegMevGevHeqGevIevJevKevLevMevNetjetkevOevPevQevRevSevTeqV#iR#0J#OjbdZ#MP#yBatT.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON#v6#Ch.N4#OjdFueqXaZP#v0#v0#v0.xU#yG#Og#v0#Hf.xUevU#97evV.Fe.Feba6evWbXibXi#Af#v0#RkbLc.Fe.FebNa#X.bLcevXaq1#KSevYevUevZevZaAD.Fe.Fe.Fe.Fe.Fe.Fe.Fe.Fe.Fe.Fe.Fe.Fe.Fe.Fe.Fe.Fe.Fe.Fe.Fe.Fe.Fe.Fe.Fe.Fe.Fe.Fe.Fe.FebXhbCLdhiev0aE0aMbev1bVkbwgev2ev3bwlaP.cAzev4ev5ev6d8iev7acSev8ev9ew.ew#boUbwcewaewbewc.u0.Ydewd.tO", +"eweewfewgbZGbXiafS#KKax0#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#Ad#Ae#2D#Afewh#PUaZO.N4.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.N4#Hh.N4.ONewiecLewjewkewlewmeme.RB.WceaU.UH.UHeoN.PSemeewnewn.PSewoewpewqewretQewsewtewu#hFej2ewvewwewxewy#eXewzd1yerFewAewBewCewDewEewFewGewHcwG.1q#BdewIewJ#E1#Bf#cQ#L6.v7.hn.uC#tlaZk.gX.#id1EebdewKdludoWcQg.asc6Jc6Jdo5dgidlCeugehNdlCehKc2FewLbGbewMc97decedoewNewOewPdyvewQdwVewReh4dreewSewTd1VewUewVewWewXewYewZew0ew1ew2ew3ekzew4ew5efOew6ew7ew8dvqew9ex.ex#exaexbexcexdexeexfexgexhexiexjexkexlexmexnexoexpexpexqexrexsextexuexveu9exwexxexyevbexzexAexBevdexCexDexEexFexGexGexEexHexIexJexKexLexMexNexOexPexQexRexSexTexUexVexWexXexYexZex0ex1ex2ex3ex4ex5ex1ex6ex7ex8e.jex9ey.evMey#e.meyaeybeyceyddXYeyeevReyf#yB#Cgbsh#HhamQatT.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON#Ch#Ch.N4#Oj#Cieygeyh#v0#v0#v0.xU#yG#yH#yHaO9#vU#yG#2D#v0.xU#Ae#Riak##DQ.Ey#DO.Fg#T5#yG#Og.xU#yH.xU#yGbEt#MQbAqcCvcCvbAn#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9cCvcUU#VKbAveyieyjeykeylev3eymeyneyoeyp#2Feyqeyreyseyteyueyveyweyxeyyeyzba0b5U#i2eyAeyBeyCeyDeyEb7u", +"eyFeyGeyHeyIdTqafS#KK#z4#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#Aea64#AfetMeyJaZO.N4.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.N4.UC.N4#ZebfwecLeyKecOeyL.T5.UH.PSeyMeoNd8q.VCeoNeaU.T5eyNeyOd8qeyPeyQeyRee4eySeyTdFG#ktehteyUeyVd1reyWeyXd1sdKedFV#xCerFeyYeyZey0ey1ey2ey3ey4ey5ey6#cpd38ey7dMP#R6ey8#Bm#kB.tQ.hn.yr.tH.gX.e2#bCey9ez.ez#cdncWUcX3daO.kOezaezbezceufeugezddG.ezedeqdEabOkds9ezfezgezheziezjezke#pdejezlezmeznezoezpezqezrezseztezuezvezwezxezyezzezAeijezBd4AezCezDexeezEdW1ezFezGezHef0ezIezJezKezLezMezNezOezPezQezRezSezTezUezVezWezXezYezZez0ez1ez2exxez3ez4ez3ez5evbez6ez7ez8ez9eA.eA#eAaeAb.h6eAceAdeAeeAfeAgeAheAieAjeAkeAleAmeAneAoeApeAqeAreAseAtelpexYeAueAvex1ex1eqLeeyegMeAwetceAxeAye.jd7TeAzeAAey#eeBeABeACeADeAEeAFd70eAGeAH#yBaWR#yA#Cf#5FatT.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON#v6#Ch.N4#OjatUeAIaZP#v0#v0#v0.xU#v0#yH#Hf.BV.uT.tA.tJ.v4.xT.BK.Fg.we.xDcAP#T5.uT.BK.v3.v4.xB.Di.uL.uL.xT#v1abacCv#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9bN##VKeAJcTueAKbwdbwbcv4eALeAMeANa36cCOeAOeAPeAQeARcY4eASeAT#NdeAUeAVbl6#vWeAWeAXeAYeAZcAReyEb7u", +"eA0ef9eA1eA2cCGafS#KKax0#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#Ad#Aea64#DRetM.ONaZO.N4.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.N4#Cg.UC#Zecex#PO.TgecNejOewl.RBeA3.MZ.LXerleoL.VC.RBemedYNewnd8qecReroeySeA4eA5eA6eA7eA8ej0eoZeA9eB.eB#eBaeBbehxd1y.7T.OieyYerFeBce.6d8OeBdeBedwi.IN.YceBfeBgeBh.6qeBi#bleBj#uF.uC.trQty.dI.dy.iydWBemDcOHbIsddYeBkc4demNd#Bezbc9JdaY.jSeBleBmeBneBoeBpeBqeBrehLeBseBteBueBve#rdUleBweBxeByeBzeBAeBBezqeBCeBDeBEeBFeBGeBHeBIeBJeBKezBd67eBLd4Ad9ndPFeBMew8eBNeBOeBPeBQdK8eniew4eBReuReBSeBTeBUeBVeBWeBXeBYeBZeB0eB1eB2eB3eB4eB5eB6eB7exxeu9eB8eB9eC.eC#eCaeCbeCceCdeCeeCfeCgeCh.eTeAceCieCjeCkeCleCmeCmeCneCoeCpeCqexNeCreCseCteCueCveAseCweCxeCyeCzeCAeCBeCCen8eeyetdeCDetceAxeCEeCFdVceCGeCHetjevOeCIeACeCJecyevSecyeCKeyf#yBciFbsh#CfatTatT.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON#v6#Ch.N4#Oj#CieAIaZP#v0#v0#v0.xU#v0#v0#Hf#PX.uT.BK.xB.v4.v5#AaaplaO9.zW#yI#DPak##DQ#PX.Di#PX.BV.we.BK#T5#97bAqabacCv#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9#W9cCvbXheCLeAJaKHbAvbCmcY4ecEeCMeCNbXBeAHeCOeCPeCQ#8HeCReCSeCTeCUeCVeCWeCXeCYeCZeC0eC1eC2eC3eC4eC5eC6", +"eC7eC8eC9eD.evWboM#KKax0#0w#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#Ad#Ae#AfeD#eDa.ONaZO.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.N4.UC#0Jc0EaCI#POeDbemceme.T5eoNerleA3eDc.LXd8q.T5.UH.RB.MZeaUeaUeDdeDeeDfeDgeA4eDh#efeDi#VFdWheDjeDk#hEeDleDmeDneDoeDp.RR.Q2eDqeDreDse#.ed#eDteda.5x.MY.RAey8eDu.W4eDveDw#gf#tiav2.T#.#j.vYcVr.MBeDxcu6eDyduUcYcdcteBkemNeDzeDAehKeDBeDCeDDeDEeDFeDGeDHeDIeDJeDKeDLeDMdIseDNeDOeh9deseDPeDQeDReDSekHefBeDTeDUeDVeDWeDXeDYeDZeD0eD1eD2eD3ew5eD4dyHdRPeD5eD6eD7eD8eD9eE.eE#eEaeD3eEbeEceEdeEeeEfeEgeEheEieEjeEkeEleEmeEneB3eEoeEpeEqeEreEseEteEueB8eC.eEveEweExeEyeEzeEAeEBeECeEDeEEeEFeEGeEHeEIeEJeEKeELeEMeENeEOeEPeEQeEReESeCveETeEUeEVeEWeEXeEYeEZeE0eE1eE2eE3eE4eE5eCDeteevIeE6eE7d7Rd7SeCGeE8eE9eE9eF.eF#ecyeeDecyd23eFa.UC#MPb7r.UCaQA#34.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON#v6#v6.N4#Ojd.KeFbaZP#v0#v0#v0.xU#Og.xU#KS#Ab#MQ#97#KS#Ab#X..Fe#KS.Fe#X.#X.bCxbCxbqR.Fe.Ey#KS#Ab#KS#97#97bqRbqRbCxbAqabaabaabaabaabaabaabaabaabaabaabaabaabaabaabaabaabaabaabaabaabaabaabaabaabaabaabaabaabaabaababAq#KSeCLbABeFcbCDb#PeFdcAReFeeFfbwe#Ckb5Pb3Kb1XeFgeFhboWeFicUVeFjeFkeFl#vZcv2eFmeFneFo.xBeFpeFqb9w", +"eFreFseFteFueFvafS#KKax0#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#Ad#Aea64#DReFw.ONaZO.UC.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.UCaQA.ONc#TeFxeFyeFz.Sw.RBerleoNerl.PS.PS.VC.PSemieFAeFB.RBd59eFCeFDeroeFEeFFeFFdWceFGdMs#Sz#SAeFHd8AeFIeFJeFKeFLeFM#kNeFNeFOeFPeFQeFRdTT.Q##xl.P9.2o.Lm.Re.YZeFSeFTeFU#sk#ti.BDeFV.Vk.Eo.xQ.lTeFWeFXeFYcZscZubn1cQidf2eFZeF0eF1eF2eF3eF4eF5edneF6eF7eF8eF9eG.eG#emUeGaeGbeGceGdeGeeGfeGgeGheGieGjeGkd4CeGlesieGmeGneGoeGpeGqeGmew4eGreGsepKeGteGueGveGweGxeGyeGzeGAeGBeBLeGCeGDesreEdeGEeGFeGGeGHeGIeGJeGKeGLeGMeGNeGOeGPeGQeGReGSeGTeGUeqceEueGVeGWeC.eGXeGYeGZeG0eG1eG2eG3eG4eG5eG6eG7eG8eG9eH.eH#eHaeHbeHceHdeHeeHfeHgeHheHieCueHjeHkeHleHmeHneHoeHpeHqeHreE2eHseteeHteHueHveHweHxeHyeHzetieE8eHAeHBeHCeHDeHEeHEeHFeHGeHHbR..PHaWR#yB#34.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON#v6#FL.N4#Ojd.KeHIaZP#v0#v0#v0.xU#Og#yG#vV#KS#KS#Ab#Ab.Ey#Ab#Ab#KS#KS#Ab#Ab#2E#Ab#Ab#KS.Ey#KS#Ab#KS.Ey#Ab#MQ#MQ#MQ#MQ#MQ#MQ#MQ#MQ#MQ#MQ#MQ#MQ#MQ#MQ#MQ#MQ#MQ#MQ#MQ#MQ#MQ#MQ#MQ#MQ#MQ#MQ#MQ#MQ#MQ#MQ#MQ#MQ#MQ#MQ#MQ#vV.xU#Og#Ck#KK#9W#v0boJaiNbst#Rk#yH#KK#yH#yH#yHbst#DF#v0boR#Af#z4#v0#Ae#v0etD.uMahg.uZeHJeHKb7PeHL", +"eHMeHNeHOeHPevX#yJ#KKax0ax0#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#Ad#Ae#2DbCLeHQ.ONdkS.UC.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON#Hhapo#PUeHReHSeHTeHUemeemdeHVeaUerl.MZeHWeaUeHXeHYeeX##Y.X0eHZeH0eH1eH1eH2eH3eH4eH5eH6dTv#yn#yneH7eH8eH9eI.eI#dz7eIaeIbdKfeIceIderAeIedWvdMQdFVdMQdFV.2o.Lm.MY.MwQtveIf.zF#rX#az.MIeIgeIh.uA.#deIieIj.kocWNdegdaTdhZeIkeIlehMefueImeIneIoeIpeDGeIqeIreIsaq4eIteIueIveIweIxeIyeIzdZHeIAeIBeICeIDeIEeD4esjeIFeIGe#DeIHeIIeIJeIKeILeIMeINeIOeIPeIQeIReISeITeIUeIVeuOeIWeINeIXeIYdW1eIZeI0eI1eI2eEheI3eI4eI5eI6eI7eI8eI9eJ.eJ#eJaeJbeJceJdeJeeEuez3eu9eJfeJgeJheJieJjeJkeJleJmeJneJoeJpeJqeJreG8eJseJteJueH.eJveJweJxeJyeJzeJAeEVeJBeJCeJDeJEeHleJFeJGeJHeJIeHoeJJeJKeJLeJMeJNeJOeJPeJQeJReHyeJSeJTeJUeJVeHAeJWeE9evPeJXeJYeJZ#T8cF2eJ0#yzdha.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON#v6#Ch.N4#OjeJ1eJ2b1Q#v0#v0#v0#yG#yG#Hf#DO#DO#Hf.wc#OgaRX#OgatVaRX#Og#AeatVcjoatVatVaRX.wc#Og#Og.wcaRXatV#yG#yG#yG#yG#yG#yG#yG#yG#yG#yG#yG#yG#yG#yG#yG#yG#yG#yG#yG#yG#yG#yG#yG#yG#yG#yG#yG#yG#yG#yG#yG#yG#yG#yG#Og#Hf#Hf#vZ#Ae#yJ#2D#2D#v0#KK#vZ.xU#KR#6Z.xU#yG.xU.xUafSboM.xU#CkaRTbgV#vZ#Og#yG#Og#DP#yIbwreJ3eJ4eJ5", +"cO.eJ6eJ7eJ8bPeafS#KKax0#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#vY#Aea64eJ9eK..ONaZO.N4.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.N4a8P.UCaKEcexeK#eKaeKbeKcemdd6aeKdeaUeaUeaUd6aeoPeKeehoeKfeKgeKheHZee4eKieKjeKkeKleKmdWceH6aiJdQ0#Y8eKnec0eKoeKpeKqeKrdwfeKseKteKueyYeKveKwdPadMQdMQdZ.dMQ#Bh.2q.NK.zU.09#ft#rT.ts.dJd1EeKxeKyeKz.kgeKAeKB.fTeKCeKDc2Fd4gdgdeundeqeKEeKFeKGeKHeKIefxdNaeKJdREeKKehTeKLeKMeKNeKOeKPeKQeKReKSeKTeKTeKUeKVeh6eKWedJedJeKXeKYeKZeK0eK1eK2eK3eK4eK5eK6eK7eK8eIDeK9eGAeL.eL#eLaeLbeLceLdeLeeLfeLgeLheLieEneLjeLkeLleLmeLneLoeLpeLqeLreLseLteLueB9eLveLweLxeLyeLzeLAeLBeLCeLDeLEeLFeLGeLHeLIeLJeLKeLLeLMeLNeLOeLPeLQeLReLSeLTeLUeLVeLWeLXeLYeLZeL0eL1eL2eL3eL4eJIeL5eL6eL7eL8eHpeL9eM.eM#eJReMad7ReMbeMceCGeMdeMeeMfevOevSeHFeMgeMh#DT#DTeMiaEWbsh.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON#v6#v6.N4#Oj#CibXE#yI#v0#6Z#v0.xU#yG#yG.xU.xU.xU#vZ#vZ#Ad#Ad#AdcCD#v0#6Z#v0#Ad#Ad#Ad#Ad#Ad#vY#Ad#Ad#vY#Ad#Ad#Ad#Ad#Ad#Ad#Ad#DG#KKboJboOeMjaL9bqHax0#2DbMY#2D#yH#yH#yH#Ad#vYalralrboOalralrbst#2DbsubMY#v0#vYalrboMafS.xU#v0.xUafS#6Q#vZbqHbqHboR#AdboR#KKboM#v0aiN#v0bsuaiN#vZ#KK#v0#v0#v0.xU#Ae#vZaUWeMk#AdaL6dVKeMl", +"eMmeMneMoeMpeMqafS#KKax0#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#Ad#Aea64bCLeMr.ONaZO.N4.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.N4.XQ.UC.ONeMseK#eMteMue.K.LXecRejU.PS.VCeaUeHXeMveMweoPeMxecS##YejVeMyeroeMzeKieH4eH6eMAdWceMB#yldB0a#LeMCeMDeMEeMFdR.eMGdTOeMHeMIeMJdyceMKet7dWv.M7.YgdWveo9eML.3peMM.mf.y7aij.x1.tQbn5eMNdRreMOdAseMPeMQeMReMSeMTeMUeMVeMWdlBeMXeMYdgreMZdCueM0eM1eM2ehSeM3eM4eM5eIweM6eM7eM8eM9eN.eN#eNaezoeNbeNcedJeNdeNeeNfeNgeKZeNheNieNjeNkeNleNmeNneNoeNpeNqeNreNseNteEcdW1eNueNveNweNxeNyeNzeNAeBUeNBeNCeNDeNEeNFeNGeNHeNIeNJeLpeNKeNLeNMeNNeNOeNPeNQeNReNSeNTeNUeNVeNWeNXeNYeNZeN0eN1eN2eN3eN4eN5eN6eN7eN8eN8eN9eO.eO#eOaeObeOceOdeOeeOfeOgeOheOieOjeOkeL3eL4eJIeL5eL6eL5eL8eOleHpeM.eHveOmeMaeOneMbeOoeJUeOpeOqeHCeOreJXeHFd7XeOs#DT#DTeMiaEWbsh.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON#v6#Ch.N4#Oj#CieJ2b1Q#v0#v0#v0.xU.xU.xU.xUboIboM#Ad#Ri#RicCD#Ad#2D#Ad#v0#yHcCD#Ad#v1#Ri#yH#Ad#yH#2D#vYcCD#Ri#Ri#yH#yHalr#vYboRax0bstbstboR#vYbst#yH#Adbst#yH#2D#Ad#Ri#0weOtaa4#Ad#2D#0walra64#yH#v0#2D#yHeOueOteOvax1#v1#v1#v1eMjalrboRbsub3y#W2eMk#AdcCD#RicCD#Ri#v1#z4ax0alr#2D#yH#yH#yH#RicEscCD#yHbsuba0eOwaJheMl", +"eOxeOyeMocgoeMqdOx#KKax0#0w#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#Ad#Aea64bCLeOz.ON#yC.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.UC#yC.XQ#MNeOAdMteOBeOCewpeODemid6aeKd.MZerjeoP##3ee0eOEeOEeOFeOGeOHeFFeOIeFEetQeOJdQ1eOKeOLeOMeON#Y5eOOeOPeOQeOReOSd1t#l7dR.eOTeOUeOVeOW.PU.4FeOXeOY.2qet5#xreOZeO0eO1af4eO2.uk.hZ.hq.fpeO3eO3.kyeO4eO5eO6eO7eO8eO9eP..d8eO7eP#ePaeF4ePbePcePdedpePeePfd4oePgd1VePhePiePjd2bdRMeM4ePkePlewTePmePnePoePpePqePrePsePtePuekLePveIKePwePxdPEdGmePyePzePxePAePBePCePDePEeuQePFePGePHePIePJeNyePKePLePMePNePOePPePQePRePSePTePUePVePWePXePYePZeP0eP1eP2eP3eP4eP5eP6eP7eP8eP9eQ.eQ#eQaeQbeQceQdeQeeQfeQgeQheQieQjeQkeQleQmeQneQoeQpeQqeCseQreQseQteQueQveL3eQweQxeQyeQzeQAeQAeQBd7EeQCeQDeQEeQFeQGeQHeQIeQJeQKeHCeOoeQLeQMetndHfcJE#DT#DT#FLaEWaKE.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON#v6#FL.N4#OjbqUeQNb1Q#v0#v0#v0#v0.xU.xU.xU#9W#KKbqI#Ck#Ae.xU.xU#6Z.xU.xU#6Z.xU#CkbqI#yG#yFbMY#CkbqI#6Z#v0#v0#v0aGobqI#VKbqGdhi#0ue.zbo0#VKejDdf##CkcOdc#D#AecOdcOdafSb3EcjibqIeCLaUXaxZcLibgVaRT#Aec#D#yG#6Z#KRaUXaRTboIb3EboIb3E#Ck#Aeb3Edi9#VK#yF#yFaDqafSc#D#R.c#D#KHbo0eJ4a92c#D#yG#Og#Og.xU.xU#Ck#VKboLeOwaJheJ5", +"eQOeQPeQQeQReQSbss#6Zax0#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#AdbmSa64bCLeMr.ONaZO.N4.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.N4.XQ#Cg.ONb#K#FCeQTeQUeQV##YeoPehiewoehieoPeOHeMvehoeQWeFAeFAeQXemheQYeQZeKieFEdWadMrdMreOKeQ0eQ1eQ2aBZeQ3ehveQ4d6heQ5dz5eQ6eQ7eQ8eQ9eR.eR#.PleRaeRb#gPeRceRd.4deRe.MJ.oH.TP.fq.jv.dF.jI.bF.kleRfeRgeRheRieDAeDAd#xezcd82eRjeRkeRleRmeRnePdeRoeRpdKEeRqeRrebyeRsd1YdZsd4leRseRteRtezldKReRuem6eRvei.eRweRxeRyeRzeGpdK7eRAePwd4zdCCeRBeRCebsdj8eRDdPFeNmeREepUeRFeEceRGezKespeRHeRIeRJeRKeRLeRMeRNeROeRPeRQeRReRSeRTeRUeRVeRWeRXeRYeRZeP1eR0eR1eR2eR3eP6eR4eRZeR5eR6eR7eR8eR9eS.eS#eSaeSbeSceSdeSeeSfeSgeSheSieSjeSkeSleSmeSneSoeSpeSqeSreSseSteSueSveSweQxeHneSxeSyeQBeSzeHseSAeSBeSCegMeE6eSDeSEeHBeSFeSGeSHeSIeSJeHEeF#eOsatU#DTeMiaEWbshaKE.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON#v6#Ch.UC#Oj#CieFbb1Q#v0#v0#v0#v0aRT.xUboIbyicyzccb#yEbAu#FN#FNdogbCl#2C#2C#2C#2C#yEbZo#yE#FN#5G#5GaHSakaeSK#KQaGycyzeSLbLmeSMeSNeSObEreSP.6OeSQeSReSS.9.eSQeST.EpaEZeSUbwbeSVeSWbv8bO9eSXeSYb1FaEY#AaeeK#yE#CjbXpeSZbAubJ.bJ.a97bXpeS0eSTcyNeS1aEZ#yEeS2.FhcY4eq0cWteS3bAueS4bCMbH#b1E#2CafR#CjaEYbwbbAubAkeS5bjmeMl", +"eS6eS7eS8eS9eT.#KPcjiax0ax0#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#Ad#Aea64bCLeT##34dkS.UC.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.N4#Cg#yz#yAeTadMseTbeTceOD##YeQWeTd##3eMv##3eKeeOHeOEeQWeMveFAeoPehieTeeoUeKieTfeTg#ymdJ2dHJd8j#BZeTheTieTjeTkeTleTmeTneTodMIeTpeTqeTqeTreTseBeeTteTueTveTweTx.PReTyeTz.Im.0p.hq#tCedfeTA.kteTBeTCeTDeTEeTFeDAeTGdF7eTHeTIeTJeIneTKeTLeTMeTNeTOeTPeTQeTRdCHeTSeTTeTUd4leTVeTWdtjeTXd17e#yeRuem6d6YeTYeTZem9eT0epBeT1em8dZzePFe#seT2eT3eT4efHeT5eT6eT7eK7ezLeT8ekOeT9eU.eU#eUaeUbeUceUdeUeeUfeUgeUheUieUjeUkeUleUmeUneUoeUpeUqeUreUseUteUueUueUueUveUweUxeUyeUyeUzeUAeUBeUCeUDeUEeUFeUGeUHeUIeUJeUJeUKeULeUMeUNeUOeUPeUQeUReUSeUTeUUeUVeUWeUXeUYeUZeU0eQxeHoeU1eOjeU2d94eL6eU3eU3eU4ex4ex7eM.eHweHzeJUeOoeU5evNeJTeSJeU6d7XeU7atU#DTeHHaEWdha#yx.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON#v6#FL.N4#OjdFueU8b1Q#v0#v0#v0#v0.xU#6Z#v0b7tcbXcEyeSUbZobO2cNTcOecAxd.ReU9biWaWUbZp#2C#FNbZNbZqaNIbAjeV.eV#cEmeVaetMe.HeVbeVceVdeVeeVfeVgeVheVieVjeVkeVldxVeVmeVnacReVoeVpbLfeVqeVreVseVteVueVveVweVxeVy#2CeVzejjaEZbO2cg1eVAeVBeVlbiyeylbiZaEZb1J#FNeVCeVDeVEeVFeVGeVHeVIeVJeVKeVLbAuetAeVMbujaHSeoqapnaWUeVNeVOeMl", +"dDGeVPeVQeVRbm.bss#6Zbua#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#Ad#vZa64.mNeVS#yBaZO.N4.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.N4.UC#yz#CfeVTeVUeVVeVWeMxehoeFAeOHeeXeHYeFAeOHemh##3eoPeMxeHXeKdeVXeVYeVZeKiemkeV0dWd#SA#PO#yneV1eV2#PFeV3eV4eV5eV6eV7dTLeV8eV9eW.eW#eWaeV9eWbeWceWdeWeeWfeWgeWheWieWjeWkato#aq.#zeWld1HeWmeWneWoeWpeWqeWreWseTGdi#ehMeWteWueWveWweWxeWydWJeWzeWAeWBeWCeWDeWEeTUeWFeWGeWHeWIe#ydZEeWJd9neWKefOefOe#xeWLeWMekCdRWdZEd2aeWNeWOeWPeWQeWReWSdIyeWTeWUeWVePDeRGeWWdK8eWXeWYeWZeW0eW1eW2eW3eW4eW5eW6eW7eW8eW9eX.eX#eXaeXbeXceXdeXeeXfeXgeR2eXheXieXjeXkeXleXmeXneXmeXoeXpeXqeXreXseUEeXteXueXveXweXxeUJeXyeXzeXAeXBeXCeXDeXEeXFeXGeXHeXIeXJeXKeSseXLeXMeXNeU1eHreXOeHmeL6eL6eHqeQDeHueHseU3eXPeE6eXQeCHeAzeMceJSeJSeMceXRevOd7XeXSbqU#DTaEVaEWbshaKE.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON#v6#Ch.N4#OjeXTeXU#yI.xU#v0#v0#v0boI.xU#AdbwceXVeXWeXXeXYeVzcg1eXZeX0cbXeX1eX2eX3bZoa64bwnbCkeX4eX5eX6eX7eX8eX9c6n#DSeY.#98a64eY#eYaeYbeYceYdeYeeYfeYgeYheYieYj.5DcPJeYkeYleYmeYneYoeYpeYqeYreYseYteYueYvbgVeomeYweYxeYycQ2eYzeYAeYBeYCeYDeDaeYEbqJeYFeYGeYHeYIeYJeYKeYLeYMeYNeYOeYPeYQeYRcc.eYSeYTeYQcd1d.LeYUdVKeJ5", +"dN#eYVeYWeYX#6S#0u#6ZcMM#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#Ad#Aeaq0aTMeYY#yDaZO.N4.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.N4#Hh#yz.UCeYZeY0eY1eY2eFAeY3eY3##3eHYeeXeFAeQW##2##2eoPeri.PSd8qeY4#FDewreY5eKjeY6dBZdYUeY7eY8eY9aB0eZ.eZ#eZaeZbeZceZdeZeeZfeZgeZheZieW.eZjeZkeZleZmeZneZoeZpey8eBfeFUeZqaP9cQbeFV.kueZrc2weZseZtc4eeZueZveZweZxeZydF7eZzeZAeZBeZBeZBeZCeZDeZEeZzeZFeZGeZHeZIeZJeZKeZLeZMdKRd17d4DeZNeZOeZPeZQeZReZPeZSeZTeZUeRFeZVeNvdxdeZWeZXeZYeZZefHeWReZ0ePDeZ1eZ2eZ3eZ4eZ5eZ6eZ7eZ8eZ9e0.e0#e0ae0be0ce0de0ee0fe0ge0he0ie0je0ke0le0me0ne0oe0pe0qe0re0se0te0ue0ve0we0xe0ye0ze0Ae0BeXse0Ce0De0Ee0Fe0Ge0He0Ie0Je0Ke0Le0Me0Ne0Oe0Pe0Qe0Re0Se0Te0Ue0Ve0We0Xe0YeXMeU0e0Zd94eQyeQze00eHqeHqd2He01eE4eqOetfe02eQGeCGe03eOneMce04eSGe05eABeeCeU7a2H#Aj#RlahjbshaKE.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON#v6#Ch.UC#OjaZOeQNb1Q#v0#v0#v0#v0.xU#v0#Ad#HgeVfdJNe06e07eXZe08e09e1.e1#e1ae1be1cc8Z#Rk#2Ce1de1ee1fe1g.MJe1h.mUe1ie1jcesamPe1ke1le1me1ne1oe1pe1qe1re1se1te1ue1vecF.soe1we1xe1ye1ze1Ae1Be1Ce1De1Ee1Fe1Ge1HdS8ecFe1Ie1Je1Ke1Le1Me1Ne1Oe1Pe1Qe1Retweyze1Se1Te1Ue1Ve1We1Xe1Ye1Ze10e11e12bwhe13e14e15b3reFbaHSaGye16bwxeMl", +"e17dR5e18bwpdHzbVtaRTaxZ#v0#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#Ad#Aea64aTMe19.N4dkS.N4.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.N4.XQ#yz.N4e2.eH6e2#e2#eOHeFAeQWeQWe2aeHYeFAehoeMve2beFBe2cecRe2de2eeFEeKje2feQYe2ge2h#8C#VDe2ie2je2kaBZe2l#j5e2me2ne2obPhdusdKfe2pefde2qe2re#.dH3e2se2te2ue2v#Bme2we2xe2ye2zaV6dqNe2Ae2BeMO#r7e2Ce2De2Edi#e2Fe2Ge2HebjdCxe2IeDIe2Jd4wd9ce2Ke2Le2MeZFe2NeF6dpidEte2Oe2PdUmdUldeme2Qe2RdlMdZDd10e#td18e2Sesre2Te2Ue2Ve2We2Xe2Ye2ZefEe20efDekFe21e22e23e24e25eIVe26e27e28e29e3.e3#e3ae3be3ceW6e3de3ee3fe3ge3he3ie3je3ke3le3me3ne3oe0pe3pe3qe3re3se3te3ue3ve3we3xe3ye3ze3Ae3Be3Ce3DeXte3EeUHe3Fe3Ge3He3Ie3Je3Ke0Ne3Le3Me3Ne3OeURd9Pe3Pe3Qe3Re3Se3Te3Ue3Ve3WeSze00e3XeU1e3Yd7EeJLeqIeqKe3Ze30eJPeQGeHxeHCe03eCHe31e32e33evPeAGeU7e34e35cvJ#yDbsh#yx.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON#v6#FL.N4#Ojd.Ke36bRl#v0#v0#v0#v0.xU#6Zax0#v2bXse37e38e39e4.e4##v3#99e4ae4be4ae4cbyk.xUaNIe4d.mt.tr.LLe4e.YUe4fe4ge4he4ie4je4ke4le4me4ne4oe4pe4qe4re4se4te4ue4vdYHbuae4we4xe4ye4ze4Ae4Be4Ce4De4Ee4Fe4Ge4He4Ibuje4Je4Ke4Le4Me4Ne4Oe4Pe4Qe4Re4S#vWe4Te4Ue4Ve4We4Xe4Ye4Ze40e41e42e43e44e45e46e47#z9cAxe48aKG#FNe49e5.eMl", +"e5#e5ae5bbwje5cbmSbmS.xU#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#Ad#Ae#v1aq0e5d.N4aZO.N4.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.UC.UC#Cg#yye5ee5fe5ge5he5ieFA##3ee0e2aeKeeMveFAeoPeODerme5jeKfe5ke5le5meH4e5ne5oe5pe5qe5re5safMe5te5uacNeZ.e5ve5we5xe5we5yb5Xe5ze5Ae5Be5Ce5D.Qb#xi#IAe5Ee5Fe5Ge5He5Ie5Je5KefmcSAdcge5LcVoe5MdiaeTGc8.c8.e5NeZxe5Oe5Pe5Qe5Reuje5SdGheZAe5Te5Ue5Ve5WeBodM8e2He5XdnwdCBdGqdGndEod6NdAJdAIdAJd6NdEodEpe5YdRPe5Ze50e51e52dK0e53e54e55e56e57efRe58e59e6.e6#e6ae6be6ce6de6ee6fe6ge6he6ie6je6ke6le6me6ne6oe6pe6qe6re6se6te6ue6ve6we6xe6ye6ze6Ae6Be6Ce6De6Ee6Fe6Ge6He6Ie6Je6Ke6Le6Me6Ne6Oe6Pe6Qe6Re6Se6Te6Ue6Ve6We6Xe6Ye6Ze60e61e62e63e64e65e66e3Re67e68e69eXMe7.eQAeHne7#eHoeJKeJKe7ae7be7ce7de7ee7feJOe02eMceMfetie7ge7he7ie7ieMge7jcete35cF2#yAbshaKE.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON#v6#Ch.N4#Oje7ke7lbRl.xU#v0#v0#v0.xU#6Zb3ye7me7ne7ne7oe7pe7qe7re7se7te7ue7ve7we7we7x#Hf.Sje7y.fAaEqav4av6av5aie.OXe7ze7Ae7xe7Be7Ce7De7Ee7Fe7Ge7He7Ie7Je7Ke7Le7Me7NaxZe7Oe7Pe7Qe7Re7Se7Te7Ue7Ve7We7Xe7Ye7Z#DPe70e71e72e73e74e75e76e77e78e79e8.cvZe8#e8ae8be8ce8de8ee8fe8ge8he8ie8je8ke8le8me8ne8oeVMaZPbqIeSNe49e8peMl", +"d3De8qe8rbyxa65aUXdOx#6Q#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#AdbmS#v1aTMeOz.N4aZO.N4.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.N4.UC#yC.XQc41e8se8te8ue8veMveMweQWeKeeeXeeXeKeeoPecR.W5e2eerme8we8xe8ye8ze8Ae8Be8Ce8D#yie8E#B3#Y9e8Fe8Ge8He8Ie8Je8Ke8Ke8Le8KaHQbHne8Md6ve8N#Ix.Yg#E1dKpe8Oe8Pe8Qe8Re8Se8Te8Ue8Ve8We8Xe8Yezfd9be8Zedle80e81e82e83edje84e85e86e87dCvehNeTJe88e89e9.eWudGce9#eIPdGoerSdRVdGndGndGndGndUodRVdRVdRUebtdRUebue9adyze9be9ceWOe9deZWe52eIEe9ee9fe9ge9he9ieNie9jepWe9ke9le9me9ne9oe9pe9qe9re9se9te9ue9ve9we9xe9ye9ze9Ae9Be9Ce6ie9De9Ee9Fe9Ge9He9Ie9Je9Ke9Le9Me9Ne9Oe9Pe9Qe9Re9Se9Te9Ue9Ve9We9Xe9Ye9Ze90e91e92e93e94e95e96e97e98e99f..f.#f.ad9Pf.bf.cf.df.ef.feXOf.geL5eHneL5eJLf.hf.if.jf.kf.lf.mf.nf.of.pf.qeSGe32f.rf.rf.sf.tf.ubTbatU#v5#Rl#yDbshaKE.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON#v6#Ch.N4#Ojd.Kf.vbRl#v0#v0#v0#v0.xU#2D#yHb7teX0f.wf.xf.yf.zf.A.W0f.Bf.Cahif.Df.EbZpb1Qf.Ff.G.T2atjayCdnhaNfav6.Z5f.Hf.IeU9bqIf.Jf.Kf.Lf.Mf.Nf.Of.Pf.Qf.Rf.Sf.Tf.Uf.Vf.Wf.Xf.Yf.Zf.0f.1f.2f.3f.4f.5f.6f.7f.8f.9f#.f##f#af#bf#cf#df#ef#ff#gf#hcv4f#if#jf#kf#lf#mf#nf#of#pf#qf#rf#sf#tf#uf#v#9WbyraHSbAv#5GaWUe49bjmeMl", +"f#wf#xf#ycAJeQSbqFboKaj2#v0#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#Ad#Ae#v1aTMeYY.N4dkS.N4.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.UCbqUa8Pf#zf#Af#Bf#Ce8veMweMweMv##2#.Ff#D##2ee0eHXerjecRewoehoeOHf#Ef#Ff#Gf#Hf#If#Je8Ef#K#B1f#Lf#M#2sf#NaBYf#Of#Pf#Qf#Rf#Rf#Sbcvf#Tf#Uf#VeDu.PZ#da#dBeZqdZ#e8Qf#Wf#Xf#Yf#ZdhTdysf#0f#1f#2dEcdtcdWWebvf#3f#4f#5c5Cf#6c9Mf#7f#8dF7f#9fa.fa#d4ed6TdIvdEpdUodPDdEpdEpdCCdCBdCCdEpdUodGodGodGodUpdGodGoeT2dIxerSdGqfaaew8fabfacfadfaefaffagfahfaifaje22e22fakfalfamfanfaofape9sfaqe9tfarfasfatfaufavfawfaxfayfazfaAfaBfaCfaDfaEfaFfaGfaHfaIfaJfaKfaLfaMfaNfaOe6IfaPfaQfaRfaSeLyfaTeNVfaUeQbfaVfaWfaXfaYfaZfa0fa1fa2fa3eiEfa4fa5fa6fa7fa8fa9fb.f.ffb#e7#fbafbbfbaeJGfbaeVif.he7afbceJNfbdeJOeJNfbeeJPfbfeJSe32fbge32fbhfbieeDe7jcetbx9#Rl#MObsh#yx.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON#v6#Ch.UC#Oj#Cif.vbRl#v0#v0#v0#v0.xU#2D#Adfbjc86fbkfblfbmfbnfbofbpfbqfbrfbsfbtfbucAxbXAfbv.oh.BGav6dnhdWCemCaBvfbwfbxfbycbWfbzfbAfbBfbCfbDfbEfbFfbGfbHfbIfbJfbKfbLfbMfbNfbOfbPfbQfbRfbSfbTfbUfbVfbWfbXfbYbCNfbZfb0fb1fb2fb3fb4fb5f#efb6fb7fb8fb9fc.fc#fcafcbfccfcdfcefcffcgfchfcifcjfckfcl#DObv8bGUaTOdofaNJfcmbwxeMl", +"fcnfcofcpfcqfcr#Ck#AeboM#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#AdbmS#v1ew#eOz.N4dkS.N4.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.N4.UCa8P#HhfcsfctfcufcveMweMweMveMveeX#.FeeXeKeeOEeoSerieHXemiee0e2#f#Hfcwf#Gf#Hfcx#B0#yidJ5fcydQ4fczfcAatNf#NfcBfcCfcDfcDfcEfcFaDAfcGfcHfcIfcJ.Yk##Q#LVfcKfcLfcMfcNfcOfcPf#XcG1ds4fcQdWFd#DdtcdjUdjUdIudGldAKfcRekvfcSdu5fcTfcUdlsekwefEdt.dt.fcVdwPdNmdNmdNldCCdCBdRSdRSfcWdEpdGnePydUoe57dUodUodGofcXfcYfcZfc0d9sezKeZ2fc1fc2fc3fc4fc5fc6fc7fc8fc9fd.fd#eRPfdafdbfdcfddfarfdee9qfaqfdffdgfdhfdifdjfdkfdlfdmfdnfdofdpfdqfdrfaFfdsfdtfdufdvfdwfdxfdyfdzfdAfdBfdCeNVfdDeNVfdEfdFeNWfdGfdHfdIfdJfdKfdLe0JfdMfdNfdOfdPfdQe99fdRfdSfdTfdUfdVfdWfdXfdYeXOeL3fdZfd0fd1fd2eVif.hfbcfd3f.meJPeJPf.mf.mevIfd4eCHfd5fd6fd7fd8fd9ecyeU7cete35cvJ#yD#2BaKE.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON#v6#Ch.N4#Oj#Cife.bRl#v0#v0#v0#v0.xU#v0#vYbXrc7Nfe#feafebfecfedfeefeffegfehfeie7vdfabEVfej.zE.YUav7dnhdp.emCaBvfbwfekfelaEXfemfenfeofepfeqferfesfetfeufevfewfexfeyfezfeAfeBfeCfeDfeEfeFfeGfeHfeIfeJfeKfeLcvZfeMfeNfeOfePfeQfeRf#dfeSfeTfeUfeVcv4feWfeXfeYfeZfe0fe1fe2fe3fe4fe5fe6fe7fe8fe9b5GbGMff.cNTaKIeQNff#ffaeMl", +"ffbffcffdbZCblS#yJa92#KK#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#Ad#Ae#v1aTMe5d.N4aZO.N4.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.UC.UC#OjapoffefffffgffheKeeFAeFAee0e2beHYe2aeMv##Yeri.W5eHXehi##3ffid3Offjffke2ffflffm#yhffnffoffpffqffqe8HffrbPhfcsf#RfcsfcEdoebyEffsfftffuffv.JK.MYffwffxeZqfbwffyffzffAe8UdT0ffBffCffDeBrdCBffEffFdPhdPhdROdAIebudyzcSTdyAdZldZlffGffHds6c05fcVdjEd#Gc5DdyEdcpdNjffIdRSffJd6NffKdIpebvffJe5YdNoeIQffLffMffNffOeBKffPezOffQffRffSffTffUffVffWesnffXffYffZff0ff1ff2ff3ff4ff5ff6ff7faqfdfff8ff9fg.fg#fgafgbfgcfgdfgefgffggfghfgie9GfgjfgkfglfgmfgnfgofgpeXjfgqfgreP8eP5fgsfgtfgufgvfgwfgwfgxfgyfgzfgAfgBfgCfgDfgEfgFfgGfgHfgIfgJfgKfgLfgMfgNfb#fb#eXMeUZfd1fd1fgOfgPfgQfgRf.ifgSe7eeHveE6fgTfgUeHvfgVetie7hf.reSHfgWfgXeF#fgY#yC#Cg#63#Cf#yBaKE.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON#v6#Ch.N4#Oj#CifgZeYT.xU#v0#v0#v0.xU.xUalrbQ1eU9fg0fg1fg2fg3fg4fg5fg6fg7fg8feibHhaEXetwfg9.nefh.dMUayCdnhaNfcG6fh#fhafhbbOZfhcfhdfhefhffhgfhhfhifhjfhkfhlfhmfhnfhofhpfhqfhrfhsfhtfhufhvfhwfhxfhyfhzfhAfhBfhCfhDfhEfhFfhGfhHfhIfhJfhKfhLfhMfhNcwhfhOfhPfhQfhRfhSfhTfhUfhVfhWfhXfhYfhZfh0fh1aX8bGMbRlaQDaKIfh2fh3fh4eJ5", +"fh5fh6fh7fh8dHzc#E#KKbqH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#Ad#Ad#Ae#v1aTMeVa.UC#yC.N4.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.N4.XQ#Cgc6ofh9fi.fi#fiafibeMwehoeOE##3eOHe2beFAecSecReriermeKf##2ficfibf#Ff#Ffide8Cfiefifffnfigfihfiifij.HTfikbE9filc11c11fimc11finfiofipfiqfir.No.Hm.n5.06fisfitfiufivfiwdZfdWzc2ufixfiydNkeBreBrdwTdCAdq8epmd4hdGndGmdPDdtbd1Pd1PdtbfizfiAfiBdI#fiCc2JfiDePydCCdCCdKXemZfiEfiFfiGdWWffKd9ifiHfiIfiJfiKfiLfiMfiNfajeigfiOfiPfiQfiRfiSfiTfiUefUfiVfiWfiXfiYfiZfi0fi1fi2fi3fi4fi5fi6fi7fi8fi9fj.fj#fjafjbfjcfjdfjefjffjgfjhfjifjjfjkfjlfjmfjnfjofjpfjqfjrfjseUveUveP3fjtfjufjvfjwfjxfgwfjyfjzfjAfjBfjCfaYfjDfjEfjFfjGfjHfjIfgJfa5fjJfjKfjLfjMfjNfjNe3Ue3UfjOfjPfd1fjQfjRfjSfjTfjUfjVeJOeM#eJOfjWfjXfjYeU5fjZe7hfj0fj1fj2fj3fj4bqU#DTcF2bAh#2B#yx.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON#v6#Ch.UC#OjaZOeX4bRl#v0#v0#v0#v0.xU#6ZboNeAJdw.eY.febfj5fj6fj7fj8fj9fk.fk#fj6cwAcb1bwnfkafkbfkcfkdfkefkffkgfitfkhfkifkjcTxaHRfkkfklfkmfknfkofkpfkqfkrfksfktfkufkvfkwfkxfkyfkzfkAfkBfkCfkDfkEfkFfkGfkHfbYeS0fkIfkJfkKfkLfkMfkNfkOfkPfkQfkRfkSdqhfkTfkUfkVfkWfkXfkYfkZfk0fk1fk2fk3fk4fk5fk6bwrfk7bMXbOZaNJfk8e49fk9cwb", +"fl.fl#flabu.bAl#6Q#KKbua#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#Ad#Ad#Ae#v1aTMeVa.UC#yC.N4.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.N4.UC#yzaB4flbflcfldfleflfflge5geMveOHe2aeMve2beMveKfemiehoemhemfflhflifljf#HflkeDf#B2#ykdxZ#Fze5rfij.G6fllflmcZcc0Hc12c12flnfloflpflqflrflsflt.Qg.Kl.lx#cqfluflvfiuflwflx.PC.gl.khflyflzflAflBdgdflCflDdIxdyAdywdUjflEflFflGebvebvflHflIflJflKflLd6Rd1Leh0efEefGefFc05flMdt.efEflNdwQflOeT3eGtdUmd61flPexceGBflQflRflSflTflUflVflWepWflXflYflZfl0fl1fl2fl3fl4fl5fl6fl7fl8fl9fm.fm#fmafmbfmcfmdfmefmffmgfmhfmifmjfmkfmlfmmfmnfmofmpfmqfmrfmsfmtfmufmvfmwfmxfmyfmzfmAfjxfmBfmCfjwfmDfmEfmFfmGfmHfmIfmJfmKfmLfmMfmNfmOfmPfmQfmRfmSfmTfmUfmVfmWfmXfmYe3UfjNfmZfm0fm1fm2fm3fjSfjTfm4fm5fbdeJOfgUfgUfm6fm7fm8fm9fj1fj0fj1eU5fn.fn#a.##MOcvJ#Cf#2BaKE.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON#v6#Ch.N4#OjaZOfnacAM#yH#v0#v0#v0.xU#v0#yHetufnbfncfndfndfnefnffngfngfnhfnffnhfj6cb1aHUax3fnifnjfnkfnlfnmfnnfnofnpfnqfnrfnsfntfnufnvfnwfnxfnyfnzfnAfnBfnCfnDfnEbZNfnFfnGfnHfnIfnJfnKfnLfnMfnNfnOfnPfnQfnRbO9fnSfnTfnUfnVfnWfnXfnYfnZfn0fn1fn2cv7fn3fn4fn5fn6fn7fn8fn9fo.fo#foafobfocel3fodfoefofcbSaTNdofcbMe49e5.eJ5", +"ewefogfohfoidHA#yG#KKax0#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#Ad#Ad#Ae#v1aTMeVa.UC#yC.N4.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.N4.UCaWRapobRo##qfojfokfolfom.5Gflgfonflg#.Ffoofopfomf#DeeZeeXfoq##3fidforecTforfosfcyfcy#J.aqUfotfoufovfowa#ObE9foxflnc10foyc11c11fozflrfoAfoB.MwfoCfoD.olfh..YWe8UfoEfoF.iEfoGd4#foHfoIemMfoJehKeDAeunebvfoKdRAfoLfoMfoNfoOfoPfoQdIsfoRdIsdItfoSe#mfoTdAIdEpePydPDdWXd6Sd6RdjEd6RdIod4tflFd4DdW3dW2d9pfoUdyIeWLfoVfoWfoXfoYe22foZfo0fo1fo2fo3fo4fo5fo6fo7fo8fo9fp.fp#fpafpbfpcfpdfpefpffpgfphfpifpjfpkfplfpmfpnfpofppfpqfprfpsfptfpufpvfpwfpxfpyfpzfpAfpBfpCfpCfpDfpEfpFfpGfpFfpHfpIfpJfpKfpLfpMfpNfmKfpOfmKfpPfpQfpRfpSfpSfpTfpUfpVfpVfpWfmZfmYfjNfjNfmYfmXfpXfpYfjTfjSfpZfjTfp0e7dfbdf.mfp1fp2fp3fp4fp5fp5fp6fp4fp6fp7fp8fp9eHHfq.#MP#2BaKE.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON#v6#Ch.N4#OjaZOfq#eYT.xU#v0#v0#v0.xU#v0#Adb7tcb1fqafqbfqcfqcfqcfqcfqcfqdfqeazafqfetMaHUfbmfqgfqhfqifqjfqkfqlfqmfqnfqofk.bToctVfqpfqqfqrfqsfqtfqufqvfqwfqxfqyfqzfqAfqBfqCfqDfqEfqFfqGfqHfqIfqJfqKfqLfqMfqNaEZfqOfqPfqQfqRfqSfqTfqUfqVfqWfqXfqYbM4fqZfq0fq1fq2fq3fq4fq5fq6fq7fq8fq9fr.#KQfr#frabwmb#O#yF#yFfrbe49bjmeJ5", +"eyFfrcfrdfre#MQafS#KKax0#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#Ad#Ad#Ae#v1aTMeVa.UC#yC.N4.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.N4#CgaWRapofrf##qfrgfrhfrifrj#.FfoofrkfrlfrmfrmfrneaTemheFAeFAeoPeFBfroe8yfrpeQYfrqfrrfrsfrrfigfrtfrufrvfrwfrxbE9fryfrzfrAfrBfrCfrDfrE#Zq.DX.w8frFfrGfrHfrI.Sd.BMfrJ.iBfrK.bodfVfrLfrMeZtfrNerReO6eWsdGed11frOfrPfrQfrRfrSfrSfrTfrUfrVfrWfrXfrYeM4frZfr0fr1fr2fr3d1Rfr4fr5epAd9ffr6fr7fr8fr9fs.dRZfs#eNcfs.fsafsbfscfsdeK1fsefsffsgfshfsifsjfsjfskfslfsmfsnfsofspfsqfsrfssfstfsufsvfswfsxfsyfszfsAfsBfsCfsDfsEfsFfsGfsHfsIfsJfsKfsLfsMfsNfsOfjpfsPfsQfsRfpCfsSfsTfsUfpFfsVfjwfpFfsWfsXfsYfsZfs0fs1fpNfs2fs3fs4fs5fs6fs7fs8fs9ft.ft#ftaftbftcfmZftdeUZfjNftefmXftfftgfthfjSfm3fjTfgSftie7dfbdftjftkftlftmftnftoftoftpfp4ftmfp8fp9eHH.PH.UC#2BaKE.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON#v6#Ch.N4#OjaZOfq#bRl#v0#v0#v0#v0.xU#v0#yHb7tcoVftqfnfftrftsfqdfqdfnhfttftuftv#34ewhcgoe4bftwftxftyftz.rkftAftBftCftDftEcrzetBftFftGftHftIftJftKftLftMftNftO#2BftPftQftRftSftTftUftVftWftXftYftZft0ft1ft2.BLft3ft4ft5ft6ft7ft8ft9fu.fu#fuafub#vTfucfudfuefuffugfuhfuifujfukfulfumfundhgfuoeMqb1QatVaq0bqIfupfuqfureJ5", +"fusfutfuufuv#MQafS#KKax0#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#Ad#Ad#Ae#v1aTMfuw.UC#yC.N4.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.N4#Cg#Ok#5FfuxfuyfuzfuAfuBfuCfuDfooffg.5HfrjejTfuEfuF#.FfuGeOFeKffuHdWafuIfuJforfuK#yffuLfuMfuNfuOfuPfuQfuRfuSfuTfuUfuVfuWfuXfuYfuZfu0fu1fu2.7r.D0.m6fu3bfH.lN.Xr.fm.bBfu4fu5eFXfu6fu7fu8fu9fv.fv#fvadPjfvbfvcfvdfvefvffvgfvhfvifvjfvkfvlfvmfvnfvoeuufvpfvqfvrfvsehXfvtfvufvvfvwfvxfvyfvzfvAfvBfvCfvDfvEfvFfvGfvHfvIfvJfvKfvLfvMfvNfvOfvPfvQfvRfl7fvSfvTfvUfvVfvWfvXfvYfvZfv0fv1fv2fv3fv4fv5fv6fv7fpifv8fv9fw.fw#fwafwbfwcfwdfwefwffwgfwhfwifwjfwkfwlfwmfwnfwofwpfwqfwrfwsfwtfpFfwufwvfwwfwxfwyfwzfjCfwAfwBfmKfwCeqafwDfwEfwFfwGftbfwHfwIfwJfwKfmZfwLfwMfwNfwOfwPfwPfjRfpZfwQfwRfm5fjVftifgUfwSfwTfwUfwVfwWfwXfwYfwZfw0fn.fw1atU#CgatU.UCbdZaKE.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON#v6#Ch.N4#Ojd.Kfq#bRl#v0#v0#v0#v0.xU#v0#yHb7tfw2aEXehdetMehdfw3etMeHQeMreOzeYDeOzbg1fw4#SGfw5fw6fw7eAIfw8fw9eXUfx.fx#fxae7mew.aEXfxbfxcfxdfxefxffxgfxhfxifxjfxkfxlfxmfxnfxofxpfxqfxrfxsfxtfxufxvfxwfxxfxyb9peokfxzfxAfxBfxCfxDfxEfxFfxGfxHfxIbABbHafxJfxKfxLfxMfxNfxOfxPfxQfxRfeMeVLfembqRfxSbAw#T4a64#6ZaR0fuqffacwb", +"fxTfxUeYWfxVahhafS#KRax0#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#Ad#Ad#Ae#v1a64fxW.UC#yC.UC.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.N4#Cg#DTapofxXaNGfxYfxZfx0fx1fx2fx3fx1fx4fx5fx6fuzfx7fx1fx8fx9dMrfy.awxdQ6eY9fy##efe2lfyaawue8Hfybfycfydfyec5afcFdfjfyffygfyhfyifyjfykfyl.oB.mOfymfynfyofyp.t0Qt2.iDc2wfyqfyreFVfysfyteF2dG.eO7ekje5OeZFfyufyvfyweTPfyxfxTfyyfyzfyAfyBfyCdRLd4nfyDdPJefNfyEfyFfyGfyHfyIfyJfyKfyLfyMfyNfyOfyPfyQfyRfySfyTfyUfyVfyWfyXfyYfyZfy0fy1fy2fy3fy3fy1fvSfy4fy5fy6fy7fy8fy9fz.fz#fzafzbfzcfzdfzefzffzgfzhfzifzjfzkfzlfzmfznfzofzpfzqfzrfzsfztfzufzvfzwfzxfzyfzzfzAfzBfzCfzDfzEfzFfzGfzHfzIeLwfzJfzKfzLfzMfzNfzOfzPfmKfmIfzQfzRfzSfzTfzUfwGfzVfzWfzXfzYfzZfz0fz1fz2fz2fz3fz4fz4fm2fm4fz5fz6fz7fjWfz8fz9fA.fA#fAafAafAbfwWfAcfwYfAdfAefAf.XQbVHatU#AjbdZ#yx.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON#v6#FL.UC#Ojd.KfAgbRl#v0#6Z#v0#v0#yG#v0ax0#60cEybRmfcrbEs#vVfAh#v1#Ri#yHboJboJcb7aAFfAicCD.sNfAjfAkfAlbPefAmboQfAncb7aq0.wc.wc#vV#0wax1#v1aMgeyzbCLaMgaq0#2D#KKcekcN3blPcejdHza64bstax0#6Zcji#KK.xU.xUb3D#KHb1XboI#Af#3T#3T#v1#2Db3ybJmbMY#6Z#Og#yG#RkdHA#z4#W2#yHalrboJ#9W#vZ#6Zcd6fAobN#bmyfApbVt#v0#AefAqfcmffafAr", +"fAsfAtfAufAvfAwafS#KKax0#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#Ad#Ad#Ae#Af#yHfw5.UC#yC.N4.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.N4.UC#Hhc8YfryaNGfAxfAyfAz#effx2fx3fAx#effx2fAAfABfACfADfAAdJ3fAEdDNfAF#2va#K#Z#eONfAG#Stay7fAHfoveMsflmalpfcFc41bRpfAIfAJfyhfAKfALfAMfAN.mO.qV.mcfAOfAPfAQ.sr.#ofARfASeZrdZhdRrfATfAUfAVfAWdcnehKe9.fAXfAYfAZezhfA0fA1eHOeHOfA2fA3fA4eM4fA5fA6efAfA7fA8fA9eKMfB.fB#fBafBbfBcfBdfBefBffBgfBhfBifBjfBkebMfvCfvCfBlfBmfy5fBnfBofBpfBqfBrfBrfBsfBtfBufBvfBwfBxfByfBzfBAfBBfBCfBDfBEfBFfBGfi8fBHfBIfBJfBKfBLfBMfBNfBOfBPfBQfBRfBSfBTfBUfBVfBWfBXfBYfBZfB0fB1fB2fB3fB4fB5fB6fB7fB8fB9fC.fC#fCafCbfCcfCdfCefCffCgfChfCifCjfCkfClfzUfwGfCmfwHfCnfCofwIfCpfz4fCqfCrfwPfm1fwOfCsfCtfCufCvfCwfCxfCxfCyfCzfCyfCAfCBfCCfCDfCEfCFe7ifCGfCH#MPaY.#Oj#Cf.N4aKE.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON#v6#Ch.N4#Oj#Cifq#bRl#v0#v0#v0#v0.xU#v0alr#60cySce.fCIfCJfCKfCLamPbLb#2CbZofCMeVBbwcahafCNfemfCOfCPfCQfCR#vXfCSbLfa#SfCTbwl#vV#v0#yIbwn.uV#60fCUafR#CjbZobZpbuhbwnafTbEFfCVaHUd8bfCWfCXcyBfCYfCZcb4#5I.wc.wc.Epb1JbwhcylaehaGyfC0eSUcySeX0fC1#DO#3TbAyeyhbwlfC2byt#5G#2CfC3cNTbOZb9AfC4fC5evWb1Xbsr#Adc#DfC6b5Nffacwb", +"fC7fC8fC9fAv#3TafSax0ax0#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#Ad#Ad#Ae#Afa64fuw.UC#yC.N4.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.N4.UC.UCcCqfD.fD#fDafDb#effADfDcfDcfx4fx1fDdfAAfDefABfDcfuzeH6fAE#5Be5s#SwfAF#Vzallffrf#MfDfdMofDgafOfDhbRofDie8LfDjc3EfDkfDlfyjfu0fDmfDnfDo.wV.m3eX7eMifDp.lZ.fyeKyeMN.bJc2ufu6fDqfDreTEfDsfDtekjerRfDufDvfDwfDxfDyfDzfDAfDBfDCfDDfDEeKKeG#ehTfDFfDGfB.fl.fDHfDIfDJfDKfBafDLfDMfDNfDOfDPfDQfDRfDSfDTfDUfDUfDVfDWfDXfyYfDYfDZfD0fD1fD2fD3fD4fD5fD6fD7fD8fD9fE.fByfE#fEafEbfEcfEdff4fEefEffEgfEhfEifEjfEkfElfEmfEnfEofEpfEqfErfEsfBTfEtfEufEvfEwfExfEyfEzfEAfEBfECfEDfEEfEFfEGfEHfEIfEJfEKfELfEMfENfEOfEPe3FfEQfERfESfETfEUfEVfEWftafEXfzWfEYfEZfE0fm0fm0fz3fE1fE2fE3fE4fE5fE6fE7fE8fE9fwTfF.fA.fF#fAafFafFbftpfFceSJevPfFdfFe.XQ#T6#T6#Cfcgl.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON#v6#v6.ON#T7#CifFfaZP#v0#Ad#v0#v0.xU#v0aiNaKGfFg#HgfFhfFifFjcrtbO1fFke.HeOzfFlfFmbLmd0WfFnbytfFofFpfFqfFrfFsfFtfFufFvfFwfFxbCLb7tafR#yEcrzcAxfFyfFzfFAfxGfFmfFBbAr#RkfFC#DMfFDfFEe7nfFFfFGeK.fFHe4#eVactWatVbcwd1cfFIfFJfFKf.we.HeMrfFHe4#fFLbwnbsufFMfFNfFIfFOdbRcoVfxkfx#fFPfFQfFRaHUbCxbXi.wcbmS#Ri#AefAqfFSfFTcwb", +"fFUfFVfFWfFXahhdOx#KKax0#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#Ad#Ad#Ae#v1a64eYD.UC#yC.N4.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.N4.UC.UCamQfFYfFZfF0fuLfxYfxZfuzfx4fx7fDcfAAfF1fF1fF2fDdfF3fAxeyTfF4#Y9fF5fF6fF7fF8ay6donfF9fG.fG#fGafcFe8KfDif#Pdx1fGbcACfGcfGdfGefGffGgfGh.nEfGifGjfGkfGl.lY.MIfGmfGn.kpdZhfGofATfGpfGq.iO.fZeF1fGre85dM8fGsebnfGtfGufGvfGwfGxfGyfDGfGzfGAfGAfGAfGBfGCewefGDfGEfGEfGFfDMfGGfGHfGIfGJd52fDQfGKfGLfDUfGMfGNfGOfGPfGQfGRfGSfGTfBnfGUfsrfGVfGWfD8fGXfGYfD9fGZfG0fG1fG2fG3fG4fG5fG6fG7fG8fG9fH.fzdfH#fHafHbfHcfEofHdfHefHffHgfHhfHifHjfHkfHlfHmfHnfHofHpfHqfHrfHsfHtfHufHvfHwfHxeNSfHyfHzfHAfHBfHCfHDfHEfEPfHFfHGfHHfHIfHJfHKfzUfHLfHMftbfHNfHOfHPfHQfHRfHSfHTfHUfHVfHWfHXfHYfCufHZfH0fH1fH2fH3fH4fH2fCDfH5fH6fH7fH8eSJfH9fI.cepatUaQAaQA#Cf#Zf.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON#v6#Ch.N4.XQ#Cifw7aZP#v0#v0#v0#v0#yG#v0a64aKGeq9fI#fIafIbfIcfIdfIefIffIgfIhfIifIjcySd3dbEtfIkfIlfImfInfIofIpfIqfIrfIs.zNeSKbsuaMheVbe7nfItcbZfw3e5dfIufIvfIwfIxaDya64eVAfIye4af.wf.we1#fIzfIAfIBfICfIDb7tbMYeX3fIEe09e09e7peOzfIgfFlfIFfIGe4#cylbRmfFKbiWfFKcb0eDafIHfFPfIw.WTfIIfIJb1AcS#cCFb1X#yG#yH.xUfAqfIKfILfIM", +"cO.fINfIOfuvahhbss#KRax0#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#Ad#Ad#Ae#v1a64fIP#MP#yC.UC.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.N4.UC.XQcF1ffefIQfx2frrfAyfxZffofDcfxZfDbeQ1eQ1eQ1eKlfIRfISfDcfx2fIT#2wfIUdHKfIV#gGfIW#k1fIXfIQfIYfIZe8LfI0e8Kf#Qc41c3ufI1fI2fI3fI4fI5fI6fI7.mIfynfI8fI9fJ.fJ#.UvfJacZD.kocZDfJbfJcfJdfJefJfepjfJgfJhfJifJjfJkfJlfJmfJnfJofJpfJqfJrfDFfJsfJsfJtfGAfJufJvfJwfJxfJyfJzfJAfJBfJCfJDfBafyNd3EfJEfGOfJFfJGfJHfJIfJJfJKfJLfJLfJMfJNfJOfJPfJQfJRfJSfJRfJTfJTfJUfJVfEafJWfJXfJYfJZfJ0fJ1fJ2fJ3fJ4fJ5fzhfJ6fJ7fJ8fJ9fK.fK#fKafEtfKbfKcfKdfKefKffKgfKhfKifKjfKkfKlfKmfHtfKnfKoeB5fKpfKqfKrfKsfKtfKufKvfKwfKxfKyfKzfKAfKBfKCfKDfKEfKFfKGftaftafEXft#e69fKHfKIfKJfKKfKLfHUfKMfKNfE4fHYfKOfKPfKQfKRfz9fH4fKSfA.fKTfwXfCCfKUfKVfKWfH9fI.fCHatUaQA#T6#Cfcgl.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON#v6#FL.UCatU#CifKXbRl#v0#6Z#v0#v0.xU#v0a64fKYcb4fKZfK0fK1fK2fK3fK4fK5fK6fK7fK8fK9eVBba0eyDfL.fL#fLafLbfLcfLdfLefLffLgfLhfLi#KRbO2eVlfLje.HeK.fLkfLlfLmfIie7wfIwaGybMYc6maR1fLnfIueK.fIufLofLpfLqfLrfLsaKG#CkfLtfbme1#e7pfxGfIAfIw#OifLufLvfIEfLwce#e1.fxGe4.fLxfIHfLyfLqfeb#99fLzfLAb1AfuoatWbye#yG#v0aRTaR0fuqfILfLB", +"dsgewffLCfLDcPJboY#KKax0#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#Ad#Ad#Ae#v1a64fFL#MP#yC.N4.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.N4#Cg.XQcF1fLEfokfLFfISfxY#gGffnfrsfF7ffneQ1eQ1fLGeQ1fcy#yhffofx0fLH#MwfLIfLJfLKfLLfLMfLNfLOfLPbRpdfje8KfI0fDjbRpc41fuVfLQfGefLRfLSfLT.D0.qTfLUfLVfLWceqfLX#kffLYfLZfL0fL1#F8fL2eO5fL3fL4fL5fL6fL7fL8fL9fM.fM#fMafMbfMcfMdfMefMffMgfMhfMifJsfGAfMjfMkfDKfJwfMlbgXfMmfMnfMofMpfMqeKRfMrdQUfMsfMtfMufMvfMwfMxfMyfMzfMAfMBfMCfMDfMEfBBfMFfMGfMHfMIfz.fMJfMKfMLfMMfMNfMOfMPfMQfMRfMSfMTfMUfMVfMWfMXfMYfMZfM0fM1fM2fM3fM4fM5fM6fM7fM8fM9fN.fN#fNafNbfNcfNdfNefNffNgfNheUwfNifNjfNkfNlfNmfNnfNofNpfNqfNrfNsfNtfNufNvfNwfNxfNyfNzfNAfNBfNCfNDfNEfNFfNFfNGfKJfNHfKNfHWfNIfNJfNKfNLfNMfNNfDBfNOfNPfCyfF.fNQfNRfAbfwXfNSfn.fNTfNUfNVftG.XQ#T6aTK#Cf.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON#v6#Ch.N4.XQaZOaNJcAM#v0#v0#v0#v0.xU#v0a64fCLc7NfNWfNXfNYfNZfIAfIxfN0fN1fN2fN3fN4fN5boKfN6fN7fN8fN9fO.fO#fOafObfOcfOdfOecl6atVeVlaNIeOzfe#fOffOgfOhfOifOjfOkfOlb1IaGoeHLaZOe7rfOmfIAfLsfK7fOnfOofOpfIG#AgbRlfIPfOqfOrfOsfOtfLufeifk#fOufbtfIwfLwcb5fOvfOwfIzfIAfOwfOxfOyfOzfOAfOBfLpb3tfr#fOCbyg#yG#yHaRTb1WfODfOEfOF", +"fOGfOHfOIfOJaMgdOx#KKbsu#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#Ad#Ad#Ae#Riaq0fxa.UC#yC.N4.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.N4#Cg.UCapofOKfOLfOMfxZfAz#gGfrsffnfuNffnfcyfONfiffcyfiffF7fOO#eg#i0awufOPfOQfORfOSfOTfOUe8KfOVe8KfOWfyffOXdffdfffOWfOYazdfOZfO0fO1#EV#PefO2fO3fGifO4fO5fO6fO7fO8fO9fP.fP#fPafDqfPbfPcfPdfPefPffPgfPgfPhedofPifPjfPkfPlfMffMefPmfPnfPofDGfGAfGBfPpfPqfPrfJzfPsfPtfPufPvfPwfPxfPyfPzfMrfPAfPBfPCfPDfPEfPFfPGfPHfPIfPJfMDcPAfPKfPLfMIfPMfPMfPNfPOfPPfPQfPRfPSfPTfPUfPVfPWfPXfPYfPZfP0fzffP1fP2fP3fP4fP5fP6fP7fP8fP9fQ.fQ#fQafQbfQcfQdfQefQffQgfQhfQifQjfQkfQlfQmfQnfQofQpfQqfQrfQsfBMfQtfQufQvfQwfQxfQyfQzfQAfQBfQCeivfQDfQEfQFfQGfQHfQIfQJfQKfNFfNGfKJfNHfQLfQMfHWfKNfQNfQOfNNfQPfQQfQRfNPfQRfA.fQSfQTfQUfCCfj1fn.fQV#3XfCGfQW#MPaJpaQA#Cfcgl.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON#v6#Ch.N4atUeXTfQX#DO#v0#v0#v0#v0#yG#v0#v1fCLdbRfQYfQZfQ0fQ1fQ2fQ3fQ4fQ5fQ6fQ7fQ8fQ9#yGfR.fR#fRafRbfRcfRdfRefRffRgfRhfRic#JbybfRjfRkfRlfRmfRnfRofRpfRqfRrfnefg1aGyaE1fFlfRsfRt#v6fLsfOnfnefRufRvfRwfRx#AgbMXfIPbE6fLvfRyfOxfngfRzfRAfRzc#kfRBeoqaHUfOsfRCfRDfLpfOyfRvfqbfREfRFfRGfRDfRHfRIfRJbye#v0#KS.xUfRKfRLfRMfRN", +"fROfRPfRQcoefRRbjJ#KRax0#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#Ad#Ad#Ae#RiaRRfw6.UC#yC.UC.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.N4.UCaWRamQfRS#yhfAx#effRTffpfuLfF7dMvffpfuNfuNfuNfuLfuNdMvfRUfRVfRWfRXeThe8HfRYfRZfR0dskfR1fR2fR3fyffR4fR5fR5fR6bOYfR7fR8fR9fS.fS#fSafSbfScfGifLVfSddxQfSedZffSfeWlfSg.jN#F8fSgfShfSifSjfSkfSlfSmfSnfSoePceBnfveeTMfSpfPmfPmfPmfMgfSqfGBfGBfJtfGAfSrfSsfStfSufSvfSwfGCfSxfSyfSzfSAfSBfSCfSDfPFfSEfSFfSGfSHfSIfSJcPAfSKfSLfSMfSNfSOfMHfMIfSPfSQfSRfSSfSTfSUfSVfMPfSWfSXfSYfSZfS0fS1fS2fS3fS4fS5fS6fS7fS8fS9fT.fT#fTafTbfTcfTdfTefTffTgfThfTifTjfQjfTkfTlfTmfTnfTofTpfTqfTrfTsfTtfTufTvfTwfTxfTy#52fTzfTAfTBfTCfTDfTEfTFfTGfTHfTIfTJfTKfQJfNFfTLfTMfTNfTOfKMfHWfQLfTPfQNfTQfTRfTSfTTfA.fz9fA.fH4fCzfTUfTVfCCfp4fCEfgWfgXfAefTWbjR#T6#T6#Cfcgl.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON#v6#FL.N4.XQaZOfTXcAM#v0#6Z#v0#v0.xU#v0#yH#v2dbReYYfTYfTZfT0fIwfT1fT2fT3fT4fT5fT6b3rfT7c0DfT8fT9fU.fU#fUafUbfUcfUdfUefUfb7EcAMfxWfncfUge4afUhfLufRqfUifRufUjfLvbLebRlfg0fUkfUlddofbmfUmfngfUmfOpfUnfUoaKGfUpfUqc6ncoXfRCfOkfOufUrfUsftvfg8fUtfbjd8bfIFfUufLufOxfUvfOpfUwfUxfUxfUyfK7fRHfUzfUA#DQ#PX.BK#vWb1WfUBfUCfUD", +"fUEfUFfUGfUHfAm#0u#6Zax0#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#Ad#Ad#Ae#v1aq0fw6.UC#yC.N4.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.N4#Cg#OkcCqfRSfUIfUJfUK#yhffnfrsffnfRUfRUdMvfigffnffnffnfiffiffULfUMaKAfUNeTieZbfybfUOfUPfUQfURfDgfUSbyGbPk#5wfUTdHRfcGfUUfUVfUWfUXaQWfUYfynfUZfU0a.aeg4fU1.RodWzfU2eMPfU3fU4fU5fU6fU7fU8fU9fSlfPgfSnfV.fV#fVafVbfVcfVdfPmfPmfPmfVefVffVgfDGfVhfVifVjfVkfVlfVmfVnfGDfVofSxfSyfMrfVpfGFfVqfVrfVsfVtfVufVvfVwfSNfVxfVyfVzfVAfVBfDBfVCfVDfVEfVFfVGfVHfD1fVIfVJfg.fspfSWfVKfVLfVMfVNfVOfVPfVQfVRfVSfVTfVUfVVfVWfVXfVYfVZfV0fV1fV2fV3fV4fV5fV6fV7fNefV8fV9fW.fW#fWafWbfWcfWdfWefWffWgfWhfWifWjfWkfWlfHCfWmfWnfWofWpfWqfWrfWsfWtfTHfWufWvfTKfQIfTLfWwfWxfTNfWyfKMfKNfNHfWzfWAfWBfWCfWDfWEfA.fCyfCyfA.fWFfWGfKTfWHftmfWIfWJfWKfWLfWM.XQ#T6aQA#Cfcgl.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON#v6#Ch.N4.XQe7kfWNcAM.xU#v0#v0#vZ#Ae#vZ#v0bVCeU9fRkfWOfWPfWQfWRfWSfWTfWUfWVfWWfWXfWYeFefWZfW0fW1fW2fW3fW4fW5fW6fW7fW8fW9b1CeqYfRlfX.fX#fXafRqfXbfRvfXcfOpfXdfXeb1Hb1QeU8fXfftzdolfLvftt#JnfXgfXhfXie4cb7tbymfFB#2B#yBfLvfXjftufXkfUrfOu#JofXlfbjapnfIGfXmfXnfLufOpfUjfXofXpfUnfXqfRCb7tfXrfXsetr.BP#96eeKaO9fXtfILfXu", +"fXvfXwfXxfXyeJ9dui#6Z#KK#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#Ad#vZ#Ae#v1aq0fx#.XQaZO.N4.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.N4bqU#CfapofinfrtfXzfXAffmfF6e8De8D#yhfifffmfF6f#Jf#JfIV#B1fcy#I6eZafF8fXBfUNawueV3fOUbsEfXCfXDfXEfXFfXGbPlbCXaModmNfXHfXIfXJfXKfXL#f8fXMfLVfXNazKfXOfXPfXQ.a4.jIebffXRfXSfXTfXUfXVfXWfXXfXYfXZfX0fX1eF5fX2fX3fX4fX5fX6fMgfPmfVefX7fVefX8fX9fY.fY#fYafYbfYcfYdfYefSxfYffYgfYhfYifYjfYkfYlfYmfYnfYofYpfYqfYrfYsfYtfVCfYufYvfYwfNMfYxfYyfYzfYAfYBfYCfYDfYEfYFfYGfYHfYIfYJfYKfYLfYMfYNfVPfYOfYPfYQfYRfYSfYTfYUfYVfYWfYXfYYfYZfY0fY1fY2fY3fY4fY5fY6fY7fY8fY9fZ.fZ#fZafZbfZcfSWfZdfZefZffZgfZhfZifZjfKwfZkfZlfZmfZnfZofZpfZqfZrfZsfZtfZufZvfZwfZxfZyfZzfQLfHWfKNfZAfVDfYwfNMfZBfZCfZDfZEfZFfNPfQTfZGfZHfZIfZJfZJfZKfZLfZMfQVfZNfZO#MPaJp#yy#Cf#Zf.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON#v6#Ch.N4atUd.Kclq#DO#v0#v0#v0#vZbmSbgV#AdbVCcb1fgZfZPfZQfZRfZSfZTfZUfZVfZWfZXfZYeVKfZZfZ0fZ1fZ2fZ3fZ4fZ5fZ6fZ7fZ8fZ9f0.b1DaWXfIGfkSf0#f0af0bfXjf0cf0dfOAf0efne#2Cb#OfOqf0ff0gazbf0hf0if0jf0kf0lf0jfLucylbujf0m#yCf0nfUmfOkf0of0pfUrf0qf0nfUt#HgaGyf0rfXnf0sfUmfOpf0lf0df0tfXif0uf0ve7mf0wcCFaRX#0I#DQ#Og#FOf0xfILf0y", +"d51f0zf0Af0Bf0C#yGave#9W#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#Ad#Ae#Ae#Riaq0f0D#yC#yC.N4.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.N4.XQ#yB#61f0Ef0F#J.f0GfXBfUNaBXaBXfF6fif#B1f0Hf0Iffmf0Jf0Kf0L#I6eV3f0MeThfUNfrtf0Nf0ObRpf0O#Uaf0PfOWf0QdhnfI2f0Rf0Sf0Tf0Uf0Vf0Wf0Xf0Yf0Zf00f01f02f03#FLfLXf04aaif05erLf06f07f08f09f09f1.f1#f1af1bezgf1cf1df1ef1ff1gf1hf1ifX7fX7f1if1jf1kf1lf1mf1nf1of1pfDHfJyfYgf1qfPrf1rf1sf1tf1uf1vf1wf1xf1yf1zf1Af1BfVAf1Cf1Df1Ef1FcPAfVDfYwfD6f1Gf1Hf1If1Jf1Kf1Lf1Mf1Nf1Of1PfiXfl6f1Qf1Rf1Sf1Tf1Ue9nf1Vf1Wf1Xf1Yf1Zf10f11f12f13f14f15f16f17f17f18f19f2.f2#f2af2bf2cf2df2ef2ff2gf2hf2if2jf2kf2lf2mf2nf2oeu4f2pf2qf2rf2sf2tf2uebQf2vf2wf2xf2yfTMfQLfKJfQLf2zf2Af2BfZxf2Bf2CfYwfMGf2Df2Ef1Cf2Df2Ff2Gf2Hf2IfNPfNPf2JfZJf2Kf2LfZKf2Mf2Nf2Of2PbjRdzH#yy#Cfcgl.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON#v6#FL.N4.XQ#Cif2QcAM#v0#6Z#v0#vZc#DeeR#vZbt4f2Rf2SfeVf2Tf2Uf2Vf2Wf2Xf2Yf2Zf20fXqfRjf21fIBf22f23f24f25f26f27f28f29f3.f3#f3a#98f3bf3cf3dfOkf3cf3ef3ff3gfqbf3hcoXcOebyt#Oif3if3jf3kf3lf3mf3nf3of0ef3pf3qcyme7xfK9ddof3rf0sf3sf3tf3uf3vf3wf3x#AheVzbTof3qf3ef0tf3yf3ef3zfOBf3Af3Bftuf.EafRf3CbqIbwn#DO#yG#0IbCqf3Df3EdbQ", +"f3Ff3Gat7f3Hf3IaUX#AeaiN#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#Ad#vZ#Ae#v1aq0f3J.XQ.XQ.N4.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.UC.UCbdZ#Ojejxf3K#J.dmKfXBeZ.eQ2aBYfrtffof3LfLG#yhfF8#St#SteZ.eZ.eZ.#PF#SteZ.eThf3McF0c41dhnfyffDjdfgf3Nf3Of3Pf3Qf3Rf3Sf3Tf3Uf3Vf3W#ZtfO3f3Xf3Yf3Zf30f31fXQf32f33f34f33f35f36f08f09f08f37f38f39edmfrPf4.dIhf4#f4af4bf4cf4dfX7fMgf4ef4ff4gf4hf4ifGAf4jetJetJf4kfYff4lf4mf4nf4nf4of4pf4qf4rfYxfTTf4sf4tf4ucPAf4vf4wf4xf4wfWDf4yf4zf4Af4Bf4Cf4Df4Ef4Ff4Gf4Hfdbf4Ifl6f4Jf4Kf4Lf4Mf1Uf4Nf4Of4Pf4Qf4Rf4Sf4Tf4Uf4Vf4Wf4Xf4Yf4Zf40f41fHcfHcf17f42f43f44f45f46f47f48f49f5.f5#f5af5bf5cf5df5df5ef5ff5gf5hf5if5jf5kf5lf5mf5nf5of5pf5qf5rfWxfTNfTOfQLfQLf2Af5sfNFf5sf5tf5uf5vf5wf4vf5xf5yf2Ff5zf5Af5BfZHfZHfQTf5Cf5DfNRfZIfp7f5EfWIfZNf5F#MP#T6#yy#Cf#Zf.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON#v6#Ch.N4#Oj#Cif5Gf5H.xU#v0#v0boV#vZ#R.c#DbXAf5If5Jf5Kf5Lf5MfOfbZMf5NfTYf5Of5Pf5Qfxcf5RfxFfOff5Sf5Tf5Uf5Vf5Wf5Xf5Yf5Zf50f51dqjf5JfIJfFBfFBf.yfIBf.yf52fFmf53fIJf2RdxVfRkf54eU8f55fncfIxf0mf56fFPfg0fFBdOHd1cfx#f57f2QfIBf58f58f5Nf59f6.fAgfLtbiWd1cfFBeyy.pxf55fIJf.yfFmf55f57fFPfLtbiWeVBdfaaO5.BKc#z#Js.Evf6#boGd.Q", +"ddkf6af6bcAMamOaUXafS#v0#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#Ad#vZ#Ae#v1aq0fx#.XQ#yC.N4.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.N4.XQ.UCaQAf6cf6df6ef6feV2#SteV2eQ2#PFeV3f6gfUNf6h#Vu#lK#PF#PFfUN#PFf6i#PF#PFf6if6jfuUfOWdhndffc7Gf6kf6lf6mf6nf6of6pf6qf6rf6sf6tf6uf6vfO3f6wf6xf6yf31f6zf6A#V0f34f6Bf6Cf6Df6Ef6Ff6Gf6Hf6If6Jf6Kf6LdM8f6Mf6Nf6OdT9f6Pf6Qf1if4df6Rf6Sf6Tf6Uf6VfGBf6Wfh5fDIf4kfJyf6Xf6Yf6Zf60f61f62f63fTTfSMf64f65fZFf66f67f4uf5wf68f69f7.fD9f7#f7af7bf7cf4Df7df7ef7ff7gf7hf7if7jf4Jf4If4Ifsmf7kf7lf7mf7nf7of7pf7qf7rf7sf7tf7uf7vf7wf7xf7yf7zfmhf7Af7Ae9Cf7Bf7Cf7Df7Ef7Ff7Gf7Hf7If7Jf7Kf7Lf7MfY6f7Nf7Of7Of7Pf7Qf7Rf7Sf7Tf7Uf7Vf7Wf7Xf7Yf7Zf70f71f5tf2zfQMfTNfTMf2BfNFf72f73fWyfD6f74f75f75f2Ef76fZCfWCfQRfZGfQTfZGfNPf77f77f78f79f8.f8#fn.f8af8bbVHaQA#yy#Cfcgl.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON#v6#Ch.N4.XQ#Cif8ccAM#v0#v0#v0#vZboV#R..wc#AeboR#0xf8dew#e.AboZf8ef8ff8gb3yeOuf8hf8ibu##0w#3Tf8jf8kf8lfXsf8mf8neOuf8of8pf8qcQ6#Adaa4#KJ#9YblVbl8#v1#yH#Ri#9Y#AfaTMaq0aTM#MQ#vVcCDf8rf8rbl6#vV#vV#vVaUWaq0aTM#DRahh#vVbEs#Af#z4#v1#3Tbm.a65aTMaTM#yHcCDcCDcCD#Ri#Ri#v1#vVfRRd3e#vVaTMbMYbMY#2D#v0.xU.xU#v0#yH.waaJhf8s", +"f8tf8uf8vbyfaUWcvK#yG#KK#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#Ad#vZ#Ae#v1aq0f8w.XQaZO.N4.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON#yC#Aj#61f8xaBXf6eaqVaBYaBYeQ2eQ2#PFfIXf8yf8zf8AbVgeTif6if8Bf8Bf6iawuf6ieV3f8Cf8Df8Edx2dx2f8Ff6lf8Gf8Gf8Hf8If8Jf8Kf6qf8Lf8Mf0Vf8Nf8Of8Pf6wf8Qf8Rf8Sf8Tf8Uf8Vf8Wf6Df8Xf8Yf8Zf6Ff6Gf6Ff36f80f81f82f4.f4.fX4f83f84f85f86f4df87f88f89f9.fl.f9#f9afSwewef4kfPrf9bf6Xf9cf9dbRgf9ef76f9ff9gf9hfSMf9ifDBfVCf9jfVzfNMf9kf9lf9mf9nf9of9pf9qf9rf9sf9tf9uf9vf9wfvNfl0f9xf9yf7hf4KfvRf9zf9Af9Bf9Cf9Df9Ef9Ff9Gf9Hf9If9Jf9Kf9Lf9Mf9Nf9OfsDf9Pf16f9Qfzcf9Rf9Sf9Tf9Uf9Vf9Wf9Xf9Yf9Zf90fYTf91f92f92f93f94f95f96f97f98f99g..g.#g.ag.bg.cg.dg.efTMg.fg.gg.hg.if2Af5tg.if5sfTNg.jfE.g.kg.kf5wg.lfWDfVzg.mg.nfQRfTUfH1g.of79g.pg.qg.rg.sfWKfWLg.t#MPaQA#yy#Cf.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON#v6#Ch.N4atU#CiciI#DO#v0#v0#v0#vZ#vZboVc#DbQ3g.ueSYb1Hdi8eYmf0ybymde9g.vde9g.wg.xg.yg.zg.yg.xfN6bAtg.Ag.Bg.Cg.Db7Eaplg.E#Acb7EbO5g.Fg.GdJRdJRdJRb1Cb1Cb7L#AcbymbymfLib1DbO5bT#aplg.Hg.Ib1Cb1H#Acb1Caplb1DfLi.zWcl6b1Db1CapldJMb5tb1Hfk7byCg.Jg.Kg.Lg.Mg.Mb1CbO5bO5g.Nb1Dg.Ng.NdJMfLifLi#T5fLib1D#Ac#AcaO9#Aag.OdVKg.P", +"f8tg.QcPyg.RaUWcvK#yG.xU#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#Ad#vZ#yG#v1bMYfx#.XQ#yC.N4.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.N4#yC#Aj#34ddpdkVg.SeTjdkV.HL.HLg.Tg.UbJzg.Vg.Wg.XfiifiifIQe2le2lg.Yg.Zg.0e2lfyag.1g.2g.3f6lg.4g.5f8Gg.6f6og.7f8Jf8Kg.8f8Lg.9g#.g##f8Of8Pf6wg#aaEVg#bg#cg#dg#eg#fg#gg#hg#ig#jf6Hg#kg#lg#mg#ng#oeufeDHf1cdM7dEeg#pg#qg#rg#sg#tg#sg#ug#vfJug#wfYcg#xf9ag#yfYffDHg#zg#Ag#Bg#Cg#DfWFf9gg#Eg#FfVyfVBf4ufVCf66f2DfZEg#Gg#Hg#Ig#Jg#Kg#Lg#Mg#Ng#Og#Pg#Qg#Rg#Sg#Tg#Ug#Vg#Wg#Xg#Yg#Zg#0g#1fmdg#2g#3g#4g#5f9Gg#6g#7g#8f9Kg#9ga.ga#gaagaagabf41gacf7Bgadgaegafgaggahgaigajgakgalgamgangaogapf92gamgaqgargasgatgaugavgawgaxgaygazgaAgaBg.efWxfQKf2zf2Af5sgaCgaDf5tf2AgaEf75fMGgaFg.kf5wg.lfVzgaGgaHg.nfQTgaIfNPgaJf78g.pf8.f8#g.sfWKfWLf8b#MPaQA#yy#Cfcgl.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON#v6#Ch.N4.XQdFugaKcAM.xU#v0#v0#vZ#vZboVc#D#vXdMgcH2boI#AegaLbqIgaMgaN#KPatVatVaAFeJ4avebgV#9WbMYgaO#2D#vZbJmad9cb8gaPgaQcLicN7.xUboI.xU#v0#v0#v0#v0#v0#v0#v0#v0#v0#v0#v0#v0#v0#vZboV#vZ#vZ#2D#2D#2D#v0#vZ#vZ#vZ#vZboV#vZ#v0#2D#2D#vZboV#vZ#v0#v0#v0#v0#v0#v0#vZboV#v0#v0#2D#v0#vZ#vZ#vZ#v0#v0#v0.xU.xU#yGeoygaRgaSgaT", +"gaUgaVgaWcef#3TbmSaGoa64#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#Ad#vZboV#v1aTMfx#.XQ#yC.N4.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.N4.XQ.UC#yygaXgaY#kTbCVafVgaZga0bPhga1ga2ga2g.Vg.VfR2ga3fLMe5wga4ga5ga6ga7ga8ga9dfggb.gb#gbagbbg.5f8Ggbcgbdgbegbfg.8gbgf3Tg.9eeHgbhe1fgbigbjeX9gbkg#cgblgbmgbngbogbpgbqgbrgbsgbtgbugbvgbwgbxgbygbzgbAgbBe5PfVbewNgbCgbDgbEgbFf4df1igbGgbHgbIgbJgbJgbKgbLetJfYbgbMgbNfYqfTTfSMfVzfVzfTTf7.fVygbOfTTfVBfNNgbPfQPgbQgbRfVsfGOgbSgbTgbUgbVg#QgbWgbXgbYgbZgb0gb1f9ygb2gb3gb4gb5gb6gb7gb8gb9gc.gc#gcagcbgccgcdgcegcfgcggchgcigcjgckfl8fl8gclgcmgcngcogcpgcqgcrgcsgctfNegcugcvgcwgcxgcygcwgcygczgcAgcBgcCgcDgcEgcFgcGgcHfJEgcIgcJgcKgcLgcMgcNgcOfWyg.jgcPgcQgcRfNHgcSfNNfNMg.kf4vf4vgcTfZGgcUfZIgcVf5BgaIfQTfTUfTVfp5gcWg.sgcXgcYf2P#MPaQA#yy#Cfcgl.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON#v6#Ch.N4.XQatU.pxcAM#yH#v0#v0#vZboV#vZ#v0#DP#vX#0Iaeg#0IbM0ak#bArbJjetw#vXaEY.Djaeg#0IbwnbQ1#vX#DP#0IcAPbJbdMbaGoeoyfupbyocAP#DP#DO#v0#v0#v0#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#Ad#vY#vY#Ad#yH#yH#yH#Ad#vY#vY#Ad#vY#vY#Ad#yH#yH#Ad#vY#Ad#Ad#yH#yH#yH#yH#yH#yH#vY#vY#yH#yH#yH#Ad#Ad#Ad#Ad#yH#yH#v0.xU#v0#KRak#fcqgcZgc0", +"gc1gc2gc3bRmgc4duiaGoax0#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#Ad#vZc#D#v1aTMgc5.XQ#yC.N4.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.N4.XQ.UCamQc#i#8ydkWaHQddqgc6gc7gc8gc9afVfOUfR2fR2g.Vga3gd.gd#gdagdbdj#dj#gdcgddgdedfhg.2gdfdqtf6lgbbgdggdhgbef3SgdigdjgdkelYgdlgdmgdngbigdof03gdpgdqgdrgdsgdtagogdugdvgdwgdxgdygdzfAVgdAgdBgdCgbzgbAgdDf4.gdEgdFgdGgdHgdIfMgfMffPmgdJgdKgdLgdMgdNgdOeA0dRJgdPgdQf1CfxfgaGf5zf5zgdRgaGf1CfVCfVzgdSfYsgdTgdUgdVgdWgdXgdYfGOgbUgbVgdZfyTgd0gd1gd2gd3gd4fvLgd5gd6gd7gd8gd9ge.ge#geagebgecgedgeegefgeggehgeif4VgcfgejgekgelfYGgckgemgaffSWgenfsngafgeogepgeqgergesf93getgeugevgcxgcugangewgczgexf9tgeygezgeAgeBgeCewWgeDgeEgeFf7vgeGgeHgeIgeJgeKg.jgcPgeLfJTfNHfWAf2EfZDf5wf76geMgeNgcVf2LfZIgeOgePf5BgaIf78geQgeRgeS#6WgeTgeUfZObVHaQA#yy#Cfcgl.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON#v6#Ch.N4.XQaZO.pxcAM#v0#v0#v0#vZ#yG#vZ#v0#DP#vWaO9.Ex.Ep.Ev.Ew#FO#vU#vXaeg#FO.Ex.Ev.BV.Fg.BV.Dm#PX#FO.Dj.DigeV#Hf.uV#Ac.BKgeW#PXaeg#Og#yG#yG.xU.xU.xU.xU.xU.xU.xU.xU.xU.xU.xU.xU.xU.xU.xU#Ae#Ae#Ae#Ae#Ae.xU.xU.xU.xU.xU.xU#Aec#D#Ae.xU.xU.xU.xU.xU.xU.xU.xU.xU.xU.xU#Ae#Ae#Ae#Ae.xU.xU.xU.xU.xU#yG#yG#yGbXrgeXgcZgeY", +"geZge0gaWcb6fAmafS#KKbqH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#Ad#vZ#Ae#v1aq0ge1.XQ#yC.N4.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.N4.UC.UC#v5ge2ge3ge4ge5gc7ge6gc6ge7ge8afVdfcg.Vge9ge9flbgf.gf#gfadhmgfbgfcgfdgfegfegffdfhgb.gdfg.3gfgf6ogfhgfif3Sgfjgfkf3Tgflgfmgfne1fgfogfpgfqb#MgfrfXQ.CWgfsgftgfugfvgfwgfxgfygfzfAVgfAgfBgfCgfDfvagfEfX5gfFgfGeblgfHgfIgfJgfKgfLgfMgfNgfKgfOgdNgfPgfQgfRgfSgfTgfUgfVgfTgfWgfXgfYgfYgfZgf0gf1gf2gf3gf4gf5gf6gf7gf8fBkgf9gdZgg.gg.fyTgg#g#Qggaggbg#TggcggdggeggffMFg.lggggghggiggjggkgglggmggnfMNgehggoggpggqggrggsggtggufMPggvggwggxf1PggyggzggAggBggCggDf93ggEganf92fV8gcygapggFganfV8ggGggHfvKggIggJggKggLewWggMggNggOgcKggPggQggRggSg.kfMGf2Cf5uggSggTf66f76f76f76ggUf2FggVf2Gf5Bf77ggWggXf5Bf5Bf2Kf79ggYggZgcWfWJgg0gg1#MP#T6#yy#Cfcgl.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON#v6#Ch.N4.XQgg2cCt#DO.xU#v0#v0#v0.xU.xU#v0#0I#vWak##T5aplapl.v5#vU#vX#Og#0I#0IbVCaO9apl#vUaeg#T5#AcbQ2#T5aO9#T5#v0#DP#vX.Ep#FO.Ew#DP#v0#v0#v0#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#Ad#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#Ad#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#Ad#yH#yH#yH#yH#yH#yH#yH#v0.xU#yH#v0ak#gg3gg4gg5", +"gg6gg7gg8eCLgg9afS#KKax0#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#vY#vZ#Ae#v1bMYfFl#yCaZO.N4.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.UC.XQ.UC#v5gh.gh#bNbghaghbghbghcgc9gc9g.WghdghdfLMe5wgheghfghgghhghighjghkghlgfegfdghmghnghoghkgdfdurghpghqgfhf8KghrghsgbgghtghufoDghvfoDghwghxghyf02ghzghAghBghCghDf09ghEfJdghFghGghHghIghJghKe87eTIePbghLghMerTeKHghNf86ghOghPghQghRghSghTghUghVghWghXghYf63ghZghZgh0gh1gh2gh3gh4gh5gh4gh6gfWgh7gh8gh9fyNgi.ebNgi#fGNgiafDVgiagiagibgiagicgidgiegifgiggihfJTfD9fMGggSgiigijgikgilgimgingiogipgiqgirgisgitgiugivgiwgixggwf9TggjgiygizgiAfl7gckgiqgiBgiCf93giDgiEgiFgcyfV8f7OgiGgiHgiIgewgiJgiKgiLgiMgiNfafgiOgiPgiQgiRgiSf7vgiTgiUgiVgiWf5vf2CgaDggSfD6giXf4vf2EgiYgiYgiZf2FgaHgi0gaIf79fZIgaIfQTf5BgaIfWGgi1g.sgi2gi3fZNgi4#Ojazb#Cf#Cf#2B.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON#v6#Ch.UCatUe7kgi5cAM#v0#v0#v0#v0#yG#v0#v0#DPaegdL6#0I#vX#DPbZz#DPbXAcAKb#Ob1Q#z9#DQ#DQ#DP#0I#0I#DP#0I#0I#DP#0I#yI#0I#0I#DQaegaO9#DQ#DO#DO#yI#Hf#Hf#Hf#Hf#Hf#Hf#Hf#Hf#Hf#Hf#Hf#Hf#Hf#Hf#Hf#Hf#Hf#Hf#Hf#Hf#Hf#Hf#Hf#Hf#Hf#Hf#Hf#Hf#Hf#Hf#Hf#Hfb1Xb3FaX8aX8#DObJk#DO#DO#DO#DO#DO#DO#DO#DO#DO#DO#DO#yI#yI#DPg.Jgi6d0Wgi7", +"gi8gi9gj.df#gg9bmS#KKax0#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#Ad#vZ#Ae#v1aq0f58aZO#yC.N4.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.N4.XQ#AjbAhgj#gjagjbf#PgjcfcEgjdga2ga2gjega2bJzgjfe5yf0Qgjgdurgjhgjidhlgjjgjkdj#dHxgjlcACfrCghogjmgjngjogjpgjqgjrgjsgjtgjugjvgjwgjxfO2gjygjzgjAgjBgjCgjDgjEgjFgjGgjHgjIgjJgjKgjLgjLfAVgjMgjNghKedmgjOgjPeF9gjQgjRghNfvegjSgjTgjTgfIgjUgdOgjVgjWgjXgjYgjZgj0gj1gj2gj3gj4gj5gj6gj7gj8gj9gjZgh2gk.gk#gkagkbgkcgkdgkegkfgkggkhgkigkjgkjgkkgklgdZgkmgkngkogkpgkqgkrgksgkpgktgkugkvgkwgkxgkygkzgkvgkAgkBggkgkCgkDgkEggqgiTgkFgkGgkHgkIggwgkJgkKgkLgkMgkNgkOgkPgiFgiEggrgkQgewgkRf7Ogevf7OgaogangkSgkTebMgkUfGMgkVgkWgkXgkYgkZgk0f7vfMKfSQgk1fMHfE.ggSfD6f74gk2f75f2Dgk3f5zf76f5zf66geNgk4ggVgk5f77fQTfCyfQTgk6gk7gk8f8#gcYftogk9fRia8Pc#j#DT.UCbdZaKE.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON#v6#Ch.N4.XQd.Kgl.f5H#v0#v0#v0#v0.xU#v0.xU#Hf#vUgl#bwfbO0#DQglabwfbEVb5TglbglcctW#DPbwq#DQ#DQak#ak##DQ#DQ#vX#DQak##vX#vX#vX#vXak#ak#ak#ak##vX#vXak##vW#vWak##vX#vX#vX#vX#vX#vX#vX#vX#vX#vX#vX#vX#vX#vX#vX#vX#vX#vX#vX#vX#vX#vX#vX#vX#vX#vXak##vWeopeopak#gldbwnbwj#DQdMaettbwnak#bm0ak##vX#vX#vX#vXak##vUecFgleglfdVE", +"glgglhgli.wa#G9#Ae#KKbua#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#Ad#vZ#vZ#v1aq0fFl#yC.XQ.N4.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.N4.UC#v5#HhgljghlglkgllfR5f0QdhoglmcF0bJyb11glnf0Oe8Kdhnc7Ggb#gbbf8GgloglpdwdghoglqglrfrAglsgltdh#gdffyhgjogluglvglw.OfglxfI8.mX.r2.m#glygfrglzglAglBglCglDglEglFglGglHfJdgjKglIglJglKgdyglLfX1glMgdBglNglOglPglQeKIfX5glRglSglTfMfglUfSsglVglWglXgj4glYglYglZgl0gl1gl2gl3gl4gl5gl6gl7glWgl8gl9gm.gm#gm#gmagmbgmcgmdgmegmfgmcgmggmhgmigmjgmkgmlgmmgmngmogmpgmqgmrgmsgmtgmugmvgmwgmxgmygmzggOgmAgmBgmCgmDf7vfVEgkEgcegmEgmFgmGgmHgmIgmJgmKf4TgmLgmMgmGggEgmNgmOf7vgmPgmQgmRgmRgcyf7Nf7NgkPf7NgmSgmTgmUgmVgmWgmXgmYgmZgm0gm1ggrgcQgaDgm2fSOf4vgm3gm4giYgm5f2Fgk3gm6gm6gm6gk3f2Ef2Egk3gm7gm8fWFfQRfKTfH6fH5gk8fWLfp5f8#fH7ggZgm9bqUc#jf03#MPbdZaKE.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON#v6#Ch#yD.XQ#CifRkcAM.xU#yG#yG.xU#v0.xU#yG#v0#OgetrdV0dV0etretrgn.#DPgn#gnagnbgnceomeoz#vX#DQ#yI#Hf#0I#DQ#DQ#0I#0I#DP#0I#0I#yI#yI#0I#DP#DQ#0I#yI#DO#yI#yI#DO#Hf#Hf#Hf#Hf#Hf#Hf#Hf#Hf#Hf#Hf#Hf#Hf#Hf#Hf#Hf#Hf#Hf#Hf#Hf#Hf#Hf#Hf#Hf#Hf#Hf#Hf#DO#yIbJnbQ3#Hfb1QeomdL7gndgneetzetu#yI#DO#yI#DP#0I#yI#0I#DQbZDaRXaX4amEewc", +"gnfgnggnhboMb3z#Ae#KKax0#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#vY#vZ#vZ#v1aq0fFl#yC.XQ.UC.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.UC#Cg#Hh#MPgnigdfgnjgnkgllghnfR5dfffDjgnlbVNgnlf0OdfkfDjdffgdfgnmgnngnodssdx2gllgb.glrglsglsgnpfrCdh#gnqgnrgnsgntgnugnv.HSfO3.rW.m.gnwglygnxbjSgnygnzgnAgnB.d0dcdfATglHfAVghFglIglJglKgnCgnDgnEgnFgnGgnHgnIglPgnJeTMgjRgnKgnLgnMgnNgnOgnPgj4gnQgnRgnRgnPgnPgnPgnSgnTgnUgnVgnWgnVgnXgnYgnZgn0gn1gn2gn2gn3gn4gn5gn6gn7gmdgn8gn9go.go#goagobgocgodgoegofgoggohgoigk0gk0gojgokgolgomgongoogopgoqgorggwgosgotfPQfJQgougovf7vgowgoxgoyggtgozgoAgoBgmGgoCgoDgoEgoFgoGgoHgoIgoJfYTfYTf5rf5rgoKgoLgoMgoNg#NgmVgoOgoPgkXgn8goQgoRgoSgoTgoUgoVfD6g.kf2Df4vgoWgiYgeMgm6gm6gk3gm6gm6geNgeNf5zgoXgcVgoYfCzgk6fH6fAegk8gcYgoZftnfp5go0fNVgo1c8Xgo2eHH#MP#2B.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON#v6#Ch.N4.XQ#CifRkb1Q#v1#MQ#v0#yG.xU.xU#yG.xUbwcejjaEYbZncY4g.Neq3bRdgo3eoxbyCgo4go4aO9#Aa#Aa#T5#DP#DQ#DQ#DQ#0I#DP#DO#yG#yG#Og#0I#DP#DP#DQ#vX#vX#yI.xU#v0#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#v0.xU#2Daq0go5dbQdatgo6cv4dOFaplb1E#2C#vX#DP#vX#0I#Hf#yI#vXb5Pb1Qd3uamEgo7", +"go8go9drv#vZeOu#Ae#KKbua#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#Ad#vZ#vZ#v1aRRf58#yC.XQ.N4.N4.N4.N4.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.N4#Cg.XQ#62gp.gb#gnmgp#gfgdwdgb.dfgdmBdstbPjbPjdoedoef0OfOWgllgnmgnng.4gpagbagjng.2frBglrglrfDkgpbgpccACgpdgpegpfgpggphfu3.rp.oH.qd.qdgjygpib#MgpjgpkgplgpmeMNfASgpngpoghHghGglIglIgppgpqgprgpsgpte87gpudEegpvgnJgnJfvegpwgpxgpygpzgpAgpBgpCgpDgpDgpDgpDgpDgpCgpEgpEglVgpFgpGgpHgpIgpJfDGgpKgpLgn4gpLgpMeBAgpNgpOgpPgpQgpRgpSgpTgpUgpVgpWgpXgpYgpZgp0gp1gp2gp3gp4gp4gp5gp4gp6gp7gp8gp9gq.goNgq#gqagqbfSSgqcgqdgqegqfgqggqhgeFgqigqjgqkgqlgqmgmFgqngqogqpgqqgqrgqqgqsgqtgqugqrgmOgcKgqvgqwgqxgb6gqygqzgqAgqBgqCgn9gqDgqEgqFgoTfGWgqGggSg.kf2Ef75f4vf76gqHgm6gk3gqIgqJgdSgqKgaHgqLf5BfZIf2KfTUfQUfH5#6WgcYgqMfp5gi1fm9gqNgqO.gh.UD.xh.yt.st.Cp.dk.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.ON.sW.FL.ON.ON.ON.ON.ON.ON.ON.ss.yu.ON#Ch#Ch#yBazb#Ci.lVaQF#SI#DP#DO.xU#Og#yGaMd#yIbCDbuhfCUb1Ccl6eVngqPb1BgqQgqRgqSb1Hde9b7E#Ac#FO.Di#FO#DQaNg#0I#DO#Hfaeg.Di.xT#PX#DQ.zBaKf#0I#yI#vUaeg#DO#v0#v0#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yHgqTaJoc#DcjigqUgqVeVkgqWgqXgqYgqZbO5eCSgq0aWY#vX#Hf#DQ.zW#vW#OgetreoygaQaL8gq1", +"gq2gq3gq4aiNgq5#Ae#KRax0#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#vY#vZ#vZ#yHcb6f.yaZO.XQ.N4.N4.XQ.N4.ON.N4.N4.N4.N4.N4.N4.N4.N4.N4.N4.N4.N4.N4.N4.N4.N4.N4.N4.N4.N4.N4.N4.N4.N4.N4.N4.UCa2H#yzejndqtgq6gq7g.4dssgjnghodmBdstcF0cF0dstdoef0Oc41dwdf6lgbbf6lgq8g.3gdfgb.gq9gr.fDkgr.frzgr#gragrbgrcgp.grdgregrf.Bp.na.TW.TOghzeHHa.#grggrhgrigrjgrkdZh.khfShfAVghFgjLghHgrlgrmgrngrogrpeTJeZDgnIgrqeKIgrrgdFgrsg#sgrtgrtgrugrvgrwfVjgrxfVjgrygfQgrzgrAgrxgrBgrCgpIbRgg#zgrDgrEgrFgrGgrHgrIgrJgrKgrJgrLgrMgrNgrOgrPgrQgrRgrSgrTgrUgrVgrWgrXgrWgrYgrZgr0gr0gr1gr2gr3gr4gr5gr6gr7gr8gr9gs.gs#gsagsbgscgsdgsegsfgsggqgge#gshgsigsjgoNggrgskgsl.iJgsmfBxgsngsoezagoxgspggPdaXgsqgsrgssgstgsue#IgsvgswgsxgsygszgsAgsBgsCgsDgsEgaDf75f2Df75f74f76gsF.hVgqIfVyfWCfWCgqKfZGgcVf2Kg.ogsGgsHgqMf8#g.sfAcfm9gsIgsJgsK.tG#tDgsLgsM#m7ayD.1..Sk.YW.N4.N4.N4.N4.N4.N4.N4.N4.N4.N4.N4.N4.nl.Z5.N4.N4.N4.N4.N4.N4.N4.Ic.MS.N4#yDahj#yBazbdFugsN.tk.trgsO#Aa#v1#OgaKf.uC.zO.BV#vUaGtetFcGagsPgsQgsRgsSgsTgsUbycboVatV#v0#DQ.Ev.Fg#SI.vZ.Eo#vV#KS.uT#Jpb7R.swak#.xV.r4#yH#MQ#Hf#vU#0I#v0.xU#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH.zw.BYa92#KR#z4gsVgo4gsWgsXgsYgsZfk5gs0bOZbCk#Og.Ey.zW.uL.BV#MQ#0wecFg.OaJhbv7", +"gs1gs2d5Ngs3gs4#Ae#KKax0#yH#32bCxbCxbCxbCxbCx#97#yH#yHbCxboVboV#v0bRm.Glb3taZO.XQ.XQ#yC.XQ.UC#yC#yC.XQ.XQ.XQ.XQ.XQ.XQ.XQ.XQ.XQ.XQ.XQ.XQ.XQ.XQ.XQ.XQ.XQ.XQ.XQ.XQ.XQ.XQ.XQ.XQazbdFu#Hhgs5ghhgs6gs7g.6gs8f6kghkdx1f0OcF0bPjgs9f0Ogt.gt#dfgf3NgtagjngtbdwdgtcgtdfuWgtefrzgtfc1Pc1Pgtggthgtigtjgtkgtlgtm.D1.qL.mf.BpgtngbkgtogtpgtqgtrgtsfO9.jy.#QgttgtugjLgtvgdAgtwgtxgtygtzgtAdCvgtBfVagtCgtDgtEgtFgtGgtHgtHgtIgtJgtJfPsgtKgtLgtMgtNgtOgtPgtQgtRgtSgtTgtUgtVezodZwgtWgtXgtYgtZgt0gt1gt0gt2gt3gt4gt5gt6gt7gt8gt9gu.gu#guagubgt8gt8gucgudguegufgugguhguigujgukgulgumgungkGguogupguqgurgusgutguugoNguvgsdgsegqcguwguxguyguzguAguBguCguDguEguFgsqguGguDgoIgcKgoE.kJe2CguHgqsguIguJguKguLgkXguMgn9guNgojguOgcgguPgm2fD6guQf74guRguSgoW.lnguTf2EfVzguUguUf2EfWFgoYf78gsGf79goZg.sggYfI.guVguWguXguYguXQtY#u6.#cQt0Qt0Qt0.yt.gqguZ.XQ.XQ.XQ.XQ.XQ.XQ.XQ.XQ.XQ.XQ.XQ.XQ.rn.YW.XQ.XQ.XQ.XQ.XQ.XQ.XQ.xA.OW.XQ.XQatU.XQeXTcQ8.Im.xE.gPc#Oapl#vV#OgaKf.uC.zOgeVb3Ge15gu0gu1gu2gu3#Hf.6Ngu4gu5gu6#KHb#O#Hf#vW.BV.Dj.tt.vV.Fp.zO.Eyaefb9z.xy#MR#T5.xV.r4#yH#MQ#yG#vX#yI#v0#v0#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH.fp.BYcLi.xU#Adgu7abbgu8gu9gv.gv#gva#T4bZycCs#v0#DQ.BP.xx.sK#FO#MQcTvgvbbmcewc", +"dN#gvcgvdaOYeOvafS#KKbua#yH#32bCx#yH#yH#yH#yH.Ey.Fg#yH#Ac.xUboV#yHatV#Hf.sJdkS.XQ#yC#Jo#Jo#yC#yC#yC#yC#yC#yC#yC#yC#yC#yC#yC#yC#yC#yC#yC#yC#yC#yC#yC#yC#yC#yC#yC#yC#yC#yC#yCa2HgvecAwfyjgvf#hWgs6gvggvhdssgvidfie8Kf0O#ngdxPgvjdfje8Kdffgjggvkgvlgvmdfggvngdegvogvpf0Qdfigvqgvrgvsgvtgvu.LR#gh#gmgvvgvw.F8.tq.sk#zdbuigvxgvy.hv#cTfU2.kq.kd.#1gvzgvAgvBgvCgvDgvEgvFgvGgvHgvIgvJdCuf6NgvKgvLgvMgvNgvOgvPgvQgvRgvSgvTgvUgvVgvWgvXgvYgvZgvWgv0gv1gv2gv3epudGwgv4gv5gv6gv7gv8gv9gw.gw#gwagrJgwbgwcgiRgwdgwegwfgwggwhgwigwjgwjgwkgwlgwmgwngwogwpgwogwpgwqgwrgwsgwtgwugwvgwwgwxgwygwygwzgwAgwBgwCgwDgwEgwFgwGgwHgwIgwJgwKgwKgb6gwL.jQguCgwMgskgwN.kLe81gqqf7vgwOgwP.kKguHgwQgcfgttgwRdytgwSgwTgwUgwVgwQ.jB.#MgwW.apgwXgwYcZL.jugwZf66gw0gw1gw2#bu.g4c2Hc02.g9gw3gw4gw5.iw#.8#bE#qB.f.gw6gw7gw8gw9gx..#l.wdgx#bVEgxagxbd.K.aXgsM#yC#yC.ij.RwQt0#yC.MU.MT.4.gxc.fA#yC.rngsM.4..Qo.fA.Z3.4..4.Qt0.xAgxd.4..4..Rw.LN.su.su.YT.yu.yt#yG#v0#v0#HfaKf.uC.uP.yr.wdQtCcOJgxegxfgxggxhgxigxjgxk.mKdJRbJ.aO9#PX.BK.Ep.wd.tq.wd.dr#KSa35.sx.Eo.zvaMd.xV.uP.cS.lV.gP.yq.tr.vX.zO.lS.tn#yH#yH#yHQtZ.lt#yH.sX.gP.vX.vY.cR.ts.Eo.lt#yH#yH.sBQty.vX.ts.ttaJo#yH.Eo#fh.tqaBt.uQ.LD.zAgxlgxmgxngxogxpgxq.hx.BY.sj.wd.uC.tqb7RbJd#Ckbwqgxrbmcgxs", +"gxtgvcgvdgxugc4afS#KRax0#yH#32bCx#yH#yH#yH#yH.Di#vW#yH#Adgxv.uZ#v0.v5gla.G.ax3#v3dudax3#Oigxwdudgxw#Oi#Oi#Oi#Oi#Oi#Oi#Oi#Oi#Oi#Oi#Oi#Oi#Oi#Oi#Oi#Oi#Oi#Oi#Oi#Oi#Oi#Oi#OigxwgxxgxyfIIgxzgxAgxBgxBgxCgxDgxEgbegxFf3PgxGgxHgxIgxJgxKgxKgxLgxMgxNgxOgxMgxPgxNgxQgxRgxQgxPgxQ.LVgxSgxTgxUgxKgxVgxWgxXgxYgxZ#mX#ZIamM#FQ.sIcPxgx0gx1gx2gx3#V0gx2gx4gx5gx6gx7gx8gx9gy.gy#gyagybgycgydgyegyfgyggyhgyigyjgykgylgylgymgyngyngymgylgyogylgymgylgylgypgyqgyrgysgytgyugyvgywgyxgyugyygyzgyugyAgyBgyCd3FgyDgyEgyFgyGgyHgyIgyJfY#fY#fY#fY#gyKgyLgyMgyNgyNgyOgyPgyQgpFgyPgyPgyRgySgyTgyUfPsgtRgyVgyWgyXgyXgyYf9ngyZgy0gy1gy2gy3gy4gy5gy6fMDgy7gy8gy9gz.d8XdCkgz#.zYgzaekbgzbcZygrkgzcgzdgzegz#gwXdTYgzfc9Agzg.ireMN.eOgzhgzi.ingzjgzkgzlaV4gzmgzndRpgzo.8C.gX.hZ.iW#.8.zPgzp.MEgzq.dh.xf.dXczZ.s6gzreS0eSObv7.dv.xw.gp.cS.lMgzsgzt.yugzu#Oi.dn#i#.zf#Oi.yugzu.1..Ic.hf.07.Gp.yt.07.Ic.FLgzu.Fk.Ic.Ic.GpQt0gzu.sP.Ic.zf.XS.GsgzvcoVbAxa0Z#v1.xU#Og#OgaKf.uCQty.drQt6gzw#pQgzxgzygzzgzAgzBgzCgzD.mPgzEawA.Fg.BV.xD.cR.Fp#SI.tt.xV.Ey.we.tk.BF.uPaKf.xVQt6aEp.xV.ii.tk.xE.cTaNg.cR.vX#yH#yH#yH.ts.sk#yH.tr.ii.sk.hn.AU.vY.tm.vV#MSaNg.AUQtN.cT.cT.hn.tk#yH.SqQtz.r4#pQate.xfgzF#pWgzGgzHgzIgzJ.pR.A3.YN.tr.vY.BD.wd#A#bEV#Afb5IgzKgzLgzM", +"dN#gzNgzOgzPfAm#Ae#KKax0#yH#32bCx#yH#yH#yH#yH#0I.BJ#yH#yH.BJ#X..uZbCx#DQbwcbt4aKGbVCbt4b7tbMXetAbwlaHUaHUaHUaHUaHUaHUaHUaHUaHUaHUaHUaHUaHUaHUaHUaHUaHUaHUaHUaHUaHUaHUaHUbwlbwlcylcdXe8ob1AdMfgzQbwhbwlbMXbMXeYQeYQbwnbABgzRbwibwkbEVb3tcbNgzSgzTgzUcbNbMXgzVgzWgzXcbNaQCb1AeombwnaQCgzX#vXetsgzYgzZeoob5I#vWak#c#Bb3tgzVgz0d8hbXoewdewdewdbCqbZygz1gz2.FgbP.#PX#PXeVfeVfgz3gz3gz4gz5gz5gz6gz7eVfgz8gz9gA.gA#gAagAacwxgAbgAcgAdgAagz2cwxgA#gAegAfatXgAggAhgAigAigAhaobbPcgAjbZxewdgAkgAcgAcgAlgAmgAngz7gAogApgApgApgApgApgApgAogAngz9gAqgAqgAqgArgAsgAsgAsgAtgAtgAugArgAvgAwgAsgz9gz4gz4gz9gAxgAmb3OgAygAzgAygAebEWgz9gz9gAlgAlgAzbEW.s6gzq.lA#qB.dXgAA.dg#bEgABgACgAD.sl.FnaZReoreouQt6.gZgAE.dI.dugAF.cP#bEgAGgAHgAI.tmQt6gAJ.hx.aCgAKgzw.sqglcglc.tx.S3bwfQt6QtCgAJcjjgAL.vV.lTbZDdL7dMcbwogAM.tr.F0.xw.uH.tibwk.sO.Dq.l2.sM.graHUaHU.gr.traHU.zO.#c.YT.lw.mg#kiaHU.lw.S4aHUaHUaHUaHU.ss.wdaHUaHUbMX.LN.dibweaRX#yG#yGbmS.xU.xU#yGaKf.uCaEp.spgAN.sj.xVgAOgAPgAQgARgASgATd8M.ukgAU.BK.Ev.xT.tJ.Eo.Eo#MQaEp.uC.sm#0I.sk.xw#PX#yH.xV.r4#v1.AU.l0#vU#yI.xU#v0.cR.vX#yH#yH#yH.ts.sk#yH.vV.sX#yH.tk.gP#yHaJo.uCgqT.sm.tH#yH#yH#yH.dr.tn#yH.Eo.xE#yG.ZV.gieSWgAV.vwdKsgAWgAXgAYgAZbJf.vV.cR.Ey.tq.tH.Fg#MQ#yHeoygA0bjmgxs", +"dv5gA1gA2ew#fAm#Ae#KKax0#yH#32bCxbCxbCxbCxbCxbqR#yH#yH#yH#v0#OgbCx#FO#Hf#0Iev1.Ev#vXb1QcAMaRXatVatVatVatVatVatVatVatVatVatVatVatVatVatVatVatVatVatVatVatVatVatVatVatVatVatVaE1aE1#Ogcekcek#Og#Og.wc.wc.wc#OgatVatVatVatVatVatVatVatVatVatVatVatVatVatVatVatVatVatVaE1aE1cjocjoaE1gA3gA4gA5#HfgA6#yJ#yJ#yG#yG#Og#Hf#Hf#Og#Og#Og#vXapl#Hf#v0.xU.xUbst#yH#yHalrbdTboMboNcQ6.mNgA7gA8gA9gB.gB#gB#cMwaq0aRRgBacMwgBaaRRgBb.mN.mNaq0aRRgBaaRRbJmboNaX4gBceOvax1ax1ax1aGtboNaiNaiN#vZ#v0#vV#FO.EqasgdJMboOboOb3EaUUgBdgBdgBdgBdgBdgBeeOwd3uaDqaRRaRRgBagBbgxugB.gB#gB#gB#gB.f8qcMwgaMgBfgBggBhgBhgBigBjbssd3ubyycNUdi9gBjgBkgBlgBmgBjcNUbubgBn#q7.mS.dr.tHaJl.yq.iigBo.uH.sm.sq.uC#T4#T4bss.gp.MCbyfQtz.ttbyf.lV.yrbyfbyigBpQtE.GfgBq.79.ltgBr.uH.zO#Og#Og.sk.tr#Og.toQtNbyfce#aE1.yr.r4cekgBscek#Hf#DOb3F.zBgBt.aC.uH.lSaEp.uH.Io.tnatVatVatV.vY.IoQtC.uC.ti.mgatV.sq.uCatV.lS.wdatVatVatVatV.lu.vZcAM#yHcTv.vZ.tt#yHa64#yGbmS#v0#v0#v0.xUaKf.uC.zB.DmgBu.#cffxgBvbKD#YmgBwfZK.r3dZc.tWeHJgBx.BJ.BJ.sq.BE.draMdaMd.yr.ti.zW.sB.yraeg#Ac.Fp.lu.zWQtC.BD.BE.uC.tt#v0.cR.vX#yH#yH#yH.ts.sk#yH.vV.sX#yH.xE.gP#yHaJo.uCgqT.sm.yr#yH#yH#yH.dr.tn#yH.Eo.xEcOd.hn.lwcykdap.ltgBy.u..gpgBzgBAgBB.wd.xE#Ac.tq.traegaplbCMbyndOxgzLgAd", +"gBCgBDgA2ew#cJE#MQ#MQ#Of#yH#32bCx#32#32#32.BJbqR.zL#yH#yH#v0.zLbCx#yG.xU#Ac.Df#32ak##HfcAMaRX#Hf#OgatVatVatVatVatVatVatVatVatVatVatVatVatVatVatVatVatVatVatVatVatVatVatVatVaE1cjogBEbybaRX#Og#Og#Og#Ogbyb#OgatVatVatVatVatVatVatVatVatVatVatVatVatVatVatVatVatVatVbmxbmxcjocd1ce#gA3ceag.RaRXgBE#yJ#yJ#yG#yG#Og#Og#Og#Og#Og#Og#vX#PXaEZ.Epd.Ld.Lfupejjct0gBFbw.bM2eeKbv8gBGgBHbZOgBIgBJgBIgBJgBIgBK#yE#yE#yE#yE#yE#yE#yE#yE#yE#yE#yEeSUbO2gBLgBMgBNgBOgBPgBPgBPgBOgBOfupaEZct0gzMeS0gBQ#0FgBR.xD.v5.Ep#FO.Ep.Fh.Fh.Fh.Fh.FhgBScTobZogBHgBTgBTbVwbv9gBUgBVgBVgBUbv9bv9bv9gBUgBVgBWgBXgBTgBXbZOfR.gBYgBZgB0gB1gB1gB2b3ueeKeeKgB2gB1gB0.l7cG7.ly.lS.zv.lt.uH.lt.sL.uH.sm.sq.uC#T4#T4#T4.gp.ti#OgQtz.dr#Og.lV.yrbyfbyigBpQtE.GfgBq.79.ltgBr.uH.zO#Og#Og.sk.tr#Og.toQtNbyfatVatV.yr.sm.wc#Og#Og.wceaHdQOeaHeaHdQO.AU.xEaEp.uH.cR.sD.l0atVatV.vY.uC.zhaBtatVatVatV.sq.uCatV.lS.wdatVatVatVatV.lu.vZcAM#yHbm0.uHQtz#yG#yHbmS#yG#v0#v0#v0.xUaKf.uH.zB.xUeaH.tk.1vgB3.#j.S5bss#DDaNg.YTgB4bO7b5G#Hf#Og.cT.uC.uH.uH.uH.uH.AUaJo.lS.xV#Hf#Hf.yr.l0#yG#Og#SIaBt.sk.uC.zB.cR.vX#yH#yH#yH.ts.sk#yH.vV.sX#yH.xE.gP#yHaJo.uCgqT.sm.yr#yH#yH#yH.dr.tn#yH.Eo.xEaRT.Fk.lugB5gB6.zBgB7gB8.lu.xVgB9dS8.yq.cR#Og.sk.Eo#Og#Og#Og#yJd3uba2gAw", +"eHMexlgC.gC#boO#A##A##A#.xU.sJbCx.xU#v0#yH#yH.Exaeg#yH#yH#v0.xUbCx#yG#Hf#DQaO9#Acak##yI#DO#Hf#DO#Hf#Og#Og#Og#Og#Og#Og#Og#Og#Og#Og#Og#Og#Og#Og#Og#Og#Og#Og#Og#Og#Og#Og#OgbyfaRXgBpgBEbybaRXaRXbyfbybaRXaRXbyb#Og#Og#Og#Og#Og#Og#Og#Og#Og#Og#Og#Og#Og#Og#Og#Og#OgbybgBEgBEgBpbyig.RcekaE1g.RcAMbyb#T4#Og#Hf#Og#Og#Og#Og#Hf#Hf#Hf#vX.DobJibCpbCpbCpcbMcbMcbMcbMcbMcbMcbMcbMcbMcbMcbMcbMcbMcbMcbMcbMcbMcbMcbMcbMcbMcbMcbMcbMcbMcbMcbMcbMcbMcbMcbMcbMcbMcbMcbMcbMcbMcbMcbMc#Ac#AgCa.u2gCaaMf.BP.BJ.uZ.uR.uRe48bJicbMcbMcbMcbMcbMcbMcbMcbMcbMcbMcbMcbMcbMcbMcbMcbMcbMcbMcbMcbMcbMcbMcbMcbMcbMgCbgCbgCcgCdgCegCfgCfgCfgCfgCfgCfgCfgCfgCfgCf.lt.Et.cTahg.BD.wd.v0aJo.sL.uH.sm.zO.uH.lt#Og#6Y.tsQtz#OgQtz.dr#Hf.lV.yraRXbybbyf.d..dr#Og.Fm.lt#6Y.uHgCg#Og#Og.sk.tr.wc.tk.yqaKfbO7gqT.AU.sn.wcatV.wc.wcaZRgCh#SIaMd.r7.uC.lVaEp.uH#Og.xE.AU.sm#Og.cR.vZ#Og#Og#Og#Og#Og.sq.uC#Og.sm.AU.zO#Og#Og#Og.lu.hn#Hf#Og#DP.ts.dq#v0.xUbmS#Ae#v0#yH#yH#v0#6Y.vV.sm.xU#v0.B2.tm#v0QtN.tmcQ6boO.uO.uCgCialrbst#v0#v0.ts.gP.lS.lS.lS.sB.Fp.sB.lS.hn#v0#v0.wd.l0#v0.xU#v0.xUaMd.uCaBt.lu.xVgqT#yHgqT.xV.sk#yH.vV.sX#yH.sk.gP#yHaJo.uCgqT.sm.AU.zB#yH#yHQtN.sj#yH.zw.xEc#D.yqQtJc#Dbu#.xE#srgCj.lt.hnba0ba0.tr.cS#v0.sk.Eo.xU#KKaAFgA6gCkgClgAs", +"gCmgCnat7gqUfRR#vZbua#z4#v1#32bCx#yG.xU#v0#v0.zW.Ew#yH#yH#v0#yGbqR.xU#Hf#yI#DO#DO#yI#yI#DO#Hf#DO#Hf#Og#Og#Og#Og#Og#Og#Og#Og#Og#Og#Og#Og#Og#Og#Og#Og#Og#Og#Og#Og#Og#Og#Og#Og#Og#Og#Og#Og#Og#Og#Og#Og#Og#Og#Og#Og#Og#Og#Og#Og#Og#Og#Og#Og#Og#Og#Og#Og#Og#Og#Og#Og#Og#Og#Og#Og#Og#Og#OgbybbO7#Ogb3D#Og#Hf#Og#Og#Og#Og#Og#Hf#DO#Hf#yI.BVbqtbcxaKIaWWbAjaMfaMfbJhbJhbJhbJhbJhbJhbJhbJhbJhbJhbJhbJhbJhbJhbJhbJhbJhbJhbJhbJhbJhbJhbJhbJhbJhbJhbJhbJhbJhbJhbJhbJhbJhbJhbJhbJhaMfaMf.BJ.BP.BP.BJ.uR.uRaMf.BJ.BJeHJaMfbJhbJhbJhbJhbJhbJhbJhbJhbJhbJhbJhbJhbJhbJhbJhbJhbJhbJhbJhbJhbJhbJhbJhbJhbJhbJhbJhbJhbJhgi5bJhbJhbJhbJhbJhbJhbJhbJhbJhbJh.ltayE.sk.BQ.ti.BEQtN#HfaMd.uH.sm#Og.Eo.Fp.yr.tH.Fp.zO#OgQtC.dr#Og.lV.yr#Og#Og#OgQtz.dr#Og.vZ.lt#6Y.uH.zO#Og#Og.sk.tr#Og#SI.wd.vV.tH.Fp.uH.sm#Og#Og#Og#Og.tn.uH.uH.uH.uH.ts#OgaEp.uH#Og#Og.vY.vV.sqaKf.wd.vV.yr.yr.yr.cS.sq.uC#Og#Og.tr.Fp.yr.yr.lu.lu.vZ#Og#Hf#Hf.ti.tq#v0#yG#Og#yG.xU#yH#yH#yH#v0.gp.Fp.yr.tH.Dc.ltboP.r8.AU.Eu.wddD5gCogCiaiN#v0#yH.zB.uH.lS#yG#v0.xU#yGQtyQty.lS.hn#yH#yH.wd.l0#6Y.wd.wd.wd.vV.tr#yHaJo.xV.AU.wd.vV.uC.sk#v0.vV.sX#yH.sk.gP#yHaJo.uCgqT.sm.uC.AU.yr.tH.tH.sX#yH.Eo.ty#Ae.tS.Fp#pz.wd.Fp.Py#KK.lt.zAboOboN.tr.cS#v0.sk.Eo#vV#6SaUWblSgCpgCqcMK", +"gCrgCsgCtfupboIbsr#yG#Og#Og#FPbqR.Dj.Dj.Dj#vWbCx#yH#yH#yH.xU#yGbCx.xU.xU#Og#Hf#Og#yG#Og#Og#yG#yG#yG#yG#yG#yG#yG#yG#yG#yG#yG#yG#yG#yG#yG#yG#yG#yG#yG#yG#yG#yG#yG#yG#yG#yG#yG#yG#yG#yG#yG#yG#yG#yG#yG#yG#yG#yG#yG#yG#yG#yG#yG#yG#yG#yG#yG#yG#yG#yG#yG#yG#yG#yG#yG#yG#yG#yG#yG#yG#yG#yG#yJ#Og#yGbybbyb#yG#yG.xU.xU.xU.xU#yG#Og#Og.xUfw4bZz#DQbQ1bVi#DPdL6#0I#0I#0IdL6cARdL6#0IdL6cAR#0IdL6#DP#0IdL6#DP#0IdL6dL6cARcARdL6#0IdL6cAR#DP#0IbQ3#0IbXA#0IdL6bVBbVBb#O#yI#yI#0IdL6#0I#0IbwndMb#DP#DP#DQ#DP#DP#0I#0I#DPdL6#0I#0IbXA#0IbVB#0IcARdL6#0I#0I#0IdL6dL6#0I#0IcARdL6dL6dL6dL6dL6dL6dL7bZCbZA#0I#0I#0I#0I#0I#0I#0I#0I#0I#0I#0I#0I#0I#0IaKf.l0gqT#DQaKf.lVaJo#Og#6Y.r4aKf#yG#yGaEp.r4.r4gqT#yG#OgaEp.zB#yGaNg.sX#yG#yG#yGaEp.zB#yG.sqgqT#yG.r4aJo#yG#yGgqTaBt#yG#yG#yG.sX.r4.lV.AU.sX#yG#yG#yG#yG.zO.r4.r4.r4.zO#yG#yGaJo.r4#yG#yG#yG.sXaBt#yG#yG.sX.r4.r4.r4gqTaJo.r4#yG#yG#yGaEp.r4.r4gqTgqT.sX#yG#Og#OgaEpaMd#Og#Hf#Og#yG#v0#yH#yH#yH#yH#yH.zB.sm.smaNg#AdalralraKf.t8.sm.sB.uCaNg#yH#v0#v0gqT.r4#yH#v0#v0.xU#yGaMd.smaNg.sX#v0#yH.sXaKf#yH.sm.sm.sm.sX#MS#vZ#v0.xU.sX.sm.sm.xV.cR#v0.smaKf#v0#SIaEp#v0#v0.s6#MS.sm.vV.sm.sm.smaJo#v0#v0aBt#SI#yG#yGaNg.uj.l0aEp#yG#yGgqT.sq#vZ.xUaBtgqTboI#SIaEp#OgbXAb5OctWgvbgCugAm", +"gCvgCwaGsbuhgCxgCy.xD.xD.xT.BV.Ep#Aa#Aa#Aa.Ew#yH#yH#yH#yH#v0#v0aO9#v0#v0#v0#v0#v0#v0#v0#v0#v0#v0#v0#v0#v0#v0#v0#v0#v0#v0#v0#v0#v0#v0#v0#v0#v0#v0#v0#v0#v0#v0#v0#v0#v0#v0#v0#v0#v0#v0#v0#v0#v0#v0#v0#v0#v0#v0#v0#v0#v0#v0#v0#v0#v0#v0#v0#v0#v0#v0#v0#v0#v0#v0#v0#v0#v0#v0#v0#v0#v0.xUaAF#yGbmS#0I#Hf#v1#MQcej#v1#yH#MQ#v1#yH#Af#KSbl7gCzblPafT#vYbmybl8alr#Ad#KJd3pfUA#KJ#yH#RicEs#Ri#0wcCD#9Ybl6#9YfUAgCA#vYcEsgCB#Ri#Ribl6#vYgq5atWfXsbl7#9W#vZgq5fXsbmyatWbl8#9YgCCbl8#9Y#AbdHA#yHbst#3T.Ey#KS#yHboRbl7cCD#vY#vY#vZ#AdafTe8ncCDcCDgq5#v1#v1#v1aa4#AdeCY#9Ybl8fUA#KJgCBeOubl6cCD#Ad#v1bmyacSeOu#Ad#Ad#Ad#Ad#Ad#Ad#Ad#Ad#Ad#Ad#Ad#Ad#vY#vY#Ad#yHa64#yH#v0#v0#v0#v0#v0#v0#v0#v0#v0.xU.xU#Og#0I#Hf#yG.xU.xU#v0#v0#v0#v0#v0#v0#v0#v0#v0#v0#v0#v0#v0#v0#v0#v0#v0.cS.ii.ii.ii.uP.tHaKf#v0#v0#v0#v0#v0#v0#v0#v0#v0#v0#v0#v0#v0#v0#v0#v0#v0#v0#v0#v0#v0#v0#v0#v0#v0#v0#v0#v0#v0#v0#v0#v0#v0#v0#v0#v0#v0#v0#v0.xU.xU#Hf#yI#Hf.xU#v0#yH#yH#yH#yH#yH#yH#yH#yH#yH#yHalr.xE.iiQtN.tn.tr.tr#vVa64#v1#v0#Ae#Ad#vV#Abbm.#yH#vV#AddL7cOd#Og.xU#9WboR#yH#yH#yH#yH#yH#vZ#v0c#D.r4.ii.tn.ii.tm.uC#SIafTbl7.xU#v0boR#v0#AdgCDa92.xU.r4.tH#v1#v1#yH#v1#v1#v1#v1#v1#yH#yH#0I.Ex.Di.xB#vX#v0#v0#v1#v1#W2#yHa64#DF#3TbwcbJd.N5cepgCEejtgCFgCG", +"e17gCHgCIbfygCJgCK#A#.BP.BP.tJaeg#v0#yG#yG.xU#v0#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#KRaRTboM#yGbVBdYvgCL.Exfk7.Ep.tv.tEbZobqIgCMgCNfk7blPgCOb1XgCPgAGgCQgCRe.zblVgCS.wc#RjgCTgCUafTgCVgCWblPgCXetrcEsgCYgCZ#OffUA#AbbmagC0#Rjaq1gC1#DQ#AagC2boLblOaO0gC3gC4gC5.ExgC6gC7bAkfApecEblUevWbqCgC8#T5aWXeJ9#OggCzfRJ#yHcCDfRJ#KHdOFaEY#yJbmaaAzbl8fUAacSgq5gC9cH2bm#eeRfoef8rcN8boGafTdHzbmygCBgD.bAt#AeboMc#DboSboSboSboSboSboSboSboSboSboSgD#gD#boS#Ad#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#v0.xU#Hf#DP#DO#yG#yG#v0#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH.lS.dr.dr.dr.vY.zO#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH.xU.xU#Hf#0I#DO.xU#v0#yH#yH#yH#yH#yH#yH#yH#yH#yH#yHbdT.cU.tt.dr.tn.dq.mq.tvaDxgDafntgDbgDcgqVgeWbiCbynbXrgDdbZzboIafS#yGaRT#DG#Ad#yH#yH#yHaL9#Ae#Ck.xU#QbQtZQtNQtZ.dr.mJgDegDfgDg#KS#AbaP.#5HbN#eJ9boI#yG.zB.gp#Hf#DO#Hf#DO#Hf#Og#Og#Hf#Hf#Og.v5.Ex#Hf.we#PX#yI#Hf#Hf#Hf#Og#Og#DO#Og#HfcCMgDhdhbgDigDjgDkftqgDl", +"e17gCHgDmfFBgDngDo.uL.tA.uL.uTaeg.xU#yG#yG.xU#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#KKc#DgDp#yFaRTgDqgDrgDseg7gDtgDugDvgDwgDxgDygDzgDAgDBgDCe1cgDDgDEgDFcObaUZgDGgDHfe.#DMgDIgDJgDKgDLgDMgDNgDOgDPbVngDQfg2gDRewabH.gDSgDTfxzb7sgDUgCrgDVgDWc#EgDXgDYgDZayKgxVgD0gD1gD2gD3gBScicgD4byqgD5gD6gD7gD8gD9gE.gE#.tJgEaaRXbwggEbgEcgEdgEegEfgDLgEgev1gEhgEigEjgEk.uMgElgEmgEn.xTdTr.tAgEobVuguVgEpgEqgEr#0wbmSba0#vY#vY#vY#vY#vY#vY#vY#vY#vY#vYboSboS#vY#Ad#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#v0#yG#Hf#0I#Og#yG#yG.xU#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH.xU.xU#Og#yI#DO.xU.xU#yH#yH#yH#yH#yH#yH#yH#yH#yH#yHbdT#6Qcb9gEsgEtgEugEvct3gEwgxRfrbgEbgExgEygEz#XagEAgEBgECgEDgxugEEafSbqKbsq#vY#yH#yH#AdbgV#yGbmxaTMgEFgEGgEHgEIgEJgEKgELeX8gEMgENgEOewbgEPaNIgEQgaNdOx#vZaX8aeg#Ac#T5.zW#T5aegaeg#T5#T5aeg.BV.Ew#v1.we.we.zWaeg#T5#T5aegaeg#T5b9peSK.BXgER#h.gESgETgEUgEVgEW", +"dN#euZat7gEXgEYgEZgE0.Ev.xB.Ev#vU.xU#v0.xU#v0#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#2DafSah.gE1cMMgE2gE3gE4#l3gE5gE6#NpgE7gE8gE9gF.f0EgF#gFagFbgFcgFdgFeguVgFfgFggFhgFiaGwgFjgFk#kMgFlgFmgFnglxgFogFpgFqgFrgFsgFtgFugFvbG2bVIfAPgFwgDzbwygFx#KPgFygFzgFAatz.4LgFBgFCgFDgFEgFFgFGgFHgFIgFJgFKgFLfj7.HsgFMgFNe1ef3TbVCgFOgFPgFQgFRgFSgFTgFUgFV#RlgFWgFXfAdgFYgFZgF0gF1gF2gF3bTugF4gF5gF6gF7aQEgF8gF9#3TboLboO#Ad#Ad#Ad#Ad#Ad#Ad#Ad#Ad#Ad#Ad#Ad#Ad#Ad#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#v0#v0#Og#DO#yG.xU#v0#v0#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#yH#v0#v0#yG#DO#Hf.xUafS#yH#yH#yH#yH#yH#yH#yH#yH#yH#yHalrbdTgG.gG#gGagGbgGccMOgGdgGegGfgGg.FigGhgGigGjgGkgGlgGmgGngGogGp.xUaveboV#Ad#yH#yH#yH#DG#KRdhiaUWgGqgGrgGsgGtgGugGvgGwgGxgGygGzamJfq.gGAgGBgGCgGDboMgGEgGF#vWak##DQ#DQ#DQ#DP#DP#DQ#DQ#DP#PX.BK#vU.v4.Di#vX#DP#DQ#DQ#DP#DP#DQglaetDgGGgGHgGIgGJgGKgGLgGMgGN", +"dN#gGOgGPeYYgGQgGRgGScMtgGT.Ewaeg#yG.xU#yG#v0.xU.xU.xU#vZ#vZ#vZ#vZ#vZ#vZ#vZ#vZ#vZ#vZ#vZ#vZ#vZ#vZ#vZ#vZ#v0#vZ#vZ#vZ#vZ.xU.xU.xU#vZ#vZ#vZ#vZ#vZ#vZ#vZ#vZ#vZ#vZ#vZ#vZ#vZ#vZ#9W#vZ#vZ#vZ#vZ#vZ#vZ#vZ#vZ#vZ#vZ#vZ#vZ#vZ#vZ#vZ#vZ#vZ#vZ.xU.xU#vZ#vZ#vZ#vZ#9W#9W#9W#vZ#vZ#vZ#vZ#vZ#vZ#vZ#CkbsrdqibqGce#gGUfZNgGVbJegGWgGXgGYgGZgG0gG1gG2gG3byugG4#FLgG5gG6gG7biYgG8gG9gH.gH#gHagHbe4dgHcgHdgHegHfgHggHheOsgHi.WTfXPgHj#jRd5ygHkgxIb7QgHlgHmdhbgHnboYgHogHpgHq.HOgHrceqgHsgHtgHugHvgHwgHxgHygHzgHAgHBgHCgHDgHEgHFgHGgHH#DP#T5gHIgHJ#96gHKgHLgHMdVzfLhcglgHNgHOegZgHPgHQgHRgHSgHTa#pgHUgHVgHWgHXgHYgHZgH0#DFc#D.xU#vZ#vZ#vZ#vZ#vZ#vZ#vZ#v0#vZ#vZ#vZ#vZ.xU.xU.xU.xU.xU.xU.xU.xU#vZ#vZ#vZ.xU#Ae.xU.wc#yI#Og#yG.xU.xU#9W#vZ.xU.xU#vZ.xU.xU.xU.xU.xU.xU#vZ#vZ#vZ#vZ#vZ#vZ#vZ#vZ#vZ#vZ#vZ#vZ#9W#9W#9W#9W#vZ.xU.xU.xUboMboM#vZ#9W#9W#9W#9W#vZ#vZ#vZ#vZ#vZ#vZ#vZ#vZ#vZ#v0#vZ#vZ#vZ#vZ#vZ#vZ#vZ#vZ#vZ#vZ#vZ#vZ#vZ#vZ#vZ#vZ#v0b3DcAPfw4#yGaAF#vZ#vZ.xUboMboM#vZ.xU.xU.xU.xUboLcH2gH1gH2gH3gH4gH5gH6gH7g.IgH8gH9.OggI..N5#0GgI##0FgIafZZgaOev9aAF#yGcH2.xU.xU.xU.xU.xU#yG#yJ#v0gIbgIcgIdgIegIfgIggz7fQ2gIhgIigIjaGxbG6gIkgIleFleeRfCPgImbyb.xUboV#v0#v0.xU.xU#yG.xU#yHaO9.tA.Di.Eq.Fg#yG.xU#yG.xU.xU#v0.xUeOv#T4gIngIogIpgIqgIrgIsgItgIu", +"e17gIvgIwgIxgE.gIygIzcAy#Aa.v5bwj#RkdHzdHz#Abbm.blUbAlaq1aq1aq1aq1aq1aq1aq1aq1aq1aq1aq1aq1aq1aq1bmycc.gIAaq1aU3aq1aq1bAlblUbAlaq1#Ab#Abaq1cc.aq1aq1cc.aq1aq1cc.aq1#Ab#Abaq1aq1aq1cc.aq1aq1aq1aq1aq1aq1aq1aq1aq1aq1aq1aq1aq1aq1#AbblUbAlgIBaq1aq1aq1bm.#OfatWaq1aq1bmyaq1aq1aq1aq1bm.afTgICbt5aDqgID#AdbqFbwob5IeowbVvgIEdOxgIFc8ZbmxgIGgIHeq7b3AgIIgIJbybgIKcN7cjobwjbCzdi8gILgIMgINgIOgIPbcyd5TbVCcLgaq0fCLgIQeoAbMYgIRdi9gISgITbXreyt#Oh#Rj#AegIUgvbgBagCZgIVak#bO3gIWgIXgIYgIZgI0gI1gg3gI2dYrgI3gI4gI5bmxeOwbmygI6cjigI7aEYbydeopgI8gBdbsrgI9cAKev9gJ.#9WgJ#gCZgJae8ogJbgJcbyagzUgJdgJegD9dQRbN#bl8#AbatWatWatWatW#AbbmybAlbAlatW#Ab#AbbAlblUblUbAlbAlbAlbAlblUbAlaq1aq1#Ab#MQ#MQ#MQ#v1#yG#v1#MQblUbAlaq1#AbblUbAlcCFbm.blUbAlbAlblUbAlaq1aq1aq1aq1aq1aq1aq1aq1aq1aq1aq1cc.#Ab#Of#Of#Abaq1bAlblUbAlbAlbAlbAl#Ab#Ab#OfbAlbAl#Ab#Ab#Ab#AbbAl#Ab#AbatW#Abcc.atWatWaq1#AbatW#Ab#AbbAlbAlbAl#Ab#Ab#Ab#AbcejcCF#vV.xU#yH#MQbm.gJf#Abbm.bAlcc.aq1bAlblUbAlbAlaU3acSgJggJhcjjgzVgJicbN.9qgJjboQb#OgJkcAOgJlgJmgJnc#EeYSgJogJpgJq#Rk#RjgJrcejbAlbAlbAlbAlcejbl8#MQ#3Tba0#DFbu#gIIctegJsd78gJtcvZ#PXcJEgGQcAOgBbbm.gJu#RkgJvdOw#AbbmyevWevWevWevWbAl#Ab#KS#yI.Gc.FQ.BQcCubAl#2EbAlbm.#2E#Ab#MQbN#bAlgJwgJxgJygEKgJzgJAgIxgJB", +"gJCgJDgJEgJFb3IcAyeSTcAydogcAyetD#CkboIboI#6Z#KR.xUaiNaiNaiNaiNaiNboMboMboMaiNboMaiNaiNaiN.waboKboKb3EboIboKboKboKboM#6Z#KR.xU#CkboI.xUaiN.waboKaiN.waboMboKboKaiNbqIboIbdTboKboKboKaiN.waboKaiNaiN.waboKboM.waboMaiNboMboMaiN#6ZcjiaiNaiNaiNboMboIbqIaiN.wad3udkRboKaiNaiNboKd3u#VK#yGc7Mcjoev0#0ubCLblQbm#e5cgJveT.ahabjJgJGcPJ#DRafSgJH#6SgJIbPeboJgJJbl7fAhgJKgJLgJM.xUgI9bwjgJNgJOgJPboTcb7cPJgJQ.mNgJRcc.gJSalr#v1boWgJTblUahh.mNbssgImboKgJUgJUgJVa65bPebPebAlaAz#6ZgJWgJveVOgJXa#RgJYd8dbdTbqCgJZ#DRboNbmScjigJ0aRRaq0eT.gJ1aMggJ2b3zgJ3apgax1gJ4#AfgJ5afTbAlgJpaDwcEsaP.gJ6aU3gJ7dOx#VKb3Ec7MboMdOxbmS#yG#yG.xU#Ckb3E#VKbqIbqIb3Eb3Edf#cjiboIboI.xU.xU.xUboMaiNaiN#6ZboIboIboI#OgbCmbybaiN#6ZaiNboO#6Z#6Z#6ZboI.xU.wa.wa.xU#6ZboMaiNaiNaiNaiNaiN.waaiNalraUUaUUgJ8.waboO#6ZcjiaUUbub.wa#6ZaiN#6Zcjidi9bub.wacjibubdf#.xUcjicjiboIdf#df#cjiboIb3E#VKboIboI#CkboIboIboIcjidf#df#eCLbqI#6Z#Ck#Ck#VKboIduibycb5GdOxcjid3ub3Ecji#6ZaiNaiNaiN#6ZaiN#6ZboMboLbRmfCP#3TgJ9fXsgK.aMggBhgK#a0Zbl4ahhgKablVgKbdHzboNe1lcb8bqK#CkdOx#6QboMaiNaiNaiNaiNaiNbmSaAF#VKboO.mNalrgKc#RbgKdgs4gKegKfaAEeowgKggKhd3ub3DaRTcefgKi#yFbmSbu#aiNaiNaiNaiN#yG#T4#yGbybbyvcjp.EwetDafS#CkboI#Ck#Ck#KR#yG#yGboIf3Df0Wfk8gKjgKk#mwfx#gKl", +"gKmgKngKogKpgKqgKrgKrgKsgCsgKtgKugKvgKwgKxgKygKygKzgKwgKvgKAgKvgKzgKxgKBgKCgKDgKEgKFgKFgKAgKFgKwgKGgKHgKvgKEgKvgKIgKJgKKgKLgKygKMgKMgKNgKNgKKgKAgKFgKvgKEgKAgKOgKygKPgKygKLgKAgKEgKQgKwgKFgKAgKDgKvgKFgKHgKygKRgKEgKDgKQgKQgKAgKSgKDgCsgKTgKugKIgKUgKVgKGgKWgKXgKYgKZgK0gK1gK2gK3gK4gK5gK6gKPgKHgK7gKAgKIgK3gK3gK0gK8gK9gL.gDCgL#gLagK0gKWgK0gLbgKZgK0gKZgLcgLdgG4gLegLfgKHgLggLhgLigLjgLkgLlgLmgLngLogLpgLqgLqgLegLrgLsgLtgLugLvgLwgLxgLygLtgLzgLAgLBgLCgKHgKwgKwgKxgLDgLEgLFgKHgLGgLGgKwgLHgKFgKOgLIgLGgKxgKGgLJgKygLKgLLgLMgKHgKygLNgLcgLOgLPgLQgKwgK0gKwgLRgKQgLSgLFgLTgLNgLugLqgK5gLcgK6gLCgLUgLlgLugLkgLngLdgKPgLVgLWgK6gLngLXgLBgLYgK6gLZgLdgKGgKGgKMgKzgKCgL0gKNgKLgKxgKGgKGgLCgKLgK7gKHgKGgKMgKNgKNgKzgKMgKGgKxgLDgLNgKNgKwgKwgL0gKzgKxgKwgKwgKwgL1gKVgKzgKZgL2gL2gL3gK0gLSgL4gKZgK4gKZgKwgKxgKLgL5gL6gLigL4gL7gL6gLCgKygKPgL8gLMgLqgLBgLqgLqgLYgKGgLWgKPgKygLMgL9gLqgLXgLugLqgLnfXYgKPgLhgLMgLvgLugLkgLugLugLkgM.gL6gK5gLCgKygLGgKHgKwgKwgKNgKMgKxgKLgM#gKxgK6gLUgLYgKxgKLgLngMagLJgMbgLdgLdgLggKCgKzgKxgMcgMdgMegKPgLrgLhgMfgMfgMfgLhgLhgLhgKxgMggM#gKGgL5gKGgMhgMigMjgLDgMkgMhgMegMlgMmgLkgLDgKGgMggLdgMngKygLggMdgLhgLhgLhgLhgLZgLNgKMgLhgMogLMgCwgLZgLNgK6gLYgLZgL8gMpgMqgLggLggMfgMrgMsgMtgMugMvgMwgMx", +"gMygMzgMAgMBgMCgMDgMEgMFgMGgMHel9gMIgMJgMKgMLgMMgMNgMOgMIgMPel9eYVgMQgMRgMSgMTgMUgMVgMWgMWgMFgMXgMYgMLgMZgMEgMTeyGel9gM0gMXgMLgM1gM2gM3gM4er#gMGgM5gM6gM6gM7gM4gM8gM1gM9gN.gMGgMIgMIgN#gMHgMHgMIel9gMHgNagNbfXwgNceVPgNdgMTgNegNegNfgNggNhgNigNjgM5gM4ef9gM7gNkgNlgNmgNmgNngNfgNmgNogNpgNqgNrgNsgNtgNugNvgNwgNvgNogNxgNygNzgNAgNBgNCgNDgNpgNEgNFgNFgNGgNDgNHgNIgNJgNKgNLgM8gNMgMGgNNgNEgNOgNPgNQgNRgNSgNTgNUgNVgNWgNXgNYgNZgN0gNYgNVgN1gN2gN3gN4gN5gN6gNCgN7gN8gNagN9gO.gNsgNbgMZer#er#fXwgMGgO#gO#gOagObgOcgM9gOdgOegMMgOfgOggOhgMMgMLgOigOjgOkgNMgMHgM5gN#gNwgMJgOlgMNgOmgOngNLgNLgOogM9gNpgOpfSBgOqgOrgOsdZKgOtgOugOvgOwgOxgOygOzgOAgNHgMMgOBgOhgOCgODgOEgNzgOjgOFgMOgOGgM4gN8gOlgM4gNugOjgOlgOHgOIgNMgM0gMZgNNgNagOJgMKgOler#gMJgOKer#eYVeYVgNugNugOkgNMgM7gOLgNkdDHdDHgOMgNmgOLgONgNdgNfgOOgOPfXwgM4ef9gOQgNogORgNmdFwgOSgOTgOUgOugOVgOWgOXgOYgOWgOAgOZgO0gO1gNqgO2gO3gO4gOWgO5gOWgO6gNHgO.gO7gO8gO9gNIgNRgNPgOXgNPgNpgNpgNDgP.gN.gP#gO#gPagMTgMHgMZgNagMNgPbgPcgNbgPdgPegNBgPfgOhgPggMMgNCgPdgNCgMLgM8gMLgMMgNHgPhgPhgPhgNsgNsgNsgNsgNHcN0cN0gOfgOfcN0gPigPjgPjgPjgPigPigPjgPjgPjgPjgPjgPjgPjgNHgPjgPigNsgNHgPigPigPjgPjgPjgPjgPjgPjgPjgNHgMMgPkgNPgO6gO0gMMgOhgOggOggM1gPlgNIgPmgPngPngPogPpgPqgPrgPsdUAgPtgPu", +".oSgPvgPwdaqgPxgPygPzgPAeh#gPBcMIgPAgPCgPDgPEgPFgPGetJgPHf6WgPIgPJgPKgPLgPCgPzgPMfMjf9afMjf9af6afyCcc#gPNgPAfMjf9agPIgPCf6acc#gPOgPPgPQgPRg#ygPCgPJgPAgPAgPCel8gPFgPSgPTgPUf6VgPAgPAgPVetJgPWgPAgPAeh#gPQgPFgPXcMIgPYgPYcURfMjfMjf9#gPZgP0gP1gP2gPAf6af6aeh#gP3gPycY2cY2gPygPYc0zgP4gP5gP6bsxgPSgPGgP7gPRgPWfJygP8gPRgP9er.gQ.gQ#cgZcgZcgZgQagQ.fVmgQbgQcgQdgP6gQegQegQfgQggQhgQigQjeyFgQkfVmgQagQlgQmgQngQogQogQpgQpgQogQqgQogQngQrgQegQsgQsgQqgQtcelgPRgPIgQuf9agPCfVmgPDgPRgPMfMjgP3gP2gQvfDGgP1gQwcY2gPAgPNgPG#OagPQgQxgPXcelcc#gPEgPRgPIfMjfPqgP2gPZfGzgPZcAUf9#f6agPQgQygQfgP6gQggPReh#gQzgP8gPRgQAgPXgPNgP9gP9gP9gPGgPDgPDgPRgQkgPRgPRgQkf6agPNf6af9adGGgQBgQCgQDgQEg#wfPpgQFgP3fPpcAUcAUgQwgQCgQGgQHgQCgPZcY2cY2gPyeBzgP2cAUgP3f9#gP2f9#cAUf9#gPZgQIfGzgQHgQJgQKgQLgQLgQMgQNgQOgQPgQQgQRgQCcAUf9#gPNgPRgPWgQDgP1gQvcAUf9af6agQkgP9gPDgQkgQkgQSgPXgQkgPQgPDgQT#91gQmgPPgP4gQkgQUgPDgP7gPX#RdgQVgQmgQTgQWeh#gQUgP8gPWetJetJgQAgQXcY2gQwgQYgQYfGAgPAgQZgPKgQ0gQ.gQcgQ1fPvgPFgQ2cc#cc#cc#cc#cc#cc#cc#gQ2#Rdcc#gQygQycc#cc#gQygQygQygQygQafyCeA0gQ#gQTgQ3gPSgQ3gQ3gQ3gPSgPSgQ3gQ3gQ3gQ3gQ3gQ3gQ3gQ3gQ3gPSgPSgQ3gPSgPSgQ3gQ3gQ3gQ3gQ3gQ3gQ3gQ3celcgZgQ#gQ#eoDfyCgPEcelcelgQ3gQ4bsxgQtgQ5#91gQ6gQ7gQ8gQ9gQtgR.gR#gRa"}; diff -Nru calligra-2.3.86/krita/image/brushengine/kis_paint_information.cc calligra-2.3.87/krita/image/brushengine/kis_paint_information.cc --- calligra-2.3.86/krita/image/brushengine/kis_paint_information.cc 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/krita/image/brushengine/kis_paint_information.cc 2012-01-28 07:04:48.000000000 +0000 @@ -211,20 +211,20 @@ qreal KisPaintInformation::declination(const KisPaintInformation& info, qreal maxTiltX, qreal maxTiltY, bool normalize) { - qreal xTilt = qBound(-1.0, info.xTilt() / maxTiltX , 1.0); - qreal yTilt = qBound(-1.0, info.yTilt() / maxTiltY , 1.0); + qreal xTilt = qBound(qreal(-1.0), info.xTilt() / maxTiltX , qreal(1.0)); + qreal yTilt = qBound(qreal(-1.0), info.yTilt() / maxTiltY , qreal(1.0)); qreal e; if (fabs(xTilt) > fabs(yTilt)) { - e = sqrt(1.0 + yTilt*yTilt); + e = sqrt(qreal(1.0) + yTilt*yTilt); } else { - e = sqrt(1.0 + xTilt*xTilt); + e = sqrt(qreal(1.0) + xTilt*xTilt); } qreal cosAlpha = sqrt(xTilt*xTilt + yTilt*yTilt)/e; qreal declination = acos(cosAlpha); // in radians in [0, 0.5 * PI] // mapping to 0.0..1.0 if normalize is true - return normalize ? (declination / (M_PI * 0.5)) : declination; + return normalize ? (declination / (M_PI * qreal(0.5))) : declination; } diff -Nru calligra-2.3.86/krita/image/CMakeLists.txt calligra-2.3.87/krita/image/CMakeLists.txt --- calligra-2.3.86/krita/image/CMakeLists.txt 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/krita/image/CMakeLists.txt 2012-01-28 07:04:48.000000000 +0000 @@ -156,6 +156,7 @@ kis_circle_mask_generator.cpp kis_gauss_circle_mask_generator.cpp kis_gauss_rect_mask_generator.cpp + kis_gtl_lock.cpp kis_curve_circle_mask_generator.cpp kis_curve_rect_mask_generator.cpp kis_math_toolbox.cpp diff -Nru calligra-2.3.86/krita/image/filter/kis_filter.cc calligra-2.3.87/krita/image/filter/kis_filter.cc --- calligra-2.3.86/krita/image/filter/kis_filter.cc 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/krita/image/filter/kis_filter.cc 2012-01-28 07:04:48.000000000 +0000 @@ -23,6 +23,7 @@ #include "kis_bookmarked_configuration_manager.h" #include "filter/kis_filter_configuration.h" #include "kis_processing_information.h" +#include "kis_transaction.h" #include "kis_paint_device.h" #include "kis_selection.h" #include "kis_types.h" @@ -103,6 +104,8 @@ QRect nR = neededRect(applyRect, config); // Create a temporary device that will be filtered, sharing the source data KisPaintDeviceSP temporary; + KisTransaction *transaction = 0; + if(src == dst && sel == 0) { temporary = src; @@ -110,12 +113,15 @@ else { temporary = new KisPaintDevice(src->colorSpace()); temporary->makeCloneFromRough(src, nR); + transaction = new KisTransaction("", temporary); } // Filter process(temporary, applyRect, config, progressUpdater); + // Copy on destination, respecting the selection if(temporary != src) { + delete transaction; KisPainter p(dst); p.setSelection(sel); p.bitBlt(applyRect.topLeft(), temporary, applyRect); diff -Nru calligra-2.3.86/krita/image/kis_async_merger.cpp calligra-2.3.87/krita/image/kis_async_merger.cpp --- calligra-2.3.86/krita/image/kis_async_merger.cpp 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/krita/image/kis_async_merger.cpp 2012-01-28 07:04:48.000000000 +0000 @@ -38,7 +38,6 @@ #include "filter/kis_filter_configuration.h" #include "filter/kis_filter_registry.h" #include "kis_selection.h" -#include "kis_transaction.h" #include "kis_clone_layer.h" #include "kis_processing_information.h" #include "kis_node_progress_proxy.h" diff -Nru calligra-2.3.86/krita/image/kis_gtl_lock.cpp calligra-2.3.87/krita/image/kis_gtl_lock.cpp --- calligra-2.3.86/krita/image/kis_gtl_lock.cpp 1970-01-01 00:00:00.000000000 +0000 +++ calligra-2.3.87/krita/image/kis_gtl_lock.cpp 2012-01-28 07:04:48.000000000 +0000 @@ -0,0 +1,33 @@ +/* + * Copyright (c) 2012 Cyrille Berger + * + * This program is free software; you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation; either version 2 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program; if not, write to the Free Software + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. + */ + +#include "kis_gtl_lock.h" + +#include + +QMutex gtlMutex; + +void KisGtlLock::lock() +{ + gtlMutex.lock(); +} + +void KisGtlLock::unlock() +{ + gtlMutex.unlock(); +} diff -Nru calligra-2.3.86/krita/image/kis_gtl_lock.h calligra-2.3.87/krita/image/kis_gtl_lock.h --- calligra-2.3.86/krita/image/kis_gtl_lock.h 1970-01-01 00:00:00.000000000 +0000 +++ calligra-2.3.87/krita/image/kis_gtl_lock.h 2012-01-28 07:04:48.000000000 +0000 @@ -0,0 +1,42 @@ +/* + * Copyright (c) 2012 Cyrille Berger + * + * This program is free software; you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation; either version 2 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program; if not, write to the Free Software + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. + */ + +#ifndef _KIS_GTL_LOCK_H_ +#define _KIS_GTL_LOCK_H_ + +#include + +class KRITAIMAGE_EXPORT KisGtlLock +{ +public: + static void lock(); + static void unlock(); +}; + +class KisGtlLocker +{ +public: + KisGtlLocker() { + KisGtlLock::lock(); + } + ~KisGtlLocker() { + KisGtlLock::unlock(); + } +}; + +#endif diff -Nru calligra-2.3.86/krita/image/kis_image.cc calligra-2.3.87/krita/image/kis_image.cc --- calligra-2.3.86/krita/image/kis_image.cc 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/krita/image/kis_image.cc 2012-01-28 07:04:48.000000000 +0000 @@ -193,15 +193,15 @@ m_d->signalRouter->emitNodeHasBeenRemoved(parent, index); } -void KisImage::aboutToMoveNode(KisNode *parent, int oldIndex, int newIndex) +void KisImage::aboutToMoveNode(KisNode *node, int oldIndex, int newIndex) { SANITY_CHECK_LOCKED("aboutToMoveNode"); - m_d->signalRouter->emitAboutToMoveNode(parent, oldIndex, newIndex); + m_d->signalRouter->emitAboutToMoveNode(node, oldIndex, newIndex); } -void KisImage::nodeHasBeenMoved(KisNode *parent, int oldIndex, int newIndex) +void KisImage::nodeHasBeenMoved(KisNode *node, int oldIndex, int newIndex) { - m_d->signalRouter->emitNodeHasBeenMoved(parent, oldIndex, newIndex); + m_d->signalRouter->emitNodeHasBeenMoved(node, oldIndex, newIndex); } void KisImage::nodeChanged(KisNode* node) diff -Nru calligra-2.3.86/krita/image/kis_image.h calligra-2.3.87/krita/image/kis_image.h --- calligra-2.3.86/krita/image/kis_image.h 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/krita/image/kis_image.h 2012-01-28 07:04:48.000000000 +0000 @@ -86,8 +86,8 @@ void nodeHasBeenAdded(KisNode *parent, int index); void aboutToRemoveANode(KisNode *parent, int index); void nodeHasBeenRemoved(KisNode *parent, int index); - void aboutToMoveNode(KisNode * parent, int oldIndex, int newIndex); - void nodeHasBeenMoved(KisNode * parent, int oldIndex, int newIndex); + void aboutToMoveNode(KisNode * node, int oldIndex, int newIndex); + void nodeHasBeenMoved(KisNode * node, int oldIndex, int newIndex); void nodeChanged(KisNode * node); void requestProjectionUpdate(KisNode *node, const QRect& rect); @@ -540,12 +540,12 @@ /** * Inform the model we're about to move a layer. */ - void sigAboutToMoveNode(KisNode *parent, int oldIndex, int newIndex); + void sigAboutToMoveNode(KisNode *node, int oldIndex, int newIndex); /** * Inform the model we're done moving a layer. */ - void sigNodeHasBeenMoved(KisNode *parent, int oldIndex, int newIndex); + void sigNodeHasBeenMoved(KisNode *node, int oldIndex, int newIndex); /** * Inform the model that a node was changed @@ -557,6 +557,12 @@ */ void sigAboutToBeDeleted(); + void sigNodeAddedAsync(KisNodeSP node); + void sigNodeMovedAsync(KisNodeSP node); + void sigRemoveNodeAsync(KisNodeSP node); + void sigLayersChangedAsync(); + + public slots: KisCompositeProgressProxy* compositeProgressProxy(); diff -Nru calligra-2.3.86/krita/image/kis_image_signal_router.cpp calligra-2.3.87/krita/image/kis_image_signal_router.cpp --- calligra-2.3.86/krita/image/kis_image_signal_router.cpp 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/krita/image/kis_image_signal_router.cpp 2012-01-28 07:04:48.000000000 +0000 @@ -67,6 +67,11 @@ CONNECT_TO_IMAGE(sigNodeHasBeenRemoved(KisNode*, int)); CONNECT_TO_IMAGE(sigAboutToMoveNode(KisNode*, int, int)); CONNECT_TO_IMAGE(sigNodeHasBeenMoved(KisNode*, int, int)); + + CONNECT_TO_IMAGE(sigNodeAddedAsync(KisNodeSP)); + CONNECT_TO_IMAGE(sigNodeMovedAsync(KisNodeSP)); + CONNECT_TO_IMAGE(sigRemoveNodeAsync(KisNodeSP)); + CONNECT_TO_IMAGE(sigLayersChangedAsync()); } KisImageSignalRouter::~KisImageSignalRouter() @@ -120,12 +125,14 @@ { // see comment in emitAboutToAddANode() EMIT_DIRECT_ASSERT_SAME_THREAD(sigNodeHasBeenAdded(parent, index)); + emit sigNodeAddedAsync(parent->at(index)); } void KisImageSignalRouter::emitAboutToRemoveANode(KisNode *parent, int index) { // see comment in emitAboutToAddANode() EMIT_DIRECT_ASSERT_SAME_THREAD(sigAboutToRemoveANode(parent, index)); + emit sigRemoveNodeAsync(parent->at(index)); } void KisImageSignalRouter::emitNodeHasBeenRemoved(KisNode *parent, int index) @@ -134,16 +141,17 @@ EMIT_DIRECT_ASSERT_SAME_THREAD(sigNodeHasBeenRemoved(parent, index)); } -void KisImageSignalRouter::emitAboutToMoveNode(KisNode *parent, int oldIndex, int newIndex) +void KisImageSignalRouter::emitAboutToMoveNode(KisNode *node, int oldIndex, int newIndex) { // see comment in emitAboutToAddANode() - EMIT_DIRECT_ASSERT_SAME_THREAD(sigAboutToMoveNode(parent, oldIndex, newIndex)); + EMIT_DIRECT_ASSERT_SAME_THREAD(sigAboutToMoveNode(node, oldIndex, newIndex)); } -void KisImageSignalRouter::emitNodeHasBeenMoved(KisNode *parent, int oldIndex, int newIndex) +void KisImageSignalRouter::emitNodeHasBeenMoved(KisNode *node, int oldIndex, int newIndex) { // see comment in emitAboutToAddANode() - EMIT_DIRECT_ASSERT_SAME_THREAD(sigNodeHasBeenMoved(parent, oldIndex, newIndex)); + EMIT_DIRECT_ASSERT_SAME_THREAD(sigNodeHasBeenMoved(node, oldIndex, newIndex)); + emit sigNodeMovedAsync(node); } @@ -151,6 +159,7 @@ { switch(type) { case LayersChangedSignal: + emit sigLayersChangedAsync(); emit sigLayersChanged(m_image->rootLayer()); emit sigPostLayersChanged(m_image->rootLayer()); break; diff -Nru calligra-2.3.86/krita/image/kis_image_signal_router.h calligra-2.3.87/krita/image/kis_image_signal_router.h --- calligra-2.3.86/krita/image/kis_image_signal_router.h 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/krita/image/kis_image_signal_router.h 2012-01-28 07:04:48.000000000 +0000 @@ -56,8 +56,8 @@ void emitNodeHasBeenAdded(KisNode *parent, int index); void emitAboutToRemoveANode(KisNode *parent, int index); void emitNodeHasBeenRemoved(KisNode *parent, int index); - void emitAboutToMoveNode(KisNode *parent, int oldIndex, int newIndex); - void emitNodeHasBeenMoved(KisNode *parent, int oldIndex, int newIndex); + void emitAboutToMoveNode(KisNode *node, int oldIndex, int newIndex); + void emitNodeHasBeenMoved(KisNode *node, int oldIndex, int newIndex); private: bool checkSameThread(); @@ -89,6 +89,12 @@ void sigAboutToMoveNode(KisNode *parent, int oldIndex, int newIndex); void sigNodeHasBeenMoved(KisNode *parent, int oldIndex, int newIndex); + // Asynchronous + void sigNodeAddedAsync(KisNodeSP node); + void sigNodeMovedAsync(KisNodeSP node); + void sigRemoveNodeAsync(KisNodeSP node); + void sigLayersChangedAsync(); + private: KisImageWSP m_image; }; diff -Nru calligra-2.3.86/krita/image/kis_node_graph_listener.h calligra-2.3.87/krita/image/kis_node_graph_listener.h --- calligra-2.3.86/krita/image/kis_node_graph_listener.h 2012-01-07 03:25:01.000000000 +0000 +++ calligra-2.3.87/krita/image/kis_node_graph_listener.h 2012-01-28 07:04:48.000000000 +0000 @@ -62,13 +62,13 @@ * Inform the model we're about to start moving a node (which * includes removing and adding the same node) */ - virtual void aboutToMoveNode(KisNode * parent, int oldIndex, int newIndex) = 0; + virtual void aboutToMoveNode(KisNode * node, int oldIndex, int newIndex) = 0; /** * Inform the model we're done moving the node: it has been * removed and added successfully */ - virtual void nodeHasBeenMoved(KisNode * parent, int oldIndex, int newIndex) = 0; + virtual void nodeHasBeenMoved(KisNode * node, int oldIndex, int newIndex) = 0; virtual void nodeChanged(KisNode * node) = 0; diff -Nru calligra-2.3.86/krita/kritapart.desktop calligra-2.3.87/krita/kritapart.desktop --- calligra-2.3.86/krita/kritapart.desktop 2012-01-07 03:25:02.000000000 +0000 +++ calligra-2.3.87/krita/kritapart.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -2,6 +2,7 @@ Name=Calligra Painting and Image Editor Component Name[bg]=Компонент за рисуване и редактиране на изображения в Calligra Name[ca]=Component de dibuix i manipulació d'imatges del Calligra +Name[ca@valencia]=Component de dibuix i manipulació d'imatges del Calligra Name[cs]=Komponenta Calligra pro malování a úpravu fotografií Name[da]=Calligra-komponent til tegning og billedredigeringskomponent Name[de]=Calligra-Komponente für Malen und Bildbearbeitung diff -Nru calligra-2.3.86/krita/plugins/assistants/RulerAssistant/Ellipse.cc calligra-2.3.87/krita/plugins/assistants/RulerAssistant/Ellipse.cc --- calligra-2.3.86/krita/plugins/assistants/RulerAssistant/Ellipse.cc 2012-01-07 03:25:02.000000000 +0000 +++ calligra-2.3.87/krita/plugins/assistants/RulerAssistant/Ellipse.cc 2012-01-28 07:04:48.000000000 +0000 @@ -72,7 +72,6 @@ QRectF Ellipse::boundingRect() const { - const QPointF centre = (p1 + p2) * 0.5; const QPointF d = rotate90((p2 - p1) * 0.5 * b / a); const QPointF pts[4] = { p1 + d, diff -Nru calligra-2.3.86/krita/plugins/colorspaces/ctlcs/CMakeLists.txt calligra-2.3.87/krita/plugins/colorspaces/ctlcs/CMakeLists.txt --- calligra-2.3.86/krita/plugins/colorspaces/ctlcs/CMakeLists.txt 2012-01-07 03:25:02.000000000 +0000 +++ calligra-2.3.87/krita/plugins/colorspaces/ctlcs/CMakeLists.txt 2012-01-28 07:04:48.000000000 +0000 @@ -8,16 +8,8 @@ add_subdirectory(ctlcompositeops) add_subdirectory(ctlcolortransformations) -if(HAVE_OPENCTL_913) - set( BUFFER_SRCS - KoCtlBuffer13.cpp ) -else(HAVE_OPENCTL_913) - set( BUFFER_SRCS - KoCtlBuffer12.cpp ) -endif(HAVE_OPENCTL_913) - set( CTLCS_SRCS - ${BUFFER_SRCS} + KoCtlBuffer.cpp KoCtlAccumulator.cpp KoCtlChannel.cpp KoCtlMixColorsOp.cpp @@ -38,7 +30,7 @@ kde4_add_plugin(krita_ctlcs_plugin ${CTLCS_SRCS}) -target_link_libraries(krita_ctlcs_plugin pigmentcms ${KDE4_KPARTS_LIBS} ${OPENEXR_LIBRARIES} ${OPENCTL_LDFLAGS}) +target_link_libraries(krita_ctlcs_plugin pigmentcms ${KDE4_KPARTS_LIBS} ${OPENEXR_LIBRARIES} ${OPENCTL_LDFLAGS} kritaimage) install(TARGETS krita_ctlcs_plugin DESTINATION ${PLUGIN_INSTALL_DIR}) diff -Nru calligra-2.3.86/krita/plugins/colorspaces/ctlcs/KoCtlBuffer12.cpp calligra-2.3.87/krita/plugins/colorspaces/ctlcs/KoCtlBuffer12.cpp --- calligra-2.3.86/krita/plugins/colorspaces/ctlcs/KoCtlBuffer12.cpp 2012-01-07 03:25:02.000000000 +0000 +++ calligra-2.3.87/krita/plugins/colorspaces/ctlcs/KoCtlBuffer12.cpp 1970-01-01 00:00:00.000000000 +0000 @@ -1,38 +0,0 @@ -/* - * Copyright (c) 2008 Cyrille Berger - * - * This library is free software; you can redistribute it and/or - * modify it under the terms of the GNU Lesser General Public - * License as published by the Free Software Foundation; either - * version 2 of the License, or (at your option) any later version. - * - * This library is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - * Lesser General Public License for more details. - * - * You should have received a copy of the GNU Lesser General Public License - * along with this library; see the file COPYING.LIB. If not, write to - * the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, - * Boston, MA 02110-1301, USA. -*/ - -#include "KoCtlBuffer.h" - -KoCtlBuffer::KoCtlBuffer(char* _buffer, int _size) : m_buffer(_buffer), m_size(_size) -{ -} -KoCtlBuffer::~KoCtlBuffer() {} -char * KoCtlBuffer::rawData() -{ - return m_buffer; -} -const char * KoCtlBuffer::rawData() const -{ - return m_buffer; -} -int KoCtlBuffer::size() const -{ - return m_size; -} - diff -Nru calligra-2.3.86/krita/plugins/colorspaces/ctlcs/KoCtlBuffer12.h calligra-2.3.87/krita/plugins/colorspaces/ctlcs/KoCtlBuffer12.h --- calligra-2.3.86/krita/plugins/colorspaces/ctlcs/KoCtlBuffer12.h 2012-01-07 03:25:02.000000000 +0000 +++ calligra-2.3.87/krita/plugins/colorspaces/ctlcs/KoCtlBuffer12.h 1970-01-01 00:00:00.000000000 +0000 @@ -1,38 +0,0 @@ -/* - * Copyright (c) 2008 Cyrille Berger - * - * This library is free software; you can redistribute it and/or - * modify it under the terms of the GNU Lesser General Public - * License as published by the Free Software Foundation; either - * version 2 of the License, or (at your option) any later version. - * - * This library is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - * Lesser General Public License for more details. - * - * You should have received a copy of the GNU Lesser General Public License - * along with this library; see the file COPYING.LIB. If not, write to - * the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, - * Boston, MA 02110-1301, USA. -*/ - -#ifndef _KO_CTL_BUFFER_H_ -#define _KO_CTL_BUFFER_H_ - -#include - -class KoCtlBuffer : public GTLCore::Buffer -{ -public: - KoCtlBuffer(char* _buffer, int _size); - virtual ~KoCtlBuffer(); - virtual char * rawData(); - virtual const char * rawData() const; - virtual int size() const; -private: - char * m_buffer; - int m_size; -}; - -#endif diff -Nru calligra-2.3.86/krita/plugins/colorspaces/ctlcs/KoCtlBuffer13.cpp calligra-2.3.87/krita/plugins/colorspaces/ctlcs/KoCtlBuffer13.cpp --- calligra-2.3.86/krita/plugins/colorspaces/ctlcs/KoCtlBuffer13.cpp 2012-01-07 03:25:02.000000000 +0000 +++ calligra-2.3.87/krita/plugins/colorspaces/ctlcs/KoCtlBuffer13.cpp 1970-01-01 00:00:00.000000000 +0000 @@ -1,27 +0,0 @@ -/* - * Copyright (c) 2008 Cyrille Berger - * - * This library is free software; you can redistribute it and/or - * modify it under the terms of the GNU Lesser General Public - * License as published by the Free Software Foundation; either - * version 2 of the License, or (at your option) any later version. - * - * This library is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - * Lesser General Public License for more details. - * - * You should have received a copy of the GNU Lesser General Public License - * along with this library; see the file COPYING.LIB. If not, write to - * the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, - * Boston, MA 02110-1301, USA. -*/ - -#include "KoCtlBuffer.h" - -KoCtlBuffer::KoCtlBuffer(char* _buffer, int _size) -{ - setRawData(_buffer, _size); -} - -KoCtlBuffer::~KoCtlBuffer() {} diff -Nru calligra-2.3.86/krita/plugins/colorspaces/ctlcs/KoCtlBuffer13.h calligra-2.3.87/krita/plugins/colorspaces/ctlcs/KoCtlBuffer13.h --- calligra-2.3.86/krita/plugins/colorspaces/ctlcs/KoCtlBuffer13.h 2012-01-07 03:25:02.000000000 +0000 +++ calligra-2.3.87/krita/plugins/colorspaces/ctlcs/KoCtlBuffer13.h 1970-01-01 00:00:00.000000000 +0000 @@ -1,32 +0,0 @@ -/* - * Copyright (c) 2008 Cyrille Berger - * - * This library is free software; you can redistribute it and/or - * modify it under the terms of the GNU Lesser General Public - * License as published by the Free Software Foundation; either - * version 2 of the License, or (at your option) any later version. - * - * This library is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - * Lesser General Public License for more details. - * - * You should have received a copy of the GNU Lesser General Public License - * along with this library; see the file COPYING.LIB. If not, write to - * the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, - * Boston, MA 02110-1301, USA. -*/ - -#ifndef _KO_CTL_BUFFER_H_ -#define _KO_CTL_BUFFER_H_ - -#include - -class KoCtlBuffer : public GTLCore::Buffer -{ -public: - KoCtlBuffer(char* _buffer, int _size); - ~KoCtlBuffer(); -}; - -#endif diff -Nru calligra-2.3.86/krita/plugins/colorspaces/ctlcs/KoCtlBuffer.cpp calligra-2.3.87/krita/plugins/colorspaces/ctlcs/KoCtlBuffer.cpp --- calligra-2.3.86/krita/plugins/colorspaces/ctlcs/KoCtlBuffer.cpp 1970-01-01 00:00:00.000000000 +0000 +++ calligra-2.3.87/krita/plugins/colorspaces/ctlcs/KoCtlBuffer.cpp 2012-01-28 07:04:48.000000000 +0000 @@ -0,0 +1,27 @@ +/* + * Copyright (c) 2008 Cyrille Berger + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License as published by the Free Software Foundation; either + * version 2 of the License, or (at your option) any later version. + * + * This library is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + * Lesser General Public License for more details. + * + * You should have received a copy of the GNU Lesser General Public License + * along with this library; see the file COPYING.LIB. If not, write to + * the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, + * Boston, MA 02110-1301, USA. +*/ + +#include "KoCtlBuffer.h" + +KoCtlBuffer::KoCtlBuffer(char* _buffer, int _size) +{ + setRawData(_buffer, _size); +} + +KoCtlBuffer::~KoCtlBuffer() {} diff -Nru calligra-2.3.86/krita/plugins/colorspaces/ctlcs/KoCtlBuffer.h calligra-2.3.87/krita/plugins/colorspaces/ctlcs/KoCtlBuffer.h --- calligra-2.3.86/krita/plugins/colorspaces/ctlcs/KoCtlBuffer.h 2012-01-07 03:25:02.000000000 +0000 +++ calligra-2.3.87/krita/plugins/colorspaces/ctlcs/KoCtlBuffer.h 2012-01-28 07:04:48.000000000 +0000 @@ -17,10 +17,16 @@ * Boston, MA 02110-1301, USA. */ -#include "OpenCTL/Version.h" +#ifndef _KO_CTL_BUFFER_H_ +#define _KO_CTL_BUFFER_H_ + +#include + +class KoCtlBuffer : public GTLCore::Buffer +{ +public: + KoCtlBuffer(char* _buffer, int _size); + ~KoCtlBuffer(); +}; -#if OPENCTL_VERSION_MAJOR == 0 && OPENCTL_VERSION_MINOR == 9 && OPENCTL_VERSION_REVISION < 13 -#include "KoCtlBuffer12.h" -#else -#include "KoCtlBuffer13.h" #endif diff -Nru calligra-2.3.86/krita/plugins/colorspaces/ctlcs/KoCtlColorConversionTransformation.cpp calligra-2.3.87/krita/plugins/colorspaces/ctlcs/KoCtlColorConversionTransformation.cpp --- calligra-2.3.86/krita/plugins/colorspaces/ctlcs/KoCtlColorConversionTransformation.cpp 2012-01-07 03:25:02.000000000 +0000 +++ calligra-2.3.87/krita/plugins/colorspaces/ctlcs/KoCtlColorConversionTransformation.cpp 2012-01-28 07:04:48.000000000 +0000 @@ -29,6 +29,7 @@ #include "KoCtlBuffer.h" #include +#include struct KoCtlColorConversionTransformation::Private { OpenCTL::Program* program; @@ -58,6 +59,8 @@ void KoCtlColorConversionTransformation::transform(const quint8 *src8, quint8 *dst8, qint32 nPixels) const { + KisGtlLock::lock(); + dbgPigment << "Transformation from " << srcColorSpace()->id() << " " << srcColorSpace()->profile()->name() << " to " << dstColorSpace()->id() << " " << dstColorSpace()->profile()->name(); KoCtlBuffer src(reinterpret_cast(const_cast(src8)), nPixels * srcColorSpace()->pixelSize()); KoCtlBuffer dst(reinterpret_cast(dst8), nPixels * dstColorSpace()->pixelSize()); @@ -77,6 +80,8 @@ } } d->program->apply(src, dst); + + KisGtlLock::unlock(); } struct KoCtlColorConversionTransformationFactory::Private { diff -Nru calligra-2.3.86/krita/plugins/colorspaces/ctlcs/KoCtlColorProfile.cpp calligra-2.3.87/krita/plugins/colorspaces/ctlcs/KoCtlColorProfile.cpp --- calligra-2.3.86/krita/plugins/colorspaces/ctlcs/KoCtlColorProfile.cpp 2012-01-07 03:25:02.000000000 +0000 +++ calligra-2.3.87/krita/plugins/colorspaces/ctlcs/KoCtlColorProfile.cpp 2012-01-28 07:04:48.000000000 +0000 @@ -53,6 +53,7 @@ #include "KoCtlUtils.h" #include "kis_debug.h" +#include struct ConversionInfo { QString sourceColorModelID; @@ -142,6 +143,7 @@ OpenCTL::Program* KoCtlColorProfile::createColorConversionProgram(const KoColorSpace* _srcCs, const KoColorSpace* _dstCs) const { + KisGtlLocker gtlLocker; QString srcModelId = _srcCs->colorModelId().id(); QString srcDepthId = _srcCs->colorDepthId().id(); QString dstModelId = _dstCs->colorModelId().id(); diff -Nru calligra-2.3.86/krita/plugins/colorspaces/ctlcs/KoCtlColorTransformationFactory.cpp calligra-2.3.87/krita/plugins/colorspaces/ctlcs/KoCtlColorTransformationFactory.cpp --- calligra-2.3.86/krita/plugins/colorspaces/ctlcs/KoCtlColorTransformationFactory.cpp 2012-01-07 03:25:02.000000000 +0000 +++ calligra-2.3.87/krita/plugins/colorspaces/ctlcs/KoCtlColorTransformationFactory.cpp 2012-01-28 07:04:48.000000000 +0000 @@ -37,6 +37,7 @@ #include #include #include +#include class KoCtlColorTransformation : public KoColorTransformation { @@ -54,6 +55,7 @@ public: void transform(const quint8 *srcU8, quint8 *dstU8, qint32 numColumns) const { + KisGtlLocker gtlLocker; KoCtlBuffer src(reinterpret_cast(const_cast(srcU8)), numColumns * m_colorSpace->pixelSize()); KoCtlBuffer dst(reinterpret_cast(dstU8), numColumns * m_colorSpace->pixelSize()); std::list< GTLCore::Buffer* > ops; diff -Nru calligra-2.3.86/krita/plugins/colorspaces/ctlcs/KoCtlCompositeOp.cpp calligra-2.3.87/krita/plugins/colorspaces/ctlcs/KoCtlCompositeOp.cpp --- calligra-2.3.86/krita/plugins/colorspaces/ctlcs/KoCtlCompositeOp.cpp 2012-01-07 03:25:02.000000000 +0000 +++ calligra-2.3.87/krita/plugins/colorspaces/ctlcs/KoCtlCompositeOp.cpp 2012-01-28 07:04:48.000000000 +0000 @@ -35,6 +35,7 @@ #include #include #include +#include KoCTLCompositeOp::KoCTLCompositeOp(OpenCTL::Template* _template, const KoCtlColorSpace * cs, const GTLCore::PixelDescription& _pd) : KoCompositeOp(cs, @@ -44,6 +45,7 @@ , m_withMaskProgram(0) , m_withoutMaskProgram(0) { + KisGtlLocker gtlLocker; QMutexLocker lock(ctlMutex); OpenCTL::Module* module = _template->generateModule(_pd); module->compile(); @@ -85,6 +87,7 @@ quint8 opacity, const QBitArray & channelFlags) const { + KisGtlLocker gtlLocker; Q_UNUSED(channelFlags); #ifdef __GNUC__ #warning "Use channel flags, especially for alpha locking!" diff -Nru calligra-2.3.86/krita/plugins/extensions/dockers/advancedcolorselector/kis_color_selector_container.cpp calligra-2.3.87/krita/plugins/extensions/dockers/advancedcolorselector/kis_color_selector_container.cpp --- calligra-2.3.86/krita/plugins/extensions/dockers/advancedcolorselector/kis_color_selector_container.cpp 2012-01-07 03:25:02.000000000 +0000 +++ calligra-2.3.87/krita/plugins/extensions/dockers/advancedcolorselector/kis_color_selector_container.cpp 2012-01-28 07:04:48.000000000 +0000 @@ -105,21 +105,21 @@ if (!m_colorSelAction != 0) { m_colorSelAction = new KAction("Show color selector", this); - m_colorSelAction->setShortcut(QKeySequence(tr("S"))); + m_colorSelAction->setShortcut(Qt::Key_I); connect(m_colorSelAction, SIGNAL(triggered()), m_colorSelector, SLOT(showPopup()), Qt::UniqueConnection); } actionCollection->addAction("show_color_selector", m_colorSelAction); if (!m_mypaintAction) { m_mypaintAction = new KAction("Show MyPaint shade selector", this); - m_mypaintAction->setShortcut(QKeySequence(tr("M"))); + m_mypaintAction->setShortcut(Qt::Key_M); connect(m_mypaintAction, SIGNAL(triggered()), m_myPaintShadeSelector, SLOT(showPopup()), Qt::UniqueConnection); } actionCollection->addAction("show_mypaint_shade_selector", m_mypaintAction); if (!m_minimalAction) { m_minimalAction = new KAction("Show minimal shade selector", this); - m_minimalAction->setShortcut(QKeySequence(tr("N"))); + m_minimalAction->setShortcut(Qt::Key_N); connect(m_minimalAction, SIGNAL(triggered()), m_minimalShadeSelector, SLOT(showPopup()), Qt::UniqueConnection); } actionCollection->addAction("show_minimal_shade_selector", m_minimalAction); diff -Nru calligra-2.3.86/krita/plugins/extensions/dockers/artisticcolorselector/krita_artisticcolorselector.desktop calligra-2.3.87/krita/plugins/extensions/dockers/artisticcolorselector/krita_artisticcolorselector.desktop --- calligra-2.3.86/krita/plugins/extensions/dockers/artisticcolorselector/krita_artisticcolorselector.desktop 2012-01-07 03:25:02.000000000 +0000 +++ calligra-2.3.87/krita/plugins/extensions/dockers/artisticcolorselector/krita_artisticcolorselector.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -1,11 +1,14 @@ [Desktop Entry] Name=Artistic color selector Name[ca]=Selector artístic de color +Name[ca@valencia]=Selector artístic de color Name[da]=Kunstnerisk farvevælger Name[es]=Selector de color artístico +Name[et]=Kunstniku värvivalija Name[it]=Selettore colore artistico Name[nb]=Artistisk Fargevelger Name[nds]=Smuck Klöörköör +Name[pl]=Artystyczne wybieranie kolorów Name[pt]=Selector de cores artísticas Name[pt_BR]=Seletor de cores artísticas Name[ru]=Художественный выбор цвета diff -Nru calligra-2.3.86/krita/plugins/extensions/dockers/channeldocker/krita_channeldocker.desktop calligra-2.3.87/krita/plugins/extensions/dockers/channeldocker/krita_channeldocker.desktop --- calligra-2.3.86/krita/plugins/extensions/dockers/channeldocker/krita_channeldocker.desktop 2012-01-07 03:25:02.000000000 +0000 +++ calligra-2.3.87/krita/plugins/extensions/dockers/channeldocker/krita_channeldocker.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -2,6 +2,7 @@ Name=Channel Docker Name[bg]=Контейнер за канали Name[ca]=Amarrador de canal +Name[ca@valencia]=Amarrador de canal Name[cs]=Dok kanálů Name[da]=Kanal-dokker Name[en_GB]=Channel Docker diff -Nru calligra-2.3.86/krita/plugins/extensions/dockers/defaultdockers/kis_drop_button.cpp calligra-2.3.87/krita/plugins/extensions/dockers/defaultdockers/kis_drop_button.cpp --- calligra-2.3.86/krita/plugins/extensions/dockers/defaultdockers/kis_drop_button.cpp 2012-01-07 03:25:02.000000000 +0000 +++ calligra-2.3.87/krita/plugins/extensions/dockers/defaultdockers/kis_drop_button.cpp 2012-01-28 07:04:48.000000000 +0000 @@ -37,7 +37,7 @@ #include KisDropButton::KisDropButton(QWidget *parent) - : QToolButton(parent) + : KisToolButton(parent) { setAcceptDrops(true); } diff -Nru calligra-2.3.86/krita/plugins/extensions/dockers/defaultdockers/kis_drop_button.h calligra-2.3.87/krita/plugins/extensions/dockers/defaultdockers/kis_drop_button.h --- calligra-2.3.86/krita/plugins/extensions/dockers/defaultdockers/kis_drop_button.h 2012-01-07 03:25:02.000000000 +0000 +++ calligra-2.3.87/krita/plugins/extensions/dockers/defaultdockers/kis_drop_button.h 2012-01-28 07:04:48.000000000 +0000 @@ -20,7 +20,8 @@ #ifndef KIS_DROP_BUTTON_H #define KIS_DROP_BUTTON_H -#include +#include + class KisView2; @@ -29,7 +30,7 @@ /** * A toolbutton that implements a drop target. */ -class KisDropButton : public QToolButton +class KisDropButton : public KisToolButton { Q_OBJECT public: diff -Nru calligra-2.3.86/krita/plugins/extensions/dockers/defaultdockers/wdglayerbox.ui calligra-2.3.87/krita/plugins/extensions/dockers/defaultdockers/wdglayerbox.ui --- calligra-2.3.86/krita/plugins/extensions/dockers/defaultdockers/wdglayerbox.ui 2012-01-07 03:25:02.000000000 +0000 +++ calligra-2.3.87/krita/plugins/extensions/dockers/defaultdockers/wdglayerbox.ui 2012-01-28 07:04:48.000000000 +0000 @@ -85,13 +85,13 @@ - 28 + 37 28 - 28 + 37 28 diff -Nru calligra-2.3.86/krita/plugins/extensions/dockers/dockerplugintemplate/krita_presetdocker.desktop calligra-2.3.87/krita/plugins/extensions/dockers/dockerplugintemplate/krita_presetdocker.desktop --- calligra-2.3.86/krita/plugins/extensions/dockers/dockerplugintemplate/krita_presetdocker.desktop 2012-01-07 03:25:02.000000000 +0000 +++ calligra-2.3.87/krita/plugins/extensions/dockers/dockerplugintemplate/krita_presetdocker.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -1,6 +1,7 @@ [Desktop Entry] Name=Preset Docker Name[ca]=Amarrador de prearranjament +Name[ca@valencia]=Amarrador de prearranjament Name[cs]=Dok předvoleb Name[da]=Forudindstilling-dokker Name[en_GB]=Preset Docker @@ -19,6 +20,7 @@ Name[zh_TW]=預設定嵌入器 Comment=Docker for selecting presets Comment[ca]=Amarrador per prearranjaments seleccionats +Comment[ca@valencia]=Amarrador per prearranjaments seleccionats Comment[da]=Dokker til at vælge forudindstillinger Comment[en_GB]=Docker for selecting presets Comment[et]=Valmisseadistuste valimise dokk diff -Nru calligra-2.3.86/krita/plugins/extensions/dockers/historydocker/kritahistorydocker.desktop calligra-2.3.87/krita/plugins/extensions/dockers/historydocker/kritahistorydocker.desktop --- calligra-2.3.86/krita/plugins/extensions/dockers/historydocker/kritahistorydocker.desktop 2012-01-07 03:25:02.000000000 +0000 +++ calligra-2.3.87/krita/plugins/extensions/dockers/historydocker/kritahistorydocker.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -1,6 +1,7 @@ [Desktop Entry] Name=Krita Undo History Docker plugin Name[ca]=Connector amarrador d'històric de desfer del Krita +Name[ca@valencia]=Connector amarrador d'històric de desfer del Krita Name[da]=Dokker-plugin til at fortryde historik til Krita Name[el]=Πρόσθετο προσάρτησης αναίρεσης ιστορικού του Krita Name[en_GB]=Krita Undo History Docker plugin diff -Nru calligra-2.3.86/krita/plugins/extensions/dockers/imagedocker/kritaimagedocker.desktop calligra-2.3.87/krita/plugins/extensions/dockers/imagedocker/kritaimagedocker.desktop --- calligra-2.3.86/krita/plugins/extensions/dockers/imagedocker/kritaimagedocker.desktop 2012-01-07 03:25:02.000000000 +0000 +++ calligra-2.3.87/krita/plugins/extensions/dockers/imagedocker/kritaimagedocker.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -1,6 +1,7 @@ [Desktop Entry] Name=Image Docker Name[ca]=Amarradors d'imatges +Name[ca@valencia]=Amarradors d'imatges Name[cs]=Dok obrázků Name[da]=Billed-dokker Name[et]=Pildidokk @@ -8,6 +9,7 @@ Name[nb]=Bildedokker Name[nds]=Bild-Andocker Name[nl]=Vastzetter van afbeelding +Name[pl]=Dokowanie obrazu Name[pt]=Área de Imagens Name[pt_BR]=Acoplador de imagem Name[ru]=Панель для изображений @@ -17,11 +19,13 @@ Name[zh_TW]=影像嵌入器 Comment=Docker for reference images Comment[ca]=Amarrador per a imatges de referència +Comment[ca@valencia]=Amarrador per a imatges de referència Comment[cs]=Dok pro referenční obrázky Comment[da]=Dokker til referencebilleder Comment[et]=Kõrvutuspiltide dokk Comment[it]=Area di aggancio per le immagini di riferimento Comment[nb]=Dokker for referansebilder +Comment[pl]=Dokowanie dla odniesionych obrazów Comment[pt]=Área das imagens de referência Comment[pt_BR]=Acoplador para imagens de referência Comment[ru]=Панель для изображений для ссылки diff -Nru calligra-2.3.86/krita/plugins/extensions/dockers/presetdocker/krita_presetdocker.desktop calligra-2.3.87/krita/plugins/extensions/dockers/presetdocker/krita_presetdocker.desktop --- calligra-2.3.86/krita/plugins/extensions/dockers/presetdocker/krita_presetdocker.desktop 2012-01-07 03:25:02.000000000 +0000 +++ calligra-2.3.87/krita/plugins/extensions/dockers/presetdocker/krita_presetdocker.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -1,6 +1,7 @@ [Desktop Entry] Name=Preset Docker Name[ca]=Amarrador de prearranjament +Name[ca@valencia]=Amarrador de prearranjament Name[cs]=Dok předvoleb Name[da]=Forudindstilling-dokker Name[en_GB]=Preset Docker @@ -19,6 +20,7 @@ Name[zh_TW]=預設定嵌入器 Comment=Docker for selecting presets Comment[ca]=Amarrador per prearranjaments seleccionats +Comment[ca@valencia]=Amarrador per prearranjaments seleccionats Comment[da]=Dokker til at vælge forudindstillinger Comment[en_GB]=Docker for selecting presets Comment[et]=Valmisseadistuste valimise dokk diff -Nru calligra-2.3.86/krita/plugins/extensions/dockers/smallcolorselector/krita_smallcolorselector.desktop calligra-2.3.87/krita/plugins/extensions/dockers/smallcolorselector/krita_smallcolorselector.desktop --- calligra-2.3.86/krita/plugins/extensions/dockers/smallcolorselector/krita_smallcolorselector.desktop 2012-01-07 03:25:02.000000000 +0000 +++ calligra-2.3.87/krita/plugins/extensions/dockers/smallcolorselector/krita_smallcolorselector.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -18,7 +18,7 @@ Name[nb]=LitenFargeVelger Name[nds]=LüttKlöörKöör Name[nl]=SmallColorSelector -Name[pl]=WybierakMałegoKoloru +Name[pl]=WybieranieMałegoKoloru Name[pt]=Selector de Cores Pequeno Name[pt_BR]=Seletor de Cores Pequeno Name[ru]=Маленькое окно для выбора цвета @@ -50,7 +50,7 @@ Comment[nb]=LitenFargeVelger Comment[nds]=LüttKlöörKöör Comment[nl]=SmallColorSelector -Comment[pl]=WybierakMałegoKoloru +Comment[pl]=WybieranieMałegoKoloru Comment[pt]=Selector de Cores Pequeno Comment[pt_BR]=Seletor de Cores Pequeno Comment[ru]=Маленькое окно выбора цвета diff -Nru calligra-2.3.86/krita/plugins/extensions/dockers/specificcolorselector/krita_specificcolorselector.desktop calligra-2.3.87/krita/plugins/extensions/dockers/specificcolorselector/krita_specificcolorselector.desktop --- calligra-2.3.86/krita/plugins/extensions/dockers/specificcolorselector/krita_specificcolorselector.desktop 2012-01-07 03:25:02.000000000 +0000 +++ calligra-2.3.87/krita/plugins/extensions/dockers/specificcolorselector/krita_specificcolorselector.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -18,7 +18,7 @@ Name[nb]=SpesiellFargeVelger Name[nds]=BesünnerKlöörKöör Name[nl]=SpecificColorSelector -Name[pl]=WybierakOkreślonegoKoloru +Name[pl]=WybieranieOkreślonegoKoloru Name[pt]=Selector de Cores Específico Name[pt_BR]=Seletor de Cores Específico Name[ru]=Выбор специального цвета @@ -50,7 +50,7 @@ Comment[nb]=SpesiellFargeVelger Comment[nds]=BesünnerKlöörKöör Comment[nl]=SpecificColorSelector -Comment[pl]=WybierakOkreślonegoKoloru +Comment[pl]=WybieranieOkreślonegoKoloru Comment[pt]=Selector de Cores Específico Comment[pt_BR]=Seletor de Cores Específico Comment[ru]=Выбор специального цвета diff -Nru calligra-2.3.86/krita/plugins/extensions/dockers/tasksetdocker/krita_tasksetdocker.desktop calligra-2.3.87/krita/plugins/extensions/dockers/tasksetdocker/krita_tasksetdocker.desktop --- calligra-2.3.86/krita/plugins/extensions/dockers/tasksetdocker/krita_tasksetdocker.desktop 2012-01-07 03:25:02.000000000 +0000 +++ calligra-2.3.87/krita/plugins/extensions/dockers/tasksetdocker/krita_tasksetdocker.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -1,10 +1,12 @@ [Desktop Entry] Name=Taskset Docker Name[ca]=Amarrador Taskset +Name[ca@valencia]=Amarrador Taskset Name[da]=Taskset-dokker Name[et]=Ülesandekogumi dokk Name[it]=Area di aggancio taskset Name[nb]=Dokker for oppgavesett +Name[pl]=Dokowanie zestawu zadań Name[pt]=Área dos Conjuntos de Tarefas Name[pt_BR]=Área dos conjuntos de tarefas Name[ru]=Панель для задач diff -Nru calligra-2.3.86/krita/plugins/extensions/imagesplit/kritaimagesplit.desktop calligra-2.3.87/krita/plugins/extensions/imagesplit/kritaimagesplit.desktop --- calligra-2.3.86/krita/plugins/extensions/imagesplit/kritaimagesplit.desktop 2012-01-07 03:25:02.000000000 +0000 +++ calligra-2.3.87/krita/plugins/extensions/imagesplit/kritaimagesplit.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -1,6 +1,7 @@ [Desktop Entry] Name=Image Splitter Name[ca]=Separador d'imatges +Name[ca@valencia]=Separador d'imatges Name[da]=Billedopdeler Name[el]=Διαχωριστής εικόνας Name[et]=Pildipoolitaja diff -Nru calligra-2.3.86/krita/plugins/extensions/scripting/kritascripting.desktop calligra-2.3.87/krita/plugins/extensions/scripting/kritascripting.desktop --- calligra-2.3.86/krita/plugins/extensions/scripting/kritascripting.desktop 2012-01-07 03:25:02.000000000 +0000 +++ calligra-2.3.87/krita/plugins/extensions/scripting/kritascripting.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -49,7 +49,7 @@ Comment=Allow execution of scripts Comment[bg]=Изпълнение на скриптове Comment[ca]=Permet l'execució d'scripts -Comment[ca@valencia]=Permet l'execució de seqüències +Comment[ca@valencia]=Permet l'execució d'scripts Comment[cs]=Umožní spouštění skriptů Comment[da]=Tillad kørsel af script Comment[de]=Ermöglicht das Ausführen von Skripten diff -Nru calligra-2.3.86/krita/plugins/extensions/shiva/collections/filters/AntiBullify.shiva calligra-2.3.87/krita/plugins/extensions/shiva/collections/filters/AntiBullify.shiva --- calligra-2.3.86/krita/plugins/extensions/shiva/collections/filters/AntiBullify.shiva 2012-01-07 03:25:02.000000000 +0000 +++ calligra-2.3.87/krita/plugins/extensions/shiva/collections/filters/AntiBullify.shiva 2012-01-28 07:04:48.000000000 +0000 @@ -17,9 +17,8 @@ >; kernel AntiBullify { - const float2 center = { xcenter * IMAGE_WIDTH, ycenter * IMAGE_HEIGHT }; - const float lightLength = lightLengthP * 0.5 * (IMAGE_WIDTH + IMAGE_HEIGHT ); - + dependent float2 center = { xcenter * IMAGE_WIDTH, ycenter * IMAGE_HEIGHT }; + dependent float lightLength = lightLengthP * 0.5 * (IMAGE_WIDTH + IMAGE_HEIGHT ); void evaluatePixel(image img, out pixel result) { float2 vec = result.coord - center; diff -Nru calligra-2.3.86/krita/plugins/extensions/shiva/collections/filters/blur.shiva calligra-2.3.87/krita/plugins/extensions/shiva/collections/filters/blur.shiva --- calligra-2.3.86/krita/plugins/extensions/shiva/collections/filters/blur.shiva 2012-01-07 03:25:02.000000000 +0000 +++ calligra-2.3.87/krita/plugins/extensions/shiva/collections/filters/blur.shiva 1970-01-01 00:00:00.000000000 +0000 @@ -1,7 +0,0 @@ -kernel Blur -{ - void evaluatePixel(image img, out pixel result) - { - result = ( img.sampleNearest( result.coord ) + img.sampleNearest( result.coord - 1.0 ) + img.sampleNearest( result.coord + 1.0 ) ) / 3.0; - } -} diff -Nru calligra-2.3.86/krita/plugins/extensions/shiva/collections/filters/Bullify.shiva calligra-2.3.87/krita/plugins/extensions/shiva/collections/filters/Bullify.shiva --- calligra-2.3.86/krita/plugins/extensions/shiva/collections/filters/Bullify.shiva 2012-01-07 03:25:02.000000000 +0000 +++ calligra-2.3.87/krita/plugins/extensions/shiva/collections/filters/Bullify.shiva 2012-01-28 07:04:48.000000000 +0000 @@ -17,8 +17,8 @@ >; kernel Bullify { - const float2 center = { xcenter * IMAGE_WIDTH, ycenter * IMAGE_HEIGHT }; - const float lightLength = lightLengthP * 0.5 * (IMAGE_WIDTH + IMAGE_HEIGHT ); + dependent float2 center = { xcenter * IMAGE_WIDTH, ycenter * IMAGE_HEIGHT }; + dependent float lightLength = lightLengthP * 0.5 * (IMAGE_WIDTH + IMAGE_HEIGHT ); void evaluatePixel(image img, out pixel result) { diff -Nru calligra-2.3.86/krita/plugins/extensions/shiva/collections/filters/Caleidoscope.shiva calligra-2.3.87/krita/plugins/extensions/shiva/collections/filters/Caleidoscope.shiva --- calligra-2.3.86/krita/plugins/extensions/shiva/collections/filters/Caleidoscope.shiva 2012-01-07 03:25:02.000000000 +0000 +++ calligra-2.3.87/krita/plugins/extensions/shiva/collections/filters/Caleidoscope.shiva 2012-01-28 07:04:48.000000000 +0000 @@ -26,9 +26,9 @@ >; kernel Caleidoscope { - const float2 center = { IMAGE_WIDTH * xcenter, IMAGE_HEIGHT * ycenter }; + dependent float2 center = { IMAGE_WIDTH * xcenter, IMAGE_HEIGHT * ycenter }; const float pi = 3.14159265358979323846; - const float angle = pi / count; + dependent float angle = pi / count; void evaluatePixel(image img, out pixel result) { float2 vec = result.coord - center; diff -Nru calligra-2.3.86/krita/plugins/extensions/shiva/collections/filters/CentralAbsorbtion.shiva calligra-2.3.87/krita/plugins/extensions/shiva/collections/filters/CentralAbsorbtion.shiva --- calligra-2.3.86/krita/plugins/extensions/shiva/collections/filters/CentralAbsorbtion.shiva 2012-01-07 03:25:02.000000000 +0000 +++ calligra-2.3.87/krita/plugins/extensions/shiva/collections/filters/CentralAbsorbtion.shiva 2012-01-28 07:04:48.000000000 +0000 @@ -18,8 +18,8 @@ >; kernel CentralAbsorbtion { - const float2 center = { IMAGE_WIDTH * xcenter, IMAGE_HEIGHT * ycenter }; - const float max = (IMAGE_WIDTH + IMAGE_HEIGHT) * 0.5; + dependent float2 center = { IMAGE_WIDTH * xcenter, IMAGE_HEIGHT * ycenter }; + dependent float max = (IMAGE_WIDTH + IMAGE_HEIGHT) * 0.5; void evaluatePixel(input image img, output pixel result) { float2 vec = result.coord - center; diff -Nru calligra-2.3.86/krita/plugins/extensions/shiva/collections/filters/Contraction.shiva calligra-2.3.87/krita/plugins/extensions/shiva/collections/filters/Contraction.shiva --- calligra-2.3.86/krita/plugins/extensions/shiva/collections/filters/Contraction.shiva 1970-01-01 00:00:00.000000000 +0000 +++ calligra-2.3.87/krita/plugins/extensions/shiva/collections/filters/Contraction.shiva 2012-01-28 07:04:48.000000000 +0000 @@ -0,0 +1,22 @@ +kernel Contraction +{ + void evaluatePixel(image img, out pixel result) + { + pixel inp = img.sampleNearest( result.coord); + result = inp; + if( inp.opacity() > 0.0) + { + float minAlpha = 1.0; + for(int y = -1; y <= 1; ++y) + { + for(int x= -1; x <= 1; ++x) + { + pixel s = img.sampleNearest(result.coord+float2(x,y)); + minAlpha = min(minAlpha, s.opacity()); + } + } + result.setOpacity(minAlpha); + } + } + +} diff -Nru calligra-2.3.86/krita/plugins/extensions/shiva/collections/filters/Droste.shiva calligra-2.3.87/krita/plugins/extensions/shiva/collections/filters/Droste.shiva --- calligra-2.3.86/krita/plugins/extensions/shiva/collections/filters/Droste.shiva 2012-01-07 03:25:02.000000000 +0000 +++ calligra-2.3.87/krita/plugins/extensions/shiva/collections/filters/Droste.shiva 2012-01-28 07:04:48.000000000 +0000 @@ -196,11 +196,10 @@ kernel Droste { - const float pi = 3.14159265358979323846; const float2 I = { 0.0, 1.0}; const float3 polarCoordinates = { 90, 0, 0 }; - const float2 center = { xcenter, ycenter }; - const float2 centerShift = { xcenterShift + 1.0, ycenterShift + 1.0 }; + dependent float2 center = { xcenter * 1.0, ycenter * 1.0 }; + dependent float2 centerShift = { xcenterShift + 1.0, ycenterShift + 1.0 }; dependent float r1, r2, p1, p2, alphaThreshold; dependent float2 _rotate, xBounds, yBounds, xyMiddle, minDimension, _zoom; dependent bool showPoles, hyperDroste, tileBasedOnTransparency, transparentPointsIn, twist; @@ -293,11 +292,11 @@ // Autoset periodicity if (setAutoPeriodicity == 1) { - p1 = p2/2.0 * (1.0 + sqrt(1.0 - pow(log(r2/r1)/pi, 2.0))); + p1 = p2/2.0 * (1.0 + sqrt(1.0 - pow(log(r2/r1)/PI, 2.0))); } // Set rotation - _rotate = float2((pi/180.0) * rotate, 0.0); + _rotate = float2((PI/180.0) * rotate, 0.0); // Set zoom _zoom = float2(exp(zoom) + innerRadius - 1.0, 0.0); @@ -307,7 +306,7 @@ yBounds = float2(-r2, r2); } else { xBounds = float2(-log(r2/r1), log(r2/r1)); - yBounds = float2(0.0, 2.1 * pi); + yBounds = float2(0.0, 2.1 * PI); } xyMiddle = float2(0.5 * (xBounds.x + xBounds.y), 0.5 * (yBounds.x + yBounds.y) ); @@ -340,7 +339,7 @@ polar = (float2(polarCoordinates.y, polarCoordinates.z) * IMAGE_WIDTH / s.x) / 100.0; if (showPoles) { - theta = (pi/180.0) * polarCoordinates.x; + theta = (PI/180.0) * polarCoordinates.x; div = (1.0 + pow(z.x, 2.0) + pow(z.y, 2.0) + ((1.0 - pow(z.x, 2.0) - pow(z.y, 2.0)) * cos(theta)) - (2.0 * z.x * sin(theta))) / 2.0; z.x = z.x * cos(theta) + ((1.0 - pow(z.x, 2.0) - pow(z.y, 2.0)) * sin(theta) / 2.0); @@ -362,12 +361,12 @@ } // Start Droste-effect code - float2 alpha = float2(atan((p2/p1) * (log(r2/r1) / (2.0*pi))), 0.0); + float2 alpha = float2(atan((p2/p1) * (log(r2/r1) / (2.0*PI))), 0.0); float2 f = float2(cos(alpha.x), 0.0); float2 beta = complexMult(f, complexExp(complexMult(alpha, I))); //The angle of rotation between adjacent annular levels - float2 angle = float2(-2.0 * pi * p1, 0.0); + float2 angle = float2(-2.0 * PI * p1, 0.0); if (p2 > 0.0) angle = -angle; if (strandMirror == 1) angle /= strands; @@ -388,7 +387,7 @@ float alphaRemaining = 1.0; float2 d = (z + centerShift) * minDimension ; pixel src = img.sampleNearest(d); - float alphasrc = src.alpha(); + float alphasrc = src.opacity(); float4 colorSoFar = (src * (alphasrc * alphaRemaining)); alphaRemaining *= (1.0 - alphasrc); @@ -429,7 +428,7 @@ z = complexMult(z, ratio); float2 d = (z + centerShift) * minDimension ; pixel src = img.sampleNearest(d); - float alphasrc = src.alpha(); + float alphasrc = src.opacity(); colorSoFar += (src * (alphasrc * alphaRemaining)); alphaRemaining *= ( 1 - alphasrc ); radius = length( z ); diff -Nru calligra-2.3.86/krita/plugins/extensions/shiva/collections/filters/Expansion.shiva calligra-2.3.87/krita/plugins/extensions/shiva/collections/filters/Expansion.shiva --- calligra-2.3.86/krita/plugins/extensions/shiva/collections/filters/Expansion.shiva 1970-01-01 00:00:00.000000000 +0000 +++ calligra-2.3.87/krita/plugins/extensions/shiva/collections/filters/Expansion.shiva 2012-01-28 07:04:48.000000000 +0000 @@ -0,0 +1,30 @@ +kernel Expansion +{ + void evaluatePixel(image img, out pixel result) + { + pixel inp = img.sampleNearest( result.coord); + if( inp.opacity() < 1.0) + { + floatn res = 0; + float weight = 0.0; + for(int y = -1; y <= 1; ++y) + { + for(int x= -1; x <= 1; ++x) + { + pixel s = img.sampleNearest(result.coord+float2(x,y)); + weight += s.opacity(); + res += s.opacity() * s; + } + } + if (weight > 0.0) { + result = res * (1.0 - inp.opacity()) / weight + inp; +// result = res / weight; + } else { + result = res; + } + } else { + result = inp; + } + } + +} diff -Nru calligra-2.3.86/krita/plugins/extensions/shiva/collections/filters/Hypno.shiva calligra-2.3.87/krita/plugins/extensions/shiva/collections/filters/Hypno.shiva --- calligra-2.3.86/krita/plugins/extensions/shiva/collections/filters/Hypno.shiva 1970-01-01 00:00:00.000000000 +0000 +++ calligra-2.3.87/krita/plugins/extensions/shiva/collections/filters/Hypno.shiva 2012-01-28 07:04:48.000000000 +0000 @@ -0,0 +1,73 @@ +/* + * Copyright (c) 2009 Ricardo Cabello + * Copyright (c) 2010 Cyrille Berger + * + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this software and associated documentation files (the "Software"), to deal + * in the Software without restriction, including without limitation the rights + * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + * copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in + * all copies or substantial portions of the Software. + * + * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR + * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, + * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE + * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER + * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, + * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN + * THE SOFTWARE. + */ + +< + parameters: < + center: < + type: float2; + minValue: {0,0}; + maxValue: {1,1}; + defaultValue: {0.5, 0.5}; + >; + offset: < + type: float2; + >; + >; +>; +kernel Hypno +{ + dependent float2 center_p = { IMAGE_WIDTH * center.x, IMAGE_HEIGHT * center.y }; + void evaluatePixel(image src, output pixel dst) + { + float2 pos = (dst.coord - center_p) / IMAGE_SIZE; + + float pi = 3.141592653589793; + float a = atan2(pos.y,pos.x); + float r = sqrt(pow(pos.x,2.0)+pow(pos.y,2.0)); + + float u = 0.0; + float v = 0.0; + float w = 0.0; + + u += offset.x; + v += offset.y; + + // This is where the magic happens + + u += cos(a)/r; + v += sin(a)/r; + w += 1.0/pow(r,0.1); + + // End of the magic + + u *= IMAGE_WIDTH; + v *= IMAGE_HEIGHT; + + if (u < 0.0) u += IMAGE_WIDTH * ceil(-u / IMAGE_WIDTH); + if (v < 0.0) v += IMAGE_HEIGHT * ceil(-v / IMAGE_HEIGHT); + if (u > IMAGE_WIDTH) u -= IMAGE_WIDTH * floor(u / IMAGE_WIDTH); + if (v > IMAGE_HEIGHT) v -= IMAGE_HEIGHT * floor(v / IMAGE_HEIGHT); + + dst = w * src.sampleNearest(float2(u, v)); + } +} \ No newline at end of file diff -Nru calligra-2.3.86/krita/plugins/extensions/shiva/collections/filters/LensCorrection.shiva calligra-2.3.87/krita/plugins/extensions/shiva/collections/filters/LensCorrection.shiva --- calligra-2.3.86/krita/plugins/extensions/shiva/collections/filters/LensCorrection.shiva 1970-01-01 00:00:00.000000000 +0000 +++ calligra-2.3.87/krita/plugins/extensions/shiva/collections/filters/LensCorrection.shiva 2012-01-28 07:04:48.000000000 +0000 @@ -0,0 +1,58 @@ +< + parameters: < + xcenter: < + label: "Center x"; + type: float; + >; + ycenter: < + label: "Center y"; + type: float; + >; + correctionnearcenter: < + label: "Correction near center"; + type: float; + defaultValue: 0.0; + maxValue: 100.0; + >; + correctionnearedges: < + label: "Correction near edges"; + type: float; + defaultValue: 0.0; + maxValue: 100.0; + >; + brightness: < + label: "Brightness"; + type: float; + defaultValue: 0.0; + maxValue: 100.0; + >; + >; +>; +kernel LensCorrection +{ + dependent float2 center = { IMAGE_WIDTH * xcenter, IMAGE_HEIGHT * ycenter }; + dependent float max = (IMAGE_WIDTH + IMAGE_HEIGHT) * 0.5; + dependent float mult_sq; + dependent float mult_qd; + dependent float normallise_radius_sq; + void evaluateDependents() + { + mult_sq = correctionnearcenter / 200.0; + mult_qd = correctionnearedges / 200.0; + normallise_radius_sq = 4.0 / ( IMAGE_WIDTH * IMAGE_WIDTH + IMAGE_HEIGHT * IMAGE_HEIGHT ); + } + void evaluatePixel(input image img, output pixel result) + { + float2 vec = result.coord - center; + float radius = (vec.x * vec.x + vec.y * vec.y) * normallise_radius_sq; + radius = radius * mult_sq + radius * radius * mult_qd; + float mag = radius; + radius += 1.0; + + float2 src = center + radius * vec; + + float brighten = 1.0 + mag * brightness; + + result = brighten * img.sampleNearest( src ); + } +} diff -Nru calligra-2.3.86/krita/plugins/extensions/shiva/collections/filters/MirrorImpose.shiva calligra-2.3.87/krita/plugins/extensions/shiva/collections/filters/MirrorImpose.shiva --- calligra-2.3.86/krita/plugins/extensions/shiva/collections/filters/MirrorImpose.shiva 2012-01-07 03:25:02.000000000 +0000 +++ calligra-2.3.87/krita/plugins/extensions/shiva/collections/filters/MirrorImpose.shiva 2012-01-28 07:04:48.000000000 +0000 @@ -1,6 +1,6 @@ kernel MirrorImpose { - const float2 imsize = { IMAGE_WIDTH, IMAGE_HEIGHT }; + dependent float2 imsize = { IMAGE_WIDTH, IMAGE_HEIGHT }; float4 mix(float4 a, float4 b, float c) { return a * c + b * (1 - c); diff -Nru calligra-2.3.86/krita/plugins/extensions/shiva/collections/filters/Mosaic.shiva calligra-2.3.87/krita/plugins/extensions/shiva/collections/filters/Mosaic.shiva --- calligra-2.3.86/krita/plugins/extensions/shiva/collections/filters/Mosaic.shiva 2012-01-07 03:25:02.000000000 +0000 +++ calligra-2.3.87/krita/plugins/extensions/shiva/collections/filters/Mosaic.shiva 2012-01-28 07:04:48.000000000 +0000 @@ -5,20 +5,19 @@ type: float; minValue: 0.0001; maxValue: 100.0; - defaultValue: 0.05; + defaultValue: 100; >; >; >; kernel Mosaic { - const float2 imsize = { 1000.0, 800.0 }; float2 fmod2( float2 f, float v ) { return float2( mod(f.x,v), mod(f.y,v) ); } void evaluatePixel(image img, out pixel result) { - float2 vec = result.coord - fmod2( result.coord + imsize, cellsize ); + float2 vec = fmod2( result.coord, cellsize) / cellsize * IMAGE_SIZE; result = img.sampleNearest( vec ); } region changed(region changed_input_region, int input_index, region input_DOD[]) diff -Nru calligra-2.3.86/krita/plugins/extensions/shiva/collections/filters/Planes.shiva calligra-2.3.87/krita/plugins/extensions/shiva/collections/filters/Planes.shiva --- calligra-2.3.86/krita/plugins/extensions/shiva/collections/filters/Planes.shiva 1970-01-01 00:00:00.000000000 +0000 +++ calligra-2.3.87/krita/plugins/extensions/shiva/collections/filters/Planes.shiva 2012-01-28 07:04:48.000000000 +0000 @@ -0,0 +1,70 @@ +/* + * Copyright (c) 2009 Ricardo Cabello + * Copyright (c) 2010 Cyrille Berger + * + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this software and associated documentation files (the "Software"), to deal + * in the Software without restriction, including without limitation the rights + * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + * copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in + * all copies or substantial portions of the Software. + * + * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR + * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, + * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE + * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER + * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, + * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN + * THE SOFTWARE. + */ + +< + parameters: < + center: < + type: float2; + minValue: {0,0}; + maxValue: {1,1}; + defaultValue: {0.5, 0.5}; + >; + offset: < + type: float2; + >; + >; +>; +kernel Planes +{ + dependent float2 center_p = { IMAGE_WIDTH * center.x, IMAGE_HEIGHT * center.y }; + + void evaluatePixel(image src, output pixel dst) + { + float2 pos = (dst.coord - center_p) / IMAGE_SIZE; + + float pi = 3.141592653589793; + float a = atan2(pos.y,pos.x); + float r = sqrt(pow(pos.x,2.0)+pow(pos.y,2.0)); + + float u = 0.0; + float v = 0.0; + float w = 0.0; + + u += offset.x; + v += offset.y; + + u += 0.2/abs(pos.y); + v += 0.2*pos.x/abs(pos.y); + w += abs(pos.y * 2.0); + + u *= IMAGE_WIDTH; + v *= IMAGE_HEIGHT; + + if (u < 0.0) u += IMAGE_WIDTH * ceil(-u / IMAGE_WIDTH); + if (v < 0.0) v += IMAGE_HEIGHT * ceil(-v / IMAGE_HEIGHT); + if (u > IMAGE_WIDTH) u -= IMAGE_WIDTH * floor(u / IMAGE_WIDTH); + if (v > IMAGE_HEIGHT) v -= IMAGE_HEIGHT * floor(v / IMAGE_HEIGHT); + + dst = w * src.sampleNearest(float2(u, v)); + } +} diff -Nru calligra-2.3.86/krita/plugins/extensions/shiva/collections/filters/Ray2.shiva calligra-2.3.87/krita/plugins/extensions/shiva/collections/filters/Ray2.shiva --- calligra-2.3.86/krita/plugins/extensions/shiva/collections/filters/Ray2.shiva 1970-01-01 00:00:00.000000000 +0000 +++ calligra-2.3.87/krita/plugins/extensions/shiva/collections/filters/Ray2.shiva 2012-01-28 07:04:48.000000000 +0000 @@ -0,0 +1,70 @@ +/* + * Copyright (c) 2009 Ricardo Cabello + * Copyright (c) 2010 Cyrille Berger + * + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this software and associated documentation files (the "Software"), to deal + * in the Software without restriction, including without limitation the rights + * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + * copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in + * all copies or substantial portions of the Software. + * + * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR + * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, + * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE + * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER + * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, + * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN + * THE SOFTWARE. + */ + +< + parameters: < + center: < + type: float2; + minValue: {0,0}; + maxValue: {1,1}; + defaultValue: {0.5, 0.5}; + >; + offset: < + type: float2; + >; + >; +>; +kernel Ray +{ + dependent float2 center_p = { IMAGE_WIDTH * center.x, IMAGE_HEIGHT * center.y }; + + void evaluatePixel(image src, output pixel dst) + { + float2 pos = (dst.coord - center_p) / IMAGE_SIZE; + + float pi = 3.141592653589793; + float a = atan2(pos.y,pos.x); + float r = sqrt(pow(pos.x,2.0)+pow(pos.y,2.0)); + + float u = 0.0; + float v = 0.0; + float w = 0.0; + + u += offset.x; + v += offset.y; + + u += a; + v += a; + w += 1.0/pow(r,0.5); + + u *= IMAGE_WIDTH; + v *= IMAGE_HEIGHT; + + if (u < 0.0) u += IMAGE_WIDTH * ceil(-u / IMAGE_WIDTH); + if (v < 0.0) v += IMAGE_HEIGHT * ceil(-v / IMAGE_HEIGHT); + if (u > IMAGE_WIDTH) u -= IMAGE_WIDTH * floor(u / IMAGE_WIDTH); + if (v > IMAGE_HEIGHT) v -= IMAGE_HEIGHT * floor(v / IMAGE_HEIGHT); + + dst = w * src.sampleNearest(float2(u, v)); + } +} diff -Nru calligra-2.3.86/krita/plugins/extensions/shiva/collections/filters/Ray.shiva calligra-2.3.87/krita/plugins/extensions/shiva/collections/filters/Ray.shiva --- calligra-2.3.86/krita/plugins/extensions/shiva/collections/filters/Ray.shiva 1970-01-01 00:00:00.000000000 +0000 +++ calligra-2.3.87/krita/plugins/extensions/shiva/collections/filters/Ray.shiva 2012-01-28 07:04:48.000000000 +0000 @@ -0,0 +1,70 @@ +/* + * Copyright (c) 2009 Ricardo Cabello + * Copyright (c) 2010 Cyrille Berger + * + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this software and associated documentation files (the "Software"), to deal + * in the Software without restriction, including without limitation the rights + * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + * copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in + * all copies or substantial portions of the Software. + * + * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR + * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, + * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE + * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER + * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, + * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN + * THE SOFTWARE. + */ + +< + parameters: < + center: < + type: float2; + minValue: {0,0}; + maxValue: {1,1}; + defaultValue: {0.5, 0.5}; + >; + offset: < + type: float2; + >; + >; +>; +kernel Ray +{ + dependent float2 center_p = { IMAGE_WIDTH * center.x, IMAGE_HEIGHT * center.y }; + + void evaluatePixel(image src, output pixel dst) + { + float2 pos = (dst.coord - center_p) / IMAGE_SIZE; + + float pi = 3.141592653589793; + float a = atan2(pos.y,pos.x); + float r = sqrt(pow(pos.x,2.0)+pow(pos.y,2.0)); + + float u = 0.0; + float v = 0.0; + float w = 0.0; + + u += offset.x; + v += offset.y; + + u += r; + v += r; + w += 0.2 + 0.8*(1.2+ 0.6*sin(13.0*a))/r; + + u *= IMAGE_WIDTH; + v *= IMAGE_HEIGHT; + + if (u < 0.0) u += IMAGE_WIDTH * ceil(-u / IMAGE_WIDTH); + if (v < 0.0) v += IMAGE_HEIGHT * ceil(-v / IMAGE_HEIGHT); + if (u > IMAGE_WIDTH) u -= IMAGE_WIDTH * floor(u / IMAGE_WIDTH); + if (v > IMAGE_HEIGHT) v -= IMAGE_HEIGHT * floor(v / IMAGE_HEIGHT); + + dst = w * src.sampleNearest(float2(u, v)); + } +} diff -Nru calligra-2.3.86/krita/plugins/extensions/shiva/collections/filters/Ripples.shiva calligra-2.3.87/krita/plugins/extensions/shiva/collections/filters/Ripples.shiva --- calligra-2.3.86/krita/plugins/extensions/shiva/collections/filters/Ripples.shiva 2012-01-07 03:25:02.000000000 +0000 +++ calligra-2.3.87/krita/plugins/extensions/shiva/collections/filters/Ripples.shiva 2012-01-28 07:04:48.000000000 +0000 @@ -18,7 +18,7 @@ >; kernel Ripples { - const float2 center = { IMAGE_WIDTH * xcenter, IMAGE_HEIGHT * ycenter }; + dependent float2 center = { IMAGE_WIDTH * xcenter, IMAGE_HEIGHT * ycenter }; const float waveslengthInv = 1.0 / 50.0; void evaluatePixel(image img, out pixel result) diff -Nru calligra-2.3.86/krita/plugins/extensions/shiva/collections/filters/RotativeBlur.shiva calligra-2.3.87/krita/plugins/extensions/shiva/collections/filters/RotativeBlur.shiva --- calligra-2.3.86/krita/plugins/extensions/shiva/collections/filters/RotativeBlur.shiva 2012-01-07 03:25:02.000000000 +0000 +++ calligra-2.3.87/krita/plugins/extensions/shiva/collections/filters/RotativeBlur.shiva 2012-01-28 07:04:48.000000000 +0000 @@ -18,8 +18,8 @@ >; kernel RotativeBlur { - const float2 center = { IMAGE_WIDTH * xcenter, IMAGE_HEIGHT * ycenter }; - const float max = (IMAGE_WIDTH + IMAGE_HEIGHT) * 0.25; + dependent float2 center = { IMAGE_WIDTH * xcenter, IMAGE_HEIGHT * ycenter }; + dependent float max = (IMAGE_WIDTH + IMAGE_HEIGHT) * 0.25; void evaluatePixel(input image img, output pixel result) { float2 vec = result.coord - center; diff -Nru calligra-2.3.86/krita/plugins/extensions/shiva/collections/filters/Roundify.shiva calligra-2.3.87/krita/plugins/extensions/shiva/collections/filters/Roundify.shiva --- calligra-2.3.86/krita/plugins/extensions/shiva/collections/filters/Roundify.shiva 2012-01-07 03:25:02.000000000 +0000 +++ calligra-2.3.87/krita/plugins/extensions/shiva/collections/filters/Roundify.shiva 2012-01-28 07:04:48.000000000 +0000 @@ -26,7 +26,7 @@ >; kernel Roundify { - const float2 center = { IMAGE_WIDTH * xcenter, IMAGE_HEIGHT * ycenter }; + dependent float2 center = { IMAGE_WIDTH * xcenter, IMAGE_HEIGHT * ycenter }; void evaluatePixel(image img, out pixel result) { float2 vec = result.coord - center; diff -Nru calligra-2.3.86/krita/plugins/extensions/shiva/collections/filters/Sea.shiva calligra-2.3.87/krita/plugins/extensions/shiva/collections/filters/Sea.shiva --- calligra-2.3.86/krita/plugins/extensions/shiva/collections/filters/Sea.shiva 2012-01-07 03:25:02.000000000 +0000 +++ calligra-2.3.87/krita/plugins/extensions/shiva/collections/filters/Sea.shiva 2012-01-28 07:04:48.000000000 +0000 @@ -29,9 +29,9 @@ >; kernel Sea { - const float2 center = { IMAGE_WIDTH * 0.5, IMAGE_HEIGHT * 0.5 }; - const float PI2 = 2 * 3.14159265; - const float q = t * PI2; + dependent float2 center = { IMAGE_WIDTH * 0.5, IMAGE_HEIGHT * 0.5 }; + const float PI2 = 2 * PI; + dependent float q = t * PI2; void evaluatePixel(image img, out pixel result) { float s = sin(q + wv * IMAGE_HEIGHT / ( IMAGE_HEIGHT - result.coord.y + 0.1) ); diff -Nru calligra-2.3.86/krita/plugins/extensions/shiva/collections/filters/Sectorize.shiva calligra-2.3.87/krita/plugins/extensions/shiva/collections/filters/Sectorize.shiva --- calligra-2.3.86/krita/plugins/extensions/shiva/collections/filters/Sectorize.shiva 2012-01-07 03:25:02.000000000 +0000 +++ calligra-2.3.87/krita/plugins/extensions/shiva/collections/filters/Sectorize.shiva 2012-01-28 07:04:48.000000000 +0000 @@ -26,7 +26,7 @@ >; kernel Sectorize { - const float2 center = { IMAGE_WIDTH * xcenter, IMAGE_HEIGHT * ycenter }; + dependent float2 center = { IMAGE_WIDTH * xcenter, IMAGE_HEIGHT * ycenter }; void evaluatePixel(image img, out pixel result) { float2 vec = result.coord - center; diff -Nru calligra-2.3.86/krita/plugins/extensions/shiva/collections/filters/Sphere.shiva calligra-2.3.87/krita/plugins/extensions/shiva/collections/filters/Sphere.shiva --- calligra-2.3.86/krita/plugins/extensions/shiva/collections/filters/Sphere.shiva 1970-01-01 00:00:00.000000000 +0000 +++ calligra-2.3.87/krita/plugins/extensions/shiva/collections/filters/Sphere.shiva 2012-01-28 07:04:48.000000000 +0000 @@ -0,0 +1,70 @@ +/* + * Copyright (c) 2009 Ricardo Cabello + * Copyright (c) 2010 Cyrille Berger + * + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this software and associated documentation files (the "Software"), to deal + * in the Software without restriction, including without limitation the rights + * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + * copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in + * all copies or substantial portions of the Software. + * + * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR + * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, + * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE + * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER + * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, + * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN + * THE SOFTWARE. + */ + +< + parameters: < + center: < + type: float2; + minValue: {0,0}; + maxValue: {1,1}; + defaultValue: {0.5, 0.5}; + >; + offset: < + type: float2; + >; + >; +>; +kernel Sphere +{ + dependent float2 center_p = { IMAGE_WIDTH * center.x, IMAGE_HEIGHT * center.y }; + + void evaluatePixel(image src, output pixel dst) + { + float2 pos = (dst.coord - center_p) / IMAGE_SIZE; + + float pi = 3.141592653589793; + float a = atan2(pos.y,pos.x); + float r = sqrt(pow(pos.x,2.0)+pow(pos.y,2.0)); + + float u = 0.0; + float v = 0.0; + float w = 0.0; + + u += offset.x; + v += offset.y; + + u += pos.x*(3.0-sqrt(4.0-5.0*r*r))/(r*r+1.0); + v += pos.y*(3.0-sqrt(4.0-5.0*r*r))/(r*r+1.0); + w += 1.7*(pos.x+pos.y+r*r-(pos.x+pos.y-1.0)*sqrt(4.0-5.0*r*r)/3.0)/(r*r+1.0); + + u *= IMAGE_WIDTH; + v *= IMAGE_HEIGHT; + + if (u < 0.0) u += IMAGE_WIDTH * ceil(-u / IMAGE_WIDTH); + if (v < 0.0) v += IMAGE_HEIGHT * ceil(-v / IMAGE_HEIGHT); + if (u > IMAGE_WIDTH) u -= IMAGE_WIDTH * floor(u / IMAGE_WIDTH); + if (v > IMAGE_HEIGHT) v -= IMAGE_HEIGHT * floor(v / IMAGE_HEIGHT); + + dst = w * src.sampleNearest(float2(u, v)); + } +} diff -Nru calligra-2.3.86/krita/plugins/extensions/shiva/collections/filters/Star.shiva calligra-2.3.87/krita/plugins/extensions/shiva/collections/filters/Star.shiva --- calligra-2.3.86/krita/plugins/extensions/shiva/collections/filters/Star.shiva 1970-01-01 00:00:00.000000000 +0000 +++ calligra-2.3.87/krita/plugins/extensions/shiva/collections/filters/Star.shiva 2012-01-28 07:04:48.000000000 +0000 @@ -0,0 +1,70 @@ +/* + * Copyright (c) 2009 Ricardo Cabello + * Copyright (c) 2010 Cyrille Berger + * + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this software and associated documentation files (the "Software"), to deal + * in the Software without restriction, including without limitation the rights + * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + * copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in + * all copies or substantial portions of the Software. + * + * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR + * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, + * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE + * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER + * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, + * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN + * THE SOFTWARE. + */ + +< + parameters: < + center: < + type: float2; + minValue: {0,0}; + maxValue: {1,1}; + defaultValue: {0.5, 0.5}; + >; + offset: < + type: float2; + >; + >; +>; +kernel Tunnel2 +{ + dependent float2 center_p = { IMAGE_WIDTH * center.x, IMAGE_HEIGHT * center.y }; + + void evaluatePixel(image src, output pixel dst) + { + float2 pos = (dst.coord - center_p) / IMAGE_SIZE; + + float pi = 3.141592653589793; + float a = atan2(pos.y,pos.x); + float r = sqrt(pow(pos.x,2.0)+pow(pos.y,2.0)); + + float u = 0.0; + float v = 0.0; + float w = 0.0; + + u += offset.x; + v += offset.y; + + u += 7.0*a/pi; + v += sin(7.0*r) + 0.7*cos(11.0*a); + w += 0.7+0.7*(sin(7.0*r)+ 0.7*cos(11.0*a)); + + u *= IMAGE_WIDTH; + v *= IMAGE_HEIGHT; + + if (u < 0.0) u += IMAGE_WIDTH * ceil(-u / IMAGE_WIDTH); + if (v < 0.0) v += IMAGE_HEIGHT * ceil(-v / IMAGE_HEIGHT); + if (u > IMAGE_WIDTH) u -= IMAGE_WIDTH * floor(u / IMAGE_WIDTH); + if (v > IMAGE_HEIGHT) v -= IMAGE_HEIGHT * floor(v / IMAGE_HEIGHT); + + dst = w * src.sampleNearest(float2(u, v)); + } +} diff -Nru calligra-2.3.86/krita/plugins/extensions/shiva/collections/filters/StereographicProjection.shiva calligra-2.3.87/krita/plugins/extensions/shiva/collections/filters/StereographicProjection.shiva --- calligra-2.3.86/krita/plugins/extensions/shiva/collections/filters/StereographicProjection.shiva 2012-01-07 03:25:02.000000000 +0000 +++ calligra-2.3.87/krita/plugins/extensions/shiva/collections/filters/StereographicProjection.shiva 2012-01-28 07:04:48.000000000 +0000 @@ -59,10 +59,9 @@ >; kernel StereographicProjection { - const float2 center = { IMAGE_WIDTH * xcenter, IMAGE_HEIGHT * ycenter }; - const float2 xy0 = { center.x - IMAGE_WIDTH, -center.y + IMAGE_HEIGHT }; - const float2 xy_replication = {IMAGE_WIDTH * 0.5, IMAGE_HEIGHT * 0.5}; - const float PI = 3.14159265; + dependent float2 center = { IMAGE_WIDTH * xcenter, IMAGE_HEIGHT * ycenter }; + dependent float2 xy0 = { center.x - IMAGE_WIDTH, -center.y + IMAGE_HEIGHT }; + dependent float2 xy_replication = {IMAGE_WIDTH * 0.5, IMAGE_HEIGHT * 0.5}; const float PI2 = 2 * PI; void evaluatePixel(image img, out pixel result) { diff -Nru calligra-2.3.86/krita/plugins/extensions/shiva/collections/filters/Tunnel2.shiva calligra-2.3.87/krita/plugins/extensions/shiva/collections/filters/Tunnel2.shiva --- calligra-2.3.86/krita/plugins/extensions/shiva/collections/filters/Tunnel2.shiva 1970-01-01 00:00:00.000000000 +0000 +++ calligra-2.3.87/krita/plugins/extensions/shiva/collections/filters/Tunnel2.shiva 2012-01-28 07:04:48.000000000 +0000 @@ -0,0 +1,69 @@ +/* + * Copyright (c) 2009 Ricardo Cabello + * Copyright (c) 2010 Cyrille Berger + * + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this software and associated documentation files (the "Software"), to deal + * in the Software without restriction, including without limitation the rights + * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + * copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in + * all copies or substantial portions of the Software. + * + * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR + * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, + * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE + * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER + * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, + * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN + * THE SOFTWARE. + */ + +< + parameters: < + center: < + type: float2; + minValue: {0,0}; + maxValue: {1,1}; + defaultValue: {0.5, 0.5}; + >; + offset: < + type: float2; + >; + >; +>; +kernel Tunnel2 +{ + dependent float2 center_p = { IMAGE_WIDTH * center.x, IMAGE_HEIGHT * center.y }; + + void evaluatePixel(image src, output pixel dst) + { + float2 pos = (dst.coord - center_p) / IMAGE_SIZE; + + float a = atan2(pos.y,pos.x); + float r = sqrt(pow(pos.x,2.0)+pow(pos.y,2.0)); + + float u = 0.0; + float v = 0.0; + float w = 0.0; + + u += offset.x; + v += offset.y; + + u += 1.0/(r+0.5+0.5*sin(5.0*a)); + v += a*3.0/PI; + w += 0.6*(r+0.5+0.5*sin(5.0*a)); + + u *= IMAGE_WIDTH; + v *= IMAGE_HEIGHT; + + if (u < 0.0) u += IMAGE_WIDTH * ceil(-u / IMAGE_WIDTH); + if (v < 0.0) v += IMAGE_HEIGHT * ceil(-v / IMAGE_HEIGHT); + if (u > IMAGE_WIDTH) u -= IMAGE_WIDTH * floor(u / IMAGE_WIDTH); + if (v > IMAGE_HEIGHT) v -= IMAGE_HEIGHT * floor(v / IMAGE_HEIGHT); + + dst = w * src.sampleNearest(float2(u, v)); + } +} diff -Nru calligra-2.3.86/krita/plugins/extensions/shiva/collections/filters/Tunnel.shiva calligra-2.3.87/krita/plugins/extensions/shiva/collections/filters/Tunnel.shiva --- calligra-2.3.86/krita/plugins/extensions/shiva/collections/filters/Tunnel.shiva 1970-01-01 00:00:00.000000000 +0000 +++ calligra-2.3.87/krita/plugins/extensions/shiva/collections/filters/Tunnel.shiva 2012-01-28 07:04:48.000000000 +0000 @@ -0,0 +1,70 @@ +/* + * Copyright (c) 2009 Ricardo Cabello + * Copyright (c) 2010 Cyrille Berger + * + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this software and associated documentation files (the "Software"), to deal + * in the Software without restriction, including without limitation the rights + * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + * copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in + * all copies or substantial portions of the Software. + * + * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR + * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, + * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE + * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER + * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, + * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN + * THE SOFTWARE. + */ + +< + parameters: < + center: < + type: float2; + minValue: {0,0}; + maxValue: {1,1}; + defaultValue: {0.5, 0.5}; + >; + offset: < + type: float2; + >; + >; +>; +kernel Tunnel +{ + dependent float2 center_p = { IMAGE_WIDTH * center.x, IMAGE_HEIGHT * center.y }; + + void evaluatePixel(image src, output pixel dst) + { + float2 pos = (dst.coord - center_p) / IMAGE_SIZE; + + float pi = 3.141592653589793; + float a = atan2(pos.y,pos.x); + float r = sqrt(pow(pos.x,2.0)+pow(pos.y,2.0)); + + float u = 0.0; + float v = 0.0; + float w = 0.0; + + u += offset.x; + v += offset.y; + + u += 1.0/r; + v += 3.0*a/pi; + w += r*2.0; + + u *= IMAGE_WIDTH; + v *= IMAGE_HEIGHT; + + if (u < 0.0) u += IMAGE_WIDTH * ceil(-u / IMAGE_WIDTH); + if (v < 0.0) v += IMAGE_HEIGHT * ceil(-v / IMAGE_HEIGHT); + if (u > IMAGE_WIDTH) u -= IMAGE_WIDTH * floor(u / IMAGE_WIDTH); + if (v > IMAGE_HEIGHT) v -= IMAGE_HEIGHT * floor(v / IMAGE_HEIGHT); + + dst = w * src.sampleNearest(float2(u, v)); + } +} diff -Nru calligra-2.3.86/krita/plugins/extensions/shiva/collections/filters/ZigZag.shiva calligra-2.3.87/krita/plugins/extensions/shiva/collections/filters/ZigZag.shiva --- calligra-2.3.86/krita/plugins/extensions/shiva/collections/filters/ZigZag.shiva 2012-01-07 03:25:02.000000000 +0000 +++ calligra-2.3.87/krita/plugins/extensions/shiva/collections/filters/ZigZag.shiva 2012-01-28 07:04:48.000000000 +0000 @@ -18,7 +18,7 @@ >; kernel ZigZag { - const float2 center = { IMAGE_WIDTH * 0.5, IMAGE_HEIGHT * 0.5 }; + dependent float2 center = { IMAGE_WIDTH * 0.5, IMAGE_HEIGHT * 0.5 }; void evaluatePixel(image img, out pixel result) { float2 vec = result.coord - center; diff -Nru calligra-2.3.86/krita/plugins/extensions/shiva/collections/generators/CheckerBoard.shiva calligra-2.3.87/krita/plugins/extensions/shiva/collections/generators/CheckerBoard.shiva --- calligra-2.3.86/krita/plugins/extensions/shiva/collections/generators/CheckerBoard.shiva 2012-01-07 03:25:02.000000000 +0000 +++ calligra-2.3.87/krita/plugins/extensions/shiva/collections/generators/CheckerBoard.shiva 2012-01-28 07:04:48.000000000 +0000 @@ -24,13 +24,18 @@ >; kernel CheckerBoard { - const int hsize = IMAGE_WIDTH / hcount; - const int vsize = IMAGE_HEIGHT / vcount; + dependent int hsize; + dependent int vsize; + void evaluateDependents() + { + hsize = IMAGE_WIDTH / hcount; + vsize = IMAGE_HEIGHT / vcount; + } void evaluatePixel(out pixel4 result) { int ix = int(result.coord.x) / hsize & 1; int iy = int(result.coord.y) / vsize & 1; - float4 r; + color r; if( ( ix == 1 and iy == 1 ) or ( ix == 0 and iy == 0 ) ) { r = color1; diff -Nru calligra-2.3.86/krita/plugins/extensions/shiva/collections/generators/ConcentricCircles.shiva calligra-2.3.87/krita/plugins/extensions/shiva/collections/generators/ConcentricCircles.shiva --- calligra-2.3.86/krita/plugins/extensions/shiva/collections/generators/ConcentricCircles.shiva 2012-01-07 03:25:02.000000000 +0000 +++ calligra-2.3.87/krita/plugins/extensions/shiva/collections/generators/ConcentricCircles.shiva 2012-01-28 07:04:48.000000000 +0000 @@ -19,13 +19,17 @@ >; kernel ConcentricCircles { - const float2 center = { IMAGE_WIDTH * 0.5 , IMAGE_HEIGHT * 0.5 }; + dependent float2 center; + void evaluateDependents() + { + center = IMAGE_SIZE * 0.5; + } void evaluatePixel(out pixel4 result) { float lf = length(result.coord - center); int l = lf; - float4 r; + color r; if( (l / radius & 1) == 1 ) { r = color1; @@ -34,13 +38,13 @@ if( ( ((l-1)/radius) & 1) == 1 ) { float c = l - lf; - if(c < 0) c = -c; - r = (1.0- c) * color1 + c * color2; + if(c < 0) c = 1+c; + r = mix(color2, color1, c); } else if((((l+1)/radius) & 1 ) == 1) { float c = l - lf; if(c < 0) c = -c; - r = c * color1 + (1.0 - c) * color2; + r = mix(color2, color1, c); } else { r = color2; } diff -Nru calligra-2.3.86/krita/plugins/extensions/shiva/collections/generators/Disco.shiva calligra-2.3.87/krita/plugins/extensions/shiva/collections/generators/Disco.shiva --- calligra-2.3.86/krita/plugins/extensions/shiva/collections/generators/Disco.shiva 2012-01-07 03:25:02.000000000 +0000 +++ calligra-2.3.87/krita/plugins/extensions/shiva/collections/generators/Disco.shiva 2012-01-28 07:04:48.000000000 +0000 @@ -46,9 +46,14 @@ >; kernel Disco { - const float2 center = { IMAGE_WIDTH * xcenter, IMAGE_HEIGHT * ycenter }; + dependent float2 center; const float PI2 = 2 * 3.14159265; - const float q = t * PI2; + dependent float q; + void evaluateDependents() + { + center = float2(IMAGE_WIDTH * xcenter, IMAGE_HEIGHT * ycenter); + q = t * PI2; + } void evaluatePixel(out pixel4 result) { float2 vec = result.coord - center; diff -Nru calligra-2.3.86/krita/plugins/extensions/shiva/collections/generators/FractalExplorer.shiva calligra-2.3.87/krita/plugins/extensions/shiva/collections/generators/FractalExplorer.shiva --- calligra-2.3.86/krita/plugins/extensions/shiva/collections/generators/FractalExplorer.shiva 2012-01-07 03:25:02.000000000 +0000 +++ calligra-2.3.87/krita/plugins/extensions/shiva/collections/generators/FractalExplorer.shiva 2012-01-28 07:04:48.000000000 +0000 @@ -493,7 +493,7 @@ { float h; float s; float v; float r; float g; float b; float j; float p; float q; float t; int i; - float4 color; + float4 col; h = hsv.x; s = hsv.y; @@ -502,11 +502,11 @@ if (v == 0.0) { // No brightness so return black - color = float4(0.0, 0.0, 0.0, 1.0); + col = float4(0.0, 0.0, 0.0, 1.0); } else if (s == 0.0) { // No saturation so return grey - color = float4(v, v, v, 1.0); + col = float4(v, v, v, 1.0); } else { // RGB color @@ -542,10 +542,10 @@ g = p; b = q; } - color = float4(r, g, b, 1.0); + col = float4(r, g, b, 1.0); } - return color; + return col; } float2 multiply( float2 matrix[2], float2 v) @@ -633,40 +633,40 @@ float4 colorMapping(float n, float2 z) { - float4 color; + float4 col; float4 c1; float4 c2; float v = abs(1.0 - (n - float(iterationsOffset)) / float(iterations - iterationsOffset)); float v0 = v; if (hsbColor && colorMode > 0) { - c1 = hsv2rgb(float3(color1.x, color1.y, color1.z)); - c2 = hsv2rgb(float3(color2.x, color2.y, color2.z)); + c1 = hsv2rgb(float3(color1.red, color1.green, color1.blue)); + c2 = hsv2rgb(float3(color2.red, color2.green, color2.blue)); } else { - c1 = color1; - c2 = color2; + c1 = float4(color1.red, color1.green, color1.blue, color1.opacity); + c2 = float4(color2.red, color2.green, color2.blue, color2.opacity); } if (colorMode == 3) { if( atan2(z.y, z.x) > 0.0 ) { - color = c1; + col = c1; } else { - color = c2; + col = c2; } } else if (colorMode == 4) { if( mod(n, 2.0) == 0.0 ) { - color = c1; + col = c1; } else { - color = c2; + col = c2; } } else if (colorMode == 5) { if(abs(z.x) < bailout / 2.0 || abs(z.y) < bailout / 2.0) { - color = c1; + col = c1; } else { - color = c2; + col = c2; } } else { if (colorMode != 2) { @@ -716,12 +716,12 @@ } if (hsbColor) { - color = hsv2rgb(mix(float3(c1.x, c1.y, c1.z), float3(c2.x, c2.y, c2.z), v)); + col = hsv2rgb(mix(float3(c1.x, c1.y, c1.z), float3(c2.x, c2.y, c2.z), v)); } else { - color = mix(c1, c2, v); + col = mix(c1, c2, v); } } - return color; + return col; } @@ -735,7 +735,8 @@ */ float4 renderPoint(float2 p) { - float4 color = colorBackground; + float4 col_o = float4(colorBackground.red, colorBackground.green, colorBackground.blue, colorBackground.opacity); + float4 col = col_o; float2 z0; float2 z; @@ -767,7 +768,7 @@ if (n >= minIterations && bailoutCondition(z)) { // Set the pixel colour based on the number of iterations it takes to reach the bailout threshold - color = colorMapping(float(n), z); + col = colorMapping(float(n), z); run = false; } @@ -780,12 +781,12 @@ //} // Prevent edge case of invalid color value - color = mix(colorBackground, color, color.a); + col = mix(col_o, col, col.a); if (iterationColorBlend > 0.0) blend = clamp(1.0 - (float(n - minIterations) / float(iterations - minIterations)) * iterationColorBlend, 0.0, 1.0); - color = mix(colorBackground, color, color.a * blend); + col = mix(col_o, col, col.a * blend); - return color; + return col; } diff -Nru calligra-2.3.86/krita/plugins/extensions/shiva/collections/generators/MandelbrotSet.shiva calligra-2.3.87/krita/plugins/extensions/shiva/collections/generators/MandelbrotSet.shiva --- calligra-2.3.86/krita/plugins/extensions/shiva/collections/generators/MandelbrotSet.shiva 2012-01-07 03:25:02.000000000 +0000 +++ calligra-2.3.87/krita/plugins/extensions/shiva/collections/generators/MandelbrotSet.shiva 2012-01-28 07:04:48.000000000 +0000 @@ -43,6 +43,6 @@ result[1] = 0.0; result[2] = 0.0; } - result.setAlpha(1.0); + result.setOpacity(1.0); } } diff -Nru calligra-2.3.86/krita/plugins/extensions/shiva/collections/generators/Metaball.shiva calligra-2.3.87/krita/plugins/extensions/shiva/collections/generators/Metaball.shiva --- calligra-2.3.86/krita/plugins/extensions/shiva/collections/generators/Metaball.shiva 2012-01-07 03:25:02.000000000 +0000 +++ calligra-2.3.87/krita/plugins/extensions/shiva/collections/generators/Metaball.shiva 2012-01-28 07:04:48.000000000 +0000 @@ -32,15 +32,17 @@ >; kernel Metaball { - dependent float2 centers[ metaballs ]; + dependent float2 centers[ 0 ]; dependent float pxradius, pxringradius; void evaluateDependents() { + float2 cs[metaballs]; + centers = cs; int image_size = min(IMAGE_WIDTH, IMAGE_HEIGHT); pxradius = radius * image_size; pxringradius = ringradius * image_size; const float RAND_MAX = 2147483647; - int seed_ = seed; + unsigned int seed_ = seed; for(int i = 0; i < metaballs; ++i) { centers[i].x = rand(seed_) / RAND_MAX * IMAGE_WIDTH; @@ -64,7 +66,7 @@ float v = (r - pxradius) / pxringradius; if(v < maxv) { - result = ( (1.0 - v) * metaballcolor + v * outsidecolor ); + result = mix(metaballcolor, outsidecolor, v ); maxv = v; } } diff -Nru calligra-2.3.86/krita/plugins/extensions/shiva/collections/generators/Moire.shiva calligra-2.3.87/krita/plugins/extensions/shiva/collections/generators/Moire.shiva --- calligra-2.3.86/krita/plugins/extensions/shiva/collections/generators/Moire.shiva 2012-01-07 03:25:02.000000000 +0000 +++ calligra-2.3.87/krita/plugins/extensions/shiva/collections/generators/Moire.shiva 2012-01-28 07:04:48.000000000 +0000 @@ -16,9 +16,14 @@ >; kernel Moire { - const float2 center = { IMAGE_WIDTH * xcenter, IMAGE_HEIGHT * ycenter }; - const float PI2 = 2 * 3.14159265; - const float q = t * PI2; + const float PI2 = 2 * 3.14159265358979323846; + dependent float2 center; + dependent float q; + void evaluateDependents() + { + center = { IMAGE_WIDTH * xcenter, IMAGE_HEIGHT * ycenter }; + q = t * PI2; + } void evaluatePixel(out pixel4 result) { float2 vec = result.coord - center; diff -Nru calligra-2.3.86/krita/plugins/extensions/shiva/collections/generators/PerlinNoise.shiva calligra-2.3.87/krita/plugins/extensions/shiva/collections/generators/PerlinNoise.shiva --- calligra-2.3.86/krita/plugins/extensions/shiva/collections/generators/PerlinNoise.shiva 2012-01-07 03:25:02.000000000 +0000 +++ calligra-2.3.87/krita/plugins/extensions/shiva/collections/generators/PerlinNoise.shiva 2012-01-28 07:04:48.000000000 +0000 @@ -55,7 +55,7 @@ { permutation[i] = i; } - int seed = 1252; + unsigned int seed = 1252; for (int i = 0; i < 1000; ++i) { int j = rand(seed) % 64; int k = rand(seed) % 64; diff -Nru calligra-2.3.86/krita/plugins/extensions/shiva/collections/generators/Plasma.shiva calligra-2.3.87/krita/plugins/extensions/shiva/collections/generators/Plasma.shiva --- calligra-2.3.86/krita/plugins/extensions/shiva/collections/generators/Plasma.shiva 1970-01-01 00:00:00.000000000 +0000 +++ calligra-2.3.87/krita/plugins/extensions/shiva/collections/generators/Plasma.shiva 2012-01-28 07:04:48.000000000 +0000 @@ -0,0 +1,76 @@ +/* + * Copyright (c) 2009 Ricardo Cabello + * Copyright (c) 2010 Cyrille Berger + * + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this software and associated documentation files (the "Software"), to deal + * in the Software without restriction, including without limitation the rights + * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + * copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in + * all copies or substantial portions of the Software. + * + * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR + * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, + * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE + * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER + * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, + * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN + * THE SOFTWARE. + */ + +< + parameters: < + center: < + type: float2; + minValue: {0,0}; + maxValue: {1,1}; + defaultValue: {0.5, 0.5}; + >; + distort: < + type: float; + minValue: 0; + maxValue: 0.1; + defaultValue: 0.0; + >; + offset: < + type: float2; + minValue: {-100,-100}; + maxValue: {100,100}; + defaultValue: {0,0}; + >; + + color_offset: < + type: color; + defaultValue: {0.0,0.0,0.0,1.0}; + >; + wave: < + type: float2; + minValue: {0,0}; + maxValue: {0.1,0.1}; + defaultValue: {0.05,0.05}; + >; + >; +>; + +kernel PlasmaEffect +{ + dependent float2 center_p; + void evaluateDependents() + { + center_p = { IMAGE_WIDTH * center.x, IMAGE_HEIGHT * center.y }; + } + void evaluatePixel(output pixel4 dst) + { + float2 pos = dst.coord; + + float2 dist = pos - center_p; + float distance = sqrt((dist.x * dist.x) + (dist.y * dist.y)) * distort; + + float color = cos((offset.x + pos.x) * wave.x) + sin((offset.y + pos.y) * wave.y) + sin(distance) + cos(distance); + + dst = float4(color + color_offset.red, color + color_offset.green, color + color_offset.blue, color_offset.opacity); + } +} diff -Nru calligra-2.3.86/krita/plugins/extensions/shiva/collections/generators/RadialGradient.shiva calligra-2.3.87/krita/plugins/extensions/shiva/collections/generators/RadialGradient.shiva --- calligra-2.3.86/krita/plugins/extensions/shiva/collections/generators/RadialGradient.shiva 2012-01-07 03:25:02.000000000 +0000 +++ calligra-2.3.87/krita/plugins/extensions/shiva/collections/generators/RadialGradient.shiva 2012-01-28 07:04:48.000000000 +0000 @@ -12,8 +12,12 @@ >; kernel RadialGradient { - const float2 center = { IMAGE_WIDTH * xcenter, IMAGE_HEIGHT * ycenter }; + dependent float2 center; const float PI = 3.14159265; + void evaluateDependents() + { + center = { IMAGE_WIDTH * xcenter, IMAGE_HEIGHT * ycenter }; + } void evaluatePixel(out pixel4 result) { float2 vec = result.coord - center; diff -Nru calligra-2.3.86/krita/plugins/extensions/shiva/collections/generators/Singleball.shiva calligra-2.3.87/krita/plugins/extensions/shiva/collections/generators/Singleball.shiva --- calligra-2.3.86/krita/plugins/extensions/shiva/collections/generators/Singleball.shiva 2012-01-07 03:25:02.000000000 +0000 +++ calligra-2.3.87/krita/plugins/extensions/shiva/collections/generators/Singleball.shiva 2012-01-28 07:04:48.000000000 +0000 @@ -33,10 +33,11 @@ >; kernel Singleball { - const float2 center = { IMAGE_WIDTH * xcenter, IMAGE_HEIGHT * ycenter }; + dependent float2 center; dependent float pxradius, pxringradius; void evaluateDependents() { + center = { IMAGE_WIDTH * xcenter, IMAGE_HEIGHT * ycenter }; int image_size = min(IMAGE_WIDTH, IMAGE_HEIGHT); pxradius = radius * image_size; pxringradius = ringradius * image_size; @@ -51,7 +52,7 @@ result = outsidecolor; } else { float v = (r - pxradius) / pxringradius; - result = (1.0 - v) * ballcolor + v * outsidecolor; + result = mix(ballcolor, outsidecolor, v); } } region generated() diff -Nru calligra-2.3.86/krita/plugins/extensions/shiva/collections/generators/Something.shiva calligra-2.3.87/krita/plugins/extensions/shiva/collections/generators/Something.shiva --- calligra-2.3.86/krita/plugins/extensions/shiva/collections/generators/Something.shiva 2012-01-07 03:25:02.000000000 +0000 +++ calligra-2.3.87/krita/plugins/extensions/shiva/collections/generators/Something.shiva 2012-01-28 07:04:48.000000000 +0000 @@ -1,12 +1,12 @@ < parameters: < colors: < - colorrgb: < + color1: < label: "Object"; type: color; defaultValue: { 0.2, 0.01, 0.08 }; >; - colorcenterrgb: < + colorcenter: < label: "Background"; type: color; defaultValue: { 1.0, 1.0, 1.0 }; @@ -35,11 +35,14 @@ >; kernel Something { - const float2 center = { IMAGE_WIDTH * xcenter, IMAGE_HEIGHT * ycenter }; + dependent float2 center; const float PI = 3.14159265; - const float4 color1 = { colorrgb[0], colorrgb[1], colorrgb[2], 1.0 }; - const float4 colorCenter = { colorcenterrgb[0], colorcenterrgb[1], colorcenterrgb[2], 1.0 }; - const float radius = 0.2 * (IMAGE_WIDTH + IMAGE_HEIGHT) * radiusp; + dependent float radius; + void evaluateDependents() + { + center = { IMAGE_WIDTH * xcenter, IMAGE_HEIGHT * ycenter }; + radius = 0.2 * (IMAGE_WIDTH + IMAGE_HEIGHT) * radiusp; + } void evaluatePixel(out pixel4 result) { @@ -57,7 +60,7 @@ { coef = pow((radius - vec_length) / adjRadius , 1.0 ) * ( 1.0 - coef) + coef; } - result = ( 1 - coef ) * color1 + coef * colorCenter; + result = mix(color1, colorcenter, coef); for( int i = 0; i < 3; ++i) { @@ -66,7 +69,7 @@ } result[3] = 1.0; } else { - result = colorCenter; + result = colorcenter; } } region generated() diff -Nru calligra-2.3.86/krita/plugins/extensions/shiva/collections/generators/SunRay.shiva calligra-2.3.87/krita/plugins/extensions/shiva/collections/generators/SunRay.shiva --- calligra-2.3.86/krita/plugins/extensions/shiva/collections/generators/SunRay.shiva 2012-01-07 03:25:02.000000000 +0000 +++ calligra-2.3.87/krita/plugins/extensions/shiva/collections/generators/SunRay.shiva 2012-01-28 07:04:48.000000000 +0000 @@ -29,9 +29,14 @@ kernel SunRay { - const float2 center = { IMAGE_WIDTH * xcenter, IMAGE_HEIGHT * ycenter }; - const float PI = 3.14159265; - const float4 color = { colorrgb[0], colorrgb[1], colorrgb[2], 1.0 }; + dependent float2 center; + dependent float4 colorv; + + void evaluateDependents() + { + center = { IMAGE_WIDTH * xcenter, IMAGE_HEIGHT * ycenter }; + colorv = { colorrgb.red, colorrgb.green, colorrgb.blue, 1.0 }; + } void evaluatePixel(out pixel4 result) { @@ -39,7 +44,7 @@ float angle = atan2( vec.x, vec.y); float coef = cos(angle * phase); if( coef < 0.0 ) coef = - coef; - result = color + fluctuation * coef; + result = colorv + fluctuation * coef; for( int i = 0; i < 3; ++i) { diff -Nru calligra-2.3.86/krita/plugins/extensions/shiva/collections/generators/SuperNova.shiva calligra-2.3.87/krita/plugins/extensions/shiva/collections/generators/SuperNova.shiva --- calligra-2.3.86/krita/plugins/extensions/shiva/collections/generators/SuperNova.shiva 2012-01-07 03:25:02.000000000 +0000 +++ calligra-2.3.87/krita/plugins/extensions/shiva/collections/generators/SuperNova.shiva 2012-01-28 07:04:48.000000000 +0000 @@ -45,11 +45,18 @@ kernel SuperNova { - const float wh = 0.25 * (IMAGE_WIDTH + IMAGE_HEIGHT); - const float2 center = { IMAGE_WIDTH * xcenter, IMAGE_HEIGHT * ycenter }; - const float PI = 3.14159265; - const float radius = radiusp * wh; - const float color2radius = color2radiusp * wh; + dependent float wh; + dependent float2 center; + dependent float radius; + dependent float color2radius; + + void evaluateDependents() + { + wh = 0.25 * (IMAGE_WIDTH + IMAGE_HEIGHT); + center = { IMAGE_WIDTH * xcenter, IMAGE_HEIGHT * ycenter }; + radius = radiusp * wh; + color2radius = color2radiusp * wh; + } void evaluatePixel(out pixel4 result) { @@ -70,7 +77,7 @@ { coef2 = (vec_length - radius) / ( (color2radius - 1.0) * radius ); } - result = ( 1 - coef ) * ( coef2 * color1 + (1 - coef2) * color2) + coef * colorCenter; + result = mix( mix(color2, color1, coef2), colorCenter, coef); for( int i = 0; i < 3; ++i) { diff -Nru calligra-2.3.86/krita/plugins/extensions/shiva/PaintDeviceImage.cpp calligra-2.3.87/krita/plugins/extensions/shiva/PaintDeviceImage.cpp --- calligra-2.3.86/krita/plugins/extensions/shiva/PaintDeviceImage.cpp 2012-01-07 03:25:02.000000000 +0000 +++ calligra-2.3.87/krita/plugins/extensions/shiva/PaintDeviceImage.cpp 2012-01-28 07:04:48.000000000 +0000 @@ -26,7 +26,6 @@ #include #include #include -#include "Version.h" #include #include @@ -57,11 +56,7 @@ types.push_back(GTLCore::Type::Float32); break; case KoChannelInfo::FLOAT64: -#if OPENSHIVA_12 - types.push_back(GTLCore::Type::Double); -#else types.push_back(GTLCore::Type::Float64); -#endif break; default: errKrita << "Channeltype OTHER encountered"; @@ -118,12 +113,10 @@ return (const char*)(m_accessor->oldRawData()); } -#if OPENSHIVA_13_OR_MORE GTLCore::RegionI ConstPaintDeviceImage::boundingBox() const { return GTLCore::RegionI(0,0,-1,-1); } -#endif GTLCore::AbstractImage::ConstIterator* ConstPaintDeviceImage::createIterator() const { @@ -168,12 +161,10 @@ return (const char*)(m_accessor->oldRawData()); } -#if OPENSHIVA_13_OR_MORE GTLCore::RegionI PaintDeviceImage::boundingBox() const { return GTLCore::RegionI(0,0,-1,-1); } -#endif GTLCore::AbstractImage::ConstIterator* PaintDeviceImage::createIterator() const { diff -Nru calligra-2.3.86/krita/plugins/extensions/shiva/PaintDeviceImage.h calligra-2.3.87/krita/plugins/extensions/shiva/PaintDeviceImage.h --- calligra-2.3.86/krita/plugins/extensions/shiva/PaintDeviceImage.h 2012-01-07 03:25:02.000000000 +0000 +++ calligra-2.3.87/krita/plugins/extensions/shiva/PaintDeviceImage.h 2012-01-28 07:04:48.000000000 +0000 @@ -20,7 +20,6 @@ #include #include -#include "Version.h" class ConstPaintDeviceImage : public GTLCore::AbstractImage { @@ -31,9 +30,7 @@ virtual char* rawData( int _x, int _y ); virtual const char* data(int _x, int _y) const ; virtual const char* rawData( int _x, int _y ) const; -#if OPENSHIVA_13_OR_MORE virtual GTLCore::RegionI boundingBox() const; -#endif virtual ConstIterator* createIterator() const; virtual Iterator* createIterator(); private: @@ -50,9 +47,7 @@ virtual char* rawData( int _x, int _y ); virtual const char* data(int _x, int _y) const ; virtual const char* rawData( int _x, int _y ) const; -#if OPENSHIVA_13_OR_MORE virtual GTLCore::RegionI boundingBox() const; -#endif virtual ConstIterator* createIterator() const; virtual Iterator* createIterator(); private: diff -Nru calligra-2.3.86/krita/plugins/extensions/shiva/QVariantValue.cpp calligra-2.3.87/krita/plugins/extensions/shiva/QVariantValue.cpp --- calligra-2.3.86/krita/plugins/extensions/shiva/QVariantValue.cpp 2012-01-07 03:25:02.000000000 +0000 +++ calligra-2.3.87/krita/plugins/extensions/shiva/QVariantValue.cpp 2012-01-28 07:04:48.000000000 +0000 @@ -20,13 +20,10 @@ #include #include #include -#include "Version.h" #include "kis_debug.h" -#if OPENSHIVA_13_OR_MORE #include -#endif QVariant valueToQVariant(const GTLCore::Value& value) { @@ -47,11 +44,7 @@ case GTLCore::Type::FLOAT16: case GTLCore::Type::FLOAT32: case GTLCore::Type::FLOAT64: -#if OPENSHIVA_12 - return QVariant(value.asFloat()); -#else return QVariant(value.asFloat32()); -#endif case GTLCore::Type::ARRAY: case GTLCore::Type::VECTOR: { QList variant; @@ -60,14 +53,12 @@ } return QVariant(variant); } -#if OPENSHIVA_13_OR_MORE case GTLCore::Type::STRUCTURE: if (value.type() == GTLCore::Type::Color ) { GTLCore::Color c = value.asColor(); return QVariant(QColor(c.red() * 255, c.green() * 255, c.blue() * 255, c.alpha() * 255) ); } -#endif } errKrita << "Unsupported type:" << value.type(); qFatal("exiting on fatal error"); @@ -104,7 +95,6 @@ } return GTLCore::Value(values, _type); } -#if OPENSHIVA_13_OR_MORE case GTLCore::Type::STRUCTURE: { if (_type == GTLCore::Type::Color) { QColor c = variant.value(); @@ -112,7 +102,6 @@ return GTLCore::Value(GTLCore::Color(c.red() / 255.0, c.green() / 255.0, c.blue() / 255.0, c.alpha() / 255.0)); } } -#endif default: case GTLCore::Type::UNDEFINED: { qFatal("Unsupported type: %i", variant.type()); diff -Nru calligra-2.3.86/krita/plugins/extensions/shiva/shivafilter.cpp calligra-2.3.87/krita/plugins/extensions/shiva/shivafilter.cpp --- calligra-2.3.86/krita/plugins/extensions/shiva/shivafilter.cpp 2012-01-07 03:25:02.000000000 +0000 +++ calligra-2.3.87/krita/plugins/extensions/shiva/shivafilter.cpp 2012-01-28 07:04:48.000000000 +0000 @@ -29,11 +29,11 @@ #include "QVariantValue.h" #include #include -#include METADATA_HEADER +#include #include -#include "Version.h" #include "UpdaterProgressReport.h" +#include extern QMutex* shivaMutex; @@ -75,18 +75,13 @@ // TODO support for selection OpenShiva::Kernel kernel; kernel.setSource(*m_source); - if (config) { QMap map = config->getProperties(); for (QMap::iterator it = map.begin(); it != map.end(); ++it) { dbgPlugins << it.key() << " " << it.value(); const GTLCore::Metadata::Entry* entry = kernel.metadata()->parameter(it.key().toAscii().data()); if (entry && entry->asParameterEntry()) { -#if OPENSHIVA_12 - GTLCore::Value val = qvariantToValue(it.value(), entry->asParameterEntry()->valueType()); -#else GTLCore::Value val = qvariantToValue(it.value(), entry->asParameterEntry()->type()); -#endif if(val.isValid()) { kernel.setParameter(it.key().toAscii().data(), val); @@ -94,6 +89,11 @@ } } } + + kernel.setParameter(OpenShiva::Kernel::IMAGE_WIDTH, float(dev->defaultBounds()->bounds().width())); + kernel.setParameter(OpenShiva::Kernel::IMAGE_HEIGHT, float(dev->defaultBounds()->bounds().height())); + + KisGtlLocker gtlLocker; { dbgPlugins << "Compile: " << m_source->name().c_str(); QMutexLocker l(shivaMutex); @@ -102,20 +102,11 @@ if (kernel.isCompiled()) { ConstPaintDeviceImage pdisrc(dev); PaintDeviceImage pdi(dev); -#if OPENSHIVA_12 - std::list< GTLCore::AbstractImage* > inputs; - GTLCore::Region region(dstTopLeft.x(), dstTopLeft.y() , size.width(), size.height()); -#else std::list< const GTLCore::AbstractImage* > inputs; GTLCore::RegionI region(dstTopLeft.x(), dstTopLeft.y() , size.width(), size.height()); -#endif inputs.push_back(&pdisrc); dbgPlugins << "Run: " << m_source->name().c_str() << " " << dstTopLeft << " " << size; -#if OPENSHIVA_12 - kernel.evaluatePixeles(region, inputs, &pdi, report); -#else kernel.evaluatePixels(region, inputs, &pdi, report ); -#endif } } diff -Nru calligra-2.3.86/krita/plugins/extensions/shiva/shivafiltersplugin.cpp calligra-2.3.87/krita/plugins/extensions/shiva/shivafiltersplugin.cpp --- calligra-2.3.86/krita/plugins/extensions/shiva/shivafiltersplugin.cpp 2012-01-07 03:25:02.000000000 +0000 +++ calligra-2.3.87/krita/plugins/extensions/shiva/shivafiltersplugin.cpp 2012-01-28 07:04:48.000000000 +0000 @@ -30,11 +30,7 @@ #include "shivafilter.h" -#include "Version.h" - -#if OPENSHIVA_13_OR_MORE #include -#endif QMutex* shivaMutex; @@ -55,7 +51,6 @@ { KisFilterRegistry * manager = KisFilterRegistry::instance(); Q_ASSERT(manager); -#if OPENSHIVA_13_OR_MORE std::list< OpenShiva::Source > kernels = m_sourceCollection->sources(OpenShiva::Source::FilterKernel); dbgPlugins << "Collection has " << kernels.size() << " filters"; foreach(OpenShiva::Source kernel, kernels) { @@ -64,15 +59,6 @@ manager->add(new ShivaFilter(new OpenShiva::Source(kernel))); } } -#else - std::list< OpenShiva::Source* > kernels = m_sourceCollection->sources(OpenShiva::Source::FilterKernel); - dbgPlugins << "Collection has " << kernels.size() << " filters"; - foreach(OpenShiva::Source* kernel, kernels) { - if (kernel->outputImageType() == OpenShiva::Source::Image && kernel->inputImageType(0) == OpenShiva::Source::Image) { - manager->add(new ShivaFilter(kernel)); - } - } -#endif } shivaMutex = new QMutex; } diff -Nru calligra-2.3.86/krita/plugins/extensions/shiva/ShivaGeneratorConfigWidget.cpp calligra-2.3.87/krita/plugins/extensions/shiva/ShivaGeneratorConfigWidget.cpp --- calligra-2.3.86/krita/plugins/extensions/shiva/ShivaGeneratorConfigWidget.cpp 2012-01-07 03:25:02.000000000 +0000 +++ calligra-2.3.87/krita/plugins/extensions/shiva/ShivaGeneratorConfigWidget.cpp 2012-01-28 07:04:48.000000000 +0000 @@ -23,9 +23,8 @@ #include "filter/kis_filter_configuration.h" #include "QVariantValue.h" -#include "Version.h" -#include METADATA_HEADER +#include ShivaGeneratorConfigWidget::ShivaGeneratorConfigWidget(const OpenShiva::Source* _source, QWidget* parent) : KisConfigWidget(parent), m_source(_source), m_widget(new QtShiva::SourceParametersWidget(this)) @@ -45,11 +44,7 @@ for (QMap::iterator it = map.begin(); it != map.end(); ++it) { const GTLCore::Metadata::Entry* entry = m_source->metadata()->parameter(it.key().toAscii().data()); if (entry && entry->asParameterEntry()) { -#if OPENSHIVA_12 - GTLCore::Value val = qvariantToValue(it.value(), entry->asParameterEntry()->valueType()); -#else GTLCore::Value val = qvariantToValue(it.value(), entry->asParameterEntry()->type()); -#endif if (val.isValid()) { m_widget->setParameter(it.key().toAscii().data(), val); } diff -Nru calligra-2.3.86/krita/plugins/extensions/shiva/shivagenerator.cpp calligra-2.3.87/krita/plugins/extensions/shiva/shivagenerator.cpp --- calligra-2.3.86/krita/plugins/extensions/shiva/shivagenerator.cpp 2012-01-07 03:25:02.000000000 +0000 +++ calligra-2.3.87/krita/plugins/extensions/shiva/shivagenerator.cpp 2012-01-28 07:04:48.000000000 +0000 @@ -30,17 +30,15 @@ #include #include -#include "Version.h" -#include METADATA_HEADER +#include #include "PaintDeviceImage.h" #include "QVariantValue.h" #include "UpdaterProgressReport.h" -#if OPENSHIVA_13_OR_MORE #include "GTLCore/CompilationMessages.h" -#endif +#include extern QMutex* shivaMutex; @@ -84,11 +82,7 @@ for (QMap::iterator it = map.begin(); it != map.end(); ++it) { const GTLCore::Metadata::Entry* entry = kernel.metadata()->parameter(it.key().toAscii().data()); if (entry && entry->asParameterEntry()) { -#if OPENSHIVA_12 - GTLCore::Value val = qvariantToValue(it.value(), entry->asParameterEntry()->valueType()); -#else GTLCore::Value val = qvariantToValue(it.value(), entry->asParameterEntry()->type()); -#endif if(val.isValid()) { kernel.setParameter(it.key().toAscii().data(), val); @@ -96,25 +90,20 @@ } } } + kernel.setParameter(OpenShiva::Kernel::IMAGE_WIDTH, float(dstInfo.paintDevice()->defaultBounds()->bounds().width())); + kernel.setParameter(OpenShiva::Kernel::IMAGE_HEIGHT, float(dstInfo.paintDevice()->defaultBounds()->bounds().height())); + KisGtlLocker gtlLocker; { QMutexLocker l(shivaMutex); kernel.compile(); } if (kernel.isCompiled()) { PaintDeviceImage pdi(dst); -#if OPENSHIVA_12 - std::list< GTLCore::AbstractImage* > inputs; - GTLCore::Region region(dstTopLeft.x(), dstTopLeft.y() , size.width(), size.height()); - kernel.evaluatePixeles(region, inputs, &pdi, report ); -#else std::list< const GTLCore::AbstractImage* > inputs; GTLCore::RegionI region(dstTopLeft.x(), dstTopLeft.y() , size.width(), size.height()); kernel.evaluatePixels(region, inputs, &pdi, report ); -#endif } -#if OPENSHIVA_13_OR_MORE else { dbgPlugins << "Error: " << kernel.compilationMessages().toString().c_str(); } -#endif } diff -Nru calligra-2.3.86/krita/plugins/extensions/shiva/shivageneratorsplugin.cpp calligra-2.3.87/krita/plugins/extensions/shiva/shivageneratorsplugin.cpp --- calligra-2.3.86/krita/plugins/extensions/shiva/shivageneratorsplugin.cpp 2012-01-07 03:25:02.000000000 +0000 +++ calligra-2.3.87/krita/plugins/extensions/shiva/shivageneratorsplugin.cpp 2012-01-28 07:04:48.000000000 +0000 @@ -29,11 +29,8 @@ #include #include "shivagenerator.h" -#include "Version.h" -#if OPENSHIVA_13_OR_MORE #include -#endif QMutex* shivaMutex; @@ -54,7 +51,6 @@ { KisGeneratorRegistry * manager = KisGeneratorRegistry::instance(); Q_ASSERT(manager); -#if OPENSHIVA_13_OR_MORE std::list< OpenShiva::Source > kernels = m_sourceCollection->sources(OpenShiva::Source::GeneratorKernel); dbgPlugins << "Collection has " << kernels.size() << " generators"; @@ -64,15 +60,6 @@ manager->add(new ShivaGenerator(new OpenShiva::Source(kernel))); } } -#else - std::list< OpenShiva::Source* > kernels = m_sourceCollection->sources(OpenShiva::Source::GeneratorKernel); - - foreach(OpenShiva::Source* kernel, kernels) { - if (kernel->outputImageType() == OpenShiva::Source::Image || kernel->outputImageType() == OpenShiva::Source::Image4) { - manager->add(new ShivaGenerator(kernel)); - } - } -#endif } shivaMutex = new QMutex; } diff -Nru calligra-2.3.86/krita/plugins/extensions/shiva/Version.h calligra-2.3.87/krita/plugins/extensions/shiva/Version.h --- calligra-2.3.86/krita/plugins/extensions/shiva/Version.h 2012-01-07 03:25:02.000000000 +0000 +++ calligra-2.3.87/krita/plugins/extensions/shiva/Version.h 1970-01-01 00:00:00.000000000 +0000 @@ -1,30 +0,0 @@ -/* - * Copyright (c) 2009 Cyrille Berger - * - * This program is free software; you can redistribute it and/or modify - * it under the terms of the GNU Lesser General Public License as published by - * the Free Software Foundation; version 2 of the License. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU Lesser General Public License - * along with this program; if not, write to the Free Software - * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. - */ - -#include -#include - - -#define OPENSHIVA_12 KDE_MAKE_VERSION(OPENSHIVA_VERSION_MAJOR, OPENSHIVA_VERSION_MINOR, OPENSHIVA_VERSION_REVISION) == KDE_MAKE_VERSION(0, 9, 12) -#define OPENSHIVA_13_OR_MORE KDE_MAKE_VERSION(OPENSHIVA_VERSION_MAJOR, OPENSHIVA_VERSION_MINOR, OPENSHIVA_VERSION_REVISION) >= KDE_MAKE_VERSION(0, 9, 13) -#define OPENSHIVA_16_OR_MORE KDE_MAKE_VERSION(OPENSHIVA_VERSION_MAJOR, OPENSHIVA_VERSION_MINOR, OPENSHIVA_VERSION_REVISION) >= KDE_MAKE_VERSION(0, 9, 16) - -#if OPENSHIVA_16_OR_MORE -#define METADATA_HEADER -#else -#define METADATA_HEADER -#endif diff -Nru calligra-2.3.86/krita/plugins/filters/phongbumpmap/kis_phong_bumpmap_config_widget.cpp calligra-2.3.87/krita/plugins/filters/phongbumpmap/kis_phong_bumpmap_config_widget.cpp --- calligra-2.3.86/krita/plugins/filters/phongbumpmap/kis_phong_bumpmap_config_widget.cpp 2012-01-07 03:25:02.000000000 +0000 +++ calligra-2.3.87/krita/plugins/filters/phongbumpmap/kis_phong_bumpmap_config_widget.cpp 2012-01-28 07:04:48.000000000 +0000 @@ -30,6 +30,7 @@ Q_ASSERT(m_device); m_page = new KisPhongBumpmapWidget(this); + // Connect widgets to each other connect(m_page->azimuthDial1, SIGNAL(valueChanged(int)), m_page->azimuthSpinBox1, SLOT(setValue(int))); connect(m_page->azimuthDial2, SIGNAL(valueChanged(int)), m_page->azimuthSpinBox2, SLOT(setValue(int))); connect(m_page->azimuthDial3, SIGNAL(valueChanged(int)), m_page->azimuthSpinBox3, SLOT(setValue(int))); @@ -48,6 +49,38 @@ connect(m_page->specularReflectivityCheckBox, SIGNAL(toggled(bool)), m_page->shinynessExponentLabel, SLOT(setEnabled(bool))); + //Let widgets warn the preview of when they are updated + connect(m_page->azimuthDial1, SIGNAL(valueChanged(int)), SIGNAL(sigConfigurationItemChanged())); + connect(m_page->azimuthDial2, SIGNAL(valueChanged(int)), SIGNAL(sigConfigurationItemChanged())); + connect(m_page->azimuthDial3, SIGNAL(valueChanged(int)), SIGNAL(sigConfigurationItemChanged())); + connect(m_page->azimuthDial4, SIGNAL(valueChanged(int)), SIGNAL(sigConfigurationItemChanged())); + + connect(m_page->lightKColorCombo1, SIGNAL(currentIndexChanged(int)), SIGNAL(sigConfigurationItemChanged())); + connect(m_page->lightKColorCombo2, SIGNAL(currentIndexChanged(int)), SIGNAL(sigConfigurationItemChanged())); + connect(m_page->lightKColorCombo3, SIGNAL(currentIndexChanged(int)), SIGNAL(sigConfigurationItemChanged())); + connect(m_page->lightKColorCombo4, SIGNAL(currentIndexChanged(int)), SIGNAL(sigConfigurationItemChanged())); + + connect(m_page->inclinationSpinBox1, SIGNAL(valueChanged(int)), SIGNAL(sigConfigurationItemChanged())); + connect(m_page->inclinationSpinBox2, SIGNAL(valueChanged(int)), SIGNAL(sigConfigurationItemChanged())); + connect(m_page->inclinationSpinBox3, SIGNAL(valueChanged(int)), SIGNAL(sigConfigurationItemChanged())); + connect(m_page->inclinationSpinBox4, SIGNAL(valueChanged(int)), SIGNAL(sigConfigurationItemChanged())); + + connect(m_page->diffuseReflectivityCheckBox, SIGNAL(stateChanged(int)), SIGNAL(sigConfigurationItemChanged())); + connect(m_page->specularReflectivityCheckBox, SIGNAL(stateChanged(int)), SIGNAL(sigConfigurationItemChanged())); + + connect(m_page->ambientReflectivityKisDoubleSliderSpinBox, SIGNAL(valueChanged(qreal)), SIGNAL(sigConfigurationItemChanged())); + connect(m_page->diffuseReflectivityKisDoubleSliderSpinBox, SIGNAL(valueChanged(qreal)), SIGNAL(sigConfigurationItemChanged())); + connect(m_page->specularReflectivityKisDoubleSliderSpinBox, SIGNAL(valueChanged(qreal)), SIGNAL(sigConfigurationItemChanged())); + connect(m_page->shinynessExponentKisSliderSpinBox, SIGNAL(valueChanged(int)), SIGNAL(sigConfigurationItemChanged())); + + connect(m_page->heightChannelComboBox, SIGNAL(currentIndexChanged(int)), SIGNAL(sigConfigurationItemChanged())); + + connect(m_page->lightSourceGroupBox1, SIGNAL(toggled(bool)), SIGNAL(sigConfigurationItemChanged())); + connect(m_page->lightSourceGroupBox2, SIGNAL(toggled(bool)), SIGNAL(sigConfigurationItemChanged())); + connect(m_page->lightSourceGroupBox3, SIGNAL(toggled(bool)), SIGNAL(sigConfigurationItemChanged())); + connect(m_page->lightSourceGroupBox4, SIGNAL(toggled(bool)), SIGNAL(sigConfigurationItemChanged())); + + QVBoxLayout *l = new QVBoxLayout(this); Q_CHECK_PTR(l); diff -Nru calligra-2.3.86/krita/plugins/filters/phongbumpmap/kis_phong_bumpmap_filter.cpp calligra-2.3.87/krita/plugins/filters/phongbumpmap/kis_phong_bumpmap_filter.cpp --- calligra-2.3.86/krita/plugins/filters/phongbumpmap/kis_phong_bumpmap_filter.cpp 2012-01-07 03:25:02.000000000 +0000 +++ calligra-2.3.87/krita/plugins/filters/phongbumpmap/kis_phong_bumpmap_filter.cpp 2012-01-28 07:04:48.000000000 +0000 @@ -70,14 +70,14 @@ } QRect inputArea = applyRect; + QRect outputArea = applyRect; + inputArea.adjust(-1, -1, 1, 1); - QRect outputArea = inputArea.adjusted(1, 1, -1, -1); quint32 posup; quint32 posdown; quint32 posleft; quint32 posright; - QRect tileLimits; QColor I; //Reflected light if (progressUpdater) progressUpdater->setProgress(1); @@ -107,16 +107,16 @@ return; } - KisHLineIteratorSP iterator; + KisHLineConstIteratorSP iterator; quint32 curPixel = 0; - iterator = device->createHLineIteratorNG(inputArea.x(), + iterator = device->createHLineConstIteratorNG(inputArea.x(), inputArea.y(), inputArea.width() ); for (qint32 srcRow = 0; srcRow < inputArea.height(); ++srcRow) { do { - const quint8 *data = iterator->rawData(); + const quint8 *data = iterator->oldRawData(); tileRenderer.realheightmap[curPixel] = toDoubleFuncPtr[ki](data, device->colorSpace()->channels()[ki]->pos()); curPixel++; } @@ -161,7 +161,30 @@ KisFilterConfiguration *KisFilterPhongBumpmap::factoryConfiguration(const KisPaintDeviceSP) const { - KisFilterConfiguration *config = new KisFilterConfiguration(id(), 0); + KisFilterConfiguration *config = new KisFilterConfiguration(id(), 2); + config->setProperty(PHONG_AMBIENT_REFLECTIVITY, 0.2); + config->setProperty(PHONG_DIFFUSE_REFLECTIVITY, 0.5); + config->setProperty(PHONG_SPECULAR_REFLECTIVITY, 0.3); + config->setProperty(PHONG_SHINYNESS_EXPONENT, 2); + config->setProperty(PHONG_DIFFUSE_REFLECTIVITY_IS_ENABLED, true); + config->setProperty(PHONG_SPECULAR_REFLECTIVITY_IS_ENABLED, true); + // Indexes are off by 1 simply because arrays start at 0 and the GUI naming scheme started at 1 + config->setProperty(PHONG_ILLUMINANT_IS_ENABLED[0], true); + config->setProperty(PHONG_ILLUMINANT_IS_ENABLED[1], true); + config->setProperty(PHONG_ILLUMINANT_IS_ENABLED[2], false); + config->setProperty(PHONG_ILLUMINANT_IS_ENABLED[3], false); + config->setProperty(PHONG_ILLUMINANT_COLOR[0], QColor(255, 255, 0)); + config->setProperty(PHONG_ILLUMINANT_COLOR[1], QColor(255, 0, 0)); + config->setProperty(PHONG_ILLUMINANT_COLOR[2], QColor(0, 0, 255)); + config->setProperty(PHONG_ILLUMINANT_COLOR[3], QColor(0, 255, 0)); + config->setProperty(PHONG_ILLUMINANT_AZIMUTH[0], 50); + config->setProperty(PHONG_ILLUMINANT_AZIMUTH[1], 100); + config->setProperty(PHONG_ILLUMINANT_AZIMUTH[2], 150); + config->setProperty(PHONG_ILLUMINANT_AZIMUTH[3], 200); + config->setProperty(PHONG_ILLUMINANT_INCLINATION[0], 25); + config->setProperty(PHONG_ILLUMINANT_INCLINATION[1], 20); + config->setProperty(PHONG_ILLUMINANT_INCLINATION[2], 30); + config->setProperty(PHONG_ILLUMINANT_INCLINATION[3], 40); return config; } @@ -172,7 +195,7 @@ QRect KisFilterPhongBumpmap::changedRect(const QRect &rect, const KisFilterConfiguration* /*config*/) const { - return rect.adjusted(-1, -1, 1, 1); + return rect; } KisConfigWidget *KisFilterPhongBumpmap::createConfigurationWidget(QWidget *parent, const KisPaintDeviceSP dev, const KisImageWSP image) const diff -Nru calligra-2.3.86/krita/plugins/filters/phongbumpmap/phong_pixel_processor.cpp calligra-2.3.87/krita/plugins/filters/phongbumpmap/phong_pixel_processor.cpp --- calligra-2.3.86/krita/plugins/filters/phongbumpmap/phong_pixel_processor.cpp 2012-01-07 03:25:02.000000000 +0000 +++ calligra-2.3.87/krita/plugins/filters/phongbumpmap/phong_pixel_processor.cpp 2012-01-28 07:04:48.000000000 +0000 @@ -1,5 +1,5 @@ /* -* Copyright (c) 2010-2011 José Luis Vergara +* Copyright (c) 2010-2012 José Luis Vergara * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by @@ -60,10 +60,14 @@ azimuth = config->getInt(PHONG_ILLUMINANT_AZIMUTH[i]); inclination = config->getInt(PHONG_ILLUMINANT_INCLINATION[i]); - light[i].lightVector.setX( cos( azimuth * M_PI / 180 ) ); - light[i].lightVector.setY( sin( azimuth * M_PI / 180 ) ); - light[i].lightVector.setZ( cos( inclination * M_PI / 180 ) ); - + + qreal m; //2D vector magnitude + light[i].lightVector.setZ( sin( inclination * M_PI / 180 ) ); + m = cos( inclination * M_PI / 180); + + light[i].lightVector.setX( cos( azimuth * M_PI / 180 ) * m ); + light[i].lightVector.setY( sin( azimuth * M_PI / 180 ) * m ); + //Pay close attention to this, indexes will move in this line lightSources.append(light[i]); } diff -Nru calligra-2.3.86/krita/plugins/filters/randompickfilter/randompickfilter.cpp calligra-2.3.87/krita/plugins/filters/randompickfilter/randompickfilter.cpp --- calligra-2.3.86/krita/plugins/filters/randompickfilter/randompickfilter.cpp 2012-01-07 03:25:02.000000000 +0000 +++ calligra-2.3.87/krita/plugins/filters/randompickfilter/randompickfilter.cpp 2012-01-28 07:04:48.000000000 +0000 @@ -21,6 +21,7 @@ #include "randompickfilter.h" #include #include +#include #include @@ -94,6 +95,7 @@ QVariant value; int level = (config && config->getProperty("level", value)) ? value.toInt() : 50; int opacity = (config && config->getProperty("opacity", value)) ? value.toInt() : 100; + double windowsize = (config && config->getProperty("windowsize", value)) ? value.toDouble() : 2.5; int seedThreshold = rand(); int seedH = rand(); @@ -119,8 +121,8 @@ KoMixColorsOp * mixOp = cs->mixColorsOp(); do{ if (randT.doubleRandomAt(dstIt->x(), dstIt->y()) > threshold) { - int x = static_cast(dstIt->x() + 2.5 * randH.doubleRandomAt(dstIt->x(), dstIt->y())); - int y = static_cast(dstIt->y() + 2.5 * randH.doubleRandomAt(dstIt->x(), dstIt->y())); + int x = static_cast(dstIt->x() + windowsize * (randH.doubleRandomAt(dstIt->x(), dstIt->y()) - 0.5)); + int y = static_cast(dstIt->y() + windowsize * (randV.doubleRandomAt(dstIt->x(), dstIt->y()) -0.5)); srcRA->moveTo(x, y); pixels[0] = srcRA->oldRawData(); pixels[1] = dstIt->oldRawData(); @@ -150,3 +152,10 @@ return config; } + +QRect KisFilterRandomPick::neededRect(const QRect& rect, const KisFilterConfiguration* config) const +{ + QVariant value; + int windowsize = ceil((config && config->getProperty("windowsize", value)) ? value.toDouble() : 2.5); + return rect.adjusted(-windowsize, -windowsize, windowsize, windowsize); +} diff -Nru calligra-2.3.86/krita/plugins/filters/randompickfilter/randompickfilter.h calligra-2.3.87/krita/plugins/filters/randompickfilter/randompickfilter.h --- calligra-2.3.86/krita/plugins/filters/randompickfilter/randompickfilter.h 2012-01-07 03:25:02.000000000 +0000 +++ calligra-2.3.87/krita/plugins/filters/randompickfilter/randompickfilter.h 2012-01-28 07:04:48.000000000 +0000 @@ -53,6 +53,8 @@ virtual KisFilterConfiguration* factoryConfiguration(const KisPaintDeviceSP) const; public: virtual KisConfigWidget * createConfigurationWidget(QWidget* parent, const KisPaintDeviceSP dev, const KisImageWSP image = 0) const; + + virtual QRect neededRect(const QRect& rect, const KisFilterConfiguration* config = 0) const; }; #endif diff -Nru calligra-2.3.86/krita/plugins/filters/roundcorners/kis_round_corners_filter.cpp calligra-2.3.87/krita/plugins/filters/roundcorners/kis_round_corners_filter.cpp --- calligra-2.3.86/krita/plugins/filters/roundcorners/kis_round_corners_filter.cpp 2012-01-07 03:25:02.000000000 +0000 +++ calligra-2.3.87/krita/plugins/filters/roundcorners/kis_round_corners_filter.cpp 2012-01-28 07:04:48.000000000 +0000 @@ -80,15 +80,13 @@ } qint32 width = applyRect.width(); - qint32 height = applyRect.height(); KisHLineIteratorSP dstIt = device->createHLineIteratorNG(applyRect.x(), applyRect.y(), width); const KoColorSpace* cs = device->colorSpace(); - qint32 x0 = srcTopLeft.x(); - qint32 y0 = srcTopLeft.y(); - for (qint32 y = 0; y < applyRect.height(); y++) { + QRect bounds = device->defaultBounds()->bounds(); + for (qint32 y = applyRect.y(); y < applyRect.y() + applyRect.height(); y++) { qint32 x = applyRect.x(); do { if (x <= radius && y <= radius) { @@ -98,24 +96,24 @@ if (dx >= sqrt(dradius*dradius - dy*dy)) { cs->setOpacity(dstIt->rawData(), OPACITY_TRANSPARENT_U8, 1); } - } else if (x >= x0 + width - radius && y <= radius) { - double dx = x + radius - x0 - width; + } else if (x >= bounds.width() - radius && y <= radius) { + double dx = x + radius - bounds.width(); double dy = radius - y; double dradius = static_cast(radius); if (dx >= sqrt(dradius*dradius - dy*dy)) { cs->setOpacity(dstIt->rawData(), OPACITY_TRANSPARENT_U8, 1); } - } else if (x <= radius && y >= y0 + height - radius) { + } else if (x <= radius && y >= bounds.height() - radius) { double dx = radius - x; - double dy = y + radius - y0 - height; + double dy = y + radius - bounds.height(); double dradius = static_cast(radius); if (dx >= sqrt(dradius*dradius - dy*dy)) { cs->setOpacity(dstIt->rawData(), OPACITY_TRANSPARENT_U8, 1); } - } else if (x >= x0 + width - radius && y >= y0 + height - radius) { + } else if (x >= bounds.width() - radius && y >= bounds.height() - radius) { - double dx = x + radius - x0 - width; - double dy = y + radius - y0 - height; + double dx = x + radius - bounds.width() ; + double dy = y + radius - bounds.height(); double dradius = static_cast(radius); if (dx >= sqrt(dradius*dradius - dy*dy)) { cs->setOpacity(dstIt->rawData(), OPACITY_TRANSPARENT_U8, 1); diff -Nru calligra-2.3.86/krita/plugins/filters/wavefilter/wavefilter.cpp calligra-2.3.87/krita/plugins/filters/wavefilter/wavefilter.cpp --- calligra-2.3.86/krita/plugins/filters/wavefilter/wavefilter.cpp 2012-01-07 03:25:02.000000000 +0000 +++ calligra-2.3.87/krita/plugins/filters/wavefilter/wavefilter.cpp 2012-01-28 07:04:48.000000000 +0000 @@ -175,10 +175,10 @@ delete verticalcurve; } -int KisFilterWave::overlapMarginNeeded(const KisFilterConfiguration* config) const +QRect KisFilterWave::neededRect(const QRect& rect, const KisFilterConfiguration* config) const { QVariant value; int horizontalamplitude = (config && config->getProperty("horizontalamplitude", value)) ? value.toInt() : 4; int verticalamplitude = (config && config->getProperty("verticalamplitude", value)) ? value.toInt() : 4; - return qMax(horizontalamplitude, verticalamplitude) ; + return rect.adjusted(-horizontalamplitude, -verticalamplitude, horizontalamplitude, verticalamplitude); } diff -Nru calligra-2.3.86/krita/plugins/filters/wavefilter/wavefilter.h calligra-2.3.87/krita/plugins/filters/wavefilter/wavefilter.h --- calligra-2.3.86/krita/plugins/filters/wavefilter/wavefilter.h 2012-01-07 03:25:02.000000000 +0000 +++ calligra-2.3.87/krita/plugins/filters/wavefilter/wavefilter.h 2012-01-28 07:04:48.000000000 +0000 @@ -55,7 +55,7 @@ virtual KisFilterConfiguration* factoryConfiguration(const KisPaintDeviceSP) const; public: - virtual int overlapMarginNeeded(const KisFilterConfiguration* _config) const; + virtual QRect neededRect(const QRect& rect, const KisFilterConfiguration* config = 0) const; virtual KisConfigWidget * createConfigurationWidget(QWidget* parent, const KisPaintDeviceSP dev, const KisImageWSP image = 0) const; }; diff -Nru calligra-2.3.86/krita/plugins/formats/odg/kis_odg_import.cc calligra-2.3.87/krita/plugins/formats/odg/kis_odg_import.cc --- calligra-2.3.86/krita/plugins/formats/odg/kis_odg_import.cc 2012-01-07 03:25:02.000000000 +0000 +++ calligra-2.3.87/krita/plugins/formats/odg/kis_odg_import.cc 2012-01-28 07:04:48.000000000 +0000 @@ -29,7 +29,6 @@ #include #include #include -#include #include #include @@ -135,14 +134,12 @@ KisImageWSP image = new KisImage(doc->createUndoStore(), width, height, cs, "built image"); doc->setCurrentImage(image); - KisLayerContainerShape *container = - dynamic_cast(doc->shapeForNode(image->rootLayer().data())); - + KoShapeLayer *rootLayer = doc->shapeForNode(image->root()); KoXmlElement layerElement; forEachElement(layerElement, KoXml::namedItemNS(page, KoXmlNS::draw, "layer-set")) { - KisShapeLayerSP shapeLayer = new KisShapeLayer(container, doc->shapeController(), image, + KisShapeLayerSP shapeLayer = new KisShapeLayer(rootLayer, doc->shapeController(), image, i18n("Vector Layer"), OPACITY_OPAQUE_U8); if (!shapeLayer->loadOdf(layerElement, shapeContext)) { diff -Nru calligra-2.3.86/krita/plugins/formats/odg/krita_odg_import.desktop calligra-2.3.87/krita/plugins/formats/odg/krita_odg_import.desktop --- calligra-2.3.86/krita/plugins/formats/odg/krita_odg_import.desktop 2012-01-07 03:25:02.000000000 +0000 +++ calligra-2.3.87/krita/plugins/formats/odg/krita_odg_import.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -3,6 +3,7 @@ Name=Krita ODG Import Filter Name[bg]=Филтър за внасяне от ODG в Krita Name[ca]=Filtre d'importació ODG per al Krita +Name[ca@valencia]=Filtre d'importació ODG per al Krita Name[cs]=Importní filtr formátu ODG pro Kritu Name[da]=ODG-importfilter til Krita Name[de]=Krita-ODG-Importfilter diff -Nru calligra-2.3.86/krita/plugins/paintops/colorsmudge/kritacolorsmudgepaintop.desktop calligra-2.3.87/krita/plugins/paintops/colorsmudge/kritacolorsmudgepaintop.desktop --- calligra-2.3.86/krita/plugins/paintops/colorsmudge/kritacolorsmudgepaintop.desktop 2012-01-07 03:25:02.000000000 +0000 +++ calligra-2.3.87/krita/plugins/paintops/colorsmudge/kritacolorsmudgepaintop.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -1,6 +1,7 @@ [Desktop Entry] Name=Color Smudge Brush Name[ca]=Pinzell d'esborronat de color +Name[ca@valencia]=Pinzell d'esborronat de color Name[da]=Farveudtværingspensel Name[de]=Farbwischpinsel Name[el]=Έγχρωμο πινέλο αποτύπωσης κηλίδων diff -Nru calligra-2.3.86/krita/plugins/paintops/curvebrush/kis_curves_opacity_option.cpp calligra-2.3.87/krita/plugins/paintops/curvebrush/kis_curves_opacity_option.cpp --- calligra-2.3.86/krita/plugins/paintops/curvebrush/kis_curves_opacity_option.cpp 2012-01-07 03:25:02.000000000 +0000 +++ calligra-2.3.87/krita/plugins/paintops/curvebrush/kis_curves_opacity_option.cpp 2012-01-28 07:04:48.000000000 +0000 @@ -27,7 +27,7 @@ } -double KisCurvesOpacityOption::apply(const KisPaintInformation & info, qreal opacity) const +qreal KisCurvesOpacityOption::apply(const KisPaintInformation & info, qreal opacity) const { if (!isChecked()) { return opacity; diff -Nru calligra-2.3.86/krita/plugins/paintops/curvebrush/kis_curves_opacity_option.h calligra-2.3.87/krita/plugins/paintops/curvebrush/kis_curves_opacity_option.h --- calligra-2.3.86/krita/plugins/paintops/curvebrush/kis_curves_opacity_option.h 2012-01-07 03:25:02.000000000 +0000 +++ calligra-2.3.87/krita/plugins/paintops/curvebrush/kis_curves_opacity_option.h 2012-01-28 07:04:48.000000000 +0000 @@ -26,7 +26,7 @@ { public: KisCurvesOpacityOption(); - double apply(const KisPaintInformation & info, double opacity) const; + qreal apply(const KisPaintInformation & info, qreal opacity) const; }; #endif diff -Nru calligra-2.3.86/krita/plugins/paintops/libbrush/kis_brush.cpp calligra-2.3.87/krita/plugins/paintops/libbrush/kis_brush.cpp --- calligra-2.3.86/krita/plugins/paintops/libbrush/kis_brush.cpp 2012-01-07 03:25:02.000000000 +0000 +++ calligra-2.3.87/krita/plugins/paintops/libbrush/kis_brush.cpp 2012-01-28 07:04:48.000000000 +0000 @@ -138,10 +138,10 @@ d->hotSpot = rhs.d->hotSpot; d->scaledBrushes.clear(); d->hasColor = rhs.d->hasColor; - d->boundary = rhs.d->boundary; d->angle = rhs.d->angle; d->scale = rhs.d->scale; setFilename(rhs.filename()); + // don't copy the boundery, it will be regenerated -- see bug 291910 } KisBrush::~KisBrush() diff -Nru calligra-2.3.86/krita/plugins/paintops/libpaintop/kis_brush_option.cpp calligra-2.3.87/krita/plugins/paintops/libpaintop/kis_brush_option.cpp --- calligra-2.3.86/krita/plugins/paintops/libpaintop/kis_brush_option.cpp 2012-01-07 03:25:02.000000000 +0000 +++ calligra-2.3.87/krita/plugins/paintops/libpaintop/kis_brush_option.cpp 2012-01-28 07:04:48.000000000 +0000 @@ -29,7 +29,7 @@ { if(!m_brush) return; - + QDomDocument d; QDomElement e = d.createElement( "Brush" ); m_brush->toXML( d, e ); @@ -43,10 +43,12 @@ void KisBrushOption::readOptionSetting(const KisPropertiesConfiguration* setting) { QString brushDefinition = setting->getString("brush_definition"); - QDomDocument d; - d.setContent( brushDefinition, false ); - QDomElement e = d.firstChildElement("Brush" ); - m_brush = KisBrush::fromXML( e ); + if (!brushDefinition.isEmpty()) { + QDomDocument d; + d.setContent( brushDefinition, false ); + QDomElement e = d.firstChildElement("Brush" ); + m_brush = KisBrush::fromXML( e ); + } } KisBrushSP KisBrushOption::brush() const diff -Nru calligra-2.3.86/krita/plugins/paintops/libpaintop/kis_custom_brush_widget.cpp calligra-2.3.87/krita/plugins/paintops/libpaintop/kis_custom_brush_widget.cpp --- calligra-2.3.86/krita/plugins/paintops/libpaintop/kis_custom_brush_widget.cpp 2012-01-07 03:25:02.000000000 +0000 +++ calligra-2.3.87/krita/plugins/paintops/libpaintop/kis_custom_brush_widget.cpp 2012-01-28 07:04:48.000000000 +0000 @@ -44,6 +44,7 @@ #include "kis_paint_layer.h" #include "kis_group_layer.h" #include +#include KisCustomBrushWidget::KisCustomBrushWidget(QWidget *parent, const QString& caption, KisImageWSP image) : KisWdgCustomBrush(parent) @@ -225,15 +226,18 @@ int w = m_image->width(); int h = m_image->height(); + m_image->lock(); + // We only loop over the rootLayer. Since we actually should have a layer selection // list, no need to elaborate on that here and now - KisLayer* layer = dynamic_cast(m_image->rootLayer()->firstChild().data()); - while (layer) { - KisPaintLayer* paint = 0; - if (layer->visible() && (paint = dynamic_cast(layer))) - devices[0].push_back(paint->paintDevice().data()); - layer = dynamic_cast(layer->nextSibling().data()); + KoProperties properties; + properties.setProperty("visible", true); + QList layers = m_image->root()->childNodes(QStringList("KisLayer"), properties); + KisNodeSP node; + foreach(KisNodeSP node, layers) { + devices[0].push_back(node->projection().data()); } + QVector modes; switch (comboBox2->currentIndex()) { @@ -246,6 +250,7 @@ } m_brush = new KisImagePipeBrush(m_image->objectName(), w, h, devices, modes); + m_image->unlock(); } static_cast( m_brush.data() )->setUseColorAsMask( colorAsMask->isChecked() ); diff -Nru calligra-2.3.86/krita/plugins/paintops/libpaintop/kis_filter_option.cpp calligra-2.3.87/krita/plugins/paintops/libpaintop/kis_filter_option.cpp --- calligra-2.3.86/krita/plugins/paintops/libpaintop/kis_filter_option.cpp 2012-01-07 03:25:02.000000000 +0000 +++ calligra-2.3.87/krita/plugins/paintops/libpaintop/kis_filter_option.cpp 2012-01-28 07:04:48.000000000 +0000 @@ -170,6 +170,8 @@ void KisFilterOption::writeOptionSetting(KisPropertiesConfiguration* setting) const { + if (!m_currentFilter) return; + setting->setProperty(FILTER_ID, m_currentFilter->id()); setting->setProperty(FILTER_IGNORE_ALPHA, ignoreAlpha()); if(filterConfig()) { diff -Nru calligra-2.3.86/krita/plugins/paintops/spray/kis_spray_paintop.cpp calligra-2.3.87/krita/plugins/paintops/spray/kis_spray_paintop.cpp --- calligra-2.3.86/krita/plugins/paintops/spray/kis_spray_paintop.cpp 2012-01-07 03:25:02.000000000 +0000 +++ calligra-2.3.87/krita/plugins/paintops/spray/kis_spray_paintop.cpp 2012-01-28 07:04:48.000000000 +0000 @@ -1,5 +1,5 @@ /* - * Copyright (c) 2008,2009,2010 Lukáš Tvrdý + * Copyright (c) 2008-2012 Lukáš Tvrdý * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by @@ -40,6 +40,7 @@ KisSprayPaintOp::KisSprayPaintOp(const KisSprayPaintOpSettings *settings, KisPainter * painter, KisImageWSP image) : KisPaintOp(painter) , m_settings(settings) + , m_isPresetValid(true) { Q_ASSERT(settings); Q_ASSERT(painter); @@ -62,8 +63,14 @@ // TODO: what to do with proportional sizes? m_shapeDynamicsProperties.loadSettings(settings); + if (!m_shapeProperties.enabled && !m_brushOption.brush()) { + // in case the preset does not contain the definition for KisBrush + m_isPresetValid = false; + kWarning() << "Preset is not valid. Painting is not possible. Use the preset editor to fix current brush engine preset."; + } + m_sprayBrush.setProperties( &m_properties,&m_colorProperties, - &m_shapeProperties, &m_shapeDynamicsProperties,m_brushOption.brush()); + &m_shapeProperties, &m_shapeDynamicsProperties, m_brushOption.brush()); m_sprayBrush.setFixedDab( cachedDab() ); @@ -82,7 +89,9 @@ qreal KisSprayPaintOp::paintAt(const KisPaintInformation& info) { - if (!painter()) return m_spacing; + if (!painter() || !m_isPresetValid) { + return m_spacing; + } if (!m_dab) { m_dab = new KisPaintDevice(painter()->device()->colorSpace()); diff -Nru calligra-2.3.86/krita/plugins/paintops/spray/kis_spray_paintop.h calligra-2.3.87/krita/plugins/paintops/spray/kis_spray_paintop.h --- calligra-2.3.86/krita/plugins/paintops/spray/kis_spray_paintop.h 2012-01-07 03:25:02.000000000 +0000 +++ calligra-2.3.87/krita/plugins/paintops/spray/kis_spray_paintop.h 2012-01-28 07:04:48.000000000 +0000 @@ -1,5 +1,5 @@ /* - * Copyright (c) 2008-2010 Lukáš Tvrdý + * Copyright (c) 2008-2012 Lukáš Tvrdý * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by @@ -46,16 +46,16 @@ KisShapeDynamicsProperties m_shapeDynamicsProperties; KisColorProperties m_colorProperties; KisBrushOption m_brushOption; - + const KisSprayPaintOpSettings *m_settings; KisPaintDeviceSP m_dab; SprayBrush m_sprayBrush; qreal m_xSpacing, m_ySpacing, m_spacing; + bool m_isPresetValid; KisPressureRotationOption m_rotationOption; KisPressureSizeOption m_sizeOption; KisPressureOpacityOption m_opacityOption; - }; #endif // KIS_SPRAY_PAINTOP_H_ diff -Nru calligra-2.3.86/krita/plugins/tools/defaulttools/kis_tool_move.cc calligra-2.3.87/krita/plugins/tools/defaulttools/kis_tool_move.cc --- calligra-2.3.86/krita/plugins/tools/defaulttools/kis_tool_move.cc 2012-01-07 03:25:02.000000000 +0000 +++ calligra-2.3.87/krita/plugins/tools/defaulttools/kis_tool_move.cc 2012-01-28 07:04:48.000000000 +0000 @@ -59,7 +59,8 @@ {} void redo() { - m_view->nodeManager()->activateNode(m_node); + // TEMPORARY HACK ALERT: https://bugs.kde.org/show_bug.cgi?id=290708 + //m_view->nodeManager()->activateNode(m_node); } void undo() {} diff -Nru calligra-2.3.86/krita/plugins/tools/selectiontools/kis_tool_select_rectangular.h calligra-2.3.87/krita/plugins/tools/selectiontools/kis_tool_select_rectangular.h --- calligra-2.3.86/krita/plugins/tools/selectiontools/kis_tool_select_rectangular.h 2012-01-07 03:25:02.000000000 +0000 +++ calligra-2.3.87/krita/plugins/tools/selectiontools/kis_tool_select_rectangular.h 2012-01-28 07:04:48.000000000 +0000 @@ -68,7 +68,7 @@ setToolType(TOOL_TYPE_SELECTED); setActivationShapeId(KRITA_TOOL_ACTIVATION_ID); setIcon("tool_rect_selection"); - setShortcut(KShortcut(Qt::Key_R)); + setShortcut(KShortcut(Qt::CTRL + Qt::Key_R)); setPriority(52); } diff -Nru calligra-2.3.86/krita/plugins/tools/tool_text/kritatooltext.desktop calligra-2.3.87/krita/plugins/tools/tool_text/kritatooltext.desktop --- calligra-2.3.86/krita/plugins/tools/tool_text/kritatooltext.desktop 2012-01-07 03:25:02.000000000 +0000 +++ calligra-2.3.87/krita/plugins/tools/tool_text/kritatooltext.desktop 2012-01-28 07:04:48.000000000 +0000 @@ -2,6 +2,7 @@ Name=Text Tool Name[bg]=Инструмент текст Name[ca]=Eina de text +Name[ca@valencia]=Eina de text Name[da]=Tekstværktøj Name[de]=Textwerkzeug Name[et]=Tekstitööriist @@ -9,6 +10,7 @@ Name[nb]=Tekstverktøy Name[nds]=Textwarktüüch Name[nl]=Tekstgereedschap +Name[pl]=Narzędzie tekstu Name[pt]=Ferramenta de Texto Name[pt_BR]=Ferramenta de texto Name[ru]=Текст diff -Nru calligra-2.3.86/krita/plugins/tools/tool_transform2/kis_tool_transform.cc calligra-2.3.87/krita/plugins/tools/tool_transform2/kis_tool_transform.cc --- calligra-2.3.86/krita/plugins/tools/tool_transform2/kis_tool_transform.cc 2012-01-07 03:25:02.000000000 +0000 +++ calligra-2.3.87/krita/plugins/tools/tool_transform2/kis_tool_transform.cc 2012-01-28 07:04:48.000000000 +0000 @@ -74,9 +74,6 @@ #include -#include "flake/kis_node_shape.h" -#include "flake/kis_layer_container_shape.h" -#include "flake/kis_shape_layer.h" #include "kis_canvas_resource_provider.h" #include "widgets/kis_progress_widget.h" diff -Nru calligra-2.3.86/krita/sdk/tests/testutil.cpp calligra-2.3.87/krita/sdk/tests/testutil.cpp --- calligra-2.3.86/krita/sdk/tests/testutil.cpp 1970-01-01 00:00:00.000000000 +0000 +++ calligra-2.3.87/krita/sdk/tests/testutil.cpp 2012-01-28 07:04:48.000000000 +0000 @@ -0,0 +1,39 @@ +/* + * Copyright (c) 2007 Boudewijn Rempt + * Copyright (c) 2011 Dmitry Kazakov + * + * This program is free software; you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation; either version 2 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program; if not, write to the Free Software + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. + */ + +#include "testutil.h" + +namespace TestUtil +{ + KisNodeSP TestNode::clone() const { + return new TestNode(*this); + } + + bool TestNode::allowAsChild(KisNodeSP) const { + return true; + } + + const KoColorSpace * TestNode::colorSpace() const { + return 0; + } + + const KoCompositeOp * TestNode::compositeOp() const { + return 0; + } +} diff -Nru calligra-2.3.86/krita/sdk/tests/testutil.h calligra-2.3.87/krita/sdk/tests/testutil.h --- calligra-2.3.86/krita/sdk/tests/testutil.h 2012-01-07 03:25:02.000000000 +0000 +++ calligra-2.3.87/krita/sdk/tests/testutil.h 2012-01-28 07:04:48.000000000 +0000 @@ -21,6 +21,7 @@ #include #include +#include #include #include @@ -40,7 +41,7 @@ namespace TestUtil { -void dumpNodeStack(KisNodeSP node, QString prefix = QString("\t")) +inline void dumpNodeStack(KisNodeSP node, QString prefix = QString("\t")) { qDebug() << node->name(); KisNodeSP child = node->firstChild(); @@ -89,7 +90,7 @@ }; -bool compareQImages(QPoint & pt, const QImage & image1, const QImage & image2, int fuzzy = 0) +inline bool compareQImages(QPoint & pt, const QImage & image1, const QImage & image2, int fuzzy = 0) { // QTime t; // t.start(); @@ -138,7 +139,7 @@ return true; } -bool comparePaintDevices(QPoint & pt, const KisPaintDeviceSP dev1, const KisPaintDeviceSP dev2) +inline bool comparePaintDevices(QPoint & pt, const KisPaintDeviceSP dev1, const KisPaintDeviceSP dev2) { // QTime t; // t.start(); @@ -174,9 +175,9 @@ #ifdef FILES_OUTPUT_DIR -bool checkQImage(const QImage &image, const QString &testName, - const QString &prefix, const QString &name, - int fuzzy = 0) +inline bool checkQImage(const QImage &image, const QString &testName, + const QString &prefix, const QString &name, + int fuzzy = 0) { QString filename(prefix + "_" + name + ".png"); QString dumpName(prefix + "_" + name + "_expected.png"); @@ -200,14 +201,14 @@ #endif -quint8 alphaDevicePixel(KisPaintDeviceSP dev, qint32 x, qint32 y) +inline quint8 alphaDevicePixel(KisPaintDeviceSP dev, qint32 x, qint32 y) { KisHLineConstIteratorPixel iter = dev->createHLineConstIterator(x, y, 1); const quint8 *pix = iter.rawData(); return *pix; } -void alphaDeviceSetPixel(KisPaintDeviceSP dev, qint32 x, qint32 y, quint8 s) +inline void alphaDeviceSetPixel(KisPaintDeviceSP dev, qint32 x, qint32 y, quint8 s) { KisHLineIteratorPixel iter = dev->createHLineIterator(x, y, 1); quint8 *pix = iter.rawData(); @@ -215,11 +216,21 @@ } -QList allColorSpaces() +inline QList allColorSpaces() { return KoColorSpaceRegistry::instance()->allColorSpaces(KoColorSpaceRegistry::AllColorSpaces, KoColorSpaceRegistry::OnlyDefaultProfile); } +class TestNode : public KisNode +{ + Q_OBJECT +public: + KisNodeSP clone() const; + bool allowAsChild(KisNodeSP) const; + const KoColorSpace * colorSpace() const; + const KoCompositeOp * compositeOp() const; +}; + class TestGraphListener : public KisNodeGraphListener { public: diff -Nru calligra-2.3.86/krita/ui/canvas/kis_canvas2.cpp calligra-2.3.87/krita/ui/canvas/kis_canvas2.cpp --- calligra-2.3.86/krita/ui/canvas/kis_canvas2.cpp 2012-01-07 03:25:02.000000000 +0000 +++ calligra-2.3.87/krita/ui/canvas/kis_canvas2.cpp 2012-01-28 07:04:48.000000000 +0000 @@ -118,9 +118,26 @@ connect(KisConfigNotifier::instance(), SIGNAL(configChanged()), SLOT(slotConfigChanged())); connect(this, SIGNAL(canvasDestroyed(QWidget *)), this, SLOT(slotCanvasDestroyed(QWidget *))); + /** + * We switch the shape manager every time shape layer or + * shape selection is activated. Flake does not expect this + * and connects all the signals of the global shape manager + * to the clients in the constructor. To workaround this we + * forward the signals of local shape managers stored in the + * shape layers to the signals of global shape manager. So the + * sequence of signal deliveries is the following: + * + * shapeLayer.m_d.canvas.m_shapeManager.selection() -> + * shapeLayer -> + * shapeController -> + * globalShapeManager.selection() + */ + KisShapeController *kritaShapeController = dynamic_cast(sc); connect(kritaShapeController, SIGNAL(selectionChanged()), globalShapeManager()->selection(), SIGNAL(selectionChanged())); + connect(kritaShapeController, SIGNAL(currentLayerChanged(const KoShapeLayer*)), + globalShapeManager()->selection(), SIGNAL(currentLayerChanged(const KoShapeLayer*))); } KisCanvas2::~KisCanvas2() diff -Nru calligra-2.3.86/krita/ui/CMakeLists.txt calligra-2.3.87/krita/ui/CMakeLists.txt --- calligra-2.3.86/krita/ui/CMakeLists.txt 2012-01-07 03:25:02.000000000 +0000 +++ calligra-2.3.87/krita/ui/CMakeLists.txt 2012-01-28 07:04:48.000000000 +0000 @@ -38,7 +38,8 @@ dialogs/kis_dlg_image_properties.cc dialogs/kis_dlg_layer_properties.cc dialogs/kis_dlg_preferences.cc - flake/kis_layer_container_shape.cc + flake/kis_node_dummies_graph.cpp + flake/kis_node_shapes_graph.cpp flake/kis_node_shape.cpp flake/kis_shape_controller.cpp flake/kis_shape_layer.cc @@ -239,6 +240,8 @@ kde4_add_library(kritaui SHARED ${kritaui_LIB_SRCS} ) +target_link_libraries(kritaui ${X11_X11_LIB}) + if(GHNS) target_link_libraries(kritaui ${KDE4_THREADWEAVER_LIBRARIES} kritaimage komain kowidgets ${PNG_LIBRARIES} ${EXIV2_LIBRARIES} ${KDE4_KNEWSTUFF3_LIBS}) else(GHNS) diff -Nru calligra-2.3.86/krita/ui/flake/kis_layer_container_shape.cc calligra-2.3.87/krita/ui/flake/kis_layer_container_shape.cc --- calligra-2.3.86/krita/ui/flake/kis_layer_container_shape.cc 2012-01-07 03:25:02.000000000 +0000 +++ calligra-2.3.87/krita/ui/flake/kis_layer_container_shape.cc 1970-01-01 00:00:00.000000000 +0000 @@ -1,135 +0,0 @@ -/* -* Copyright (c) 2006 Boudewijn Rempt -* -* This program is free software; you can redistribute it and/or modify -* it under the terms of the GNU General Public License as published by -* the Free Software Foundation; either version 2 of the License, or -* (at your option) any later version. -* -* This program is distributed in the hope that it will be useful, -* but WITHOUT ANY WARRANTY; without even the implied warranty of -* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -* GNU General Public License for more details. -* -* You should have received a copy of the GNU General Public License -* along with this program; if not, write to the Free Software -* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. -*/ - -#include "kis_layer_container_shape.h" - - -#include - -#include -#include -#include -#include -#include -#include -#include - -#include -#include -#include - -struct KisLayerContainerShape::Private -{ - -public: - KisLayerSP groupLayer; -}; - -KisLayerContainerShape::KisLayerContainerShape(KoShapeContainer *parent, KisLayerSP groupLayer) - : KoShapeLayer() - , m_d(new Private) -{ - m_d->groupLayer = groupLayer; - - KoShape::setParent(parent); - setShapeId(KIS_LAYER_CONTAINER_ID); - - connect(groupLayer, SIGNAL(visibilityChanged(bool)), SLOT(setLayerVisible(bool))); - connect(groupLayer, SIGNAL(userLockingChanged(bool)), SLOT(editabilityChanged())); - connect(groupLayer, SIGNAL(systemLockingChanged(bool)), SLOT(editabilityChanged())); -} - -KisLayerContainerShape::~KisLayerContainerShape() -{ - delete m_d; -} - -KisLayerSP KisLayerContainerShape::groupLayer() -{ - return m_d->groupLayer; -} - - -QSizeF KisLayerContainerShape::size() const -{ - KisImageWSP image = m_d->groupLayer->image(); - if (!image) return QSize(0, 0); - - QSize br = image->size(); - return QSizeF(br.width() / image->xRes(), br.height() / image->yRes()); -} - -QRectF KisLayerContainerShape::boundingRect() const -{ - KisImageWSP image = m_d->groupLayer->image(); - if (!image) return QRect(); - - QRect br = QRect(0, 0, image->size().width(), image->size().height()); - return QRectF(int(br.left()) / image->xRes(), int(br.top()) / image->yRes(), - int(1 + br.right()) / image->xRes(), int(1 + br.bottom()) / image->yRes()); - -} - -void KisLayerContainerShape::paintComponent(QPainter &painter, const KoViewConverter &converter, KoShapePaintingContext &) -{ - Q_UNUSED(painter); - Q_UNUSED(converter); -} - -void KisLayerContainerShape::saveOdf(KoShapeSavingContext & /*context*/) const -{ - // TODO -} - -bool KisLayerContainerShape::loadOdf(const KoXmlElement & /*element*/, KoShapeLoadingContext &/*context*/) -{ - return false; // TODO -} - -void KisLayerContainerShape::setLayerVisible(bool v) -{ - setVisible(v); -} - -bool recursiveFindActiveLayerInChildren(KoSelection* _selection, KoShapeLayer* _currentLayer) -{ - if (_selection->activeLayer() == _currentLayer) { - // The following looks weird but it is needed to update the status of the tools - _selection->setActiveLayer(_currentLayer); - return true; - } - foreach(KoShape* shape, _currentLayer->shapes()) { - KoShapeLayer* layer = dynamic_cast(shape); - if (layer && recursiveFindActiveLayerInChildren(_selection, layer)) { - return true; - } - } - return false; -} - -void KisLayerContainerShape::editabilityChanged() -{ - dbgKrita << m_d->groupLayer->isEditable(); - setGeometryProtected(!m_d->groupLayer->isEditable()); - KoCanvasController* canvas = KoToolManager::instance()->activeCanvasController(); - if (canvas) { - recursiveFindActiveLayerInChildren(canvas->canvas()->shapeManager()->selection(), this); - } -} - -#include "kis_layer_container_shape.moc" diff -Nru calligra-2.3.86/krita/ui/flake/kis_layer_container_shape.h calligra-2.3.87/krita/ui/flake/kis_layer_container_shape.h --- calligra-2.3.86/krita/ui/flake/kis_layer_container_shape.h 2012-01-07 03:25:02.000000000 +0000 +++ calligra-2.3.87/krita/ui/flake/kis_layer_container_shape.h 1970-01-01 00:00:00.000000000 +0000 @@ -1,76 +0,0 @@ -/* - * Copyright (c) 2006 Boudewijn Rempt - * - * This program is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation; either version 2 of the License, or - * (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with this program; if not, write to the Free Software - * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. - */ - -#ifndef KIS_LAYER_CONTAINER_SHAPE_H_ -#define KIS_LAYER_CONTAINER_SHAPE_H_ - -#include - -#include - -#include -#include -#include - -class QPainter; -class KoViewConverter; - - -const QString KIS_LAYER_CONTAINER_ID = "KisLayerContainerShapeID"; -/** - The layer container is the flake shape that corresponds to - KisGroupLayer. It contains any number of layers, including other - group layers. - */ -class KRITAUI_EXPORT KisLayerContainerShape : public QObject, public KoShapeLayer -{ - Q_OBJECT -public: - - KisLayerContainerShape(KoShapeContainer * parent, KisLayerSP groupLayer); - - virtual ~KisLayerContainerShape(); - -public: - - KisLayerSP groupLayer(); - - // KoShapeContainer implementation - void paintComponent(QPainter &painter, const KoViewConverter &converter, KoShapePaintingContext &paintcontext); - - // KoShape overrides - bool isSelectable() const { - return false; - } - - QSizeF size() const; - QRectF boundingRect() const; - - /// reimplemented - virtual void saveOdf(KoShapeSavingContext & context) const; - // reimplemented - virtual bool loadOdf(const KoXmlElement & element, KoShapeLoadingContext &context); -private slots: - void setLayerVisible(bool); - void editabilityChanged(); -private: - struct Private; - Private * const m_d; -}; - -#endif diff -Nru calligra-2.3.86/krita/ui/flake/kis_node_dummies_graph.cpp calligra-2.3.87/krita/ui/flake/kis_node_dummies_graph.cpp --- calligra-2.3.86/krita/ui/flake/kis_node_dummies_graph.cpp 1970-01-01 00:00:00.000000000 +0000 +++ calligra-2.3.87/krita/ui/flake/kis_node_dummies_graph.cpp 2012-01-28 07:04:48.000000000 +0000 @@ -0,0 +1,114 @@ +/* + * Copyright (c) 2011 Dmitry Kazakov + * + * This program is free software; you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation; either version 2 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program; if not, write to the Free Software + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. + */ + +#include "kis_node_dummies_graph.h" +#include "kis_node_shape.h" + + +/********************************************************************/ +/* KisNodeDummy */ +/********************************************************************/ + +KisNodeDummy::KisNodeDummy(KisNodeShape *nodeShape) + : m_parent(0), + m_nodeShape(nodeShape) +{ +} + +KisNodeDummy::~KisNodeDummy() +{ + delete m_nodeShape; + qDeleteAll(m_children); +} + +KisNodeDummy* KisNodeDummy::firstChild() const +{ + return !m_children.isEmpty() ? m_children.first() : 0; +} + +KisNodeDummy* KisNodeDummy::lastChild() const +{ + return !m_children.isEmpty() ? m_children.last() : 0; +} + +KisNodeDummy* KisNodeDummy::nextSibling() const +{ + if(!m_parent) return 0; + + int index = m_parent->m_children.indexOf(const_cast(this)); + Q_ASSERT(index >= 0); + + index++; + return index < m_parent->m_children.size() ? + m_parent->m_children[index] : 0; +} + +KisNodeDummy* KisNodeDummy::prevSibling() const +{ + if(!m_parent) return 0; + + int index = m_parent->m_children.indexOf(const_cast(this)); + Q_ASSERT(index >= 0); + + index--; + return index >= 0 ? m_parent->m_children[index] : 0; +} + +KisNodeDummy* KisNodeDummy::parent() const +{ + return m_parent; +} + +KisNodeShape* KisNodeDummy::nodeShape() const +{ + return m_nodeShape; +} + + +/********************************************************************/ +/* KisNodeDummiesGraph */ +/********************************************************************/ + +void KisNodeDummiesGraph::addNode(KisNodeDummy *node, KisNodeDummy *parent, KisNodeDummy *aboveThis) +{ + node->m_parent = parent; + if(!parent) return; + + int insertionIndex = parent->m_children.size(); + + insertionIndex = aboveThis ? + parent->m_children.indexOf(aboveThis) + 1: 0; + + Q_ASSERT(!aboveThis || parent->m_children.indexOf(aboveThis) >= 0); + + parent->m_children.insert(insertionIndex, node); +} + +void KisNodeDummiesGraph::removeNode(KisNodeDummy *node) +{ + KisNodeDummy *parent = node->m_parent; + if(!parent) return; + + parent->m_children.removeOne(node); +} + +void KisNodeDummiesGraph::moveNode(KisNodeDummy *node, KisNodeDummy *parent, KisNodeDummy *aboveThis) +{ + removeNode(node); + addNode(node, parent, aboveThis); +} diff -Nru calligra-2.3.86/krita/ui/flake/kis_node_dummies_graph.h calligra-2.3.87/krita/ui/flake/kis_node_dummies_graph.h --- calligra-2.3.86/krita/ui/flake/kis_node_dummies_graph.h 1970-01-01 00:00:00.000000000 +0000 +++ calligra-2.3.87/krita/ui/flake/kis_node_dummies_graph.h 2012-01-28 07:04:48.000000000 +0000 @@ -0,0 +1,107 @@ +/* + * Copyright (c) 2011 Dmitry Kazakov + * + * This program is free software; you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation; either version 2 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program; if not, write to the Free Software + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. + */ + +#ifndef __KIS_NODE_DUMMIES_GRAPH_H +#define __KIS_NODE_DUMMIES_GRAPH_H + +#include + +#include "krita_export.h" + +class KisNodeShape; + +/** + * KisNodeDummy is a simplified representation of a node + * in the node stack. It stores all the hierarchy information + * about the node, so you needn't access from the node + * directly (actually, you cannot do it usually, because UI + * works in a different thread and race conditions are possible). + * + * The dummy stores a KisNodeShape which can store a pointer to + * to node. You can access to the node data through it, but take + * care -- not all the information is accessible in + * multithreading environment. + * + * The ownership on the KisNodeShape is taken by the dummy. + * The ownership on the children of the dummy is taken as well. + */ + +class KRITAUI_EXPORT KisNodeDummy +{ +public: + KisNodeDummy(KisNodeShape *nodeShape); + ~KisNodeDummy(); + + KisNodeDummy* firstChild() const; + KisNodeDummy* lastChild() const; + KisNodeDummy* nextSibling() const; + KisNodeDummy* prevSibling() const; + KisNodeDummy* parent() const; + + KisNodeShape* nodeShape() const; + +private: + friend class KisNodeDummiesGraph; + + KisNodeDummy *m_parent; + QList m_children; + + KisNodeShape *m_nodeShape; +}; + +/** + * KisNodeDummiesGraph manages the hierarchy of dummy objects + * representing nodes in the UI environment. + */ + +class KRITAUI_EXPORT KisNodeDummiesGraph +{ +public: + /** + * Adds a dummy \p node to the position specified + * by \p parent and \p aboveThis. + * + * It is not expected that you would add a dummy twice. + */ + void addNode(KisNodeDummy *node, KisNodeDummy *parent, KisNodeDummy *aboveThis); + + /** + * Moves a dummy \p node from its current position to + * the position specified by \p parent and \p aboveThis. + * + * It is expected that the dummy \p node has been added + * to the graph with addNode() before calling this function. + */ + void moveNode(KisNodeDummy *node, KisNodeDummy *parent, KisNodeDummy *aboveThis); + + /** + * Removes the dummy \p node from the graph. + * + * WARNING: The dummy is only "unlinked" from the graph. Neither + * deletion of the node nor deletion of its children happens. + * The dummy keeps maintaining its children so after unlinking + * it from the graph you can just type to free memory recursively: + * \code + * graph.removeNode(node); + * delete node; + * \endcode + */ + void removeNode(KisNodeDummy *node); +}; + +#endif /* __KIS_NODE_DUMMIES_GRAPH_H */ diff -Nru calligra-2.3.86/krita/ui/flake/kis_node_shape.cpp calligra-2.3.87/krita/ui/flake/kis_node_shape.cpp --- calligra-2.3.86/krita/ui/flake/kis_node_shape.cpp 2012-01-07 03:25:02.000000000 +0000 +++ calligra-2.3.87/krita/ui/flake/kis_node_shape.cpp 2012-01-28 07:04:48.000000000 +0000 @@ -40,7 +40,7 @@ KisNodeSP node; }; -KisNodeShape::KisNodeShape(KoShapeContainer * parent, KisNodeSP node) +KisNodeShape::KisNodeShape(KisNodeSP node) : KoShapeLayer() , m_d(new Private()) { @@ -48,7 +48,8 @@ m_d->node = node; setShapeId(KIS_NODE_SHAPE_ID); - KoShape::setParent(parent); + + setSelectable(false); connect(node, SIGNAL(visibilityChanged(bool)), SLOT(setNodeVisible(bool))); connect(node, SIGNAL(userLockingChanged(bool)), SLOT(editabilityChanged())); @@ -66,103 +67,71 @@ return m_d->node; } -void KisNodeShape::paint(QPainter &painter, const KoViewConverter &converter, KoShapePaintingContext &) -{ - Q_UNUSED(painter); - Q_UNUSED(converter); -} - - -void KisNodeShape::paintComponent(QPainter &painter, const KoViewConverter &converter, KoShapePaintingContext &) +void KisNodeShape::setNodeVisible(bool v) { - Q_UNUSED(painter); - Q_UNUSED(converter); + // Necessary because shapes are not QObjects + setVisible(v); } -QSizeF KisNodeShape::size() const +bool KisNodeShape::checkIfDescendant(KoShapeLayer *activeLayer) { - Q_ASSERT(m_d); - Q_ASSERT(m_d->node); + bool found(false); + KoShapeLayer *layer = activeLayer; - QRect br = m_d->node->extent(); - - KisImageWSP image = getImage(); - - if (!image) return QSizeF(0.0, 0.0); - - dbgUI << "KisNodeShape::size extent:" << br << ", x res:" << image->xRes() << ", y res:" << image->yRes(); + while(layer && !(found = layer == this)) { + layer = dynamic_cast(layer->parent()); + } - return QSizeF(br.width() / image->xRes(), br.height() / image->yRes()); + return found; } -QRectF KisNodeShape::boundingRect() const +void KisNodeShape::editabilityChanged() { - QRect br = m_d->node->extent(); - - KisImageWSP image = getImage(); - - return QRectF(int(br.left()) / image->xRes(), int(br.top()) / image->yRes(), - int(1 + br.right()) / image->xRes(), int(1 + br.bottom()) / image->yRes()); + setGeometryProtected(!m_d->node->isEditable()); + /** + * Editability of a child depends on the editablity + * of its parent. So when we change one's editability, + * we need to search for active children and reactivate them + */ + + KoCanvasController *canvasController = KoToolManager::instance()->activeCanvasController(); + + if(canvasController) { + KoSelection *activeSelection = canvasController->canvas()->shapeManager()->selection(); + KoShapeLayer *activeLayer = activeSelection->activeLayer(); + + if(checkIfDescendant(activeLayer)) { + activeSelection->setActiveLayer(activeLayer); + } + } } -void KisNodeShape::setPosition(const QPointF & position) +QSizeF KisNodeShape::size() const { - Q_ASSERT(m_d); - Q_ASSERT(m_d->node); - - KisImageWSP image = getImage(); - - if (image) { - // XXX: Does flake handle undo for us? - QPointF pf(position.x() / image->xRes(), position.y() / image->yRes()); - QPoint p = pf.toPoint(); - m_d->node->setX(p.x()); - m_d->node->setY(p.y()); - } + return boundingRect().size(); } - -void KisNodeShape::saveOdf(KoShapeSavingContext & /*context*/) const +QRectF KisNodeShape::boundingRect() const { - - // TODO + return QRectF(); } -bool KisNodeShape::loadOdf(const KoXmlElement & /*element*/, KoShapeLoadingContext &/*context*/) +void KisNodeShape::setPosition(const QPointF &) { - return false; // TODO } -void KisNodeShape::setNodeVisible(bool v) +void KisNodeShape::paint(QPainter &, const KoViewConverter &, KoShapePaintingContext &) { - // Necessary because shapes are not QObjects - setVisible(v); } -// Defined in KisNodeContainerShape... FIXME (2.1) find a better way to share code between those two classes, or even better merge them -bool recursiveFindActiveLayerInChildren(KoSelection* _selection, KoShapeLayer* _currentLayer); - -void KisNodeShape::editabilityChanged() +void KisNodeShape::saveOdf(KoShapeSavingContext &) const { - dbgKrita << m_d->node->isEditable(); - setGeometryProtected(!m_d->node->isEditable()); - KoCanvasController* canvas = KoToolManager::instance()->activeCanvasController(); - if (canvas) { - recursiveFindActiveLayerInChildren(canvas->canvas()->shapeManager()->selection(), this); - } } -KisImageWSP KisNodeShape::getImage() const +bool KisNodeShape::loadOdf(const KoXmlElement &, KoShapeLoadingContext &) { - - if (m_d->node->inherits("KisLayer")) { - return dynamic_cast(m_d->node.data())->image(); - } else if (m_d->node->inherits("KisMask")) { - return dynamic_cast(m_d->node->parent().data())->image(); - } - - return 0; + return false; } #include "kis_node_shape.moc" diff -Nru calligra-2.3.86/krita/ui/flake/kis_node_shape.h calligra-2.3.87/krita/ui/flake/kis_node_shape.h --- calligra-2.3.86/krita/ui/flake/kis_node_shape.h 2012-01-07 03:25:02.000000000 +0000 +++ calligra-2.3.87/krita/ui/flake/kis_node_shape.h 2012-01-28 07:04:48.000000000 +0000 @@ -22,63 +22,46 @@ #include #include -#include -#include #include #include +class KoViewConverter; + + #define KIS_NODE_SHAPE_ID "KisNodeShape" /** - A KisNodeShape is a flake wrapper around adjustment nodes or paint - nodes. A nodeshape can only have a KisMaskShape as its descendant. + * A KisNodeShape is a flake wrapper around Krita nodes. It is used + * for dealing with currently active node for tools. */ class KRITAUI_EXPORT KisNodeShape : public QObject, public KoShapeLayer { Q_OBJECT public: - - KisNodeShape(KoShapeContainer * parent, KisNodeSP node); + KisNodeShape(KisNodeSP node); virtual ~KisNodeShape(); KisNodeSP node(); - // Shape overrides - void paint(QPainter &painter, const KoViewConverter &converter, KoShapePaintingContext &paintcontext); - - bool isSelectable() const { - return false; - } - + // Empty implementations as the node is not painted anywhere QSizeF size() const; - QRectF boundingRect() const; - - void setPosition(const QPointF & position); - - // KoShapeContainer implementation - void paintComponent(QPainter &painter, const KoViewConverter &converter, KoShapePaintingContext &paintcontext); - - /// reimplemented - virtual void saveOdf(KoShapeSavingContext & context) const; - - // reimplemented - virtual bool loadOdf(const KoXmlElement & element, KoShapeLoadingContext &context); + void setPosition(const QPointF &); + void paint(QPainter &painter, const KoViewConverter &converter, KoShapePaintingContext &paintcontext); + void saveOdf(KoShapeSavingContext & context) const; + bool loadOdf(const KoXmlElement & element, KoShapeLoadingContext &context); private slots: - void setNodeVisible(bool); - void editabilityChanged(); - KisImageWSP getImage() const; - private: + bool checkIfDescendant(KoShapeLayer *activeLayer); +private: struct Private; Private * const m_d; - }; #endif diff -Nru calligra-2.3.86/krita/ui/flake/kis_node_shapes_graph.cpp calligra-2.3.87/krita/ui/flake/kis_node_shapes_graph.cpp --- calligra-2.3.86/krita/ui/flake/kis_node_shapes_graph.cpp 1970-01-01 00:00:00.000000000 +0000 +++ calligra-2.3.87/krita/ui/flake/kis_node_shapes_graph.cpp 2012-01-28 07:04:48.000000000 +0000 @@ -0,0 +1,100 @@ +/* + * Copyright (c) 2011 Dmitry Kazakov + * + * This program is free software; you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation; either version 2 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program; if not, write to the Free Software + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. + */ + +#include "kis_node_shapes_graph.h" + +#include "kis_node_shape.h" + + +KisNodeShape* KisNodeShapesGraph::addNode(KisNodeSP node, KisNodeSP parent, KisNodeSP aboveThis) +{ + Q_ASSERT(!m_dummiesMap.contains(node)); + + KisNodeDummy *parentDummy = 0; + KisNodeDummy *aboveThisDummy = 0; + + KisNodeShape *parentShape = 0; + + if(parent) { + parentDummy = nodeToDummy(parent); + parentShape = parentDummy->nodeShape(); + } + + if(aboveThis) { + aboveThisDummy = nodeToDummy(aboveThis); + } + + KisNodeShape *newShape = new KisNodeShape(node); + ((KoShapeLayer*)newShape)->setParent(parentShape); + + KisNodeDummy *newDummy = new KisNodeDummy(newShape); + m_dummiesMap[node] = newDummy; + + m_dummiesGraph.addNode(newDummy, parentDummy, aboveThisDummy); + return newShape; +} + +void KisNodeShapesGraph::moveNode(KisNodeSP node, KisNodeSP parent, KisNodeSP aboveThis) +{ + KisNodeDummy *nodeDummy = nodeToDummy(node); + KisNodeDummy *parentDummy = parent ? nodeToDummy(parent) : 0; + KisNodeDummy *aboveThisDummy = aboveThis ? nodeToDummy(aboveThis) : 0; + + m_dummiesGraph.moveNode(nodeDummy, parentDummy, aboveThisDummy); +} + +void KisNodeShapesGraph::removeNode(KisNodeSP node) +{ + KisNodeDummy *nodeDummy = nodeToDummy(node); + unmapDummyRecursively(nodeDummy); + + m_dummiesGraph.removeNode(nodeDummy); + delete nodeDummy; +} + +void KisNodeShapesGraph::unmapDummyRecursively(KisNodeDummy *dummy) +{ + m_dummiesMap.remove(dummy->nodeShape()->node()); + + KisNodeDummy *child = dummy->firstChild(); + while(child) { + unmapDummyRecursively(child); + child = child->nextSibling(); + } +} + +KisNodeDummy* KisNodeShapesGraph::nodeToDummy(KisNodeSP node) +{ + Q_ASSERT(m_dummiesMap.contains(node)); + return m_dummiesMap[node]; +} + +KisNodeShape* KisNodeShapesGraph::nodeToShape(KisNodeSP node) +{ + return nodeToDummy(node)->nodeShape(); +} + +bool KisNodeShapesGraph::containsNode(KisNodeSP node) const +{ + return m_dummiesMap.contains(node); +} + +int KisNodeShapesGraph::shapesCount() const +{ + return m_dummiesMap.size(); +} diff -Nru calligra-2.3.86/krita/ui/flake/kis_node_shapes_graph.h calligra-2.3.87/krita/ui/flake/kis_node_shapes_graph.h --- calligra-2.3.86/krita/ui/flake/kis_node_shapes_graph.h 1970-01-01 00:00:00.000000000 +0000 +++ calligra-2.3.87/krita/ui/flake/kis_node_shapes_graph.h 2012-01-28 07:04:48.000000000 +0000 @@ -0,0 +1,90 @@ +/* + * Copyright (c) 2011 Dmitry Kazakov + * + * This program is free software; you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation; either version 2 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program; if not, write to the Free Software + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. + */ + +#ifndef __KIS_NODE_SHAPES_GRAPH_H +#define __KIS_NODE_SHAPES_GRAPH_H + +#include +#include "KoShapeLayer.h" + +#include "kis_node.h" +#include "kis_types.h" +#include "kis_node_dummies_graph.h" + +class KisNodeShape; +class KisNodeDummy; + + +/** + * KisNodeShapesGraph is a highlevel simplified representation + * of nodes in the node stack. It stores hierarchy information + * about graph without accessing real node graph. + * + * Takes ownership on both dummies and node shapes. + * + * \see KisNodeDummy, KisNodeDummyGraph + */ + +class KRITAUI_EXPORT KisNodeShapesGraph +{ +public: + /** + * Adds a node to the graph + * + * WARNING: this method does *not* add all the children recursively + * because the shapes graph has no right to access the hierarchy + * information from the UI thread, so you should do it manually. + */ + KisNodeShape* addNode(KisNodeSP node, KisNodeSP parent, KisNodeSP aboveThis); + + /** + * Moves a node inside the graph. It is supposed that the node has + * previously been added to the graph using addNode(). + * + * The node is moved together with all its children. + */ + void moveNode(KisNodeSP node, KisNodeSP parent, KisNodeSP aboveThis); + + /** + * Removes the node from the graph + * + * Removing the node from the graph removes both the node itself + * and all its children, because all this information is accesible + * to the shapes graph without referring to the node's hierarchy + * information owned by the image. + */ + void removeNode(KisNodeSP node); + + KisNodeShape* nodeToShape(KisNodeSP node); + KisNodeDummy* nodeToDummy(KisNodeSP node); + + bool containsNode(KisNodeSP node) const; + int shapesCount() const; + +private: + typedef QMap NodeMap; + +private: + void unmapDummyRecursively(KisNodeDummy *dummy); + +private: + KisNodeDummiesGraph m_dummiesGraph; + NodeMap m_dummiesMap; +}; + +#endif /* __KIS_NODE_SHAPES_GRAPH_H */ diff -Nru calligra-2.3.86/krita/ui/flake/kis_shape_controller.cpp calligra-2.3.87/krita/ui/flake/kis_shape_controller.cpp --- calligra-2.3.86/krita/ui/flake/kis_shape_controller.cpp 2012-01-07 03:25:02.000000000 +0000 +++ calligra-2.3.87/krita/ui/flake/kis_shape_controller.cpp 2012-01-28 07:04:48.000000000 +0000 @@ -44,8 +44,8 @@ #include "kis_doc2.h" #include "kis_image.h" #include "kis_group_layer.h" -#include "kis_layer_container_shape.h" #include "kis_node_shape.h" +#include "kis_node_shapes_graph.h" #include "kis_name_server.h" #include "kis_mask.h" #include "kis_shape_layer.h" @@ -59,93 +59,35 @@ #include #include -typedef QMap KisNodeMap; struct KisShapeController::Private { public: - Private(KisShapeController *parent) : q(parent) {} - KisImageWSP image; - KisNodeSP rootNode; + KisNodeSP savedRootNode; - KisNodeMap nodeShapes; // maps from krita/image layers to shapes KisDoc2 *doc; KisNameServer *nameServer; QMap dataCenterMap; - void addNodeShape(KisNodeSP node); - void removeNodeShape(KisNodeSP node); - -private: - KisShapeController *q; + KisNodeShapesGraph shapesGraph; }; -void KisShapeController::Private::addNodeShape(KisNodeSP node) -{ - Q_ASSERT(!nodeShapes.contains(node)); - - KoShapeContainer *parent = 0; - - if(nodeShapes.contains(node->parent())) { - parent = dynamic_cast(nodeShapes[node->parent()]); - } - - - KoShape *shape; - - if (node->inherits("KisGroupLayer")) { - shape = new KisLayerContainerShape(parent, static_cast(node.data())); - } else if (node->inherits("KisShapeLayer")) { - KisShapeLayer *shapeLayer = static_cast(node.data()); - q->connect(shapeLayer, SIGNAL(selectionChanged(QList)), - q, SIGNAL(selectionChanged())); - - shape = shapeLayer; - } else { - shape = new KisNodeShape(parent, static_cast(node.data())); - } - - shape->setParent(parent); - nodeShapes[node] = shape; - - KisNodeSP childNode = node->firstChild(); - while (childNode) { - addNodeShape(childNode); - childNode = childNode->nextSibling(); - } -} - -void KisShapeController::Private::removeNodeShape(KisNodeSP node) -{ - KisNodeSP childNode = node->firstChild(); - while (childNode) { - removeNodeShape(childNode); - childNode = childNode->nextSibling(); - } - - Q_ASSERT(nodeShapes.contains(node)); - - KoShape *nodeShape = nodeShapes[node]; - nodeShapes.remove(node); - - KisShapeLayer *shapeLayer = dynamic_cast(nodeShape); - if (shapeLayer) { - shapeLayer->disconnect(q); - nodeShape->setParent(0); - } else { - delete nodeShape; - } -} - KisShapeController::KisShapeController(KisDoc2 * doc, KisNameServer *nameServer) : QObject(doc) - , m_d(new Private(this)) + , m_d(new Private()) { m_d->doc = doc; m_d->nameServer = nameServer; m_d->image = 0; resourceManager()->setUndoStack(doc->undoStack()); + + connect(this, SIGNAL(sigContinueAddNode(KisNodeSP, KisNodeSP, KisNodeSP)), + SLOT(slotContinueAddNode(KisNodeSP, KisNodeSP, KisNodeSP))); + connect(this, SIGNAL(sigContinueMoveNode(KisNodeSP, KisNodeSP, KisNodeSP)), + SLOT(slotContinueMoveNode(KisNodeSP, KisNodeSP, KisNodeSP))); + connect(this, SIGNAL(sigContinueRemoveNode(KisNodeSP)), + SLOT(slotContinueRemoveNode(KisNodeSP))); } @@ -164,25 +106,27 @@ { if (m_d->image.isValid()) { m_d->image->disconnect(this); - m_d->removeNodeShape(m_d->rootNode); + slotRemoveNode(m_d->savedRootNode); - Q_ASSERT(m_d->nodeShapes.empty()); - m_d->nodeShapes.clear(); - - m_d->image = 0; - m_d->rootNode = 0; + Q_ASSERT(!m_d->shapesGraph.shapesCount()); } + m_d->image = 0; + m_d->savedRootNode = 0; if (image) { - m_d->rootNode = image->rootLayer(); - m_d->addNodeShape(m_d->rootNode); - - connect(image, SIGNAL(sigNodeHasBeenAdded(KisNode *, int)), SLOT(slotNodeAdded(KisNode*, int))); - connect(image, SIGNAL(sigAboutToRemoveANode(KisNode *, int)), SLOT(slotNodeRemoved(KisNode*, int))); - connect(image, SIGNAL(sigLayersChanged(KisGroupLayerSP)), this, SLOT(slotLayersChanged(KisGroupLayerSP))); + m_d->image = image; + m_d->savedRootNode = m_d->image->root(); + slotNodeAdded(m_d->savedRootNode); + + connect(image, SIGNAL(sigNodeAddedAsync(KisNodeSP)), + SLOT(slotNodeAdded(KisNodeSP)), Qt::DirectConnection); + connect(image, SIGNAL(sigNodeMovedAsync(KisNodeSP)), + SLOT(slotNodeMoved(KisNodeSP)), Qt::DirectConnection); + connect(image, SIGNAL(sigRemoveNodeAsync(KisNodeSP)), + SLOT(slotRemoveNode(KisNodeSP)), Qt::DirectConnection); + connect(image, SIGNAL(sigLayersChangedAsync()), + SLOT(slotLayersChanged()), Qt::DirectConnection); } - - m_d->image = image; } static inline bool belongsToShapeSelection(KoShape* shape) { @@ -200,8 +144,7 @@ * It goes through slotNodeAdded() */ Q_ASSERT(shape->shapeId() != KIS_NODE_SHAPE_ID && - shape->shapeId() != KIS_SHAPE_LAYER_ID && - shape->shapeId() != KIS_LAYER_CONTAINER_ID); + shape->shapeId() != KIS_SHAPE_LAYER_ID); KisCanvas2 *canvas = dynamic_cast(KoToolManager::instance()->activeCanvasController()->canvas()); @@ -222,10 +165,8 @@ KisShapeLayer *shapeLayer = dynamic_cast(shape->parent()); if (!shapeLayer) { - KisLayerContainerShape *container = - dynamic_cast(shapeForNode(m_d->image->rootLayer().data())); - - shapeLayer = new KisShapeLayer(container, this, m_d->image, + KoShapeLayer *rootLayer = shapeForNode(m_d->image->rootLayer().data()); + shapeLayer = new KisShapeLayer(rootLayer, this, m_d->image, i18n("Vector Layer %1", m_d->nameServer->number()), OPACITY_OPAQUE_U8); @@ -241,10 +182,15 @@ void KisShapeController::removeShape(KoShape* shape) { - // Nodes have their own way of death through slotNodeRemoved() - Q_ASSERT(!dynamic_cast(shape) && - !dynamic_cast(shape)); + /** + * Krita layers have their own destruction path. + * It goes through slotRemoveNode() + */ + Q_ASSERT(shape->shapeId() != KIS_NODE_SHAPE_ID && + shape->shapeId() != KIS_SHAPE_LAYER_ID); + +#if 0 // Remove children shapes if any KoShapeContainer * container = dynamic_cast(shape); if (container) { @@ -252,6 +198,7 @@ removeShape(child); } } +#endif shape->setParent(0); @@ -268,50 +215,93 @@ { if (!m_d->image) return; - if (! m_d->nodeShapes.isEmpty()) { + KisNodeSP rootNode = m_d->image->root(); + + if (m_d->shapesGraph.containsNode(rootNode)) { Q_ASSERT(view->canvasBase()); Q_ASSERT(view->canvasBase()->shapeManager()); KoSelection *selection = view->canvasBase()->shapeManager()->selection(); if (selection) { - selection->select(m_d->nodeShapes.values().first()); + selection->select(m_d->shapesGraph.nodeToShape(rootNode)); KoToolManager::instance()->switchToolRequested(KoToolManager::instance()->preferredToolForSelection(selection->selectedShapes())); } } } -void KisShapeController::slotNodeAdded(KisNode *parentNode, int index) +void KisShapeController::slotLayersChanged() +{ + setImage(m_d->image); +} + +void KisShapeController::slotNodeAdded(KisNodeSP node) +{ + emit sigContinueAddNode(node, node->parent(), node->prevSibling()); + + KisNodeSP childNode = node->firstChild(); + while (childNode) { + slotNodeAdded(childNode); + childNode = childNode->nextSibling(); + } +} + +void KisShapeController::slotNodeMoved(KisNodeSP node) { - if (!parentNode) return; + emit sigContinueMoveNode(node, node->parent(), node->prevSibling()); +} - KisNodeSP node = parentNode->at(index); - m_d->addNodeShape(node); +void KisShapeController::slotRemoveNode(KisNodeSP node) +{ + emit sigContinueRemoveNode(node); } -void KisShapeController::slotNodeRemoved(KisNode *parentNode, int index) +void KisShapeController::slotContinueAddNode(KisNodeSP node, KisNodeSP parent, KisNodeSP aboveThis) { - if (!parentNode) return; + KisNodeShape *newShape = + m_d->shapesGraph.addNode(node, parent, aboveThis); - KisNodeSP node = parentNode->at(index); - m_d->removeNodeShape(node); + KisShapeLayer *shapeLayer = dynamic_cast(node.data()); + if (shapeLayer) { + /** + * Forward signals for global shape manager + * \see comment in the constructor of KisCanvas2 + */ + connect(shapeLayer, SIGNAL(selectionChanged()), + SIGNAL(selectionChanged())); + connect(shapeLayer, SIGNAL(currentLayerChanged(const KoShapeLayer*)), + SIGNAL(currentLayerChanged(const KoShapeLayer*))); + ((KoShapeLayer*)shapeLayer)->setParent(newShape); + } } -void KisShapeController::slotLayersChanged(KisGroupLayerSP rootLayer) +void KisShapeController::slotContinueMoveNode(KisNodeSP node, KisNodeSP parent, KisNodeSP aboveThis) { - Q_UNUSED(rootLayer); + m_d->shapesGraph.moveNode(node, parent, aboveThis); +} - setImage(m_d->image); +void KisShapeController::slotContinueRemoveNode(KisNodeSP node) +{ + KisShapeLayer *shapeLayer = dynamic_cast(node.data()); + if (shapeLayer) { + shapeLayer->disconnect(this); + ((KoShapeLayer*)shapeLayer)->setParent(0); + } + + m_d->shapesGraph.removeNode(node); } -KoShape * KisShapeController::shapeForNode(KisNodeSP node) const +KoShapeLayer* KisShapeController::shapeForNode(KisNodeSP node) const { - Q_ASSERT(m_d->nodeShapes.contains(node)); - return m_d->nodeShapes[node]; + return m_d->shapesGraph.nodeToShape(node); } +KisNodeDummy* KisShapeController::dummyForNode(KisNodeSP node) const +{ + return m_d->shapesGraph.nodeToDummy(node); +} int KisShapeController::layerMapSize() { - return m_d->nodeShapes.size(); + return m_d->shapesGraph.shapesCount(); } diff -Nru calligra-2.3.86/krita/ui/flake/kis_shape_controller.h calligra-2.3.87/krita/ui/flake/kis_shape_controller.h --- calligra-2.3.86/krita/ui/flake/kis_shape_controller.h 2012-01-07 03:25:02.000000000 +0000 +++ calligra-2.3.87/krita/ui/flake/kis_shape_controller.h 2012-01-28 07:04:48.000000000 +0000 @@ -26,7 +26,8 @@ #include "kis_types.h" #include -class KoShape; +class KisNodeDummy; +class KoShapeLayer; class KisView2; class KisDoc2; @@ -49,11 +50,17 @@ ~KisShapeController(); void setImage(KisImageWSP image); - KoShape * shapeForNode(KisNodeSP layer) const; + KoShapeLayer* shapeForNode(KisNodeSP layer) const; + KisNodeDummy* dummyForNode(KisNodeSP layer) const; void setInitialShapeForView(KisView2 * view); signals: void selectionChanged(); + void currentLayerChanged(const KoShapeLayer*); + + void sigContinueAddNode(KisNodeSP node, KisNodeSP parent, KisNodeSP aboveThis); + void sigContinueMoveNode(KisNodeSP node, KisNodeSP parent, KisNodeSP aboveThis); + void sigContinueRemoveNode(KisNodeSP node); protected: void addShape(KoShape* shape); @@ -62,9 +69,14 @@ private slots: friend class KisShapeControllerTest; - void slotNodeAdded(KisNode *parentNode, int index); - void slotNodeRemoved(KisNode *parentNode, int index); - void slotLayersChanged(KisGroupLayerSP rootLayer); + void slotNodeAdded(KisNodeSP node); + void slotNodeMoved(KisNodeSP node); + void slotRemoveNode(KisNodeSP node); + void slotLayersChanged(); + + void slotContinueAddNode(KisNodeSP node, KisNodeSP parent, KisNodeSP aboveThis); + void slotContinueMoveNode(KisNodeSP node, KisNodeSP parent, KisNodeSP aboveThis); + void slotContinueRemoveNode(KisNodeSP node); private: int layerMapSize(); diff -Nru calligra-2.3.86/krita/ui/flake/kis_shape_layer_canvas.cpp calligra-2.3.87/krita/ui/flake/kis_shape_layer_canvas.cpp --- calligra-2.3.86/krita/ui/flake/kis_shape_layer_canvas.cpp 2012-01-07 03:25:02.000000000 +0000 +++ calligra-2.3.87/krita/ui/flake/kis_shape_layer_canvas.cpp 2012-01-28 07:04:48.000000000 +0000 @@ -106,6 +106,7 @@ void KisShapeLayerCanvas::repaint() { QRect r = m_dirty.boundingRect(); + r.intersect(m_parentLayer->image()->bounds()); QImage image(r.width(), r.height(), QImage::Format_ARGB32); image.fill(0); QPainter p(&image); diff -Nru calligra-2.3.86/krita/ui/flake/kis_shape_layer.cc calligra-2.3.87/krita/ui/flake/kis_shape_layer.cc --- calligra-2.3.86/krita/ui/flake/kis_shape_layer.cc 2012-01-07 03:25:02.000000000 +0000 +++ calligra-2.3.87/krita/ui/flake/kis_shape_layer.cc 2012-01-28 07:04:48.000000000 +0000 @@ -175,7 +175,8 @@ m_d->canvas->setProjection(m_d->paintDevice); m_d->controller = controller; - connect(m_d->canvas->shapeManager(), SIGNAL(selectionChanged()), this, SLOT(selectionChanged())); + connect(m_d->canvas->shapeManager()->selection(), SIGNAL(selectionChanged()), this, SIGNAL(selectionChanged())); + connect(m_d->canvas->shapeManager()->selection(), SIGNAL(currentLayerChanged(const KoShapeLayer*)), this, SIGNAL(currentLayerChanged(const KoShapeLayer*))); } bool KisShapeLayer::allowAsChild(KisNodeSP node) const @@ -434,11 +435,6 @@ } -void KisShapeLayer::selectionChanged() -{ - emit selectionChanged(m_d->canvas->shapeManager()->selection()->selectedShapes()); -} - void KisShapeLayer::resetCache() { m_d->paintDevice->clear(); diff -Nru calligra-2.3.86/krita/ui/flake/kis_shape_layer.h calligra-2.3.87/krita/ui/flake/kis_shape_layer.h --- calligra-2.3.86/krita/ui/flake/kis_shape_layer.h 2012-01-07 03:25:02.000000000 +0000 +++ calligra-2.3.87/krita/ui/flake/kis_shape_layer.h 2012-01-28 07:04:48.000000000 +0000 @@ -105,11 +105,17 @@ friend class ShapeLayerContainerModel; KoViewConverter* converter() const; -public slots: - void selectionChanged(); - signals: - void selectionChanged(QList shape); + /** + * These signals are forwarded from the local shape manager + * This is done because we switch KoShapeManager and therefore + * KoSelection in KisCanvas2, so we need to connect local managers + * to the UI as well. + * + * \see comment in the constructor of KisCanvas2 + */ + void selectionChanged(); + void currentLayerChanged(const KoShapeLayer *layer); private: struct Private; diff -Nru calligra-2.3.86/krita/ui/kis_aboutdata.h calligra-2.3.87/krita/ui/kis_aboutdata.h --- calligra-2.3.86/krita/ui/kis_aboutdata.h 2012-01-07 03:25:02.000000000 +0000 +++ calligra-2.3.87/krita/ui/kis_aboutdata.h 2012-01-28 07:04:48.000000000 +0000 @@ -32,7 +32,7 @@ CALLIGRA_VERSION_STRING, ki18n("Digital Painting for Artists"), KAboutData::License_GPL, - ki18n("(c) 1999-2011 The Krita team.\n"), + ki18n("(c) 1999-2012 The Krita team.\n"), KLocalizedString(), "http://www.krita.org", "submit@bugs.kde.org"); diff -Nru calligra-2.3.86/krita/ui/kis_categorized_item_delegate.cpp calligra-2.3.87/krita/ui/kis_categorized_item_delegate.cpp --- calligra-2.3.86/krita/ui/kis_categorized_item_delegate.cpp 2012-01-07 03:25:02.000000000 +0000 +++ calligra-2.3.87/krita/ui/kis_categorized_item_delegate.cpp 2012-01-28 07:04:48.000000000 +0000 @@ -48,11 +48,13 @@ QStyledItemDelegate::paint(painter, sovi, index); } else { + QPalette palette = QApplication::palette(); if(option.state & QStyle::State_MouseOver) - painter->fillRect(option.rect, Qt::gray); + painter->fillRect(option.rect, palette.midlight()); else - painter->fillRect(option.rect, Qt::lightGray); + painter->fillRect(option.rect, palette.button()); + painter->setBrush(palette.buttonText()); painter->drawText(option.rect, index.data().toString(), QTextOption(Qt::AlignVCenter|Qt::AlignHCenter)); paintTriangle( @@ -93,6 +95,7 @@ if(rotate) painter->rotate(-90); - painter->setBrush(QBrush(Qt::black)); + QPalette palette = QApplication::palette(); + painter->setBrush(palette.buttonText()); painter->drawPolygon(triangle); } diff -Nru calligra-2.3.86/krita/ui/kis_doc2.cc calligra-2.3.87/krita/ui/kis_doc2.cc --- calligra-2.3.86/krita/ui/kis_doc2.cc 2012-01-07 03:25:02.000000000 +0000 +++ calligra-2.3.87/krita/ui/kis_doc2.cc 2012-01-28 07:04:48.000000000 +0000 @@ -177,7 +177,9 @@ } void KisDoc2::slotLoadingFinished() { - image()->initialRefreshGraph(); + if (m_d->image) { + m_d->image->initialRefreshGraph(); + } setAutoSave(KisConfig().autoSaveInterval()); } @@ -464,6 +466,7 @@ void KisDoc2::paintContent(QPainter& painter, const QRect& rc) { + if (!m_d->image) return; KisConfig cfg; const KoColorProfile *profile = cfg.displayProfile(); QRect rect = rc & m_d->image->bounds(); @@ -488,7 +491,7 @@ return m_d->shapeController; } -KoShape * KisDoc2::shapeForNode(KisNodeSP layer) const +KoShapeLayer* KisDoc2::shapeForNode(KisNodeSP layer) const { return m_d->shapeController->shapeForNode(layer); } diff -Nru calligra-2.3.86/krita/ui/kis_doc2.h calligra-2.3.87/krita/ui/kis_doc2.h --- calligra-2.3.86/krita/ui/kis_doc2.h 2012-01-07 03:25:02.000000000 +0000 +++ calligra-2.3.87/krita/ui/kis_doc2.h 2012-01-28 07:04:48.000000000 +0000 @@ -34,7 +34,7 @@ class KoColorSpace; class KoColor; -class KoShape; +class KoShapeLayer; class KoShapeBasedDocumentBase; class KisView2; @@ -137,7 +137,7 @@ */ KoShapeBasedDocumentBase * shapeController() const; - KoShape * shapeForNode(KisNodeSP layer) const; + KoShapeLayer* shapeForNode(KisNodeSP layer) const; signals: diff -Nru calligra-2.3.86/krita/ui/kis_layer_manager.cc calligra-2.3.87/krita/ui/kis_layer_manager.cc --- calligra-2.3.86/krita/ui/kis_layer_manager.cc 2012-01-07 03:25:02.000000000 +0000 +++ calligra-2.3.87/krita/ui/kis_layer_manager.cc 2012-01-28 07:04:48.000000000 +0000 @@ -529,6 +529,7 @@ activateLayer(dup); dup->setDirty(); m_view->canvas()->update(); + m_view->nodeManager()->activateNode(dup); } else { KMessageBox::error(m_view, i18n("Could not add layer to image."), i18n("Layer Error")); } diff -Nru calligra-2.3.86/krita/ui/kis_paintop_box.cc calligra-2.3.87/krita/ui/kis_paintop_box.cc --- calligra-2.3.86/krita/ui/kis_paintop_box.cc 2012-01-07 03:25:02.000000000 +0000 +++ calligra-2.3.87/krita/ui/kis_paintop_box.cc 2012-01-28 07:04:48.000000000 +0000 @@ -80,6 +80,7 @@ , m_activePreset(0) , m_previousNode(0) , m_currTabletToolID(KoToolManager::instance()->currentInputDevice()) + , m_presetsEnabled(true) { Q_ASSERT(view != 0); @@ -215,6 +216,7 @@ m_presetsPopup->switchDetached(); m_presetsChooserPopup = new KisPaintOpPresetsChooserPopup(); + m_presetsChooserPopup->setFixedSize(500, 500); m_presetWidget->setPopupWidget(m_presetsChooserPopup); m_prevCompositeOpID = KoCompositeOpRegistry::instance().getDefaultCompositeOp().id(); @@ -628,19 +630,22 @@ setSliderValue("opacity", opacity); setSliderValue("flow" , flow ); setSliderValue("size" , size ); - - // IMPORTANT: set the PaintOp size before setting the other properties - // it wont work the other way - qreal sizeDiff = size - m_activePreset->settings()->paintOpSize().width(); - m_activePreset->settings()->changePaintOpSize(sizeDiff, 0); - - if(m_activePreset->settings()->hasProperty("OpacityValue")) - m_activePreset->settings()->setProperty("OpacityValue", opacity); - - if(m_activePreset->settings()->hasProperty("FlowValue")) - m_activePreset->settings()->setProperty("FlowValue", flow); - - m_optionWidget->setConfiguration(m_activePreset->settings().data()); + + if(m_presetsEnabled) { + // IMPORTANT: set the PaintOp size before setting the other properties + // it wont work the other way + qreal sizeDiff = size - m_activePreset->settings()->paintOpSize().width(); + m_activePreset->settings()->changePaintOpSize(sizeDiff, 0); + + if(m_activePreset->settings()->hasProperty("OpacityValue")) + m_activePreset->settings()->setProperty("OpacityValue", opacity); + + if(m_activePreset->settings()->hasProperty("FlowValue")) + m_activePreset->settings()->setProperty("FlowValue", flow); + + m_optionWidget->setConfiguration(m_activePreset->settings().data()); + } + else m_resourceProvider->setOpacity(opacity); } void KisPaintopBox::slotSlider1Changed() @@ -667,8 +672,15 @@ if(flags & KisTool::FLAG_USES_CUSTOM_COMPOSITEOP) { setWidgetState(ENABLE_COMPOSITEOP|ENABLE_OPACITY); } else { setWidgetState(DISABLE_COMPOSITEOP|DISABLE_OPACITY); } - if(flags & KisTool::FLAG_USES_CUSTOM_PRESET) { setWidgetState(ENABLE_PRESETS|ENABLE_SIZE|ENABLE_FLOW); } - else { setWidgetState(DISABLE_PRESETS|DISABLE_SIZE|DISABLE_FLOW); } + if(flags & KisTool::FLAG_USES_CUSTOM_PRESET) { + setWidgetState(ENABLE_PRESETS|ENABLE_SIZE|ENABLE_FLOW); + slotUpdatePreset(); + m_presetsEnabled = true; + } + else { + setWidgetState(DISABLE_PRESETS|DISABLE_SIZE|DISABLE_FLOW); + m_presetsEnabled = false; + } } else setWidgetState(DISABLE_ALL); } diff -Nru calligra-2.3.86/krita/ui/kis_paintop_box.h calligra-2.3.87/krita/ui/kis_paintop_box.h --- calligra-2.3.86/krita/ui/kis_paintop_box.h 2012-01-07 03:25:02.000000000 +0000 +++ calligra-2.3.87/krita/ui/kis_paintop_box.h 2012-01-28 07:04:48.000000000 +0000 @@ -182,6 +182,7 @@ TabletToolMap m_tabletToolMap; PaintOpPresetMap m_paintOpPresetMap; TabletToolID m_currTabletToolID; + bool m_presetsEnabled; }; #endif //KIS_PAINTOP_BOX_H_ diff -Nru calligra-2.3.86/krita/ui/kis_selection_manager.cc calligra-2.3.87/krita/ui/kis_selection_manager.cc --- calligra-2.3.86/krita/ui/kis_selection_manager.cc 2012-01-07 03:25:02.000000000 +0000 +++ calligra-2.3.87/krita/ui/kis_selection_manager.cc 2012-01-28 07:04:48.000000000 +0000 @@ -705,6 +705,7 @@ shape->setBorder(0); } } + updateGUI(); } void KisSelectionManager::imageResizeToSelection() diff -Nru calligra-2.3.86/krita/ui/tests/CMakeLists.txt calligra-2.3.87/krita/ui/tests/CMakeLists.txt --- calligra-2.3.86/krita/ui/tests/CMakeLists.txt 2012-01-07 03:25:02.000000000 +0000 +++ calligra-2.3.87/krita/ui/tests/CMakeLists.txt 2012-01-28 07:04:48.000000000 +0000 @@ -117,6 +117,18 @@ ########### next target ############### -set(kis_selection_manager_test_SRCS kis_selection_manager_test.cpp ../../sdk/tests/stroke_testing_utils.cpp) +set(kis_selection_manager_test_SRCS kis_selection_manager_test.cpp) kde4_add_unit_test(KisSelectionManagerTest TESTNAME krita-ui-KisSelectionManagerTest ${kis_selection_manager_test_SRCS}) target_link_libraries(KisSelectionManagerTest ${KDE4_KDEUI_LIBS} kritaui kritaimage ${QT_QTTEST_LIBRARY}) + +########### next target ############### + +set(kis_node_dummies_graph_test_SRCS kis_node_dummies_graph_test.cpp ../../sdk/tests/testutil.cpp) +kde4_add_unit_test(KisNodeDummiesGraphTest TESTNAME krita-ui-KisNodeDummiesGraphTest ${kis_node_dummies_graph_test_SRCS}) +target_link_libraries(KisNodeDummiesGraphTest ${KDE4_KDEUI_LIBS} kritaui kritaimage ${QT_QTTEST_LIBRARY}) + +########### next target ############### + +set(kis_node_shapes_graph_test_SRCS kis_node_shapes_graph_test.cpp ../../sdk/tests/testutil.cpp) +kde4_add_unit_test(KisNodeShapesGraphTest TESTNAME krita-ui-KisNodeShapesGraphTest ${kis_node_shapes_graph_test_SRCS}) +target_link_libraries(KisNodeShapesGraphTest ${KDE4_KDEUI_LIBS} kritaui kritaimage ${QT_QTTEST_LIBRARY}) diff -Nru calligra-2.3.86/krita/ui/tests/kis_node_dummies_graph_test.cpp calligra-2.3.87/krita/ui/tests/kis_node_dummies_graph_test.cpp --- calligra-2.3.86/krita/ui/tests/kis_node_dummies_graph_test.cpp 1970-01-01 00:00:00.000000000 +0000 +++ calligra-2.3.87/krita/ui/tests/kis_node_dummies_graph_test.cpp 2012-01-28 07:04:49.000000000 +0000 @@ -0,0 +1,187 @@ +/* + * Copyright (c) 2011 Dmitry Kazakov + * + * This program is free software; you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation; either version 2 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program; if not, write to the Free Software + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. + */ + +#include "kis_node_dummies_graph_test.h" + +#include + +#include "kis_node_dummies_graph.h" +#include "node_shapes_utils.h" + + +/** + * node0 + * +--node1 + * +--node7 + * +--node8 + * +--node2 + * +--node3 + * +--node4 + * +--node9 + * +--node10 + * +--node11 + * +--node5 + * +--node6 + */ + +void KisNodeDummiesGraphTest::init() +{ + m_dummiesGraph = new KisNodeDummiesGraph(); + m_rootDummy = new KisNodeDummy(nodeShapeFromId(0)); + + m_dummiesGraph->addNode(m_rootDummy, 0, 0); + KisNodeDummy *parent; + + parent = m_rootDummy; + for(int i = 6; i >= 1; i--) { + KisNodeDummy *dummy = new KisNodeDummy(nodeShapeFromId(i)); + m_dummiesGraph->addNode(dummy, parent, 0); + } + + parent = findDummyById(m_rootDummy, 1); + Q_ASSERT(parent); + for(int i = 8; i >= 7; i--) { + KisNodeDummy *dummy = new KisNodeDummy(nodeShapeFromId(i)); + m_dummiesGraph->addNode(dummy, parent, 0); + } + + parent = findDummyById(m_rootDummy, 4); + Q_ASSERT(parent); + for(int i = 11; i >= 9; i--) { + KisNodeDummy *dummy = new KisNodeDummy(nodeShapeFromId(i)); + m_dummiesGraph->addNode(dummy, parent, 0); + } + + QString realGraph = collectGraphPattern(m_rootDummy); + QString expectedGraph = "0 1 7 8 2 3 4 9 10 11 5 6"; + + QCOMPARE(realGraph, expectedGraph); +} + +void KisNodeDummiesGraphTest::cleanup() +{ + delete m_rootDummy; + delete m_dummiesGraph; +} + + +void KisNodeDummiesGraphTest::testPrepend() +{ + KisNodeDummy *parent = findDummyById(m_rootDummy, 4); + KisNodeDummy *dummy = new KisNodeDummy(nodeShapeFromId(13)); + m_dummiesGraph->addNode(dummy, parent, 0); + + QString realGraph = collectGraphPattern(m_rootDummy); + QString expectedGraph = "0 1 7 8 2 3 4 13 9 10 11 5 6"; + + QCOMPARE(realGraph, expectedGraph); +} + +void KisNodeDummiesGraphTest::testAppend() +{ + KisNodeDummy *parent = findDummyById(m_rootDummy, 4); + KisNodeDummy *dummy = new KisNodeDummy(nodeShapeFromId(13)); + m_dummiesGraph->addNode(dummy, parent, parent->lastChild()); + + QString realGraph = collectGraphPattern(m_rootDummy); + QString expectedGraph = "0 1 7 8 2 3 4 9 10 11 13 5 6"; + + QCOMPARE(realGraph, expectedGraph); +} + +void KisNodeDummiesGraphTest::testInsert() +{ + KisNodeDummy *parent = findDummyById(m_rootDummy, 4); + KisNodeDummy *aboveThis = findDummyById(m_rootDummy, 10); + + KisNodeDummy *dummy = new KisNodeDummy(nodeShapeFromId(13)); + m_dummiesGraph->addNode(dummy, parent, aboveThis); + + QString realGraph = collectGraphPattern(m_rootDummy); + QString expectedGraph = "0 1 7 8 2 3 4 9 10 13 11 5 6"; + + QCOMPARE(realGraph, expectedGraph); +} + +void KisNodeDummiesGraphTest::testNewSubgraph() +{ + KisNodeDummy *parent = findDummyById(m_rootDummy, 3); + + KisNodeDummy *dummy = new KisNodeDummy(nodeShapeFromId(13)); + m_dummiesGraph->addNode(dummy, parent, 0); + + QString realGraph = collectGraphPattern(m_rootDummy); + QString expectedGraph = "0 1 7 8 2 3 13 4 9 10 11 5 6"; + + QCOMPARE(realGraph, expectedGraph); +} + +void KisNodeDummiesGraphTest::testRemoveFirst() +{ + KisNodeDummy *parent = findDummyById(m_rootDummy, 4); + KisNodeDummy *child = parent->firstChild(); + m_dummiesGraph->removeNode(child); + delete child; + + QString realGraph = collectGraphPattern(m_rootDummy); + QString expectedGraph = "0 1 7 8 2 3 4 10 11 5 6"; + + QCOMPARE(realGraph, expectedGraph); +} + +void KisNodeDummiesGraphTest::testRemoveLast() +{ + KisNodeDummy *parent = findDummyById(m_rootDummy, 4); + KisNodeDummy *child = parent->lastChild(); + m_dummiesGraph->removeNode(child); + delete child; + + QString realGraph = collectGraphPattern(m_rootDummy); + QString expectedGraph = "0 1 7 8 2 3 4 9 10 5 6"; + + QCOMPARE(realGraph, expectedGraph); +} + +void KisNodeDummiesGraphTest::testRemoveBranch() +{ + KisNodeDummy *parent = findDummyById(m_rootDummy, 1); + KisNodeDummy *child; + + child = parent->firstChild(); + m_dummiesGraph->removeNode(child); + delete child; + + child = parent->lastChild(); + m_dummiesGraph->removeNode(child); + delete child; + + QString realGraph = collectGraphPattern(m_rootDummy); + QString expectedGraph = "0 1 2 3 4 9 10 11 5 6"; + + QCOMPARE(realGraph, expectedGraph); +} + +void KisNodeDummiesGraphTest::testReverseTraversing() +{ + QString forwardGraph = collectGraphPattern(m_rootDummy); + QString reverseGraph = collectGraphPatternReverse(m_rootDummy);; + + QCOMPARE(reverseGraph, forwardGraph); +} + +QTEST_KDEMAIN(KisNodeDummiesGraphTest, GUI) diff -Nru calligra-2.3.86/krita/ui/tests/kis_node_dummies_graph_test.h calligra-2.3.87/krita/ui/tests/kis_node_dummies_graph_test.h --- calligra-2.3.86/krita/ui/tests/kis_node_dummies_graph_test.h 1970-01-01 00:00:00.000000000 +0000 +++ calligra-2.3.87/krita/ui/tests/kis_node_dummies_graph_test.h 2012-01-28 07:04:49.000000000 +0000 @@ -0,0 +1,51 @@ +/* + * Copyright (c) 2011 Dmitry Kazakov + * + * This program is free software; you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation; either version 2 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program; if not, write to the Free Software + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. + */ + +#ifndef __KIS_NODE_DUMMIES_GRAPH_TEST_H +#define __KIS_NODE_DUMMIES_GRAPH_TEST_H + +#include + +class KisNodeDummy; +class KisNodeDummiesGraph; + + +class KisNodeDummiesGraphTest : public QObject +{ + Q_OBJECT +private slots: + void init(); + void cleanup(); + + void testPrepend(); + void testAppend(); + void testInsert(); + void testNewSubgraph(); + + void testRemoveFirst(); + void testRemoveLast(); + void testRemoveBranch(); + + void testReverseTraversing(); + +private: + KisNodeDummy *m_rootDummy; + KisNodeDummiesGraph *m_dummiesGraph; +}; + +#endif /* __KIS_NODE_DUMMIES_GRAPH_TEST_H */ diff -Nru calligra-2.3.86/krita/ui/tests/kis_node_shapes_graph_test.cpp calligra-2.3.87/krita/ui/tests/kis_node_shapes_graph_test.cpp --- calligra-2.3.86/krita/ui/tests/kis_node_shapes_graph_test.cpp 1970-01-01 00:00:00.000000000 +0000 +++ calligra-2.3.87/krita/ui/tests/kis_node_shapes_graph_test.cpp 2012-01-28 07:04:49.000000000 +0000 @@ -0,0 +1,146 @@ +/* + * Copyright (c) 2011 Dmitry Kazakov + * + * This program is free software; you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation; either version 2 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program; if not, write to the Free Software + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. + */ + +#include "kis_node_shapes_graph_test.h" + +#include + +#include "kis_node_shapes_graph.h" +#include "node_shapes_utils.h" + + +/** + * node0 + * +--node1 + * +--node7 + * +--node8 + * +--node2 + * +--node3 + * +--node4 + * +--node9 + * +--node10 + * +--node11 + * +--node5 + * +--node6 + */ + +void KisNodeShapesGraphTest::init() +{ + m_shapesGraph = new KisNodeShapesGraph(); + KisNodeSP rootNode = nodeFromId(0); + m_shapesGraph->addNode(rootNode, 0, 0); + m_rootDummy = m_shapesGraph->nodeToDummy(rootNode); + + + KisNodeSP parent; + + parent = rootNode; + for(int i = 6; i >= 1; i--) { + m_shapesGraph->addNode(nodeFromId(i), parent, 0); + } + + parent = findNodeById(m_rootDummy, 1); + Q_ASSERT(parent); + for(int i = 8; i >= 7; i--) { + m_shapesGraph->addNode(nodeFromId(i), parent, 0); + } + + parent = findNodeById(m_rootDummy, 4); + Q_ASSERT(parent); + for(int i = 11; i >= 9; i--) { + m_shapesGraph->addNode(nodeFromId(i), parent, 0); + } + + QString realGraph = collectGraphPattern(m_rootDummy); + QString expectedGraph = "0 1 7 8 2 3 4 9 10 11 5 6"; + + QCOMPARE(realGraph, expectedGraph); +} + +void KisNodeShapesGraphTest::cleanup() +{ + delete m_rootDummy; + delete m_shapesGraph; +} + +void KisNodeShapesGraphTest::testShapeChildren() +{ + KisNodeShape *parent = m_shapesGraph->nodeToShape(findNodeById(m_rootDummy, 4)); + QList expectedChildren; + + for(int i = 9; i <= 11; i++) { + expectedChildren.append(m_shapesGraph->nodeToShape(findNodeById(m_rootDummy, i))); + } + + QList realChildren = parent->shapes(); + + foreach(KoShape *shape, realChildren) { + KisNodeShape *nodeShape = dynamic_cast(shape); + + QVERIFY(expectedChildren.contains(nodeShape)); + expectedChildren.removeOne(nodeShape); + } + + QVERIFY(expectedChildren.isEmpty()); +} + +void KisNodeShapesGraphTest::testInsert() +{ + KisNodeSP parent = findNodeById(m_rootDummy, 4); + KisNodeSP aboveThis = findNodeById(m_rootDummy, 10); + KisNodeSP node = nodeFromId(13); + + KisNodeShape *addedShape = + m_shapesGraph->addNode(node, parent, aboveThis); + + QString realGraph = collectGraphPattern(m_rootDummy); + QString expectedGraph = "0 1 7 8 2 3 4 9 10 13 11 5 6"; + QCOMPARE(realGraph, expectedGraph); + + KisNodeShape *nodeShape = m_shapesGraph->nodeToShape(node); + KisNodeShape *parentShape = m_shapesGraph->nodeToShape(parent); + QCOMPARE(addedShape, nodeShape); + QCOMPARE(((KoShape*)nodeShape)->parent(), parentShape); +} + +void KisNodeShapesGraphTest::testRemove() +{ + KisNodeSP parent = findNodeById(m_rootDummy, 4); + KisNodeSP node = findNodeById(m_rootDummy, 10); + + KisNodeShape *parentShape = m_shapesGraph->nodeToShape(parent); + + QCOMPARE(parentShape->shapeCount(), 3); + m_shapesGraph->removeNode(node); + QCOMPARE(parentShape->shapeCount(), 2); + + QString realGraph = collectGraphPattern(m_rootDummy); + QString expectedGraph = "0 1 7 8 2 3 4 9 11 5 6"; + QCOMPARE(realGraph, expectedGraph); +} + +void KisNodeShapesGraphTest::testRemoveRootNode() +{ + KisNodeSP root = findNodeById(m_rootDummy, 0); + m_rootDummy = 0; + + m_shapesGraph->removeNode(root); + QCOMPARE(m_shapesGraph->shapesCount(), 0); +} + +QTEST_KDEMAIN(KisNodeShapesGraphTest, GUI) diff -Nru calligra-2.3.86/krita/ui/tests/kis_node_shapes_graph_test.h calligra-2.3.87/krita/ui/tests/kis_node_shapes_graph_test.h --- calligra-2.3.86/krita/ui/tests/kis_node_shapes_graph_test.h 1970-01-01 00:00:00.000000000 +0000 +++ calligra-2.3.87/krita/ui/tests/kis_node_shapes_graph_test.h 2012-01-28 07:04:49.000000000 +0000 @@ -0,0 +1,44 @@ +/* + * Copyright (c) 2011 Dmitry Kazakov + * + * This program is free software; you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation; either version 2 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program; if not, write to the Free Software + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. + */ + +#ifndef __KIS_NODE_SHAPES_GRAPH_TEST_H +#define __KIS_NODE_SHAPES_GRAPH_TEST_H + +#include + +class KisNodeDummy; +class KisNodeShapesGraph; + +class KisNodeShapesGraphTest : public QObject +{ + Q_OBJECT +private slots: + void init(); + void cleanup(); + + void testShapeChildren(); + void testInsert(); + void testRemove(); + void testRemoveRootNode(); + +private: + KisNodeDummy *m_rootDummy; + KisNodeShapesGraph *m_shapesGraph; +}; + +#endif /* __KIS_NODE_SHAPES_GRAPH_TEST_H */ diff -Nru calligra-2.3.86/krita/ui/tests/kis_shape_controller_test.cpp calligra-2.3.87/krita/ui/tests/kis_shape_controller_test.cpp --- calligra-2.3.86/krita/ui/tests/kis_shape_controller_test.cpp 2012-01-07 03:25:02.000000000 +0000 +++ calligra-2.3.87/krita/ui/tests/kis_shape_controller_test.cpp 2012-01-28 07:04:49.000000000 +0000 @@ -41,116 +41,209 @@ #include "kis_types.h" #include "kis_transparency_mask.h" +#include "node_shapes_utils.h" + + +void KisShapeControllerTest::init() +{ + m_doc = new KisDoc2; + m_nameServer = new KisNameServer(); + m_shapeController = new KisShapeController(m_doc, m_nameServer); + + m_image = new KisImage(0, 512, 512, 0, "test"); + m_layer1 = new KisPaintLayer(m_image, "layer1", OPACITY_OPAQUE_U8); + m_layer2 = new KisGroupLayer(m_image, "layer2", OPACITY_OPAQUE_U8); + m_layer3 = new KisCloneLayer(m_layer1, m_image, "layer3", OPACITY_OPAQUE_U8); + m_layer4 = new KisGroupLayer(m_image, "layer4", OPACITY_OPAQUE_U8); + m_mask1 = new KisTransparencyMask(); +} + +void KisShapeControllerTest::cleanup() +{ + m_layer1 = 0; + m_layer2 = 0; + m_layer3 = 0; + m_layer4 = 0; + m_mask1 = 0; + m_image = 0; + + delete m_shapeController; + delete m_nameServer; + delete m_doc; +} + +void KisShapeControllerTest::constructImage() +{ + m_image->addNode(m_layer1); + m_image->addNode(m_layer2); + m_image->addNode(m_layer3); + m_image->addNode(m_layer4); + m_image->addNode(m_mask1, m_layer3); +} + void KisShapeControllerTest::testSetImage() { - KisDoc2 doc; - KisNameServer nameServer; - KisShapeController shapeController(&doc, &nameServer); + constructImage(); - KisImageSP image = new KisImage(0, 512, 512, 0, "shape controller test"); - QCOMPARE((int)image->rootLayer()->childCount(), 0); + m_shapeController->setImage(m_image); - KisLayerSP layer = new KisPaintLayer(image, "test1", OPACITY_OPAQUE_U8); - image->addNode(layer); - QCOMPARE((int)image->rootLayer()->childCount(), 1); + QString actualGraph = collectGraphPatternFull(m_shapeController->dummyForNode(m_image->root())); + QString expectedGraph = "root layer1 layer2 layer3 effect layer4"; - shapeController.setImage(image); - QCOMPARE(shapeController.layerMapSize(), 2); + QCOMPARE(actualGraph, expectedGraph); + QCOMPARE(m_shapeController->layerMapSize(), 6); - shapeController.setImage(0); - QCOMPARE(shapeController.layerMapSize(), 0); + m_shapeController->setImage(0); + QCOMPARE(m_shapeController->layerMapSize(), 0); +} +void KisShapeControllerTest::testAddNode() +{ + QString actualGraph; + QString expectedGraph; + + m_shapeController->setImage(m_image); + + actualGraph = collectGraphPatternFull(m_shapeController->dummyForNode(m_image->root())); + expectedGraph = "root"; + + QCOMPARE(actualGraph, expectedGraph); + QCOMPARE(m_shapeController->layerMapSize(), 1); + + constructImage(); + + actualGraph = collectGraphPatternFull(m_shapeController->dummyForNode(m_image->root())); + expectedGraph = "root layer1 layer2 layer3 effect layer4"; + + QCOMPARE(actualGraph, expectedGraph); + QCOMPARE(m_shapeController->layerMapSize(), 6); + + m_shapeController->setImage(0); + QCOMPARE(m_shapeController->layerMapSize(), 0); + + m_shapeController->setImage(0); } -void KisShapeControllerTest::testAddShape() +void KisShapeControllerTest::testRemoveNode() { + QString actualGraph; + QString expectedGraph; - KisDoc2 doc; - KisNameServer nameServer; - KisShapeController shapeController(&doc, &nameServer); + constructImage(); - KisImageSP image = new KisImage(0, 512, 512, 0, "shape controller test"); + m_shapeController->setImage(m_image); - QCOMPARE((int)image->rootLayer()->childCount(), 0); + actualGraph = collectGraphPatternFull(m_shapeController->dummyForNode(m_image->root())); + expectedGraph = "root layer1 layer2 layer3 effect layer4"; - KisLayerSP layer = new KisPaintLayer(image, "test1", OPACITY_OPAQUE_U8); - image->addNode(layer); - QCOMPARE((int)image->rootLayer()->childCount(), 1); + QCOMPARE(actualGraph, expectedGraph); + QCOMPARE(m_shapeController->layerMapSize(), 6); - shapeController.setImage(image); - QCOMPARE(shapeController.layerMapSize(), 2); + m_image->removeNode(m_layer2); - KisGroupLayerSP layer2 = new KisGroupLayer(image, "test2", OPACITY_OPAQUE_U8); - image->addNode(layer2.data()); + actualGraph = collectGraphPatternFull(m_shapeController->dummyForNode(m_image->root())); + expectedGraph = "root layer1 layer3 effect layer4"; - QVERIFY(shapeController.shapeForNode(layer2.data()) != 0); - QCOMPARE((int)image->rootLayer()->childCount(), 2); - QCOMPARE(shapeController.layerMapSize(), 3); + QCOMPARE(actualGraph, expectedGraph); + QCOMPARE(m_shapeController->layerMapSize(), 5); - KisLayerSP layer3 = new KisCloneLayer(layer, image, "clonetest", OPACITY_OPAQUE_U8); - image->addNode(layer3, layer2); - QCOMPARE((int)image->rootLayer()->childCount(), 2); - QCOMPARE(shapeController.layerMapSize(), 4); + m_image->removeNode(m_layer3); - KisLayerSP layer4 = new KisGroupLayer(image, "grouptest", OPACITY_OPAQUE_U8); - image->addNode(layer4, layer2); - QCOMPARE(shapeController.layerMapSize(), 5); + actualGraph = collectGraphPatternFull(m_shapeController->dummyForNode(m_image->root())); + expectedGraph = "root layer1 layer4"; - KisMaskSP mask1 = new KisTransparencyMask(); - image->addNode(mask1.data(), layer3.data()); - QCOMPARE(shapeController.layerMapSize(), 6); + QCOMPARE(actualGraph, expectedGraph); + QCOMPARE(m_shapeController->layerMapSize(), 3); - shapeController.setImage(0); + m_shapeController->setImage(0); } -void KisShapeControllerTest::testRemoveShape() +void KisShapeControllerTest::testMoveNodeSameParent() { - KisDoc2 doc; - KisNameServer nameServer; - KisShapeController shapeController(&doc, &nameServer); + QString actualGraph; + QString expectedGraph; - KisImageSP image = new KisImage(0, 512, 512, 0, "shape controller test"); - QCOMPARE((int)image->rootLayer()->childCount(), 0); + constructImage(); - KisLayerSP layer = new KisPaintLayer(image, "test1", OPACITY_OPAQUE_U8); - image->addNode(layer); - QCOMPARE((int)image->rootLayer()->childCount(), 1); + m_shapeController->setImage(m_image); - shapeController.setImage(image); - QCOMPARE(shapeController.layerMapSize(), 2); + actualGraph = collectGraphPatternFull(m_shapeController->dummyForNode(m_image->root())); + expectedGraph = "root layer1 layer2 layer3 effect layer4"; - KisGroupLayerSP layer2 = new KisGroupLayer(image, "test2", OPACITY_OPAQUE_U8); - image->addNode(layer2.data()); + QCOMPARE(actualGraph, expectedGraph); + QCOMPARE(m_shapeController->layerMapSize(), 6); - QVERIFY(shapeController.shapeForNode(layer2.data()) != 0); - QCOMPARE((int)image->rootLayer()->childCount(), 2); - QCOMPARE(shapeController.layerMapSize(), 3); + m_image->moveNode(m_layer2, m_image->root(), m_layer3); - KisLayerSP layer3 = new KisCloneLayer(layer, image, "clonetest", OPACITY_OPAQUE_U8); - image->addNode(layer3, layer2); - QCOMPARE((int)image->rootLayer()->childCount(), 2); - QCOMPARE(shapeController.layerMapSize(), 4); + actualGraph = collectGraphPatternFull(m_shapeController->dummyForNode(m_image->root())); + expectedGraph = "root layer1 layer3 effect layer2 layer4"; - KisLayerSP layer4 = new KisGroupLayer(image, "grouptest", OPACITY_OPAQUE_U8); - image->addNode(layer4, layer2); - QCOMPARE(shapeController.layerMapSize(), 5); + QCOMPARE(actualGraph, expectedGraph); + QCOMPARE(m_shapeController->layerMapSize(), 6); - KisMaskSP mask1 = new KisTransparencyMask(); - image->addNode(mask1.data(), layer3.data()); - QCOMPARE(shapeController.layerMapSize(), 6); -#if 0 -XXX: Is this really broken ? + m_shapeController->setImage(0); +} - image->removeNode(layer2); - qDebug() << ">>>>>>>>>> " << shapeController.layerMapSize(); - QCOMPARE(shapeController.layerMapSize(), 2); +void KisShapeControllerTest::testMoveNodeDifferentParent() +{ + QString actualGraph; + QString expectedGraph; - image->removeNode(layer); - qDebug() << ">>>>>>>>>> " << shapeController.layerMapSize(); - QCOMPARE(shapeController.layerMapSize(), 1); -#endif - shapeController.setImage(0); + constructImage(); + + m_shapeController->setImage(m_image); + + actualGraph = collectGraphPatternFull(m_shapeController->dummyForNode(m_image->root())); + expectedGraph = "root layer1 layer2 layer3 effect layer4"; + + QCOMPARE(actualGraph, expectedGraph); + QCOMPARE(m_shapeController->layerMapSize(), 6); + + m_image->moveNode(m_layer2, m_image->root(), m_layer4); + + actualGraph = collectGraphPatternFull(m_shapeController->dummyForNode(m_image->root())); + expectedGraph = "root layer1 layer3 effect layer4 layer2"; + + QCOMPARE(actualGraph, expectedGraph); + QCOMPARE(m_shapeController->layerMapSize(), 6); + + m_image->moveNode(m_layer3, m_layer4, m_layer4->lastChild()); + + actualGraph = collectGraphPatternFull(m_shapeController->dummyForNode(m_image->root())); + expectedGraph = "root layer1 layer4 layer3 effect layer2"; + + QCOMPARE(actualGraph, expectedGraph); + QCOMPARE(m_shapeController->layerMapSize(), 6); + + m_shapeController->setImage(0); +} + +void KisShapeControllerTest::testSubstituteRootNode() +{ + QString actualGraph; + QString expectedGraph; + + constructImage(); + + m_shapeController->setImage(m_image); + + actualGraph = collectGraphPatternFull(m_shapeController->dummyForNode(m_image->root())); + expectedGraph = "root layer1 layer2 layer3 effect layer4"; + + QCOMPARE(actualGraph, expectedGraph); + QCOMPARE(m_shapeController->layerMapSize(), 6); + + m_image->flatten(); + + actualGraph = collectGraphPatternFull(m_shapeController->dummyForNode(m_image->root())); + expectedGraph = "root Layer 1"; + + QCOMPARE(actualGraph, expectedGraph); + QCOMPARE(m_shapeController->layerMapSize(), 2); + + m_shapeController->setImage(0); } + QTEST_KDEMAIN(KisShapeControllerTest, GUI) #include "kis_shape_controller_test.moc" diff -Nru calligra-2.3.86/krita/ui/tests/kis_shape_controller_test.h calligra-2.3.87/krita/ui/tests/kis_shape_controller_test.h --- calligra-2.3.86/krita/ui/tests/kis_shape_controller_test.h 2012-01-07 03:25:02.000000000 +0000 +++ calligra-2.3.87/krita/ui/tests/kis_shape_controller_test.h 2012-01-28 07:04:49.000000000 +0000 @@ -26,17 +26,37 @@ class KisImage; class KisShapeController; +#include "kis_types.h" + + class KisShapeControllerTest : public QObject { Q_OBJECT private slots: + void init(); + void cleanup(); - // tests void testSetImage(); - void testAddShape(); - void testRemoveShape(); - + void testAddNode(); + void testRemoveNode(); + void testMoveNodeSameParent(); + void testMoveNodeDifferentParent(); + void testSubstituteRootNode(); + +private: + void constructImage(); + +private: + KisDoc2 *m_doc; + KisNameServer *m_nameServer; + KisShapeController *m_shapeController; + KisImageSP m_image; + KisLayerSP m_layer1; + KisLayerSP m_layer2; + KisLayerSP m_layer3; + KisLayerSP m_layer4; + KisMaskSP m_mask1; }; #endif diff -Nru calligra-2.3.86/krita/ui/tests/node_shapes_utils.h calligra-2.3.87/krita/ui/tests/node_shapes_utils.h --- calligra-2.3.86/krita/ui/tests/node_shapes_utils.h 1970-01-01 00:00:00.000000000 +0000 +++ calligra-2.3.87/krita/ui/tests/node_shapes_utils.h 2012-01-28 07:04:49.000000000 +0000 @@ -0,0 +1,103 @@ +/* + * Copyright (c) 2011 Dmitry Kazakov + * + * This program is free software; you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation; either version 2 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program; if not, write to the Free Software + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. + */ + +#ifndef __NODE_SHAPES_UTILS_H +#define __NODE_SHAPES_UTILS_H + +#include "kis_node_shape.h" +#include "kis_node_shapes_graph.h" +#include "kis_node_dummies_graph.h" +#include "testutil.h" + +inline KisNodeSP nodeFromId(int id) { + KisNodeSP node = new TestUtil::TestNode(); + node->setName(QString("node%1").arg(id)); + return node; +} + +inline KisNodeShape* nodeShapeFromId(int id) { + return new KisNodeShape(nodeFromId(id)); +} + +inline bool checkDummyId(KisNodeDummy *dummy, int id) { + return dummy->nodeShape()->node()->name() == QString("node%1").arg(id); +} + +inline KisNodeDummy* findDummyById(KisNodeDummy *root, int id) +{ + if(checkDummyId(root, id)) return root; + + KisNodeDummy *foundDummy = 0; + KisNodeDummy *child = root->firstChild(); + while(child) { + foundDummy = findDummyById(child, id); + if(foundDummy) break; + child = child->nextSibling(); + } + return foundDummy; +} + +inline KisNodeSP findNodeById(KisNodeDummy *root, int id) +{ + KisNodeDummy *dummy = findDummyById(root, id); + Q_ASSERT(dummy); + + return dummy->nodeShape()->node(); +} + +inline QString dummyId(KisNodeDummy *dummy, const QString removePrefix) { + QString nodeName = dummy->nodeShape()->node()->name(); + + if(!removePrefix.isEmpty()) { + nodeName = QString::number(nodeName.remove(removePrefix).toInt()); + } + + return nodeName; +} + +inline QString collectGraphPattern(KisNodeDummy *root, const QString removePrefix = "node") +{ + QString result = dummyId(root, removePrefix) + ' '; + + KisNodeDummy *child = root->firstChild(); + while(child) { + result += collectGraphPattern(child, removePrefix) + ' '; + child = child->nextSibling(); + } + return result.trimmed(); +} + +inline QString collectGraphPatternFull(KisNodeDummy *root) { + return collectGraphPattern(root, ""); +} + +QString collectGraphPatternReverse(KisNodeDummy *root) +{ + QString result; + + KisNodeDummy *child = root->lastChild(); + while(child) { + result = collectGraphPattern(child) + ' ' + result; + child = child->prevSibling(); + } + result = dummyId(root, "node") + ' ' + result; + + return result.trimmed(); +} + +#endif /* __NODE_SHAPES_UTILS_H */ diff -Nru calligra-2.3.86/krita/ui/tool/kis_tool.cc calligra-2.3.87/krita/ui/tool/kis_tool.cc --- calligra-2.3.86/krita/ui/tool/kis_tool.cc 2012-01-07 03:25:02.000000000 +0000 +++ calligra-2.3.87/krita/ui/tool/kis_tool.cc 2012-01-28 07:04:49.000000000 +0000 @@ -45,10 +45,6 @@ #include #endif -#include "kis_node_shape.h" -#include "kis_layer_container_shape.h" -#include "kis_shape_layer.h" - #include #include #include diff -Nru calligra-2.3.86/krita/ui/widgets/kis_filter_selector_widget.cc calligra-2.3.87/krita/ui/widgets/kis_filter_selector_widget.cc --- calligra-2.3.86/krita/ui/widgets/kis_filter_selector_widget.cc 2012-01-07 03:25:02.000000000 +0000 +++ calligra-2.3.87/krita/ui/widgets/kis_filter_selector_widget.cc 2012-01-28 07:04:49.000000000 +0000 @@ -38,6 +38,15 @@ #include "kis_filters_model.h" #include "kis_config.h" +class ThumbnailBounds : public KisDefaultBounds { + + QRect bounds() const + { + return QRect(0, 0, 100, 100); + } +}; + + struct KisFilterSelectorWidget::Private { QWidget* currentCentralWidget; KisConfigWidget* currentFilterConfigurationWidget; @@ -92,6 +101,7 @@ d->paintDevice = _paintDevice; d->thumb = d->paintDevice->createThumbnailDevice(100, 100); + d->thumb->setDefaultBounds(new ThumbnailBounds()); d->filtersModel = new KisFiltersModel(d->thumb); d->uiFilterSelector.filtersSelector->setFilterModel(d->filtersModel); d->uiFilterSelector.filtersSelector->header()->setVisible(false); diff -Nru calligra-2.3.86/krita/ui/widgets/kis_preset_chooser.cpp calligra-2.3.87/krita/ui/widgets/kis_preset_chooser.cpp --- calligra-2.3.86/krita/ui/widgets/kis_preset_chooser.cpp 2012-01-07 03:25:02.000000000 +0000 +++ calligra-2.3.87/krita/ui/widgets/kis_preset_chooser.cpp 2012-01-28 07:04:49.000000000 +0000 @@ -27,6 +27,7 @@ #include #include #include +#include #include #include @@ -72,8 +73,11 @@ KisPaintOpPreset* preset = static_cast(index.internalPointer()); if (option.state & QStyle::State_Selected) { - painter->setPen(QPen(option.palette.highlight(), 2.0)); + painter->setPen(QPen(option.palette.highlightedText(), 2.0)); painter->fillRect(option.rect, option.palette.highlight()); + } else { + painter->setPen(QPen(option.palette.text(), 2.0)); + } QImage preview = preset->image(); @@ -91,7 +95,6 @@ painter->drawImage(paintRect.x(), paintRect.y(), preview.scaled(pixSize, Qt::KeepAspectRatio)); - painter->setPen(Qt::black); painter->drawText(pixSize.width() + 10, option.rect.y() + option.rect.height() - 10, preset->name()); } diff -Nru calligra-2.3.86/libs/flake/CMakeLists.txt calligra-2.3.87/libs/flake/CMakeLists.txt --- calligra-2.3.86/libs/flake/CMakeLists.txt 2012-01-07 03:25:02.000000000 +0000 +++ calligra-2.3.87/libs/flake/CMakeLists.txt 2012-01-28 07:04:49.000000000 +0000 @@ -163,6 +163,7 @@ commands/KoEventActionAddCommand.cpp commands/KoEventActionRemoveCommand.cpp commands/KoShapeRenameCommand.cpp + commands/KoShapeRunAroundCommand.cpp commands/KoPathPointMergeCommand.cpp commands/KoShapeTransparencyCommand.cpp commands/KoShapeClipCommand.cpp diff -Nru calligra-2.3.86/libs/flake/commands/KoShapeRunAroundCommand.cpp calligra-2.3.87/libs/flake/commands/KoShapeRunAroundCommand.cpp --- calligra-2.3.86/libs/flake/commands/KoShapeRunAroundCommand.cpp 1970-01-01 00:00:00.000000000 +0000 +++ calligra-2.3.87/libs/flake/commands/KoShapeRunAroundCommand.cpp 2012-01-28 07:04:49.000000000 +0000 @@ -0,0 +1,82 @@ +/* This file is part of the KDE project + * Copyright (C) 2008 Thorsten Zachmann + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU Library General Public + * License as published by the Free Software Foundation; either + * version 2 of the License, or (at your option) any later version. + * + * This library is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + * Library General Public License for more details. + * + * You should have received a copy of the GNU Library General Public License + * along with this library; see the file COPYING.LIB. If not, write to + * the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, + * Boston, MA 02110-1301, USA. + */ + +#include "KoShapeRunAroundCommand.h" + +#include +#include +#include "KoShape.h" + +class KoShapeRunAroundCommand::Private +{ +public: + Private(KoShape *s, KoShape::TextRunAroundSide side, int runThrough, qreal distance, qreal threshold) + : shape(s) + , newSide(side) + , newRunThrough(runThrough) + , newDistance(distance) + , newThreshold(threshold) + , oldSide(shape->textRunAroundSide()) + , oldRunThrough(shape->runThrough()) + , oldDistance(shape->textRunAroundDistance()) + , oldThreshold(shape->textRunAroundThreshold()) + {} + + KoShape *shape; + KoShape::TextRunAroundSide newSide; + int newRunThrough; + qreal newDistance; + qreal newThreshold; + KoShape::TextRunAroundSide oldSide; + int oldRunThrough; + qreal oldDistance; + qreal oldThreshold; +}; + +KoShapeRunAroundCommand::KoShapeRunAroundCommand(KoShape *shape, KoShape::TextRunAroundSide side, int runThrough, qreal distance, qreal threshold, KUndo2Command *parent) +: KUndo2Command(parent) +, d(new Private(shape, side, runThrough, distance, threshold)) +{ + setText(i18nc("(qtundo-format)", "Change Shape RunAround")); +} + +KoShapeRunAroundCommand::~KoShapeRunAroundCommand() +{ + delete d; +} + +void KoShapeRunAroundCommand::redo() +{ + KUndo2Command::redo(); + d->shape->setTextRunAroundSide(d->newSide, KoShape::Background); + d->shape->setRunThrough(d->newRunThrough); + d->shape->setTextRunAroundDistance(d->newDistance); + d->shape->setTextRunAroundThreshold(d->newThreshold); + d->shape->notifyChanged(); +} + +void KoShapeRunAroundCommand::undo() +{ + KUndo2Command::undo(); + d->shape->setTextRunAroundSide(d->oldSide, KoShape::Background); + d->shape->setRunThrough(d->oldRunThrough); + d->shape->setTextRunAroundDistance(d->oldDistance); + d->shape->setTextRunAroundThreshold(d->oldThreshold); + d->shape->notifyChanged(); +} diff -Nru calligra-2.3.86/libs/flake/commands/KoShapeRunAroundCommand.h calligra-2.3.87/libs/flake/commands/KoShapeRunAroundCommand.h --- calligra-2.3.86/libs/flake/commands/KoShapeRunAroundCommand.h 1970-01-01 00:00:00.000000000 +0000 +++ calligra-2.3.87/libs/flake/commands/KoShapeRunAroundCommand.h 2012-01-28 07:04:49.000000000 +0000 @@ -0,0 +1,45 @@ +/* This file is part of the KDE project + * Copyright (C) 2008 Thorsten Zachmann + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU Library General Public + * License as published by the Free Software Foundation; either + * version 2 of the License, or (at your option) any later version. + * + * This library is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + * Library General Public License for more details. + * + * You should have received a copy of the GNU Library General Public License + * along with this library; see the file COPYING.LIB. If not, write to + * the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, + * Boston, MA 02110-1301, USA. + */ + +#ifndef KOSHAPERUNAROUNDCOMMAND_H +#define KOSHAPERUNAROUNDCOMMAND_H + +#include "flake_export.h" +#include + +#include + +/// API docs go here +class FLAKE_EXPORT KoShapeRunAroundCommand : public KUndo2Command +{ +public: + KoShapeRunAroundCommand(KoShape *shape, KoShape::TextRunAroundSide side, int runThrough, qreal distance, qreal threshold, KUndo2Command *parent = 0); + virtual ~KoShapeRunAroundCommand(); + + /// redo the command + void redo(); + /// revert the actions done in redo + void undo(); + +private: + class Private; + Private * const d; +}; + +#endif /* KOSHAPERUNAROUNDCOMMAND_H */ diff -Nru calligra-2.3.86/libs/flake/flakeborder.desktop calligra-2.3.87/libs/flake/flakeborder.desktop --- calligra-2.3.86/libs/flake/flakeborder.desktop 2012-01-07 03:25:02.000000000 +0000 +++ calligra-2.3.87/libs/flake/flakeborder.desktop 2012-01-28 07:04:49.000000000 +0000 @@ -9,7 +9,7 @@ Name[es]=Definición del borde la forma Name[et]=Kujundi piirde definitsioon Name[fa]=تعریف لبه شکل -Name[fi]=Hahmon rajan määrittely +Name[fi]=Muodon rajan määrittely Name[fr]=Définition d'une bordure de forme Name[fy]=Defenysje fan in foarmrâne Name[gl]=Obexto de definición de contornos @@ -45,7 +45,7 @@ Comment[en_GB]=Definition of a flake shape border Comment[es]=Definición del borde de una forma de Flake Comment[et]=Helbekujundi piirde definitsioon -Comment[fi]=Flake-hahmon rajan määrittely +Comment[fi]=Flake-muodon rajan määrittely Comment[fr]=Définition d'une bordure de forme de flocons Comment[gl]=Definición do elemento contorno dunha obxecto Comment[hi]=फ्लेक आकार किनारा की परिभाषा diff -Nru calligra-2.3.86/libs/flake/flake.desktop calligra-2.3.87/libs/flake/flake.desktop --- calligra-2.3.86/libs/flake/flake.desktop 2012-01-07 03:25:02.000000000 +0000 +++ calligra-2.3.87/libs/flake/flake.desktop 2012-01-28 07:04:49.000000000 +0000 @@ -51,7 +51,7 @@ Comment[en_GB]=A plugin that contains a set of a shape and a tool Comment[es]=Un complemento que contiene un conjunto de una forma y una herramienta Comment[et]=Kujundeid ja tööriistu sisaldav plugin -Comment[fi]=Liitännäinen, joka sisältää hahmon ja vastaavan työkalun +Comment[fi]=Liitännäinen, joka sisältää muodon ja vastaavan työkalun Comment[fr]=Un module externe qui contient un ensemble de formes et un outil Comment[ga]=Breiseán a bhfuil giuirléid agus uirlis ann Comment[gl]=Unha extensión que conten un conxunto de moldes en unha ferramenta diff -Nru calligra-2.3.86/libs/flake/flakeshape.desktop calligra-2.3.87/libs/flake/flakeshape.desktop --- calligra-2.3.86/libs/flake/flakeshape.desktop 2012-01-07 03:25:02.000000000 +0000 +++ calligra-2.3.87/libs/flake/flakeshape.desktop 2012-01-28 07:04:49.000000000 +0000 @@ -8,7 +8,7 @@ Name[en_GB]=Shape definition Name[es]=Definición de la forma Name[et]=Kujundi definitsioon -Name[fi]=Hahmon määrittely +Name[fi]=Muodon määrittely Name[fr]=Définition de formes Name[fy]=Defenysje fan in foarm Name[ga]=Sainmhíniú ar ghiuirléid @@ -47,7 +47,7 @@ Comment[en_GB]=Definition of a flake shape object Comment[es]=Definición de un objeto de forma de Flake Comment[et]=Helbekujundi objekti definitsioon -Comment[fi]=Hahmo-olion määrittely +Comment[fi]=Muoto-olion määrittely Comment[fr]=Définition Engineeringd'un objet en forme de flocon Comment[gl]=Definición do elementod dun obxecto Comment[hi]=फ़्लेक आकार के वस्तु की परिभाषा diff -Nru calligra-2.3.86/libs/flake/KoPasteController.cpp calligra-2.3.87/libs/flake/KoPasteController.cpp --- calligra-2.3.86/libs/flake/KoPasteController.cpp 2012-01-07 03:25:02.000000000 +0000 +++ calligra-2.3.87/libs/flake/KoPasteController.cpp 2012-01-28 07:04:49.000000000 +0000 @@ -32,14 +32,7 @@ void paste() { kDebug(30004) <<"Paste!"; - if (! canvas->toolProxy()->paste()) { - // means paste failed - // TODO find a shape that can be created to hold the relevant content and load it. - } - } - - void selectionChanged() { - // TODO connect here and enable the clipboard if we can handle the paste. + canvas->toolProxy()->paste(); } KoPasteController *parent; diff -Nru calligra-2.3.86/libs/flake/KoPasteController.h calligra-2.3.87/libs/flake/KoPasteController.h --- calligra-2.3.86/libs/flake/KoPasteController.h 2012-01-07 03:25:02.000000000 +0000 +++ calligra-2.3.87/libs/flake/KoPasteController.h 2012-01-28 07:04:49.000000000 +0000 @@ -46,13 +46,8 @@ KoPasteController(KoCanvasBase *canvas, QAction *pasteAction); ~KoPasteController(); -signals: - /// emitted when the user pressed paste and the current tool had no selection. - void pasteRequested(); - private: Q_PRIVATE_SLOT(d, void paste()) - Q_PRIVATE_SLOT(d, void selectionChanged()) class Private; Private * const d; diff -Nru calligra-2.3.86/libs/flake/KoShape.cpp calligra-2.3.87/libs/flake/KoShape.cpp --- calligra-2.3.86/libs/flake/KoShape.cpp 2012-01-07 03:25:02.000000000 +0000 +++ calligra-2.3.87/libs/flake/KoShape.cpp 2012-01-28 07:04:49.000000000 +0000 @@ -844,7 +844,7 @@ return d->textRunAroundSide; } -void KoShape::setTextRunAroundSide(TextRunAroundSide side, Through runThrought) +void KoShape::setTextRunAroundSide(TextRunAroundSide side, RunThroughLevel runThrought) { Q_D(KoShape); diff -Nru calligra-2.3.86/libs/flake/KoShape.h calligra-2.3.87/libs/flake/KoShape.h --- calligra-2.3.86/libs/flake/KoShape.h 2012-01-07 03:25:02.000000000 +0000 +++ calligra-2.3.87/libs/flake/KoShape.h 2012-01-28 07:04:49.000000000 +0000 @@ -147,7 +147,7 @@ /** * TODO */ - enum Through { + enum RunThroughLevel { Background, Foreground }; @@ -370,7 +370,7 @@ * @param side the requested side * @param runThrought run through the foreground or background or... */ - void setTextRunAroundSide(TextRunAroundSide side, Through runThrought = Background); + void setTextRunAroundSide(TextRunAroundSide side, RunThroughLevel runThrough = Background); /** * The space between this shape's edge and text that runs around this shape. diff -Nru calligra-2.3.86/libs/flake/KoShapePaintingContext.cpp calligra-2.3.87/libs/flake/KoShapePaintingContext.cpp --- calligra-2.3.86/libs/flake/KoShapePaintingContext.cpp 2012-01-07 03:25:02.000000000 +0000 +++ calligra-2.3.87/libs/flake/KoShapePaintingContext.cpp 2012-01-28 07:04:49.000000000 +0000 @@ -27,6 +27,7 @@ , showTextShapeOutlines(false) , showTableBorders(true) , showSpellChecking(false) + , showSelections(true) { } @@ -37,6 +38,7 @@ showFormattingCharacters = rm->boolResource(KoCanvasResourceManager::ShowFormattingCharacters); if (forPrint) { showTextShapeOutlines = false; + showFormattingCharacters = false; } else { showTextShapeOutlines = rm->boolResource(KoCanvasResourceManager::ShowTextShapeOutlines); } @@ -46,6 +48,7 @@ showTableBorders = true; } showSpellChecking = !forPrint; + showSelections = !forPrint; } KoShapePaintingContext::~KoShapePaintingContext() diff -Nru calligra-2.3.86/libs/flake/KoShapePaintingContext.h calligra-2.3.87/libs/flake/KoShapePaintingContext.h --- calligra-2.3.86/libs/flake/KoShapePaintingContext.h 2012-01-07 03:25:02.000000000 +0000 +++ calligra-2.3.87/libs/flake/KoShapePaintingContext.h 2012-01-28 07:04:49.000000000 +0000 @@ -43,6 +43,7 @@ bool showTextShapeOutlines; bool showTableBorders; bool showSpellChecking; + bool showSelections; }; #endif /* KOSHAPEPAINTINGCONTEXT_H */ diff -Nru calligra-2.3.86/libs/flake/KoToolBase.cpp calligra-2.3.87/libs/flake/KoToolBase.cpp --- calligra-2.3.86/libs/flake/KoToolBase.cpp 2012-01-07 03:25:02.000000000 +0000 +++ calligra-2.3.87/libs/flake/KoToolBase.cpp 2012-01-28 07:04:49.000000000 +0000 @@ -84,6 +84,11 @@ event->ignore(); } +void KoToolBase::mouseTripleClickEvent(KoPointerEvent *event) +{ + event->ignore(); +} + void KoToolBase::keyPressEvent(QKeyEvent *e) { e->ignore(); diff -Nru calligra-2.3.86/libs/flake/KoToolBase.h calligra-2.3.87/libs/flake/KoToolBase.h --- calligra-2.3.86/libs/flake/KoToolBase.h 2012-01-07 03:25:02.000000000 +0000 +++ calligra-2.3.87/libs/flake/KoToolBase.h 2012-01-28 07:04:49.000000000 +0000 @@ -134,6 +134,14 @@ virtual void mouseDoubleClickEvent(KoPointerEvent *event); /** + * Called when (one of) the mouse or stylus buttons is triple clicked. + * Implementors should call event->ignore() if they do not actually use the event. + * Default implementation ignores this event. + * @param event state and reason of this mouse or stylus press + */ + virtual void mouseTripleClickEvent(KoPointerEvent *event); + + /** * Called when the mouse or stylus moved over the canvas. * Implementors should call event->ignore() if they do not actually use the event. * @param event state and reason of this mouse or stylus move diff -Nru calligra-2.3.86/libs/flake/KoToolProxy.cpp calligra-2.3.87/libs/flake/KoToolProxy.cpp --- calligra-2.3.86/libs/flake/KoToolProxy.cpp 2012-01-07 03:25:02.000000000 +0000 +++ calligra-2.3.87/libs/flake/KoToolProxy.cpp 2012-01-28 07:04:49.000000000 +0000 @@ -33,6 +33,7 @@ #include #include +#include KoToolProxyPrivate::KoToolProxyPrivate(KoToolProxy *p) : activeTool(0), @@ -43,6 +44,7 @@ { scrollTimer.setInterval(100); mouseLeaveWorkaround = false; + multiClickCount = 0; } void KoToolProxyPrivate::timeout() // Auto scroll the canvas @@ -191,67 +193,70 @@ d->mouseLeaveWorkaround = true; } -void KoToolProxy::mousePressEvent(QMouseEvent *event, const QPointF &point) +void KoToolProxy::mousePressEvent(KoPointerEvent *ev) { d->mouseLeaveWorkaround = false; KoInputDevice id; KoToolManager::instance()->priv()->switchInputDevice(id); - d->mouseDownPoint = event->pos(); + d->mouseDownPoint = ev->pos(); if (d->tabletPressed) // refuse to send a press unless there was a release first. return; - KoPointerEvent ev(event, point); - if (d->activeTool) - d->activeTool->mousePressEvent(&ev); - else - event->ignore(); -} + QPointF globalPoint = ev->globalPos(); + if (d->multiClickGlobalPoint != globalPoint) { + if (qAbs(globalPoint.x() - d->multiClickGlobalPoint.x()) > 5|| + qAbs(globalPoint.y() - d->multiClickGlobalPoint.y()) > 5) { + d->multiClickCount = 0; + } + d->multiClickGlobalPoint = globalPoint; + } -void KoToolProxy::mousePressEvent(KoPointerEvent *event) -{ - d->mouseLeaveWorkaround = false; - KoInputDevice id; - KoToolManager::instance()->priv()->switchInputDevice(id); - d->mouseDownPoint = event->pos(); + if (d->multiClickCount && d->multiClickTimeStamp.elapsed() < QApplication::doubleClickInterval()) { + // One more multiclick; + d->multiClickCount++; + } else { + d->multiClickTimeStamp.start(); + d->multiClickCount = 1; + } - if (d->tabletPressed) // refuse to send a press unless there was a release first. - return; + if (d->activeTool) { + switch (d->multiClickCount) { + case 0: + case 1: + d->activeTool->mousePressEvent(ev); + break; + case 2: + d->activeTool->mouseDoubleClickEvent(ev); + break; + case 3: + default: + d->activeTool->mouseTripleClickEvent(ev); + break; + } + } else { + d->multiClickCount = 0; + ev->ignore(); + } +} - if (d->activeTool) - d->activeTool->mousePressEvent(event); - else - event->ignore(); +void KoToolProxy::mousePressEvent(QMouseEvent *event, const QPointF &point) +{ + KoPointerEvent ev(event, point); + mousePressEvent(&ev); } void KoToolProxy::mouseDoubleClickEvent(QMouseEvent *event, const QPointF &point) { - d->mouseLeaveWorkaround = false; - KoInputDevice id; - KoToolManager::instance()->priv()->switchInputDevice(id); - if (d->activeTool == 0) { - event->ignore(); - return; - } - KoPointerEvent ev(event, point); - d->activeTool->mouseDoubleClickEvent(&ev); - if (! event->isAccepted()) - d->activeTool->canvas()->shapeManager()->suggestChangeTool(&ev); + mouseDoubleClickEvent(&ev); } void KoToolProxy::mouseDoubleClickEvent(KoPointerEvent *event) { - d->mouseLeaveWorkaround = false; - KoInputDevice id; - KoToolManager::instance()->priv()->switchInputDevice(id); - if (d->activeTool == 0) { - event->ignore(); - return; - } - - d->activeTool->mouseDoubleClickEvent(event); - if (!event->isAccepted()) + // let us handle it as any other mousepress (where we then detect multi clicks + mousePressEvent(event); + if (!event->isAccepted() && d->activeTool) d->activeTool->canvas()->shapeManager()->suggestChangeTool(event); } diff -Nru calligra-2.3.86/libs/flake/KoToolProxy_p.h calligra-2.3.87/libs/flake/KoToolProxy_p.h --- calligra-2.3.86/libs/flake/KoToolProxy_p.h 2012-01-07 03:25:02.000000000 +0000 +++ calligra-2.3.87/libs/flake/KoToolProxy_p.h 2012-01-28 07:04:49.000000000 +0000 @@ -21,6 +21,7 @@ #define KOTOOLPROXYPRIVATE_P #include +#include #include class KoPointerEvent; @@ -57,6 +58,11 @@ // up until at least 4.3.0 we get a mouse move event when the tablet leaves the canvas. bool mouseLeaveWorkaround; + + // for multi clicking (double click or triple click) we need the following + int multiClickCount; + QPointF multiClickGlobalPoint; + QTime multiClickTimeStamp; }; #endif diff -Nru calligra-2.3.86/libs/flake/KoTosContainer.cpp calligra-2.3.87/libs/flake/KoTosContainer.cpp --- calligra-2.3.86/libs/flake/KoTosContainer.cpp 2012-01-07 03:25:02.000000000 +0000 +++ calligra-2.3.87/libs/flake/KoTosContainer.cpp 2012-01-28 07:04:49.000000000 +0000 @@ -218,7 +218,6 @@ } else { textShape->setSize(size()); } - textShape->setTransformation(transformation()); if (d->resizeBehavior == TextFollowsPreferredTextRect) { textShape->setPosition(d->preferredTextRect.topLeft()); } else { diff -Nru calligra-2.3.86/libs/kopageapp/KoPACanvasBase.h calligra-2.3.87/libs/kopageapp/KoPACanvasBase.h --- calligra-2.3.86/libs/kopageapp/KoPACanvasBase.h 2012-01-07 03:25:02.000000000 +0000 +++ calligra-2.3.87/libs/kopageapp/KoPACanvasBase.h 2012-01-28 07:04:49.000000000 +0000 @@ -84,7 +84,6 @@ /// Recalculates the size of the canvas (needed when zooming or changing pagelayout) virtual void updateSize() = 0; - protected: void paint(QPainter &painter, const QRectF &paintRect); diff -Nru calligra-2.3.86/libs/kopageapp/KoPADocument.cpp calligra-2.3.87/libs/kopageapp/KoPADocument.cpp --- calligra-2.3.86/libs/kopageapp/KoPADocument.cpp 2012-01-07 03:25:02.000000000 +0000 +++ calligra-2.3.87/libs/kopageapp/KoPADocument.cpp 2012-01-28 07:04:49.000000000 +0000 @@ -630,6 +630,13 @@ return page->thumbnail(size); } +QImage KoPADocument::pageThumbImage(KoPAPageBase* page, const QSize& size) +{ + int pageNumber = pageIndex(page) + 1; + d->pageProvider->setPageData(pageNumber, page); + return page->thumbImage(size); +} + void KoPADocument::initEmpty() { d->masterPages.clear(); @@ -763,6 +770,8 @@ KConfigGroup configGroup = config->group( "Grid" ); bool showGrid = configGroup.readEntry( "ShowGrid", defGrid.showGrid() ); gridData().setShowGrid(showGrid); + bool paintGridInBackground = configGroup.readEntry("PaintGridInBackground", defGrid.paintGridInBackground()); + gridData().setPaintGridInBackground(paintGridInBackground); bool snapToGrid = configGroup.readEntry( "SnapToGrid", defGrid.snapToGrid() ); gridData().setSnapToGrid(snapToGrid); qreal spacingX = configGroup.readEntry( "SpacingX", defGrid.gridX() ); diff -Nru calligra-2.3.86/libs/kopageapp/KoPADocument.h calligra-2.3.87/libs/kopageapp/KoPADocument.h --- calligra-2.3.86/libs/kopageapp/KoPADocument.h 2012-01-07 03:25:02.000000000 +0000 +++ calligra-2.3.87/libs/kopageapp/KoPADocument.h 2012-01-28 07:04:49.000000000 +0000 @@ -228,6 +228,8 @@ */ QPixmap pageThumbnail(KoPAPageBase* page, const QSize& size); + QImage pageThumbImage(KoPAPageBase* page, const QSize& size); + public slots: /// reimplemented virtual void initEmpty(); diff -Nru calligra-2.3.86/libs/kopageapp/KoPAMasterPage.cpp calligra-2.3.87/libs/kopageapp/KoPAMasterPage.cpp --- calligra-2.3.86/libs/kopageapp/KoPAMasterPage.cpp 2012-01-07 03:25:02.000000000 +0000 +++ calligra-2.3.87/libs/kopageapp/KoPAMasterPage.cpp 2012-01-28 07:04:49.000000000 +0000 @@ -130,6 +130,28 @@ KoPAPixmapCache::instance()->clear( false ); } +QImage KoPAMasterPage::thumbImage(const QSize &size) +{ + if (size.isEmpty()) { + return QImage(); + } + KoZoomHandler zoomHandler; + const KoPageLayout & layout = pageLayout(); + KoPAUtil::setZoom(layout, size, zoomHandler); + QRect pageRect(KoPAUtil::pageRect(layout, size, zoomHandler)); + + QImage image(size, QImage::Format_RGB32); + // should it be transparent at the places where it is to big? + image.fill(QColor(Qt::white).rgb()); + QPainter painter(&image); + painter.setClipRect(pageRect); + painter.setRenderHint(QPainter::Antialiasing); + painter.translate(pageRect.topLeft()); + + paintPage(painter, zoomHandler); + return image; +} + QPixmap KoPAMasterPage::generateThumbnail( const QSize& size ) { // don't paint null pixmap diff -Nru calligra-2.3.86/libs/kopageapp/KoPAMasterPage.h calligra-2.3.87/libs/kopageapp/KoPAMasterPage.h --- calligra-2.3.86/libs/kopageapp/KoPAMasterPage.h 2012-01-07 03:25:02.000000000 +0000 +++ calligra-2.3.87/libs/kopageapp/KoPAMasterPage.h 2012-01-28 07:04:49.000000000 +0000 @@ -63,6 +63,8 @@ /// reimplemented virtual void paintPage( QPainter & painter, KoZoomHandler & zoomHandler ); + virtual QImage thumbImage(const QSize &size); + protected: /// Reimplemented from KoPageBase virtual void loadOdfPageTag( const KoXmlElement &element, KoPALoadingContext &loadingContext ); diff -Nru calligra-2.3.86/libs/kopageapp/KoPAPageBase.h calligra-2.3.87/libs/kopageapp/KoPAPageBase.h --- calligra-2.3.86/libs/kopageapp/KoPAPageBase.h 2012-01-07 03:25:02.000000000 +0000 +++ calligra-2.3.87/libs/kopageapp/KoPAPageBase.h 2012-01-28 07:04:49.000000000 +0000 @@ -120,6 +120,8 @@ QPixmap thumbnail( const QSize& size = QSize( 512, 512 ) ); + virtual QImage thumbImage(const QSize &size = QSize(512, 512)) = 0; + /** * This function is called when the content of the page changes * diff -Nru calligra-2.3.86/libs/kopageapp/KoPAPage.cpp calligra-2.3.87/libs/kopageapp/KoPAPage.cpp --- calligra-2.3.86/libs/kopageapp/KoPAPage.cpp 2012-01-07 03:25:02.000000000 +0000 +++ calligra-2.3.87/libs/kopageapp/KoPAPage.cpp 2012-01-28 07:04:49.000000000 +0000 @@ -164,6 +164,27 @@ return true; } +QImage KoPAPage::thumbImage(const QSize &size) +{ + if (size.isEmpty()) { + return QImage(); + } + KoZoomHandler zoomHandler; + const KoPageLayout & layout = pageLayout(); + KoPAUtil::setZoom(layout, size, zoomHandler); + QRect pageRect(KoPAUtil::pageRect(layout, size, zoomHandler)); + + QImage image(size, QImage::Format_RGB32); + image.fill(QColor(Qt::white).rgb()); + QPainter painter(&image); + painter.setClipRect(pageRect); + painter.setRenderHint(QPainter::Antialiasing); + painter.translate(pageRect.topLeft()); + + paintPage(painter, zoomHandler); + return image; +} + QPixmap KoPAPage::generateThumbnail( const QSize& size ) { // don't paint null pixmap diff -Nru calligra-2.3.86/libs/kopageapp/KoPAPage.h calligra-2.3.87/libs/kopageapp/KoPAPage.h --- calligra-2.3.86/libs/kopageapp/KoPAPage.h 2012-01-07 03:25:02.000000000 +0000 +++ calligra-2.3.87/libs/kopageapp/KoPAPage.h 2012-01-28 07:04:49.000000000 +0000 @@ -67,6 +67,8 @@ /// reimplemented virtual void paintPage( QPainter & painter, KoZoomHandler & zoomHandler ); + virtual QImage thumbImage(const QSize &size = QSize(512, 512)); + protected: /** * DisplayMasterBackground and DisplayMasterShapes are only saved loaded in a presentation diff -Nru calligra-2.3.86/libs/kopageapp/KoPAViewModeNormal.cpp calligra-2.3.87/libs/kopageapp/KoPAViewModeNormal.cpp --- calligra-2.3.86/libs/kopageapp/KoPAViewModeNormal.cpp 2012-01-07 03:25:02.000000000 +0000 +++ calligra-2.3.87/libs/kopageapp/KoPAViewModeNormal.cpp 2012-01-28 07:04:49.000000000 +0000 @@ -59,7 +59,16 @@ painter.translate( m_canvas->documentOrigin().x(), m_canvas->documentOrigin().y() ); KoViewConverter * converter = m_view->viewConverter( m_canvas ); + QRectF updateRect = converter->viewToDocument( m_canvas->widgetToView( clipRect ) ); m_view->activePage()->paintBackground( painter, *converter ); + + if (m_canvas->document()->gridData().paintGridInBackground()) { + painter.setRenderHint( QPainter::Antialiasing, false ); + m_canvas->document()->gridData().paintGrid( painter, *converter, updateRect ); + } + + // paint the shapes + painter.setRenderHint( QPainter::Antialiasing ); if ( m_view->activePage()->displayMasterShapes() ) { m_canvas->masterShapeManager()->paint( painter, *converter, false ); } @@ -70,8 +79,9 @@ painter.setRenderHint( QPainter::Antialiasing, false ); - QRectF updateRect = converter->viewToDocument( m_canvas->widgetToView( clipRect ) ); - m_canvas->document()->gridData().paintGrid( painter, *converter, updateRect ); + if (!m_canvas->document()->gridData().paintGridInBackground()) { + m_canvas->document()->gridData().paintGrid( painter, *converter, updateRect ); + } m_canvas->document()->guidesData().paintGuides( painter, *converter, updateRect ); painter.setRenderHint( QPainter::Antialiasing ); diff -Nru calligra-2.3.86/libs/koreport/koreport_itemplugin.desktop calligra-2.3.87/libs/koreport/koreport_itemplugin.desktop --- calligra-2.3.86/libs/koreport/koreport_itemplugin.desktop 2012-01-07 03:25:02.000000000 +0000 +++ calligra-2.3.87/libs/koreport/koreport_itemplugin.desktop 2012-01-28 07:04:49.000000000 +0000 @@ -3,7 +3,7 @@ X-KDE-ServiceType=KoReport/ItemPlugin Comment=KoReport Item Plugin Comment[ca]=Connector de l'ítem KoReport -Comment[ca@valencia]=Connector del'ítem KoReport +Comment[ca@valencia]=Connector de l'ítem KoReport Comment[da]=Plugin til KoReport-element Comment[el]=Πρόσθετο αντικειμένου KoReport Comment[en_GB]=KoReport Item Plugin diff -Nru calligra-2.3.86/libs/kotext/CMakeLists.txt calligra-2.3.87/libs/kotext/CMakeLists.txt --- calligra-2.3.86/libs/kotext/CMakeLists.txt 2012-01-07 03:25:02.000000000 +0000 +++ calligra-2.3.87/libs/kotext/CMakeLists.txt 2012-01-28 07:04:49.000000000 +0000 @@ -62,8 +62,6 @@ KoBibliographyInfo.cpp BibliographyGenerator.cpp - KoTextLayoutScheduler.cpp - styles/Styles_p.cpp styles/KoCharacterStyle.cpp styles/KoParagraphStyle.cpp @@ -93,6 +91,8 @@ commands/ChangeAnchorPropertiesCommand.cpp commands/ChangeListCommand.cpp + commands/ChangeStylesCommand.cpp + commands/ChangeStylesMacroCommand.cpp commands/ChangeTrackedDeleteCommand.cpp commands/DeleteAnchorsCommand.cpp commands/DeleteCommand.cpp diff -Nru calligra-2.3.86/libs/kotext/commands/ChangeAnchorPropertiesCommand.cpp calligra-2.3.87/libs/kotext/commands/ChangeAnchorPropertiesCommand.cpp --- calligra-2.3.86/libs/kotext/commands/ChangeAnchorPropertiesCommand.cpp 2012-01-07 03:25:02.000000000 +0000 +++ calligra-2.3.87/libs/kotext/commands/ChangeAnchorPropertiesCommand.cpp 2012-01-28 07:04:49.000000000 +0000 @@ -20,21 +20,32 @@ #include "ChangeAnchorPropertiesCommand.h" #include "KoTextAnchor.h" -ChangeAnchorPropertiesCommand::ChangeAnchorPropertiesCommand(KoTextAnchor *anchor, KoTextAnchor *newAnchor, KUndo2Command *parent) +#include +#include +#include +#include + +#include + +ChangeAnchorPropertiesCommand::ChangeAnchorPropertiesCommand(KoTextAnchor *anchor, const KoTextAnchor &newAnchorData, KoShapeContainer *newParent, KUndo2Command *parent) : KUndo2Command(parent) , m_anchor(anchor) , m_oldAnchor(0) , m_newAnchor(0) + , m_oldParent(anchor->shape()->parent()) + , m_newParent(newParent) + , m_first(true) + , m_macroFirst(parent != 0) { copyLayoutProperties(anchor, &m_oldAnchor); - copyLayoutProperties(newAnchor, &m_newAnchor); + copyLayoutProperties(&newAnchorData, &m_newAnchor); } ChangeAnchorPropertiesCommand::~ChangeAnchorPropertiesCommand() { } -void ChangeAnchorPropertiesCommand::copyLayoutProperties(KoTextAnchor *from, KoTextAnchor *to) +void ChangeAnchorPropertiesCommand::copyLayoutProperties(const KoTextAnchor *from, KoTextAnchor *to) { to->setOffset(from->offset()); to->setVerticalPos(from->verticalPos()); @@ -46,16 +57,110 @@ void ChangeAnchorPropertiesCommand::redo() { + KoTextShapeDataBase *textData = 0; + if (m_oldParent) { + textData = qobject_cast(m_oldParent->userData()); + } else if (m_newParent) { + textData = qobject_cast(m_newParent->userData()); + } + + // We need this weird construct if we are played within a macro then our first job + // is to call instantlyExecuteCommand which will "redo" us immidiately in what is the normal + // "first" time + if (m_macroFirst) { + m_macroFirst = false; + if (textData) { + KoTextEditor *editor = KoTextDocument(textData->document()).textEditor(); + editor->instantlyExecuteCommand(this); + return; + } + //fall through as it's just a AnchorPage to AnchorPage change + } + KUndo2Command::redo(); copyLayoutProperties(&m_newAnchor, m_anchor); - // m_anchor->shape()->notifyChanged(); + + if (m_first) { + m_oldAbsPos = m_anchor->shape()->absolutePosition(); + } + m_anchor->shape()->setParent(m_newParent); + m_anchor->shape()->setAbsolutePosition(m_oldAbsPos); + + if (m_newAnchor.anchorType() != m_oldAnchor.anchorType()) { + if (m_newAnchor.anchorType() == KoTextAnchor::AnchorPage) { + Q_ASSERT(textData); + KoTextDocument doc(textData->document()); + KoInlineTextObjectManager *manager = doc.inlineTextObjectManager(); + Q_ASSERT(manager); + if (m_first) { + //first time we need to remove the character manually + QTextCursor cursor(textData->document()); + cursor.setPosition(m_anchor->positionInDocument()); + cursor.deleteChar(); + } + manager->removeInlineObject(m_anchor); + } + else if (m_oldAnchor.anchorType() == KoTextAnchor::AnchorPage) { + Q_ASSERT(textData); + KoTextDocument doc(textData->document()); + KoInlineTextObjectManager *manager = doc.inlineTextObjectManager(); + Q_ASSERT(manager); + if (m_first) { + KoTextEditor *editor = doc.textEditor(); + QTextCursor cursor(textData->document()); + cursor.setPosition(editor->position()); + manager->insertInlineObject(cursor, m_anchor); + } else { + // only insert in manager as qt re-inserts the character + manager->addInlineObject(m_anchor); + } + } + } + + m_first = false; + + m_anchor->shape()->notifyChanged(); + if (textData) { + textData->document()->markContentsDirty(m_anchor->positionInDocument(), 0); + } } void ChangeAnchorPropertiesCommand::undo() { - KUndo2Command::undo(); - + KoTextShapeDataBase *textData = 0; + if (m_oldParent) { + textData = qobject_cast(m_oldParent->userData()); + } else if (m_newParent) { + textData = qobject_cast(m_newParent->userData()); + } copyLayoutProperties(&m_oldAnchor, m_anchor); - // m_anchor->shape()->notifyChanged(); + + m_anchor->shape()->setParent(m_oldParent); + m_anchor->shape()->setAbsolutePosition(m_oldAbsPos); + + if (m_newAnchor.anchorType() != m_oldAnchor.anchorType()) { + if (m_newAnchor.anchorType() == KoTextAnchor::AnchorPage) { + Q_ASSERT(textData); + KoInlineTextObjectManager *manager = KoTextDocument(textData->document()).inlineTextObjectManager(); + Q_ASSERT(manager); + if (manager) { + manager->addInlineObject(m_anchor); + } + } + else if (m_oldAnchor.anchorType() == KoTextAnchor::AnchorPage) { + Q_ASSERT(textData); + KoInlineTextObjectManager *manager = KoTextDocument(textData->document()).inlineTextObjectManager(); + Q_ASSERT(manager); + if (manager) { + manager->removeInlineObject(m_anchor); + } + } + } + + KUndo2Command::undo(); + m_anchor->shape()->notifyChanged(); + if (textData) { + textData->document()->markContentsDirty(m_anchor->positionInDocument(), 0); + } } diff -Nru calligra-2.3.86/libs/kotext/commands/ChangeAnchorPropertiesCommand.h calligra-2.3.87/libs/kotext/commands/ChangeAnchorPropertiesCommand.h --- calligra-2.3.86/libs/kotext/commands/ChangeAnchorPropertiesCommand.h 2012-01-07 03:25:02.000000000 +0000 +++ calligra-2.3.87/libs/kotext/commands/ChangeAnchorPropertiesCommand.h 2012-01-28 07:04:49.000000000 +0000 @@ -24,10 +24,15 @@ #include "kotext_export.h" #include "KoTextAnchor.h" +#include + +class KoShapeContainer; + + class KOTEXT_EXPORT ChangeAnchorPropertiesCommand : public KUndo2Command { public: - ChangeAnchorPropertiesCommand(KoTextAnchor *anchor, KoTextAnchor *newAnchor, KUndo2Command *parent); + ChangeAnchorPropertiesCommand(KoTextAnchor *anchor, const KoTextAnchor &newAnchorData, KoShapeContainer *newParent, KUndo2Command *parent); virtual ~ChangeAnchorPropertiesCommand(); /// redo the command @@ -35,11 +40,16 @@ /// revert the actions done in redo void undo(); private: - void copyLayoutProperties(KoTextAnchor *from, KoTextAnchor *to); + void copyLayoutProperties(const KoTextAnchor *from, KoTextAnchor *to); KoTextAnchor *m_anchor; KoTextAnchor m_oldAnchor; KoTextAnchor m_newAnchor; + KoShapeContainer *m_oldParent; + KoShapeContainer *m_newParent; + QPointF m_oldAbsPos; + bool m_first; + bool m_macroFirst; }; #endif // CHANGEANCHORPROPERTIESCOMMAND_H diff -Nru calligra-2.3.86/libs/kotext/commands/ChangeListCommand.cpp calligra-2.3.87/libs/kotext/commands/ChangeListCommand.cpp --- calligra-2.3.86/libs/kotext/commands/ChangeListCommand.cpp 2012-01-07 03:25:02.000000000 +0000 +++ calligra-2.3.87/libs/kotext/commands/ChangeListCommand.cpp 2012-01-28 07:04:49.000000000 +0000 @@ -30,15 +30,18 @@ #define MARGIN_DEFAULT 10 // we consider it the default value -ChangeListCommand::ChangeListCommand(const QTextCursor &cursor, KoListStyle::Style style, int level, +ChangeListCommand::ChangeListCommand(const QTextCursor &cursor, const KoListLevelProperties &levelProperties, KoTextEditor::ChangeListFlags flags, KUndo2Command *parent) : KoTextCommandBase(parent), m_flags(flags), m_first(true), m_alignmentMode(false) { - const bool styleCompletelySetAlready = extractTextBlocks(cursor, level, style); + setText(i18nc("(qtundo-format)", "Change List")); + + const bool styleCompletelySetAlready = extractTextBlocks(cursor, levelProperties.level(), levelProperties.style()); QSet levels = m_levels.values().toSet(); + KoListStyle::Style style = levelProperties.style(); KoListStyle listStyle; // If the style is already completely set, we unset it instead @@ -58,6 +61,7 @@ } else if (style == KoListStyle::CustomCharItem) { llp.setRelativeBulletSize(100); //we take the default value for numbering bullets as 100 + llp.setBulletCharacter(levelProperties.bulletCharacter()); } else { llp.setRelativeBulletSize(45); //for non-numbering bullets the default relative bullet size is 45%(The spec does not say it; we take it) diff -Nru calligra-2.3.86/libs/kotext/commands/ChangeListCommand.h calligra-2.3.87/libs/kotext/commands/ChangeListCommand.h --- calligra-2.3.86/libs/kotext/commands/ChangeListCommand.h 2012-01-07 03:25:02.000000000 +0000 +++ calligra-2.3.87/libs/kotext/commands/ChangeListCommand.h 2012-01-28 07:04:49.000000000 +0000 @@ -45,8 +45,7 @@ * @param parent the parent undo command for macro functionality */ ChangeListCommand(const QTextCursor &cursor, - KoListStyle::Style style, - int level, + const KoListLevelProperties &levelProperties, KoTextEditor::ChangeListFlags flags, KUndo2Command *parent = 0); diff -Nru calligra-2.3.86/libs/kotext/commands/ChangeStylesCommand.cpp calligra-2.3.87/libs/kotext/commands/ChangeStylesCommand.cpp --- calligra-2.3.86/libs/kotext/commands/ChangeStylesCommand.cpp 1970-01-01 00:00:00.000000000 +0000 +++ calligra-2.3.87/libs/kotext/commands/ChangeStylesCommand.cpp 2012-01-28 07:04:49.000000000 +0000 @@ -0,0 +1,72 @@ +/* + * Copyright (c) 2012 C. Boemann + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License as published by the Free Software Foundation; either + * version 2 of the License, or (at your option) any later version. + * + * This library is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + * Lesser General Public License for more details. + * + * You should have received a copy of the GNU Lesser General Public License + * along with this library; see the file COPYING.LIB. If not, write to + * the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, + * Boston, MA 02110-1301, USA. + */ + +#include "ChangeStylesCommand.h" +#include "KoStyleManager.h" +#include "ChangeFollower.h" + +#include +#include + +#include + +ChangeStylesCommand::ChangeStylesCommand(ChangeFollower *changeFollower + , const QList &origCharacterStyles + , const QList &origParagraphStyles + , const QSet &changedStyles + , KUndo2Command *parent) + : KUndo2Command(parent) + , m_changeFollower(changeFollower) + , m_origCharacterStyles(origCharacterStyles) + , m_origParagraphStyles(origParagraphStyles) + , m_changedStyles(changedStyles) + , m_first(true) + , m_macroFirst(parent != 0) +{ + m_changeFollower->collectNeededInfo(m_changedStyles); +} + +ChangeStylesCommand::~ChangeStylesCommand() +{ +} + +void ChangeStylesCommand::redo() +{ + // We need this weird construct if we are played within a macro then our first job + // is to call instantlyExecuteCommand which will "redo" us immediately in what is the normal + // "first" time + if (m_macroFirst) { + m_macroFirst = false; + KoTextEditor *editor = KoTextDocument(m_changeFollower->document()).textEditor(); + editor->instantlyExecuteCommand(this); + return; + } + + KUndo2Command::redo(); + + if (m_first) { + m_first = false; + m_changeFollower->processUpdates(m_changedStyles); + } +} + +void ChangeStylesCommand::undo() +{ + KUndo2Command::undo(); +} diff -Nru calligra-2.3.86/libs/kotext/commands/ChangeStylesCommand.h calligra-2.3.87/libs/kotext/commands/ChangeStylesCommand.h --- calligra-2.3.86/libs/kotext/commands/ChangeStylesCommand.h 1970-01-01 00:00:00.000000000 +0000 +++ calligra-2.3.87/libs/kotext/commands/ChangeStylesCommand.h 2012-01-28 07:04:49.000000000 +0000 @@ -0,0 +1,55 @@ +/* + * Copyright (c) 2012 C. Boemann + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License as published by the Free Software Foundation; either + * version 2 of the License, or (at your option) any later version. + * + * This library is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + * Lesser General Public License for more details. + * + * You should have received a copy of the GNU Lesser General Public License + * along with this library; see the file COPYING.LIB. If not, write to + * the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, + * Boston, MA 02110-1301, USA. + */ + +#ifndef CHANGESTYLESCOMMAND_H +#define CHANGESTYLESCOMMAND_H + +#include + +#include +#include + +class ChangeFollower; +class KoCharacterStyle; +class KoParagraphStyle; + +class ChangeStylesCommand : public KUndo2Command +{ +public: + ChangeStylesCommand(ChangeFollower *changeFollower + , const QList &origCharacterStyles + , const QList &origParagraphStyles + , const QSet &changedStyles + , KUndo2Command *parent); + virtual ~ChangeStylesCommand(); + + /// redo the command + void redo(); + /// revert the actions done in redo + void undo(); +private: + ChangeFollower *m_changeFollower; + QList m_origCharacterStyles; + QList m_origParagraphStyles; + QSet m_changedStyles; + bool m_first; + bool m_macroFirst; +}; + +#endif // CHANGESTYLESCOMMAND_H diff -Nru calligra-2.3.86/libs/kotext/commands/ChangeStylesMacroCommand.cpp calligra-2.3.87/libs/kotext/commands/ChangeStylesMacroCommand.cpp --- calligra-2.3.86/libs/kotext/commands/ChangeStylesMacroCommand.cpp 1970-01-01 00:00:00.000000000 +0000 +++ calligra-2.3.87/libs/kotext/commands/ChangeStylesMacroCommand.cpp 2012-01-28 07:04:49.000000000 +0000 @@ -0,0 +1,92 @@ +/* + * Copyright (c) 2012 C. Boemann + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License as published by the Free Software Foundation; either + * version 2 of the License, or (at your option) any later version. + * + * This library is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + * Lesser General Public License for more details. + * + * You should have received a copy of the GNU Lesser General Public License + * along with this library; see the file COPYING.LIB. If not, write to + * the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, + * Boston, MA 02110-1301, USA. + */ + +#include "ChangeStylesMacroCommand.h" + +#include "KoStyleManager.h" +#include "ChangeStylesCommand.h" +#include "KoCharacterStyle.h" +#include "KoParagraphStyle.h" + +#include + +#include + +#include + +ChangeStylesMacroCommand::ChangeStylesMacroCommand(const QList &changeFollowers + , KoStyleManager *styleManager) + : KUndo2Command(i18nc("(qtundo-format)", "Change Styles")) + , m_changeFollowers(changeFollowers) + , m_styleManager(styleManager) + , m_first(true) +{ +} + +ChangeStylesMacroCommand::~ChangeStylesMacroCommand() +{ +} + +// on first pass the subcommands are created (where they collect needed info) +// then styles are changed in the styleManager +// finally the new styles are applied to the documents through super::redo() +void ChangeStylesMacroCommand::redo() +{ + if (m_first) { + foreach(ChangeFollower *cf, m_changeFollowers) { + new ChangeStylesCommand(cf, m_origCharacterStyles, m_origParagraphStyles, m_changedStyles, this); + } + m_first = false; + } + + foreach(KoCharacterStyle *newStyle, m_changedCharacterStyles) { + int id = newStyle->styleId(); + m_styleManager->characterStyle(id)->copyProperties(newStyle); + + emit m_styleManager->styleAltered(m_styleManager->characterStyle(id)); + } + + foreach(KoParagraphStyle *newStyle, m_changedParagraphStyles) { + int id = newStyle->styleId(); + m_styleManager->paragraphStyle(id)->copyProperties(newStyle); + + emit m_styleManager->styleAltered(m_styleManager->paragraphStyle(id)); + } + + KUndo2Command::redo(); // calls redo on all children +} + +void ChangeStylesMacroCommand::undo() +{ + foreach(KoCharacterStyle *oldStyle, m_origCharacterStyles) { + int id = oldStyle->styleId(); + m_styleManager->characterStyle(id)->copyProperties(oldStyle); + + emit m_styleManager->styleAltered(m_styleManager->characterStyle(id)); + } + + foreach(KoParagraphStyle *oldStyle, m_origParagraphStyles) { + int id = oldStyle->styleId(); + m_styleManager->paragraphStyle(id)->copyProperties(oldStyle); + + emit m_styleManager->styleAltered(m_styleManager->paragraphStyle(id)); + } + + KUndo2Command::undo(); // calls undo on all children +} diff -Nru calligra-2.3.86/libs/kotext/commands/ChangeStylesMacroCommand.h calligra-2.3.87/libs/kotext/commands/ChangeStylesMacroCommand.h --- calligra-2.3.86/libs/kotext/commands/ChangeStylesMacroCommand.h 1970-01-01 00:00:00.000000000 +0000 +++ calligra-2.3.87/libs/kotext/commands/ChangeStylesMacroCommand.h 2012-01-28 07:04:49.000000000 +0000 @@ -0,0 +1,64 @@ +/* + * Copyright (c) 2012 C. Boemann + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License as published by the Free Software Foundation; either + * version 2 of the License, or (at your option) any later version. + * + * This library is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + * Lesser General Public License for more details. + * + * You should have received a copy of the GNU Lesser General Public License + * along with this library; see the file COPYING.LIB. If not, write to + * the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, + * Boston, MA 02110-1301, USA. + */ + +#ifndef CHANGESTYLESMACROCOMMAND_H +#define CHANGESTYLESMACROCOMMAND_H + +#include + +#include +#include + +class ChangeFollower; +class KoCharacterStyle; +class KoParagraphStyle; +class KoStyleManager; + +class ChangeStylesMacroCommand : public KUndo2Command +{ +public: + ChangeStylesMacroCommand(const QList &changeFollowers + , KoStyleManager *styleManager); + + virtual ~ChangeStylesMacroCommand(); + + /// redo the command + void redo(); + + /// revert the actions done in redo + void undo(); + + void changedStyle(KoCharacterStyle *s) {m_changedCharacterStyles.append(s);} + void origStyle(KoCharacterStyle *s) {m_changedCharacterStyles.append(s);} + void changedStyle(KoParagraphStyle *s) {m_changedParagraphStyles.append(s);} + void origStyle(KoParagraphStyle *s) {m_changedParagraphStyles.append(s);} + void changedStyle(int id) {m_changedStyles.insert(id);} + +private: + QList m_changeFollowers; + QList m_origCharacterStyles; + QList m_changedCharacterStyles; + QList m_origParagraphStyles; + QList m_changedParagraphStyles; + QSet m_changedStyles; + KoStyleManager *m_styleManager; + bool m_first; +}; + +#endif // CHANGESTYLESMACROCOMMAND_H diff -Nru calligra-2.3.86/libs/kotext/commands/ChangeTrackedDeleteCommand.cpp calligra-2.3.87/libs/kotext/commands/ChangeTrackedDeleteCommand.cpp --- calligra-2.3.86/libs/kotext/commands/ChangeTrackedDeleteCommand.cpp 2012-01-07 03:25:02.000000000 +0000 +++ calligra-2.3.87/libs/kotext/commands/ChangeTrackedDeleteCommand.cpp 2012-01-28 07:04:49.000000000 +0000 @@ -212,7 +212,10 @@ ListItemNumberingCommand *changeNumberingCommand = new ListItemNumberingCommand(editor->block(), false, this); changeNumberingCommand->redo(); } else { - ChangeListCommand *changeListCommand = new ChangeListCommand(*editor->cursor(), KoListStyle::None, 0, + KoListLevelProperties llp; + llp.setStyle(KoListStyle::None); + llp.setLevel(0); + ChangeListCommand *changeListCommand = new ChangeListCommand(*editor->cursor(), llp, KoTextEditor::ModifyExistingList | KoTextEditor::MergeWithAdjacentList, this); changeListCommand->redo(); diff -Nru calligra-2.3.86/libs/kotext/commands/DeleteAnchorsCommand.cpp calligra-2.3.87/libs/kotext/commands/DeleteAnchorsCommand.cpp --- calligra-2.3.86/libs/kotext/commands/DeleteAnchorsCommand.cpp 2012-01-07 03:25:02.000000000 +0000 +++ calligra-2.3.87/libs/kotext/commands/DeleteAnchorsCommand.cpp 2012-01-28 07:04:49.000000000 +0000 @@ -21,6 +21,8 @@ #include #include "KoTextAnchor.h" +#include "KoTextDocument.h" +#include "KoInlineTextObjectManager.h" bool sortAnchor(KoTextAnchor *a1, KoTextAnchor *a2) { @@ -60,10 +62,24 @@ cursor.deleteChar(); } } + KoInlineTextObjectManager *manager = KoTextDocument(m_document).inlineTextObjectManager(); + Q_ASSERT(manager); + if (manager) { + foreach (KoTextAnchor *anchor, m_anchors) { + manager->removeInlineObject(anchor); + } + } } void DeleteAnchorsCommand::undo() { + KoInlineTextObjectManager *manager = KoTextDocument(m_document).inlineTextObjectManager(); + Q_ASSERT(manager); + if (manager) { + foreach (KoTextAnchor *anchor, m_anchors) { + manager->addInlineObject(anchor); + } + } KUndo2Command::undo(); m_deleteAnchors = false; } diff -Nru calligra-2.3.86/libs/kotext/commands/InsertInlineObjectCommand.cpp calligra-2.3.87/libs/kotext/commands/InsertInlineObjectCommand.cpp --- calligra-2.3.86/libs/kotext/commands/InsertInlineObjectCommand.cpp 2012-01-07 03:25:02.000000000 +0000 +++ calligra-2.3.87/libs/kotext/commands/InsertInlineObjectCommand.cpp 2012-01-28 07:04:49.000000000 +0000 @@ -45,11 +45,14 @@ KoTextDocument doc(m_document); KoTextEditor *editor = doc.textEditor(); - doc.inlineTextObjectManager()->insertInlineObject(*editor->cursor(), m_inlineObject); if (m_first) { + doc.inlineTextObjectManager()->insertInlineObject(*editor->cursor(), m_inlineObject); m_position = editor->cursor()->position(); m_first = false; } + else { + doc.inlineTextObjectManager()->addInlineObject(m_inlineObject); + } editor->setPosition(m_position); QTextCharFormat format = editor->charFormat(); m_inlineObject->updatePosition(m_document, m_position, format); @@ -60,7 +63,6 @@ void InsertInlineObjectCommand::undo() { KUndo2Command::undo(); - // remove the inlineObject's character from the document - // remove the inlineObject from the inline object manager + KoTextDocument(m_document).inlineTextObjectManager()->removeInlineObject(m_inlineObject); m_deleteInlineObject = true; } diff -Nru calligra-2.3.86/libs/kotext/commands/TextPasteCommand.cpp calligra-2.3.87/libs/kotext/commands/TextPasteCommand.cpp --- calligra-2.3.86/libs/kotext/commands/TextPasteCommand.cpp 2012-01-07 03:25:02.000000000 +0000 +++ calligra-2.3.87/libs/kotext/commands/TextPasteCommand.cpp 2012-01-28 07:04:49.000000000 +0000 @@ -58,7 +58,7 @@ m_rdf = static_cast(shapeController->resourceManager()->resource(KoText::DocumentRdf).value()); if (m_pasteAsText) - setText(i18n("Paste As Text")); + setText(i18nc("(qtundo-format)", "Paste As Text")); else setText(i18nc("(qtundo-format)", "Paste")); } diff -Nru calligra-2.3.86/libs/kotext/KoInlineObject.h calligra-2.3.87/libs/kotext/KoInlineObject.h --- calligra-2.3.86/libs/kotext/KoInlineObject.h 2012-01-07 03:25:02.000000000 +0000 +++ calligra-2.3.87/libs/kotext/KoInlineObject.h 2012-01-28 07:04:49.000000000 +0000 @@ -65,6 +65,7 @@ Keywords, Subject, Description, + Comments, SenderPostalCode, SenderCity, SenderStreet, diff -Nru calligra-2.3.86/libs/kotext/KoInlineTextObjectManager.cpp calligra-2.3.87/libs/kotext/KoInlineTextObjectManager.cpp --- calligra-2.3.86/libs/kotext/KoInlineTextObjectManager.cpp 2012-01-07 03:25:02.000000000 +0000 +++ calligra-2.3.87/libs/kotext/KoInlineTextObjectManager.cpp 2012-01-28 07:04:49.000000000 +0000 @@ -73,9 +73,18 @@ cf.setProperty(InlineInstanceId, ++m_lastObjectId); cursor.insertText(QString(QChar::ObjectReplacementCharacter), cf); object->setId(m_lastObjectId); - m_objects.insert(m_lastObjectId, object); object->setManager(this); object->setup(); + + insertObject(object); + + // reset to use old format so that the InlineInstanceId is no longer set. + cursor.setCharFormat(oldCf); +} + +void KoInlineTextObjectManager::insertObject(KoInlineObject *object) +{ + m_objects.insert(object->id(), object); if (object->propertyChangeListener()) { m_listeners.append(object); QHash::iterator i; @@ -90,7 +99,24 @@ m_bookmarkManager.insert(bookmark->name(), bookmark); } // reset to use old format so that the InlineInstanceId is no longer set. - cursor.setCharFormat(oldCf); +} + +void KoInlineTextObjectManager::addInlineObject(KoInlineObject* object) +{ + if (!object) { + return; + } + + int id = object->id(); + if (id == -1) { + object->setId(++m_lastObjectId); + object->setManager(this); + object->setup(); + } + else { + m_deletedObjects.remove(id); + } + insertObject(object); } bool KoInlineTextObjectManager::removeInlineObject(QTextCursor &cursor) @@ -132,13 +158,16 @@ return false; } + void KoInlineTextObjectManager::removeInlineObject(KoInlineObject *object) { if (!object) { return; } - m_objects.remove(object->id()); + int id = object->id(); + m_objects.remove(id); + m_deletedObjects[id] = object; m_listeners.removeAll(object); KoBookmark *bookmark = dynamic_cast(object); @@ -146,7 +175,6 @@ m_bookmarkManager.remove(bookmark->name()); } - m_deletedObjects[object->id()] = object; // TODO dirty the document somehow } @@ -263,6 +291,8 @@ setProperty(KoInlineObject::Title, data); else if (info == "description") setProperty(KoInlineObject::Description, data); + else if (info == "comments") + setProperty(KoInlineObject::Comments, data); else if (info == "subject") setProperty(KoInlineObject::Subject, data); else if (info == "keyword") diff -Nru calligra-2.3.86/libs/kotext/KoInlineTextObjectManager.h calligra-2.3.87/libs/kotext/KoInlineTextObjectManager.h --- calligra-2.3.86/libs/kotext/KoInlineTextObjectManager.h 2012-01-07 03:25:02.000000000 +0000 +++ calligra-2.3.87/libs/kotext/KoInlineTextObjectManager.h 2012-01-28 07:04:49.000000000 +0000 @@ -85,6 +85,17 @@ void insertInlineObject(QTextCursor &cursor, KoInlineObject *object); /** + * Add inline object into the manager. + * + * This methods add the inline object into the manager. This is useful if you have a command + * that removes and adds a inline object to the manager. If the object already was inserted before + * (the object id is already set) it keeps the old id, otherwise a new id will be generated. + * + * @param object the inline object to insert. + */ + void addInlineObject(KoInlineObject* object); + + /** * Remove an inline object from this manager (as well as the document). * This method will also remove the placeholder for the inline object. * This method will try to smartly remove the bookmark from the bookmark manager if the object @@ -174,6 +185,7 @@ void propertyChanged(int, const QVariant &variant); private: + void insertObject(KoInlineObject *object); QHash m_objects; QHash m_deletedObjects; diff -Nru calligra-2.3.86/libs/kotext/KoTextAnchor.cpp calligra-2.3.87/libs/kotext/KoTextAnchor.cpp --- calligra-2.3.86/libs/kotext/KoTextAnchor.cpp 2012-01-07 03:25:02.000000000 +0000 +++ calligra-2.3.87/libs/kotext/KoTextAnchor.cpp 2012-01-28 07:04:49.000000000 +0000 @@ -128,7 +128,7 @@ d->horizontalPos = hp; } -KoTextAnchor::HorizontalPos KoTextAnchor::horizontalPos() +KoTextAnchor::HorizontalPos KoTextAnchor::horizontalPos() const { Q_D(const KoTextAnchor); return d->horizontalPos; @@ -140,7 +140,7 @@ d->horizontalRel = hr; } -KoTextAnchor::HorizontalRel KoTextAnchor::horizontalRel() +KoTextAnchor::HorizontalRel KoTextAnchor::horizontalRel() const { Q_D(const KoTextAnchor); return d->horizontalRel; @@ -152,7 +152,7 @@ d->verticalPos = vp; } -KoTextAnchor::VerticalPos KoTextAnchor::verticalPos() +KoTextAnchor::VerticalPos KoTextAnchor::verticalPos() const { Q_D(const KoTextAnchor); return d->verticalPos; @@ -164,7 +164,7 @@ d->verticalRel = vr; } -KoTextAnchor::VerticalRel KoTextAnchor::verticalRel() +KoTextAnchor::VerticalRel KoTextAnchor::verticalRel() const { Q_D(const KoTextAnchor); return d->verticalRel; diff -Nru calligra-2.3.86/libs/kotext/KoTextAnchor.h calligra-2.3.87/libs/kotext/KoTextAnchor.h --- calligra-2.3.86/libs/kotext/KoTextAnchor.h 2012-01-07 03:25:02.000000000 +0000 +++ calligra-2.3.87/libs/kotext/KoTextAnchor.h 2012-01-28 07:04:49.000000000 +0000 @@ -182,25 +182,25 @@ void setHorizontalPos(HorizontalPos); /// return the current vertical-pos - HorizontalPos horizontalPos(); + HorizontalPos horizontalPos() const; /// set the current vertical-rel void setHorizontalRel(HorizontalRel); /// return the current vertical-rel - HorizontalRel horizontalRel(); + HorizontalRel horizontalRel() const; /// set the current horizontal-pos void setVerticalPos(VerticalPos); /// return the current horizontal-pos - VerticalPos verticalPos(); + VerticalPos verticalPos() const; /// set the current horizontal-rel void setVerticalRel(VerticalRel); /// return the current horizontal-rel - VerticalRel verticalRel(); + VerticalRel verticalRel() const; /// return the wrap influence on position QString wrapInfluenceOnPosition() const; diff -Nru calligra-2.3.86/libs/kotext/KoTextDebug.cpp calligra-2.3.87/libs/kotext/KoTextDebug.cpp --- calligra-2.3.86/libs/kotext/KoTextDebug.cpp 2012-01-07 03:25:02.000000000 +0000 +++ calligra-2.3.87/libs/kotext/KoTextDebug.cpp 2012-01-28 07:04:49.000000000 +0000 @@ -302,6 +302,8 @@ value = QString::number(properties[id].toInt()); break; default: + key = "unknown"+QString::number(id); + value = QString::number(properties[id].toInt()); break; } if (!key.isEmpty()) diff -Nru calligra-2.3.86/libs/kotext/KoTextDocument.cpp calligra-2.3.87/libs/kotext/KoTextDocument.cpp --- calligra-2.3.86/libs/kotext/KoTextDocument.cpp 2012-01-07 03:25:02.000000000 +0000 +++ calligra-2.3.87/libs/kotext/KoTextDocument.cpp 2012-01-28 07:04:49.000000000 +0000 @@ -26,6 +26,8 @@ #include #include +#include + #include #include "KoTextDocument.h" @@ -38,6 +40,8 @@ #include "changetracker/KoChangeTracker.h" Q_DECLARE_METATYPE(QAbstractTextDocumentLayout::Selection) +Q_DECLARE_METATYPE(QTextFrame*) +Q_DECLARE_METATYPE(QTextCharFormat) const QUrl KoTextDocument::StyleManagerURL = QUrl("kotext://stylemanager"); const QUrl KoTextDocument::ListsURL = QUrl("kotext://lists"); @@ -53,8 +57,7 @@ const QUrl KoTextDocument::LayoutTextPageUrl = QUrl("kotext://layoutTextPage"); const QUrl KoTextDocument::ParaTableSpacingAtStartUrl = QUrl("kotext://spacingAtStart"); const QUrl KoTextDocument::IndexGeneratorManagerUrl = QUrl("kotext://indexGeneratorManager"); - -Q_DECLARE_METATYPE(QTextFrame*) +const QUrl KoTextDocument::FrameCharFormatUrl = QUrl("kotext://frameCharFormat"); KoTextDocument::KoTextDocument(QTextDocument *document) : m_document(document) @@ -170,6 +173,9 @@ QVariant v; v.setValue(undoStack); m_document->addResource(KoTextDocument::UndoStack, UndoStackURL, v); + if (styleManager()) { + styleManager()->setUndoStack(undoStack); + } } KUndo2Stack *KoTextDocument::undoStack() const @@ -324,3 +330,18 @@ else return false; } + +QTextCharFormat KoTextDocument::frameCharFormat() const +{ + QVariant resource = m_document->resource(KoTextDocument::FrameCharFormat, FrameCharFormatUrl); + if (resource.isValid()) + return resource.value(); + else + return QTextCharFormat(); +} + +void KoTextDocument::setFrameCharFormat(QTextCharFormat format) +{ + m_document->addResource(KoTextDocument::FrameCharFormat, FrameCharFormatUrl, QVariant::fromValue(format)); +} + diff -Nru calligra-2.3.86/libs/kotext/KoTextDocument.h calligra-2.3.87/libs/kotext/KoTextDocument.h --- calligra-2.3.86/libs/kotext/KoTextDocument.h 2012-01-07 03:25:02.000000000 +0000 +++ calligra-2.3.87/libs/kotext/KoTextDocument.h 2012-01-28 07:04:49.000000000 +0000 @@ -23,6 +23,7 @@ #define KOTEXTDOCUMENT_H #include +#include #include #include #include @@ -162,6 +163,10 @@ void setParaTableSpacingAtStart(bool spacingAtStart); bool paraTableSpacingAtStart() const; + QTextCharFormat frameCharFormat() const; + + void setFrameCharFormat(QTextCharFormat format); + /** * Clears the text in the document. Unlike QTextDocument::clear(), this * function does not clear the resources of the QTextDocument. @@ -184,6 +189,7 @@ LayoutTextPage, /// this is used for setting the correct page variable on the first resize and should not be used for other purposes ParaTableSpacingAtStart, /// this is used during layouting to specify if at the first paragraph margin-top should be applied. IndexGeneratorManager + , FrameCharFormat }; static const QUrl StyleManagerURL; @@ -201,6 +207,7 @@ static const QUrl LayoutTextPageUrl; static const QUrl ParaTableSpacingAtStartUrl; static const QUrl IndexGeneratorManagerUrl; + static const QUrl FrameCharFormatUrl; private: QTextDocument *m_document; diff -Nru calligra-2.3.86/libs/kotext/KoTextEditor.cpp calligra-2.3.87/libs/kotext/KoTextEditor.cpp --- calligra-2.3.86/libs/kotext/KoTextEditor.cpp 2012-01-07 03:25:02.000000000 +0000 +++ calligra-2.3.87/libs/kotext/KoTextEditor.cpp 2012-01-28 07:04:49.000000000 +0000 @@ -59,7 +59,6 @@ #include "commands/DeleteCommand.h" #include "commands/DeleteAnchorsCommand.h" #include "KoInlineCite.h" -#include #include #include @@ -80,6 +79,7 @@ #include #include +#include "KoTextDebug.h" #ifdef SHOULD_BUILD_RDF #include @@ -89,45 +89,21 @@ Q_DECLARE_METATYPE(QTextFrame*) -static bool isRightToLeft(const QString &text) -{ - int ltr = 0, rtl = 0; - - QString::const_iterator iter = text.begin(); - while (iter != text.end()) { - switch (QChar::direction((*iter).unicode())) { - case QChar::DirL: - case QChar::DirLRO: - case QChar::DirLRE: - ltr++; - break; - case QChar::DirR: - case QChar::DirAL: - case QChar::DirRLO: - case QChar::DirRLE: - rtl++; - default: - break; - } - ++iter; - } - return ltr < rtl; -} - /*Private*/ KoTextEditor::Private::Private(KoTextEditor *qq, QTextDocument *document) : q(qq) , document (document) , headCommand(0) - , isBidiDocument(false) , editProtectionCached(false) { caret = QTextCursor(document); editorState = NoOp; - updateRtlTimer.setSingleShot(true); - updateRtlTimer.setInterval(250); - QObject::connect(&updateRtlTimer, SIGNAL(timeout()), q, SLOT(runDirectionUpdater())); +} + +void KoTextEditor::Private::emitTextFormatChanged() +{ + emit q->textFormatChanged(); } void KoTextEditor::Private::documentCommandAdded() @@ -135,9 +111,10 @@ class UndoTextCommand : public KUndo2Command { public: - UndoTextCommand(QTextDocument *document, KUndo2Command *parent = 0) + UndoTextCommand(QTextDocument *document, KoTextEditor::Private *p, KUndo2Command *parent = 0) : KUndo2Command(i18nc("(qtundo-format)", "Text"), parent), m_document(document) + , m_p(p) {} void undo() { @@ -145,6 +122,7 @@ if (doc == 0) return; doc->undo(KoTextDocument(doc).textEditor()->cursor()); + m_p->emitTextFormatChanged(); } void redo() { @@ -152,9 +130,11 @@ if (doc == 0) return; doc->redo(KoTextDocument(doc).textEditor()->cursor()); + m_p->emitTextFormatChanged(); } QWeakPointer m_document; + KoTextEditor::Private *m_p; }; //kDebug() << "editor state: " << editorState << " headcommand: " << headCommand; @@ -173,7 +153,7 @@ } } - new UndoTextCommand(document, headCommand); + new UndoTextCommand(document, this, headCommand); } void KoTextEditor::Private::updateState(KoTextEditor::Private::State newState, QString title) @@ -263,95 +243,49 @@ nextStyle = 0; } - int startPosition = caret.position(); QTextCharFormat format = caret.charFormat(); if (format.hasProperty(KoCharacterStyle::ChangeTrackerId)) { format.clearProperty(KoCharacterStyle::ChangeTrackerId); } - caret.insertBlock(); - int endPosition = caret.position(); - + // Build the block format and subtract the properties that are not inherited QTextBlockFormat bf = caret.blockFormat(); - - //Mark the inserted text - caret.setPosition(startPosition); - caret.setPosition(endPosition, QTextCursor::KeepAnchor); - q->registerTrackedChange(caret, KoGenChange::InsertChange, i18n("Key Press"), format, format, false); - - caret.clearSelection(); - QVariant directionProp = bf.property(KoParagraphStyle::TextProgressionDirection); bf.clearProperty(KoParagraphStyle::BreakBefore); bf.clearProperty(KoParagraphStyle::ListStartValue); bf.clearProperty(KoParagraphStyle::UnnumberedListItem); bf.clearProperty(KoParagraphStyle::IsListHeader); bf.clearProperty(KoParagraphStyle::MasterPageName); bf.clearProperty(KoParagraphStyle::OutlineLevel); - caret.setBlockFormat(bf); + + // Build the block char format which is just a copy + QTextCharFormat bcf = caret.blockCharFormat(); + + // Actually insert the new paragraph char + int startPosition = caret.position(); + + caret.insertBlock(bf, bcf); + + int endPosition = caret.position(); + + // Mark the CR as a tracked change + caret.setPosition(startPosition); + caret.setPosition(endPosition, QTextCursor::KeepAnchor); + + q->registerTrackedChange(caret, KoGenChange::InsertChange, i18nc("(qtundo-format)", "New Paragraph"), format, format, false); + + caret.clearSelection(); + + // possibly change the style if requested if (nextStyle) { QTextBlock block = caret.block(); if (currentStyle) currentStyle->unapplyStyle(block); nextStyle->applyStyle(block); + format = block.charFormat(); } - bf = caret.blockFormat(); - if (direction != KoText::AutoDirection) { // inherit from shape - KoText::Direction dir; - switch (direction) { - case KoText::RightLeftTopBottom: - dir = KoText::PerhapsRightLeftTopBottom; - break; - case KoText::LeftRightTopBottom: - default: - dir = KoText::PerhapsLeftRightTopBottom; - } - bf.setProperty(KoParagraphStyle::TextProgressionDirection, dir); - } else if (! directionProp.isNull()) { // then we inherit from the previous paragraph. - bf.setProperty(KoParagraphStyle::TextProgressionDirection, direction); - } - caret.setBlockFormat(bf); -} - -void KoTextEditor::Private::runDirectionUpdater() -{ - while (! dirtyBlocks.isEmpty()) { - const int blockNumber = dirtyBlocks.first(); - dirtyBlocks.removeAll(blockNumber); - QTextBlock block = document->findBlockByNumber(blockNumber); - if (block.isValid()) { - KoText::Direction newDirection = KoText::AutoDirection; - QTextBlockFormat format = block.blockFormat(); - KoText::Direction dir = - static_cast(format.intProperty(KoParagraphStyle::TextProgressionDirection)); - - if (dir == KoText::AutoDirection || dir == KoText::PerhapsLeftRightTopBottom - || dir == KoText::PerhapsRightLeftTopBottom - || dir == KoText::InheritDirection) { - bool rtl = isRightToLeft(block.text()); - if (rtl && (dir != KoText::AutoDirection || QApplication::isLeftToRight())) - newDirection = KoText::PerhapsRightLeftTopBottom; - else if (!rtl && (dir != KoText::AutoDirection || QApplication::isRightToLeft())) // remove previously set one if needed. - newDirection = KoText::PerhapsLeftRightTopBottom; - - QTextCursor cursor(block); - if (format.property(KoParagraphStyle::TextProgressionDirection).toInt() != newDirection) { - format.setProperty(KoParagraphStyle::TextProgressionDirection, newDirection); - cursor.setBlockFormat(format); // note that setting this causes a re-layout. - } - if (!isBidiDocument) { - if ((QApplication::isLeftToRight() && (newDirection == KoText::RightLeftTopBottom - || newDirection == KoText::PerhapsRightLeftTopBottom)) - || (QApplication::isRightToLeft() && (newDirection == KoText::LeftRightTopBottom - || newDirection == KoText::PerhapsLeftRightTopBottom))) { - isBidiDocument = true; - emit q->isBidiUpdated(); - } - } - } - } - } + caret.setCharFormat(format); } void KoTextEditor::Private::clearCharFormatProperty(int property) @@ -405,29 +339,35 @@ return 0; } -void KoTextEditor::updateDefaultTextDirection(KoText::Direction direction) -{ - d->direction = direction; -} - QTextCursor* KoTextEditor::cursor() { return &(d->caret); } -void KoTextEditor::addCommand(KUndo2Command *command, bool addCommandToStack) +void KoTextEditor::addCommand(KUndo2Command *command) { d->updateState(KoTextEditor::Private::Custom, (!command->text().isEmpty())?command->text():i18n("Text")); //kDebug() << "will push the custom command: " << command->text(); d->headCommand = command; KUndo2QStack *stack = KoTextDocument(d->document).undoStack(); - if (stack && addCommandToStack) + if (stack) { stack->push(command); - else + } else { command->redo(); + } //kDebug() << "custom command pushed"; } +void KoTextEditor::instantlyExecuteCommand(KUndo2Command *command) +{ + d->updateState(KoTextEditor::Private::Custom, (!command->text().isEmpty())?command->text():i18n("Text")); + //kDebug() << "will push the custom command: " << command->text(); + d->headCommand = command; // So any text it does is store as sub commands + command->redo(); + // instant replay done let's not keep it dangling + d->updateState(KoTextEditor::Private::NoOp); +} + void KoTextEditor::registerTrackedChange(QTextCursor &selection, KoGenChange::Type changeType, QString title, QTextFormat& format, QTextFormat& prevFormat, bool applyToWholeBlock) { if (!KoTextDocument(d->document).changeTracker() || !KoTextDocument(d->document).changeTracker()->recordChanges()) { @@ -557,14 +497,15 @@ return; } - d->updateState(KoTextEditor::Private::Format, i18n("Bold")); + d->updateState(KoTextEditor::Private::Format, i18nc("(qtundo-format)", "Bold")); QTextCharFormat format; format.setFontWeight(bold ? QFont::Bold : QFont::Normal); QTextCharFormat prevFormat(d->caret.charFormat()); d->caret.mergeCharFormat(format); - registerTrackedChange(d->caret, KoGenChange::FormatChange, i18n("Bold"), format, prevFormat, false); + registerTrackedChange(d->caret, KoGenChange::FormatChange, i18nc("(qtundo-format)", "Bold"), format, prevFormat, false); d->updateState(KoTextEditor::Private::NoOp); + emit textFormatChanged(); } void KoTextEditor::italic(bool italic) @@ -573,14 +514,15 @@ return; } - d->updateState(KoTextEditor::Private::Format, i18n("Italic")); + d->updateState(KoTextEditor::Private::Format, i18nc("(qtundo-format)", "Italic")); QTextCharFormat format; format.setFontItalic(italic); QTextCharFormat prevFormat(d->caret.charFormat()); d->caret.mergeCharFormat(format); - registerTrackedChange(d->caret, KoGenChange::FormatChange, i18n("Italic"), format, prevFormat, false); + registerTrackedChange(d->caret, KoGenChange::FormatChange, i18nc("(qtundo-format)", "Italic"), format, prevFormat, false); d->updateState(KoTextEditor::Private::NoOp); + emit textFormatChanged(); } void KoTextEditor::underline(bool underline) @@ -589,7 +531,7 @@ return; } - d->updateState(KoTextEditor::Private::Format, i18n("Underline")); + d->updateState(KoTextEditor::Private::Format, i18nc("(qtundo-format)", "Underline")); QTextCharFormat format; if (underline) { format.setProperty(KoCharacterStyle::UnderlineType, KoCharacterStyle::SingleLine); @@ -601,8 +543,9 @@ QTextCharFormat prevFormat(d->caret.charFormat()); d->caret.mergeCharFormat(format); - registerTrackedChange(d->caret, KoGenChange::FormatChange, i18n("Underline"), format, prevFormat, false); + registerTrackedChange(d->caret, KoGenChange::FormatChange, i18nc("(qtundo-format)", "Underline"), format, prevFormat, false); d->updateState(KoTextEditor::Private::NoOp); + emit textFormatChanged(); } void KoTextEditor::strikeOut(bool strikeout) @@ -611,7 +554,7 @@ return; } - d->updateState(KoTextEditor::Private::Format, i18n("Strike Out")); + d->updateState(KoTextEditor::Private::Format, i18nc("(qtundo-format)", "Strike Out")); QTextCharFormat format; if (strikeout) { format.setProperty(KoCharacterStyle::StrikeOutType, KoCharacterStyle::SingleLine); @@ -622,8 +565,9 @@ } QTextCharFormat prevFormat(d->caret.charFormat()); d->caret.mergeCharFormat(format); - registerTrackedChange(d->caret, KoGenChange::FormatChange, i18n("Strike Out"), format, prevFormat, false); + registerTrackedChange(d->caret, KoGenChange::FormatChange, i18nc("(qtundo-format)", "Strike Out"), format, prevFormat, false); d->updateState(KoTextEditor::Private::NoOp); + emit textFormatChanged(); } void KoTextEditor::setHorizontalTextAlignment(Qt::Alignment align) @@ -643,9 +587,10 @@ }; Aligner aligner(align); - d->updateState(KoTextEditor::Private::Format, i18n("Set Horizontal Alignment")); - BlockFormatVisitor::visitSelection(this, aligner, i18n("Set Horizontal Alignment")); + d->updateState(KoTextEditor::Private::Format, i18nc("(qtundo-format)", "Change Alignment")); + BlockFormatVisitor::visitSelection(this, aligner, i18nc("(qtundo-format)", "Change Alignment")); d->updateState(KoTextEditor::Private::NoOp); + emit textFormatChanged(); } void KoTextEditor::setVerticalTextAlignment(Qt::Alignment align) @@ -667,6 +612,7 @@ d->caret.mergeCharFormat(format); registerTrackedChange(d->caret, KoGenChange::FormatChange, i18n("Set Vertical Alignment"), format, prevFormat, false); d->updateState(KoTextEditor::Private::NoOp); + emit textFormatChanged(); } void KoTextEditor::decreaseIndent() @@ -689,6 +635,7 @@ d->updateState(KoTextEditor::Private::Format, i18n("Decrease Indent")); BlockFormatVisitor::visitSelection(this, indenter, i18n("Decrease Indent")); d->updateState(KoTextEditor::Private::NoOp); + emit textFormatChanged(); } void KoTextEditor::increaseIndent() @@ -711,6 +658,7 @@ d->updateState(KoTextEditor::Private::Format, i18n("Increase Indent")); BlockFormatVisitor::visitSelection(this, indenter, i18n("Increase Indent")); d->updateState(KoTextEditor::Private::NoOp); + emit textFormatChanged(); } class FontResizer : public CharFormatVisitor @@ -747,6 +695,7 @@ FontResizer sizer(FontResizer::Shrink); CharFormatVisitor::visitSelection(this, sizer, i18n("Decrease font size")); d->updateState(KoTextEditor::Private::NoOp); + emit textFormatChanged(); } void KoTextEditor::increaseFontSize() @@ -759,6 +708,7 @@ FontResizer sizer(FontResizer::Grow); CharFormatVisitor::visitSelection(this, sizer, i18n("Increase font size")); d->updateState(KoTextEditor::Private::NoOp); + emit textFormatChanged(); } void KoTextEditor::setFontFamily(const QString &font) @@ -774,6 +724,7 @@ d->caret.mergeCharFormat(format); registerTrackedChange(d->caret, KoGenChange::FormatChange, i18n("Set Font"), format, prevFormat, false); d->updateState(KoTextEditor::Private::NoOp); + emit textFormatChanged(); } void KoTextEditor::setFontSize(qreal size) @@ -789,6 +740,7 @@ d->caret.mergeCharFormat(format); registerTrackedChange(d->caret, KoGenChange::FormatChange, i18n("Set Font Size"), format, prevFormat, false); d->updateState(KoTextEditor::Private::NoOp); + emit textFormatChanged(); } void KoTextEditor::setTextBackgroundColor(const QColor &color) @@ -804,6 +756,7 @@ d->caret.mergeCharFormat(format); registerTrackedChange(d->caret, KoGenChange::FormatChange, i18n("Set Background Color"), format, prevFormat, false); d->updateState(KoTextEditor::Private::NoOp); + emit textFormatChanged(); } void KoTextEditor::setTextColor(const QColor &color) @@ -819,59 +772,250 @@ d->caret.mergeCharFormat(format); registerTrackedChange(d->caret, KoGenChange::FormatChange, i18n("Set Text Color"), format, prevFormat, false); d->updateState(KoTextEditor::Private::NoOp); + emit textFormatChanged(); } -void KoTextEditor::setStyle(KoCharacterStyle *style) +class KoTextVisitor { - if (isEditProtected()) { - return; +public: + KoTextVisitor(KoTextEditor *editor) + : m_abortVisiting(false) + , m_editor(editor) + { + } + + virtual ~KoTextVisitor() {} + // called whenever a visit was prevented by editprotection + virtual void nonVisit() {} + + virtual void visitFragmentSelection(QTextCursor ) + { + } + + // The default implementation calls visitFragmentSelection on each fragment.intersect.selection + virtual void visitBlock(QTextBlock block, const QTextCursor &caret) + { + for (QTextBlock::iterator it = block.begin(); it != block.end(); ++it) { + QTextCursor fragmentSelection(caret); + fragmentSelection.setPosition(qMax(caret.selectionStart(), it.fragment().position())); + fragmentSelection.setPosition(qMin(caret.selectionEnd(), it.fragment().position() + it.fragment().length()), QTextCursor::KeepAnchor); + + if (fragmentSelection.anchor() >= fragmentSelection.position()) { + continue; + } + + visitFragmentSelection(fragmentSelection); + } + } + + bool abortVisiting() { return m_abortVisiting;} + void setAbortVisiting(bool abort) {m_abortVisiting = abort;} + KoTextEditor * editor() {return m_editor;} +private: + bool m_abortVisiting; + KoTextEditor *m_editor; +}; + +class SetCharacterStyleVisitor : public KoTextVisitor +{ +public: + SetCharacterStyleVisitor(KoTextEditor *editor, KoCharacterStyle *style) + : KoTextVisitor(editor) + , m_style(style) + { } + virtual void visitBlock(QTextBlock block, const QTextCursor &caret) + { + m_newFormat = block.charFormat(); + m_style->applyStyle(m_newFormat); + m_style->ensureMinimalProperties(m_newFormat); + + KoTextVisitor::visitBlock(block, caret); + + QList::Iterator it = m_formats.begin(); + foreach(QTextCursor cursor, m_cursors) { + cursor.setCharFormat(*it); + QTextFormat prevFormat(cursor.charFormat()); + editor()->registerTrackedChange(cursor, KoGenChange::FormatChange, i18n("Set Character Style"), *it, prevFormat, false); + ++it; + } + } + + virtual void visitFragmentSelection(QTextCursor fragmentSelection) + { + QTextCharFormat format = m_newFormat; + fragmentSelection.charFormat(); + + QVariant v; + v = fragmentSelection.charFormat().property(KoCharacterStyle::InlineInstanceId); + if (!v.isNull()) { + format.setProperty(KoCharacterStyle::InlineInstanceId, v); + } + + v = fragmentSelection.charFormat().property(KoCharacterStyle::ChangeTrackerId); + if (!v.isNull()) { + format.setProperty(KoCharacterStyle::ChangeTrackerId, v); + } + + if (fragmentSelection.charFormat().isAnchor()) { + format.setAnchor(true); + format.setAnchorHref(fragmentSelection.charFormat().anchorHref()); + } + + m_formats.append(format); + m_cursors.append(fragmentSelection); + } + + KoCharacterStyle *m_style; + QTextCharFormat m_newFormat; + QList m_formats; + QList m_cursors; +}; + +void KoTextEditor::setStyle(KoCharacterStyle *style) +{ Q_ASSERT(style); d->updateState(KoTextEditor::Private::Format, i18n("Set Character Style")); - QTextCharFormat format; - style->applyStyle(format); - QTextCharFormat prevFormat(d->caret.charFormat()); - d->caret.setCharFormat(format); - registerTrackedChange(d->caret, KoGenChange::FormatChange, i18n("Set Character Style"), format, prevFormat, false); + + SetCharacterStyleVisitor visitor(this, style); + + recursivelyVisitSelection(d->document->rootFrame()->begin(), visitor); d->updateState(KoTextEditor::Private::NoOp); + emit textFormatChanged(); } -void KoTextEditor::setStyle(KoParagraphStyle *style) +// To figure out if a the blocks of the selection are write protected we need to +// traverse the entire document as sections build up the protectiveness recursively. +void KoTextEditor::recursivelyVisitSelection(QTextFrame::iterator it, KoTextVisitor &visitor) const { - if (isEditProtected()) { - return; + do { + if (visitor.abortVisiting()) + return; + + QTextBlock block = it.currentBlock(); + QTextTable *table = qobject_cast(it.currentFrame()); + QTextFrame *subFrame = it.currentFrame(); + if (table) { + // There are 4 ways this table can be selected: + // - "before to mid" + // - "mid to after" + // - "complex mid to mid" + // - "simple mid to mid" + // The 3 first are entire cells, the fourth is within a cell + + if (d->caret.selectionStart() <= table->lastPosition() + && d->caret.selectionEnd() >= table->firstPosition()) { + // We have a selection somewhere + QTextTableCell cell1 = table->cellAt(d->caret.selectionStart()); + QTextTableCell cell2 = table->cellAt(d->caret.selectionEnd()); + if (cell1 != cell2 || !cell1.isValid() || !cell2.isValid()) { + // And the selection is complex or entire table + int selectionRow; + int selectionColumn; + int selectionRowSpan; + int selectionColumnSpan; + if (!cell1.isValid() || !cell2.isValid()) { + // entire table + selectionRow = selectionColumn = 0; + selectionRowSpan = table->rows(); + selectionColumnSpan = table->columns(); + } else { + d->caret.selectedTableCells(&selectionRow, &selectionRowSpan, &selectionColumn, &selectionColumnSpan); + } + + for (int r = selectionRow; r < selectionRow + selectionRowSpan; r++) { + for (int c = selectionColumn; c < selectionColumn + + selectionColumnSpan; c++) { + QTextTableCell cell = table->cellAt(r,c); + if (!cell.format().boolProperty(KoTableCellStyle::CellIsProtected)) { + recursivelyVisitSelection(cell.begin(), visitor); + } else { + visitor.nonVisit(); + } + + if (visitor.abortVisiting()) + return; + } + } + } else { + // And the selection is simple + if (!cell1.format().boolProperty(KoTableCellStyle::CellIsProtected)) { + recursivelyVisitSelection(cell1.begin(), visitor); + } else { + visitor.nonVisit(); + } + return; + } + } + if (d->caret.selectionEnd() <= table->lastPosition()) { + return; + } + } if (subFrame) { + } else { + // TODO build up the section stack + + if (d->caret.selectionStart() < block.position() + block.length() + && d->caret.selectionEnd() >= block.position()) { + // We have a selection somewhere + if (true) { // TODO don't change if block is protected by section + visitor.visitBlock(block, d->caret); + } else { + visitor.nonVisit(); + } + } + + // TODO tear down the section stack + + if (d->caret.selectionEnd() < block.position() + block.length()) { + return; + } + } + if (!it.atEnd()) { + ++it; + } + } while (!it.atEnd()); +} + +class SetParagraphStyleVisitor : public KoTextVisitor +{ +public: + SetParagraphStyleVisitor(KoTextEditor *editor, KoStyleManager *styleManager, KoParagraphStyle *style) + : KoTextVisitor(editor) + , m_styleManager(styleManager) + , m_style(style) + { } - d->updateState(KoTextEditor::Private::Format, i18n("Set Paragraph Style")); - const int start = qMin(position(), anchor()); - const int end = qMax(position(), anchor()); - QTextBlock block = d->document->findBlock(start); - KoStyleManager *styleManager = KoTextDocument(d->document).styleManager(); - while (block.isValid() && block.position() <= end) { // now loop over all blocks - QTextBlockFormat bf = block.blockFormat(); - if (styleManager) { - KoParagraphStyle *old = styleManager->paragraphStyle(bf.intProperty(KoParagraphStyle::StyleId)); + virtual void visitBlock(QTextBlock block, const QTextCursor &) + { + if (m_styleManager) { + QTextBlockFormat bf = block.blockFormat(); + KoParagraphStyle *old = m_styleManager->paragraphStyle(bf.intProperty(KoParagraphStyle::StyleId)); if (old) old->unapplyStyle(block); } - style->applyStyle(block); - block = block.next(); + // above should unaaply the style and it's lists part, but we want to clear everything + QTextCursor cursor(block); + cursor.setBlockFormat(QTextBlockFormat()); + m_style->applyStyle(block); } - d->updateState(KoTextEditor::Private::NoOp); -} -void KoTextEditor::setDefaultFormat() + KoStyleManager *m_styleManager; + KoParagraphStyle *m_style; +}; + +void KoTextEditor::setStyle(KoParagraphStyle *style) { - d->updateState(KoTextEditor::Private::Format, i18n("Set default format")); - if (KoStyleManager *styleManager = KoTextDocument(d->document).styleManager()) { - QTextCharFormat format; - ((KoCharacterStyle *)styleManager->defaultParagraphStyle())->applyStyle(format); - QTextCharFormat prevFormat(d->caret.charFormat()); - d->caret.setCharFormat(format); - registerTrackedChange(d->caret, KoGenChange::FormatChange, i18n("Set default format"), format, prevFormat, false); - } + d->updateState(KoTextEditor::Private::Format, i18n("Set Paragraph Style")); + + KoStyleManager *styleManager = KoTextDocument(d->document).styleManager(); + SetParagraphStyleVisitor visitor(this, styleManager, style); + + recursivelyVisitSelection(d->document->rootFrame()->begin(), visitor); + d->updateState(KoTextEditor::Private::NoOp); + emit textFormatChanged(); } void KoTextEditor::addBookmark(const QString &name) @@ -1018,8 +1162,7 @@ void KoTextEditor::removeAnchors(const QList &anchors, KUndo2Command *parent) { Q_ASSERT(parent); - addCommand(parent, false); - new DeleteAnchorsCommand(anchors, d->document, parent); + instantlyExecuteCommand(new DeleteAnchorsCommand(anchors, d->document, parent)); } void KoTextEditor::insertFrameBreak() @@ -1148,12 +1291,19 @@ return true; } -void KoTextEditor::deleteChar(MoveOperation direction, bool trackChanges, KoShapeController *shapeController) +void KoTextEditor::deleteChar(MoveOperation direction, KoShapeController *shapeController) { if (isEditProtected()) { return; } + // Find out if we should track changes or not + KoChangeTracker *ct = KoTextDocument(d->document).changeTracker(); + bool trackChanges = false; + if (ct && ct->recordChanges()) { + trackChanges = true; + } + if (direction == PreviousChar) { if (d->caret.block().blockFormat().hasProperty(KoParagraphStyle::HiddenByTable)) { movePosition(QTextCursor::PreviousCharacter); @@ -1202,10 +1352,10 @@ } addCommand(new ListItemNumberingCommand(block(), numberingEnabled)); + emit textFormatChanged(); } -void KoTextEditor::setListProperties(KoListStyle::Style style, - int level, +void KoTextEditor::setListProperties(const KoListLevelProperties &llp, ChangeListFlags flags) { if (isEditProtected()) { @@ -1215,7 +1365,9 @@ if (flags & AutoListStyle && d->caret.block().textList() == 0) { flags = MergeWithAdjacentList; } - addCommand(new ChangeListCommand(d->caret, style, level, flags)); + + addCommand(new ChangeListCommand(d->caret, llp, flags)); + emit textFormatChanged(); } @@ -1391,100 +1543,41 @@ return d->caret.hasSelection(); } -// To figure out if a selection is write protected we need to traverse the entire document -// as sections build up the protectiveness recursively. -bool KoTextEditor::recursiveProtectionCheck(QTextFrame::iterator it) const -{ - do { - QTextBlock block = it.currentBlock(); - QTextTable *table = qobject_cast(it.currentFrame()); - QTextFrame *subFrame = it.currentFrame(); - if (table) { - // There are 4 ways this table can be selected: - // - "before to mid" - // - "mid to after" - // - "complex mid to mid" - // - "simple mid to mid" - // The 3 first are entire cells, the fourth is within a cell - if (d->caret.selectionStart() <= table->lastPosition() - && d->caret.selectionEnd() >= table->firstPosition()) { - // We have a selection somewhere - QTextTableCell cell1 = table->cellAt(d->caret.selectionStart()); - QTextTableCell cell2 = table->cellAt(d->caret.selectionEnd()); - if (cell1 != cell2 || !cell1.isValid() || !cell2.isValid()) { - // And the selection is complex or entire table - int selectionRow; - int selectionColumn; - int selectionRowSpan; - int selectionColumnSpan; - if (!cell1.isValid() || !cell2.isValid()) { - // entire table - selectionRow = selectionColumn = 0; - selectionRowSpan = table->rows(); - selectionColumnSpan = table->columns(); - } else { - d->caret.selectedTableCells(&selectionRow, &selectionRowSpan, &selectionColumn, &selectionColumnSpan); - } - - for (int r = selectionRow; r < selectionRow + selectionRowSpan; r++) { - for (int c = selectionColumn; c < selectionColumn + - selectionColumnSpan; c++) { - QTextTableCell cell = table->cellAt(r,c); - if (cell.format().boolProperty(KoTableCellStyle::CellIsProtected)) { - return true; - } - - if (recursiveProtectionCheck(cell.begin())) { - return true; - } - } - } - } else { - // And the selection is simple - if (cell1.format().boolProperty(KoTableCellStyle::CellIsProtected)) { - return true; - } - return recursiveProtectionCheck(cell1.begin()); - } - } - if (d->caret.selectionEnd() <= table->lastPosition()) { - return false; - } - } if (subFrame) { - } else { - // TODO build up the section stack - - if (d->caret.selectionStart() < block.position() + block.length() - && d->caret.selectionEnd() >= block.position()) { - // We have a selection somewhere - // TODO return true if block is protected by section - } +class ProtectionCheckVisitor : public KoTextVisitor +{ +public: + ProtectionCheckVisitor(const KoTextEditor *editor) + : KoTextVisitor(const_cast(editor)) + { + } - // TODO tear down the section stack + // override super's implementation to not waste cpu cycles + virtual void visitBlock(QTextBlock , const QTextCursor &) + { + } - if (d->caret.selectionEnd() < block.position() + block.length()) { - return false; - } - } - if (!it.atEnd()) { - ++it; - } - } while (!it.atEnd()); - return false; -} + virtual void nonVisit() + { + setAbortVisiting(true); + } +}; bool KoTextEditor::isEditProtected(bool useCached) const { + ProtectionCheckVisitor visitor(this); + if (useCached) { if (! d->editProtectionCached) { - d->editProtected = recursiveProtectionCheck(d->document->rootFrame()->begin()); + recursivelyVisitSelection(d->document->rootFrame()->begin(), visitor); + d->editProtected = visitor.abortVisiting(); d->editProtectionCached = true; } return d->editProtected; } d->editProtectionCached = false; - return recursiveProtectionCheck(d->document->rootFrame()->begin()); + recursivelyVisitSelection(d->document->rootFrame()->begin(), visitor); + return visitor.abortVisiting(); } void KoTextEditor::insertBlock() @@ -1811,7 +1904,7 @@ d->updateState(KoTextEditor::Private::NoOp); emit cursorPositionChanged(); - KoTextLayoutScheduler::markDocumentChanged(document(), document()->firstBlock().position(), 0 , 0); + const_cast(document())->markContentsDirty(document()->firstBlock().position(), 0); } void KoTextEditor::insertBibliography() @@ -1856,7 +1949,7 @@ KoInlineCite *KoTextEditor::insertCitation() { - d->updateState(KoTextEditor::Private::Custom, i18n("Add Citation")); + d->updateState(KoTextEditor::Private::Custom, i18nc("(qtundo-format)", "Add Citation")); KoInlineCite *cite = new KoInlineCite(KoInlineCite::Citation); KoInlineTextObjectManager *manager = KoTextDocument(d->document).inlineTextObjectManager(); @@ -1872,7 +1965,7 @@ return; } - d->updateState(KoTextEditor::Private::KeyPress, i18n("Key Press")); + d->updateState(KoTextEditor::Private::KeyPress, i18nc("(qtundo-format)", "Typing")); //first we make sure that we clear the inlineObject charProperty, if we have no selection if (!d->caret.hasSelection() && d->caret.charFormat().hasProperty(KoCharacterStyle::InlineInstanceId)) @@ -1906,18 +1999,10 @@ d->caret.setPosition(startPosition); d->caret.setPosition(endPosition, QTextCursor::KeepAnchor); - registerTrackedChange(d->caret, KoGenChange::InsertChange, i18n("Key Press"), format, format, false); + registerTrackedChange(d->caret, KoGenChange::InsertChange, i18n("Typing"), format, format, false); d->caret.clearSelection(); - int blockNumber = d->caret.blockNumber(); - while (blockNumber <= d->caret.blockNumber()) { - d->dirtyBlocks << blockNumber; - ++blockNumber; - } - d->updateRtlTimer.stop(); - d->updateRtlTimer.start(); - emit cursorPositionChanged(); } @@ -1939,7 +2024,38 @@ } // XXX: do the changetracking and everything! + QTextBlock currentBlock = d->caret.block(); d->caret.insertHtml(html); + + QList pastedLists; + KoList *currentPastedList = 0; + while (currentBlock != d->caret.block()) { + currentBlock = currentBlock.next(); + QTextList *currentTextList = currentBlock.textList(); + if(currentTextList && !pastedLists.contains(currentBlock.textList())) { + KoListStyle *listStyle = KoTextDocument(d->document).styleManager()->defaultListStyle()->clone(); + listStyle->setName(""); + listStyle->setStyleId(0); + currentPastedList = new KoList(d->document, listStyle); + QTextListFormat currentTextListFormat = currentTextList->format(); + + KoListLevelProperties levelProperty = listStyle->levelProperties(currentTextListFormat.indent()); + levelProperty.setStyle(static_cast(currentTextListFormat.style())); + levelProperty.setLevel(currentTextListFormat.indent()); + levelProperty.setListItemPrefix(""); + levelProperty.setListItemSuffix(""); + levelProperty.setListId((KoListStyle::ListIdType)currentTextList); + listStyle->setLevelProperties(levelProperty); + + currentTextListFormat.setProperty(KoListStyle::Level, currentTextListFormat.indent()); + currentBlock.textList()->setFormat(currentTextListFormat); + + currentPastedList->updateStoredList(currentBlock); + currentPastedList->setStyle(listStyle); + + pastedLists.append(currentBlock.textList()); + } + } } void KoTextEditor::mergeBlockCharFormat(const QTextCharFormat &modifier) @@ -1958,6 +2074,7 @@ return; } d->caret.mergeBlockFormat(modifier); + emit textFormatChanged(); } void KoTextEditor::mergeCharFormat(const QTextCharFormat &modifier) @@ -2015,7 +2132,7 @@ return; } - d->updateState(KoTextEditor::Private::Custom, i18n("Line Break")); //TODO "New Paragraph" + d->updateState(KoTextEditor::Private::Custom, i18nc("(qtundo-format)", "New Paragraph")); // Handle if this is the special block before a table if (d->caret.blockFormat().hasProperty(KoParagraphStyle::HiddenByTable)) { @@ -2157,6 +2274,7 @@ Q_UNUSED(format) d->caret.setBlockFormat(format); + emit textFormatChanged(); } void KoTextEditor::setCharFormat(const QTextCharFormat &format) @@ -2166,6 +2284,7 @@ } d->caret.setCharFormat(format); + emit textFormatChanged(); } //void KoTextEditor::setTableFormat(const QTextTableFormat &format) @@ -2225,11 +2344,6 @@ return d->caret.visualNavigation(); } -bool KoTextEditor::isBidiDocument() const -{ - return d->isBidiDocument; -} - const QTextFrame *KoTextEditor::currentFrame () const { return d->caret.currentFrame(); @@ -2258,17 +2372,4 @@ d->updateState(KoTextEditor::Private::NoOp); } -void KoTextEditor::finishedLoading() -{ - QTextBlock block = d->document->begin(); - while (!d->isBidiDocument && block.isValid()) { - bool rtl = isRightToLeft(block.text()); - if ((QApplication::isLeftToRight() && rtl) || (QApplication::isRightToLeft() && !rtl)) { - d->isBidiDocument = true; - emit isBidiUpdated(); - } - block = block.next(); - } -} - #include diff -Nru calligra-2.3.86/libs/kotext/KoTextEditor.h calligra-2.3.87/libs/kotext/KoTextEditor.h --- calligra-2.3.86/libs/kotext/KoTextEditor.h 2012-01-07 03:25:02.000000000 +0000 +++ calligra-2.3.87/libs/kotext/KoTextEditor.h 2012-01-28 07:04:49.000000000 +0000 @@ -53,6 +53,8 @@ class QString; class KUndo2Command; +class KoTextVisitor; + /** * KoTextEditor is a wrapper around QTextCursor. It handles undo/redo and change * tracking for all editing commands. @@ -105,11 +107,6 @@ public: - /// Called when loading is done to check whether there's bidi text in the document. - void finishedLoading(); - - void updateDefaultTextDirection(KoText::Direction direction); - bool operator!=(const QTextCursor &other) const; bool operator<(const QTextCursor &other) const; @@ -155,8 +152,30 @@ public slots: - // XXX: make this private as well - void addCommand(KUndo2Command *command, bool addCommandToStack = true); + /// This adds the \ref command to the calligra undo stack. + /// + /// From this point forward all text manipulation is placed in the qt text systems internal + /// undostack while also adding representative subcommands to \ref command. + /// + /// The \ref command is not redone as part of this process. + /// + /// Note: Be aware that many KoTextEditor methods start their own commands thus terminating + /// the recording of this \ref command. Only use QTextCursor manipulation (with all the issues + /// that brings) or only use KoTextEditor methods that don't start their own commmand. + /// + /// The recording is automatically terminated when another command is added, which as mentioned + /// can happen by executing some of the KoTextEditor methods. + void addCommand(KUndo2Command *command); + + /// This instantly "redo" the command thus placing all the text manipulation the "redo" does + /// (should be implemented with a "first redo" pattern) in the qt text systems internal + /// undostack while also adding representative subcommands to \ref command. + /// + /// When \ref command is done "redoing" no further text manipulation is added as subcommands. + /// + /// \ref command is not put on the calligra undo stack. That is the responsibility of the + /// caller, or the caller can choose to quickly undo and then delete the \ref command. + void instantlyExecuteCommand(KUndo2Command *command); void registerTrackedChange(QTextCursor &selection, KoGenChange::Type changeType, QString title, QTextFormat &format, QTextFormat &prevFormat, bool applyToWholeBlock = false); @@ -188,8 +207,6 @@ void setTextBackgroundColor(const QColor &color); - void setDefaultFormat(); - void setStyle(KoParagraphStyle *style); void setStyle(KoCharacterStyle *style); @@ -261,11 +278,9 @@ /** * Delete one character in the specified direction. * @param direction the direction into which we delete. Valid values are - * @param trackChanges if true, track this deletion in the changetracker * @param shapeController the canvas' shapeController */ - void deleteChar(MoveOperation direction, bool trackChanges, - KoShapeController *shapeController); + void deleteChar(MoveOperation direction, KoShapeController *shapeController); /** * @param numberingEnabled when true, we will enable numbering for the current paragraph (block). @@ -275,8 +290,7 @@ /** * change the current block's list properties */ - void setListProperties(KoListStyle::Style style, - int level = 0, + void setListProperties(const KoListLevelProperties &llp, ChangeListFlags flags = ChangeListFlags(ModifyExistingList | MergeWithAdjacentList)); // ------------------------------------------------------------- @@ -449,24 +463,22 @@ bool visualNavigation() const; - bool isBidiDocument() const; - const QTextFrame *currentFrame () const; const QTextList *currentList () const; const QTextTable *currentTable () const; signals: - void isBidiUpdated(); void cursorPositionChanged(); + void textFormatChanged(); protected: - bool recursiveProtectionCheck(QTextFrame::iterator it) const; + void recursivelyVisitSelection(QTextFrame::iterator it, KoTextVisitor &visitor) const; private: Q_PRIVATE_SLOT(d, void documentCommandAdded()) - Q_PRIVATE_SLOT(d, void runDirectionUpdater()) class Private; + friend class Private; Private* const d; }; diff -Nru calligra-2.3.86/libs/kotext/KoTextEditor_p.h calligra-2.3.87/libs/kotext/KoTextEditor_p.h --- calligra-2.3.86/libs/kotext/KoTextEditor_p.h 2012-01-07 03:25:02.000000000 +0000 +++ calligra-2.3.87/libs/kotext/KoTextEditor_p.h 2012-01-28 07:04:49.000000000 +0000 @@ -55,22 +55,18 @@ bool deleteInlineObjects(bool backwards = false); void newLine(); - void runDirectionUpdater(); void clearCharFormatProperty(int propertyId); + void emitTextFormatChanged(); + KoTextEditor *q; QTextCursor caret; QTextDocument *document; KUndo2Command *headCommand; QString commandTitle; - KoText::Direction direction; - bool isBidiDocument; State editorState; - QTimer updateRtlTimer; - QList dirtyBlocks; - bool editProtected; bool editProtectionCached; }; diff -Nru calligra-2.3.86/libs/kotext/KoText.h calligra-2.3.87/libs/kotext/KoText.h --- calligra-2.3.86/libs/kotext/KoText.h 2012-01-07 03:25:02.000000000 +0000 +++ calligra-2.3.87/libs/kotext/KoText.h 2012-01-28 07:04:49.000000000 +0000 @@ -103,8 +103,6 @@ RightLeftTopBottom, ///< Text layout for languages like Hebrew TopBottomRightLeft, ///< Vertical text layout. TopBottomLeftRight, ///< Vertical text layout. ? - PerhapsLeftRightTopBottom, ///< \internal - PerhapsRightLeftTopBottom, ///< \internal InheritDirection ///< Direction is unspecified and should come from the container }; diff -Nru calligra-2.3.86/libs/kotext/KoTextLayoutScheduler.cpp calligra-2.3.87/libs/kotext/KoTextLayoutScheduler.cpp --- calligra-2.3.86/libs/kotext/KoTextLayoutScheduler.cpp 2012-01-07 03:25:02.000000000 +0000 +++ calligra-2.3.87/libs/kotext/KoTextLayoutScheduler.cpp 1970-01-01 00:00:00.000000000 +0000 @@ -1,37 +0,0 @@ -/* This file is part of the KDE project - * Copyright (C) 2011 Gopalakrishna Bhat A - * - * This library is free software; you can redistribute it and/or - * modify it under the terms of the GNU Library General Public - * License as published by the Free Software Foundation; either - * version 2 of the License, or (at your option) any later version. - * - * This library is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - * Library General Public License for more details. - * - * You should have received a copy of the GNU Library General Public License - * along with this library; see the file COPYING.LIB. If not, write to - * the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, - * Boston, MA 02110-1301, USA. - */ - -#include "KoTextLayoutScheduler.h" - -#include - -void KoTextLayoutScheduler::markDocumentChanged(const QTextDocument *document, int position, int charsRemoved, int charsAdded) -{ - if (document) { - KoTextLayoutSchedulerInternal *layout = (KoTextLayoutSchedulerInternal *)document->documentLayout(); - if (layout) { - layout->markDocumentDirty(position, charsRemoved, charsAdded); - } - } -} - -void KoTextLayoutScheduler::KoTextLayoutSchedulerInternal::markDocumentDirty(int from, int charsRemoved, int charsAdded) -{ - documentChanged(from, charsRemoved, charsAdded); -} diff -Nru calligra-2.3.86/libs/kotext/KoTextLayoutScheduler.h calligra-2.3.87/libs/kotext/KoTextLayoutScheduler.h --- calligra-2.3.86/libs/kotext/KoTextLayoutScheduler.h 2012-01-07 03:25:02.000000000 +0000 +++ calligra-2.3.87/libs/kotext/KoTextLayoutScheduler.h 1970-01-01 00:00:00.000000000 +0000 @@ -1,42 +0,0 @@ -/* This file is part of the KDE project - * Copyright (C) 2011 Gopalakrishna Bhat A - * - * This library is free software; you can redistribute it and/or - * modify it under the terms of the GNU Library General Public - * License as published by the Free Software Foundation; either - * version 2 of the License, or (at your option) any later version. - * - * This library is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - * Library General Public License for more details. - * - * You should have received a copy of the GNU Library General Public License - * along with this library; see the file COPYING.LIB. If not, write to - * the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, - * Boston, MA 02110-1301, USA. - */ - -#ifndef KOTEXTLAYOUTSCHEDULER_H -#define KOTEXTLAYOUTSCHEDULER_H - -#include - -/** - * This class is used to indicate to the layout that a document has changed and it needs a relayout - * Use the markDocumentChanged method to mark a document dirty - */ -class KoTextLayoutScheduler -{ -public: - /// Marks that a document dirty(changed) indicating to the layout library that this needs a re-layout - static void markDocumentChanged(const QTextDocument *document, int position, int charsRemoved, int charsAdded); - - class KoTextLayoutSchedulerInternal: public QAbstractTextDocumentLayout - { - public: - void markDocumentDirty(int from, int charsRemoved, int charsAdded); - }; -}; - -#endif // KOTEXTLAYOUTSCHEDULER_H diff -Nru calligra-2.3.86/libs/kotext/KoTextPage.h calligra-2.3.87/libs/kotext/KoTextPage.h --- calligra-2.3.86/libs/kotext/KoTextPage.h 2012-01-07 03:25:02.000000000 +0000 +++ calligra-2.3.87/libs/kotext/KoTextPage.h 2012-01-28 07:04:49.000000000 +0000 @@ -92,6 +92,11 @@ */ virtual QRectF rect() const = 0; + /** + * Returns the (text) content rect of the page in document coords + */ + virtual QRectF contentRect() const {return rect();} + }; Q_DECLARE_METATYPE(KoTextPage*) diff -Nru calligra-2.3.86/libs/kotext/KoVariable.cpp calligra-2.3.87/libs/kotext/KoVariable.cpp --- calligra-2.3.86/libs/kotext/KoVariable.cpp 2012-01-07 03:25:02.000000000 +0000 +++ calligra-2.3.87/libs/kotext/KoVariable.cpp 2012-01-28 07:04:49.000000000 +0000 @@ -20,7 +20,6 @@ #include "KoInlineObject_p.h" #include -#include #include #include @@ -68,7 +67,7 @@ d->value = value; d->modified = true; if (d->document) { - KoTextLayoutScheduler::markDocumentChanged(d->document, d->lastPositionInDocument, 0, 0); + const_cast(d->document)->markContentsDirty(d->lastPositionInDocument, 0); } } diff -Nru calligra-2.3.86/libs/kotext/opendocument/KoTextLoader.cpp calligra-2.3.87/libs/kotext/opendocument/KoTextLoader.cpp --- calligra-2.3.86/libs/kotext/opendocument/KoTextLoader.cpp 2012-01-07 03:25:02.000000000 +0000 +++ calligra-2.3.87/libs/kotext/opendocument/KoTextLoader.cpp 2012-01-28 07:04:49.000000000 +0000 @@ -11,6 +11,7 @@ * Copyright (C) 2011 Pavol Korinek * Copyright (C) 2011 Lukáš Tvrdý * Copyright (C) 2011 Boudewijn Rempt + * Copyright (C) 2011-2012 Gopalakrishna Bhat A * * This library is free software; you can redistribute it and/or * modify it under the terms of the GNU Library General Public @@ -79,6 +80,7 @@ #include #include +#include #include #include #include @@ -112,13 +114,15 @@ int nextProgressReportMs; QTime progressTime; - KoList *currentList; + QVector currentLists; KoListStyle *currentListStyle; int currentListLevel; // Two lists that follow the same style are considered as one for numbering purposes // This hash keeps all the lists that have the same style in one KoList. QHash lists; + KoCharacterStyle *endCharStyle; // charstyle from empty span used at end of paragraph + KoStyleManager *styleManager; KoChangeTracker *changeTracker; @@ -178,9 +182,10 @@ bodyProgressTotal(0), bodyProgressValue(0), nextProgressReportMs(0), - currentList(0), + currentLists(10), currentListStyle(0), currentListLevel(1), + endCharStyle(0), styleManager(0), changeTracker(0), shape(s), @@ -390,7 +395,7 @@ void KoTextLoader::Private::setCurrentList(KoList *currentList, int level) { Q_ASSERT(level > 0 && level <= 10); - + currentLists[level - 1] = currentList; m_previousList[level - 1] = currentList; } @@ -474,6 +479,8 @@ void KoTextLoader::loadBody(const KoXmlElement &bodyElem, QTextCursor &cursor) { + const QTextDocument *document = cursor.block().document(); + static int rootCallChecker = 0; if (rootCallChecker == 0) { //This is the first call of loadBody. @@ -481,11 +488,11 @@ //Will be used whenever a new block is inserted d->defaultBlockFormat = cursor.blockFormat(); d->defaultCharFormat = cursor.charFormat(); + KoTextDocument(document).setFrameCharFormat(cursor.blockCharFormat()); } rootCallChecker++; cursor.beginEditBlock(); - const QTextDocument *document = cursor.block().document(); if (! d->openingSections.isEmpty()) { QTextBlock block = cursor.block(); @@ -695,7 +702,6 @@ d->splitPositionMap.remove(splitId); } } - loadHeading(tag, cursor); if (!tag.attributeNS(KoXmlNS::delta, "insertion-type").isEmpty()) @@ -1054,7 +1060,7 @@ if (paragraphStyle && (cursor.position() == cursor.block().position())) { QTextBlock block = cursor.block(); // Apply list style when loading a list but we don't have a list style - paragraphStyle->applyStyle(block, d->currentList && !d->currentListStyle); + paragraphStyle->applyStyle(block, d->currentLists[d->currentListLevel - 1] && !d->currentListStyle); // Clear the outline level property. If a default-outline-level was set, it should not // be applied when loading a document, only on user action. block.blockFormat().clearProperty(KoParagraphStyle::OutlineLevel); @@ -1090,12 +1096,21 @@ } #ifdef KOOPENDOCUMENTLOADER_DEBUG - kDebug(32500) << "text-style:" << KoTextDebug::textAttributes(cursor.blockCharFormat()) << d->currentList << d->currentListStyle; + kDebug(32500) << "text-style:" << KoTextDebug::textAttributes(cursor.blockCharFormat()) << d->currentLists[d->currentListLevel - 1] << d->currentListStyle; #endif bool stripLeadingSpace = true; loadSpan(element, cursor, &stripLeadingSpace); - cursor.mergeBlockCharFormat(cursor.blockCharFormat()); + QTextBlock block = cursor.block(); + QString text = block.text(); + if (text.length() == 0 || text.at(text.length()-1) == QChar(0x2028)) { + if (d->endCharStyle) { + QTextBlockFormat blockFormat = block.blockFormat(); + blockFormat.setProperty(KoParagraphStyle::EndCharStyle, QVariant::fromValue< QSharedPointer >(QSharedPointer(d->endCharStyle->clone()))); + cursor.setBlockFormat(blockFormat); + } + } + d->endCharStyle = 0; cursor.setCharFormat(cf); // restore the cursor char format } @@ -1122,7 +1137,8 @@ } if (paragraphStyle) { // Apply list style when loading a list but we don't have a list style - paragraphStyle->applyStyle(block, d->currentList && !d->currentListStyle); + paragraphStyle->applyStyle(block, (d->currentListLevel > 1) && + d->currentLists[d->currentListLevel - 2] && !d->currentListStyle); } if ((block.blockFormat().hasProperty(KoParagraphStyle::OutlineLevel)) && (level == -1)) { @@ -1135,18 +1151,55 @@ cursor.mergeBlockFormat(blockFormat); } - if (!d->currentList) { // apply (if present) only if heading is not within a - KoListStyle *outlineStyle = d->styleManager->outlineStyle(); - if (outlineStyle) { - KoList *list = KoTextDocument(block.document()).headingList(); - if (! list) { - list = d->list(block.document(), outlineStyle, false); - KoTextDocument(block.document()).setHeadingList(list); + if (element.hasAttributeNS(KoXmlNS::text, "is-list-header")) { + QTextBlockFormat blockFormat; + blockFormat.setProperty(KoParagraphStyle::IsListHeader, element.attributeNS(KoXmlNS::text, "is-list-header") == "true"); + cursor.mergeBlockFormat(blockFormat); + } + + //we are defining our default behaviour here + //Case 1: If text:outline-style is specified then we use the outline style to determine the numbering style + //Case 2: If text:outline-style is not specified then if the element is inside a then it is numbered + // otherwise it is not + KoListStyle *outlineStyle = d->styleManager->outlineStyle(); + if (!outlineStyle) { + outlineStyle = d->styleManager->defaultOutlineStyle()->clone(); + d->styleManager->setOutlineStyle(outlineStyle); + } + + //if outline style is not specified and this is not inside a list then we do not number it + if (outlineStyle->styleId() == d->styleManager->defaultOutlineStyle()->styleId()) { + if (d->currentListLevel <= 1) { + QTextBlockFormat blockFormat; + blockFormat.setProperty(KoParagraphStyle::UnnumberedListItem, true); + cursor.mergeBlockFormat(blockFormat); + } else { //inside a list then take the numbering from the list style + int level = d->currentListLevel - 1; + KoListLevelProperties llp; + if (!d->currentListStyle->hasLevelProperties(level)) { + // Look if one of the lower levels are defined to we can copy over that level. + for(int i = level - 1; i >= 0; --i) { + if(d->currentLists[level - 1]->style()->hasLevelProperties(i)) { + llp = d->currentLists[level - 1]->style()->levelProperties(i); + break; + } + } + } else { + llp = d->currentListStyle->levelProperties(level); } - list->add(block, level); + llp.setLevel(level); + outlineStyle->setLevelProperties(llp); } } + KoList *list = KoTextDocument(block.document()).headingList(); + if (!list) { + list = d->list(block.document(), outlineStyle, false); + KoTextDocument(block.document()).setHeadingList(list); + } + list->setStyle(outlineStyle); + list->add(block, level); + // attach Rdf to cursor.block() // remember inline Rdf metadata if (element.hasAttributeNS(KoXmlNS::xhtml, "property") @@ -1177,6 +1230,12 @@ KoList *continuedList = 0; int level; + if (d->currentLists[d->currentListLevel - 1] || d->currentListLevel == 1) { + d->currentLists[d->currentListLevel - 1] = 0; + } else { + d->currentLists[d->currentListLevel - 1] = d->currentLists[d->currentListLevel - 2]; + } + if (element.hasAttributeNS(KoXmlNS::text, "continue-list")) { if (d->xmlIdToListMap.contains(element.attributeNS(KoXmlNS::text, "continue-list", QString()))) { continuedList = d->xmlIdToListMap.value(element.attributeNS(KoXmlNS::text, "continue-list", QString())); @@ -1192,7 +1251,7 @@ && listStyle->hasLevelProperties(d->currentListLevel) && (prevList->style()->levelProperties(d->currentListLevel).style() == listStyle->levelProperties(d->currentListLevel).style())) { - d->currentList = prevList; + continuedList = prevList; } } } @@ -1201,21 +1260,24 @@ // TODO: get level from the style, if it has a style:list-level attribute (new in ODF-1.2) if (numberedParagraph) { level = element.attributeNS(KoXmlNS::text, "level", "1").toInt(); - d->currentList = d->list(cursor.block().document(), listStyle, true); + d->currentLists[d->currentListLevel - 1] = d->list(cursor.block().document(), listStyle, true); d->currentListStyle = listStyle; } else { if (!listStyle) listStyle = d->currentListStyle; level = d->currentListLevel++; - if (! d->currentList) { - d->currentList = d->list(cursor.block().document(), listStyle, false); - d->currentList->setListContinuedFrom(continuedList); + + KoList *currentList = d->currentLists[d->currentListLevel - 2]; + if (!currentList) { + currentList = d->list(cursor.block().document(), listStyle, false); + currentList->setListContinuedFrom(continuedList); + d->currentLists[d->currentListLevel - 2] = currentList; } d->currentListStyle = listStyle; } if (element.hasAttributeNS(KoXmlNS::xml, "id")) { - d->xmlIdToListMap.insert(element.attributeNS(KoXmlNS::xml, "id", QString()), d->currentList); + d->xmlIdToListMap.insert(element.attributeNS(KoXmlNS::xml, "id", QString()), d->currentLists[d->currentListLevel - 2]); } if (level < 0 || level > 10) { // should not happen but if it does then we should not crash/assert @@ -1224,7 +1286,7 @@ } if (! numberedParagraph) { - d->setCurrentList(d->currentList, level); + d->setCurrentList(d->currentLists[d->currentListLevel - 2], level); } #ifdef KOOPENDOCUMENTLOADER_DEBUG @@ -1306,7 +1368,7 @@ if (numberedParagraph || --d->currentListLevel == 1) { d->currentListStyle = 0; - d->currentList = 0; + d->currentLists.fill(0); } } @@ -1335,7 +1397,6 @@ QTextBlock current = cursor.block(); QTextBlockFormat blockFormat; - if (numberedParagraph) { if (e.localName() == "p") { loadParagraph(e, cursor); @@ -1349,22 +1410,22 @@ if (!cursor.blockFormat().boolProperty(KoParagraphStyle::ForceDisablingList)) { if (!current.textList()) { - if (!d->currentList->style()->hasLevelProperties(level)) { + if (!d->currentLists[level - 1]->style()->hasLevelProperties(level)) { KoListLevelProperties llp; // Look if one of the lower levels are defined to we can copy over that level. for(int i = level - 1; i >= 0; --i) { - if(d->currentList->style()->hasLevelProperties(i)) { - llp = d->currentList->style()->levelProperties(i); + if(d->currentLists[level - 1]->style()->hasLevelProperties(i)) { + llp = d->currentLists[level - 1]->style()->levelProperties(i); break; } } llp.setLevel(level); // TODO make the 10 configurable llp.setIndent(level * 10.0); - d->currentList->style()->setLevelProperties(llp); + d->currentLists[level - 1]->style()->setLevelProperties(llp); } - d->currentList->add(current, level); + d->currentLists[level - 1]->add(current, level); } if (listHeader) @@ -1386,7 +1447,7 @@ blockFormat = c.blockFormat(); blockFormat.setProperty(listHeader ? KoParagraphStyle::IsListHeader : KoParagraphStyle::UnnumberedListItem, true); c.setBlockFormat(blockFormat); - d->currentList->add(c.block(), level); + d->currentLists[level - 1]->add(c.block(), level); } } @@ -1631,6 +1692,11 @@ #ifdef KOOPENDOCUMENTLOADER_DEBUG kDebug(32500) << "load" << localName << *stripLeadingSpace << node.toText().data(); #endif + + if (!(isTextNS && localName == "span")) { + d->endCharStyle = 0; + } + if (node.isText()) { bool isLastNode = node.nextSibling().isNull(); loadText(node.toText().data(), cursor, stripLeadingSpace, @@ -1695,6 +1761,10 @@ KoCharacterStyle *characterStyle = d->textSharedData->characterStyle(styleName, d->stylesDotXml); if (characterStyle) { characterStyle->applyStyle(&cursor); + if (ts.firstChild().isNull()) { + // empty span so let's save the characterStyle for possible use at end of par + d->endCharStyle = characterStyle; + } } else if (!styleName.isEmpty()) { kWarning(32500) << "character style " << styleName << " not found"; } @@ -1812,9 +1882,10 @@ linkCf.setAnchor(true); QStringList anchorName; anchorName << bookmarkName; - linkCf.setAnchorNames(anchorName); + linkCf.setAnchorHref('#'+ bookmarkName); cursor.setCharFormat(linkCf); } + // TODO add support for loading text:reference-format loadSpan(ts, cursor, stripLeadingSpace); // recurse cursor.setCharFormat(cf); // restore the cursor char format } else if (isTextNS && localName == "number") { // text:number @@ -2084,7 +2155,7 @@ } if (!hide) { // Let's insert an extra block so that will be the one we hide instead - cursor.insertBlock(); + cursor.insertBlock(cursor.blockFormat(), cursor.blockCharFormat()); currentBlock = cursor.block(); } diff -Nru calligra-2.3.86/libs/kotext/opendocument/KoTextSharedSavingData.cpp calligra-2.3.87/libs/kotext/opendocument/KoTextSharedSavingData.cpp --- calligra-2.3.86/libs/kotext/opendocument/KoTextSharedSavingData.cpp 2012-01-07 03:25:02.000000000 +0000 +++ calligra-2.3.87/libs/kotext/opendocument/KoTextSharedSavingData.cpp 2012-01-28 07:04:49.000000000 +0000 @@ -22,6 +22,8 @@ #include "KoGenChanges.h" #include "KoTextSopranoRdfModel_p.h" +#include + class KoTextSharedSavingData::Private { public: @@ -30,6 +32,7 @@ KoGenChanges *changes; QMap m_rdfIdMapping; //< This lets the RDF system know old->new xml:id const Soprano::Model* m_rdfModel; //< This is so cut/paste can serialize the relevant RDF to the clipboard + QMap styleIdToName; }; KoTextSharedSavingData::KoTextSharedSavingData() @@ -71,3 +74,12 @@ return d->m_rdfModel; } +void KoTextSharedSavingData::setStyleName(int styleId, const QString &name) +{ + d->styleIdToName.insert(styleId, name); +} + +QString KoTextSharedSavingData::styleName(int styleId) +{ + return d->styleIdToName.value(styleId); +} diff -Nru calligra-2.3.86/libs/kotext/opendocument/KoTextSharedSavingData.h calligra-2.3.87/libs/kotext/opendocument/KoTextSharedSavingData.h --- calligra-2.3.86/libs/kotext/opendocument/KoTextSharedSavingData.h 2012-01-07 03:25:02.000000000 +0000 +++ calligra-2.3.87/libs/kotext/opendocument/KoTextSharedSavingData.h 2012-01-28 07:04:49.000000000 +0000 @@ -56,6 +56,22 @@ void setRdfModel(const Soprano::Model *m); const Soprano::Model* rdfModel() const; + /** + * Stores the name that written to the file for the style + * + * @param styleId the id of the style in KoStyleManger + * @param savedName the name that is written to the file + */ + void setStyleName(int styleId, const QString &name); + + /** + * Style name of the style + * + * @param styleId the id of the style in KoStyleManager + * @return the saved name of the style + */ + QString styleName(int styleId); + private: class Private; diff -Nru calligra-2.3.86/libs/kotext/opendocument/KoTextWriter.cpp calligra-2.3.87/libs/kotext/opendocument/KoTextWriter.cpp --- calligra-2.3.86/libs/kotext/opendocument/KoTextWriter.cpp 2012-01-07 03:25:02.000000000 +0000 +++ calligra-2.3.87/libs/kotext/opendocument/KoTextWriter.cpp 2012-01-28 07:04:49.000000000 +0000 @@ -68,11 +68,11 @@ if (changeTracker) { changeSaveFormat = changeTracker->saveFormat(); if (!changeTracker->displayChanges() && (changeSaveFormat == KoChangeTracker::DELTAXML)) { - KoTextDocument(document).textEditor()->addCommand(insertCommand, false); + KoTextDocument(document).textEditor()->instantlyExecuteCommand(insertCommand); } if (changeTracker->displayChanges() && (changeSaveFormat == KoChangeTracker::ODF_1_2)) { - KoTextDocument(document).textEditor()->addCommand(removeCommand, false); + KoTextDocument(document).textEditor()->instantlyExecuteCommand(removeCommand); } } diff -Nru calligra-2.3.86/libs/kotext/opendocument/KoTextWriter_p.cpp calligra-2.3.87/libs/kotext/opendocument/KoTextWriter_p.cpp --- calligra-2.3.86/libs/kotext/opendocument/KoTextWriter_p.cpp 2012-01-07 03:25:02.000000000 +0000 +++ calligra-2.3.87/libs/kotext/opendocument/KoTextWriter_p.cpp 2012-01-28 14:26:27.000000000 +0000 @@ -670,6 +670,9 @@ if (outlineLevel > 0) { blockTagInformation.setTagName("text:h"); blockTagInformation.addAttribute("text:outline-level", outlineLevel); + if (blockFormat.boolProperty(KoParagraphStyle::IsListHeader) || blockFormat.boolProperty(KoParagraphStyle::UnnumberedListItem)) { + blockTagInformation.addAttribute("text:is-list-header", "true"); + } } else { blockTagInformation.setTagName("text:p"); } @@ -756,20 +759,28 @@ if (changeTracker && changeTracker->saveFormat() == KoChangeTracker::ODF_1_2) { saveODF12Change(charFormat); } - + if ((!previousFragmentLink.isEmpty()) && (charFormat.anchorHref() != previousFragmentLink || !charFormat.isAnchor())) { // Close the current text:a closeTagRegion(linkTagChangeId); previousFragmentLink = ""; } - + if (charFormat.isAnchor() && charFormat.anchorHref() != previousFragmentLink) { // Open a text:a previousFragmentLink = charFormat.anchorHref(); TagInformation linkTagInformation; - linkTagInformation.setTagName("text:a"); - linkTagInformation.addAttribute("xlink:type", "simple"); - linkTagInformation.addAttribute("xlink:href", charFormat.anchorHref()); + if (previousFragmentLink.startsWith(QChar('#', 0))) { + linkTagInformation.setTagName("text:bookmark-ref"); + QString href = previousFragmentLink.right(previousFragmentLink.size()-1); + linkTagInformation.addAttribute("text:ref-name", href); + //linkTagInformation.addAttribute("text:ref-format", add the style of the ref here); + } + else { + linkTagInformation.setTagName("text:a"); + linkTagInformation.addAttribute("xlink:type", "simple"); + linkTagInformation.addAttribute("xlink:href", charFormat.anchorHref()); + } if (KoTextInlineRdf* inlineRdf = KoTextInlineRdf::tryToGetInlineRdf(charFormat)) { // Write xml:id here for Rdf kDebug(30015) << "have inline rdf xmlid:" << inlineRdf->xmlId(); @@ -777,7 +788,7 @@ } linkTagChangeId = openTagRegion(currentFragment.position(), KoTextWriter::Private::Span, linkTagInformation); } - + KoInlineTextObjectManager *textObjectManager = KoTextDocument(document).inlineTextObjectManager(); KoInlineObject *inlineObject = textObjectManager ? textObjectManager->inlineTextObject(charFormat) : 0; // If we are in an inline object @@ -896,6 +907,26 @@ writer->endElement(); } + QString text = block.text(); + if (text.length() == 0 || text.at(text.length()-1) == QChar(0x2028)) { + if (block.blockFormat().hasProperty(KoParagraphStyle::EndCharStyle)) { + QVariant v = block.blockFormat().property(KoParagraphStyle::EndCharStyle); + QSharedPointer endCharStyle = v.value< QSharedPointer >(); + if (!endCharStyle.isNull()) { + QTextCharFormat charFormat; + endCharStyle->applyStyle(charFormat); + + QString styleName = saveCharacterStyle(charFormat, blockCharFormat); + + if (!styleName.isEmpty()) { + writer->startElement("text:span", false); + writer->addAttribute("text:style-name", styleName); + writer->endElement(); + } + } + } + } + if (to !=-1 && to < block.position() + block.length()) { foreach (KoInlineObject* inlineObject, *currentPairedInlineObjectsStack) { inlineObject->saveOdf(context); @@ -1376,7 +1407,7 @@ listTagInformation.setTagName("text:list"); listTagInformation.addAttribute("text:style-name", listStyles[textList]); - if (listXmlIds.contains(list->listContinuedFrom())) { + if (list && listXmlIds.contains(list->listContinuedFrom())) { listTagInformation.addAttribute("text:continue-list", listXmlIds.value(list->listContinuedFrom())); } @@ -1446,7 +1477,9 @@ } } else { //This is a sub-list - block = saveList(block, listStyles, level + 1, currentTable); + while (KoList::level(block) >= (level + 1)) { + block = saveList(block, listStyles, level + 1, currentTable); + } //saveList will return a block one-past the last block of the list. //Since we are doing a block.next() below, we need to go one back. block = block.previous(); diff -Nru calligra-2.3.86/libs/kotext/opendocument/tests/TestChangeTracking.cpp calligra-2.3.87/libs/kotext/opendocument/tests/TestChangeTracking.cpp --- calligra-2.3.86/libs/kotext/opendocument/tests/TestChangeTracking.cpp 2012-01-07 03:25:02.000000000 +0000 +++ calligra-2.3.87/libs/kotext/opendocument/tests/TestChangeTracking.cpp 2012-01-28 07:04:49.000000000 +0000 @@ -24,7 +24,6 @@ #include #include -#include #include #include #include @@ -100,7 +99,7 @@ KoXmlElement realBody(KoXml::namedItemNS(content, KoXmlNS::office, "body")); KoXmlElement body = KoXml::namedItemNS(realBody, KoXmlNS::office, "text"); - KoStyleManager *styleManager = new KoStyleManager; + KoStyleManager *styleManager = new KoStyleManager(0); KoChangeTracker *changeTracker = new KoChangeTracker; KoInlineTextObjectManager *inlineTextObjectManager = new KoInlineTextObjectManager; if (changeFormat == "DeltaXML") @@ -130,6 +129,8 @@ QString TestChangeTracking::documentToOdt(const QString &testCase, QTextDocument *document) { + Q_UNUSED(testCase); + QString odt("test.odt"); if (QFile::exists(odt)) QFile::remove(odt); @@ -182,7 +183,7 @@ // Setup layout and managers just like kotext KoTextDocument(document).setInlineTextObjectManager(new KoInlineTextObjectManager()); // required while saving - KoStyleManager *styleManager = new KoStyleManager; + KoStyleManager *styleManager = new KoStyleManager(0); KoTextDocument(document).setStyleManager(styleManager); KoTextDocument(document).setTextEditor(new KoTextEditor(document)); diff -Nru calligra-2.3.86/libs/kotext/opendocument/tests/TestLoading.cpp calligra-2.3.87/libs/kotext/opendocument/tests/TestLoading.cpp --- calligra-2.3.86/libs/kotext/opendocument/tests/TestLoading.cpp 2012-01-07 03:25:02.000000000 +0000 +++ calligra-2.3.87/libs/kotext/opendocument/tests/TestLoading.cpp 2012-01-28 07:04:49.000000000 +0000 @@ -26,7 +26,6 @@ #include #include -#include #include #include #include @@ -1007,7 +1006,7 @@ KoXmlElement realBody(KoXml::namedItemNS(content, KoXmlNS::office, "body")); KoXmlElement body = KoXml::namedItemNS(realBody, KoXmlNS::office, "text"); - KoStyleManager *styleManager = new KoStyleManager; + KoStyleManager *styleManager = new KoStyleManager(0); KoChangeTracker *changeTracker = new KoChangeTracker; KoOdfLoadingContext odfLoadingContext(odfReadStore.styles(), odfReadStore.store(), *componentData); @@ -1085,7 +1084,7 @@ } if(!KoTextDocument(document).inlineTextObjectManager()) { - KoStyleManager *styleManager = new KoStyleManager; + KoStyleManager *styleManager = new KoStyleManager(0); KoTextDocument(document).setStyleManager(styleManager); KoChangeTracker* changeTracker = new KoChangeTracker; KoTextDocument(document).setChangeTracker(changeTracker); diff -Nru calligra-2.3.86/libs/kotext/opendocument/tests/TestLoadStyle.cpp calligra-2.3.87/libs/kotext/opendocument/tests/TestLoadStyle.cpp --- calligra-2.3.86/libs/kotext/opendocument/tests/TestLoadStyle.cpp 2012-01-07 03:25:02.000000000 +0000 +++ calligra-2.3.87/libs/kotext/opendocument/tests/TestLoadStyle.cpp 2012-01-28 07:04:49.000000000 +0000 @@ -89,7 +89,7 @@ KoXmlElement realBody(KoXml::namedItemNS(content, KoXmlNS::office, "body")); KoXmlElement body = KoXml::namedItemNS(realBody, KoXmlNS::office, "text"); - KoStyleManager *styleManager = new KoStyleManager; + KoStyleManager *styleManager = new KoStyleManager(0); KoChangeTracker *changeTracker = new KoChangeTracker; KoOdfLoadingContext odfLoadingContext(odfReadStore.styles(), odfReadStore.store(), *componentData); diff -Nru calligra-2.3.86/libs/kotext/styles/ChangeFollower.cpp calligra-2.3.87/libs/kotext/styles/ChangeFollower.cpp --- calligra-2.3.86/libs/kotext/styles/ChangeFollower.cpp 2012-01-07 03:25:03.000000000 +0000 +++ calligra-2.3.87/libs/kotext/styles/ChangeFollower.cpp 2012-01-28 07:04:49.000000000 +0000 @@ -1,5 +1,6 @@ /* This file is part of the KDE project * Copyright (C) 2006, 2009 Thomas Zander + * Copyright (C) 2012 C. Boemann * * This library is free software; you can redistribute it and/or * modify it under the terms of the GNU Library General Public @@ -20,6 +21,7 @@ #include "ChangeFollower.h" #include "KoCharacterStyle.h" #include "KoParagraphStyle.h" +#include "KoTextDocument.h" #include #include @@ -41,54 +43,124 @@ sm->remove(this); } -void ChangeFollower::processUpdates(const QList &changedStyles) +void ChangeFollower::collectNeededInfo(const QSet &changedStyles) { KoStyleManager *sm = m_styleManager.data(); - if (!sm) { - // since the stylemanager would be the one calling this method, I doubt this - // will ever happen. But better safe than sorry.. - deleteLater(); - return; - } - // optimization strategy; store the formatid of the formats we checked into + // TODO optimization strategy; store the formatid of the formats we checked into // a qset for 'hits' and 'ignores' and avoid the copying of the format // (fragment.charFormat() / block.blockFormat()) when the formatId is // already checked previosly QTextCursor cursor(m_document); QTextBlock block = cursor.block(); + Memento *memento = new Memento; + while (block.isValid()) { - QTextBlockFormat bf = block.blockFormat(); - int id = bf.intProperty(KoParagraphStyle::StyleId); + memento->blockPosition = block.position(); + memento->blockParentCharFormat = block.charFormat(); + // FIXME memento->blockParentFormat = KoTextDocument(m_document).frameBlockFormat(); + memento->paragraphStyleId = 0; + + if (!memento->blockParentCharFormat.isTableCellFormat()) { + memento->blockParentCharFormat = KoTextDocument(m_document).frameCharFormat(); + } + + bool blockChanged = false; + int id = block.blockFormat().intProperty(KoParagraphStyle::StyleId); if (id > 0 && changedStyles.contains(id)) { - cursor.setPosition(block.position()); + /* FIXME we should extract any direct formatting. Like this but needs testing: KoParagraphStyle *style = sm->paragraphStyle(id); Q_ASSERT(style); - - style->applyStyle(block); + QTextCharFormat basis = memento->blockParentCharFormat; + style->KoCharacterStyle::applyStyle(basis); + style->KoCharacterStyle::ensureMinimalProperties(basis); + memento->blockDirectCharFormat = block.charFormat(); + memento->blockDirectCharFormat->removeDuplicates(basis); + */ + memento->paragraphStyleId = id; + blockChanged = true; } - QTextCharFormat cf; QTextBlock::iterator iter = block.begin(); - while (! iter.atEnd()) { + while (!iter.atEnd()) { QTextFragment fragment = iter.fragment(); - cf = fragment.charFormat(); + QTextCharFormat cf(fragment.charFormat()); id = cf.intProperty(KoCharacterStyle::StyleId); - if (id > 0 && changedStyles.contains(id)) { + if (blockChanged || (id > 0 && changedStyles.contains(id))) { // create selection cursor.setPosition(fragment.position()); cursor.setPosition(fragment.position() + fragment.length(), QTextCursor::KeepAnchor); + QTextCharFormat blockCharFormat = block.charFormat(); // with old parstyle applied + KoCharacterStyle *style = sm->characterStyle(id); if (style) { - style->applyStyle(cf); - cursor.mergeCharFormat(cf); + style->applyStyle(blockCharFormat); + style->ensureMinimalProperties(blockCharFormat); + } + + QMap props = blockCharFormat.properties(); + foreach(int key, props.keys()) { + if (cf.property(key) == blockCharFormat.property(key)) { + cf.clearProperty(key); + } } + memento->fragmentStyleId.append(id); + memento->fragmentDirectFormats.append(cf); + memento->fragmentCursors.append(cursor); } ++iter; } + if (blockChanged || memento->fragmentCursors.length()) { + m_mementos.append(memento); + memento = new Memento; + } block = block.next(); } + + delete memento; // we always have one that is unused +} + +void ChangeFollower::processUpdates(const QSet &changedStyles) +{ + KoStyleManager *sm = m_styleManager.data(); + + QTextCursor cursor(m_document); + foreach (Memento *memento, m_mementos) { + cursor.setPosition(memento->blockPosition); + QTextBlock block = cursor.block(); + + if (memento->paragraphStyleId > 0) { + KoParagraphStyle *style = sm->paragraphStyle(memento->paragraphStyleId); + Q_ASSERT(style); + + style->KoCharacterStyle::applyStyle(memento->blockParentCharFormat); + style->KoCharacterStyle::ensureMinimalProperties(memento->blockParentCharFormat); + cursor.setBlockCharFormat(memento->blockParentCharFormat); + + //QTextBlockFormat bf = block.blockFormat(); + } + + QList::Iterator fmtIt = memento->fragmentDirectFormats.begin(); + QList::Iterator idIt = memento->fragmentStyleId.begin(); + foreach(QTextCursor fragCursor, memento->fragmentCursors) { + QTextCharFormat cf(block.charFormat()); // start with block formatting + + if (*idIt > 0) { + KoCharacterStyle *style = sm->characterStyle(*idIt); + if (style) { + style->applyStyle(cf); // possibly apply charstyle formatting + } + } + + cf.merge(*fmtIt); //apply direct formatting + + fragCursor.setCharFormat(cf); + + ++idIt; + ++fmtIt; + } + } } #include diff -Nru calligra-2.3.86/libs/kotext/styles/ChangeFollower.h calligra-2.3.87/libs/kotext/styles/ChangeFollower.h --- calligra-2.3.86/libs/kotext/styles/ChangeFollower.h 2012-01-07 03:25:03.000000000 +0000 +++ calligra-2.3.87/libs/kotext/styles/ChangeFollower.h 2012-01-28 07:04:49.000000000 +0000 @@ -1,5 +1,6 @@ /* This file is part of the KDE project * Copyright (C) 2006 Thomas Zander + * Copyright (C) 2012 C. Boemann * * This library is free software; you can redistribute it and/or * modify it under the terms of the GNU Library General Public @@ -25,6 +26,9 @@ #include #include #include +#include +#include +#include /** * This object dies when the parent QTextDocument dies and in the destructor @@ -45,8 +49,8 @@ * inside KoStyleManager is for memory management. A stylemanager can * maintain a lot of documents and these documents can be deleted without * telling the styleManager. We use the QObject principle of children - * getting deleted when the parant gets deleted to track the document, which - * we use as the parant document. + * getting deleted when the parent gets deleted to track the document, which + * we use as the parent document. */ ChangeFollower(QTextDocument *parent, KoStyleManager *manager); @@ -54,20 +58,42 @@ ~ChangeFollower(); /** - * Will update all the text in the document with the changes. - * The document this follower is associated with is scanned for - * text that has one of the changed styles and on those portions of the text - * the style will be (re)applied. + * Will collect the needed info from the document finding the autostyles that we + * need to preserve during theprocessUpdates + * * @param changedStyles a list of styleIds. from KoParagraphStyle::styleId * and KoCharacterStyle::styleId */ - void processUpdates(const QList &changedStyles); + void collectNeededInfo(const QSet &changedStyles); + + /** + * Will update all the text in the document that were identified during the build + * stage. + * during the apply stage the updated styles are applied. + * @param changedStyles a list of styleIds. from KoParagraphStyle::styleId + * and KoCharacterStyle::styleId + */ + void processUpdates(const QSet &changedStyles); + /// return the document this follower is following. const QTextDocument *document() const { return m_document; } private: + struct Memento + { + int blockPosition; + int paragraphStyleId; + QTextBlockFormat blockDirectFormat; + QTextBlockFormat blockParentFormat; + QTextCharFormat blockDirectCharFormat; + QTextCharFormat blockParentCharFormat; + QList fragmentDirectFormats; + QList fragmentCursors; + QList fragmentStyleId; + }; + QList m_mementos; QTextDocument *m_document; QWeakPointer m_styleManager; }; diff -Nru calligra-2.3.86/libs/kotext/styles/KoCharacterStyle.cpp calligra-2.3.87/libs/kotext/styles/KoCharacterStyle.cpp --- calligra-2.3.86/libs/kotext/styles/KoCharacterStyle.cpp 2012-01-07 03:25:03.000000000 +0000 +++ calligra-2.3.87/libs/kotext/styles/KoCharacterStyle.cpp 2012-01-28 07:04:49.000000000 +0000 @@ -22,12 +22,16 @@ */ #include "KoCharacterStyle.h" +#include "KoTableCellStyle.h" + #include "Styles_p.h" #include #include #include #include +#include +#include #include #include @@ -40,6 +44,8 @@ #include #include #include "KoTextSharedLoadingData.h" +#include "KoInlineTextObjectManager.h" +#include "KoTextDocument.h" #ifdef SHOULD_BUILD_FONT_CONVERSION #include @@ -57,6 +63,7 @@ #endif #include +#include "KoTextDebug.h" #ifdef SHOULD_BUILD_FONT_CONVERSION QMap textScaleMap; @@ -346,7 +353,7 @@ d->stylesPrivate = format.properties(); } -KoCharacterStyle *KoCharacterStyle::clone(QObject *parent) +KoCharacterStyle *KoCharacterStyle::clone(QObject *parent) const { KoCharacterStyle *newStyle = new KoCharacterStyle(parent); newStyle->copyProperties(this); @@ -368,6 +375,11 @@ d->parentStyle = parent; } +KoCharacterStyle *KoCharacterStyle::parentStyle() const +{ + return d->parentStyle; +} + QPen KoCharacterStyle::textOutline() const { QVariant variant = value(QTextFormat::TextOutline); @@ -458,21 +470,73 @@ ensureMinimalProperties(blockCharFormat); autoStyle->removeDuplicates(blockCharFormat); autoStyle->setParentStyle(const_cast(this)); + // remove StyleId if it is there as it is not a property of the style itself and will not be written out + // so it should not be part of the autostyle. As otherwise it can happen that the StyleId is the only + // property left and then we write out an empty style which is unneeded. + // we also need to remove the properties of links as they are saved differently + autoStyle->d->stylesPrivate.remove(StyleId); + autoStyle->d->stylesPrivate.remove(QTextFormat::IsAnchor); + autoStyle->d->stylesPrivate.remove(QTextFormat::AnchorHref); + autoStyle->d->stylesPrivate.remove(QTextFormat::AnchorName); return autoStyle; } +struct FragmentData +{ + FragmentData(const QTextCharFormat &format, int position, int length) + : format(format) + , position(position) + , length(length) + {} + + QTextCharFormat format; + int position; + int length; +}; + void KoCharacterStyle::applyStyle(QTextBlock &block) const { QTextCursor cursor(block); - QTextCharFormat cf = cursor.blockCharFormat(); + QTextCharFormat cf = block.charFormat(); + + if (!cf.isTableCellFormat()) { + cf = KoTextDocument(block.document()).frameCharFormat(); + } + applyStyle(cf); - QTextCharFormat format = cf; ensureMinimalProperties(cf); cursor.setBlockCharFormat(cf); - cursor.setPosition(block.position() + block.length() - 1, QTextCursor::KeepAnchor); - cursor.setCharFormat(cf); -// FIXME above effectively removes any char styles and direct formatting from the block + // be sure that we keep the InlineInstanceId, anchor information and ChangeTrackerId when applying a style + + QList fragments; + for (QTextBlock::iterator it = block.begin(); it != block.end(); ++it) { + QTextFragment currentFragment = it.fragment(); + if (currentFragment.isValid()) { + QTextCharFormat format(cf); + QVariant v = currentFragment.charFormat().property(InlineInstanceId); + if (!v.isNull()) { + format.setProperty(InlineInstanceId, v); + } + + v = currentFragment.charFormat().property(ChangeTrackerId); + if (!v.isNull()) { + format.setProperty(ChangeTrackerId, v); + } + + if (currentFragment.charFormat().isAnchor()) { + format.setAnchor(true); + format.setAnchorHref(currentFragment.charFormat().anchorHref()); + } + fragments.append(FragmentData(format, currentFragment.position(), currentFragment.length())); + } + } + + foreach (const FragmentData &fragment, fragments) { + cursor.setPosition(fragment.position); + cursor.setPosition(fragment.position + fragment.length, QTextCursor::KeepAnchor); + cursor.setCharFormat(fragment.format); + } } void KoCharacterStyle::applyStyle(QTextCursor *selection) const @@ -1798,6 +1862,11 @@ return compareCharacterProperties(other); } +bool KoCharacterStyle::operator!=(const KoCharacterStyle &other) const +{ + return !compareCharacterProperties(other); +} + bool KoCharacterStyle::compareCharacterProperties(const KoCharacterStyle &other) const { return other.d->stylesPrivate == d->stylesPrivate; @@ -2119,9 +2188,9 @@ QVariant variant = d->stylesPrivate.value(key); if (variant.isNull()) { if (d->parentStyle) - return d->parentStyle->value(key); + variant = d->parentStyle->value(key); else if (d->defaultStyle) - return d->defaultStyle->value(key); + variant = d->defaultStyle->value(key); } return variant; } diff -Nru calligra-2.3.86/libs/kotext/styles/KoCharacterStyle.h calligra-2.3.87/libs/kotext/styles/KoCharacterStyle.h --- calligra-2.3.86/libs/kotext/styles/KoCharacterStyle.h 2012-01-07 03:25:03.000000000 +0000 +++ calligra-2.3.87/libs/kotext/styles/KoCharacterStyle.h 2012-01-28 07:04:49.000000000 +0000 @@ -368,20 +368,20 @@ TextCombineType textCombine() const; void setTextCombine(TextCombineType type); - + QChar textCombineStartChar() const; void setTextCombineStartChar(const QChar &character); - + QChar textCombineEndChar() const; void setTextCombineEndChar(const QChar &character); - - + + ReliefType fontRelief() const; void setFontRelief(ReliefType relief); - + EmphasisStyle textEmphasizeStyle() const; void setTextEmphasizeStyle(EmphasisStyle emphasis); - + EmphasisPosition textEmphasizePosition() const; void setTextEmphasizePosition(EmphasisPosition position); @@ -415,7 +415,7 @@ void copyProperties(const KoCharacterStyle *style); void copyProperties(const QTextCharFormat &format); - KoCharacterStyle *clone(QObject *parent = 0); + KoCharacterStyle *clone(QObject *parent = 0) const; /// return the name of the style. QString name() const; @@ -467,6 +467,8 @@ bool operator==(const KoCharacterStyle &other) const; + bool operator!=(const KoCharacterStyle &other) const; + /** * Removes properties from this style that have the same value in other style. */ diff -Nru calligra-2.3.86/libs/kotext/styles/KoListLevelProperties.cpp calligra-2.3.87/libs/kotext/styles/KoListLevelProperties.cpp --- calligra-2.3.86/libs/kotext/styles/KoListLevelProperties.cpp 2012-01-07 03:25:03.000000000 +0000 +++ calligra-2.3.87/libs/kotext/styles/KoListLevelProperties.cpp 2012-01-28 07:04:49.000000000 +0000 @@ -41,6 +41,7 @@ #include #include #include +#include class KoListLevelProperties::Private { @@ -445,12 +446,13 @@ case KoListStyle::Bullet: bullet = 0x2022; break; case KoListStyle::BlackCircle: bullet = 0x25CF; break; case KoListStyle::CircleItem: bullet = 0x25CB; break; - case KoListStyle::RhombusItem: bullet = 0xE00C; break; - case KoListStyle::SquareItem: bullet = 0xE00A; break; + case KoListStyle::RhombusItem: bullet = 0x25C6; break; + case KoListStyle::SquareItem: bullet = 0x25A0; break; case KoListStyle::RightArrowHeadItem: bullet = 0x27A2; break; case KoListStyle::RightArrowItem: bullet = 0x2794; break; case KoListStyle::HeavyCheckMarkItem: bullet = 0x2714; break; case KoListStyle::BallotXItem: bullet = 0x2717; break; + case KoListStyle::DiscItem: bullet = 0x25CF; break; } if (bullet != 0) @@ -487,7 +489,7 @@ else { // kDebug(32500) << "==> cs.name:" << cs->name(); // kDebug(32500) << "==> cs.styleId:" << cs->styleId(); - setCharacterStyleId(cs->styleId()); + setCharacterStyleId(cs->styleId()); } } } @@ -514,10 +516,10 @@ case 0x25CB: //white circle, no fill setStyle(KoListStyle::CircleItem); break; - case 0xE00C: // losange => rhombus + case 0x25C6: // losange => rhombus setStyle(KoListStyle::RhombusItem); break; - case 0xE00A: // square. Not in OASIS (reserved Unicode area!), but used in both OOo and kotext. + case 0x25A0: // square. Not in OASIS (reserved Unicode area!), but used in both OOo and kotext. setStyle(KoListStyle::SquareItem); break; case 0x27A2: // two-colors right-pointing triangle @@ -788,18 +790,30 @@ switch (style()) { case KoListStyle::Bullet: bullet = 0x2022; break; case KoListStyle::CircleItem: bullet = 0x25CB; break; - case KoListStyle::RhombusItem: bullet = 0xE00C; break; - case KoListStyle::SquareItem: bullet = 0xE00A; break; + case KoListStyle::RhombusItem: bullet = 0x25C6; break; + case KoListStyle::SquareItem: bullet = 0x25A0; break; case KoListStyle::RightArrowHeadItem: bullet = 0x27A2; break; case KoListStyle::RightArrowItem: bullet = 0x2794; break; case KoListStyle::HeavyCheckMarkItem: bullet = 0x2714; break; case KoListStyle::BallotXItem: bullet = 0x2717; break; + case KoListStyle::BlackCircle: + case KoListStyle::DiscItem: bullet = 0x25CF; break; default: bullet = 0; break; //empty character } } writer->addAttribute("text:bullet-char", QChar(bullet)); } + KoTextSharedSavingData *sharedSavingData = 0; + if (d->stylesPrivate.contains(KoListStyle::CharacterStyleId) && (characterStyleId() != 0) && + (sharedSavingData = dynamic_cast(context.sharedData(KOTEXT_SHARED_SAVING_ID)))) { + QString styleName = sharedSavingData->styleName(characterStyleId()); + // dynamic_cast(context.sharedData(KOTEXT_SHARED_SAVING_ID))->styleName(characterStyleId()); + if (!styleName.isEmpty()) { + writer->addAttribute("text:style-name", styleName); + } + } + // These apply to bulleted and numbered lists if (d->stylesPrivate.contains(KoListStyle::Level)) writer->addAttribute("text:level", d->stylesPrivate.value(KoListStyle::Level).toInt()); diff -Nru calligra-2.3.86/libs/kotext/styles/KoParagraphStyle.cpp calligra-2.3.87/libs/kotext/styles/KoParagraphStyle.cpp --- calligra-2.3.86/libs/kotext/styles/KoParagraphStyle.cpp 2012-01-07 03:25:03.000000000 +0000 +++ calligra-2.3.87/libs/kotext/styles/KoParagraphStyle.cpp 2012-01-28 07:04:49.000000000 +0000 @@ -249,7 +249,15 @@ const QMap props = d->stylesPrivate.properties(); QMap::const_iterator it = props.begin(); while (it != props.end()) { - format.setProperty(it.key(), it.value()); + if (it.key() == QTextBlockFormat::BlockLeftMargin) { + format.setLeftMargin(leftMargin()); + } else if (it.key() == QTextBlockFormat::BlockRightMargin) { + format.setRightMargin(rightMargin()); + } else if (it.key() == QTextBlockFormat::TextIndent) { + format.setTextIndent(textIndent()); + } else { + format.setProperty(it.key(), it.value()); + } ++it; } if ((hasProperty(DefaultOutlineLevel)) && (!format.hasProperty(OutlineLevel))) { @@ -296,8 +304,10 @@ } d->list->add(block, listLevel()); } else { - if (block.textList()) - block.textList()->remove(block); + // Gopalakrishna Bhat A: We do not remove the block from the list if the paragraphstyle does not have a listStyle + // even if applyListStyle is true + //if (block.textList()) + // block.textList()->remove(block); KoTextBlockData *data = dynamic_cast(block.userData()); if (data) data->setCounterWidth(-1); @@ -317,13 +327,32 @@ QList keys = d->stylesPrivate.keys(); for (int i = 0; i < keys.count(); i++) { QVariant variant = d->stylesPrivate.value(keys[i]); - if (variant == format.property(keys[i])) - format.clearProperty(keys[i]); + if (keys[i] == QTextBlockFormat::BlockLeftMargin) { + if (leftMargin() == format.property(keys[i])) + format.clearProperty(keys[i]); + } else if (keys[i] == QTextBlockFormat::BlockRightMargin) { + if (rightMargin() == format.property(keys[i])) + format.clearProperty(keys[i]); + } else if (keys[i] == QTextBlockFormat::TextIndent) { + if (textIndent() == format.property(keys[i])) + format.clearProperty(keys[i]); + } else { + if (variant == format.property(keys[i])) + format.clearProperty(keys[i]); + } } + + format.clearProperty(KoParagraphStyle::OutlineLevel); + cursor.setBlockFormat(format); KoCharacterStyle::unapplyStyle(block); - if (listStyle() && block.textList()) // TODO check its the same one? - block.textList()->remove(block); + if (listStyle() && block.textList()) { // TODO check its the same one? + KoList::remove(block); + } + if (d->list && block.textList()) { // TODO check its the same one? + KoList::remove(block); + } + } void KoParagraphStyle::setLineHeightPercent(int lineHeight) @@ -840,9 +869,12 @@ setProperty(QTextFormat::TextIndent, margin); } -QTextLength KoParagraphStyle::textIndent() const +qreal KoParagraphStyle::textIndent() const { - return propertyLength(QTextFormat::TextIndent); + if (parentStyle()) + return propertyLength(QTextFormat::TextIndent).value(parentStyle()->textIndent()); + else + return propertyLength(QTextFormat::TextIndent).value(0); } void KoParagraphStyle::setAutoTextIndent(bool on) @@ -1843,9 +1875,10 @@ setName(style->name()); // make sure we emit property change KoCharacterStyle::copyProperties(style); d->parentStyle = style->d->parentStyle; + d->defaultStyle = style->d->defaultStyle; } -KoParagraphStyle *KoParagraphStyle::clone(QObject *parent) +KoParagraphStyle *KoParagraphStyle::clone(QObject *parent) const { KoParagraphStyle *newStyle = new KoParagraphStyle(parent); newStyle->copyProperties(this); @@ -2023,7 +2056,7 @@ } // } else if (key == QTextFormat::TextIndent) { - style.addPropertyLength("fo:text-indent", textIndent(), KoGenStyle::ParagraphType); + style.addPropertyLength("fo:text-indent", propertyLength(QTextFormat::TextIndent), KoGenStyle::ParagraphType); } else if (key == KoParagraphStyle::AutoTextIndent) { style.addProperty("style:auto-text-indent", autoTextIndent(), KoGenStyle::ParagraphType); } else if (key == KoParagraphStyle::TabStopDistance) { diff -Nru calligra-2.3.86/libs/kotext/styles/KoParagraphStyle.h calligra-2.3.87/libs/kotext/styles/KoParagraphStyle.h --- calligra-2.3.86/libs/kotext/styles/KoParagraphStyle.h 2012-01-07 03:25:03.000000000 +0000 +++ calligra-2.3.87/libs/kotext/styles/KoParagraphStyle.h 2012-01-28 07:04:49.000000000 +0000 @@ -61,6 +61,7 @@ Q_OBJECT public: enum Property { + // Every 10 properties, the decimal number shown indicates the decimal offstet over the QTextFormat::UserProperty enum value StyleId = QTextFormat::UserProperty + 1, // Linespacing properties PercentLineHeight, ///< this propery is used for a percentage of the highest character on that line @@ -71,7 +72,7 @@ AlignLastLine, ///< When the paragraph is justified, what to do with the last word line WidowThreshold, ///< If 'keep together'=false, amount of lines to keep it anyway. OrphanThreshold, ///< If 'keep together'=false, amount of lines to keep it anyway. - DropCaps, ///< defines if a paragraph renders its first char(s) with drop-caps + DropCaps, /*10*/ ///< defines if a paragraph renders its first char(s) with drop-caps DropCapsLength, ///< Number of glyphs to show as drop-caps DropCapsLines, ///< Number of lines that the drop-caps span DropCapsDistance, ///< Distance between drop caps and text @@ -83,7 +84,7 @@ HasTopBorder, ///< If true, paint a border on the top HasRightBorder, ///< If true, paint a border on the right HasBottomBorder,///< If true, paint a border on the bottom - BorderLineWidth,///< Thickness of inner-border + BorderLineWidth, /*20*/ ///< Thickness of inner-border SecondBorderLineWidth, ///< Thickness of outer-border DistanceToSecondBorder, ///< Distance between inner and outer border LeftPadding, ///< distance between text and border @@ -93,7 +94,7 @@ LeftBorderWidth, ///< The thickness of the border, or 0 if there is no border LeftInnerBorderWidth, ///< In case of style being 'double' the thickness of the inner border line LeftBorderSpacing, ///< In case of style being 'double' the space between the inner and outer border lines - LeftBorderStyle, ///< The border style. (see BorderStyle) + LeftBorderStyle, /*30*/ ///< The border style. (see BorderStyle) LeftBorderColor, ///< The border Color TopBorderWidth, ///< The thickness of the border, or 0 if there is no border TopInnerBorderWidth, ///< In case of style being 'double' the thickness of the inner border line @@ -103,7 +104,7 @@ RightBorderWidth, ///< The thickness of the border, or 0 if there is no border RightInnerBorderWidth, ///< In case of style being 'double' the thickness of the inner border line RightBorderSpacing, ///< In case of style being 'double' the space between the inner and outer border lines - RightBorderStyle, ///< The border style. (see BorderStyle) + RightBorderStyle, /*40*/ ///< The border style. (see BorderStyle) RightBorderColor, ///< The border Color BottomBorderWidth, ///< The thickness of the border, or 0 if there is no border BottomInnerBorderWidth, ///< In case of style being 'double' the thickness of the inner border line @@ -115,7 +116,7 @@ ListStyleId, ///< Style Id of associated list style ListStartValue, ///< Int with the list-value that that parag will have. Ignored if this is not a list. RestartListNumbering, ///< boolean to indicate that this paragraph will have numbering restart at the list-start. Ignored if this is not a list. - ListLevel, ///< int with the list-level that the paragraph will get when this is a list (numbered paragraphs) + ListLevel, /*50*/ ///< int with the list-level that the paragraph will get when this is a list (numbered paragraphs) IsListHeader, ///< bool, if true the paragraph shows up as a list item, but w/o a list label. UnnumberedListItem, ///< bool. if true this paragraph is part of a list but is not numbered @@ -132,8 +133,8 @@ DefaultOutlineLevel, // numbering - LineNumbering, ///< bool, specifies whether lines should be numbered in this paragraph - LineNumberStartValue, ///< integer value that specifies the number for the first line in the paragraph + LineNumbering, /*60*/ ///< bool, specifies whether lines should be numbered in this paragraph + LineNumberStartValue, ///< integer value that specifies the number for the first line in the paragraph SectionStartings, ///< list of section definitions SectionEndings, ///< list // do 15.5.24 @@ -165,15 +166,16 @@ TableOfContentsData, // set when block is instead a TableOfContents GeneratedDocument, // set when block is instead a generated document Shadow, //< KoShadowStyle, the shadow of this paragraph - NextStyle, ///< holds the styleId of the style to be used on a new line - ParagraphListStyleId ///< this holds the listStyleId of the list got from style:list-style-name property from ODF 1.2 + NextStyle, ///< holds the styleId of the style to be used on a new paragraph + ParagraphListStyleId, ///< this holds the listStyleId of the list got from style:list-style-name property from ODF 1.2 + EndCharStyle // QSharedPointer used when final line is empty }; enum AutoSpace { NoAutoSpace, ///< space should not be added between portions of Asian, Western and complex texts IdeographAlpha ///< space should be added between portions of Asian, Western and complex texts }; - + enum VerticalAlign { VAlignAuto, VAlignBaseline, @@ -181,8 +183,7 @@ VAlignMiddle, VAlignTop }; - - + /// Constructor KoParagraphStyle(QObject *parent = 0); /// Creates a KoParagrahStyle with the given block format, the block character format and \a parent @@ -194,7 +195,7 @@ static KoParagraphStyle *fromBlock(const QTextBlock &block, QObject *parent = 0); /// creates a clone of this style with the specified parent - KoParagraphStyle *clone(QObject *parent = 0); + KoParagraphStyle *clone(QObject *parent = 0) const; // ***** Linespacing /** @@ -277,6 +278,7 @@ * frame, setting a widowThreshold of 4 will break at 6 lines instead to leave the * requested 4 lines. */ + void setWidowThreshold(int lines); /** * @see setWidowThreshold @@ -290,6 +292,7 @@ * setting the orphanThreshold to something greater than 2 will move the whole paragraph * to the second frame. */ + void setOrphanThreshold(int lines); /** * @see setOrphanThreshold @@ -301,6 +304,7 @@ * @see setDropCapsLines * @see dropCapsDistance */ + void setDropCaps(bool on); /** * @see setDropCaps @@ -312,6 +316,7 @@ * @see setDropCapsLines * @see dropCapsDistance */ + void setDropCapsLength(int characters); /** * set dropCaps Length in characters @@ -324,6 +329,7 @@ * @see setDropCaps * @see dropCapsDistance */ + void setDropCapsLines(int lines); /** * The dropCapsLines @@ -336,6 +342,7 @@ * @see setDropCaps * @see setDropCapsLines */ + void setDropCapsDistance(qreal distance); /** * The dropCaps distance @@ -371,46 +378,46 @@ QBrush background() const; /// See similar named method on QTextBlockFormat void clearBackground(); - + qreal backgroundTransparency() const; void setBackgroundTransparency(qreal transparency); bool snapToLayoutGrid() const; void setSnapToLayoutGrid(bool value); - + bool registerTrue() const; void setRegisterTrue(bool value); - + bool strictLineBreak() const; void setStrictLineBreak(bool value); - + bool justifySingleWord() const; void setJustifySingleWord(bool value); - + bool automaticWritingMode() const; void setAutomaticWritingMode(bool value); - + void setPageNumber(int pageNumber); int pageNumber() const; - + void setKeepWithNext(bool value); bool keepWithNext() const; - + void setPunctuationWrap(bool value); bool punctuationWrap() const; - + void setTextAutoSpace(AutoSpace value); AutoSpace textAutoSpace() const; - + void setKeepHyphenation(bool value); bool keepHyphenation() const; - + void setHyphenationLadderCount(int value); int hyphenationLadderCount() const; - + VerticalAlign verticalAlignment() const; void setVerticalAlignment(VerticalAlign value); - + void setBreakBefore(KoText::KoTextBreakProperty value); KoText::KoTextBreakProperty breakBefore() const; void setBreakAfter(KoText::KoTextBreakProperty value); @@ -465,7 +472,7 @@ KoBorder::BorderStyle bottomBorderStyle() const; void setBottomBorderColor(const QColor &color); QColor bottomBorderColor() const; - + bool joinBorder() const; void setJoinBorder(bool value); @@ -502,7 +509,7 @@ /// duplicated property from QTextBlockFormat void setTextIndent(QTextLength margin); /// duplicated property from QTextBlockFormat - QTextLength textIndent() const; + qreal textIndent() const; /// Custom KoParagraphStyle property for auto-text-indent void setAutoTextIndent(bool on); bool autoTextIndent() const; @@ -521,10 +528,10 @@ /// return the parent style KoParagraphStyle *parentStyle() const; - /// the 'next' style is the one used when the user creates a new paragrap after this one. + /// the 'next' style is the one used when the user creates a new paragraph after this one. void setNextStyle(int next); - /// the 'next' style is the one used when the user creates a new paragrap after this one. + /// the 'next' style is the one used when the user creates a new paragraph after this one. int nextStyle() const; /// return the name of the style. diff -Nru calligra-2.3.86/libs/kotext/styles/KoStyleManager.cpp calligra-2.3.87/libs/kotext/styles/KoStyleManager.cpp --- calligra-2.3.86/libs/kotext/styles/KoStyleManager.cpp 2012-01-07 03:25:03.000000000 +0000 +++ calligra-2.3.87/libs/kotext/styles/KoStyleManager.cpp 2012-01-28 07:04:49.000000000 +0000 @@ -32,11 +32,15 @@ #include "KoTableCellStyle.h" #include "KoSectionStyle.h" #include "ChangeFollower.h" +#include "commands/ChangeStylesMacroCommand.h" #include "KoTextDocument.h" #include #include #include +#include + +#include #include #include @@ -52,7 +56,7 @@ class KoStyleManager::Private { public: - Private() : updateTriggered(false), defaultCharacterStyle(0), defaultParagraphStyle(0), defaultListStyle(0), outlineStyle(0) + Private() : defaultCharacterStyle(0), defaultParagraphStyle(0), defaultListStyle(0), defaultOutlineStyle(0), outlineStyle(0), undoStack(0), changeCommand(0) { } ~Private() { @@ -72,17 +76,18 @@ QHash unusedParagraphStyles; QList documentUpdaterProxies; - bool updateTriggered; - QList updateQueue; KoCharacterStyle *defaultCharacterStyle; KoParagraphStyle *defaultParagraphStyle; KoListStyle *defaultListStyle; + KoListStyle *defaultOutlineStyle; KoListStyle *outlineStyle; QList defaultToCEntriesStyleId; KoOdfNotesConfiguration *footNotesConfiguration; KoOdfNotesConfiguration *endNotesConfiguration; KoOdfBibliographyConfiguration *bibliographyConfiguration; + KUndo2Stack *undoStack; + ChangeStylesMacroCommand *changeCommand; }; // static @@ -103,12 +108,22 @@ //TODO: also use the defaultstyles.xml mechanism. see KoOdfLoadingContext and KoTextSharedLoadingData d->defaultListStyle = new KoListStyle(this); - KoListLevelProperties llp; - llp.setLevel(1); - llp.setStartValue(1); - llp.setStyle(KoListStyle::DecimalItem); - llp.setListItemSuffix("."); - d->defaultListStyle->setLevelProperties(llp); + const int margin = 10; // we specify the margin for the default list style(Note: Even ChangeListCommand has this value) + const int maxListLevel = 10; + for (int level = 1; level <= maxListLevel; level++) { + KoListLevelProperties llp; + llp.setLevel(level); + llp.setStartValue(1); + llp.setStyle(KoListStyle::DecimalItem); + llp.setListItemSuffix("."); + llp.setAlignmentMode(true); + llp.setLabelFollowedBy(KoListStyle::ListTab); + llp.setTabStopPosition(margin*(level+2)); + llp.setMargin(margin*(level+1)); + llp.setTextIndent(margin); + + d->defaultListStyle->setLevelProperties(llp); + } //default styles for ToCs int maxOutLineLevel = 10; @@ -130,6 +145,11 @@ delete d; } +void KoStyleManager::setUndoStack(KUndo2Stack *undoStack) +{ + d->undoStack = undoStack; +} + void KoStyleManager::saveOdfDefaultStyles(KoShapeSavingContext &context) { KoGenStyle pstyle(KoGenStyle::ParagraphStyle, "paragraph"); @@ -150,6 +170,12 @@ void KoStyleManager::saveOdf(KoShapeSavingContext &context) { + KoTextSharedSavingData *textSharedSavingData = 0; + if (!(textSharedSavingData = dynamic_cast(context.sharedData(KOTEXT_SHARED_SAVING_ID)))) { + textSharedSavingData = new KoTextSharedSavingData; + context.addSharedData(KOTEXT_SHARED_SAVING_ID, textSharedSavingData); + } + saveOdfDefaultStyles(context); // don't save character styles that are already saved as part of a paragraph style @@ -166,6 +192,7 @@ KoGenStyle style(KoGenStyle::ParagraphStyle, "paragraph"); paragraphStyle->saveOdf(style, context); QString newName = context.mainStyles().insert(style, name, KoGenStyles::DontAddNumberToName); + textSharedSavingData->setStyleName(paragraphStyle->styleId(), newName); savedNames.insert(paragraphStyle, newName); } @@ -189,7 +216,8 @@ KoGenStyle style(KoGenStyle::ParagraphStyle, "text"); characterStyle->saveOdf(style); - context.mainStyles().insert(style, name, KoGenStyles::DontAddNumberToName); + QString newName = context.mainStyles().insert(style, name, KoGenStyles::DontAddNumberToName); + textSharedSavingData->setStyleName(characterStyle->styleId(), newName); } foreach(KoListStyle *listStyle, d->listStyles) { @@ -202,6 +230,8 @@ KoGenStyle style(KoGenStyle::ListStyle); listStyle->saveOdf(style, context); context.mainStyles().insert(style, name, KoGenStyles::DontAddNumberToName); + QString newName = context.mainStyles().insert(style, name, KoGenStyles::DontAddNumberToName); + textSharedSavingData->setStyleName(listStyle->styleId(), newName); } foreach(KoTableStyle *tableStyle, d->tableStyles) { @@ -400,48 +430,80 @@ void KoStyleManager::remove(KoCharacterStyle *style) { + if (!style || !d->changeCommand) { + return; + } + if (d->charStyles.remove(style->styleId())) emit styleRemoved(style); } void KoStyleManager::remove(KoParagraphStyle *style) { + if (!style || !d->changeCommand) { + return; + } + if (d->paragStyles.remove(style->styleId())) emit styleRemoved(style); } void KoStyleManager::remove(KoListStyle *style) { + if (!style || !d->changeCommand) { + return; + } + if (d->listStyles.remove(style->styleId())) emit styleRemoved(style); } void KoStyleManager::remove(KoTableStyle *style) { + if (!style || !d->changeCommand) { + return; + } + if (d->tableStyles.remove(style->styleId())) emit styleRemoved(style); } void KoStyleManager::remove(KoTableColumnStyle *style) { + if (!style || !d->changeCommand) { + return; + } + if (d->tableColumnStyles.remove(style->styleId())) emit styleRemoved(style); } void KoStyleManager::remove(KoTableRowStyle *style) { + if (!style || !d->changeCommand) { + return; + } + if (d->tableRowStyles.remove(style->styleId())) emit styleRemoved(style); } void KoStyleManager::remove(KoTableCellStyle *style) { + if (!style || !d->changeCommand) { + return; + } + if (d->tableCellStyles.remove(style->styleId())) emit styleRemoved(style); } void KoStyleManager::remove(KoSectionStyle *style) { + if (!style || !d->changeCommand) { + return; + } + if (d->sectionStyles.remove(style->styleId())) emit styleRemoved(style); } @@ -451,101 +513,133 @@ d->documentUpdaterProxies.removeAll(cf); } -void KoStyleManager::alteredStyle(const KoParagraphStyle *style) +void KoStyleManager::alteredStyle(const KoParagraphStyle *newStyle) { - Q_ASSERT(style); - int id = style->styleId(); + Q_ASSERT(newStyle); + if (!newStyle || !d->changeCommand) { + return; + } + + int id = newStyle->styleId(); if (id <= 0) { kWarning(32500) << "alteredStyle received from a non registered style!"; return; } - if (! d->updateQueue.contains(id)) - d->updateQueue.append(id); - requestFireUpdate(); + d->changeCommand->changedStyle(id); + + KoParagraphStyle *style = paragraphStyle(id); + if (style != newStyle) { + d->changeCommand->origStyle(style->clone()); + d->changeCommand->changedStyle(newStyle->clone()); + } // check if anyone that uses 'style' as a parent needs to be flagged as changed as well. - foreach(KoParagraphStyle *ps, d->paragStyles) { + foreach(const KoParagraphStyle *ps, d->paragStyles) { if (ps->parentStyle() == style) - alteredStyle(ps); + alteredStyle(ps); //since it's our own copy it will only be flagged } } -void KoStyleManager::alteredStyle(const KoCharacterStyle *style) +void KoStyleManager::alteredStyle(const KoCharacterStyle *newStyle) { - Q_ASSERT(style); - int id = style->styleId(); + Q_ASSERT(newStyle); + if (!newStyle || !d->changeCommand) { + return; + } + + int id = newStyle->styleId(); if (id <= 0) { kWarning(32500) << "alteredStyle received from a non registered style!"; return; } - if (! d->updateQueue.contains(id)) - d->updateQueue.append(id); - requestFireUpdate(); + d->changeCommand->changedStyle(id); + + KoCharacterStyle *style = characterStyle(id); + if (style != newStyle) { + d->changeCommand->origStyle(style->clone()); + d->changeCommand->changedStyle(newStyle->clone()); + } + + // check if anyone that uses 'style' as a parent needs to be flagged as changed as well. + foreach(const KoCharacterStyle *cs, d->charStyles) { + if (cs->parentStyle() == style) + alteredStyle(cs); //since it's our own copy it will only be flagged + } } void KoStyleManager::alteredStyle(const KoListStyle *style) { Q_ASSERT(style); + if (!style || !d->changeCommand) { + return; + } + int id = style->styleId(); if (id <= 0) { kWarning(32500) << "alteredStyle received from a non registered style!"; return; } - if (!d->updateQueue.contains(id)) - d->updateQueue.append(id); - requestFireUpdate(); + d->changeCommand->changedStyle(id); } void KoStyleManager::alteredStyle(const KoTableStyle *style) { Q_ASSERT(style); + if (!style || !d->changeCommand) { + return; + } + int id = style->styleId(); if (id <= 0) { kWarning(32500) << "alteredStyle received from a non registered style!"; return; } - if (!d->updateQueue.contains(id)) - d->updateQueue.append(id); - requestFireUpdate(); + d->changeCommand->changedStyle(id); } void KoStyleManager::alteredStyle(const KoTableColumnStyle *style) { Q_ASSERT(style); + if (!style || !d->changeCommand) { + return; + } + int id = style->styleId(); if (id <= 0) { kWarning(32500) << "alteredStyle received from a non registered style!"; return; } - if (!d->updateQueue.contains(id)) - d->updateQueue.append(id); - requestFireUpdate(); + d->changeCommand->changedStyle(id); } void KoStyleManager::alteredStyle(const KoTableRowStyle *style) { Q_ASSERT(style); + if (!style || !d->changeCommand) { + return; + } + int id = style->styleId(); if (id <= 0) { kWarning(32500) << "alteredStyle received from a non registered style!"; return; } - if (!d->updateQueue.contains(id)) - d->updateQueue.append(id); - requestFireUpdate(); + d->changeCommand->changedStyle(id); } void KoStyleManager::alteredStyle(const KoTableCellStyle *style) { Q_ASSERT(style); + if (!style || !d->changeCommand) { + return; + } + int id = style->styleId(); if (id <= 0) { kWarning(32500) << "alteredStyle received from a non registered style!"; return; } - if (!d->updateQueue.contains(id)) - d->updateQueue.append(id); - requestFireUpdate(); + d->changeCommand->changedStyle(id); } void KoStyleManager::alteredStyle(const KoSectionStyle *style) @@ -556,30 +650,24 @@ kWarning(32500) << "alteredStyle received from a non registered style!"; return; } - if (!d->updateQueue.contains(id)) - d->updateQueue.append(id); - requestFireUpdate(); + d->changeCommand->changedStyle(id); } -void KoStyleManager::updateAlteredStyles() +void KoStyleManager::beginEdit() { - foreach(ChangeFollower *cf, d->documentUpdaterProxies) { - cf->processUpdates(d->updateQueue); - } - d->updateQueue.clear(); - d->updateTriggered = false; + d->changeCommand = new ChangeStylesMacroCommand(d->documentUpdaterProxies, this); } -void KoStyleManager::requestFireUpdate() +void KoStyleManager::endEdit() { - if (d->updateTriggered) - return; - QTimer::singleShot(0, this, SLOT(updateAlteredStyles())); - d->updateTriggered = true; + Q_ASSERT (d->changeCommand); + d->undoStack->push(d->changeCommand); + d->changeCommand = 0; } void KoStyleManager::add(QTextDocument *document) { + d->undoStack = KoTextDocument(document).undoStack(); foreach(ChangeFollower *cf, d->documentUpdaterProxies) { if (cf->document() == document) { return; // already present. @@ -774,6 +862,27 @@ return d->defaultListStyle; } +KoListStyle *KoStyleManager::defaultOutlineStyle() const +{ + if (!d->defaultOutlineStyle) { + d->defaultOutlineStyle = d->defaultListStyle->clone(); + + QList levels = d->defaultOutlineStyle->listLevels(); + foreach (int level, levels) { + KoListLevelProperties llp = d->defaultOutlineStyle->levelProperties(level); + llp.setOutlineList(true); + llp.setDisplayLevel(level); + llp.setTabStopPosition(0); + llp.setMargin(0); + llp.setTextIndent(0); + d->defaultOutlineStyle->setLevelProperties(llp); + } + d->defaultOutlineStyle->setStyleId(d->s_stylesNumber++); + } + + return d->defaultOutlineStyle; +} + void KoStyleManager::setOutlineStyle(KoListStyle* listStyle) { if (d->outlineStyle && d->outlineStyle->parent() == this) diff -Nru calligra-2.3.86/libs/kotext/styles/KoStyleManager.h calligra-2.3.87/libs/kotext/styles/KoStyleManager.h --- calligra-2.3.86/libs/kotext/styles/KoStyleManager.h 2012-01-07 03:25:03.000000000 +0000 +++ calligra-2.3.87/libs/kotext/styles/KoStyleManager.h 2012-01-28 07:04:49.000000000 +0000 @@ -44,6 +44,8 @@ class ChangeFollower; class KoShapeSavingContext; class KoTextShapeData; +class KUndo2Stack; +class ChangeStylesMacroCommand; /** * Manages all character, paragraph, table and table cell styles for any number @@ -64,6 +66,38 @@ */ virtual ~KoStyleManager(); + /** + * This explicitly set the undo stack used for storing undo commands + * + * Please note that adding documents \ref add(QTextDocument *document) + * extracts the undo stack from those documents, + * which can override what you set here. This method is mostly for cases + * where you use the style manager, but don't have qtextdocuments. + */ + void setUndoStack(KUndo2Stack *undoStack); + + /** + * Mark the beginning of a sequence of style changes, additions, and deletions + * + * Important: This method must be called even if only working on a single style. + * + * See also \ref endEdit + */ + void beginEdit(); + + /** + * Mark the end of a sequence of style changes, additions, and deletions. + * + * Manipulation to the styles happen immidiately, but calling this method + * will put a command on the stack for undo, plus it changes all the "listening" + * qtextdocuments to reflect the style changes. + * + * Important: This method must be called even if only working on a single style. + * + * See also \ref beginEdit + */ + void endEdit(); + // load is not needed as it is done in KoTextSharedLoadingData /** @@ -329,6 +363,12 @@ KoListStyle *defaultListStyle() const; /** + * Returns the default outline style to be used if outline-style is not specified in the document + * that do not specify a list-style + */ + KoListStyle *defaultOutlineStyle() const; + + /** * Sets the outline style to be used for headers that are not specified as lists */ void setOutlineStyle(KoListStyle *listStyle); @@ -393,6 +433,8 @@ void styleRemoved(KoTableRowStyle*); void styleRemoved(KoTableCellStyle*); void styleRemoved(KoSectionStyle*); + void styleAltered(KoParagraphStyle*); + void styleAltered(KoCharacterStyle*); public slots: /** @@ -450,12 +492,9 @@ */ void alteredStyle(const KoSectionStyle *style); -private slots: - void updateAlteredStyles(); // for the QTimer::singleshot - private: friend class ChangeFollower; - void requestFireUpdate(); + friend class ChangeStylesMacroCommand; void remove(ChangeFollower *cf); friend class KoTextSharedLoadingData; diff -Nru calligra-2.3.86/libs/kotext/styles/KoTableCellStyle.cpp calligra-2.3.87/libs/kotext/styles/KoTableCellStyle.cpp --- calligra-2.3.86/libs/kotext/styles/KoTableCellStyle.cpp 2012-01-07 03:25:03.000000000 +0000 +++ calligra-2.3.87/libs/kotext/styles/KoTableCellStyle.cpp 2012-01-28 07:04:49.000000000 +0000 @@ -33,6 +33,7 @@ #include "KoParagraphStyle.h" #include +#include #include #include @@ -111,6 +112,28 @@ return new KoTableCellStyle(tableCellFormat, parent); } +QTextCharFormat KoTableCellStyle::cleanCharFormat(const QTextCharFormat &charFormat) +{ + if (charFormat.isTableCellFormat()) { + QTextTableCellFormat format; + const QMap props = charFormat.properties(); + QMap::const_iterator it = props.begin(); + while (it != props.end()) { + // lets save all Qt's table cell properties + if (it.key()>=QTextFormat::TableCellRowSpan && it.key()=StyleId && it.key()paragraphStyle->KoCharacterStyle::applyStyle(format); } cell.setFormat(format); - //FIXME TODO we should apply the paragrapStyle under all contained blocks } void KoTableCellStyle::setBackground(const QBrush &brush) diff -Nru calligra-2.3.86/libs/kotext/styles/KoTableCellStyle.h calligra-2.3.87/libs/kotext/styles/KoTableCellStyle.h --- calligra-2.3.86/libs/kotext/styles/KoTableCellStyle.h 2012-01-07 03:25:03.000000000 +0000 +++ calligra-2.3.87/libs/kotext/styles/KoTableCellStyle.h 2012-01-28 07:04:49.000000000 +0000 @@ -101,6 +101,7 @@ Shadow, ///< KoShadowStyle, the shadow of this cell CellIsProtected ///< boolean, if true, the cell is protected against edits /// It's not really a property of KoTableCellStyle but defined here for convenience + ,LastCellStyleProperty }; /// Constructor @@ -113,6 +114,11 @@ /// Creates a KoTableCellStyle that represents the formatting of \a block. static KoTableCellStyle *fromTableCell(const QTextTableCell &table, QObject *parent = 0); + /// Creates a clean QTextCharFormat, but keeps all the table cell properties. + /// This is needed since block.charformat doubles as the QTextTableCellFormat + /// This method works even if \a charFormat is not a QTextTableCellFormat + static QTextCharFormat cleanCharFormat(const QTextCharFormat &charFormat); + /// creates a clone of this style with the specified parent KoTableCellStyle *clone(QObject *parent = 0); diff -Nru calligra-2.3.86/libs/kotext/styles/tests/TestListStyle.cpp calligra-2.3.87/libs/kotext/styles/tests/TestListStyle.cpp --- calligra-2.3.86/libs/kotext/styles/tests/TestListStyle.cpp 2012-01-07 03:25:03.000000000 +0000 +++ calligra-2.3.87/libs/kotext/styles/tests/TestListStyle.cpp 2012-01-28 07:04:49.000000000 +0000 @@ -48,7 +48,7 @@ QTextDocument doc; KoTextDocument kodoc(&doc); - kodoc.setStyleManager(new KoStyleManager); + kodoc.setStyleManager(new KoStyleManager(0)); QTextCursor cursor(&doc); cursor.insertText("foo\nbar\nBaz\n"); QTextBlock block = doc.begin(); diff -Nru calligra-2.3.86/libs/kotext/styles/tests/TestOpenDocumentStyle.cpp calligra-2.3.87/libs/kotext/styles/tests/TestOpenDocumentStyle.cpp --- calligra-2.3.86/libs/kotext/styles/tests/TestOpenDocumentStyle.cpp 2012-01-07 03:25:03.000000000 +0000 +++ calligra-2.3.87/libs/kotext/styles/tests/TestOpenDocumentStyle.cpp 2012-01-28 07:04:49.000000000 +0000 @@ -572,7 +572,7 @@ } KoXmlElement root = generatedXmlReader->documentElement(); - KoXmlElement properties = root.firstChild().toElement(); + KoXmlElement properties = root.firstChildElement(); QString outputPropertyValue = properties.attribute(attribute->name()); if (properties.attributeNames().count() > 1) { @@ -589,6 +589,7 @@ if (!result) { kDebug(32500) << "Comparison failed : " << outputPropertyValue << "obtained for " << value; kDebug(32500) << generatedXmlOutput; + kDebug(32500) << properties.attributeNames(); } return result; } diff -Nru calligra-2.3.86/libs/kotext/styles/tests/TestStyles.cpp calligra-2.3.87/libs/kotext/styles/tests/TestStyles.cpp --- calligra-2.3.86/libs/kotext/styles/tests/TestStyles.cpp 2012-01-07 03:25:03.000000000 +0000 +++ calligra-2.3.87/libs/kotext/styles/tests/TestStyles.cpp 2012-01-28 07:04:49.000000000 +0000 @@ -282,8 +282,6 @@ QCOMPARE(cf.intProperty(KoCharacterStyle::OverlineType), (int) KoCharacterStyle::DoubleLine); QCOMPARE(cf.intProperty(KoCharacterStyle::OverlineWeight), (int) testOverlineWeight); QCOMPARE(cf.doubleProperty(KoCharacterStyle::OverlineWidth), testOverlineWidth); - - head1.unapplyStyle(block); bf = cursor.blockFormat(); diff -Nru calligra-2.3.86/libs/kotext/tests/TestKoTextEditor.cpp calligra-2.3.87/libs/kotext/tests/TestKoTextEditor.cpp --- calligra-2.3.86/libs/kotext/tests/TestKoTextEditor.cpp 2012-01-07 03:25:03.000000000 +0000 +++ calligra-2.3.87/libs/kotext/tests/TestKoTextEditor.cpp 2012-01-28 07:04:49.000000000 +0000 @@ -137,7 +137,7 @@ KoTextEditor *editor = new KoTextEditor(m_document); textDoc.setInlineTextObjectManager(&m_inlineObjectManager); - textDoc.setStyleManager(new KoStyleManager()); + textDoc.setStyleManager(new KoStyleManager(0)); textDoc.setTextEditor(editor); } diff -Nru calligra-2.3.86/libs/kotext/texteditingplugin.desktop calligra-2.3.87/libs/kotext/texteditingplugin.desktop --- calligra-2.3.86/libs/kotext/texteditingplugin.desktop 2012-01-07 03:25:03.000000000 +0000 +++ calligra-2.3.87/libs/kotext/texteditingplugin.desktop 2012-01-28 07:04:49.000000000 +0000 @@ -1,6 +1,7 @@ [Desktop Entry] Name=Text Editing plugin for the Calligra text tool Name[ca]=Connector d'edició de text per a l'eina de text del Calligra +Name[ca@valencia]=Connector d'edició de text per a l'eina de text del Calligra Name[cs]=Modul pro editaci textu nástroje Calligra pro úpravu textu Name[da]=Plugin til tekstredigering til Calligras tekstværktøj Name[de]=Modul zur Textbearbeitung für das Calligra-Textwerkzeug diff -Nru calligra-2.3.86/libs/main/calligradocker.desktop calligra-2.3.87/libs/main/calligradocker.desktop --- calligra-2.3.86/libs/main/calligradocker.desktop 2012-01-07 03:25:03.000000000 +0000 +++ calligra-2.3.87/libs/main/calligradocker.desktop 2012-01-28 07:04:49.000000000 +0000 @@ -1,6 +1,7 @@ [Desktop Entry] Name=Calligra Docker Plugin Name[ca]=Connector amarrador del Calligra +Name[ca@valencia]=Connector amarrador del Calligra Name[cs]=Modul doků Calligra Name[da]=Dokker-plugin til Calligra Name[de]=Calligra Docker-Modul diff -Nru calligra-2.3.86/libs/main/calligraversion.h calligra-2.3.87/libs/main/calligraversion.h --- calligra-2.3.86/libs/main/calligraversion.h 2012-01-07 03:32:18.000000000 +0000 +++ calligra-2.3.87/libs/main/calligraversion.h 2012-01-28 07:09:18.000000000 +0000 @@ -33,7 +33,7 @@ * it contains the version at compile time. See Calligra::versionString() if you need * the Calligra version used at runtime. */ -#define CALLIGRA_VERSION_STRING "2.4 Beta 6" +#define CALLIGRA_VERSION_STRING "2.4 Beta 7" /** * @def CALLIGRA_VERSION_MAJOR @@ -54,7 +54,7 @@ * @ingroup CalligraMacros * @brief Release version of Calligra, at compile time */ -#define CALLIGRA_VERSION_RELEASE 86 +#define CALLIGRA_VERSION_RELEASE 87 /** * @ingroup CalligraMacros @@ -77,7 +77,7 @@ * @ingroup CalligraMacros * @brief If defined, indicates at compile time that Calligra is in beta stage */ -#define CALLIGRA_BETA 6 +#define CALLIGRA_BETA 7 /** * @def CALLIGRA_RC diff -Nru calligra-2.3.86/libs/main/calligraversion.h~ calligra-2.3.87/libs/main/calligraversion.h~ --- calligra-2.3.86/libs/main/calligraversion.h~ 2012-01-07 03:32:18.000000000 +0000 +++ calligra-2.3.87/libs/main/calligraversion.h~ 2012-01-28 07:09:18.000000000 +0000 @@ -33,7 +33,7 @@ * it contains the version at compile time. See Calligra::versionString() if you need * the Calligra version used at runtime. */ -#define CALLIGRA_VERSION_STRING "2.4 Beta 5" +#define CALLIGRA_VERSION_STRING "2.4 Beta 6" /** * @def CALLIGRA_VERSION_MAJOR @@ -54,7 +54,7 @@ * @ingroup CalligraMacros * @brief Release version of Calligra, at compile time */ -#define CALLIGRA_VERSION_RELEASE 85 +#define CALLIGRA_VERSION_RELEASE 87 /** * @ingroup CalligraMacros @@ -77,7 +77,7 @@ * @ingroup CalligraMacros * @brief If defined, indicates at compile time that Calligra is in beta stage */ -#define CALLIGRA_BETA 5 +#define CALLIGRA_BETA 7 /** * @def CALLIGRA_RC diff -Nru calligra-2.3.86/libs/main/CMakeLists.txt calligra-2.3.87/libs/main/CMakeLists.txt --- calligra-2.3.86/libs/main/CMakeLists.txt 2012-01-07 03:25:03.000000000 +0000 +++ calligra-2.3.87/libs/main/CMakeLists.txt 2012-01-28 07:04:49.000000000 +0000 @@ -216,6 +216,7 @@ KoGlobal.h KoGridData.h KoMainWindow.h + KoModeBoxFactory.h KoPrintJob.h KoProgressUpdater.h KoProgressProxy.h diff -Nru calligra-2.3.86/libs/main/kodocinfopropspage.desktop calligra-2.3.87/libs/main/kodocinfopropspage.desktop --- calligra-2.3.86/libs/main/kodocinfopropspage.desktop 2012-01-07 03:25:03.000000000 +0000 +++ calligra-2.3.87/libs/main/kodocinfopropspage.desktop 2012-01-28 07:04:49.000000000 +0000 @@ -3,6 +3,7 @@ Name=Calligra Document Info Properties Page Name[bg]=Страница с данни за документ на Calligra Name[ca]=Pàgina d'informació de propietats de documents Calligra +Name[ca@valencia]=Pàgina d'informació de propietats de documents Calligra Name[cs]=Stránka s informacemi o dokumentu Calligra Name[da]=Egenskabsside for Calligra-dokumentinformation Name[de]=Calligra Dokumentinfo-Eigenschaftenseite diff -Nru calligra-2.3.86/libs/main/KoGridData.cpp calligra-2.3.87/libs/main/KoGridData.cpp --- calligra-2.3.86/libs/main/KoGridData.cpp 2012-01-07 03:25:03.000000000 +0000 +++ calligra-2.3.87/libs/main/KoGridData.cpp 2012-01-28 07:04:49.000000000 +0000 @@ -39,6 +39,7 @@ Private() : snapToGrid(false), showGrid(false), + paintGridInBackground(false), gridX(MM_TO_POINT(DEFAULT_GRID_SIZE_MM)), gridY(MM_TO_POINT(DEFAULT_GRID_SIZE_MM)), gridColor(Qt::lightGray), @@ -53,6 +54,7 @@ bool snapToGrid; bool showGrid; + bool paintGridInBackground; qreal gridX, gridY; QColor gridColor; KToggleAction *toggleGridAction; @@ -118,6 +120,16 @@ d->showGrid = showGrid; } +bool KoGridData::paintGridInBackground() const +{ + return d->paintGridInBackground; +} + +void KoGridData::setPaintGridInBackground(bool inBackground) +{ + d->paintGridInBackground = inBackground; +} + void KoGridData::paintGrid(QPainter &painter, const KoViewConverter &converter, const QRectF &area) const { if (! showGrid()) diff -Nru calligra-2.3.86/libs/main/KoGridData.h calligra-2.3.87/libs/main/KoGridData.h --- calligra-2.3.86/libs/main/KoGridData.h 2012-01-07 03:25:03.000000000 +0000 +++ calligra-2.3.87/libs/main/KoGridData.h 2012-01-28 07:04:49.000000000 +0000 @@ -97,6 +97,12 @@ */ void setShowGrid(bool showGrid); + /// return if grid is marked to be painted in the background + bool paintGridInBackground() const; + + /// set if grid is marked to be painted in the background + void setPaintGridInBackground(bool inBackground); + /// Loads grid data from the given setting xml document bool loadOdfSettings(const KoXmlDocument & settingsDoc); diff -Nru calligra-2.3.86/libs/main/KoModeBox.cpp calligra-2.3.87/libs/main/KoModeBox.cpp --- calligra-2.3.86/libs/main/KoModeBox.cpp 2012-01-07 03:25:03.000000000 +0000 +++ calligra-2.3.87/libs/main/KoModeBox.cpp 2012-01-28 07:04:49.000000000 +0000 @@ -46,11 +46,13 @@ public: Private(KoCanvasController *c) : canvas(c->canvas()) + , canvasReset(false) , activeId(-1) { } KoCanvasBase *canvas; + bool canvasReset; QList buttons; // buttons maintained by toolmanager QList addedButtons; //buttons in the order added to QToolBox QMap addedWidgets; @@ -58,14 +60,16 @@ int activeId; }; +QString KoModeBox::applicationName; + static bool compareButton(const KoToolButton &b1, const KoToolButton &b2) { if (b1.section == b2.section) { return b1.priority < b2.priority; } else { - if (b1.section.contains(qApp->applicationName())) { + if (b1.section.contains(KoModeBox::applicationName)) { return true; - } else if (b2.section.contains(qApp->applicationName())) { + } else if (b2.section.contains(KoModeBox::applicationName)) { return false; } @@ -79,10 +83,12 @@ } -KoModeBox::KoModeBox(KoCanvasControllerWidget *canvas) +KoModeBox::KoModeBox(KoCanvasControllerWidget *canvas, const QString &appName) : QToolBox() , d(new Private(canvas)) { + applicationName = appName; + foreach(const KoToolButton & button, KoToolManager::instance()->createToolList(canvas->canvas())) { addButton(button); @@ -176,11 +182,10 @@ int newIndex = -1; foreach (const KoToolButton button, d->buttons) { QString code = button.visibilityCode; - if (button.buttonGroupId == d->activeId) { newIndex = d->addedButtons.length(); } - if (button.section.contains(qApp->applicationName())) { + if (button.section.contains(applicationName)) { addItem(button); continue; } else if (!button.section.contains("dynamic") @@ -195,10 +200,13 @@ if (code.endsWith( QLatin1String( "/always"))) { addItem(button); + continue; } else if (code.isEmpty() && codes.count() != 0) { addItem(button); + continue; } else if (codes.contains(code)) { addItem(button); + continue; } } if (newIndex != -1) { @@ -274,6 +282,8 @@ this, SLOT(setOptionWidgets(const QList &))); } + d->canvasReset = d->canvas != 0; + d->canvas = canvas; ccwidget = dynamic_cast(d->canvas->canvasController()); @@ -284,7 +294,9 @@ void KoModeBox::unsetCanvas() { - d->canvas = 0; + if (!d->canvasReset) { + d->canvas = 0; + } } void KoModeBox::toolAdded(const KoToolButton &button, KoCanvasController *canvas) diff -Nru calligra-2.3.86/libs/main/KoModeBoxFactory.cpp calligra-2.3.87/libs/main/KoModeBoxFactory.cpp --- calligra-2.3.86/libs/main/KoModeBoxFactory.cpp 2012-01-07 03:25:03.000000000 +0000 +++ calligra-2.3.87/libs/main/KoModeBoxFactory.cpp 2012-01-28 07:04:49.000000000 +0000 @@ -26,13 +26,15 @@ class KoModeBoxFactory::Private { public: KoCanvasControllerWidget *canvasController; + QString applicationName; }; -KoModeBoxFactory::KoModeBoxFactory(KoCanvasControllerWidget *canvasController, const QString& /*title*/) +KoModeBoxFactory::KoModeBoxFactory(KoCanvasControllerWidget *canvasController, const QString &applicationName, const QString& /*title*/) : d( new Private()) { d->canvasController = canvasController; + d->applicationName = applicationName; } KoModeBoxFactory::~KoModeBoxFactory() { @@ -51,7 +53,7 @@ QDockWidget* KoModeBoxFactory::createDockWidget() { - KoModeBox *box = new KoModeBox(d->canvasController); + KoModeBox *box = new KoModeBox(d->canvasController, d->applicationName); QDockWidget *docker = new KoModeBoxDocker(box); return docker; diff -Nru calligra-2.3.86/libs/main/KoModeBoxFactory.h calligra-2.3.87/libs/main/KoModeBoxFactory.h --- calligra-2.3.86/libs/main/KoModeBoxFactory.h 2012-01-07 03:25:03.000000000 +0000 +++ calligra-2.3.87/libs/main/KoModeBoxFactory.h 2012-01-28 07:04:49.000000000 +0000 @@ -37,7 +37,7 @@ class KOMAIN_EXPORT KoModeBoxFactory : public KoDockFactoryBase { public: - explicit KoModeBoxFactory(KoCanvasControllerWidget *canvas, const QString& appName); + explicit KoModeBoxFactory(KoCanvasControllerWidget *canvas, const QString &applicationName, const QString& appName); ~KoModeBoxFactory(); virtual QString id() const; diff -Nru calligra-2.3.86/libs/main/KoModeBox_p.h calligra-2.3.87/libs/main/KoModeBox_p.h --- calligra-2.3.86/libs/main/KoModeBox_p.h 2012-01-07 03:25:03.000000000 +0000 +++ calligra-2.3.87/libs/main/KoModeBox_p.h 2012-01-28 07:04:49.000000000 +0000 @@ -55,7 +55,7 @@ Q_OBJECT public: /// constructor - explicit KoModeBox(KoCanvasControllerWidget *canvas); + explicit KoModeBox(KoCanvasControllerWidget *canvas, const QString &applicationName); ~KoModeBox(); /** @@ -107,6 +107,9 @@ /// slot for when a new item have been selected in the QToolBox void toolSelected(int index); +public: + static QString applicationName; + private: void addItem(const KoToolButton button); diff -Nru calligra-2.3.86/libs/main/KoRulerController.cpp calligra-2.3.87/libs/main/KoRulerController.cpp --- calligra-2.3.86/libs/main/KoRulerController.cpp 2012-01-07 03:25:03.000000000 +0000 +++ calligra-2.3.87/libs/main/KoRulerController.cpp 2012-01-28 07:04:49.000000000 +0000 @@ -75,9 +75,9 @@ QTextBlockFormat format = block.blockFormat(); ruler->setShowIndents(true); ruler->setRightToLeft(block.layout()->textOption().textDirection() == Qt::RightToLeft); - ruler->setParagraphIndent(format.property(QTextFormat::BlockLeftMargin).value().value(0)); - ruler->setFirstLineIndent(format.property(QTextFormat::TextIndent).value().value(0)); - ruler->setEndIndent(format.property(QTextFormat::BlockRightMargin).value().value(0)); + ruler->setParagraphIndent(format.leftMargin()); + ruler->setFirstLineIndent(format.textIndent()); + ruler->setEndIndent(format.rightMargin()); ruler->setShowTabs(true); ruler->setRelativeTabs(relativeTabs()); diff -Nru calligra-2.3.86/libs/main/tests/rdf_test.h calligra-2.3.87/libs/main/tests/rdf_test.h --- calligra-2.3.86/libs/main/tests/rdf_test.h 2012-01-07 03:25:03.000000000 +0000 +++ calligra-2.3.87/libs/main/tests/rdf_test.h 2012-01-28 07:04:49.000000000 +0000 @@ -35,8 +35,8 @@ Q_OBJECT private slots: - void testFindMarkers(); void testCreateMarkers(); + void testFindMarkers(); void testFindByName(); void testEditAndFindMarkers(); // XXX: implement void testRemoveMarkers(); diff -Nru calligra-2.3.86/libs/odf/KoOdfLoadingContext.cpp calligra-2.3.87/libs/odf/KoOdfLoadingContext.cpp --- calligra-2.3.86/libs/odf/KoOdfLoadingContext.cpp 2012-01-07 03:25:03.000000000 +0000 +++ calligra-2.3.87/libs/odf/KoOdfLoadingContext.cpp 2012-01-28 07:04:49.000000000 +0000 @@ -106,6 +106,9 @@ KoOdfReadStore oasisStore(d->store); QString dummy; (void)oasisStore.loadAndParse(fileName, d->manifestDoc, dummy); + if (!parseManifest(d->manifestDoc)) { + kWarning(30010) << "could not parse manifest document"; + } } void KoOdfLoadingContext::fillStyleStack(const KoXmlElement& object, const QString &nsURI, const QString &attrName, const QString &family) diff -Nru calligra-2.3.86/libs/odf/KoOdfNotesConfiguration.cpp calligra-2.3.87/libs/odf/KoOdfNotesConfiguration.cpp --- calligra-2.3.86/libs/odf/KoOdfNotesConfiguration.cpp 2012-01-07 03:25:03.000000000 +0000 +++ calligra-2.3.87/libs/odf/KoOdfNotesConfiguration.cpp 2012-01-28 07:04:49.000000000 +0000 @@ -132,8 +132,23 @@ d->footnotesPosition = Document; } - d->footnotesContinuationForward = element.attributeNS(KoXmlNS::text, "note-continuation-notice-forward", "..."); - d->footnotesContinuationBackward = element.attributeNS(KoXmlNS::text, "note-continuation-notice-backward", "..."); + KoXmlElement child; + forEachElement(child, element) { + if (child.namespaceURI() == KoXmlNS::text) { + if (child.localName() == "note-continuation-notice-forward") { + KoXmlNode node = element.firstChild(); + if (!node.isNull() && node.isText()) { + d->footnotesContinuationForward = node.toText().data(); + } + } + else if (child.localName() == "note-continuation-notice-backward") { + KoXmlNode node = element.firstChild(); + if (!node.isNull() && node.isText()) { + d->footnotesContinuationBackward = node.toText().data(); + } + } + } + } } void KoOdfNotesConfiguration::saveOdf(KoXmlWriter *writer) const @@ -178,8 +193,16 @@ writer->addAttribute("text:footnotes-position", "document"); break; } - if (!d->footnotesContinuationForward.isNull()) {writer->addAttribute("text:note-continuation-notice-forward", d->footnotesContinuationForward); } - if (!d->footnotesContinuationBackward.isNull()) {writer->addAttribute("text:note-continuation-notice-backward", d->footnotesContinuationBackward); } + if (!d->footnotesContinuationForward.isNull()) { + writer->startElement("text:note-continuation-notice-forward", false); + writer->addTextNode(d->footnotesContinuationForward); + writer->endElement(); + } + if (!d->footnotesContinuationBackward.isNull()) { + writer->startElement("text:note-continuation-notice-backward", false); + writer->addTextNode(d->footnotesContinuationBackward); + writer->endElement(); + } writer->endElement(); //text:notes-configuration } diff -Nru calligra-2.3.86/libs/odf/KoOdfNumberStyles.cpp calligra-2.3.87/libs/odf/KoOdfNumberStyles.cpp --- calligra-2.3.86/libs/odf/KoOdfNumberStyles.cpp 2012-01-07 03:25:03.000000000 +0000 +++ calligra-2.3.87/libs/odf/KoOdfNumberStyles.cpp 2012-01-28 07:04:49.000000000 +0000 @@ -106,7 +106,7 @@ case '#': case '0': case '?': { - bool grouping = false; +// bool grouping = false; bool gotDot = false; bool gotE = false; bool gotFraction = false; @@ -122,7 +122,7 @@ if (ch == '.') { gotDot = true; } else if (ch == ',') { - grouping = true; + // grouping = true; } else if (ch == 'E' || ch == 'e') { //SET_TYPE_OR_RETURN(KoGenStyle::NumericScientificStyle); diff -Nru calligra-2.3.86/libs/odf/KoXmlReader.cpp calligra-2.3.87/libs/odf/KoXmlReader.cpp --- calligra-2.3.86/libs/odf/KoXmlReader.cpp 2012-01-07 03:25:03.000000000 +0000 +++ calligra-2.3.87/libs/odf/KoXmlReader.cpp 2012-01-28 07:04:49.000000000 +0000 @@ -1266,7 +1266,7 @@ static KoXmlNodeData null; // compatibility - QDomNode asQDomNode(QDomDocument ownerDoc) const; + void asQDomNode(QDomDocument& ownerDoc) const; // to read the xml with or without spaces bool stripSpaces; @@ -1728,12 +1728,12 @@ #ifdef KOXML_COMPACT -static QDomNode itemAsQDomNode(QDomDocument ownerDoc, KoXmlPackedDocument* packedDoc, - unsigned nodeDepth, unsigned nodeIndex) +static void itemAsQDomNode(QDomDocument& ownerDoc, KoXmlPackedDocument* packedDoc, + unsigned nodeDepth, unsigned nodeIndex, QDomNode parentNode = QDomNode()) { // sanity check if (!packedDoc) - return QDomNode(); + return; const KoXmlPackedItem& self = packedDoc->itemAt(nodeDepth, nodeIndex); @@ -1747,7 +1747,7 @@ // nothing to do here if (self.type == KoXmlNode::NullNode) - return QDomNode(); + return; // create the element properly if (self.type == KoXmlNode::ElementNode) { @@ -1761,6 +1761,11 @@ else element = ownerDoc.createElement(qname.name); + if ( parentNode.isNull() ) { + ownerDoc.appendChild( element ); + } else { + parentNode.appendChild( element ); + } // check all subnodes for attributes for (unsigned i = self.childStart; i < childStop; i++) { const KoXmlPackedItem& item = packedDoc->itemAt(nodeDepth + 1, i); @@ -1790,12 +1795,10 @@ element.setAttribute(qname.name, value); } else { // add it recursively - QDomNode childNode = itemAsQDomNode(ownerDoc, packedDoc, nodeDepth + 1, i); - element.appendChild(childNode); + itemAsQDomNode(ownerDoc, packedDoc, nodeDepth + 1, i, element); } } - - return element; + return; } // create the text node @@ -1804,32 +1807,35 @@ // FIXME: choose CDATA when the value contains special characters QDomText textNode = ownerDoc.createTextNode(text); - return textNode; + if ( parentNode.isNull() ) { + ownerDoc.appendChild( textNode ); + } else { + parentNode.appendChild( textNode ); + } + return; } - // nothing matches? strange... - return QDomNode(); } -QDomNode KoXmlNodeData::asQDomNode(QDomDocument ownerDoc) const +void KoXmlNodeData::asQDomNode(QDomDocument& ownerDoc) const { - return itemAsQDomNode(ownerDoc, packedDoc, nodeDepth, nodeIndex); + itemAsQDomNode(ownerDoc, packedDoc, nodeDepth, nodeIndex); } #else -static QDomNode itemAsQDomNode(QDomDocument ownerDoc, KoXmlPackedDocument* packedDoc, - unsigned nodeIndex) +static void itemAsQDomNode(QDomDocument& ownerDoc, KoXmlPackedDocument* packedDoc, + unsigned nodeIndex, QDomNode parentNode = QDomNode()) { // sanity check if (!packedDoc) - return QDomNode(); + return; KoXmlPackedItem& item = packedDoc->items[nodeIndex]; // nothing to do here if (item.type == KoXmlNode::NullNode) - return QDomNode(); + return; // create the element properly if (item.type == KoXmlNode::ElementNode) { @@ -1843,6 +1849,11 @@ else element = ownerDoc.createElement(name); + if ( parentNode.isNull() ) { + ownerDoc.appendChild( element ); + } else { + parentNode.appendChild( element ); + } // check all subnodes for attributes int nodeDepth = item.depth; for (int i = nodeIndex + 1; i < packedDoc->items.count(); i++) { @@ -1880,12 +1891,10 @@ // direct child of this node if (!item.attr && (item.depth == (unsigned)nodeDepth + 1)) { // add it recursively - QDomNode childNode = itemAsQDomNode(ownerDoc, packedDoc, i); - element.appendChild(childNode); + QDomNode childNode = itemAsQDomNode(ownerDoc, packedDoc, i, element); } } - - return element; + return; } // create the text node @@ -1893,14 +1902,18 @@ QString text = item.value; // FIXME: choose CDATA when the value contains special characters QDomText textNode = ownerDoc.createTextNode(text); - return textNode; + if ( parentNode.isNull() ) { + ownerDoc.appendChild( textNode ); + } else { + parentNode.appendChild( textNode ); + } + return; } // nothing matches? strange... - return QDomNode(); } -QDomNode KoXmlNodeData::asQDomNode(QDomDocument ownerDoc) const +void KoXmlNodeData::asQDomNode(QDomDocument& ownerDoc) const { return itemAsQDomNode(ownerDoc, packedDoc, nodeIndex); } @@ -2121,6 +2134,15 @@ return d->first ? KoXmlNode(d->first) : KoXmlNode(); } +KoXmlElement KoXmlNode::firstChildElement() const +{ + KoXmlElement element; + forEachElement (element, (*this)) { + return element; + } + return KoXmlElement(); +} + KoXmlNode KoXmlNode::lastChild() const { if (!d->loaded) @@ -2244,9 +2266,10 @@ d->unloadChildren(); } -QDomNode KoXmlNode::asQDomNode(QDomDocument ownerDoc) const +void KoXmlNode::asQDomNode(QDomDocument& ownerDoc) const { - return d->asQDomNode(ownerDoc); + Q_ASSERT(!isDocument()); + d->asQDomNode(ownerDoc); } // ================================================================== @@ -2771,24 +2794,34 @@ #endif } -QDomNode KoXml::asQDomNode(QDomDocument ownerDoc, const KoXmlNode& node) +void KoXml::asQDomNode(QDomDocument& ownerDoc, const KoXmlNode& node) { + Q_ASSERT(!node.isDocument()); #ifdef KOXML_USE_QDOM - Q_UNUSED(ownerDoc); - return node; + ownerDoc.appendChild(ownerDoc.importNode(node)); #else - return node.asQDomNode(ownerDoc); + node.asQDomNode(ownerDoc); #endif } -QDomElement KoXml::asQDomElement(QDomDocument ownerDoc, const KoXmlElement& element) +void KoXml::asQDomElement(QDomDocument &ownerDoc, const KoXmlElement& element) { - return KoXml::asQDomNode(ownerDoc, element).toElement(); + KoXml::asQDomNode(ownerDoc, element); } -QDomDocument KoXml::asQDomDocument(QDomDocument ownerDoc, const KoXmlDocument& document) +QDomDocument KoXml::asQDomDocument(const KoXmlDocument& document) { - return KoXml::asQDomNode(ownerDoc, document).toDocument(); +#ifdef KOXML_USE_QDOM + return document; +#else + QDomDocument qdoc( document.nodeName() ); + if ( document.hasChildNodes() ) { + for ( KoXmlNode n = document.firstChild(); ! n.isNull(); n = n.nextSibling() ) { + KoXml::asQDomNode(qdoc, n); + } + } + return qdoc; +#endif } bool KoXml::setDocument(KoXmlDocument& doc, QIODevice* device, diff -Nru calligra-2.3.86/libs/odf/KoXmlReader.h calligra-2.3.87/libs/odf/KoXmlReader.h --- calligra-2.3.86/libs/odf/KoXmlReader.h 2012-01-07 03:25:03.000000000 +0000 +++ calligra-2.3.87/libs/odf/KoXmlReader.h 2012-01-28 07:04:49.000000000 +0000 @@ -126,6 +126,8 @@ KoXmlNode nextSibling() const; KoXmlNode previousSibling() const; + KoXmlElement firstChildElement() const; + // equivalent to node.childNodes().count() if node is a QDomNode instance int childNodesCount() const; @@ -150,7 +152,11 @@ void unload(); // compatibility - QDomNode asQDomNode(QDomDocument ownerDoc) const; + /** + * @internal do not call directly + * Use KoXml::asQDomDocument(), KoXml::asQDomElement() or KoXml::asQDomNode() instead + */ + void asQDomNode(QDomDocument& ownerDoc) const; protected: KoXmlNodeData* d; @@ -396,12 +402,33 @@ KOODF_EXPORT QStringList attributeNames(const KoXmlNode& node); /** - * Convert KoXml classes to the corresponding QDom classes, which has - * 'ownerDoc' as the owner document (QDomDocument instance). + * Convert KoXmlNode classes to the corresponding QDom classes, which has + * @p ownerDoc as the owner document (QDomDocument instance). + * The converted @p node (and its children) are added to ownerDoc. + * + * NOTE: + * - If ownerDoc is not empty, this may fail, @see QDomDocument + * - @p node must not be a KoXmlDocument, use asQDomDocument() + * + * @see asQDomDocument, asQDomElement + */ +KOODF_EXPORT void asQDomNode(QDomDocument& ownerDoc, const KoXmlNode& node); + +/** + * Convert KoXmlNode classes to the corresponding QDom classes, which has + * @p ownerDoc as the owner document (QDomDocument instance). + * The converted @p element (and its children) is added to ownerDoc. + * + * NOTE: If ownerDoc is not empty, this may fail, @see QDomDocument + * + */ +KOODF_EXPORT void asQDomElement(QDomDocument& ownerDoc, const KoXmlElement& element); + +/** + * Converts the whole @p document into a QDomDocument + * If KOXML_USE_QDOM is defined, just returns @p document */ -KOODF_EXPORT QDomNode asQDomNode(QDomDocument ownerDoc, const KoXmlNode& node); -KOODF_EXPORT QDomElement asQDomElement(QDomDocument ownerDoc, const KoXmlElement& element); -KOODF_EXPORT QDomDocument asQDomDocument(QDomDocument ownerDoc, const KoXmlDocument& document); +KOODF_EXPORT QDomDocument asQDomDocument(const KoXmlDocument& document); /* * Load an XML document from specified device to a document. You can of diff -Nru calligra-2.3.86/libs/odf/tests/CMakeLists.txt calligra-2.3.87/libs/odf/tests/CMakeLists.txt --- calligra-2.3.86/libs/odf/tests/CMakeLists.txt 2012-01-07 03:25:03.000000000 +0000 +++ calligra-2.3.87/libs/odf/tests/CMakeLists.txt 2012-01-28 07:04:49.000000000 +0000 @@ -23,20 +23,20 @@ set(xmlwritertest_SRCS TestXmlWriter.cpp ) -kde4_add_unit_test(TestXmlWriter TESTNAME libs-store-testxmlwriter ${xmlwritertest_SRCS}) +kde4_add_unit_test(TestXmlWriter TESTNAME libs-odf-TestXmlWriter ${xmlwritertest_SRCS}) target_link_libraries(TestXmlWriter koodf ${QT_QTTEST_LIBRARY} ${KDE4_KDEUI_LIBS}) ########### next target ############### set(xmlreadertest_SRCS TestXmlReader.cpp ) -kde4_add_unit_test(TestXmlReader TESTNAME libs-store-testxmlreader ${xmlreadertest_SRCS}) +kde4_add_unit_test(TestXmlReader TESTNAME libs-odf-TestXmlReader ${xmlreadertest_SRCS}) target_link_libraries(TestXmlReader koodf ${QT_QTTEST_LIBRARY} ${KDE4_KDEUI_LIBS}) ########### next target ############### set(xmlreadertestwithoutspaces_SRCS TestXmlReaderWithoutSpaces.cpp ) -kde4_add_unit_test(TestXmlReaderWithoutSpaces TESTNAME libs-store-testxmlreader ${xmlreadertestwithoutspaces_SRCS}) +kde4_add_unit_test(TestXmlReaderWithoutSpaces TESTNAME libs-odf-TestXmlReaderWithoutSpaces ${xmlreadertestwithoutspaces_SRCS}) target_link_libraries(TestXmlReaderWithoutSpaces koodf ${QT_QTTEST_LIBRARY} ${KDE4_KDEUI_LIBS}) ########### next target ############### diff -Nru calligra-2.3.86/libs/odf/tests/TestNumberStyle.cpp calligra-2.3.87/libs/odf/tests/TestNumberStyle.cpp --- calligra-2.3.86/libs/odf/tests/TestNumberStyle.cpp 2012-01-07 03:25:03.000000000 +0000 +++ calligra-2.3.87/libs/odf/tests/TestNumberStyle.cpp 2012-01-28 07:04:49.000000000 +0000 @@ -158,7 +158,9 @@ f.formatStr = "-#,###0.00"; QCOMPARE(escapeLocals(KoOdfNumberStyles::format("0.2", f)), QString("0.20")); f.formatStr = ""; - QCOMPARE(escapeLocals(KoOdfNumberStyles::format("0.2", f)), QString("0.20 $")); + localDependentDollar = escapeLocals(KoOdfNumberStyles::format("0.2", f)); + QVERIFY(localDependentDollar.startsWith("0.20") || localDependentDollar.endsWith("0.20")); + QVERIFY(localDependentDollar.startsWith("$") || localDependentDollar.endsWith("$")); } QTEST_MAIN(TestNumberStyle) diff -Nru calligra-2.3.86/libs/odf/tests/TestXmlReader.cpp calligra-2.3.87/libs/odf/tests/TestXmlReader.cpp --- calligra-2.3.86/libs/odf/tests/TestXmlReader.cpp 2012-01-07 03:25:03.000000000 +0000 +++ calligra-2.3.87/libs/odf/tests/TestXmlReader.cpp 2012-01-28 07:04:49.000000000 +0000 @@ -29,6 +29,7 @@ void testSimpleXML(); void testRootError(); void testMismatchedTag(); + void testConvertQDomDocument(); void testConvertQDomElement(); void testSimpleOpenDocumentText(); void testWhitespace(); @@ -137,7 +138,7 @@ QCOMPARE(node4.isText(), false); QCOMPARE(node4.isDocument(), false); QCOMPARE(node4.hasChildNodes(), true); - QCOMPARE(KoXml::childNodesCount(node4), 2); + QCOMPARE(KoXml::childNodesCount(node4), 4); QCOMPARE(node4.ownerDocument() == doc, true); QCOMPARE(node4.toElement() == doc.firstChild().toElement(), true); @@ -152,14 +153,14 @@ QCOMPARE(KoXml::childNodesCount(node4), 0); // a node which is an element for - KoXmlNode node5 = doc.firstChild().firstChild(); + KoXmlNode node5 = doc.firstChild().firstChild().nextSibling(); QCOMPARE(node5.nodeName(), QString("continents")); QCOMPARE(node5.isNull(), false); QCOMPARE(node5.isElement(), true); QCOMPARE(node5.isText(), false); QCOMPARE(node5.isDocument(), false); QCOMPARE(node5.hasChildNodes(), true); - QCOMPARE(KoXml::childNodesCount(node5), 6); + QCOMPARE(KoXml::childNodesCount(node5), 13); QCOMPARE(node5.ownerDocument() == doc, true); // convert to element and the compare @@ -169,7 +170,7 @@ QCOMPARE(continentsElement.isElement(), true); QCOMPARE(continentsElement.isText(), false); QCOMPARE(continentsElement.hasChildNodes(), true); - QCOMPARE(KoXml::childNodesCount(continentsElement), 6); + QCOMPARE(KoXml::childNodesCount(continentsElement), 13); QCOMPARE(continentsElement.ownerDocument() == doc, true); // and it doesn't make sense to convert that node to document @@ -799,21 +800,25 @@ QCOMPARE(rootElement.tagName(), QString("document")); QCOMPARE(rootElement.prefix().isNull(), true); - bookElement = rootElement.firstChild().toElement(); + bookElement = rootElement.firstChildElement(); QCOMPARE(bookElement.isNull(), false); QCOMPARE(bookElement.isElement(), true); QCOMPARE(bookElement.tagName(), QString("book")); QCOMPARE(bookElement.prefix().isNull(), true); QCOMPARE(bookElement.localName(), QString()); - bookTitleElement = bookElement.firstChild().toElement(); + bookTitleElement = bookElement.firstChildElement(); QCOMPARE(bookTitleElement.isNull(), false); QCOMPARE(bookTitleElement.isElement(), true); QCOMPARE(bookTitleElement.tagName(), QString("book:title")); QCOMPARE(bookTitleElement.prefix().isNull(), true); QCOMPARE(bookTitleElement.localName(), QString()); - bookAuthorElement = bookTitleElement.nextSibling().toElement(); + KoXmlNode whiteSpace = bookTitleElement.nextSibling(); + QCOMPARE(whiteSpace.isNull(), false); + QCOMPARE(whiteSpace.isText(), true); + + bookAuthorElement = whiteSpace.nextSibling().toElement(); QCOMPARE(bookAuthorElement.isNull(), false); QCOMPARE(bookAuthorElement.isElement(), true); QCOMPARE(bookAuthorElement.tagName(), QString("book:author")); @@ -853,7 +858,7 @@ QCOMPARE(bookElement.localName(), QString("book")); // - bookTitleElement = bookElement.firstChild().toElement(); + bookTitleElement = bookElement.firstChildElement(); QCOMPARE(bookTitleElement.isNull(), false); QCOMPARE(bookTitleElement.isElement(), true); QCOMPARE(bookTitleElement.tagName(), QString("title")); @@ -870,8 +875,12 @@ QCOMPARE(book2TitleElement.isElement(), true); QCOMPARE(book2TitleElement.tagName(), QString("title")); + whiteSpace = bookTitleElement.nextSibling(); + QCOMPARE(whiteSpace.isNull(), false); + QCOMPARE(whiteSpace.isText(), true); + // - bookAuthorElement = bookTitleElement.nextSibling().toElement(); + bookAuthorElement = whiteSpace.nextSibling().toElement(); QCOMPARE(bookAuthorElement.isNull(), false); QCOMPARE(bookAuthorElement.isElement(), true); QCOMPARE(bookAuthorElement.tagName(), QString("author")); @@ -980,7 +989,7 @@ QCOMPARE(bookElement.localName(), QString("book")); // - bookTitleElement = bookElement.firstChild().toElement(); + bookTitleElement = bookElement.firstChildElement(); QCOMPARE(bookTitleElement.isNull(), false); QCOMPARE(bookTitleElement.isElement(), true); QCOMPARE(bookTitleElement.tagName(), QString("title")); @@ -997,8 +1006,12 @@ QCOMPARE(book2TitleElement.isElement(), true); QCOMPARE(book2TitleElement.tagName(), QString("title")); + KoXmlNode whiteSpace = bookTitleElement.nextSibling(); + QCOMPARE(whiteSpace.isNull(), false); + QCOMPARE(whiteSpace.isText(), true); + // - bookAuthorElement = bookTitleElement.nextSibling().toElement(); + bookAuthorElement = whiteSpace.nextSibling().toElement(); QCOMPARE(bookAuthorElement.isNull(), false); QCOMPARE(bookAuthorElement.isElement(), true); QCOMPARE(bookAuthorElement.tagName(), QString("author")); @@ -1156,17 +1169,17 @@ QCOMPARE(rootElement.isElement(), true); QCOMPARE(rootElement.parentNode().isNull(), false); QCOMPARE(rootElement.hasChildNodes(), true); - QCOMPARE(KoXml::childNodesCount(rootElement), 5); + QCOMPARE(KoXml::childNodesCount(rootElement), 11); QCOMPARE(rootElement.tagName(), QString("solarsystem")); QCOMPARE(rootElement.prefix().isNull(), true); // node KoXmlNode firstPlanetNode; - firstPlanetNode = rootElement.firstChild(); + firstPlanetNode = rootElement.firstChildElement(); QCOMPARE(firstPlanetNode.isNull(), false); QCOMPARE(firstPlanetNode.isElement(), true); QCOMPARE(firstPlanetNode.nextSibling().isNull(), false); - QCOMPARE(firstPlanetNode.previousSibling().isNull(), true); + QCOMPARE(firstPlanetNode.previousSibling().isNull(), false); QCOMPARE(firstPlanetNode.parentNode().isNull(), false); QCOMPARE(firstPlanetNode.parentNode() == rootElement, true); QCOMPARE(firstPlanetNode.parentNode() != rootElement, false); @@ -1189,15 +1202,18 @@ QCOMPARE(firstPlanetElement.tagName(), QString("mercurius")); QCOMPARE(firstPlanetElement.prefix().isNull(), true); + KoXmlNode whiteSpace = firstPlanetElement.nextSibling(); + QCOMPARE(whiteSpace.isNull(), false); + QCOMPARE(whiteSpace.isText(), true); + // node KoXmlNode secondPlanetNode; - secondPlanetNode = firstPlanetNode.nextSibling(); + secondPlanetNode = whiteSpace.nextSibling(); QCOMPARE(secondPlanetNode.isNull(), false); QCOMPARE(secondPlanetNode.isElement(), true); QCOMPARE(secondPlanetNode.nextSibling().isNull(), false); QCOMPARE(secondPlanetNode.previousSibling().isNull(), false); - QCOMPARE(secondPlanetNode.previousSibling() == firstPlanetNode, true); - QCOMPARE(secondPlanetNode.previousSibling() == firstPlanetElement, true); + QCOMPARE(secondPlanetNode.previousSibling() == whiteSpace, true); QCOMPARE(secondPlanetNode.parentNode().isNull(), false); QCOMPARE(secondPlanetNode.parentNode() == rootElement, true); QCOMPARE(secondPlanetNode.parentNode() != rootElement, false); @@ -1213,8 +1229,7 @@ QCOMPARE(secondPlanetElement.isElement(), true); QCOMPARE(secondPlanetElement.nextSibling().isNull(), false); QCOMPARE(secondPlanetElement.previousSibling().isNull(), false); - QCOMPARE(secondPlanetElement.previousSibling() == firstPlanetNode, true); - QCOMPARE(secondPlanetElement.previousSibling() == firstPlanetElement, true); + QCOMPARE(secondPlanetElement.previousSibling() == whiteSpace, true); QCOMPARE(secondPlanetElement.parentNode().isNull(), false); QCOMPARE(secondPlanetElement.parentNode() == rootElement, true); QCOMPARE(secondPlanetElement.parentNode() != rootElement, false); @@ -1267,7 +1282,7 @@ QCOMPARE(errorColumn, 11); } -void TestXmlReader::testConvertQDomElement() +void TestXmlReader::testConvertQDomDocument() { QString errorMsg; int errorLine = 0; @@ -1300,18 +1315,92 @@ QCOMPARE(rootElement.isElement(), true); QCOMPARE(rootElement.parentNode().isNull(), false); QCOMPARE(rootElement.hasChildNodes(), true); - QCOMPARE(KoXml::childNodesCount(rootElement), 5); + QCOMPARE(KoXml::childNodesCount(rootElement), 11); QCOMPARE(rootElement.tagName(), QString("solarsystem")); QCOMPARE(rootElement.prefix().isNull(), true); + // now test converting KoXmlDocument to QDomDocument + QDomDocument universeDoc = KoXml::asQDomDocument(doc); + + // + QDomElement solarSystemElement = universeDoc.documentElement(); + QCOMPARE(solarSystemElement.isNull(), false); + QCOMPARE(solarSystemElement.isElement(), true); + QCOMPARE(solarSystemElement.parentNode().isNull(), false); + QCOMPARE(solarSystemElement.hasChildNodes(), true); + QCOMPARE(solarSystemElement.tagName(), QString("solarsystem")); + QCOMPARE(solarSystemElement.prefix().isNull(), true); + + // + QDomElement earthElement = solarSystemElement.namedItem("earth").toElement(); + QCOMPARE(earthElement.isNull(), false); + QCOMPARE(earthElement.isElement(), true); + QCOMPARE(earthElement.parentNode().isNull(), false); + QCOMPARE(earthElement.hasAttribute("habitable"), true); + QCOMPARE(earthElement.hasChildNodes(), true); + QCOMPARE(earthElement.tagName(), QString("earth")); + QCOMPARE(earthElement.prefix().isNull(), true); + + //

in + QDomNode placeNode = earthElement.firstChild(); + QCOMPARE(placeNode.isNull(), false); + QCOMPARE(placeNode.isElement(), true); + QCOMPARE(placeNode.toElement().text(), QString("The best place")); + QCOMPARE(placeNode.nextSibling().isNull(), false); + QCOMPARE(placeNode.previousSibling().isNull(), true); + QCOMPARE(placeNode.parentNode().isNull(), false); + QCOMPARE(placeNode.parentNode() == earthElement, true); + QCOMPARE(placeNode.hasChildNodes(), true); + QCOMPARE(placeNode.childNodes().count(), 1); + + //printf("Result:\n%s\n\n", qPrintable(universeDoc.toString())); +} + +void TestXmlReader::testConvertQDomElement() +{ + QString errorMsg; + int errorLine = 0; + int errorColumn = 0; + + QBuffer xmldevice; + xmldevice.open(QIODevice::WriteOnly); + QTextStream xmlstream(&xmldevice); + xmlstream << ""; + xmlstream << " "; + xmlstream << " \n"; + xmlstream << " \n"; + xmlstream << "

The best place

"; + xmlstream << " \n"; + xmlstream << "
\n"; + xmlstream << " \n"; + xmlstream << " \n"; + xmlstream << "
"; + xmlstream << ""; + xmldevice.close(); + + KoXmlDocument doc; + QCOMPARE(doc.setContent(&xmldevice, &errorMsg, &errorLine, &errorColumn), true); + QCOMPARE(errorMsg.isEmpty(), true); + QCOMPARE(errorLine, 0); + QCOMPARE(errorColumn, 0); + + // + KoXmlElement rootElement; + rootElement = doc.documentElement(); + QCOMPARE(rootElement.isNull(), false); + QCOMPARE(rootElement.isElement(), true); + QCOMPARE(rootElement.parentNode().isNull(), false); + QCOMPARE(rootElement.hasChildNodes(), true); + QCOMPARE(KoXml::childNodesCount(rootElement), 2); + QCOMPARE(rootElement.tagName(), QString("universe")); + QCOMPARE(rootElement.prefix().isNull(), true); + // now test converting KoXmlElement to QDomElement - QDomDocument universeDoc; - QDomElement universeRoot = universeDoc.createElement("universe"); - universeDoc.appendChild(universeRoot); - universeRoot.appendChild(KoXml::asQDomNode(universeDoc, rootElement)); + QDomDocument solarDoc; + KoXml::asQDomElement(solarDoc, rootElement.firstChildElement()); // - QDomElement solarSystemElement = universeRoot.firstChild().toElement(); + QDomElement solarSystemElement = solarDoc.documentElement(); QCOMPARE(solarSystemElement.isNull(), false); QCOMPARE(solarSystemElement.isElement(), true); QCOMPARE(solarSystemElement.parentNode().isNull(), false); @@ -1388,7 +1477,7 @@ QCOMPARE(contentElement.isElement(), true); QCOMPARE(contentElement.parentNode().isNull(), false); QCOMPARE(contentElement.parentNode().toDocument() == doc, true); - QCOMPARE(KoXml::childNodesCount(contentElement), 2); + QCOMPARE(KoXml::childNodesCount(contentElement), 4); QCOMPARE(contentElement.firstChild().isNull(), false); QCOMPARE(contentElement.lastChild().isNull(), false); QCOMPARE(contentElement.previousSibling().isNull(), false); @@ -1407,13 +1496,14 @@ QCOMPARE(KoXml::childNodesCount(stylesElement), 0); QCOMPARE(stylesElement.firstChild().isNull(), true); QCOMPARE(stylesElement.lastChild().isNull(), true); - QCOMPARE(stylesElement.previousSibling().isNull(), true); + QCOMPARE(stylesElement.previousSibling().isNull(), false); + QCOMPARE(stylesElement.previousSibling().previousSibling().isNull(), true); QCOMPARE(stylesElement.nextSibling().isNull(), false); QCOMPARE(stylesElement.localName(), QString("automatic-styles")); // also same , but without namedItemNS KoXmlNode styles2Element; - styles2Element = contentElement.firstChild().toElement(); + styles2Element = contentElement.firstChildElement(); QCOMPARE(styles2Element.isNull(), false); QCOMPARE(styles2Element.isElement(), true); QCOMPARE(styles2Element.parentNode().isNull(), false); @@ -1421,7 +1511,8 @@ QCOMPARE(KoXml::childNodesCount(styles2Element), 0); QCOMPARE(styles2Element.firstChild().isNull(), true); QCOMPARE(styles2Element.lastChild().isNull(), true); - QCOMPARE(styles2Element.previousSibling().isNull(), true); + QCOMPARE(styles2Element.previousSibling().isNull(), false); + QCOMPARE(styles2Element.previousSibling().previousSibling().isNull(), true); QCOMPARE(styles2Element.nextSibling().isNull(), false); QCOMPARE(styles2Element.localName(), QString("automatic-styles")); @@ -1432,21 +1523,24 @@ QCOMPARE(bodyElement.isElement(), true); QCOMPARE(bodyElement.parentNode().isNull(), false); QCOMPARE(bodyElement.parentNode() == contentElement, true); - QCOMPARE(KoXml::childNodesCount(bodyElement), 1); + QCOMPARE(KoXml::childNodesCount(bodyElement), 3); QCOMPARE(bodyElement.firstChild().isNull(), false); QCOMPARE(bodyElement.lastChild().isNull(), false); QCOMPARE(bodyElement.previousSibling().isNull(), false); QCOMPARE(bodyElement.nextSibling().isNull(), true); QCOMPARE(bodyElement.localName(), QString("body")); + KoXmlNode whiteSpace = stylesElement.nextSibling(); + QCOMPARE(whiteSpace.isNull(), false); + QCOMPARE(whiteSpace.isText(), true); + // also same , but without namedItemNS - KoXmlElement body2Element; - body2Element = stylesElement.nextSibling().toElement(); + KoXmlElement body2Element = whiteSpace.nextSibling().toElement(); QCOMPARE(body2Element.isNull(), false); QCOMPARE(body2Element.isElement(), true); QCOMPARE(body2Element.parentNode().isNull(), false); QCOMPARE(body2Element.parentNode() == contentElement, true); - QCOMPARE(KoXml::childNodesCount(body2Element), 1); + QCOMPARE(KoXml::childNodesCount(body2Element), 3); QCOMPARE(body2Element.firstChild().isNull(), false); QCOMPARE(body2Element.lastChild().isNull(), false); QCOMPARE(body2Element.previousSibling().isNull(), false); @@ -1460,30 +1554,34 @@ QCOMPARE(textElement.isElement(), true); QCOMPARE(textElement.parentNode().isNull(), false); QCOMPARE(textElement.parentNode() == bodyElement, true); - QCOMPARE(KoXml::childNodesCount(textElement), 1); + QCOMPARE(KoXml::childNodesCount(textElement), 3); QCOMPARE(textElement.firstChild().isNull(), false); QCOMPARE(textElement.lastChild().isNull(), false); - QCOMPARE(textElement.previousSibling().isNull(), true); - QCOMPARE(textElement.nextSibling().isNull(), true); + QCOMPARE(textElement.previousSibling().isNull(), false); + QCOMPARE(textElement.previousSibling().previousSibling().isNull(), true); + QCOMPARE(textElement.nextSibling().isNull(), false); + QCOMPARE(textElement.nextSibling().nextSibling().isNull(), true); QCOMPARE(textElement.localName(), QString("text")); // the same , but without namedItemNS KoXmlElement text2Element; - text2Element = bodyElement.firstChild().toElement(); + text2Element = bodyElement.firstChildElement(); QCOMPARE(text2Element.isNull(), false); QCOMPARE(text2Element.isElement(), true); QCOMPARE(text2Element.parentNode().isNull(), false); QCOMPARE(text2Element.parentNode() == bodyElement, true); - QCOMPARE(KoXml::childNodesCount(text2Element), 1); + QCOMPARE(KoXml::childNodesCount(text2Element), 3); QCOMPARE(text2Element.firstChild().isNull(), false); QCOMPARE(text2Element.lastChild().isNull(), false); - QCOMPARE(text2Element.previousSibling().isNull(), true); - QCOMPARE(text2Element.nextSibling().isNull(), true); + QCOMPARE(text2Element.previousSibling().isNull(), false); + QCOMPARE(text2Element.previousSibling().previousSibling().isNull(), true); + QCOMPARE(text2Element.nextSibling().isNull(), false); + QCOMPARE(text2Element.nextSibling().nextSibling().isNull(), true); QCOMPARE(text2Element.localName(), QString("text")); // KoXmlElement parElement; - parElement = textElement.firstChild().toElement(); + parElement = textElement.firstChildElement(); QCOMPARE(parElement.isNull(), false); QCOMPARE(parElement.isElement(), true); QCOMPARE(parElement.parentNode().isNull(), false); @@ -1491,8 +1589,10 @@ QCOMPARE(KoXml::childNodesCount(parElement), 1); QCOMPARE(parElement.firstChild().isNull(), false); QCOMPARE(parElement.lastChild().isNull(), false); - QCOMPARE(parElement.previousSibling().isNull(), true); - QCOMPARE(parElement.nextSibling().isNull(), true); + QCOMPARE(parElement.previousSibling().isNull(), false); + QCOMPARE(parElement.previousSibling().previousSibling().isNull(), true); + QCOMPARE(parElement.nextSibling().isNull(), false); + QCOMPARE(parElement.nextSibling().nextSibling().isNull(), true); QCOMPARE(parElement.tagName(), QString("p")); QCOMPARE(parElement.text(), QString("Hello, world!")); QCOMPARE(parElement.attributeNS(QString(textNS), "style-name", ""), QString("Standard")); @@ -1536,16 +1636,19 @@ QCOMPARE(errorColumn, 0); KoXmlElement p1; - p1 = doc.documentElement().firstChild().toElement(); + p1 = doc.documentElement().firstChildElement(); QCOMPARE(p1.isNull(), false); QCOMPARE(p1.isElement(), true); QCOMPARE(KoXml::childNodesCount(p1), 1); + KoXmlNode whiteSpace = p1.nextSibling(); + QCOMPARE(whiteSpace.isNull(), false); + QCOMPARE(whiteSpace.isText(), true); + KoXmlElement p2; - p2 = p1.nextSibling().toElement(); + p2 = whiteSpace.nextSibling().toElement(); QCOMPARE(p2.isNull(), false); QCOMPARE(p2.isElement(), true); - QEXPECT_FAIL("", "Whitespace handling should be fixed.", Continue); QCOMPARE(KoXml::childNodesCount(p2), 3); } @@ -1840,7 +1943,7 @@ QCOMPARE(contentElement.isElement(), true); QCOMPARE(contentElement.parentNode().isNull(), false); QCOMPARE(contentElement.parentNode().toDocument() == doc, true); - QCOMPARE(KoXml::childNodesCount(contentElement), 3); + QCOMPARE(KoXml::childNodesCount(contentElement), 6); QCOMPARE(contentElement.firstChild().isNull(), false); QCOMPARE(contentElement.lastChild().isNull(), false); QCOMPARE(contentElement.previousSibling().isNull(), false); @@ -1859,7 +1962,8 @@ QCOMPARE(KoXml::childNodesCount(scriptsElement), 0); QCOMPARE(scriptsElement.firstChild().isNull(), true); QCOMPARE(scriptsElement.lastChild().isNull(), true); - QCOMPARE(scriptsElement.previousSibling().isNull(), true); + QCOMPARE(scriptsElement.previousSibling().isNull(), false); + QCOMPARE(scriptsElement.previousSibling().previousSibling().isNull(), true); QCOMPARE(scriptsElement.nextSibling().isNull(), false); QCOMPARE(scriptsElement.localName(), QString("scripts")); @@ -1877,9 +1981,13 @@ QCOMPARE(stylesElement.nextSibling().isNull(), false); QCOMPARE(stylesElement.localName(), QString("automatic-styles")); + KoXmlNode whiteSpace = scriptsElement.nextSibling(); + QCOMPARE(whiteSpace.isNull(), false); + QCOMPARE(whiteSpace.isText(), true); + // also same , but without namedItemNS KoXmlNode styles2Element; - styles2Element = scriptsElement.nextSibling().toElement(); + styles2Element = whiteSpace.nextSibling().toElement(); QCOMPARE(styles2Element.isNull(), false); QCOMPARE(styles2Element.isElement(), true); QCOMPARE(styles2Element.parentNode().isNull(), false); @@ -1898,21 +2006,25 @@ QCOMPARE(bodyElement.isElement(), true); QCOMPARE(bodyElement.parentNode().isNull(), false); QCOMPARE(bodyElement.parentNode() == contentElement, true); - QCOMPARE(KoXml::childNodesCount(bodyElement), 1); + QCOMPARE(KoXml::childNodesCount(bodyElement), 3); QCOMPARE(bodyElement.firstChild().isNull(), false); QCOMPARE(bodyElement.lastChild().isNull(), false); QCOMPARE(bodyElement.previousSibling().isNull(), false); QCOMPARE(bodyElement.nextSibling().isNull(), true); QCOMPARE(bodyElement.localName(), QString("body")); + whiteSpace = stylesElement.nextSibling(); + QCOMPARE(whiteSpace.isNull(), false); + QCOMPARE(whiteSpace.isText(), true); + // also same , but without namedItemNS KoXmlElement body2Element; - body2Element = stylesElement.nextSibling().toElement(); + body2Element = whiteSpace.nextSibling().toElement(); QCOMPARE(body2Element.isNull(), false); QCOMPARE(body2Element.isElement(), true); QCOMPARE(body2Element.parentNode().isNull(), false); QCOMPARE(body2Element.parentNode() == contentElement, true); - QCOMPARE(KoXml::childNodesCount(body2Element), 1); + QCOMPARE(KoXml::childNodesCount(body2Element), 3); QCOMPARE(body2Element.firstChild().isNull(), false); QCOMPARE(body2Element.lastChild().isNull(), false); QCOMPARE(body2Element.previousSibling().isNull(), false); @@ -1926,38 +2038,48 @@ QCOMPARE(presentationElement.isElement(), true); QCOMPARE(presentationElement.parentNode().isNull(), false); QCOMPARE(presentationElement.parentNode() == bodyElement, true); - QCOMPARE(KoXml::childNodesCount(presentationElement), 2); + QCOMPARE(KoXml::childNodesCount(presentationElement), 5); QCOMPARE(presentationElement.firstChild().isNull(), false); QCOMPARE(presentationElement.lastChild().isNull(), false); - QCOMPARE(presentationElement.previousSibling().isNull(), true); - QCOMPARE(presentationElement.nextSibling().isNull(), true); + QCOMPARE(presentationElement.previousSibling().isNull(), false); + QCOMPARE(presentationElement.previousSibling().isText(), true); + QCOMPARE(presentationElement.previousSibling().previousSibling().isNull(), true); + QCOMPARE(presentationElement.nextSibling().isNull(), false); + QCOMPARE(presentationElement.nextSibling().isText(), true); + QCOMPARE(presentationElement.nextSibling().nextSibling().isNull(), true); QCOMPARE(presentationElement.localName(), QString("presentation")); // the same , but without namedItemNS KoXmlElement presentation2Element; - presentation2Element = bodyElement.firstChild().toElement(); + presentation2Element = bodyElement.firstChildElement(); QCOMPARE(presentation2Element.isNull(), false); QCOMPARE(presentation2Element.isElement(), true); QCOMPARE(presentation2Element.parentNode().isNull(), false); QCOMPARE(presentation2Element.parentNode() == bodyElement, true); - QCOMPARE(KoXml::childNodesCount(presentation2Element), 2); + QCOMPARE(KoXml::childNodesCount(presentation2Element), 5); QCOMPARE(presentation2Element.firstChild().isNull(), false); QCOMPARE(presentation2Element.lastChild().isNull(), false); - QCOMPARE(presentation2Element.previousSibling().isNull(), true); - QCOMPARE(presentation2Element.nextSibling().isNull(), true); + QCOMPARE(presentation2Element.previousSibling().isNull(), false); + QCOMPARE(presentation2Element.previousSibling().isText(), true); + QCOMPARE(presentation2Element.previousSibling().previousSibling().isNull(), true); + QCOMPARE(presentation2Element.nextSibling().isNull(), false); + QCOMPARE(presentation2Element.nextSibling().isText(), true); + QCOMPARE(presentation2Element.nextSibling().nextSibling().isNull(), true); QCOMPARE(presentation2Element.localName(), QString("presentation")); // for "Title" KoXmlElement titlePageElement; - titlePageElement = presentationElement.firstChild().toElement(); + titlePageElement = presentationElement.firstChildElement(); QCOMPARE(titlePageElement.isNull(), false); QCOMPARE(titlePageElement.isElement(), true); QCOMPARE(titlePageElement.parentNode().isNull(), false); QCOMPARE(titlePageElement.parentNode() == presentationElement, true); - QCOMPARE(KoXml::childNodesCount(titlePageElement), 3); + QCOMPARE(KoXml::childNodesCount(titlePageElement), 7); QCOMPARE(titlePageElement.firstChild().isNull(), false); QCOMPARE(titlePageElement.lastChild().isNull(), false); - QCOMPARE(titlePageElement.previousSibling().isNull(), true); + QCOMPARE(titlePageElement.previousSibling().isNull(), false); + QCOMPARE(titlePageElement.previousSibling().isText(), true); + QCOMPARE(titlePageElement.previousSibling().previousSibling().isNull(), true); QCOMPARE(titlePageElement.nextSibling().isNull(), false); QCOMPARE(titlePageElement.localName(), QString("page")); QCOMPARE(titlePageElement.attributeNS(drawNS, "name", ""), QString("Title")); @@ -1968,15 +2090,17 @@ // for the title frame KoXmlElement titleFrameElement; - titleFrameElement = titlePageElement.firstChild().toElement(); + titleFrameElement = titlePageElement.firstChildElement(); QCOMPARE(titleFrameElement.isNull(), false); QCOMPARE(titleFrameElement.isElement(), true); QCOMPARE(titleFrameElement.parentNode().isNull(), false); QCOMPARE(titleFrameElement.parentNode() == titlePageElement, true); - QCOMPARE(KoXml::childNodesCount(titleFrameElement), 1); + QCOMPARE(KoXml::childNodesCount(titleFrameElement), 3); QCOMPARE(titleFrameElement.firstChild().isNull(), false); QCOMPARE(titleFrameElement.lastChild().isNull(), false); - QCOMPARE(titleFrameElement.previousSibling().isNull(), true); + QCOMPARE(titleFrameElement.previousSibling().isNull(), false); + QCOMPARE(titleFrameElement.previousSibling().isText(), true); + QCOMPARE(titleFrameElement.previousSibling().previousSibling().isNull(), true); QCOMPARE(titleFrameElement.nextSibling().isNull(), false); QCOMPARE(titleFrameElement.localName(), QString("frame")); QCOMPARE(titleFrameElement.attributeNS(presentationNS, "style-name", ""), QString("pr1")); @@ -1991,21 +2115,25 @@ // of the title frame KoXmlElement titleBoxElement; - titleBoxElement = titleFrameElement.firstChild().toElement(); + titleBoxElement = titleFrameElement.firstChildElement(); QCOMPARE(titleBoxElement.isNull(), false); QCOMPARE(titleBoxElement.isElement(), true); QCOMPARE(titleBoxElement.parentNode().isNull(), false); QCOMPARE(titleBoxElement.parentNode() == titleFrameElement, true); - QCOMPARE(KoXml::childNodesCount(titleBoxElement), 1); + QCOMPARE(KoXml::childNodesCount(titleBoxElement), 3); QCOMPARE(titleBoxElement.firstChild().isNull(), false); QCOMPARE(titleBoxElement.lastChild().isNull(), false); - QCOMPARE(titleBoxElement.previousSibling().isNull(), true); - QCOMPARE(titleBoxElement.nextSibling().isNull(), true); + QCOMPARE(titleBoxElement.previousSibling().isNull(), false); + QCOMPARE(titleBoxElement.previousSibling().isText(), true); + QCOMPARE(titleBoxElement.previousSibling().previousSibling().isNull(), true); + QCOMPARE(titleBoxElement.nextSibling().isNull(), false); + QCOMPARE(titleBoxElement.nextSibling().isText(), true); + QCOMPARE(titleBoxElement.nextSibling().nextSibling().isNull(), true); QCOMPARE(titleBoxElement.localName(), QString("text-box")); // for the title text-box KoXmlElement titleParElement; - titleParElement = titleBoxElement.firstChild().toElement(); + titleParElement = titleBoxElement.firstChildElement(); QCOMPARE(titleParElement.isNull(), false); QCOMPARE(titleParElement.isElement(), true); QCOMPARE(titleParElement.parentNode().isNull(), false); @@ -2013,20 +2141,28 @@ QCOMPARE(KoXml::childNodesCount(titleParElement), 1); QCOMPARE(titleParElement.firstChild().isNull(), false); QCOMPARE(titleParElement.lastChild().isNull(), false); - QCOMPARE(titleParElement.previousSibling().isNull(), true); - QCOMPARE(titleParElement.nextSibling().isNull(), true); + QCOMPARE(titleParElement.previousSibling().isNull(), false); + QCOMPARE(titleParElement.previousSibling().isText(), true); + QCOMPARE(titleParElement.previousSibling().previousSibling().isNull(), true); + QCOMPARE(titleParElement.nextSibling().isNull(), false); + QCOMPARE(titleParElement.nextSibling().isText(), true); + QCOMPARE(titleParElement.nextSibling().nextSibling().isNull(), true); QCOMPARE(titleParElement.localName(), QString("p")); QCOMPARE(titleParElement.attributeNS(textNS, "style-name", ""), QString("P1")); QCOMPARE(titleParElement.text(), QString("Foobar")); + whiteSpace = titleFrameElement.nextSibling(); + QCOMPARE(whiteSpace.isNull(), false); + QCOMPARE(whiteSpace.isText(), true); + // for the subtitle frame KoXmlElement subtitleFrameElement; - subtitleFrameElement = titleFrameElement.nextSibling().toElement(); + subtitleFrameElement = whiteSpace.nextSibling().toElement(); QCOMPARE(subtitleFrameElement.isNull(), false); QCOMPARE(subtitleFrameElement.isElement(), true); QCOMPARE(subtitleFrameElement.parentNode().isNull(), false); QCOMPARE(subtitleFrameElement.parentNode() == titlePageElement, true); - QCOMPARE(KoXml::childNodesCount(subtitleFrameElement), 1); + QCOMPARE(KoXml::childNodesCount(subtitleFrameElement), 3); QCOMPARE(subtitleFrameElement.firstChild().isNull(), false); QCOMPARE(subtitleFrameElement.lastChild().isNull(), false); QCOMPARE(subtitleFrameElement.previousSibling().isNull(), false); @@ -2044,21 +2180,25 @@ // of the subtitle frame KoXmlElement subtitleBoxElement; - subtitleBoxElement = subtitleFrameElement.firstChild().toElement(); + subtitleBoxElement = subtitleFrameElement.firstChildElement(); QCOMPARE(subtitleBoxElement.isNull(), false); QCOMPARE(subtitleBoxElement.isElement(), true); QCOMPARE(subtitleBoxElement.parentNode().isNull(), false); QCOMPARE(subtitleBoxElement.parentNode() == subtitleFrameElement, true); - QCOMPARE(KoXml::childNodesCount(subtitleBoxElement), 1); + QCOMPARE(KoXml::childNodesCount(subtitleBoxElement), 3); QCOMPARE(subtitleBoxElement.firstChild().isNull(), false); QCOMPARE(subtitleBoxElement.lastChild().isNull(), false); - QCOMPARE(subtitleBoxElement.previousSibling().isNull(), true); - QCOMPARE(subtitleBoxElement.nextSibling().isNull(), true); + QCOMPARE(subtitleBoxElement.previousSibling().isNull(), false); + QCOMPARE(subtitleBoxElement.previousSibling().isText(), true); + QCOMPARE(subtitleBoxElement.previousSibling().previousSibling().isNull(), true); + QCOMPARE(subtitleBoxElement.nextSibling().isNull(), false); + QCOMPARE(subtitleBoxElement.nextSibling().isText(), true); + QCOMPARE(subtitleBoxElement.nextSibling().nextSibling().isNull(), true); QCOMPARE(subtitleBoxElement.localName(), QString("text-box")); // for the subtitle text-box KoXmlElement subtitleParElement; - subtitleParElement = subtitleBoxElement.firstChild().toElement(); + subtitleParElement = subtitleBoxElement.firstChildElement(); QCOMPARE(subtitleParElement.isNull(), false); QCOMPARE(subtitleParElement.isElement(), true); QCOMPARE(subtitleParElement.parentNode().isNull(), false); @@ -2066,8 +2206,12 @@ QCOMPARE(KoXml::childNodesCount(subtitleParElement), 1); QCOMPARE(subtitleParElement.firstChild().isNull(), false); QCOMPARE(subtitleParElement.lastChild().isNull(), false); - QCOMPARE(subtitleParElement.previousSibling().isNull(), true); - QCOMPARE(subtitleParElement.nextSibling().isNull(), true); + QCOMPARE(subtitleParElement.previousSibling().isNull(), false); + QCOMPARE(subtitleParElement.previousSibling().isText(), true); + QCOMPARE(subtitleParElement.previousSibling().previousSibling().isNull(), true); + QCOMPARE(subtitleParElement.nextSibling().isNull(), false); + QCOMPARE(subtitleParElement.nextSibling().isText(), true); + QCOMPARE(subtitleParElement.nextSibling().nextSibling().isNull(), true); QCOMPARE(subtitleParElement.localName(), QString("p")); QCOMPARE(subtitleParElement.attributeNS(textNS, "style-name", ""), QString("P3")); QCOMPARE(subtitleParElement.text(), QString("Foo")); @@ -2132,52 +2276,64 @@ QCOMPARE(semanticsElement.parentNode().toElement() == mathElement, true); QCOMPARE(semanticsElement.firstChild().isNull(), false); QCOMPARE(semanticsElement.lastChild().isNull(), false); - QCOMPARE(semanticsElement.previousSibling().isNull(), true); + QCOMPARE(semanticsElement.previousSibling().isNull(), false); + QCOMPARE(semanticsElement.previousSibling().isText(), true); + QCOMPARE(semanticsElement.previousSibling().previousSibling().isNull(), true); QCOMPARE(semanticsElement.nextSibling().isNull(), true); QCOMPARE(semanticsElement.localName(), QString("semantics")); // the same but without namedItemNS KoXmlElement semantics2Element; - semantics2Element = mathElement.firstChild().toElement(); + semantics2Element = mathElement.firstChildElement(); QCOMPARE(semantics2Element.isNull(), false); QCOMPARE(semantics2Element.isElement(), true); QCOMPARE(semantics2Element.parentNode().isNull(), false); QCOMPARE(semantics2Element.parentNode().toElement() == mathElement, true); QCOMPARE(semantics2Element.firstChild().isNull(), false); QCOMPARE(semantics2Element.lastChild().isNull(), false); - QCOMPARE(semantics2Element.previousSibling().isNull(), true); + QCOMPARE(semantics2Element.previousSibling().isNull(), false); + QCOMPARE(semantics2Element.previousSibling().isText(), true); + QCOMPARE(semantics2Element.previousSibling().previousSibling().isNull(), true); QCOMPARE(semantics2Element.nextSibling().isNull(), true); QCOMPARE(semantics2Element.localName(), QString("semantics")); // KoXmlElement mrowElement; - mrowElement = semanticsElement.firstChild().toElement(); + mrowElement = semanticsElement.firstChildElement(); QCOMPARE(mrowElement.isNull(), false); QCOMPARE(mrowElement.isElement(), true); QCOMPARE(mrowElement.parentNode().isNull(), false); QCOMPARE(mrowElement.parentNode().toElement() == semanticsElement, true); QCOMPARE(mrowElement.firstChild().isNull(), false); QCOMPARE(mrowElement.lastChild().isNull(), false); - QCOMPARE(mrowElement.previousSibling().isNull(), true); + QCOMPARE(mrowElement.previousSibling().isNull(), false); + QCOMPARE(mrowElement.previousSibling().isText(), true); + QCOMPARE(mrowElement.previousSibling().previousSibling().isNull(), true); QCOMPARE(mrowElement.nextSibling().isNull(), false); QCOMPARE(mrowElement.localName(), QString("mrow")); // for "E" KoXmlElement miElement; - miElement = mrowElement.firstChild().toElement(); + miElement = mrowElement.firstChildElement(); QCOMPARE(miElement.isNull(), false); QCOMPARE(miElement.isElement(), true); QCOMPARE(miElement.parentNode().isNull(), false); QCOMPARE(miElement.parentNode().toElement() == mrowElement, true); QCOMPARE(miElement.firstChild().isNull(), false); QCOMPARE(miElement.lastChild().isNull(), false); - QCOMPARE(miElement.previousSibling().isNull(), true); + QCOMPARE(miElement.previousSibling().isNull(), false); + QCOMPARE(miElement.previousSibling().isText(), true); + QCOMPARE(miElement.previousSibling().previousSibling().isNull(), true); QCOMPARE(miElement.nextSibling().isNull(), false); QCOMPARE(miElement.localName(), QString("mi")); + KoXmlNode whiteSpace = miElement.nextSibling(); + QCOMPARE(whiteSpace.isNull(), false); + QCOMPARE(whiteSpace.isText(), true); + // for "=" KoXmlElement moElement; - moElement = miElement.nextSibling().toElement(); + moElement = whiteSpace.nextSibling().toElement(); QCOMPARE(moElement.isNull(), false); QCOMPARE(moElement.isElement(), true); QCOMPARE(moElement.parentNode().isNull(), false); @@ -2189,9 +2345,13 @@ QCOMPARE(moElement.localName(), QString("mo")); QCOMPARE(moElement.attributeNS(mathNS, "stretchy", ""), QString("false")); + whiteSpace = moElement.nextSibling(); + QCOMPARE(whiteSpace.isNull(), false); + QCOMPARE(whiteSpace.isText(), true); + // for "mc" and superscripted "2" KoXmlElement msupElement; - msupElement = moElement.nextSibling().toElement(); + msupElement = whiteSpace.nextSibling().toElement(); QCOMPARE(msupElement.isNull(), false); QCOMPARE(msupElement.isElement(), true); QCOMPARE(msupElement.parentNode().isNull(), false); @@ -2199,27 +2359,37 @@ QCOMPARE(msupElement.firstChild().isNull(), false); QCOMPARE(msupElement.lastChild().isNull(), false); QCOMPARE(msupElement.previousSibling().isNull(), false); - QCOMPARE(msupElement.nextSibling().isNull(), true); + QCOMPARE(msupElement.previousSibling().isText(), true); + QCOMPARE(msupElement.previousSibling().previousSibling().isNull(), false); + QCOMPARE(msupElement.nextSibling().isNull(), false); + QCOMPARE(msupElement.nextSibling().isText(), true); + QCOMPARE(msupElement.nextSibling().nextSibling().isNull(), true); QCOMPARE(msupElement.localName(), QString("msup")); // inside the for "mc" KoXmlElement mcElement; - mcElement = msupElement.firstChild().toElement(); + mcElement = msupElement.firstChildElement(); QCOMPARE(mcElement.isNull(), false); QCOMPARE(mcElement.isElement(), true); QCOMPARE(mcElement.parentNode().isNull(), false); QCOMPARE(mcElement.parentNode().toElement() == msupElement, true); QCOMPARE(mcElement.firstChild().isNull(), false); QCOMPARE(mcElement.lastChild().isNull(), false); - QCOMPARE(mcElement.previousSibling().isNull(), true); + QCOMPARE(mcElement.previousSibling().isNull(), false); + QCOMPARE(mcElement.previousSibling().isText(), true); + QCOMPARE(mcElement.previousSibling().previousSibling().isNull(), true); QCOMPARE(mcElement.nextSibling().isNull(), false); QCOMPARE(mcElement.localName(), QString("mi")); QCOMPARE(mcElement.text(), QString("mc")); QCOMPARE(mcElement.attributeNS(mathNS, "fontstyle", ""), QString("italic")); // inside the for "2" (superscript) + whiteSpace = mcElement.nextSibling(); + QCOMPARE(whiteSpace.isNull(), false); + QCOMPARE(whiteSpace.isText(), true); + KoXmlElement mnElement; - mnElement = mcElement.nextSibling().toElement(); + mnElement = whiteSpace.nextSibling().toElement(); QCOMPARE(mnElement.isNull(), false); QCOMPARE(mnElement.isElement(), true); QCOMPARE(mnElement.parentNode().isNull(), false); @@ -2227,13 +2397,19 @@ QCOMPARE(mnElement.firstChild().isNull(), false); QCOMPARE(mnElement.lastChild().isNull(), false); QCOMPARE(mnElement.previousSibling().isNull(), false); - QCOMPARE(mnElement.nextSibling().isNull(), true); + QCOMPARE(mnElement.nextSibling().isNull(), false); + QCOMPARE(mnElement.nextSibling().isText(), true); + QCOMPARE(mnElement.nextSibling().nextSibling().isNull(), true); QCOMPARE(mnElement.localName(), QString("mn")); QCOMPARE(mnElement.text(), QString("2")); + whiteSpace = semanticsElement.lastChild(); + QCOMPARE(whiteSpace.isNull(), false); + QCOMPARE(whiteSpace.isText(), true); + // KoXmlElement annotationElement; - annotationElement = semanticsElement.lastChild().toElement(); + annotationElement = whiteSpace.previousSibling().toElement(); QCOMPARE(annotationElement.isNull(), false); QCOMPARE(annotationElement.isElement(), true); QCOMPARE(annotationElement.parentNode().isNull(), false); @@ -2241,7 +2417,9 @@ QCOMPARE(annotationElement.firstChild().isNull(), false); QCOMPARE(annotationElement.lastChild().isNull(), false); QCOMPARE(annotationElement.previousSibling().isNull(), false); - QCOMPARE(annotationElement.nextSibling().isNull(), true); + QCOMPARE(annotationElement.nextSibling().isNull(), false); + QCOMPARE(annotationElement.nextSibling().isText(), true); + QCOMPARE(annotationElement.nextSibling().nextSibling().isNull(), true); QCOMPARE(annotationElement.localName(), QString("annotation")); QCOMPARE(annotationElement.text(), QString("E = mc^2 ")); QCOMPARE(annotationElement.attributeNS(mathNS, "encoding", ""), QString("StarMath 5.0")); @@ -2337,14 +2515,14 @@ // KoXmlElement bodyElement; - bodyElement = contentElement.firstChild().toElement(); + bodyElement = contentElement.firstChildElement(); QCOMPARE(bodyElement.isNull(), false); QCOMPARE(bodyElement.isElement(), true); QCOMPARE(bodyElement.localName(), QString("body")); // KoXmlElement spreadsheetElement; - spreadsheetElement = bodyElement.firstChild().toElement(); + spreadsheetElement = bodyElement.firstChildElement(); QCOMPARE(spreadsheetElement.isNull(), false); QCOMPARE(spreadsheetElement.isElement(), true); QCOMPARE(spreadsheetElement.localName(), QString("spreadsheet")); @@ -2352,7 +2530,7 @@ // now we visit every sheet, every row, every cell timer.start(); KoXmlElement tableElement; - tableElement = spreadsheetElement.firstChild().toElement(); + tableElement = spreadsheetElement.firstChildElement(); for (int table = 0; table < sheetCount; table++) { QString tableName = QString("Sheet%1").arg(table + 1); QCOMPARE(tableElement.isNull(), false); @@ -2371,7 +2549,7 @@ QCOMPARE(tableElement.lastChild().isNull(), false); KoXmlElement rowElement; - rowElement = tableElement.firstChild().toElement(); + rowElement = tableElement.firstChildElement(); for (int row = 0; row < rowCount; row++) { QCOMPARE(rowElement.isNull(), false); QCOMPARE(rowElement.isElement(), true); @@ -2382,7 +2560,7 @@ QCOMPARE(rowElement.lastChild().isNull(), false); KoXmlElement cellElement; - cellElement = rowElement.firstChild().toElement(); + cellElement = rowElement.firstChildElement(); for (int col = 0; col < colCount; col++) { QCOMPARE(cellElement.isNull(), false); QCOMPARE(cellElement.isElement(), true); @@ -2394,15 +2572,15 @@ QCOMPARE(cellElement.parentNode() == rowElement, true); QCOMPARE(cellElement.firstChild().isNull(), false); QCOMPARE(cellElement.lastChild().isNull(), false); - cellElement = cellElement.nextSibling().toElement(); + cellElement = cellElement.nextSibling().nextSibling().toElement(); } //KoXml::unload( rowElement ); - rowElement = rowElement.nextSibling().toElement(); + rowElement = rowElement.nextSibling().nextSibling().toElement(); } KoXml::unload(tableElement); - tableElement = tableElement.nextSibling().toElement(); + tableElement = tableElement.nextSibling().nextSibling().toElement(); } printf("Large spreadsheet: iterating time is %d ms\n", timer.elapsed()); diff -Nru calligra-2.3.86/libs/odf/tests/TestXmlReaderWithoutSpaces.cpp calligra-2.3.87/libs/odf/tests/TestXmlReaderWithoutSpaces.cpp --- calligra-2.3.86/libs/odf/tests/TestXmlReaderWithoutSpaces.cpp 2012-01-07 03:25:03.000000000 +0000 +++ calligra-2.3.87/libs/odf/tests/TestXmlReaderWithoutSpaces.cpp 2012-01-28 07:04:49.000000000 +0000 @@ -29,6 +29,7 @@ void testSimpleXML(); void testRootError(); void testMismatchedTag(); + void testConvertQDomDocument(); void testConvertQDomElement(); void testSimpleOpenDocumentText(); void testWhitespace(); @@ -1267,7 +1268,31 @@ QCOMPARE(errorColumn, 11); } -void TestXmlReaderWithoutSpaces::testConvertQDomElement() +static void dumpNodes(const KoXmlNode &node, int level=0) +{ + QString indent = QString("%1").arg("", level*3); + if (node.isNull()) { + qDebug()< KoXmlElement rootElement; rootElement = doc.documentElement(); @@ -1304,14 +1330,90 @@ QCOMPARE(rootElement.tagName(), QString("solarsystem")); QCOMPARE(rootElement.prefix().isNull(), true); + // now test converting KoXmlDocument to QDomDocument + QDomDocument universeDoc = KoXml::asQDomDocument(doc); + + // + QDomElement solarSystemElement = universeDoc.documentElement(); + QCOMPARE(solarSystemElement.isNull(), false); + QCOMPARE(solarSystemElement.isElement(), true); + QCOMPARE(solarSystemElement.parentNode().isNull(), false); + QCOMPARE(solarSystemElement.hasChildNodes(), true); + QCOMPARE(solarSystemElement.tagName(), QString("solarsystem")); + QCOMPARE(solarSystemElement.prefix().isNull(), true); + + // + QDomElement earthElement = solarSystemElement.namedItem("earth").toElement(); + QCOMPARE(earthElement.isNull(), false); + QCOMPARE(earthElement.isElement(), true); + QCOMPARE(earthElement.parentNode().isNull(), false); + QCOMPARE(earthElement.hasAttribute("habitable"), true); + QCOMPARE(earthElement.hasChildNodes(), true); + QCOMPARE(earthElement.tagName(), QString("earth")); + QCOMPARE(earthElement.prefix().isNull(), true); + + //

in + QDomNode placeNode = earthElement.firstChild(); + qDebug()<<"placeNode"<"; + xmlstream << ""; + xmlstream << ""; + xmlstream << ""; + xmlstream << "

The best place

"; + xmlstream << ""; + xmlstream << "
"; + xmlstream << ""; + xmlstream << ""; + xmlstream << "
"; + xmlstream << "
"; + xmldevice.close(); + + KoXmlDocument doc(false); + QCOMPARE(doc.setContent(&xmldevice, &errorMsg, &errorLine, &errorColumn), true); + QCOMPARE(errorMsg.isEmpty(), true); + QCOMPARE(errorLine, 0); + QCOMPARE(errorColumn, 0); + + // + KoXmlElement rootElement; + rootElement = doc.documentElement(); + QCOMPARE(rootElement.isNull(), false); + QCOMPARE(rootElement.isElement(), true); + QCOMPARE(rootElement.parentNode().isNull(), false); + QCOMPARE(rootElement.hasChildNodes(), true); + QCOMPARE(KoXml::childNodesCount(rootElement), 1); + QCOMPARE(rootElement.tagName(), QString("universe")); + QCOMPARE(rootElement.prefix().isNull(), true); + // now test converting KoXmlElement to QDomElement - QDomDocument universeDoc; - QDomElement universeRoot = universeDoc.createElement("universe"); - universeDoc.appendChild(universeRoot); - universeRoot.appendChild(KoXml::asQDomNode(universeDoc, rootElement)); + QDomDocument solarDoc; + KoXml::asQDomElement(solarDoc, rootElement.firstChild().toElement()); // - QDomElement solarSystemElement = universeRoot.firstChild().toElement(); + QDomElement solarSystemElement = solarDoc.documentElement(); QCOMPARE(solarSystemElement.isNull(), false); QCOMPARE(solarSystemElement.isElement(), true); QCOMPARE(solarSystemElement.parentNode().isNull(), false); @@ -1344,6 +1446,7 @@ //printf("Result:\n%s\n\n", qPrintable(universeDoc.toString())); } + void TestXmlReaderWithoutSpaces::testSimpleOpenDocumentText() { QString errorMsg; diff -Nru calligra-2.3.86/libs/textlayout/CMakeLists.txt calligra-2.3.87/libs/textlayout/CMakeLists.txt --- calligra-2.3.86/libs/textlayout/CMakeLists.txt 2012-01-07 03:25:03.000000000 +0000 +++ calligra-2.3.87/libs/textlayout/CMakeLists.txt 2012-01-28 07:04:49.000000000 +0000 @@ -14,7 +14,6 @@ KoTextLayoutRootAreaProvider.cpp KoTextDocumentLayout.cpp ListItemsHelper.cpp - KoStyleThumbnailer.cpp KoTextShapeContainerModel.cpp RunAroundHelper.cpp KoTextLayoutObstruction.cpp @@ -28,6 +27,7 @@ ToCGenerator.cpp DummyDocumentLayout.cpp IndexGeneratorManager.cpp + KoStyleThumbnailer.cpp ) @@ -48,11 +48,11 @@ install( FILES KoTextDocumentLayout.h - KoStyleThumbnailer.h KoTextLayoutArea.h KoTextLayoutRootArea.h KoTextShapeData.h KoPointedAt.h + KoStyleThumbnailer.h textlayout_export.h DESTINATION ${INCLUDE_INSTALL_DIR} COMPONENT Devel diff -Nru calligra-2.3.86/libs/textlayout/FloatingAnchorStrategy.cpp calligra-2.3.87/libs/textlayout/FloatingAnchorStrategy.cpp --- calligra-2.3.86/libs/textlayout/FloatingAnchorStrategy.cpp 2012-01-07 03:25:03.000000000 +0000 +++ calligra-2.3.87/libs/textlayout/FloatingAnchorStrategy.cpp 2012-01-28 07:04:49.000000000 +0000 @@ -63,9 +63,6 @@ return false; // let's fake we moved to force another relayout } - QRectF pageContentRect = m_anchor->shape()->parent()->boundingRect(); - setPageContentRect(pageContentRect); - // get the page data KoTextShapeData *data = qobject_cast(m_anchor->shape()->parent()->userData()); if (!data) { @@ -89,6 +86,15 @@ // This is in coords relative to texshape QPointF newPosition; + QPointF offset; + if (m_anchor->horizontalPos() == KoTextAnchor::HFromLeft + || m_anchor->horizontalPos() == KoTextAnchor::HFromInside) { + offset.setX(m_anchor->offset().x()); + } + if (m_anchor->verticalPos() == KoTextAnchor::VFromTop) { + offset.setY(m_anchor->offset().y()); + } + // set anchor bounding rectangle horizontal position and size if (!countHorizontalRel(anchorBoundingRect, containerBoundingRect, block, layout)) { return false; // let's fake we moved to force another relayout @@ -105,7 +111,7 @@ // Set shape vertical alignment inside anchor bounding rectangle countVerticalPos(newPosition, anchorBoundingRect, containerBoundingRect); - newPosition = newPosition + m_anchor->offset(); + newPosition = newPosition + offset; //check the border of layout environment and move the shape back to have it within if (m_anchor->flowWithText()) { @@ -245,7 +251,8 @@ { switch (m_anchor->horizontalPos()) { case KoTextAnchor::HCenter: - newPosition.setX(anchorBoundingRect.x() + anchorBoundingRect.width()/2 - containerBoundingRect.x()); + newPosition.setX(anchorBoundingRect.x() + anchorBoundingRect.width()/2 + - m_anchor->shape()->size().width()/2 - containerBoundingRect.x()); break; case KoTextAnchor::HFromInside: @@ -270,13 +277,15 @@ newPosition.setX(anchorBoundingRect.right() - containerBoundingRect.x()); } else { QSizeF size = m_anchor->shape()->boundingRect().size(); - newPosition.setX(anchorBoundingRect.x() - containerBoundingRect.x() + - size.width() - 2*(m_anchor->offset().x() + size.width()) ); + newPosition.setX(anchorBoundingRect.x() - containerBoundingRect.x() - + size.width() - m_anchor->offset().x()); } break; } case KoTextAnchor::HRight: { - newPosition.setX(anchorBoundingRect.right() - containerBoundingRect.x()); + QSizeF size = m_anchor->shape()->boundingRect().size(); + newPosition.setX(anchorBoundingRect.right() - containerBoundingRect.x() + - size.width()); break; } default : @@ -363,14 +372,14 @@ switch (m_anchor->verticalPos()) { case KoTextAnchor::VBottom: newPosition.setY(anchorBoundingRect.bottom() - containerBoundingRect.y() - );//- m_anchor->shape()->size().height()); + - m_anchor->shape()->size().height()); break; case KoTextAnchor::VBelow: newPosition.setY(anchorBoundingRect.bottom() - containerBoundingRect.y()); break; case KoTextAnchor::VMiddle: - newPosition.setY(anchorBoundingRect.y() + anchorBoundingRect.height()/2 - containerBoundingRect.y()); + newPosition.setY(anchorBoundingRect.y() + anchorBoundingRect.height()/2 - m_anchor->shape()->size().height()/2 - containerBoundingRect.y()); break; case KoTextAnchor::VFromTop: diff -Nru calligra-2.3.86/libs/textlayout/FrameIterator.h calligra-2.3.87/libs/textlayout/FrameIterator.h --- calligra-2.3.86/libs/textlayout/FrameIterator.h 2012-01-07 03:25:03.000000000 +0000 +++ calligra-2.3.87/libs/textlayout/FrameIterator.h 2012-01-28 07:04:49.000000000 +0000 @@ -19,7 +19,6 @@ #ifndef FRAMEITERATOR_H #define FRAMEITERATOR_H - #include #include #include diff -Nru calligra-2.3.86/libs/textlayout/KoPointedAt.cpp calligra-2.3.87/libs/textlayout/KoPointedAt.cpp --- calligra-2.3.86/libs/textlayout/KoPointedAt.cpp 2012-01-07 03:25:03.000000000 +0000 +++ calligra-2.3.87/libs/textlayout/KoPointedAt.cpp 2012-01-28 07:04:49.000000000 +0000 @@ -56,19 +56,10 @@ // local href starts with # if (href.startsWith("#")) { // however bookmark does not contain it, so strip it - href = href.right(href.size()-1); + href = href.right(href.size() - 1); if (!href.isEmpty()) { - bookmark = inlineManager->bookmarkManager()->retrieveBookmark(href); - QList bookmarks = inlineManager->bookmarkManager()->bookmarkNameList(); - - // Is the href a bookmark ? - foreach(const QString& s, bookmarks) { - if (s == href) { - bookmark = inlineManager->bookmarkManager()->retrieveBookmark(s); - return; - } - } + bookmark = inlineManager->bookmarkManager()->retrieveBookmark(href); } return; } else { diff -Nru calligra-2.3.86/libs/textlayout/KoStyleThumbnailer.cpp calligra-2.3.87/libs/textlayout/KoStyleThumbnailer.cpp --- calligra-2.3.86/libs/textlayout/KoStyleThumbnailer.cpp 2012-01-07 03:25:03.000000000 +0000 +++ calligra-2.3.87/libs/textlayout/KoStyleThumbnailer.cpp 2012-01-28 07:04:49.000000000 +0000 @@ -4,6 +4,7 @@ * Copyright (C) 2007 Pierre Ducroquet * Copyright (C) 2008 Girish Ramakrishnan * Copyright (C) 2009,2011 KO GmbH + * Copyright (C) 2011-2012 Pierre Stirnweiss * * This library is free software; you can redistribute it and/or * modify it under the terms of the GNU Library General Public @@ -38,10 +39,10 @@ #include +#include #include +#include #include -#include -#include #include #include #include @@ -55,45 +56,52 @@ class KoStyleThumbnailer::Private { public: - Private() : pixmapHelperDocument(0){ } + Private() : + thumbnailHelperDocument(new QTextDocument), + documentLayout(new KoTextDocumentLayout(thumbnailHelperDocument)), + defaultSize(QSize(250, 48)) + { + thumbnailHelperDocument->setDocumentLayout(documentLayout); + } + + ~Private() + { + delete documentLayout; + delete thumbnailHelperDocument; + } - QTextDocument *pixmapHelperDocument; + QTextDocument *thumbnailHelperDocument; KoTextDocumentLayout *documentLayout; - QPixmapCache pixmapCache; // cache of pixmap representations of the styles + QCache thumbnailCache; // cache of QImage representations of the styles QSize defaultSize; }; KoStyleThumbnailer::KoStyleThumbnailer() : d(new Private()) { - d->pixmapHelperDocument = new QTextDocument; - d->documentLayout = new KoTextDocumentLayout(d->pixmapHelperDocument); - d->pixmapHelperDocument->setDocumentLayout(d->documentLayout); - d->defaultSize = QSize(250, 48); } KoStyleThumbnailer::~KoStyleThumbnailer() { - delete d->documentLayout; - delete d->pixmapHelperDocument; delete d; } -QPixmap KoStyleThumbnailer::thumbnail(KoParagraphStyle *style) +QImage KoStyleThumbnailer::thumbnail(KoParagraphStyle *style, QSize size, bool recreateThumbnail) { - return thumbnail(style, d->defaultSize); -} - -QPixmap KoStyleThumbnailer::thumbnail(KoParagraphStyle *style, QSize size) -{ - QString pixmapKey = "p_" + QString::number(style->styleId()) + "_" + QString::number(size.width()) + "_" + QString::number(size.height()); - QPixmap pm(size.width(), size.height()); + if (!style || style->name().isNull()) { + return QImage(); + } + if (!size.isValid() || size.isNull()) { + size = d->defaultSize; + } + QString imageKey = "p_" + QString::number(style->styleId()) + "_" + QString::number(size.width()) + "_" + QString::number(size.height()); - if (d->pixmapCache.find(pixmapKey, &pm)) { - return pm; + if (!recreateThumbnail && d->thumbnailCache.object(imageKey)) { + return QImage(*(d->thumbnailCache.object(imageKey))); } - pm.fill(Qt::transparent); + QImage *im = new QImage(size.width(), size.height(), QImage::Format_ARGB32_Premultiplied); + im->fill(QColor(Qt::transparent).rgba()); KoParagraphStyle *clone = style->clone(); //TODO: make the following real options @@ -101,53 +109,64 @@ clone->setMargin(QTextLength(QTextLength::FixedLength, 0)); clone->setPadding(0); // - QTextCursor cursor(d->pixmapHelperDocument); + QTextCursor cursor(d->thumbnailHelperDocument); cursor.select(QTextCursor::Document); cursor.setBlockFormat(QTextBlockFormat()); cursor.setBlockCharFormat(QTextCharFormat()); cursor.setCharFormat(QTextCharFormat()); - cursor.insertText(clone->name()); QTextBlock block = cursor.block(); clone->applyStyle(block, true); - layoutThumbnail(size, pm); + QTextCharFormat format; + clone->KoCharacterStyle::applyStyle(format); + cursor.insertText(clone->name(), format); - d->pixmapCache.insert(pixmapKey, pm); - delete clone; - return pm; -} + layoutThumbnail(size, im); -QPixmap KoStyleThumbnailer::thumbnail(KoCharacterStyle *style) -{ - return thumbnail(style, d->defaultSize); + d->thumbnailCache.insert(imageKey, im); + delete clone; + return QImage(*im); } -QPixmap KoStyleThumbnailer::thumbnail(KoCharacterStyle *style, QSize size) +QImage KoStyleThumbnailer::thumbnail(KoCharacterStyle *characterStyle, KoParagraphStyle *paragraphStyle, QSize size, bool recreateThumbnail) { - QString pixmapKey = "c_" + QString::number(style->styleId()) + "_" + QString::number(size.width()) + "_" + QString::number(size.height()); - QPixmap pm(size.width(), size.height()); + if (!characterStyle || characterStyle->name().isNull()) { + return QImage(); + } + if (!size.isValid() || size.isNull()) { + size = d->defaultSize; + } + int paragraphStyleId = (paragraphStyle)?paragraphStyle->styleId():0; + QString imageKey = "c_" + QString::number(characterStyle->styleId()) + "_" + "p_" + QString::number(paragraphStyleId) + "_" + QString::number(size.width()) + "_" + QString::number(size.height()); - if (d->pixmapCache.find(pixmapKey, &pm)) { - return pm; + if (!recreateThumbnail && d->thumbnailCache.object(imageKey)) { + return QImage(*(d->thumbnailCache.object(imageKey))); } - pm.fill(Qt::transparent); + QImage *im = new QImage(size.width(), size.height(), QImage::Format_ARGB32_Premultiplied); + im->fill(QColor(Qt::transparent).rgba()); - KoCharacterStyle *clone = style->clone(); - QTextCursor cursor(d->pixmapHelperDocument); + QTextCursor cursor(d->thumbnailHelperDocument); + QTextCharFormat format; + if (paragraphStyle) { + KoParagraphStyle *paragraphStyleClone = paragraphStyle->clone(); + paragraphStyleClone->KoCharacterStyle::applyStyle(format); + delete paragraphStyleClone; + paragraphStyleClone = 0; + } + KoCharacterStyle *characterStyleClone = characterStyle->clone(); + characterStyleClone->applyStyle(format); cursor.select(QTextCursor::Document); cursor.setBlockFormat(QTextBlockFormat()); cursor.setBlockCharFormat(QTextCharFormat()); cursor.setCharFormat(QTextCharFormat()); - cursor.insertText(clone->name()); - QTextBlock block = cursor.block(); - clone->applyStyle(block); + cursor.insertText(characterStyleClone->name(), format); - layoutThumbnail(size, pm); + layoutThumbnail(size, im); - d->pixmapCache.insert(pixmapKey, pm); - delete clone; - return pm; + d->thumbnailCache.insert(imageKey, im); + delete characterStyleClone; + return QImage(*im); } void KoStyleThumbnailer::setThumbnailSize(QSize size) @@ -155,21 +174,21 @@ d->defaultSize = size; } -void KoStyleThumbnailer::layoutThumbnail(QSize size, QPixmap &pm) +void KoStyleThumbnailer::layoutThumbnail(QSize size, QImage *im) { - QPainter p(&pm); + QPainter p(im); d->documentLayout->removeRootArea(); KoTextLayoutRootArea rootArea(d->documentLayout); rootArea.setReferenceRect(0, size.width(), 0, 1E6); rootArea.setNoWrap(1E6); - FrameIterator frameCursor(d->pixmapHelperDocument->rootFrame()); + FrameIterator frameCursor(d->thumbnailHelperDocument->rootFrame()); rootArea.layoutRoot(&frameCursor); QSizeF documentSize = rootArea.boundingRect().size(); if (documentSize.width() > size.width() || documentSize.height() > size.height()) { //calculate the space needed for the font size indicator (should the preview big too big with the style's font size - QTextCursor cursor(d->pixmapHelperDocument); + QTextCursor cursor(d->thumbnailHelperDocument); cursor.select(QTextCursor::Document); QString sizeHint = "\t" + QString::number(cursor.charFormat().fontPointSize()) + "pt"; p.save(); @@ -178,14 +197,15 @@ p.setFont(sizeHintFont); QRectF sizeHintRect(p.boundingRect(0, 0, 1, 1, Qt::AlignCenter, sizeHint)); p.restore(); + qreal width = qMax(0., size.width()-sizeHintRect.width()); //calculate the font reduction factor so that the text + the sizeHint fits - qreal reductionFactor = qMin((size.width()-sizeHintRect.width())/documentSize.width(), size.height()/documentSize.height()); + qreal reductionFactor = qMin(width/documentSize.width(), size.height()/documentSize.height()); QTextCharFormat fmt = cursor.charFormat(); fmt.setFontPointSize((int)(fmt.fontPointSize()*reductionFactor)); cursor.mergeCharFormat(fmt); - frameCursor = FrameIterator(d->pixmapHelperDocument->rootFrame()); - rootArea.setReferenceRect(0, size.width()-sizeHintRect.width(), 0, 1E6); + frameCursor = FrameIterator(d->thumbnailHelperDocument->rootFrame()); + rootArea.setReferenceRect(0, width, 0, 1E6); rootArea.setNoWrap(1E6); rootArea.layoutRoot(&frameCursor); documentSize = rootArea.boundingRect().size(); @@ -216,3 +236,25 @@ rootArea.paint(&p, pc); } } + +void KoStyleThumbnailer::removeFromCache(KoParagraphStyle *style) +{ + QString imageKey = "p_" + QString::number(style->styleId()) + "_"; + removeFromCache(imageKey); +} + +void KoStyleThumbnailer::removeFromCache(KoCharacterStyle *style) +{ + QString imageKey = "c_" + QString::number(style->styleId()) + "_"; + removeFromCache(imageKey); +} + +void KoStyleThumbnailer::removeFromCache(const QString &expr) +{ + QList keys = d->thumbnailCache.keys(); + foreach (const QString &key, keys) { + if (key.contains(expr)) { + d->thumbnailCache.remove(key); + } + } +} diff -Nru calligra-2.3.86/libs/textlayout/KoStyleThumbnailer.h calligra-2.3.87/libs/textlayout/KoStyleThumbnailer.h --- calligra-2.3.86/libs/textlayout/KoStyleThumbnailer.h 2012-01-07 03:25:03.000000000 +0000 +++ calligra-2.3.87/libs/textlayout/KoStyleThumbnailer.h 2012-01-28 07:04:49.000000000 +0000 @@ -4,6 +4,7 @@ * Copyright (C) 2008 Thorsten Zachmann * Copyright (C) 2008 Girish Ramakrishnan * Copyright (C) 2009-2011 KO GmbH + * Copyright (C) 2011-2012 Pierre Stirnweiss * * This library is free software; you can redistribute it and/or * modify it under the terms of the GNU Library General Public @@ -26,13 +27,14 @@ #include "textlayout_export.h" -#include +#include -class QSize; -class QTextDocument; class KoCharacterStyle; class KoParagraphStyle; +class QImage; +class QTextDocument; + /** * Helper class to create (and cache) thumbnails of styles */ @@ -50,41 +52,43 @@ virtual ~KoStyleThumbnailer(); /** - * Return a thumbnail representing the style - * The thunbnail is the size specified with @fn setThumbnailSize or 250*48 pt if no size was provided. + * @returns a thumbnail representing the @param style, constrained into the @param size. + * If there is no specified @param size, the thunbnail is the size specified with @fn setThumbnailSize or 250*48 pt if no size was provided. + * If the given @param size is too small, the font size will be decreased, so the thumbnail fits. + * The real font size is indicated in this case. + * If @param recreateThumbnail is true, do not return the cached thumbnail if it exist, but recreate a new one. * The created thumbnail is cached. */ - QPixmap thumbnail(KoParagraphStyle *style); + QImage thumbnail(KoParagraphStyle *style, QSize size = QSize(), bool recreateThumbnail = false); /** - * @returns a thumbnail representing the @param style, constrained into the @param size. + * @returns a thumbnail representing the @param characterStyle applied on the given @param paragraphStyle, constrained into the @param size. + * If there is no specified @param size, the thunbnail is the size specified with @fn setThumbnailSize or 250*48 pt if no size was provided. * If the given @param size is too small, the font size will be decreased, so the thumbnail fits. * The real font size is indicated in this case. + * If @param recreateThumbnail is true, do not return the cached thumbnail if it exist, but recreate a new one. * The created thumbnail is cached. */ - QPixmap thumbnail(KoParagraphStyle *style, QSize size); + QImage thumbnail(KoCharacterStyle *characterStyle, KoParagraphStyle *paragraphStyle = 0, QSize size = QSize(), bool recreateThumbnail = false); /** - * Return a thumbnail representing the style - * The thunbnail is the size specified with @fn setThumbnailSize or 250*48 pt if no size was provided. - * The created thumbnail is cached. + * Sets the size of the thumbnails returned by the @fn thumbnail with no size arguments. */ - QPixmap thumbnail(KoCharacterStyle *style); + void setThumbnailSize(QSize size); /** - * @returns a thumbnail representing the @param style, constrained into the @param size. - * If the given @param size is too small, the font size will be decreased, so the thumbnail fits. - * The real font size is indicated in this case. + * remove all occurences of the style from the cache */ - QPixmap thumbnail(KoCharacterStyle *style, QSize size); + void removeFromCache(KoParagraphStyle *style); /** - * Sets the size of the thumbnails returned by the @fn thumbnail with no size arguments. + * remove all occurences of the style from the cache */ - void setThumbnailSize(QSize size); + void removeFromCache(KoCharacterStyle *style); private: - void layoutThumbnail(QSize size, QPixmap &pm); + void layoutThumbnail(QSize size, QImage *im); + void removeFromCache(const QString &expr); class Private; Private* const d; diff -Nru calligra-2.3.86/libs/textlayout/KoTextDocumentLayout.cpp calligra-2.3.87/libs/textlayout/KoTextDocumentLayout.cpp --- calligra-2.3.86/libs/textlayout/KoTextDocumentLayout.cpp 2012-01-07 03:25:03.000000000 +0000 +++ calligra-2.3.87/libs/textlayout/KoTextDocumentLayout.cpp 2012-01-28 07:04:49.000000000 +0000 @@ -256,9 +256,6 @@ // this method is called on every char inserted or deleted, on format changes, setting/moving of variables or objects. void KoTextDocumentLayout::documentChanged(int position, int charsRemoved, int charsAdded) { - Q_UNUSED(charsAdded); - Q_UNUSED(charsRemoved); - if (d->changesBlocked) { return; } @@ -281,7 +278,12 @@ // Mark the to the position corresponding root-areas as dirty. If there is no root-area for the position then we // don't need to mark anything dirty but still need to go on to force a scheduled relayout. if (!d->rootAreaList.isEmpty()) { - KoTextLayoutRootArea *fromArea = rootAreaForPosition(position); + KoTextLayoutRootArea *fromArea; + if (position) { + fromArea = rootAreaForPosition(position-1); + } else { + fromArea = d->rootAreaList.at(0); + } int startIndex = fromArea ? qMax(0, d->rootAreaList.indexOf(fromArea)) : 0; int endIndex = startIndex; if (charsRemoved != 0 || charsAdded != 0) { @@ -290,7 +292,7 @@ // and charsAdded>0 cause they are changing a range of characters. One case where both is zero is if // the content of a variable changed (see KoVariable::setValue which calls publicDocumentChanged). In // those cases we only need to relayout the root-area dirty where the variable is on. - KoTextLayoutRootArea *toArea = fromArea ? rootAreaForPosition(position + qMax(charsRemoved, charsAdded)) : 0; + KoTextLayoutRootArea *toArea = fromArea ? rootAreaForPosition(position + qMax(charsRemoved, charsAdded) + 1) : 0; if (toArea) { if (toArea != fromArea) { endIndex = qMax(startIndex, d->rootAreaList.indexOf(toArea)); @@ -423,6 +425,7 @@ AnchorStrategy *strategy = static_cast(textAnchor->anchorStrategy()); strategy->setPageRect(page->rect()); + strategy->setPageContentRect(page->contentRect()); strategy->setPageNumber(page->pageNumber()); if (strategy->moveSubject()) { diff -Nru calligra-2.3.86/libs/textlayout/KoTextDocumentLayout.h calligra-2.3.87/libs/textlayout/KoTextDocumentLayout.h --- calligra-2.3.86/libs/textlayout/KoTextDocumentLayout.h 2012-01-07 03:25:03.000000000 +0000 +++ calligra-2.3.87/libs/textlayout/KoTextDocumentLayout.h 2012-01-28 07:04:49.000000000 +0000 @@ -70,6 +70,7 @@ , imageCollection(0) , showFormattingCharacters(false) , showSpellChecking(false) + , showSelections(true) , background(Qt::white) { } @@ -83,6 +84,7 @@ bool showFormattingCharacters; bool showTableBorders; bool showSpellChecking; + bool showSelections; QColor background; }; diff -Nru calligra-2.3.86/libs/textlayout/KoTextLayoutArea.cpp calligra-2.3.87/libs/textlayout/KoTextLayoutArea.cpp --- calligra-2.3.86/libs/textlayout/KoTextLayoutArea.cpp 2012-01-07 03:25:03.000000000 +0000 +++ calligra-2.3.87/libs/textlayout/KoTextLayoutArea.cpp 2012-01-28 07:04:49.000000000 +0000 @@ -352,6 +352,19 @@ } } } + // if the full paragraph is selected to add it to the rect. This makes sure we get a rect for the case + // where the end of the selection lies is a different area. + if (cursor.selectionEnd() >= block.position() + block.length() && cursor.selectionStart() <= block.position()) { + QTextLine line = block.layout()->lineForTextPosition(block.length()-1); + if (line.isValid()) { + retval.setBottom(line.y() + line.height()); + if (line.ascent()==0) { + // Block is empty from any visible content and has as such no height + // but in that case the block font defines line height + retval.setBottom(line.y() + 24); + } + } + } } return retval.translated(0, m_verticalAlignOffset); } @@ -700,7 +713,7 @@ if (dir == KoText::AutoDirection) m_isRtl = block.text().isRightToLeft(); else - m_isRtl = dir == KoText::RightLeftTopBottom || dir == KoText::PerhapsRightLeftTopBottom; + m_isRtl = dir == KoText::RightLeftTopBottom; // initialize list item stuff for this parag. QTextList *textList = block.textList(); @@ -901,8 +914,8 @@ //======== // Margins //======== - qreal startMargin = pStyle.leftMargin(); - qreal endMargin = pStyle.rightMargin(); + qreal startMargin = block.blockFormat().leftMargin(); + qreal endMargin = block.blockFormat().rightMargin(); if (m_isRtl) { qSwap(startMargin, endMargin); } @@ -1340,7 +1353,7 @@ return guessGlyphWidth * 3 + m_extraTextIndent; } - qreal pStyleTextIndent = pStyle.textIndent().value(width()); + qreal blockTextIndent = block.blockFormat().textIndent(); if (textList && textList->format().boolProperty(KoListStyle::AlignmentMode)) { // according to odf 1.2 17.20 list text indent should be used when paragraph text indent is @@ -1349,17 +1362,17 @@ bool set = false; if (id && m_documentLayout->styleManager()) { KoParagraphStyle *originalParagraphStyle = m_documentLayout->styleManager()->paragraphStyle(id); - if (originalParagraphStyle->textIndent().value(width()) != pStyleTextIndent) { - set = (pStyleTextIndent != 0); + if (originalParagraphStyle->textIndent() != blockTextIndent) { + set = (blockTextIndent != 0); } } else { - set = (pStyleTextIndent != 0); + set = (blockTextIndent != 0); } if (! set) { return textList->format().doubleProperty(KoListStyle::TextIndent) + m_extraTextIndent; } } - return pStyleTextIndent + m_extraTextIndent; + return blockTextIndent + m_extraTextIndent; } void KoTextLayoutArea::setExtraTextIndent(qreal extraTextIndent) @@ -1458,65 +1471,118 @@ } qreal height = 0; + qreal breakHeight = 0.0; qreal ascent = 0.0; qreal descent = 0.0; const bool useFontProperties = format.boolProperty(KoParagraphStyle::LineSpacingFromFont); if (cursor->fragmentIterator.atEnd()) {// no text in parag. qreal fontStretch = 1; + QTextCharFormat charFormat = block.charFormat(); + if (block.blockFormat().hasProperty(KoParagraphStyle::EndCharStyle)) { + QVariant v = block.blockFormat().property(KoParagraphStyle::EndCharStyle); + QSharedPointer endCharStyle = v.value< QSharedPointer >(); + if (!endCharStyle.isNull()) { + endCharStyle->applyStyle(charFormat); + endCharStyle->ensureMinimalProperties(charFormat); + } + } + if (useFontProperties) { //stretch line height to powerpoint size fontStretch = PresenterFontStretch; - } else if ( block.charFormat().hasProperty(KoCharacterStyle::FontYStretch)) { + } else if (block.charFormat().hasProperty(KoCharacterStyle::FontYStretch)) { // stretch line height to ms-word size - fontStretch = block.charFormat().property(KoCharacterStyle::FontYStretch).toDouble(); + fontStretch = charFormat.property(KoCharacterStyle::FontYStretch).toDouble(); } - height = block.charFormat().fontPointSize() * fontStretch; + height = charFormat.fontPointSize() * fontStretch; } else { qreal fontStretch = 1; + QTextFragment fragment = cursor->fragmentIterator.fragment(); if (useFontProperties) { //stretch line height to powerpoint size fontStretch = PresenterFontStretch; - } else if ( cursor->fragmentIterator.fragment().charFormat().hasProperty(KoCharacterStyle::FontYStretch)) { + } else if (fragment.charFormat().hasProperty(KoCharacterStyle::FontYStretch)) { // stretch line height to ms-word size - fontStretch = cursor->fragmentIterator.fragment().charFormat().property(KoCharacterStyle::FontYStretch).toDouble(); + fontStretch = fragment.charFormat().property(KoCharacterStyle::FontYStretch).toDouble(); } // read max font height - height = qMax(height, cursor->fragmentIterator.fragment().charFormat().fontPointSize() * fontStretch); + height = qMax(height, fragment.charFormat().fontPointSize() * fontStretch); - KoInlineObjectExtent pos = m_documentLayout->inlineObjectExtent(cursor->fragmentIterator.fragment()); + KoInlineObjectExtent pos = m_documentLayout->inlineObjectExtent(fragment); ascent = qMax(ascent, pos.m_ascent); descent = qMax(descent, pos.m_descent); - while (!(cursor->fragmentIterator.atEnd() || cursor->fragmentIterator.fragment().contains( - block.position() + line.textStart() + line.textLength() - 1))) { + bool lineBreak = false; + int lastCharPos = block.position() + line.textStart() + line.textLength() - 1; + if (block.text().at(line.textStart() + line.textLength() - 1) == QChar(0x2028)) { + // Was a line with line-break + if (line.textLength() != 1) { //unless empty line we should ignore the format of it + --lastCharPos; + } + lineBreak = true; + } + while (!(fragment.contains(lastCharPos))) { cursor->fragmentIterator++; if (cursor->fragmentIterator.atEnd()) { break; } + fragment = cursor->fragmentIterator.fragment(); if (!m_documentLayout->changeTracker() || !m_documentLayout->changeTracker()->displayChanges() - || !m_documentLayout->changeTracker()->containsInlineChanges(cursor->fragmentIterator.fragment().charFormat()) - || !m_documentLayout->changeTracker()->elementById(cursor->fragmentIterator.fragment().charFormat().property(KoCharacterStyle::ChangeTrackerId).toInt()) - || !m_documentLayout->changeTracker()->elementById(cursor->fragmentIterator.fragment().charFormat().property(KoCharacterStyle::ChangeTrackerId).toInt())->isEnabled() - || (m_documentLayout->changeTracker()->elementById(cursor->fragmentIterator.fragment().charFormat().property(KoCharacterStyle::ChangeTrackerId).toInt())->getChangeType() != KoGenChange::DeleteChange) + || !m_documentLayout->changeTracker()->containsInlineChanges(fragment.charFormat()) + || !m_documentLayout->changeTracker()->elementById(fragment.charFormat().property(KoCharacterStyle::ChangeTrackerId).toInt()) + || !m_documentLayout->changeTracker()->elementById(fragment.charFormat().property(KoCharacterStyle::ChangeTrackerId).toInt())->isEnabled() + || (m_documentLayout->changeTracker()->elementById(fragment.charFormat().property(KoCharacterStyle::ChangeTrackerId).toInt())->getChangeType() != KoGenChange::DeleteChange) || m_documentLayout->changeTracker()->displayChanges()) { qreal fontStretch = 1; if (useFontProperties) { //stretch line height to powerpoint size fontStretch = PresenterFontStretch; - } else if ( cursor->fragmentIterator.fragment().charFormat().hasProperty(KoCharacterStyle::FontYStretch)) { + } else if (fragment.charFormat().hasProperty(KoCharacterStyle::FontYStretch)) { // stretch line height to ms-word size - fontStretch = cursor->fragmentIterator.fragment().charFormat().property(KoCharacterStyle::FontYStretch).toDouble(); + fontStretch = fragment.charFormat().property(KoCharacterStyle::FontYStretch).toDouble(); } // read max font height - height = qMax(height, cursor->fragmentIterator.fragment().charFormat().fontPointSize() * fontStretch); + height = qMax(height, fragment.charFormat().fontPointSize() * fontStretch); - KoInlineObjectExtent pos = m_documentLayout->inlineObjectExtent(cursor->fragmentIterator.fragment()); + KoInlineObjectExtent pos = m_documentLayout->inlineObjectExtent(fragment); ascent = qMax(ascent, pos.m_ascent); descent = qMax(descent, pos.m_descent); } } + + if (lineBreak) { + // Was a line with line-break - the format of the line-break should not be + // considered for the next line either. So we may have to advance the fragmentIterator. + while (!cursor->fragmentIterator.atEnd() && lastCharPos > fragment.position() + fragment.length()-1) { + cursor->fragmentIterator++; + fragment = cursor->fragmentIterator.fragment(); + } + + qreal breakAscent = ascent; + qreal breakDescent = descent; + breakHeight = height; + + int firstPos = block.position() + line.textStart() + line.textLength(); + + // Was a line with line-break - the format of the line-break should not be + // considered for the next line either. So we may have to advance the fragmentIterator. + while (!cursor->fragmentIterator.atEnd() && firstPos > fragment.position() + fragment.length()-1) { + cursor->fragmentIterator++; + if (!cursor->fragmentIterator.atEnd()) { + fragment = cursor->fragmentIterator.fragment(); + + // read max font height + breakHeight = qMax(breakHeight, fragment.charFormat().fontPointSize() * fontStretch); + + KoInlineObjectExtent pos = m_documentLayout->inlineObjectExtent(fragment); + breakAscent = qMax(breakAscent, pos.m_ascent); + breakDescent = qMax(breakDescent, pos.m_descent); + } + } + breakHeight = qMax(breakHeight, breakAscent + breakDescent); + } } height = qMax(height, ascent + descent); @@ -1525,30 +1591,30 @@ height = 12; // default size for uninitialized styles. } + // Calculate adjustment to the height due to line height calculated by qt which shouldn't be + // there in reality. We will just move the line + qreal lineAdjust = 0.0; + if (breakHeight > height) { + lineAdjust = height - breakHeight; + } + // Adjust the line-height according to a probably defined fixed line height, // a proportional (percent) line-height and/or the line-spacing. Together // with the line-height we maybe also need to adjust the position of the // line. This is for example needed if the line needs to shrink in height // so the line-text stays on the baseline. If the line grows in height then // we don't need to do anything. - qreal lineAdjust = 0.0; qreal fixedLineHeight = format.doubleProperty(KoParagraphStyle::FixedLineHeight); if (fixedLineHeight != 0.0) { qreal prevHeight = height; height = fixedLineHeight; - if (prevHeight > height) { - lineAdjust = fixedLineHeight - height; - } + lineAdjust += height - prevHeight; } else { qreal lineSpacing = format.doubleProperty(KoParagraphStyle::LineSpacing); if (lineSpacing == 0.0) { // unset int percent = format.intProperty(KoParagraphStyle::PercentLineHeight); if (percent != 0) { - qreal prevHeight = height; height *= percent / 100.0; - if (prevHeight > height) { - lineAdjust = height - prevHeight; - } } else { height *= 1.2; // default } @@ -1574,10 +1640,12 @@ // Adjust the position of the block-rect for this line which is used later // to proper clip the line while drawing. If we would not adjust it here // then we could end with text-lines being partly cutoff. - m_blockRects.last().moveTop(m_blockRects.last().top() + lineAdjust); + if (lineAdjust < 0.0) { + m_blockRects.last().moveTop(m_blockRects.last().top() + lineAdjust); + } if (blockData && block.textList() && block.layout()->lineCount() == 1) { - // If this is the first line in a list (aka the first line of the first list- + // If this is the first line in a list (aka the first line after the list- // item) then we also need to adjust the counter to match to the line again. blockData->setCounterPosition(QPointF(blockData->counterPosition().x(), blockData->counterPosition().y() + lineAdjust)); } diff -Nru calligra-2.3.86/libs/textlayout/KoTextLayoutArea_paint.cpp calligra-2.3.87/libs/textlayout/KoTextLayoutArea_paint.cpp --- calligra-2.3.86/libs/textlayout/KoTextLayoutArea_paint.cpp 2012-01-07 03:25:03.000000000 +0000 +++ calligra-2.3.87/libs/textlayout/KoTextLayoutArea_paint.cpp 2012-01-28 07:04:49.000000000 +0000 @@ -217,32 +217,33 @@ painter->restore(); QVector selections; - foreach(const QAbstractTextDocumentLayout::Selection & selection, context.textContext.selections) { - QTextCursor cursor = selection.cursor; - int begin = cursor.position(); - int end = cursor.anchor(); - if (begin > end) - qSwap(begin, end); - - if (end < block.position() || begin > block.position() + block.length()) - continue; // selection does not intersect this block. - if (selection.cursor.hasComplexSelection()) { - continue; // selections of several table cells are covered by the within drawBorders above. - } - if (m_documentLayout->changeTracker() - && !m_documentLayout->changeTracker()->displayChanges() - && m_documentLayout->changeTracker()->containsInlineChanges(selection.format) - && m_documentLayout->changeTracker()->elementById(selection.format.property(KoCharacterStyle::ChangeTrackerId).toInt())->isEnabled() - && m_documentLayout->changeTracker()->elementById(selection.format.property(KoCharacterStyle::ChangeTrackerId).toInt())->getChangeType() == KoGenChange::DeleteChange) { - continue; // Deletions should not be shown. + if (context.showSelections) { + foreach(const QAbstractTextDocumentLayout::Selection & selection, context.textContext.selections) { + QTextCursor cursor = selection.cursor; + int begin = cursor.position(); + int end = cursor.anchor(); + if (begin > end) + qSwap(begin, end); + + if (end < block.position() || begin > block.position() + block.length()) + continue; // selection does not intersect this block. + if (selection.cursor.hasComplexSelection()) { + continue; // selections of several table cells are covered by the within drawBorders above. + } + if (m_documentLayout->changeTracker() + && !m_documentLayout->changeTracker()->displayChanges() + && m_documentLayout->changeTracker()->containsInlineChanges(selection.format) + && m_documentLayout->changeTracker()->elementById(selection.format.property(KoCharacterStyle::ChangeTrackerId).toInt())->isEnabled() + && m_documentLayout->changeTracker()->elementById(selection.format.property(KoCharacterStyle::ChangeTrackerId).toInt())->getChangeType() == KoGenChange::DeleteChange) { + continue; // Deletions should not be shown. + } + QTextLayout::FormatRange fr; + fr.start = begin - block.position(); + fr.length = end - begin; + fr.format = selection.format; + selections.append(fr); } - QTextLayout::FormatRange fr; - fr.start = begin - block.position(); - fr.length = end - begin; - fr.format = selection.format; - selections.append(fr); } - // this is a workaround to fix text getting cut of when format ranges are used. There // is a bug in Qt that can hit when text lines overlap each other. In case a format range // is used for formating it can clip the lines above/below as Qt creates a clip rect for @@ -397,7 +398,6 @@ if (list && data->hasCounterData()) { QTextListFormat listFormat = list->format(); - if (! data->counterText().isEmpty()) { QFont font(data->labelFormat().font(), m_documentLayout->paintDevice()); @@ -449,7 +449,7 @@ if (block.layout()->lineCount() > 0) { // if there is text, then baseline align the counter. QTextLine firstParagLine = block.layout()->lineAt(0); - if (KoListStyle::isNumberingStyle(listStyle) || listStyle == KoListStyle::CustomCharItem) { + if (KoListStyle::isNumberingStyle(listStyle)) { //if numbered list baseline align counterPosition += QPointF(0, firstParagLine.ascent() - layout.lineAt(0).ascent()); } else { @@ -710,8 +710,15 @@ if (!line.isValid()) continue; - // end position: not that this can be smaller than p1 when we are handling RTL + // end position: not that x2 can be smaller than x1 when we are handling RTL int p2 = startOfFragmentInBlock + currentFragment.length(); + int lineEnd = line.textStart() + line.textLength(); + while (lineEnd > line.textStart() && block.text().at(lineEnd - 1) == ' ') { + --lineEnd; + } + if (lineEnd < p2) { //line caps + p2 = lineEnd; + } int fragmentToLineOffset = qMax(startOfFragmentInBlock - line.textStart(), 0); qreal x1 = line.cursorToX(p1); @@ -720,16 +727,12 @@ // qDebug() << "\n\t\t\tp1:" << p1 << "x1:" << x1 // << "\n\t\t\tp2:" << p2 << "x2:" << x2; - // Comment by sebsauer: - // Following line was supposed to fix bug 171686 (I cannot reproduce the original problem) but it opens bug 260159. So, deactivated for now. - // x2 = qMin(x2, line.naturalTextWidth() + line.cursorToX(line.textStart())); - if (x1 != x2) { drawStrikeOuts(painter, fmt, currentFragment.text(), line, x1, x2, startOfFragmentInBlock, fragmentToLineOffset); drawOverlines(painter, fmt, currentFragment.text(), line, x1, x2, startOfFragmentInBlock, fragmentToLineOffset); drawUnderlines(painter, fmt, currentFragment.text(), line, x1, x2, startOfFragmentInBlock, fragmentToLineOffset); - decorateTabsAndFormatting(painter, currentFragment, line, startOfFragmentInBlock, tabList, currentTabStop, showFormattingCharacters); } + decorateTabsAndFormatting(painter, currentFragment, line, startOfFragmentInBlock, tabList, currentTabStop, showFormattingCharacters); } } } diff -Nru calligra-2.3.86/libs/textlayout/KoTextShapeData.cpp calligra-2.3.87/libs/textlayout/KoTextShapeData.cpp --- calligra-2.3.86/libs/textlayout/KoTextShapeData.cpp 2012-01-07 03:25:03.000000000 +0000 +++ calligra-2.3.87/libs/textlayout/KoTextShapeData.cpp 2012-01-28 07:04:49.000000000 +0000 @@ -195,7 +195,6 @@ KoTextEditor *editor = KoTextDocument(document()).textEditor(); if (editor) { // at one point we have to get the position from the odf doc instead. editor->setPosition(0); - editor->finishedLoading(); } return true; diff -Nru calligra-2.3.86/libs/textlayout/ListItemsHelper.cpp calligra-2.3.87/libs/textlayout/ListItemsHelper.cpp --- calligra-2.3.86/libs/textlayout/ListItemsHelper.cpp 2012-01-07 03:25:03.000000000 +0000 +++ calligra-2.3.87/libs/textlayout/ListItemsHelper.cpp 2012-01-28 07:04:49.000000000 +0000 @@ -260,7 +260,7 @@ if (!fixed) { //if this is the first item then find if the list has to be continued from any other list KoList *listContinued = 0; - if (m_textList->itemNumber(block) == 0 && (listContinued = KoTextDocument(m_textList->document()).list(m_textList)->listContinuedFrom())) { + if (m_textList->itemNumber(block) == 0 && KoTextDocument(m_textList->document()).list(m_textList) && (listContinued = KoTextDocument(m_textList->document()).list(m_textList)->listContinuedFrom())) { //find the previous list of the same level QTextList *previousTextList = listContinued->textLists().at(level - 1).data(); if (previousTextList) { @@ -306,6 +306,7 @@ if (displayLevel > 1) { int checkLevel = level; int tmpDisplayLevel = displayLevel; + bool counterResetRequired = true; for (QTextBlock b = block.previous(); tmpDisplayLevel > 1 && b.isValid(); b = b.previous()) { if (b.textList() == 0) continue; @@ -324,6 +325,10 @@ } const int otherLevel = lf.intProperty(KoListStyle::Level); + if (isOutline && checkLevel == otherLevel) { + counterResetRequired = false; + } + if (checkLevel <= otherLevel) continue; /*if(needsRecalc(b->textList())) { @@ -352,6 +357,9 @@ for (int i = otherLevel + 1; i < level; i++) item += ".1"; // add missing counters. tmpDisplayLevel = 0; + if (isOutline && counterResetRequired) { + index = 1; + } break; } } @@ -389,6 +397,7 @@ case KoListStyle::SquareItem: case KoListStyle::Bullet: case KoListStyle::BlackCircle: + case KoListStyle::DiscItem: case KoListStyle::CircleItem: case KoListStyle::HeavyCheckMarkItem: case KoListStyle::BallotXItem: diff -Nru calligra-2.3.86/libs/textlayout/tests/TestBlockLayout.cpp calligra-2.3.87/libs/textlayout/tests/TestBlockLayout.cpp --- calligra-2.3.86/libs/textlayout/tests/TestBlockLayout.cpp 2012-01-07 03:25:03.000000000 +0000 +++ calligra-2.3.87/libs/textlayout/tests/TestBlockLayout.cpp 2012-01-28 07:04:49.000000000 +0000 @@ -22,6 +22,7 @@ #include "MockRootAreaProvider.h" #include +#include #include #include #include @@ -31,6 +32,8 @@ #include #include +#include +#include #include #include @@ -57,7 +60,7 @@ m_doc->setDefaultFont(QFont("Sans Serif", 12, QFont::Normal, false)); //do it manually since we do not load the appDefaultStyle - m_styleManager = new KoStyleManager(); + m_styleManager = new KoStyleManager(0); KoTextDocument(m_doc).setStyleManager(m_styleManager); m_layout = new KoTextDocumentLayout(m_doc, provider); @@ -177,6 +180,76 @@ QVERIFY(qAbs(blockLayout->lineAt(0).y() - 28.8) < ROUNDING); } +void TestBlockLayout::testFixedLineSpacing() +{ + setupTest(QString("Line1")+QChar(0x2028)+"Line2"+QChar(0x2028)+"Line3"); + QTextCursor cursor(m_doc); + + KoParagraphStyle style; + style.setFontPointSize(12.0); + style.setLineHeightAbsolute(28.0); + QTextBlock block = m_doc->begin(); + style.applyStyle(block); + + QCOMPARE(block.blockFormat().doubleProperty(KoParagraphStyle::FixedLineHeight), 28.0); + + m_layout->layout(); + QTextLayout *blockLayout = block.layout(); + + // lines with fontsize less than the fixed height are bottom aligned, resulting in + // positive y for first line + QCOMPARE(blockLayout->lineAt(0).y(), 28.0-12.0); + QCOMPARE(blockLayout->lineAt(1).y(), 28.0 + 28.0-12.0); + QCOMPARE(blockLayout->lineAt(2).y(), 56.0 + 28.0-12.0); + + style.setLineHeightAbsolute(8.0); + style.applyStyle(block); + + QCOMPARE(block.blockFormat().doubleProperty(KoParagraphStyle::FixedLineHeight), 8.0); + + m_layout->layout(); + blockLayout = block.layout(); + + // lines with fontsize more than the fixed height are bottom aligned, resulting in + //negative y for first line + QCOMPARE(blockLayout->lineAt(0).y(), 8.0-12.0); + QCOMPARE(blockLayout->lineAt(1).y(), 8.0-12.0 + 8.0); + QCOMPARE(blockLayout->lineAt(2).y(), 8.0-12.0 + 8.0 + 8.0); +} + +void TestBlockLayout::testPercentageLineSpacing() +{ + setupTest(QString("Line1")+QChar(0x2028)+"Line2"+QChar(0x2028)+"Line3"); + QTextCursor cursor(m_doc); + + KoParagraphStyle style; + style.setFontPointSize(12.0); + style.setLineHeightPercent(150); + QTextBlock block = m_doc->begin(); + style.applyStyle(block); + + QCOMPARE(block.blockFormat().intProperty(KoParagraphStyle::PercentLineHeight), 150); + + m_layout->layout(); + QTextLayout *blockLayout = block.layout(); + + QCOMPARE(blockLayout->lineAt(0).y(), 0.0); + QCOMPARE(blockLayout->lineAt(1).y(), 0.0 + 18.0); + QCOMPARE(blockLayout->lineAt(2).y(), 0.0 + 18.0 + 18.0); + + style.setLineHeightPercent(50); + style.applyStyle(block); + + QCOMPARE(block.blockFormat().intProperty(KoParagraphStyle::PercentLineHeight), 50); + + m_layout->layout(); + blockLayout = block.layout(); + + QCOMPARE(blockLayout->lineAt(0).y(), 0.0); + QCOMPARE(blockLayout->lineAt(1).y(), 0.0 + 6.0); + QCOMPARE(blockLayout->lineAt(2).y(), 0.0 + 6.0 + 6.0); +} + void TestBlockLayout::testAdvancedLineSpacing() { setupTest("Line1\nLine2\nLine3\nLine4\nLine5\nLine6\nLine7"); @@ -223,47 +296,129 @@ style.remove(KoParagraphStyle::LineSpacing); style.applyStyle(block); + block = m_block; // line1 m_layout->layout(); - QTextLayout *blockLayout = m_block.layout(); - QCOMPARE(blockLayout->lineAt(0).y(), 0.0); + QTextLayout *blockLayout = block.layout(); + QVERIFY(qAbs(blockLayout->lineAt(0).y() - (0.0)) < ROUNDING); - block = m_block.next(); // line2 + block = block.next(); // line2 with fixed we are bottom aligned so offset by 28.0-12.0 QVERIFY(block.isValid()); blockLayout = block.layout(); //qDebug() << blockLayout->lineAt(0).y(); - QVERIFY(qAbs(blockLayout->lineAt(0).y() - 25.6) < ROUNDING); + QVERIFY(qAbs(blockLayout->lineAt(0).y() - (0.8*12 + 28.0-12.0)) < ROUNDING); block = block.next(); // line3 QVERIFY(block.isValid()); blockLayout = block.layout(); //qDebug() << blockLayout->lineAt(0).y(); - QVERIFY(qAbs(blockLayout->lineAt(0).y() - 37.6) < ROUNDING); + QVERIFY(qAbs(blockLayout->lineAt(0).y() - (0.8*12 + 28.0)) < ROUNDING); block = block.next(); // line4 QVERIFY(block.isValid()); blockLayout = block.layout(); //qDebug() << blockLayout->lineAt(0).y(); - QVERIFY(qAbs(blockLayout->lineAt(0).y() - 52) < ROUNDING); + // percentage overrides minimum so percentage value is the right to test against + //QVERIFY(qAbs(blockLayout->lineAt(0).y() - (0.8*12 + 28.0 + 40.0)) < ROUNDING); + QVERIFY(qAbs(blockLayout->lineAt(0).y() - (0.8*12 + 28.0 + 1.2*12)) < ROUNDING); block = block.next(); // line5 QVERIFY(block.isValid()); blockLayout = block.layout(); //qDebug() << blockLayout->lineAt(0).y(); - QVERIFY(qAbs(blockLayout->lineAt(0).y() - 66.39) < ROUNDING); + // minimum of 5 is irelevant and percentage of 1.2 was still there + QVERIFY(qAbs(blockLayout->lineAt(0).y() - (0.8*12 + 28.0 + 1.2*12 + 1.2*12)) < ROUNDING); block = block.next(); // line6 QVERIFY(block.isValid()); blockLayout = block.layout(); //qDebug() << blockLayout->lineAt(0).y(); - QVERIFY(qAbs(blockLayout->lineAt(0).y() - 86.39) < ROUNDING); + QVERIFY(qAbs(blockLayout->lineAt(0).y() - (0.8*12 + 28.0 + 1.2*12 + 1.2*12 + 12+8)) < ROUNDING); block = block.next(); // line 7 QVERIFY(block.isValid()); blockLayout = block.layout(); //qDebug() << blockLayout->lineAt(0).y(); - QVERIFY(qAbs(blockLayout->lineAt(0).y() - 100.79) < ROUNDING); + QVERIFY(qAbs(blockLayout->lineAt(0).y() - (0.8*12 + 28.0 + 1.2*12 + 1.2*12 + 12+8 + 1.2*12)) < ROUNDING); } +void TestBlockLayout::testEmptyLineHeights() +{ + // 1) a blank line is affected by the line break after + // 1b) a line with contents is not affected by the linebreak + // 2) a final line if blank can have it's height specified by a special textstyle + // If the special style is empty the par style is used for the line + + setupTest(QString("")+QChar(0x2028)+QChar(0x2028)+"\nNextBlock"); + QTextCursor cursor(m_doc); + + QTextCharFormat bigCharFormat; + bigCharFormat.setFontPointSize(20.0); + QTextCharFormat smallCharFormat; + smallCharFormat.setFontPointSize(8.0); + + KoParagraphStyle style; + style.setFontPointSize(12.0); + style.setLineHeightPercent(100); + + QTextBlock block = m_doc->begin(); + style.applyStyle(block); + + // apply formats + cursor.setPosition(0); + cursor.setPosition(1, QTextCursor::KeepAnchor); + cursor.mergeCharFormat(bigCharFormat); + cursor.setPosition(1); + cursor.setPosition(2, QTextCursor::KeepAnchor); + cursor.mergeCharFormat(smallCharFormat); + + + m_layout->layout(); + QTextLayout *blockLayout = block.layout(); + QCOMPARE(blockLayout->lineAt(0).y(), 0.0); + QCOMPARE(blockLayout->lineAt(1).y(), 20.0); + QCOMPARE(blockLayout->lineAt(2).y(), 20.0 + 8.0); + block = block.next(); + QVERIFY(block.isValid()); + blockLayout = block.layout(); + QCOMPARE(blockLayout->lineAt(0).y(), 20.0 + 8.0 + 12.0); + + // Now do the test again but with last line having bigger font + block = m_doc->begin(); + QTextBlockFormat blockFormat = block.blockFormat(); + KoCharacterStyle charStyle; + charStyle.setFontPointSize(20.0); + blockFormat.setProperty(KoParagraphStyle::EndCharStyle, QVariant::fromValue< QSharedPointer >(QSharedPointer(&charStyle))); + cursor.setBlockFormat(blockFormat); + + m_layout->layout(); + blockLayout = block.layout(); + QCOMPARE(blockLayout->lineAt(0).y(), 0.0); + QCOMPARE(blockLayout->lineAt(1).y(), 20.0); + QCOMPARE(blockLayout->lineAt(2).y(), 20.0 + 8.0); + block = block.next(); + QVERIFY(block.isValid()); + blockLayout = block.layout(); + QCOMPARE(blockLayout->lineAt(0).y(), 20.0 + 8.0 + 20.0); + + // Now do the test again but with last line having a small font + block = m_doc->begin(); + KoCharacterStyle charStyle2; + charStyle2.setFontPointSize(6.0); + blockFormat.setProperty(KoParagraphStyle::EndCharStyle, QVariant::fromValue< QSharedPointer >(QSharedPointer(&charStyle2))); + cursor.setBlockFormat(blockFormat); + + m_layout->layout(); + blockLayout = block.layout(); + QCOMPARE(blockLayout->lineAt(0).y(), 0.0); + QCOMPARE(blockLayout->lineAt(1).y(), 20.0); + QCOMPARE(blockLayout->lineAt(2).y(), 20.0 + 8.0); + block = block.next(); + QVERIFY(block.isValid()); + blockLayout = block.layout(); + QCOMPARE(blockLayout->lineAt(0).y(), 20.0 + 8.0 + 6.0); +} + + // Test that spacing between blocks are the max of bottomMargin and topMargin // of the top and bottom block respectively // If the block doesn't connect to another block (top and bottom of pages or @@ -864,7 +1019,7 @@ qreal heightNormalLine = line.height(); qreal linexpos = line.position().x(); QCOMPARE(line.position().y(), 0.0); // aligned top - qDebug()< 40.0); // can't get a tight-boundingrect here. QVERIFY(line.position().x() < 45.0); // can't get a tight-boundingrect here. diff -Nru calligra-2.3.86/libs/textlayout/tests/TestBlockLayout.h calligra-2.3.87/libs/textlayout/tests/TestBlockLayout.h --- calligra-2.3.86/libs/textlayout/tests/TestBlockLayout.h 2012-01-07 03:25:03.000000000 +0000 +++ calligra-2.3.87/libs/textlayout/tests/TestBlockLayout.h 2012-01-28 07:04:49.000000000 +0000 @@ -53,9 +53,14 @@ void testBasicLineSpacing(); /// Tests incrementing Y pos based on the font size void testBasicLineSpacing2(); + /// Tests fixed linespacing. + void testFixedLineSpacing(); + /// Tests percentage linespacing. + void testPercentageLineSpacing(); /// Tests advanced linespacing options provided in our style. void testAdvancedLineSpacing(); - /// test data integrety for multiple shapes. + /// Tests that empty lines are given the correct height like in LibreOffice + void testEmptyLineHeights(); /// Test distance above and below paragraphs. void testBlockSpacing(); diff -Nru calligra-2.3.86/libs/textlayout/tests/TestDocumentLayout.cpp calligra-2.3.87/libs/textlayout/tests/TestDocumentLayout.cpp --- calligra-2.3.86/libs/textlayout/tests/TestDocumentLayout.cpp 2012-01-07 03:25:03.000000000 +0000 +++ calligra-2.3.87/libs/textlayout/tests/TestDocumentLayout.cpp 2012-01-28 07:04:49.000000000 +0000 @@ -51,7 +51,7 @@ m_doc->setDefaultFont(QFont("Sans Serif", 12, QFont::Normal, false)); //do it manually since we do not load the appDefaultStyle - m_styleManager = new KoStyleManager(); + m_styleManager = new KoStyleManager(0); KoTextDocument(m_doc).setStyleManager(m_styleManager); m_layout = new KoTextDocumentLayout(m_doc, provider); diff -Nru calligra-2.3.86/libs/textlayout/tests/TestTableLayout.cpp calligra-2.3.87/libs/textlayout/tests/TestTableLayout.cpp --- calligra-2.3.86/libs/textlayout/tests/TestTableLayout.cpp 2012-01-07 03:25:03.000000000 +0000 +++ calligra-2.3.87/libs/textlayout/tests/TestTableLayout.cpp 2012-01-28 07:04:49.000000000 +0000 @@ -33,6 +33,7 @@ #include #include #include +#include #include #include @@ -68,7 +69,7 @@ m_doc->setDefaultFont(QFont("Sans Serif", 12, QFont::Normal, false)); //do it manually since we do not load the appDefaultStyle - m_styleManager = new KoStyleManager(); + m_styleManager = new KoStyleManager(0); KoTextDocument(m_doc).setStyleManager(m_styleManager); m_layout = new KoTextDocumentLayout(m_doc, provider); @@ -88,7 +89,6 @@ KoParagraphStyle style; style.setStyleId(101); // needed to do manually since we don't use the stylemanager style.applyStyle(m_block); - QTextTableFormat tableFormat; if (tableStyle) tableStyle->applyStyle(tableFormat); diff -Nru calligra-2.3.86/libs/widgets/KoPageLayoutWidget.cpp calligra-2.3.87/libs/widgets/KoPageLayoutWidget.cpp --- calligra-2.3.86/libs/widgets/KoPageLayoutWidget.cpp 2012-01-07 03:25:03.000000000 +0000 +++ calligra-2.3.87/libs/widgets/KoPageLayoutWidget.cpp 2012-01-28 07:04:49.000000000 +0000 @@ -302,11 +302,9 @@ int index = 0; switch(direction) { case KoText::LeftRightTopBottom: - case KoText::PerhapsLeftRightTopBottom: index = 1; break; case KoText::RightLeftTopBottom: - case KoText::PerhapsRightLeftTopBottom: index = 2; break; case KoText::TopBottomRightLeft: // unused for now. diff -Nru calligra-2.3.86/plan/CHANGELOG calligra-2.3.87/plan/CHANGELOG --- calligra-2.3.86/plan/CHANGELOG 2012-01-07 03:25:03.000000000 +0000 +++ calligra-2.3.87/plan/CHANGELOG 2012-01-28 07:04:49.000000000 +0000 @@ -1,6 +1,10 @@ Calligra Plan current: +* Fix crash in reports due incorrect use of KoXml to QDom conversion + +* Fix bug 291056 - Dates are sorted alphabetically and not by date / time + * Improve users control of work package merging * PlanWork: diff -Nru calligra-2.3.86/plan/CMakeLists.txt calligra-2.3.87/plan/CMakeLists.txt --- calligra-2.3.86/plan/CMakeLists.txt 2012-01-07 03:25:03.000000000 +0000 +++ calligra-2.3.87/plan/CMakeLists.txt 2012-01-28 07:04:49.000000000 +0000 @@ -111,7 +111,7 @@ set(calligraplan_KDEINIT_SRCS main.cpp ) -kde4_add_app_icon(calligraplan_KDEINIT_SRCS "${CMAKE_CURRENT_SOURCE_DIR}/pics/hi*-app-plan.png") +kde4_add_app_icon(calligraplan_KDEINIT_SRCS "${CMAKE_CURRENT_SOURCE_DIR}/pics/hi*-app-calligraplan.png") kde4_add_kdeinit_executable( calligraplan ${calligraplan_KDEINIT_SRCS}) diff -Nru calligra-2.3.86/plan/kplato.dtd calligra-2.3.87/plan/kplato.dtd --- calligra-2.3.86/plan/kplato.dtd 2012-01-07 03:25:03.000000000 +0000 +++ calligra-2.3.87/plan/kplato.dtd 1970-01-01 00:00:00.000000000 +0000 @@ -1,100 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff -Nru calligra-2.3.86/plan/kptaboutdata.h calligra-2.3.87/plan/kptaboutdata.h --- calligra-2.3.86/plan/kptaboutdata.h 2012-01-07 03:25:03.000000000 +0000 +++ calligra-2.3.87/plan/kptaboutdata.h 2012-01-28 07:04:49.000000000 +0000 @@ -36,7 +36,7 @@ { KAboutData * aboutData=new KAboutData( "plan", QByteArray(), ki18nc("application name", "Plan"), KPLATO_VERSION, ki18n(KPLATO_DESCRIPTION), KAboutData::License_GPL, - ki18n("(c) 1998-2011, The Plan Team"), + ki18n("(c) 1998-2012, The Plan Team"), KLocalizedString(), "http://www.calligra.org/plan/" ); aboutData->addAuthor(ki18n("Thomas Zander")); // please don't re-add, I don't like getting personal emails :) diff -Nru calligra-2.3.86/plan/libs/kernel/kptproject.cpp calligra-2.3.87/plan/libs/kernel/kptproject.cpp --- calligra-2.3.86/plan/libs/kernel/kptproject.cpp 2012-01-07 03:25:03.000000000 +0000 +++ calligra-2.3.87/plan/libs/kernel/kptproject.cpp 2012-01-28 07:04:49.000000000 +0000 @@ -825,6 +825,9 @@ // l->setMonetaryDecimalSymbol( e.attribute( "monetary-decimal-symbol", l->monetaryDecimalSymbol() ) ); // l->setMonetaryThousandsSeparator( e.attribute( "monetary-thousands-separator", l->monetaryThousandsSeparator() ) ); + if ( e.hasAttribute( "currency-digits" ) ) { + l->setFracDigits( e.attribute( "currency-digits" ).toInt() ); + } if ( e.hasAttribute( "positive-monetary-sign-position" ) ) { l->setPositiveMonetarySignPosition( (KLocale::SignPosition)( e.attribute( "positive-monetary-sign-position" ).toInt() ) ); } @@ -1128,6 +1131,7 @@ loc.setAttribute( "currency-symbol", l->currencySymbol() ); // loc.setAttribute( "monetary-decimal-symbol", l->monetaryDecimalSymbol() ); // loc.setAttribute( "monetary-thousands-separator", l->monetaryThousandsSeparator() ); + loc.setAttribute( "currency-digits", l->fracDigits() ); loc.setAttribute( "positive-monetary-sign-position", l->positiveMonetarySignPosition() ); loc.setAttribute( "positive-prefix-currency-symbol", l->positivePrefixCurrencySymbol() ); loc.setAttribute( "negative-monetary-sign-position", l->negativeMonetarySignPosition() ); diff -Nru calligra-2.3.86/plan/libs/kernel/plan_schedulerplugin.desktop calligra-2.3.87/plan/libs/kernel/plan_schedulerplugin.desktop --- calligra-2.3.86/plan/libs/kernel/plan_schedulerplugin.desktop 2012-01-07 03:25:03.000000000 +0000 +++ calligra-2.3.87/plan/libs/kernel/plan_schedulerplugin.desktop 2012-01-28 07:04:49.000000000 +0000 @@ -1,11 +1,13 @@ [Desktop Entry] Name=Plan Scheduler Plugin Name[ca]=Connector de planificador del Plan +Name[ca@valencia]=Connector de planificador del Plan Name[da]=Skemalægnings-plugin til Plan Name[et]=Plani ajaplaneerijaplugin Name[it]=Estensione di pianificazione di Plan Name[nb]=Plan planleggingsprogramtillegg Name[nds]=Plan-Plaanmoduul +Name[pl]=Wtyczka programu planowania Plan Name[pt]='Plugin' de Calendarização do Plan Name[pt_BR]=Plugin de Calendário do Plan Name[ru]=Модуль планировщика diff -Nru calligra-2.3.86/plan/libs/models/kptitemmodelbase.h calligra-2.3.87/plan/libs/models/kptitemmodelbase.h --- calligra-2.3.86/plan/libs/models/kptitemmodelbase.h 2012-01-07 03:25:03.000000000 +0000 +++ calligra-2.3.87/plan/libs/models/kptitemmodelbase.h 2012-01-28 07:04:49.000000000 +0000 @@ -290,6 +290,9 @@ bool setData( const QModelIndex &index, const QVariant &value, int role ); QVariant headerData( int section, Qt::Orientation orientation, int role = Qt::DisplayRole ) const; + /// Return the sortorder to be used for @p column + virtual int sortRole( int /*column*/ ) const { return Qt::DisplayRole; } + signals: /// Connect to this signal if your model modifies data using undo commands. void executeCommand( KUndo2Command* ); diff -Nru calligra-2.3.86/plan/libs/models/kptnodeitemmodel.cpp calligra-2.3.87/plan/libs/models/kptnodeitemmodel.cpp --- calligra-2.3.86/plan/libs/models/kptnodeitemmodel.cpp 2012-01-07 03:25:03.000000000 +0000 +++ calligra-2.3.87/plan/libs/models/kptnodeitemmodel.cpp 2012-01-28 07:04:49.000000000 +0000 @@ -3866,6 +3866,25 @@ return QModelIndex(); } +int NodeItemModel::sortRole( int column ) const +{ + switch ( column ) { + case NodeModel::NodeStartTime: + case NodeModel::NodeEndTime: + case NodeModel::NodeActualStart: + case NodeModel::NodeActualFinish: + case NodeModel::NodeEarlyStart: + case NodeModel::NodeEarlyFinish: + case NodeModel::NodeLateStart: + case NodeModel::NodeLateFinish: + case NodeModel::NodeConstraintStart: + case NodeModel::NodeConstraintEnd: + return Qt::EditRole; + default: + break; + } + return Qt::DisplayRole; +} //---------------------------- class GeneralNodeItemModel::Object diff -Nru calligra-2.3.86/plan/libs/models/kptnodeitemmodel.h calligra-2.3.87/plan/libs/models/kptnodeitemmodel.h --- calligra-2.3.86/plan/libs/models/kptnodeitemmodel.h 2012-01-07 03:25:03.000000000 +0000 +++ calligra-2.3.87/plan/libs/models/kptnodeitemmodel.h 2012-01-28 07:04:49.000000000 +0000 @@ -321,6 +321,9 @@ bool projectShown() const { return m_projectshown; } + /// Return the sortorder to be used for @p column + virtual int sortRole( int column ) const; + signals: void nodeInserted( Node *node ); void projectShownChanged( bool ); diff -Nru calligra-2.3.86/plan/libs/models/kptresourceappointmentsmodel.cpp calligra-2.3.87/plan/libs/models/kptresourceappointmentsmodel.cpp --- calligra-2.3.86/plan/libs/models/kptresourceappointmentsmodel.cpp 2012-01-07 03:25:03.000000000 +0000 +++ calligra-2.3.87/plan/libs/models/kptresourceappointmentsmodel.cpp 2012-01-28 07:04:49.000000000 +0000 @@ -1328,6 +1328,18 @@ return QVariant(); } +int ResourceAppointmentsRowModel::sortRole( int column ) const +{ + switch ( column ) { + case ResourceAppointmentsRowModel::StartTime: + case ResourceAppointmentsRowModel::EndTime: + return Qt::EditRole; + default: + break; + } + return Qt::DisplayRole; +} + #ifndef QT_NO_DEBUG_STREAM QDebug operator<<( QDebug dbg, KPlato::ObjectType t) { diff -Nru calligra-2.3.86/plan/libs/models/kptresourceappointmentsmodel.h calligra-2.3.87/plan/libs/models/kptresourceappointmentsmodel.h --- calligra-2.3.86/plan/libs/models/kptresourceappointmentsmodel.h 2012-01-07 03:25:03.000000000 +0000 +++ calligra-2.3.87/plan/libs/models/kptresourceappointmentsmodel.h 2012-01-28 07:04:49.000000000 +0000 @@ -213,6 +213,9 @@ /// If @p idx is an appointment, return the node, else 0 Node *node( const QModelIndex &idx ) const; + /// Return the sortorder to be used for @p column + virtual int sortRole( int column ) const; + class Private; public slots: diff -Nru calligra-2.3.86/plan/libs/models/kptresourcemodel.cpp calligra-2.3.87/plan/libs/models/kptresourcemodel.cpp --- calligra-2.3.86/plan/libs/models/kptresourcemodel.cpp 2012-01-07 03:25:03.000000000 +0000 +++ calligra-2.3.87/plan/libs/models/kptresourcemodel.cpp 2012-01-28 07:04:49.000000000 +0000 @@ -1430,6 +1430,19 @@ return QModelIndex(); } +int ResourceItemModel::sortRole( int column ) const +{ + switch ( column ) { + case ResourceModel::ResourceAvailableFrom: + case ResourceModel::ResourceAvailableUntil: + return Qt::EditRole; + default: + break; + } + return Qt::DisplayRole; +} + + //------------------- ResourceItemSFModel::ResourceItemSFModel( QObject *parent ) : QSortFilterProxyModel( parent ) diff -Nru calligra-2.3.86/plan/libs/models/kptresourcemodel.h calligra-2.3.87/plan/libs/models/kptresourcemodel.h --- calligra-2.3.86/plan/libs/models/kptresourcemodel.h 2012-01-07 03:25:03.000000000 +0000 +++ calligra-2.3.87/plan/libs/models/kptresourcemodel.h 2012-01-28 07:04:49.000000000 +0000 @@ -131,6 +131,8 @@ QModelIndex insertGroup( ResourceGroup *g ); QModelIndex insertResource( ResourceGroup *g, Resource *r, Resource *after = 0 ); + virtual int sortRole( int column ) const; + protected slots: void slotResourceChanged( Resource* ); void slotResourceGroupChanged( ResourceGroup * ); diff -Nru calligra-2.3.86/plan/libs/models/kpttaskstatusmodel.cpp calligra-2.3.87/plan/libs/models/kpttaskstatusmodel.cpp --- calligra-2.3.86/plan/libs/models/kpttaskstatusmodel.cpp 2012-01-07 03:25:03.000000000 +0000 +++ calligra-2.3.87/plan/libs/models/kpttaskstatusmodel.cpp 2012-01-28 07:04:49.000000000 +0000 @@ -722,6 +722,26 @@ emit layoutChanged(); } +int TaskStatusItemModel::sortRole( int column ) const +{ + switch ( column ) { + case NodeModel::NodeStartTime: + case NodeModel::NodeEndTime: + case NodeModel::NodeActualStart: + case NodeModel::NodeActualFinish: + case NodeModel::NodeEarlyStart: + case NodeModel::NodeEarlyFinish: + case NodeModel::NodeLateStart: + case NodeModel::NodeLateFinish: + case NodeModel::NodeConstraintStart: + case NodeModel::NodeConstraintEnd: + return Qt::EditRole; + default: + break; + } + return Qt::DisplayRole; +} + } // namespace KPlato #include "kpttaskstatusmodel.moc" diff -Nru calligra-2.3.86/plan/libs/models/kpttaskstatusmodel.h calligra-2.3.87/plan/libs/models/kpttaskstatusmodel.h --- calligra-2.3.86/plan/libs/models/kpttaskstatusmodel.h 2012-01-07 03:25:03.000000000 +0000 +++ calligra-2.3.87/plan/libs/models/kpttaskstatusmodel.h 2012-01-28 07:04:49.000000000 +0000 @@ -90,6 +90,9 @@ void setWeekday( int day ) { m_weekday = day; } int weekday() const { return m_weekday; } + /// Return the sortorder to be used for @p column + virtual int sortRole( int column ) const; + public slots: virtual void setScheduleManager( ScheduleManager *sm ); virtual void refresh(); diff -Nru calligra-2.3.86/plan/libs/ui/kptviewbase.cpp calligra-2.3.87/plan/libs/ui/kptviewbase.cpp --- calligra-2.3.86/plan/libs/ui/kptviewbase.cpp 2012-01-07 03:25:03.000000000 +0000 +++ calligra-2.3.87/plan/libs/ui/kptviewbase.cpp 2012-01-28 07:04:49.000000000 +0000 @@ -35,6 +35,7 @@ #include #include +#include #include #include #include @@ -1253,6 +1254,17 @@ } } +ItemModelBase *TreeViewBase::itemModel() const +{ + QAbstractItemModel *m = model(); + QAbstractProxyModel *p = qobject_cast( m ); + while ( p ) { + m = p->sourceModel(); + p = qobject_cast( m ); + } + return qobject_cast( m ); +} + //---------------------- DoubleTreeViewPrintingDialog::DoubleTreeViewPrintingDialog( ViewBase *view, DoubleTreeViewBase *treeview, Project *project ) : PrintingDialog( view ), @@ -1535,15 +1547,29 @@ connect( m_rightview->header(), SIGNAL( sortIndicatorChanged( int, Qt::SortOrder ) ), SLOT( slotRightSortIndicatorChanged( int, Qt::SortOrder ) ) ); } -void DoubleTreeViewBase::slotLeftSortIndicatorChanged( int /*logicalIndex*/, Qt::SortOrder /*order*/ ) +void DoubleTreeViewBase::slotLeftSortIndicatorChanged( int logicalIndex, Qt::SortOrder /*order*/ ) { + QSortFilterProxyModel *sf = qobject_cast( model() ); + if ( sf ) { + ItemModelBase *m = m_rightview->itemModel(); + if ( m ) { + sf->setSortRole( m->sortRole( logicalIndex ) ); + } + } m_leftview->header()->setSortIndicatorShown( true ); // sorting controlled by left treeview, turn right off m_rightview->header()->setSortIndicatorShown( false ); } -void DoubleTreeViewBase::slotRightSortIndicatorChanged( int /*logicalIndex*/, Qt::SortOrder /*order*/ ) +void DoubleTreeViewBase::slotRightSortIndicatorChanged( int logicalIndex, Qt::SortOrder /*order*/ ) { + QSortFilterProxyModel *sf = qobject_cast( model() ); + if ( sf ) { + ItemModelBase *m = m_rightview->itemModel(); + if ( m ) { + sf->setSortRole( m->sortRole( logicalIndex ) ); + } + } m_rightview->header()->setSortIndicatorShown( true ); // sorting controlled by right treeview, turn left off m_leftview->header()->setSortIndicatorShown( false ); diff -Nru calligra-2.3.86/plan/libs/ui/kptviewbase.h calligra-2.3.87/plan/libs/ui/kptviewbase.h --- calligra-2.3.86/plan/libs/ui/kptviewbase.h 2012-01-07 03:25:03.000000000 +0000 +++ calligra-2.3.87/plan/libs/ui/kptviewbase.h 2012-01-28 07:04:49.000000000 +0000 @@ -366,6 +366,8 @@ QModelIndex firstVisibleIndex( const QModelIndex &idx ) const; + ItemModelBase *itemModel() const; + signals: /// Context menu requested from viewport at global position @p pos void contextMenuRequested( QModelIndex, const QPoint &pos ); diff -Nru calligra-2.3.86/plan/libs/ui/kptworkpackagemergepanel.ui calligra-2.3.87/plan/libs/ui/kptworkpackagemergepanel.ui --- calligra-2.3.86/plan/libs/ui/kptworkpackagemergepanel.ui 2012-01-07 03:25:03.000000000 +0000 +++ calligra-2.3.87/plan/libs/ui/kptworkpackagemergepanel.ui 2012-01-28 07:04:49.000000000 +0000 @@ -10,9 +10,6 @@ 331 - - - 0 diff -Nru calligra-2.3.86/plan/libs/ui/reports/reportdata.cpp calligra-2.3.87/plan/libs/ui/reports/reportdata.cpp --- calligra-2.3.86/plan/libs/ui/reports/reportdata.cpp 2012-01-07 03:25:03.000000000 +0000 +++ calligra-2.3.87/plan/libs/ui/reports/reportdata.cpp 2012-01-28 07:04:49.000000000 +0000 @@ -182,6 +182,9 @@ int col = fieldNumber( sort.field ); sf = new QSortFilterProxyModel( &m_model ); sf->setSourceModel( source_model ); + if ( itemModel() ) { + sf->setSortRole( itemModel()->sortRole( col ) ); + } sf->sort( col, sort.order ); source_model = sf; } diff -Nru calligra-2.3.86/plan/libs/ui/reports/reportview.cpp calligra-2.3.87/plan/libs/ui/reports/reportview.cpp --- calligra-2.3.86/plan/libs/ui/reports/reportview.cpp 2012-01-07 03:25:03.000000000 +0000 +++ calligra-2.3.87/plan/libs/ui/reports/reportview.cpp 2012-01-28 07:04:49.000000000 +0000 @@ -515,15 +515,14 @@ bool ReportView::loadContext( const KoXmlElement &context ) { - QDomDocument doc( "context" ); - QDomElement e = KoXml::asQDomElement( doc, context ).firstChildElement( "planreportdefinition" ); + KoXmlElement e = context.namedItem( "planreportdefinition" ).toElement(); if ( e.isNull() ) { - // try to handle old definition - e = KoXml::asQDomElement( doc, context ).firstChildElement( "kplatoreportdefinition" ); + e = context.namedItem( "kplatoreportdefinition" ).toElement(); } if ( ! e.isNull() ) { - m_design = QDomDocument( "context" ); - m_design.appendChild( e ); + QDomDocument doc( "context" ); + KoXml::asQDomElement( doc, e ); + m_design = doc; } else kDebug()<<"Invalid context xml"; slotRefreshView(); return true; diff -Nru calligra-2.3.86/plan/plan.desktop calligra-2.3.87/plan/plan.desktop --- calligra-2.3.86/plan/plan.desktop 2012-01-07 03:25:03.000000000 +0000 +++ calligra-2.3.87/plan/plan.desktop 2012-01-28 07:04:49.000000000 +0000 @@ -1,12 +1,14 @@ [Desktop Entry] Name=Plan Name[ca]=Plan +Name[ca@valencia]=Plan Name[cs]=Plan Name[da]=Plan Name[de]=Plan Name[el]=Plan Name[es]=Plan Name[et]=Plan +Name[hu]=Plan Name[it]=Plan Name[nb]=Plan Name[nds]=Plan diff -Nru calligra-2.3.86/plan/plan.dtd calligra-2.3.87/plan/plan.dtd --- calligra-2.3.86/plan/plan.dtd 1970-01-01 00:00:00.000000000 +0000 +++ calligra-2.3.87/plan/plan.dtd 2012-01-28 07:04:49.000000000 +0000 @@ -0,0 +1,317 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff -Nru calligra-2.3.86/plan/planpart.desktop calligra-2.3.87/plan/planpart.desktop --- calligra-2.3.86/plan/planpart.desktop 2012-01-07 03:25:03.000000000 +0000 +++ calligra-2.3.87/plan/planpart.desktop 2012-01-28 07:04:49.000000000 +0000 @@ -2,11 +2,13 @@ Name=Calligra Project Management Component Name[bg]=Компонент за управление на проекти в Calligra Name[ca]=Component de gestió de projectes del Calligra +Name[ca@valencia]=Component de gestió de projectes del Calligra Name[cs]=Komponenta Calligra pro správu projektů Name[da]=Calligra-komponent til projektstyring Name[el]=Συστατικό Calligra για διαχείριση έργων Name[es]=Componente de gestión de proyectos de Calligra Name[et]=Calligra projektihalduse komponent +Name[hu]=Calligra projektkezelő komponens Name[it]=Componente per la gestione dei progetti di Calligra Name[nb]=Calligra-komponent for prosjektstyring Name[nds]=Calligra-Komponent för Projektpleeg diff -Nru calligra-2.3.86/plan/plugins/filters/icalendar/export/plan_icalendar_export.desktop calligra-2.3.87/plan/plugins/filters/icalendar/export/plan_icalendar_export.desktop --- calligra-2.3.86/plan/plugins/filters/icalendar/export/plan_icalendar_export.desktop 2012-01-07 03:25:03.000000000 +0000 +++ calligra-2.3.87/plan/plugins/filters/icalendar/export/plan_icalendar_export.desktop 2012-01-28 07:04:49.000000000 +0000 @@ -8,6 +8,7 @@ Name=Plan iCalendar Export Filter Name[bg]=Филтър за изнасяне от Plan в iCalendar Name[ca]=Filtre d'exportació iCalendar del Plan +Name[ca@valencia]=Filtre d'exportació iCalendar del Plan Name[da]=iCalendar-eksportfilter til Plan Name[el]=Φίλτρο εξαγωγής Plan iCalendar Name[es]=Filtro de Plan de exportación a iCalendar diff -Nru calligra-2.3.86/plan/plugins/filters/kplato/import/plan_kplato_import.desktop calligra-2.3.87/plan/plugins/filters/kplato/import/plan_kplato_import.desktop --- calligra-2.3.86/plan/plugins/filters/kplato/import/plan_kplato_import.desktop 2012-01-07 03:25:03.000000000 +0000 +++ calligra-2.3.87/plan/plugins/filters/kplato/import/plan_kplato_import.desktop 2012-01-28 07:04:49.000000000 +0000 @@ -3,6 +3,7 @@ Name=Plan KPlato Import Filter Name[bg]=Филтър за внасяне от KPlato в Plan Name[ca]=Filtre d'importació KPlato per al Plan +Name[ca@valencia]=Filtre d'importació KPlato per al Plan Name[da]=KPlato-importfilter til Plan Name[el]=Φίλτρο εισαγωγής Plan KPlato Name[es]=Filtro de Plan de importación de KPlato diff -Nru calligra-2.3.86/plan/plugins/schedulers/rcps/planrcpsscheduler.desktop calligra-2.3.87/plan/plugins/schedulers/rcps/planrcpsscheduler.desktop --- calligra-2.3.86/plan/plugins/schedulers/rcps/planrcpsscheduler.desktop 2012-01-07 03:25:03.000000000 +0000 +++ calligra-2.3.87/plan/plugins/schedulers/rcps/planrcpsscheduler.desktop 2012-01-28 07:04:49.000000000 +0000 @@ -33,6 +33,7 @@ Name[zh_TW]=RCPS 排程器 Comment=Genetics based Resource Constrained Project Scheduler Comment[ca]=Recurs de conflictes de planificador de projectes basat en la genètica +Comment[ca@valencia]=Recurs de conflictes de planificador de projectes basat en la genètica Comment[da]=Genetikbaseret projektskemalægning med begrænsede ressourcer Comment[el]=Χρονοπρογραμματιστής έργων με περιορισμένους πόρους με βάση τη Γενετική Comment[en_GB]=Genetics based Resource Constrained Project Scheduler diff -Nru calligra-2.3.86/plan/plugins/schedulers/tj/CMakeLists.txt calligra-2.3.87/plan/plugins/schedulers/tj/CMakeLists.txt --- calligra-2.3.86/plan/plugins/schedulers/tj/CMakeLists.txt 2012-01-07 03:25:03.000000000 +0000 +++ calligra-2.3.87/plan/plugins/schedulers/tj/CMakeLists.txt 2012-01-28 07:04:49.000000000 +0000 @@ -42,6 +42,8 @@ koodf ) +set_target_properties( plantjscheduler PROPERTIES DEFINE_SYMBOL MAKE_KPLATOTJ_LIB ) + install( TARGETS plantjscheduler DESTINATION ${PLUGIN_INSTALL_DIR} ) ########### install files ############### diff -Nru calligra-2.3.86/plan/plugins/schedulers/tj/plantjscheduler.desktop calligra-2.3.87/plan/plugins/schedulers/tj/plantjscheduler.desktop --- calligra-2.3.86/plan/plugins/schedulers/tj/plantjscheduler.desktop 2012-01-07 03:25:03.000000000 +0000 +++ calligra-2.3.87/plan/plugins/schedulers/tj/plantjscheduler.desktop 2012-01-28 07:04:49.000000000 +0000 @@ -5,10 +5,12 @@ Name=TJ Scheduler Name[ca]=Planificador TJ +Name[ca@valencia]=Planificador TJ Name[da]=TJ-skemalægning Name[et]=TJ planeerija Name[it]=Pianificatore TJ Name[nb]=TJ planlegger +Name[pl]=Program planujący TJ Name[pt]=Calendarização TJ Name[pt_BR]=Calendarização TJ Name[ru]=Планировщик TJ @@ -19,10 +21,12 @@ Name[zh_TW]=TJ 排程器 Comment=The TaskJuggler scheduler Comment[ca]=El planificador TakJuggler +Comment[ca@valencia]=El planificador TakJuggler Comment[da]=TaskJugglers skemalægning Comment[et]=TaskJuggleri planeerija Comment[it]=La pianificazione di TaskJuggler Comment[nb]=Planleggeren TaskJuggler +Comment[pl]=Program planujący TaskJuggler (ŻąglerZadań) Comment[pt]=O escalonamento do TaskJuggler Comment[pt_BR]=O calendarizador da TaskJuggler Comment[ru]=Планировщик TaskJuggler diff -Nru calligra-2.3.86/plan/plugins/scripting/krossmoduleplan.desktop calligra-2.3.87/plan/plugins/scripting/krossmoduleplan.desktop --- calligra-2.3.86/plan/plugins/scripting/krossmoduleplan.desktop 2012-01-07 03:25:03.000000000 +0000 +++ calligra-2.3.87/plan/plugins/scripting/krossmoduleplan.desktop 2012-01-28 07:04:49.000000000 +0000 @@ -49,7 +49,7 @@ Comment=Allow execution of scripts Comment[bg]=Изпълнение на скриптове Comment[ca]=Permet l'execució d'scripts -Comment[ca@valencia]=Permet l'execució de seqüències +Comment[ca@valencia]=Permet l'execució d'scripts Comment[cs]=Umožní spouštění skriptů Comment[da]=Tillad kørsel af script Comment[de]=Ermöglicht das Ausführen von Skripten diff -Nru calligra-2.3.86/plan/workpackage/planwork.desktop calligra-2.3.87/plan/workpackage/planwork.desktop --- calligra-2.3.86/plan/workpackage/planwork.desktop 2012-01-07 03:25:03.000000000 +0000 +++ calligra-2.3.87/plan/workpackage/planwork.desktop 2012-01-28 07:04:49.000000000 +0000 @@ -1,6 +1,7 @@ [Desktop Entry] Name=Plan WorkPackage Handler Name[ca]=Gestor de paquets de feina del Plan +Name[ca@valencia]=Gestor de paquets de faena del Plan Name[da]=Håndtering af WorkPackage til Plan Name[el]=Χειριστής πακέτου εργασίας Plan Name[et]=Plani töölõikude käitleja diff -Nru calligra-2.3.86/plan/workpackage/planworkpart.desktop calligra-2.3.87/plan/workpackage/planworkpart.desktop --- calligra-2.3.86/plan/workpackage/planworkpart.desktop 2012-01-07 03:25:03.000000000 +0000 +++ calligra-2.3.87/plan/workpackage/planworkpart.desktop 2012-01-28 07:04:49.000000000 +0000 @@ -2,11 +2,13 @@ Name=Calligra Project Management Component Name[bg]=Компонент за управление на проекти в Calligra Name[ca]=Component de gestió de projectes del Calligra +Name[ca@valencia]=Component de gestió de projectes del Calligra Name[cs]=Komponenta Calligra pro správu projektů Name[da]=Calligra-komponent til projektstyring Name[el]=Συστατικό Calligra για διαχείριση έργων Name[es]=Componente de gestión de proyectos de Calligra Name[et]=Calligra projektihalduse komponent +Name[hu]=Calligra projektkezelő komponens Name[it]=Componente per la gestione dei progetti di Calligra Name[nb]=Calligra-komponent for prosjektstyring Name[nds]=Calligra-Komponent för Projektpleeg diff -Nru calligra-2.3.86/plugins/chartshape/chartshape.desktop calligra-2.3.87/plugins/chartshape/chartshape.desktop --- calligra-2.3.86/plugins/chartshape/chartshape.desktop 2012-01-07 03:25:03.000000000 +0000 +++ calligra-2.3.87/plugins/chartshape/chartshape.desktop 2012-01-28 07:04:49.000000000 +0000 @@ -11,7 +11,7 @@ Name[es]=Forma de gráfica Name[et]=Diagrammikujund Name[fa]=شکل نمودار -Name[fi]=Kaaviohahmo +Name[fi]=Kaaviomuoto Name[fr]=Forme de diagramme Name[fy]=Foarm fan de grafyk Name[ga]=Giuirléid Chairte diff -Nru calligra-2.3.86/plugins/chartshape/ChartTableModel.cpp calligra-2.3.87/plugins/chartshape/ChartTableModel.cpp --- calligra-2.3.86/plugins/chartshape/ChartTableModel.cpp 2012-01-07 03:25:03.000000000 +0000 +++ calligra-2.3.87/plugins/chartshape/ChartTableModel.cpp 2012-01-28 07:04:49.000000000 +0000 @@ -96,9 +96,10 @@ setRowCount( 0 ); setColumnCount( 0 ); - //const QDomNode &node = tableElement.asQDomNode( QDomDocument() ); + //QDomDocument doc; + //KoXml::asQDomElement( doc, tableElement ); //QTextStream stream(stdout); - //stream << node; + //stream << doc.documentElement(); int row = 0; KoXmlElement n; diff -Nru calligra-2.3.86/plugins/chartshape/kchartpart.desktop calligra-2.3.87/plugins/chartshape/kchartpart.desktop --- calligra-2.3.86/plugins/chartshape/kchartpart.desktop 2012-01-07 03:25:03.000000000 +0000 +++ calligra-2.3.87/plugins/chartshape/kchartpart.desktop 2012-01-28 07:04:49.000000000 +0000 @@ -2,6 +2,7 @@ Name=Calligra Chart Component Name[bg]=Компонент за диаграми в Calligra Name[ca]=Component de diagrames del Calligra +Name[ca@valencia]=Component de diagrames del Calligra Name[cs]=Komponenta Calligra pro grafy Name[da]=Calligra-komponent til diagrammer Name[et]=Calligra diagrammikomponent diff -Nru calligra-2.3.86/plugins/chartshape/kdchart/kdablibfakes/src/KDABLibFakes.h calligra-2.3.87/plugins/chartshape/kdchart/kdablibfakes/src/KDABLibFakes.h --- calligra-2.3.86/plugins/chartshape/kdchart/kdablibfakes/src/KDABLibFakes.h 2012-01-07 03:25:03.000000000 +0000 +++ calligra-2.3.87/plugins/chartshape/kdchart/kdablibfakes/src/KDABLibFakes.h 2012-01-28 07:04:49.000000000 +0000 @@ -48,7 +48,7 @@ // We use our own ISNAN / ISINF in the code to detect // that we defined them. // reason: Windows / MacOS do not have isnan() / isinf() -#if defined (Q_OS_WIN) && defined(_MSC_VER) +#if defined (Q_OS_WIN) #include #define ISNAN(x ) _isnan(x ) #define ISINF(x ) (!(_finite(x ) + _isnan(x ) ) ) diff -Nru calligra-2.3.86/plugins/commentshape/commentshape.desktop calligra-2.3.87/plugins/commentshape/commentshape.desktop --- calligra-2.3.86/plugins/commentshape/commentshape.desktop 2012-01-07 03:25:03.000000000 +0000 +++ calligra-2.3.87/plugins/commentshape/commentshape.desktop 2012-01-28 07:04:49.000000000 +0000 @@ -10,6 +10,7 @@ Name[en_GB]=Comment Shape Name[es]=Forma de comentario Name[et]=Kommentaarikujund +Name[fi]=Kommenttimuoto Name[ga]=Giuirléid Tráchta Name[it]=Forma di commento Name[ja]=コメントシェイプ diff -Nru calligra-2.3.86/plugins/dockers/calligradockers.desktop calligra-2.3.87/plugins/dockers/calligradockers.desktop --- calligra-2.3.86/plugins/dockers/calligradockers.desktop 2012-01-07 03:25:03.000000000 +0000 +++ calligra-2.3.87/plugins/dockers/calligradockers.desktop 2012-01-28 07:04:49.000000000 +0000 @@ -1,6 +1,7 @@ [Desktop Entry] Name=Calligra Dockers plugin Name[ca]=Connector de Dockers del Calligra +Name[ca@valencia]=Connector de Dockers del Calligra Name[cs]=Modul doků Calligra Name[da]=Dokker-plugin til Calligra Name[es]=Complemento de ventanas acoplables de Karbon diff -Nru calligra-2.3.86/plugins/formulashape/formulashape.desktop calligra-2.3.87/plugins/formulashape/formulashape.desktop --- calligra-2.3.86/plugins/formulashape/formulashape.desktop 2012-01-07 03:25:03.000000000 +0000 +++ calligra-2.3.87/plugins/formulashape/formulashape.desktop 2012-01-28 07:04:49.000000000 +0000 @@ -9,7 +9,7 @@ Name[en_GB]=Formula Shape Name[es]=Forma de fórmula Name[et]=Valemikujund -Name[fi]=Kaavahahmo +Name[fi]=Kaavamuoto Name[fr]=Forme de formule Name[fy]=Formule foarm Name[ga]=Giuirléid Fhoirmle diff -Nru calligra-2.3.86/plugins/formulashape/kformulapart.desktop calligra-2.3.87/plugins/formulashape/kformulapart.desktop --- calligra-2.3.86/plugins/formulashape/kformulapart.desktop 2012-01-07 03:25:03.000000000 +0000 +++ calligra-2.3.87/plugins/formulashape/kformulapart.desktop 2012-01-28 07:04:49.000000000 +0000 @@ -1,6 +1,7 @@ [Desktop Entry] Name=Calligra Formula Component Name[ca]=Component de fórmules del Calligra +Name[ca@valencia]=Component de fórmules del Calligra Name[cs]=Komponenta Calligra pro vzorce Name[da]=Calligra-komponent til formler Name[es]=Componente Formula de Calligra diff -Nru calligra-2.3.86/plugins/kexi/spreadsheet/keximigrate_spreadsheet.desktop calligra-2.3.87/plugins/kexi/spreadsheet/keximigrate_spreadsheet.desktop --- calligra-2.3.86/plugins/kexi/spreadsheet/keximigrate_spreadsheet.desktop 2012-01-07 03:25:03.000000000 +0000 +++ calligra-2.3.87/plugins/kexi/spreadsheet/keximigrate_spreadsheet.desktop 2012-01-28 07:04:49.000000000 +0000 @@ -1,10 +1,13 @@ [Desktop Entry] Name=Spreadsheet Name[ca]=Full de càlcul +Name[ca@valencia]=Full de càlcul Name[cs]=Sešit +Name[de]=Tabellenkalkulation Name[et]=Arvutustabel Name[it]=Foglio di calcolo Name[nb]=Regneark +Name[pl]=Arkusz kalkulacyjny Name[pt]=Folha de cálculo Name[pt_BR]=Planilha Name[ru]=Таблица @@ -16,9 +19,11 @@ Name[zh_TW]=試算表 Comment=Spreadsheet Import Plugin for Kexi Comment[ca]=Connector d'importació de fulls de dades per al Kexi +Comment[ca@valencia]=Connector d'importació de fulls de dades per al Kexi Comment[et]=Kexi arvutustabeli impordiplugin Comment[it]=Estensione di importazione foglio elettronico di Kexi Comment[nb]=Regneark import-programtillegg for Kexi +Comment[pl]=Wtyczka importu arkusza kalkulacyjnego dla Kexi Comment[pt]='Plugin' de Importação de Folhas de Cálculo para o Kexi Comment[pt_BR]=Plugin de Importação de Planilha para o Kexi Comment[ru]=Модуль импорта таблиц для Kexi diff -Nru calligra-2.3.86/plugins/mapshape/mapshape.desktop calligra-2.3.87/plugins/mapshape/mapshape.desktop --- calligra-2.3.86/plugins/mapshape/mapshape.desktop 2012-01-07 03:25:03.000000000 +0000 +++ calligra-2.3.87/plugins/mapshape/mapshape.desktop 2012-01-28 07:04:49.000000000 +0000 @@ -1,10 +1,14 @@ [Desktop Entry] Name=Map Shape Name[ca]=Forma de mapes +Name[ca@valencia]=Forma de mapes Name[cs]=Tvar mapy +Name[de]=Karten-Objekt Name[et]=Kaardikujund +Name[fi]=Karttamuoto Name[it]=Forma di mappa Name[nb]=Kartform +Name[pl]=Kształt mapy Name[pt]=Forma de Mapa Name[pt_BR]=Forma de mapa Name[ru]=Фигура карты diff -Nru calligra-2.3.86/plugins/musicshape/musicshape.desktop calligra-2.3.87/plugins/musicshape/musicshape.desktop --- calligra-2.3.86/plugins/musicshape/musicshape.desktop 2012-01-07 03:25:03.000000000 +0000 +++ calligra-2.3.87/plugins/musicshape/musicshape.desktop 2012-01-28 07:04:49.000000000 +0000 @@ -9,7 +9,7 @@ Name[en_GB]=Music Shape Name[es]=Forma musical Name[et]=Muusikakujund -Name[fi]=Musiikkihahmo +Name[fi]=Musiikkimuoto Name[fr]=Forme musique Name[fy]=Musyk foarm Name[ga]=Giuirléid Cheoil diff -Nru calligra-2.3.86/plugins/pathshapes/pathshapes.desktop calligra-2.3.87/plugins/pathshapes/pathshapes.desktop --- calligra-2.3.86/plugins/pathshapes/pathshapes.desktop 2012-01-07 03:25:03.000000000 +0000 +++ calligra-2.3.87/plugins/pathshapes/pathshapes.desktop 2012-01-28 07:04:49.000000000 +0000 @@ -9,7 +9,7 @@ Name[en_GB]=Path Shapes Name[es]=Formas de trazo Name[et]=Kompleksjoone kujundid -Name[fi]=Polkuhahmot +Name[fi]=Polkumuodot Name[fr]=Formes d'emplacement Name[fy]=Paad foarmen Name[ga]=Giuirléidí Conaire diff -Nru calligra-2.3.86/plugins/pictureshape/pictureshape.desktop calligra-2.3.87/plugins/pictureshape/pictureshape.desktop --- calligra-2.3.86/plugins/pictureshape/pictureshape.desktop 2012-01-07 03:25:03.000000000 +0000 +++ calligra-2.3.87/plugins/pictureshape/pictureshape.desktop 2012-01-28 07:04:49.000000000 +0000 @@ -8,7 +8,7 @@ Name[en_GB]=Picture Shape Name[es]=Forma de imagen Name[et]=Pildikujund -Name[fi]=Kuvahahmo +Name[fi]=Kuvamuoto Name[fr]=Forme image Name[fy]=Foto foarm Name[ga]=Giuirléid Phictiúir diff -Nru calligra-2.3.86/plugins/pictureshape/PictureTool.cpp calligra-2.3.87/plugins/pictureshape/PictureTool.cpp --- calligra-2.3.86/plugins/pictureshape/PictureTool.cpp 2012-01-07 03:25:03.000000000 +0000 +++ calligra-2.3.87/plugins/pictureshape/PictureTool.cpp 2012-01-28 07:04:49.000000000 +0000 @@ -107,7 +107,15 @@ } -void PictureTool::mouseDoubleClickEvent( KoPointerEvent *event ) +void PictureTool::mousePressEvent(KoPointerEvent *event) +{ + if (event->button() == Qt::RightButton) { + event->ignore(); + } + +} + +void PictureTool::mouseDoubleClickEvent(KoPointerEvent *event) { if(canvas()->shapeManager()->shapeAt(event->point) != m_pictureshape) { event->ignore(); // allow the event to be used by another diff -Nru calligra-2.3.86/plugins/pictureshape/PictureTool.h calligra-2.3.87/plugins/pictureshape/PictureTool.h --- calligra-2.3.86/plugins/pictureshape/PictureTool.h 2012-01-07 03:25:03.000000000 +0000 +++ calligra-2.3.87/plugins/pictureshape/PictureTool.h 2012-01-28 07:04:49.000000000 +0000 @@ -34,7 +34,7 @@ /// reimplemented from KoToolBase virtual void paint(QPainter&, const KoViewConverter&) {} /// reimplemented from KoToolBase - virtual void mousePressEvent(KoPointerEvent*) {} + virtual void mousePressEvent(KoPointerEvent*); /// reimplemented from superclass virtual void mouseDoubleClickEvent(KoPointerEvent *event); /// reimplemented from KoToolBase diff -Nru calligra-2.3.86/plugins/reporting/barcode/koreport_barcodeplugin.desktop calligra-2.3.87/plugins/reporting/barcode/koreport_barcodeplugin.desktop --- calligra-2.3.86/plugins/reporting/barcode/koreport_barcodeplugin.desktop 2012-01-07 03:25:03.000000000 +0000 +++ calligra-2.3.87/plugins/reporting/barcode/koreport_barcodeplugin.desktop 2012-01-28 07:04:49.000000000 +0000 @@ -1,9 +1,11 @@ [Desktop Entry] Name=Barcode Report Plugin Name[ca]=Connector d'informes de codi de barres +Name[ca@valencia]=Connector d'informes de codi de barres Name[et]=Aruande ribakoodiplugin Name[it]=Estensione rapporti codici a barre Name[nb]=Programtillegg for Strekkode-rapport +Name[pl]=Wtyczka sprawozdania kodu paskowego Name[pt]='Plugin' de Relatório de Códigos de Barras Name[pt_BR]=Plugin de código de barras para relatório Name[ru]=Модуль считывания штрих-кодов @@ -13,10 +15,12 @@ Name[zh_TW]=條碼報告外掛程式 Comment=KoReport Barcode Plugin Comment[ca]=Connector de codi de barres KoReport +Comment[ca@valencia]=Connector de codi de barres KoReport Comment[da]=Stregkode-plugin til KoReport Comment[et]=KoReporti ribakoodiplugin Comment[it]=Estensione per codici a barre di KoReport Comment[nb]=KoReport strekkode-programtillegg +Comment[pl]=Wtyczka kodu paskowego dla KoReport Comment[pt]='Plugin' de Códigos de Barras do KoReport Comment[pt_BR]=Plugin de códigos de barra do KoReport Comment[ru]=Модуль считывания штрих-кодов KoReport diff -Nru calligra-2.3.86/plugins/reporting/chart/koreport_chartplugin.desktop calligra-2.3.87/plugins/reporting/chart/koreport_chartplugin.desktop --- calligra-2.3.86/plugins/reporting/chart/koreport_chartplugin.desktop 2012-01-07 03:25:03.000000000 +0000 +++ calligra-2.3.87/plugins/reporting/chart/koreport_chartplugin.desktop 2012-01-28 07:04:49.000000000 +0000 @@ -1,9 +1,11 @@ [Desktop Entry] Name=Chart Report Plugin Name[ca]=Connector d'informes de diagrames +Name[ca@valencia]=Connector d'informes de diagrames Name[et]=Aruande diagrammiplugin Name[it]=Estensione rapporti grafici Name[nb]=Programtillegg for diagramrapport +Name[pl]=Wtyczka sprawozdania wykresu Name[pt]='Plugin' Web de Relatórios de Gráficos Name[pt_BR]=Plugin de mapas para relatório Name[ru]=Модуль диаграмм для отчётов @@ -13,11 +15,13 @@ Name[zh_TW]=圖表報告外掛程式 Comment=KoReport Chart Plugin Comment[ca]=Connector de diagrames KoReport +Comment[ca@valencia]=Connector de diagrames KoReport Comment[da]=Diagram-plugin til KoReport Comment[es]=Complemento de diagramas de KoReport Comment[et]=KoReporti diagrammiplugin Comment[it]=Estensione per i grafici di KoReport Comment[nb]=KoReport programtillegg for diagrammer +Comment[pl]=Wtyczka wykresu dla KoReport Comment[pt]='Plugin' de Gráficos do KoReport Comment[pt_BR]=Plugin de gráficos do KoReport Comment[ru]=Модуль диаграмм для отчётов KoReport diff -Nru calligra-2.3.86/plugins/reporting/maps/koreport_mapsplugin.desktop calligra-2.3.87/plugins/reporting/maps/koreport_mapsplugin.desktop --- calligra-2.3.86/plugins/reporting/maps/koreport_mapsplugin.desktop 2012-01-07 03:25:03.000000000 +0000 +++ calligra-2.3.87/plugins/reporting/maps/koreport_mapsplugin.desktop 2012-01-28 07:04:49.000000000 +0000 @@ -1,9 +1,11 @@ [Desktop Entry] Name=Maps Report Plugin Name[ca]=Connector d'informes de mapes +Name[ca@valencia]=Connector d'informes de mapes Name[et]=Aruande kaardiplugin Name[it]=Estensione rapporti mappe Name[nb]=Programtillegg for kartrapport +Name[pl]=Wtyczka sprawozdania map Name[pt]='Plugin' de Relatório de Mapas Name[pt_BR]=Plugin de mapas para relatório Name[ru]=Модуль карт для отчётов @@ -13,11 +15,13 @@ Name[zh_TW]=地圖報告外掛程式 Comment=Calligra Reports Maps Plugin Comment[ca]=Connector d'informes de maps del Calligra +Comment[ca@valencia]=Connector d'informes de maps del Calligra Comment[da]=Kort-plugin til Calligra Reports Comment[es]=Complemento de mapas de informes de Calligra Comment[et]=Calligra aruannete kaardiplugin Comment[it]=Estensione rapporti mappe di Calligra Comment[nb]=Kart-programtillegg for Calligra-rapporter +Comment[pl]=Wtyczka sprawozdania map dla Calligra Comment[pt]='Plugin' de Mapas dos Relatórios do Calligra Comment[pt_BR]=Plugin de mapas dos relatórios do Calligra Comment[ru]=Модуль карт Calligra для отчётов diff -Nru calligra-2.3.86/plugins/reporting/shape/koreport_shapeplugin.desktop calligra-2.3.87/plugins/reporting/shape/koreport_shapeplugin.desktop --- calligra-2.3.86/plugins/reporting/shape/koreport_shapeplugin.desktop 2012-01-07 03:25:03.000000000 +0000 +++ calligra-2.3.87/plugins/reporting/shape/koreport_shapeplugin.desktop 2012-01-28 07:04:49.000000000 +0000 @@ -1,9 +1,11 @@ [Desktop Entry] Name=Shape Report Plugin Name[ca]=Connector d'informes de forma +Name[ca@valencia]=Connector d'informes de forma Name[et]=Aruande kujundiplugin Name[it]=Estensione rapporti forme Name[nb]=Programtillegg for formrapport +Name[pl]=Wtyczka sprawozdania kształtu Name[pt]='Plugin' de Relatório de Formas Name[pt_BR]=Plugin de forma para relatório Name[ru]=Модуль фигур для отчётов @@ -13,12 +15,14 @@ Name[zh_TW]=元件報告外掛程式 Comment=KoReport Shape Plugin Comment[ca]=Connector de forma KoReport +Comment[ca@valencia]=Connector de forma KoReport Comment[da]=Form-plugin til KoReport Comment[es]=Complemento de forma de KoReport Comment[et]=KoReporti kujundiplugin Comment[it]=Estensione per le forme di KoReport Comment[nb]=Programtillegg for KoReport form Comment[nds]=Element-Moduul för KoReport +Comment[pl]=Wtyczka kształtu dla KoReport Comment[pt]='Plugin' de Formas Gráficas do KoReport Comment[pt_BR]=Plugin de formas do KoReport Comment[ru]=Модуль фигур для отчётов KoReport diff -Nru calligra-2.3.86/plugins/reporting/web/koreport_webplugin.desktop calligra-2.3.87/plugins/reporting/web/koreport_webplugin.desktop --- calligra-2.3.86/plugins/reporting/web/koreport_webplugin.desktop 2012-01-07 03:25:03.000000000 +0000 +++ calligra-2.3.87/plugins/reporting/web/koreport_webplugin.desktop 2012-01-28 07:04:49.000000000 +0000 @@ -1,9 +1,11 @@ [Desktop Entry] Name=Web Report Plugin Name[ca]=Connector d'informes web +Name[ca@valencia]=Connector d'informes web Name[et]=Aruande veebiplugin Name[it]=Estensione rapporti web Name[nb]=Programtillegg for vevrapport +Name[pl]=Wtyczka sprawozdania sieci Name[pt]='Plugin' de Relatório Web Name[pt_BR]=Plugin de Web para relatório Name[ru]=Модуль веб-отчётов @@ -13,9 +15,11 @@ Name[zh_TW]=網頁報告外掛程式 Comment=Calligra Reports web Plugin Comment[ca]=Connector d'informes web del Calligra +Comment[ca@valencia]=Connector d'informes web del Calligra Comment[et]=Calligra aruannete veebiplugin Comment[it]=Estensione rapporti web di Calligra Comment[nb]=Vev-programtillegg for Calligra-rapporter +Comment[pl]=Wtyczka sprawozdania sieci dla Calligra Comment[pt]='Plugin' Web de Relatórios do Calligra Comment[pt_BR]=Plugin da Web para relatórios do Calligra Comment[ru]=Модуль веб-отчётов Calligra diff -Nru calligra-2.3.86/plugins/textediting/autocorrection/data/en_US.xml calligra-2.3.87/plugins/textediting/autocorrection/data/en_US.xml --- calligra-2.3.86/plugins/textediting/autocorrection/data/en_US.xml 2012-01-07 03:25:03.000000000 +0000 +++ calligra-2.3.87/plugins/textediting/autocorrection/data/en_US.xml 2012-01-28 07:04:49.000000000 +0000 @@ -119,7 +119,6 @@ - diff -Nru calligra-2.3.86/plugins/textediting/spellcheck/spellcheck.desktop calligra-2.3.87/plugins/textediting/spellcheck/spellcheck.desktop --- calligra-2.3.86/plugins/textediting/spellcheck/spellcheck.desktop 2012-01-07 03:25:03.000000000 +0000 +++ calligra-2.3.87/plugins/textediting/spellcheck/spellcheck.desktop 2012-01-28 07:04:49.000000000 +0000 @@ -18,6 +18,7 @@ Name[he]=תוסף בודק איות Name[hi]=वर्तनीजांच प्लगइन Name[hne]=हिज्जाजांच प्लगइन +Name[hu]=Helyesírás-ellenőrző bővítmény Name[it]=Estensione di correzione ortografica Name[ja]=スペルチェックプラグイン Name[kk]=Емле тексеру плагині diff -Nru calligra-2.3.86/plugins/textshape/CMakeLists.txt calligra-2.3.87/plugins/textshape/CMakeLists.txt --- calligra-2.3.86/plugins/textshape/CMakeLists.txt 2012-01-07 03:25:03.000000000 +0000 +++ calligra-2.3.87/plugins/textshape/CMakeLists.txt 2012-01-28 07:04:49.000000000 +0000 @@ -35,6 +35,8 @@ dialogs/StylesWidget.cpp dialogs/SpecialButton.cpp + dialogs/StylesCombo.cpp + dialogs/StylesComboPreview.cpp dialogs/SimpleCharacterWidget.cpp dialogs/SimpleParagraphWidget.cpp dialogs/SimpleTableWidget.cpp @@ -75,7 +77,6 @@ dialogs/AcceptRejectChangeDialog.cpp dialogs/TrackedChangeModel.cpp dialogs/TrackedChangeManager.cpp - dialogs/ChangeTrackingOptionsWidget.cpp dialogs/BibliographyConfigureDialog.cpp dialogs/TableOfContentsConfigure.cpp dialogs/TableOfContentsStyleConfigure.cpp @@ -127,7 +128,6 @@ dialogs/ChangeConfigureDialog.ui dialogs/AcceptRejectChangeDialog.ui dialogs/TrackedChangeManager.ui - dialogs/ChangeTrackingOptionsWidget.ui ) kde4_add_plugin(textshape ${textshape_SRCS}) diff -Nru calligra-2.3.86/plugins/textshape/commands/TextCutCommand.cpp calligra-2.3.87/plugins/textshape/commands/TextCutCommand.cpp --- calligra-2.3.86/plugins/textshape/commands/TextCutCommand.cpp 2012-01-07 03:25:03.000000000 +0000 +++ calligra-2.3.87/plugins/textshape/commands/TextCutCommand.cpp 2012-01-28 07:04:49.000000000 +0000 @@ -48,8 +48,6 @@ if (te == 0) return; - te->deleteChar(KoTextEditor::NextChar, - m_tool->m_actionShowChanges->isChecked(), - m_tool->canvas()->shapeController()); + te->deleteChar(KoTextEditor::NextChar, m_tool->canvas()->shapeController()); } } diff -Nru calligra-2.3.86/plugins/textshape/dialogs/ParagraphBulletsNumbers.cpp calligra-2.3.87/plugins/textshape/dialogs/ParagraphBulletsNumbers.cpp --- calligra-2.3.86/plugins/textshape/dialogs/ParagraphBulletsNumbers.cpp 2012-01-07 03:25:03.000000000 +0000 +++ calligra-2.3.87/plugins/textshape/dialogs/ParagraphBulletsNumbers.cpp 2012-01-28 07:04:49.000000000 +0000 @@ -165,7 +165,6 @@ } if (savingStyle->listStyle() == 0) { KoListStyle *listStyle = new KoListStyle(savingStyle); - listStyle->setStyleId(style); savingStyle->setListStyle(listStyle); } KoListStyle *listStyle = savingStyle->listStyle(); @@ -197,7 +196,7 @@ } if (style == KoListStyle::CustomCharItem) { - llp.setBulletCharacter(currentRow == m_blankCharIndex ? QChar() : widget.customCharacter->text().remove('&').at(0)); + llp.setBulletCharacter((currentRow == m_blankCharIndex) ? QChar() : widget.customCharacter->text().remove('&').at(0)); } // it is important to not use 45 for CustomCharItem as it is also char based else if (!KoListStyle::isNumberingStyle(style)) { diff -Nru calligra-2.3.86/plugins/textshape/dialogs/ParagraphIndentSpacing.cpp calligra-2.3.87/plugins/textshape/dialogs/ParagraphIndentSpacing.cpp --- calligra-2.3.86/plugins/textshape/dialogs/ParagraphIndentSpacing.cpp 2012-01-07 03:25:03.000000000 +0000 +++ calligra-2.3.87/plugins/textshape/dialogs/ParagraphIndentSpacing.cpp 2012-01-28 07:04:49.000000000 +0000 @@ -89,7 +89,7 @@ { m_style = style; // TODO : handle relatives - widget.first->changeValue(style->textIndent().rawValue()); + widget.first->changeValue(style->textIndent()); widget.left->changeValue(style->leftMargin()); widget.right->changeValue(style->rightMargin()); widget.before->changeValue(style->topMargin()); diff -Nru calligra-2.3.86/plugins/textshape/dialogs/ParagraphSettingsDialog.cpp calligra-2.3.87/plugins/textshape/dialogs/ParagraphSettingsDialog.cpp --- calligra-2.3.86/plugins/textshape/dialogs/ParagraphSettingsDialog.cpp 2012-01-07 03:25:03.000000000 +0000 +++ calligra-2.3.87/plugins/textshape/dialogs/ParagraphSettingsDialog.cpp 2012-01-28 07:04:49.000000000 +0000 @@ -25,6 +25,7 @@ #include #include #include +#include #include #include @@ -74,10 +75,8 @@ m_cursor->mergeBlockFormat(format); if (chosenStyle.listStyle()) { KoTextEditor::ChangeListFlags flags(KoTextEditor::AutoListStyle | KoTextEditor::DontUnsetIfSame); - m_tool->textEditor()->setListProperties(static_cast(chosenStyle.listStyle()->styleId()), - chosenStyle.listStyle()->listLevels().first(), + m_tool->textEditor()->setListProperties(chosenStyle.listStyle()->levelProperties(chosenStyle.listStyle()->listLevels().first()), flags); - } else { QTextList *list = m_cursor->block().textList(); if (list) { // then remove it. diff -Nru calligra-2.3.86/plugins/textshape/dialogs/QuickTableButton.cpp calligra-2.3.87/plugins/textshape/dialogs/QuickTableButton.cpp --- calligra-2.3.86/plugins/textshape/dialogs/QuickTableButton.cpp 2012-01-07 03:25:03.000000000 +0000 +++ calligra-2.3.87/plugins/textshape/dialogs/QuickTableButton.cpp 2012-01-28 07:04:49.000000000 +0000 @@ -87,8 +87,8 @@ void SizeChooserGrid::mouseMoveEvent(QMouseEvent *ev) { - m_column = qMin(7.0, (ev->x()-m_leftMargin) / m_columnWidth); - m_row = qMin(7.0, (ev->y()-m_topMargin) / m_rowHeight); + m_column = qMin(qreal(7.0), (ev->x()-m_leftMargin) / m_columnWidth); + m_row = qMin(qreal(7.0), (ev->y()-m_topMargin) / m_rowHeight); repaint(); } diff -Nru calligra-2.3.86/plugins/textshape/dialogs/SimpleCharacterWidget.cpp calligra-2.3.87/plugins/textshape/dialogs/SimpleCharacterWidget.cpp --- calligra-2.3.86/plugins/textshape/dialogs/SimpleCharacterWidget.cpp 2012-01-07 03:25:03.000000000 +0000 +++ calligra-2.3.87/plugins/textshape/dialogs/SimpleCharacterWidget.cpp 2012-01-28 07:04:49.000000000 +0000 @@ -1,6 +1,7 @@ /* This file is part of the KDE project * Copyright (C) 2007, 2008, 2010 Thomas Zander * Copyright (C) 2009-2010 Casper Boemann + * Copyright (C) 2011-2012 Pierre Stirnweiss * * This library is free software; you can redistribute it and/or * modify it under the terms of the GNU Library General Public @@ -17,20 +18,21 @@ * the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, * Boston, MA 02110-1301, USA. */ + #include "SimpleCharacterWidget.h" #include "TextTool.h" #include "../commands/ChangeListCommand.h" -#include "StylesWidget.h" -#include "SpecialButton.h" +#include "StylesModel.h" +#include #include #include #include #include +#include #include #include #include -#include #include #include @@ -39,10 +41,13 @@ #include SimpleCharacterWidget::SimpleCharacterWidget(TextTool *tool, QWidget *parent) - : QWidget(parent), - m_blockSignals(false), - m_comboboxHasBidiItems(false), - m_tool(tool) + : QWidget(parent), + m_styleManager(0), + m_blockSignals(false), + m_comboboxHasBidiItems(false), + m_tool(tool), + m_thumbnailer(new KoStyleThumbnailer()), + m_stylesModel(new StylesModel(0, StylesModel::CharacterStyle)) { widget.setupUi(this); widget.bold->setDefaultAction(tool->action("format_bold")); @@ -74,50 +79,85 @@ widget.fontsFrame->addWidget(size,0,1); connect(size, SIGNAL(activated(int)), this, SIGNAL(doneWithFocus())); connect(size, SIGNAL(activated(int)), this, SLOT(fontSizeActivated(int))); + QDoubleValidator* validator = new QDoubleValidator(2, 999, 1, size); + size->setValidator(validator); } widget.fontsFrame->setColumnStretch(0,1); - m_stylePopup = new StylesWidget(this, false, Qt::Popup); - m_stylePopup->setFrameShape(QFrame::StyledPanel); - m_stylePopup->setFrameShadow(QFrame::Raised); - widget.charFrame->setStylesWidget(m_stylePopup); - - connect(m_stylePopup, SIGNAL(characterStyleSelected(KoCharacterStyle *)), this, SIGNAL(characterStyleSelected(KoCharacterStyle *))); - connect(m_stylePopup, SIGNAL(characterStyleSelected(KoCharacterStyle *)), this, SIGNAL(doneWithFocus())); - connect(m_stylePopup, SIGNAL(characterStyleSelected(KoCharacterStyle *)), this, SLOT(hidePopup())); + m_stylesModel->setStyleThumbnailer(m_thumbnailer); + widget.characterStyleCombo->setStylesModel(m_stylesModel); + connect(widget.characterStyleCombo, SIGNAL(selected(int)), this, SLOT(styleSelected(int))); + connect(widget.characterStyleCombo, SIGNAL(newStyleRequested(QString)), this, SIGNAL(newStyleRequested(QString))); + connect(widget.characterStyleCombo, SIGNAL(newStyleRequested(QString)), this, SIGNAL(doneWithFocus())); + connect(widget.characterStyleCombo, SIGNAL(showStyleManager(int)), this, SLOT(slotShowStyleManager(int))); - m_thumbnailer = new KoStyleThumbnailer(); } SimpleCharacterWidget::~SimpleCharacterWidget() { + //the model is set on the comboBox which takes ownership delete m_thumbnailer; } void SimpleCharacterWidget::setStyleManager(KoStyleManager *sm) { m_styleManager = sm; - m_stylePopup->setStyleManager(sm); + //we want to disconnect this before setting the stylemanager. Populating the model apparently selects the first inserted item. We don't want this to actually set a new style. + disconnect(widget.characterStyleCombo, SIGNAL(selected(int)), this, SLOT(styleSelected(int))); + m_stylesModel->setStyleManager(sm); + connect(widget.characterStyleCombo, SIGNAL(selected(int)), this, SLOT(styleSelected(int))); } -void SimpleCharacterWidget::hidePopup() +void SimpleCharacterWidget::setCurrentFormat(const QTextCharFormat& format, const QTextCharFormat& refBlockCharFormat) { - widget.charFrame->hidePopup(); -} - -void SimpleCharacterWidget::setCurrentFormat(const QTextCharFormat& format) -{ - if (format == m_currentCharFormat) + if (!m_styleManager || format == m_currentCharFormat) { return; + } m_currentCharFormat = format; - int id = m_currentCharFormat.intProperty(KoCharacterStyle::StyleId); - KoCharacterStyle *style(m_styleManager->characterStyle(id)); + KoCharacterStyle *style(m_styleManager->characterStyle(m_currentCharFormat.intProperty(KoCharacterStyle::StyleId))); + bool useParagraphStyle = false; + if (!style) { + style = static_cast(m_styleManager->paragraphStyle(m_currentCharFormat.intProperty(KoParagraphStyle::StyleId))); + useParagraphStyle = true; + } if (style) { - widget.charFrame->setStylePreview(m_thumbnailer->thumbnail(m_styleManager->characterStyle(id), widget.charFrame->contentsRect().size())); + bool unchanged = true; + QTextCharFormat comparisonFormat = refBlockCharFormat; + style->applyStyle(comparisonFormat); + //Here we are making quite a few assumptions: + //i. we can set the "ensured" properties on a blank charFormat. These corresponds to Qt default. We are not creating false positive (ie. different styles showing as identical). + //ii. a property whose toBool returns as false is identical to an unset property (this is done through the clearUnsetProperties method) + style->ensureMinimalProperties(comparisonFormat); + style->ensureMinimalProperties(m_currentCharFormat); + clearUnsetProperties(comparisonFormat); + clearUnsetProperties(m_currentCharFormat); + if (m_currentCharFormat.properties().count() != comparisonFormat.properties().count()) { + unchanged = false; + } + else { + foreach(int property, m_currentCharFormat.properties().keys()) { + if (m_currentCharFormat.property(property) != comparisonFormat.property(property)) { + unchanged = false; + } + } + } + disconnect(widget.characterStyleCombo, SIGNAL(selected(int)), this, SLOT(styleSelected(int))); + widget.characterStyleCombo->setCurrentIndex((useParagraphStyle)?0:m_stylesModel->indexForCharacterStyle(*style).row()); + widget.characterStyleCombo->setStyleIsOriginal(unchanged); + widget.characterStyleCombo->slotUpdatePreview(); + connect(widget.characterStyleCombo, SIGNAL(selected(int)), this, SLOT(styleSelected(int))); + } +} + +void SimpleCharacterWidget::clearUnsetProperties(QTextFormat &format) +{ + foreach(int property, format.properties().keys()) { + if (!format.property(property).toBool()) { + format.clearProperty(property); + } } - m_stylePopup->setCurrentFormat(format); } void SimpleCharacterWidget::fontFamilyActivated(int index) { @@ -130,7 +170,8 @@ */ if (index == m_lastFontFamilyIndex) { KSelectAction *action = qobject_cast(m_tool->action("format_fontfamily")); - action->currentAction()->trigger(); + if(action->currentAction()) + action->currentAction()->trigger(); } m_lastFontFamilyIndex = index; } @@ -150,4 +191,32 @@ m_lastFontSizeIndex = index; } +void SimpleCharacterWidget::setCurrentBlockFormat(const QTextBlockFormat &format) +{ + if (format == m_currentBlockFormat) + return; + m_currentBlockFormat = format; + + m_stylesModel->setCurrentParagraphStyle(format.intProperty(KoParagraphStyle::StyleId)); + disconnect(widget.characterStyleCombo, SIGNAL(selected(int)), this, SLOT(styleSelected(int))); + widget.characterStyleCombo->slotUpdatePreview(); + connect(widget.characterStyleCombo, SIGNAL(selected(int)), this, SLOT(styleSelected(int))); +} + +void SimpleCharacterWidget::styleSelected(int index) +{ + KoCharacterStyle *charStyle = m_styleManager->characterStyle(m_stylesModel->index(index).internalId()); + + //if the selected item correspond to a null characterStyle, send the null pointer. the tool should set the characterStyle as per paragraph + emit characterStyleSelected(charStyle); + emit doneWithFocus(); +} + +void SimpleCharacterWidget::slotShowStyleManager(int index) +{ + int styleId = m_stylesModel->index(index).internalId(); + emit showStyleManager(styleId); + emit doneWithFocus(); +} + #include diff -Nru calligra-2.3.86/plugins/textshape/dialogs/SimpleCharacterWidget.h calligra-2.3.87/plugins/textshape/dialogs/SimpleCharacterWidget.h --- calligra-2.3.86/plugins/textshape/dialogs/SimpleCharacterWidget.h 2012-01-07 03:25:03.000000000 +0000 +++ calligra-2.3.87/plugins/textshape/dialogs/SimpleCharacterWidget.h 2012-01-28 07:04:49.000000000 +0000 @@ -1,6 +1,7 @@ /* This file is part of the KDE project * Copyright (C) 2007 Thomas Zander * Copyright (C) 2010 Casper Boemann + * Copyright (C) 2011-2012 Pierre Stirnweiss * * This library is free software; you can redistribute it and/or * modify it under the terms of the GNU Library General Public @@ -29,8 +30,8 @@ class TextTool; class KoStyleManager; class KoCharacterStyle; -class StylesWidget; class KoStyleThumbnailer; +class StylesModel; class SimpleCharacterWidget : public QWidget { @@ -41,18 +42,24 @@ public slots: void setStyleManager(KoStyleManager *sm); - void setCurrentFormat(const QTextCharFormat& format); + void setCurrentFormat(const QTextCharFormat& format, const QTextCharFormat& refBlockCharFormat); + void setCurrentBlockFormat(const QTextBlockFormat &format); private slots: void fontFamilyActivated(int index); void fontSizeActivated(int index); - void hidePopup(); + void styleSelected(int index); + void slotShowStyleManager(int index); signals: void doneWithFocus(); void characterStyleSelected(KoCharacterStyle *); + void newStyleRequested(QString name); + void showStyleManager(int styleId); private: + void clearUnsetProperties(QTextFormat &format); + Ui::SimpleCharacterWidget widget; KoStyleManager *m_styleManager; bool m_blockSignals; @@ -61,8 +68,9 @@ int m_lastFontSizeIndex; TextTool *m_tool; QTextCharFormat m_currentCharFormat; + QTextBlockFormat m_currentBlockFormat; KoStyleThumbnailer *m_thumbnailer; - StylesWidget *m_stylePopup; + StylesModel *m_stylesModel; }; #endif diff -Nru calligra-2.3.86/plugins/textshape/dialogs/SimpleCharacterWidget.ui calligra-2.3.87/plugins/textshape/dialogs/SimpleCharacterWidget.ui --- calligra-2.3.86/plugins/textshape/dialogs/SimpleCharacterWidget.ui 2012-01-07 03:25:03.000000000 +0000 +++ calligra-2.3.87/plugins/textshape/dialogs/SimpleCharacterWidget.ui 2012-01-28 07:04:49.000000000 +0000 @@ -111,25 +111,7 @@ - - - - 0 - 32 - - - - - 0 - 20 - - - - QFrame::StyledPanel - - - QFrame::Raised - + @@ -148,9 +130,9 @@
- SpecialButton - QFrame -
dialogs/SpecialButton.h
+ StylesCombo + QComboBox +
dialogs/StylesCombo.h
1
diff -Nru calligra-2.3.86/plugins/textshape/dialogs/SimpleParagraphWidget.cpp calligra-2.3.87/plugins/textshape/dialogs/SimpleParagraphWidget.cpp --- calligra-2.3.86/plugins/textshape/dialogs/SimpleParagraphWidget.cpp 2012-01-07 03:25:03.000000000 +0000 +++ calligra-2.3.87/plugins/textshape/dialogs/SimpleParagraphWidget.cpp 2012-01-28 07:04:49.000000000 +0000 @@ -2,6 +2,7 @@ * Copyright (C) 2007, 2008, 2010 Thomas Zander * Copyright (C) 2009-2010 Casper Boemann * Copyright (C) 2011 Mojtaba Shahi Senobari + * Copyright (C) 2011-2012 Pierre Stirnweiss * * This library is free software; you can redistribute it and/or * modify it under the terms of the GNU Library General Public @@ -22,28 +23,36 @@ #include "TextTool.h" #include #include "FormattingButton.h" -#include "StylesWidget.h" -#include "SpecialButton.h" +#include + +#include "StylesCombo.h" +#include "StylesModel.h" +#include "StylesDelegate.h" -#include #include #include #include #include #include -#include #include #include #include -#include + +#include #include +#include + +#include SimpleParagraphWidget::SimpleParagraphWidget(TextTool *tool, QWidget *parent) : QWidget(parent), - m_blockSignals(false), - m_tool(tool), - m_directionButtonState(Auto) + m_styleManager(0), + m_blockSignals(false), + m_tool(tool), + m_directionButtonState(Auto), + m_thumbnailer(new KoStyleThumbnailer()), + m_stylesModel(new StylesModel(0, StylesModel::ParagraphStyle)) { widget.setupUi(this); widget.alignCenter->setDefaultAction(tool->action("format_aligncenter")); @@ -80,20 +89,17 @@ connect(widget.bulletListButton, SIGNAL(itemTriggered(int)), this, SLOT(listStyleChanged(int))); connect(widget.numberedListButton, SIGNAL(itemTriggered(int)), this, SLOT(listStyleChanged(int))); - m_stylePopup = new StylesWidget(this, true, Qt::Popup); - m_stylePopup->setFrameShape(QFrame::StyledPanel); - m_stylePopup->setFrameShadow(QFrame::Raised); - widget.blockFrame->setStylesWidget(m_stylePopup); - - connect(m_stylePopup, SIGNAL(paragraphStyleSelected(KoParagraphStyle *)), this, SIGNAL(paragraphStyleSelected(KoParagraphStyle *))); - connect(m_stylePopup, SIGNAL(paragraphStyleSelected(KoParagraphStyle *)), this, SIGNAL(doneWithFocus())); - connect(m_stylePopup, SIGNAL(paragraphStyleSelected(KoParagraphStyle *)), this, SLOT(hidePopup())); - - m_thumbnailer = new KoStyleThumbnailer(); + m_stylesModel->setStyleThumbnailer(m_thumbnailer); + widget.paragraphStyleCombo->setStylesModel(m_stylesModel); + connect(widget.paragraphStyleCombo, SIGNAL(selected(int)), this, SLOT(styleSelected(int))); + connect(widget.paragraphStyleCombo, SIGNAL(newStyleRequested(QString)), this, SIGNAL(newStyleRequested(QString))); + connect(widget.paragraphStyleCombo, SIGNAL(newStyleRequested(QString)), this, SIGNAL(doneWithFocus())); + connect(widget.paragraphStyleCombo, SIGNAL(showStyleManager(int)), this, SLOT(slotShowStyleManager(int))); } SimpleParagraphWidget::~SimpleParagraphWidget() { + //the style model is set on the comboBox who takes over ownership delete m_thumbnailer; } @@ -152,6 +158,10 @@ void SimpleParagraphWidget::setCurrentBlock(const QTextBlock &block) { + if (block == m_currentBlock) { + return; + } + m_currentBlock = block; m_blockSignals = true; struct Finally { @@ -180,47 +190,102 @@ } } - - QTextBlockFormat format; - - int id = format.intProperty(KoParagraphStyle::StyleId); - KoParagraphStyle *style(m_styleManager->paragraphStyle(id)); - if (style) { - widget.blockFrame->setStylePreview(m_thumbnailer->thumbnail(style, widget.blockFrame->size())); - } - m_stylePopup->setCurrentFormat(format); + setCurrentFormat(m_currentBlock.blockFormat()); } void SimpleParagraphWidget::setCurrentFormat(const QTextBlockFormat &format) { - if (format == m_currentBlockFormat) + if (!m_styleManager || format == m_currentBlockFormat) return; m_currentBlockFormat = format; int id = m_currentBlockFormat.intProperty(KoParagraphStyle::StyleId); KoParagraphStyle *style(m_styleManager->paragraphStyle(id)); if (style) { - widget.blockFrame->setStylePreview(m_thumbnailer->thumbnail(m_styleManager->paragraphStyle(id), widget.blockFrame->contentsRect().size())); + bool unchanged = true; + + foreach(int property, m_currentBlockFormat.properties().keys()) { + switch (property) { + case QTextFormat::ObjectIndex: + case KoParagraphStyle::ListStyleId: + case KoParagraphStyle::OutlineLevel: + case KoParagraphStyle::ListStartValue: + case KoParagraphStyle::IsListHeader: + case KoParagraphStyle::UnnumberedListItem: + continue; + // These can be both content and style properties so let's ignore + case KoParagraphStyle::BreakBefore: + case KoParagraphStyle::MasterPageName: + continue; + + default: + break; + } + if (property == QTextBlockFormat::BlockAlignment) { //the default alignment can be retrieved in the defaultTextOption. However, calligra sets the Qt::AlignAbsolute flag, so we need to or this flag with the default alignment before comparing. + if ((m_currentBlockFormat.property(property) != style->value(property)) + && !(style->value(property).isNull() + && ((m_currentBlockFormat.intProperty(property)) == int(m_currentBlock.document()->defaultTextOption().alignment()| Qt::AlignAbsolute)))) { + unchanged = false; + break; + } + else { + continue; + } + } + if (property == KoParagraphStyle::TextProgressionDirection) { + if (style->value(property).isNull() && m_currentBlockFormat.intProperty(property) == KoText::LeftRightTopBottom) { + //LTR seems to be Qt default when unset + continue; + } + } + if ((m_currentBlockFormat.property(property) != style->value(property)) && !(style->value(property).isNull() && !m_currentBlockFormat.property(property).toBool())) { + //the last check seems to work. might be cause of a bug. The problem is when comparing an unset property in the style with a set to {0, false, ...) property in the format (eg. set then unset bold) + unchanged = false; + break; + } + } + //we are updating the combo's selected item to what is the current format. we do not want this to apply the style as it would mess up the undo stack, the change tracking,... + disconnect(widget.paragraphStyleCombo, SIGNAL(selected(int)), this, SLOT(styleSelected(int))); + widget.paragraphStyleCombo->setCurrentIndex(m_stylesModel->indexForParagraphStyle(*style).row()); + widget.paragraphStyleCombo->setStyleIsOriginal(unchanged); + m_stylesModel->setCurrentParagraphStyle(id); + connect(widget.paragraphStyleCombo, SIGNAL(selected(int)), this, SLOT(styleSelected(int))); } - m_stylePopup->setCurrentFormat(format); } void SimpleParagraphWidget::setStyleManager(KoStyleManager *sm) { m_styleManager = sm; - m_stylePopup->setStyleManager(sm); + //we want to disconnect this before setting the stylemanager. Populating the model apparently selects the first inserted item. We don't want this to actually set a new style. + disconnect(widget.paragraphStyleCombo, SIGNAL(selected(int)), this, SLOT(styleSelected(int))); + m_stylesModel->setStyleManager(sm); + connect(widget.paragraphStyleCombo, SIGNAL(selected(int)), this, SLOT(styleSelected(int))); } -void SimpleParagraphWidget::hidePopup() +void SimpleParagraphWidget::listStyleChanged(int id) { - widget.blockFrame->hidePopup(); + emit doneWithFocus(); + if (m_blockSignals) return; + KoListLevelProperties llp; + llp.setStyle(static_cast(id)); + llp.setLevel(0); + m_tool->textEditor()->setListProperties(llp); } -void SimpleParagraphWidget::listStyleChanged(int id) +void SimpleParagraphWidget::styleSelected(int index) { + KoParagraphStyle *paragStyle = m_styleManager->paragraphStyle(m_stylesModel->index(index).internalId()); + if (paragStyle) { + emit paragraphStyleSelected(paragStyle); + } + emit doneWithFocus(); +} + +void SimpleParagraphWidget::slotShowStyleManager(int index) +{ + int styleId = m_stylesModel->index(index).internalId(); + emit showStyleManager(styleId); emit doneWithFocus(); - if (m_blockSignals) return; - m_tool->textEditor()->setListProperties(static_cast (id)); } #include diff -Nru calligra-2.3.86/plugins/textshape/dialogs/SimpleParagraphWidget.h calligra-2.3.87/plugins/textshape/dialogs/SimpleParagraphWidget.h --- calligra-2.3.86/plugins/textshape/dialogs/SimpleParagraphWidget.h 2012-01-07 03:25:03.000000000 +0000 +++ calligra-2.3.87/plugins/textshape/dialogs/SimpleParagraphWidget.h 2012-01-28 07:04:49.000000000 +0000 @@ -2,6 +2,7 @@ * Copyright (C) 2007 Thomas Zander * Copyright (C) 2010 Casper Boemann * Copyright (C) 2011 Mojtaba Shahi Senobari + * Copyright (C) 2011-2012 Pierre Stirnweiss * * This library is free software; you can redistribute it and/or * modify it under the terms of the GNU Library General Public @@ -29,9 +30,11 @@ class TextTool; class KoStyleManager; class KoParagraphStyle; -class StylesWidget; class KoStyleThumbnailer; +class StylesModel; +class StylesDelegate; + class SimpleParagraphWidget : public QWidget { Q_OBJECT @@ -43,14 +46,17 @@ void setCurrentBlock(const QTextBlock &block); void setCurrentFormat(const QTextBlockFormat& format); void setStyleManager(KoStyleManager *sm); - void hidePopup(); + void slotShowStyleManager(int index); signals: void doneWithFocus(); void paragraphStyleSelected(KoParagraphStyle *); + void newStyleRequested(QString name); + void showStyleManager(int styleId); private slots: void listStyleChanged(int id); + void styleSelected(int index); private: enum DirectionButtonState { @@ -72,7 +78,9 @@ TextTool *m_tool; DirectionButtonState m_directionButtonState; KoStyleThumbnailer *m_thumbnailer; - StylesWidget *m_stylePopup; + + StylesModel *m_stylesModel; + StylesDelegate *m_stylesDelegate; }; #endif diff -Nru calligra-2.3.86/plugins/textshape/dialogs/SimpleParagraphWidget.ui calligra-2.3.87/plugins/textshape/dialogs/SimpleParagraphWidget.ui --- calligra-2.3.86/plugins/textshape/dialogs/SimpleParagraphWidget.ui 2012-01-07 03:25:03.000000000 +0000 +++ calligra-2.3.87/plugins/textshape/dialogs/SimpleParagraphWidget.ui 2012-01-28 07:04:49.000000000 +0000 @@ -118,25 +118,7 @@ - - - - 0 - 32 - - - - - 0 - 0 - - - - QFrame::StyledPanel - - - QFrame::Raised - + @@ -163,9 +145,9 @@
dialogs/FormattingButton.h
- SpecialButton - QFrame -
dialogs/SpecialButton.h
+ StylesCombo + QComboBox +
dialogs/StylesCombo.h
1
diff -Nru calligra-2.3.86/plugins/textshape/dialogs/StyleManager.cpp calligra-2.3.87/plugins/textshape/dialogs/StyleManager.cpp --- calligra-2.3.86/plugins/textshape/dialogs/StyleManager.cpp 2012-01-07 03:25:03.000000000 +0000 +++ calligra-2.3.87/plugins/textshape/dialogs/StyleManager.cpp 2012-01-28 07:04:49.000000000 +0000 @@ -19,15 +19,25 @@ #include "StyleManager.h" -#include "StylesWidget.h" +#include "StylesModel.h" #include +#include #include #include +#include +#include +#include + +#include + StyleManager::StyleManager(QWidget *parent) : QWidget(parent), m_styleManager(0), + m_paragraphStylesModel(new StylesModel(0, StylesModel::ParagraphStyle)), + m_characterStylesModel(new StylesModel(0, StylesModel::CharacterStyle)), + m_thumbnailer(new KoStyleThumbnailer()), m_selectedParagStyle(0), m_selectedCharStyle(0), m_blockSignals(false) @@ -35,11 +45,17 @@ widget.setupUi(this); layout()->setMargin(0); - connect(widget.styles, SIGNAL(paragraphStyleSelected(KoParagraphStyle*)), this, SLOT(setParagraphStyle(KoParagraphStyle*))); - connect(widget.styles, SIGNAL(characterStyleSelected(KoCharacterStyle *, bool)), this, SLOT(setCharacterStyle(KoCharacterStyle*,bool))); + m_paragraphStylesModel->setStyleThumbnailer(m_thumbnailer); + m_characterStylesModel->setStyleThumbnailer(m_thumbnailer); + m_characterStylesModel->setProvideStyleNone(false); + widget.paragraphStylesListView->setModel(m_paragraphStylesModel); + widget.characterStylesListView->setModel(m_characterStylesModel); + connect(widget.paragraphStylesListView, SIGNAL(activated(const QModelIndex&)), this, SLOT(slotStyleSelected(QModelIndex))); + connect(widget.characterStylesListView, SIGNAL(activated(const QModelIndex&)), this, SLOT(slotStyleSelected(QModelIndex))); connect(widget.bNew, SIGNAL(pressed()), this, SLOT(buttonNewPressed())); connect(widget.bDelete, SIGNAL(pressed()), this, SLOT(buttonDeletePressed())); + widget.bDelete->setVisible(false); // TODO make it visible when we can safely delete styles connect(widget.createPage, SIGNAL(newParagraphStyle(KoParagraphStyle*)), this, SLOT(addParagraphStyle(KoParagraphStyle*))); connect(widget.createPage, SIGNAL(newCharacterStyle(KoCharacterStyle*)), this, SLOT(addCharacterStyle(KoCharacterStyle*))); @@ -63,8 +79,17 @@ { Q_ASSERT(sm); m_styleManager = sm; - widget.styles->setStyleManager(sm); + //we want to disconnect this before setting the stylemanager. Populating the model apparently selects the first inserted item. We don't want this to actually set a new style. + disconnect(widget.paragraphStylesListView, SIGNAL(activated(const QModelIndex&)), this, SLOT(slotStyleSelected(QModelIndex))); + m_paragraphStylesModel->setStyleManager(m_styleManager); + connect(widget.paragraphStylesListView, SIGNAL(activated(const QModelIndex&)), this, SLOT(slotStyleSelected(QModelIndex))); + + disconnect(widget.characterStylesListView, SIGNAL(activated(const QModelIndex&)), this, SLOT(slotStyleSelected(QModelIndex))); + m_characterStylesModel->setStyleManager(m_styleManager); + connect(widget.characterStylesListView, SIGNAL(activated(const QModelIndex&)), this, SLOT(slotStyleSelected(QModelIndex))); + widget.stackedWidget->setCurrentWidget(widget.welcomePage); + widget.tabs->setCurrentIndex(widget.tabs->indexOf(widget.paragraphStylesListView)); widget.paragraphStylePage->setParagraphStyles(sm->paragraphStyles()); connect(sm, SIGNAL(styleAdded(KoParagraphStyle*)), this, SLOT(addParagraphStyle(KoParagraphStyle*))); connect(sm, SIGNAL(styleAdded(KoCharacterStyle*)), this, SLOT(addCharacterStyle(KoCharacterStyle*))); @@ -88,8 +113,12 @@ localStyle = m_alteredParagraphStyles.value(style->styleId()); } + disconnect(widget.paragraphStylesListView, SIGNAL(activated(const QModelIndex&)), this, SLOT(slotStyleSelected(QModelIndex))); + widget.paragraphStylesListView->setCurrentIndex(m_paragraphStylesModel->indexForParagraphStyle(*style)); + connect(widget.paragraphStylesListView, SIGNAL(activated(const QModelIndex&)), this, SLOT(slotStyleSelected(QModelIndex))); widget.paragraphStylePage->setStyle(localStyle); widget.stackedWidget->setCurrentWidget(widget.paragraphStylePage); + widget.tabs->setCurrentIndex(widget.tabs->indexOf(widget.paragraphStylesListView)); // widget.bDelete->setEnabled(canDelete); } @@ -111,9 +140,13 @@ localStyle = m_alteredCharacterStyles.value(style->styleId()); } + disconnect(widget.characterStylesListView, SIGNAL(activated(const QModelIndex&)), this, SLOT(slotStyleSelected(QModelIndex))); + widget.characterStylesListView->setCurrentIndex(m_characterStylesModel->indexForCharacterStyle(*style)); + connect(widget.characterStylesListView, SIGNAL(activated(const QModelIndex&)), this, SLOT(slotStyleSelected(QModelIndex))); widget.characterStylePage->setStyle(localStyle); widget.stackedWidget->setCurrentWidget(widget.characterStylePage); - widget.bDelete->setEnabled(canDelete); + widget.tabs->setCurrentIndex(widget.tabs->indexOf(widget.characterStylesListView)); + // widget.bDelete->setEnabled(canDelete); } void StyleManager::setUnit(const KoUnit &unit) @@ -127,24 +160,24 @@ widget.paragraphStylePage->save(); widget.characterStylePage->save(); + m_styleManager->beginEdit(); + foreach(int styleId, m_alteredCharacterStyles.keys()) { - KoCharacterStyle *orig = m_styleManager->characterStyle(styleId); KoCharacterStyle *altered = m_alteredCharacterStyles[styleId]; - orig->copyProperties(altered); - m_styleManager->alteredStyle(orig); + m_styleManager->alteredStyle(altered); delete altered; } m_alteredCharacterStyles.clear(); foreach(int styleId, m_alteredParagraphStyles.keys()) { - KoParagraphStyle *orig = m_styleManager->paragraphStyle(styleId); KoParagraphStyle *altered = m_alteredParagraphStyles[styleId]; - orig->copyProperties(altered); - m_styleManager->alteredStyle(orig); + m_styleManager->alteredStyle(altered); delete altered; } m_alteredParagraphStyles.clear(); + m_styleManager->endEdit(); + //Reset the active style if (m_selectedCharStyle) { KoCharacterStyle *localStyle = m_selectedCharStyle->clone(); @@ -177,7 +210,7 @@ if (m_blockSignals) return; - m_styleManager->add(style); +// m_styleManager->add(style); widget.paragraphStylePage->setParagraphStyles(m_styleManager->paragraphStyles()); widget.stackedWidget->setCurrentWidget(widget.welcomePage); } @@ -186,7 +219,7 @@ { if (m_blockSignals) return; - m_styleManager->add(style); +// m_styleManager->add(style); widget.stackedWidget->setCurrentWidget(widget.welcomePage); } @@ -203,6 +236,20 @@ m_alteredCharacterStyles.remove(style->styleId()); } +void StyleManager::slotStyleSelected(QModelIndex index) +{ + KoParagraphStyle *paragraphStyle = m_styleManager->paragraphStyle(index.internalId()); + if (paragraphStyle) { + setParagraphStyle(paragraphStyle); + return; + } + KoCharacterStyle *characterStyle = m_styleManager->characterStyle(index.internalId()); + if (characterStyle) { + setCharacterStyle(characterStyle, false); + return; + } +} + /* TODO On new move focus to name text field. Add a connection to the same 'name' text field when I press enter it should press the create button. diff -Nru calligra-2.3.86/plugins/textshape/dialogs/StyleManagerDialog.cpp calligra-2.3.87/plugins/textshape/dialogs/StyleManagerDialog.cpp --- calligra-2.3.86/plugins/textshape/dialogs/StyleManagerDialog.cpp 2012-01-07 03:25:03.000000000 +0000 +++ calligra-2.3.87/plugins/textshape/dialogs/StyleManagerDialog.cpp 2012-01-28 07:04:49.000000000 +0000 @@ -20,6 +20,9 @@ #include "StyleManagerDialog.h" #include "StyleManager.h" +#include +#include + StyleManagerDialog::StyleManagerDialog(QWidget *parent) : KDialog(parent) { @@ -58,4 +61,14 @@ m_styleManagerWidget->setUnit(unit); } +void StyleManagerDialog::setCharacterStyle(KoCharacterStyle *style, bool canDelete) +{ + m_styleManagerWidget->setCharacterStyle(style, canDelete); +} + +void StyleManagerDialog::setParagraphStyle(KoParagraphStyle *style) +{ + m_styleManagerWidget->setParagraphStyle(style); +} + #include diff -Nru calligra-2.3.86/plugins/textshape/dialogs/StyleManagerDialog.h calligra-2.3.87/plugins/textshape/dialogs/StyleManagerDialog.h --- calligra-2.3.86/plugins/textshape/dialogs/StyleManagerDialog.h 2012-01-07 03:25:03.000000000 +0000 +++ calligra-2.3.87/plugins/textshape/dialogs/StyleManagerDialog.h 2012-01-28 07:04:49.000000000 +0000 @@ -22,6 +22,9 @@ #include class StyleManager; + +class KoCharacterStyle; +class KoParagraphStyle; class KoStyleManager; class KoUnit; @@ -36,6 +39,11 @@ void setUnit(const KoUnit &unit); +public slots: + void setParagraphStyle(KoParagraphStyle *style); + void setCharacterStyle(KoCharacterStyle *style, bool canDelete = false); + + private: void accept(); void reject(); diff -Nru calligra-2.3.86/plugins/textshape/dialogs/StyleManager.h calligra-2.3.87/plugins/textshape/dialogs/StyleManager.h --- calligra-2.3.86/plugins/textshape/dialogs/StyleManager.h 2012-01-07 03:25:03.000000000 +0000 +++ calligra-2.3.87/plugins/textshape/dialogs/StyleManager.h 2012-01-28 07:04:49.000000000 +0000 @@ -24,10 +24,14 @@ #include +class StylesModel; class KoStyleManager; +class KoStyleThumbnailer; class KoParagraphStyle; class KoCharacterStyle; +class QModelIndex; + class StyleManager : public QWidget { Q_OBJECT @@ -41,14 +45,15 @@ public slots: void save(); + void setParagraphStyle(KoParagraphStyle *style); + void setCharacterStyle(KoCharacterStyle *style, bool canDelete = false); private slots: void addParagraphStyle(KoParagraphStyle*); void addCharacterStyle(KoCharacterStyle*); void removeParagraphStyle(KoParagraphStyle*); void removeCharacterStyle(KoCharacterStyle*); - void setParagraphStyle(KoParagraphStyle *style); - void setCharacterStyle(KoCharacterStyle *style, bool canDelete); + void slotStyleSelected(QModelIndex index); private: Ui::StyleManager widget; @@ -57,6 +62,9 @@ QMap m_alteredParagraphStyles; QMap m_alteredCharacterStyles; + StylesModel *m_paragraphStylesModel; + StylesModel *m_characterStylesModel; + KoStyleThumbnailer *m_thumbnailer; KoParagraphStyle *m_selectedParagStyle; KoCharacterStyle *m_selectedCharStyle; diff -Nru calligra-2.3.86/plugins/textshape/dialogs/StyleManager.ui calligra-2.3.87/plugins/textshape/dialogs/StyleManager.ui --- calligra-2.3.86/plugins/textshape/dialogs/StyleManager.ui 2012-01-07 03:25:03.000000000 +0000 +++ calligra-2.3.87/plugins/textshape/dialogs/StyleManager.ui 2012-01-28 07:04:49.000000000 +0000 @@ -18,13 +18,41 @@ - + - - 0 + + 99 0 + + + Paragraph + + + + 270 + 0 + + + + Qt::ScrollBarAlwaysOff + + + + + Character + + + + 270 + 0 + + + + Qt::ScrollBarAlwaysOff + + @@ -80,11 +108,6 @@ 1 - StylesWidget - QListWidget -
dialogs/StylesWidget.h
-
- StyleManagerWelcome QWidget
dialogs/StyleManagerWelcome.h
diff -Nru calligra-2.3.86/plugins/textshape/dialogs/StylesCombo.cpp calligra-2.3.87/plugins/textshape/dialogs/StylesCombo.cpp --- calligra-2.3.86/plugins/textshape/dialogs/StylesCombo.cpp 1970-01-01 00:00:00.000000000 +0000 +++ calligra-2.3.87/plugins/textshape/dialogs/StylesCombo.cpp 2012-01-28 07:04:49.000000000 +0000 @@ -0,0 +1,183 @@ +/* This file is part of the KDE project + * Copyright (C) 2011-2012 Pierre Stirnweiss + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU Library General Public + * License as published by the Free Software Foundation; either + * version 2 of the License, or (at your option) any later version. + * + * This library is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + * Library General Public License for more details. + * + * You should have received a copy of the GNU Library General Public License + * along with this library; see the file COPYING.LIB. If not, write to + * the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, + * Boston, MA 02110-1301, USA. +*/ +#include "StylesCombo.h" +#include + +#include "StylesModel.h" +#include "StylesComboPreview.h" +#include "StylesDelegate.h" + +#include +#include +#include + +#include + +StylesCombo::StylesCombo(QWidget *parent) + : QComboBox(parent), + m_stylesModel(0), + m_view(new QListView()), + m_selectedItem(-1), + m_originalStyle(true) +{ + setMinimumSize(50,32); + + m_view->setMinimumWidth(250); + m_view->setMouseTracking(true); + setView(m_view); + view()->viewport()->installEventFilter(this); + + StylesDelegate *delegate = new StylesDelegate(); + connect(delegate, SIGNAL(needsUpdate(QModelIndex)), m_view, SLOT(update(QModelIndex))); + connect(delegate, SIGNAL(styleManagerButtonClicked(QModelIndex)), this, SLOT(slotShowDia(QModelIndex))); + connect(delegate, SIGNAL(deleteStyleButtonClicked(QModelIndex)), this, SLOT(slotDeleteStyle(QModelIndex))); + connect(delegate, SIGNAL(clickedInItem(QModelIndex)), this, SLOT(slotItemClicked(QModelIndex))); + setItemDelegate(delegate); + + connect(this, SIGNAL(currentIndexChanged(int)), this, SLOT(slotSelectionChanged(int))); + + QComboBox::setEditable(true); + setIconSize(QSize(0,0)); + + StylesComboPreview *preview = new StylesComboPreview(this); + QComboBox::setEditable(true); + setLineEdit(preview); +} + +StylesCombo::~StylesCombo() +{ +} + +void StylesCombo::setStyleIsOriginal(bool original) +{ + m_originalStyle = original; + if (!original) { + m_preview->setAddButtonShown(true); + } + else { + m_preview->setAddButtonShown(false); + } +} + +void StylesCombo::setStylesModel(StylesModel *model) +{ + m_stylesModel = model; + setModel(model); +} + +void StylesCombo::setEditable(bool editable) +{ + if (editable) { + // Create a StylesComboPreview instead of a QLineEdit + // Compared to QComboBox::setEditable, we might be missing the SH_ComboBox_Popup code though... + // If a style needs this, then we'll need to call QComboBox::setEditable and then setLineEdit again + StylesComboPreview *edit = new StylesComboPreview( this ); + setLineEdit( edit ); + } else { + QComboBox::setEditable(editable); + } +} + +void StylesCombo::setLineEdit(QLineEdit *edit) +{ + if (!isEditable() && edit && !qstrcmp(edit->metaObject()->className(), "QLineEdit")) { + // uic generates code that creates a read-only StylesCombo and then + // calls combo->setEditable( true ), which causes QComboBox to set up + // a dumb QLineEdit instead of our nice StylesComboPreview. + // As some StylesCombo features rely on the StylesComboPreview, we reject + // this order here. + delete edit; + StylesComboPreview* preview = new StylesComboPreview(this); + edit = preview; + } + + QComboBox::setLineEdit(edit); + m_preview = qobject_cast(edit); + + if (m_preview) { + connect(m_preview, SIGNAL(resized()), this, SLOT(slotUpdatePreview())); + connect(m_preview, SIGNAL(newStyleRequested(QString)), this, SIGNAL(newStyleRequested(QString))); + connect(m_preview, SIGNAL(clicked()), this, SLOT(slotPreviewClicked())); + } + +} + +void StylesCombo::slotSelectionChanged(int index) +{ + m_selectedItem = index; + m_preview->setPreview(m_stylesModel->stylePreview(index, m_preview->availableSize())); + update(); + emit selectionChanged(index); +} + +void StylesCombo::slotItemClicked(QModelIndex index) +{ + //this slot allows us to emit a selected signal. There is a bit of redundancy if the item clicked was indeed a new selection, wher we also emit the selectionChanged signal from the slot above. + m_selectedItem = index.row(); + m_preview->setPreview(m_stylesModel->stylePreview(m_selectedItem, m_preview->availableSize())); + update(); + emit selected(m_selectedItem); +} + +void StylesCombo::slotUpdatePreview() +{ + m_preview->setPreview(m_stylesModel->stylePreview(currentIndex(), m_preview->availableSize())); + update(); +} + +void StylesCombo::slotPreviewClicked() +{ + if (!view()->isVisible()) { + showPopup(); + } +} + +bool StylesCombo::eventFilter(QObject *object, QEvent *event) +{ + if (event->type() == QEvent::MouseButtonRelease && object == view()->viewport()) { + QMouseEvent *mouseEvent = static_cast(event); + //If what follows isn't a HACK then I have no clue what is!!!! + //The item delegate editorEvent method is not sent MouseButtonRelease events. + //This is because the QComboBox installs an event filter on the view and calls + //popup->hide() on MouseButtonRelease to dismiss the view. Since we installed an event filter on the view + //ourselves, we can prevent hiding the popup. We have to call itemDelegate->editorEvent + //manually though. + QModelIndex index = view()->indexAt(mouseEvent->pos()); + QModelIndex buddy = m_stylesModel->buddy(index); + QStyleOptionViewItemV4 options; + options.rect = view()->visualRect(buddy); + options.widget = m_view; + options.state |= (buddy == view()->currentIndex() ? QStyle::State_HasFocus : QStyle::State_None); + return view()->itemDelegate()->editorEvent(mouseEvent, m_stylesModel, options, index); + } + return false; +} + +void StylesCombo::slotShowDia(QModelIndex index) +{ + emit showStyleManager(index.row()); +} + +void StylesCombo::slotDeleteStyle(QModelIndex index) +{ + emit deleteStyle(index.row()); +} + +#include + diff -Nru calligra-2.3.86/plugins/textshape/dialogs/StylesCombo.h calligra-2.3.87/plugins/textshape/dialogs/StylesCombo.h --- calligra-2.3.86/plugins/textshape/dialogs/StylesCombo.h 1970-01-01 00:00:00.000000000 +0000 +++ calligra-2.3.87/plugins/textshape/dialogs/StylesCombo.h 2012-01-28 07:04:49.000000000 +0000 @@ -0,0 +1,101 @@ +/* This file is part of the KDE project + * Copyright (C) 2011-2012 Pierre Stirnweiss + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU Library General Public + * License as published by the Free Software Foundation; either + * version 2 of the License, or (at your option) any later version. + * + * This library is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + * Library General Public License for more details. + * + * You should have received a copy of the GNU Library General Public License + * along with this library; see the file COPYING.LIB. If not, write to + * the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, + * Boston, MA 02110-1301, USA. + */ +#ifndef STYLESCOMBO_H +#define STYLESCOMBO_H + +#include + +class QListView; + +class StylesModel; +class StylesComboPreview; + +/** This combo is specifically designed to allow chosing a text style, be it a character style or a paragraph style. + * The combo itself does not know what type of style it is dealing with. In that respect it follows pretty much the normal QComboBox paradigm. + * This is achieved by setting a @class StylesModel to the combo. + * The combo also creates and uses a @class StylesDelegate in order to paint the items as preview in the dropdown menu. This delegate also provide a button to call the style manager dialog directly. + * Additionally the combo display the style as a preview in its main area. + * The combo allows its user to specify if the current selected style should be considered as original or not. If the style has been modified, a + button appears in the main area. Pressing it will allow to change the name of the style. Focusing out, or pressing enter will send a signal for creating a new style. Escaping will prevent this signal to be sent and return to the preview. +*/ + +class StylesCombo : public QComboBox +{ + Q_OBJECT +public: + explicit StylesCombo(QWidget *parent); + ~StylesCombo(); + + /** Use this method to set the @param model of the combo. */ + void setStylesModel(StylesModel *model); + + /** This method is an override of QComboBox setLineEdit. We need to make it public since its Qt counterpart is public. However, this method is not supposed to be used (unless you know what you are doing). The StylesCombo relies on its own internal QLineEdit subclass for quite a lot of its functionnality. There is no guarantee that the whole thing will work in case the line edit is replaced */ + void setLineEdit(QLineEdit *lineEdit); + /** Same as above */ + void setEditable(bool editable); + + /** This method is used to specify if the currently selected style is in its original state or is considered modified. In the later case, the + button will appear (see the class description) */ + void setStyleIsOriginal(bool original); + + bool eventFilter(QObject *, QEvent *); + +public slots: + /** This slot needs to be called if the preview in the main area needs to be updated for some reason */ + void slotUpdatePreview(); + +signals: + /** This is emitted when a selection is made (programatically or by user interaction). It is + * to be noted that this signal is also emitted when an item is selected again. + * @param index: the index of the selected item. */ + void selected(int index); + + /** This is emitted when a selection is changed (programatically or by user interaction). It is + * to be noted that this signal is _not_ emitted when an item is selected again. Not even if it + * had been modified. + * @param index: the index of the selected item. */ + void selectionChanged(int index); + + /** This signal is emitted on validation of the name of a modified style (after pressing the + button). This validation happens on focus out or pressed enter key. + * @param name: the name by which the new style should be called */ + void newStyleRequested(QString name); + + /** This signal is emitted when the "show style manager" button is pressed in the dropdown list. + * @param index: the index of the item on which the button was pressed */ + void showStyleManager(int index); + + /** This signal is emitted when the "delete style" button is pressed in the dropdown list. + * @param index: the index of the item on which the button was pressed + * This is currently disabled */ + void deleteStyle(int index); + +private slots: + void slotDeleteStyle(QModelIndex); + void slotShowDia(QModelIndex); + void slotSelectionChanged(int index); + void slotItemClicked(QModelIndex); + void slotPreviewClicked(); + +private: + StylesModel *m_stylesModel; + StylesComboPreview *m_preview; + QListView *m_view; + int m_selectedItem; + bool m_originalStyle; +}; + +#endif //STYLESCOMBO_H diff -Nru calligra-2.3.86/plugins/textshape/dialogs/StylesComboPreview.cpp calligra-2.3.87/plugins/textshape/dialogs/StylesComboPreview.cpp --- calligra-2.3.86/plugins/textshape/dialogs/StylesComboPreview.cpp 1970-01-01 00:00:00.000000000 +0000 +++ calligra-2.3.87/plugins/textshape/dialogs/StylesComboPreview.cpp 2012-01-28 07:04:49.000000000 +0000 @@ -0,0 +1,198 @@ +/* This file is part of the KDE project + * Copyright (C) 2011 Pierre Stirnweiss + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU Library General Public + * License as published by the Free Software Foundation; either + * version 2 of the License, or (at your option) any later version. + * + * This library is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + * Library General Public License for more details. + * + * You should have received a copy of the GNU Library General Public License + * along with this library; see the file COPYING.LIB. If not, write to + * the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, + * Boston, MA 02110-1301, USA. +*/ + +/* + * This class is heavily inspired by KLineEdit, so here goes credit because credit is due (from klineedit.h): + * This class was originally inspired by Torben Weis' + * fileentry.cpp for KFM II. + + * Sven Radej + * Patrick Ward + * Preston Brown + + * Completely re-designed: + * Dawit Alemayehu + +*/ + +#include "StylesComboPreview.h" + +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include + +#include +#include + +#include + +StylesComboPreview::StylesComboPreview(QWidget *parent) : + QLineEdit(parent), + m_renamingNewStyle(false), + m_shouldAddNewStyle(false), + m_addButton(0) +{ + init(); +} + +StylesComboPreview::~StylesComboPreview() +{ + delete m_addButton; + m_addButton = 0; +} + +void StylesComboPreview::init() +{ + setReadOnly(true); + if (m_addButton) { + return; + } + + m_addButton = new QPushButton(this); + m_addButton->setCursor( Qt::ArrowCursor ); + m_addButton->setIcon(KIcon("list-add")); + m_addButton->setFlat(true); + m_addButton->setMinimumSize(16,16); + m_addButton->setMaximumSize(16, 16); +//TODO uncomment the following line after string freeze, also remove the _ in the middle of i18_nc call +// m_addButton->setToolTip( i18_nc( "@action:button Create a new style with the current properties", "Create style" ) ); + connect(m_addButton, SIGNAL(clicked()), this, SLOT(addNewStyle())); + + updateAddButton(); +} + +void StylesComboPreview::updateAddButton() +{ + if (!m_addButton) { + return; + } + + const QSize geom = size(); + const int buttonWidth = m_addButton->size().width(); + m_addButton->move(geom.width() - buttonWidth , (geom.height()-m_addButton->size().height())/2); +} + +void StylesComboPreview::setAddButtonShown(bool show) +{ + m_addButton->setVisible(show); +} + +QSize StylesComboPreview::availableSize() const +{ + return QSize(contentsRect().width()- m_addButton->width(), contentsRect().height()); ///TODO dynamic resizing when button shown/hidden. +} + +void StylesComboPreview::setPreview(QImage image) +{ + m_stylePreview = image; +} + +bool StylesComboPreview::isAddButtonShown() const +{ + return m_addButton != 0; +} + +void StylesComboPreview::resizeEvent( QResizeEvent * ev ) +{ + QLineEdit::resizeEvent(ev); + emit resized(); + updateAddButton(); +} + +void StylesComboPreview::keyPressEvent( QKeyEvent *e ) +{ + if (m_shouldAddNewStyle && e->key() == Qt::Key_Escape) { + m_renamingNewStyle = false; + m_shouldAddNewStyle = false; + setReadOnly(true); + setText(QString()); + e->accept(); + } + else if (m_shouldAddNewStyle && (e->key() == Qt::Key_Enter || e->key() == Qt::Key_Return)) { + m_renamingNewStyle = false; + m_shouldAddNewStyle = false; + emit newStyleRequested(text()); + setReadOnly(true); + setText(QString()); + e->accept(); + } + else { + QLineEdit::keyPressEvent(e); + } +} + +void StylesComboPreview::focusOutEvent(QFocusEvent *e) +{ + if (e->reason() != Qt::ActiveWindowFocusReason && e->reason() != Qt::PopupFocusReason) { + if (m_shouldAddNewStyle) { + m_renamingNewStyle = false; + m_shouldAddNewStyle = false; + emit newStyleRequested(text()); + setReadOnly(true); + setText(QString()); + e->accept(); + } + setReadOnly(true); + m_renamingNewStyle = false; + setText(QString()); + } + else { + QLineEdit::focusOutEvent(e); + } +} + +void StylesComboPreview::mouseReleaseEvent(QMouseEvent *event) +{ + Q_UNUSED(event); + if (!m_renamingNewStyle) { + emit clicked(); + } +} + +void StylesComboPreview::paintEvent( QPaintEvent *ev ) +{ + if (!m_renamingNewStyle) { + QLineEdit::paintEvent(ev); + QPainter p(this); + p.setClipRect(ev->rect()); + p.drawImage(contentsRect().topLeft(), m_stylePreview); + } + else { + QLineEdit::paintEvent(ev); + } +} + +void StylesComboPreview::addNewStyle() +{ + m_renamingNewStyle = true; + m_shouldAddNewStyle = true; + setText(i18n("New style")); + selectAll(); + setReadOnly(false); + this->setFocus(); +} + +#include "StylesComboPreview.moc" diff -Nru calligra-2.3.86/plugins/textshape/dialogs/StylesComboPreview.h calligra-2.3.87/plugins/textshape/dialogs/StylesComboPreview.h --- calligra-2.3.86/plugins/textshape/dialogs/StylesComboPreview.h 1970-01-01 00:00:00.000000000 +0000 +++ calligra-2.3.87/plugins/textshape/dialogs/StylesComboPreview.h 2012-01-28 07:04:49.000000000 +0000 @@ -0,0 +1,75 @@ +/* This file is part of the KDE project + * Copyright (C) 2011 Pierre Stirnweiss + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU Library General Public + * License as published by the Free Software Foundation; either + * version 2 of the License, or (at your option) any later version. + * + * This library is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + * Library General Public License for more details. + * + * You should have received a copy of the GNU Library General Public License + * along with this library; see the file COPYING.LIB. If not, write to + * the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, + * Boston, MA 02110-1301, USA. +*/ + +#ifndef STYLESCOMBOPREVIEW_H +#define STYLESCOMBOPREVIEW_H + +#include + +class QImage; +class QPushButton; +class QSize; +class QString; + +/** This is an internal class, used for the preview of styles in the main area of the @class StylesCombo. */ + +class StylesComboPreview : public QLineEdit +{ + Q_OBJECT + + Q_PROPERTY( bool showAddButton READ isAddButtonShown WRITE setAddButtonShown ) + +public: + explicit StylesComboPreview(QWidget *parent = 0); + ~StylesComboPreview(); + + QSize availableSize() const; + void setAddButtonShown(bool show); + bool isAddButtonShown() const; + + void setPreview(QImage image); + +signals: + void resized(); + void newStyleRequested(QString name); + void clicked(); + +protected: + virtual void resizeEvent(QResizeEvent *event); + virtual void keyPressEvent(QKeyEvent *event); + virtual void focusOutEvent(QFocusEvent *); + virtual void mouseReleaseEvent(QMouseEvent *event); + virtual void paintEvent(QPaintEvent *event); + +private slots: + void addNewStyle(); + +private: + void init(); + void updateAddButton(); + + bool m_renamingNewStyle; + bool m_shouldAddNewStyle; + + QImage m_stylePreview; + + QPushButton *m_addButton; +}; + +#endif // STYLESCOMBOPREVIEW_H diff -Nru calligra-2.3.86/plugins/textshape/dialogs/StylesDelegate.cpp calligra-2.3.87/plugins/textshape/dialogs/StylesDelegate.cpp --- calligra-2.3.86/plugins/textshape/dialogs/StylesDelegate.cpp 2012-01-07 03:25:03.000000000 +0000 +++ calligra-2.3.87/plugins/textshape/dialogs/StylesDelegate.cpp 2012-01-28 07:04:49.000000000 +0000 @@ -1,5 +1,6 @@ /* This file is part of the KDE project * Copyright (C) 2011 Casper Boemann + * Copyright (C) 2011-2012 Pierre Stirnweiss * * This library is free software; you can redistribute it and/or * modify it under the terms of the GNU Library General Public @@ -19,25 +20,187 @@ #include "StylesDelegate.h" + +#include +#include +#include +#include #include +#include +#include +#include +#include +#include +#include + +#include +#include + StylesDelegate::StylesDelegate() - : QStyledItemDelegate() + : QStyledItemDelegate(), + m_editButtonPressed(false), + m_deleteButtonPressed(false) { + m_buttonSize = 16; + m_buttonDistance = 2; } -void StylesDelegate::paint(QPainter *painter, const QStyleOptionViewItem &option, +void StylesDelegate::paint(QPainter *painter, const QStyleOptionViewItem &optionV1, const QModelIndex &index) const { - if (index.column() == 1) { - painter->fillRect(option.rect, QColor(Qt::red)); - - } else { - QStyledItemDelegate::paint(painter, option, index); - } + QStyleOptionViewItemV4 option = optionV1; + initStyleOption(&option, index); + QStyledItemDelegate::paint(painter, option, index); + + //the following is needed to find out if the view has vertical scrollbars. If there is no view just paint and do not attempt to draw the control buttons. + //this is needed because it seems that the option.rect given does not exclude the vertical scrollBar. This means that we can draw the button in an area that is going to be covered by the vertical scrollBar. + const QAbstractItemView *view = static_cast(option.widget); + if (!view){ + return; + } + QScrollBar *scrollBar = view->verticalScrollBar(); + int scrollBarWidth = 0; + if (scrollBar->isVisible()) { + scrollBarWidth = scrollBar->width(); + } + + if (!index.isValid() || !(option.state & QStyle::State_MouseOver)) { + return; + } + // Delete style button. + int dx1 = option.rect.width() - qMin(option.rect.height()-2, m_buttonSize) - m_buttonSize - m_buttonDistance -2; + int dy1 = 1 + (option.rect.height()-qMin(option.rect.height(), m_buttonSize))/2; + int dx2 = -m_buttonSize - m_buttonDistance -2; + int dy2 = -1 -(option.rect.height()-qMin(option.rect.height(), m_buttonSize))/2; +/* TODO: when we can safely delete styles, re-enable this + QStyleOptionButton optDel; + if (!m_deleteButtonPressed) { + optDel.state |= QStyle::State_Enabled; + } + optDel.icon = KIcon("edit-delete"); + optDel.features |= QStyleOptionButton::Flat; + optDel.rect = option.rect.adjusted(dx1 - scrollBarWidth, dy1, dx2 - scrollBarWidth, dy2); + view->style()->drawControl(QStyle::CE_PushButton, &optDel, painter, 0); +*/ + // Open style manager dialog button. + dx1 = option.rect.width() - qMin(option.rect.height()-2, m_buttonSize) -2; + dy1 = 1 + (option.rect.height()-qMin(option.rect.height(), m_buttonSize))/2; + dx2 = -2; + dy2 = -1 -(option.rect.height()-qMin(option.rect.height(), m_buttonSize))/2; + QStyleOptionButton optEdit; + if (!m_editButtonPressed) { + optEdit.state |= QStyle::State_Enabled; + } + optEdit.icon = KIcon("document-properties"); + optEdit.features |= QStyleOptionButton::Flat; + optEdit.rect = option.rect.adjusted(dx1 - scrollBarWidth, dy1, dx2 - scrollBarWidth, dy2); + view->style()->drawControl(QStyle::CE_PushButton, &optEdit, painter, 0); } QSize StylesDelegate::sizeHint(const QStyleOptionViewItem &option, const QModelIndex &index) const { - return QSize(250,48); + Q_UNUSED(option); + return index.data(Qt::SizeHintRole).toSize(); +} + +bool StylesDelegate::editorEvent(QEvent *event, QAbstractItemModel *model, const QStyleOptionViewItem &optionV1, const QModelIndex &index) +{ + Q_UNUSED(model); + QStyleOptionViewItemV4 option = optionV1; + initStyleOption(&option, index); + + //the following is needed to find out if the view has vertical scrollbars. If not just paint and do not attempt to draw the control buttons. + //this is needed because it seems that the option.rect given does not exclude the vertical scrollBar. This means that we can draw the button in an area that is going to be covered by the vertical scrollBar. + + const QAbstractItemView *view = static_cast(option.widget); + if (!view){ + return false; + } + QScrollBar *scrollBar = view->verticalScrollBar(); + int scrollBarWidth = 0; + if (scrollBar->isVisible()) { + scrollBarWidth = scrollBar->width(); + } + + if (event->type() == QEvent::MouseButtonPress) { + QMouseEvent *mouseEvent = static_cast(event); + int dx1 = option.rect.width()- qMin(option.rect.height()-2, m_buttonSize) - m_buttonSize - m_buttonDistance -2; + int dy1 = 1 + (option.rect.height()-qMin(option.rect.height(), m_buttonSize))/2; + int dx2 = - m_buttonSize - m_buttonDistance -2; + int dy2 = -1 -(option.rect.height()-qMin(option.rect.height(), m_buttonSize))/2; +/*TODO: when we can safely delete styles, re-enable this + QRect delRect = option.rect.adjusted(dx1 - scrollBarWidth, dy1, dx2 - scrollBarWidth, dy2); + if (delRect.contains(mouseEvent->pos())) { + m_deleteButtonPressed = true; + } + else { + m_deleteButtonPressed = false; + } +*/ + dx1 = option.rect.width() - qMin(option.rect.height()-2, m_buttonSize) -2; + dy1 = 1 + (option.rect.height()-qMin(option.rect.height(), m_buttonSize))/2; + dx2 = -2; + dy2 = -1 -(option.rect.height()-qMin(option.rect.height(), m_buttonSize))/2; + QRect editRect = option.rect.adjusted(dx1 - scrollBarWidth, dy1, dx2 - scrollBarWidth, dy2); + if (editRect.contains(mouseEvent->pos())){ + m_editButtonPressed = true; + } + else { + m_editButtonPressed = false; + } + emit needsUpdate(index); + } + if (event->type() == QEvent::MouseButtonRelease) { + m_deleteButtonPressed = false; + m_editButtonPressed = false; + emit needsUpdate(index); + QMouseEvent *mouseEvent = static_cast(event); + int dx1 = option.rect.width() - qMin(option.rect.height()-2, m_buttonSize) - m_buttonSize - m_buttonDistance -2; + int dy1 = 1 + (option.rect.height()-qMin(option.rect.height(), m_buttonSize))/2; + int dx2 = - m_buttonSize - m_buttonDistance -2; + int dy2 = -1 -(option.rect.height()-qMin(option.rect.height(), m_buttonSize))/2; +/*TODO: when we can safely delete styles, re-enable this + QRect delRect = option.rect.adjusted(dx1 - scrollBarWidth, dy1, dx2 - scrollBarWidth, dy2); + if (delRect.contains(mouseEvent->pos())) { + emit deleteStyleButtonClicked(index); + return true; + } +*/ + dx1 = option.rect.width() - qMin(option.rect.height()-2, m_buttonSize) -2; + dy1 = 1 + (option.rect.height()-qMin(option.rect.height(), m_buttonSize))/2; + dx2 = -2; + dy2 = -1 -(option.rect.height()-qMin(option.rect.height(), m_buttonSize))/2; + QRect editRect = option.rect.adjusted(dx1 - scrollBarWidth, dy1, dx2 - scrollBarWidth, dy2); + if (editRect.contains(mouseEvent->pos())){ + emit styleManagerButtonClicked(index); + return true; + } + emit clickedInItem(index); + return false; + } + if (event->type() == QEvent::MouseMove) { + QMouseEvent *mouseEvent = static_cast(event); + int dx1 = option.rect.width() - qMin(option.rect.height()-2, m_buttonSize) - m_buttonSize - m_buttonDistance -2; + int dy1 = 1 + (option.rect.height()-qMin(option.rect.height(), m_buttonSize))/2; + int dx2 = - m_buttonSize - m_buttonDistance -2; + int dy2 = -1 -(option.rect.height()-qMin(option.rect.height(), m_buttonSize))/2; +/*TODO: when we can safely delete styles, re-enable this + QRect delRect = option.rect.adjusted(dx1 - scrollBarWidth, dy1, dx2 - scrollBarWidth, dy2); + if (!delRect.contains(mouseEvent->pos())) { + m_deleteButtonPressed = false; + } +*/ + dx1 = option.rect.width() - qMin(option.rect.height()-2, m_buttonSize) -2; + dy1 = 1 + (option.rect.height()-qMin(option.rect.height(), m_buttonSize))/2; + dx2 = -2; + dy2 = -1 -(option.rect.height()-qMin(option.rect.height(), m_buttonSize))/2; + QRect editRect = option.rect.adjusted(dx1 - scrollBarWidth, dy1, dx2 - scrollBarWidth, dy2); + if (!editRect.contains(mouseEvent->pos())){ + m_editButtonPressed = false; + } + emit needsUpdate(index); + return false; + } + return false; } diff -Nru calligra-2.3.86/plugins/textshape/dialogs/StylesDelegate.h calligra-2.3.87/plugins/textshape/dialogs/StylesDelegate.h --- calligra-2.3.86/plugins/textshape/dialogs/StylesDelegate.h 2012-01-07 03:25:03.000000000 +0000 +++ calligra-2.3.87/plugins/textshape/dialogs/StylesDelegate.h 2012-01-28 07:04:49.000000000 +0000 @@ -1,5 +1,6 @@ /* This file is part of the KDE project * Copyright (C) 2011 Casper Boemann + * Copyright (C) 2011-2012 Pierre Stirnweiss * * This library is free software; you can redistribute it and/or * modify it under the terms of the GNU Library General Public @@ -21,19 +22,36 @@ #include -class KoStyleManager; -class KoParagraphStyle; -class KoCharacterStyle; +/** This is an internal class, used for the preview of styles in the dropdown of the @class StylesCombo. + * This class is also responsible for drawing and handling the buttons to call the style manager or to delete a style. + * NB. Deleting a style is currently not supported, therefore the button has been disabled. */ class StylesDelegate : public QStyledItemDelegate { Q_OBJECT + public: StylesDelegate(); virtual void paint(QPainter *painter, const QStyleOptionViewItem &option, const QModelIndex &index) const; virtual QSize sizeHint(const QStyleOptionViewItem &option, const QModelIndex &index) const; + + virtual bool editorEvent(QEvent *event, QAbstractItemModel *model, + const QStyleOptionViewItem &option, const QModelIndex &index); + +signals: + void styleManagerButtonClicked(QModelIndex index); + void deleteStyleButtonClicked(QModelIndex index); + void needsUpdate(QModelIndex index); + void clickedInItem(QModelIndex index); + +private: + bool m_editButtonPressed; + bool m_deleteButtonPressed; + + int m_buttonSize; + int m_buttonDistance; }; #endif diff -Nru calligra-2.3.86/plugins/textshape/dialogs/StylesModel.cpp calligra-2.3.87/plugins/textshape/dialogs/StylesModel.cpp --- calligra-2.3.86/plugins/textshape/dialogs/StylesModel.cpp 2012-01-07 03:25:03.000000000 +0000 +++ calligra-2.3.87/plugins/textshape/dialogs/StylesModel.cpp 2012-01-28 07:04:49.000000000 +0000 @@ -1,6 +1,7 @@ /* This file is part of the KDE project * Copyright (C) 2008 Thomas Zander * Copyright (C) 2011 Casper Boemann + * Copyright (C) 2011-2012 Pierre Stirnweiss * * This library is free software; you can redistribute it and/or * modify it under the terms of the GNU Library General Public @@ -18,44 +19,43 @@ * Boston, MA 02110-1301, USA. */ #include "StylesModel.h" -#include "TextTool.h" -#include -#include -#include -#include -#include - -#include #include +#include #include #include +#include +#include +#include +#include + #include -#include -#include -#include -#include -#include +#include #include -#include - - -StylesModel::StylesModel(KoStyleManager *manager, bool paragraphMode, QObject *parent) +StylesModel::StylesModel(KoStyleManager *manager, Type modelType, QObject *parent) : QAbstractListModel(parent), m_styleManager(0), m_styleThumbnailer(0), m_currentParagraphStyle(0), - m_currentCharacterStyle(0), - m_pureParagraphStyle(true), - m_pureCharacterStyle(true), - m_paragraphMode(paragraphMode), + m_defaultCharacterStyle(0), + m_modelType(modelType), m_styleMapper(new QSignalMapper(this)), - m_tmpTextShape(0) + m_provideStyleNone(false) { setStyleManager(manager); + //Create a default characterStyle for the preview of "None" character style + if (m_modelType == StylesModel::CharacterStyle) { + m_defaultCharacterStyle = new KoCharacterStyle(); + m_defaultCharacterStyle->setStyleId(-1); + m_defaultCharacterStyle->setName(i18n("None")); + m_defaultCharacterStyle->setFontPointSize(12); + + m_provideStyleNone = true; + } + m_paragIcon = KIcon("kotext-paragraph"); m_charIcon = KIcon("kotext-character"); connect(m_styleMapper, SIGNAL(mapped(int)), this, SLOT(updateName(int))); @@ -63,7 +63,8 @@ StylesModel::~StylesModel() { - delete m_tmpTextShape; + delete m_currentParagraphStyle; + delete m_defaultCharacterStyle; } QModelIndex StylesModel::index(int row, int column, const QModelIndex &parent) const @@ -92,32 +93,46 @@ if (!index.isValid()) return QVariant(); - int id = (int) index.internalId(); - switch (role) { + int id = (int)index.internalId(); + switch (role){ case Qt::DisplayRole: { return QVariant(); - KoParagraphStyle *paragStyle = m_styleManager->paragraphStyle(id); - if (paragStyle) - return paragStyle->name(); - KoCharacterStyle *characterStyle = m_styleManager->characterStyle(id); - if (characterStyle) - return characterStyle->name(); - break; } case Qt::DecorationRole: { if (!m_styleThumbnailer) { return QPixmap(); } - KoParagraphStyle *paragStyle = m_styleManager->paragraphStyle(id); - if (paragStyle) { - return m_styleThumbnailer->thumbnail(paragStyle); - } - KoCharacterStyle *characterStyle = m_styleManager->characterStyle(id); - if (characterStyle) { - return m_styleThumbnailer->thumbnail(characterStyle); + if (m_modelType == StylesModel::ParagraphStyle) { + KoParagraphStyle *paragStyle = m_styleManager->paragraphStyle(id); + if (paragStyle) { + return m_styleThumbnailer->thumbnail(paragStyle); + } + } + else { + KoCharacterStyle *usedStyle = 0; + if (id == -1) { + usedStyle = static_cast(m_currentParagraphStyle); + if (!usedStyle) { + usedStyle = m_defaultCharacterStyle; + } + usedStyle->setName(i18n("None")); + if (usedStyle->styleId() >= 0) { //if the styleId is -1, we are using the default character style + usedStyle->setStyleId(-usedStyle->styleId()); //this style is not managed by the styleManager but its styleId will be used in the thumbnail cache as part of the key. + } + return m_styleThumbnailer->thumbnail(usedStyle); + } + else { + usedStyle = m_styleManager->characterStyle(id); + if (usedStyle) { + return m_styleThumbnailer->thumbnail(usedStyle, m_currentParagraphStyle); + } + } } break; } + case Qt::SizeHintRole: { + return QVariant(QSize(250, 48)); + } default: break; }; return QVariant(); @@ -130,20 +145,23 @@ return (Qt::ItemIsSelectable | Qt::ItemIsEnabled); } -void StylesModel::setCurrentParagraphStyle(int styleId, bool unchanged) +void StylesModel::setCurrentParagraphStyle(int styleId) { - if (m_currentParagraphStyle == styleId && unchanged == m_pureParagraphStyle) - return; - m_currentParagraphStyle = styleId; - m_pureParagraphStyle = unchanged; + if (!m_styleManager || m_currentParagraphStyle == m_styleManager->paragraphStyle(styleId) || !m_styleManager->paragraphStyle(styleId)) { + return; //TODO do we create a default paragraphStyle? use the styleManager default? + } + if (m_currentParagraphStyle) { + delete m_currentParagraphStyle; + m_currentParagraphStyle = 0; + } + m_currentParagraphStyle = m_styleManager->paragraphStyle(styleId)->clone(); } -void StylesModel::setCurrentCharacterStyle(int styleId, bool unchanged) +void StylesModel::setProvideStyleNone(bool provide) { - if (m_currentCharacterStyle == styleId && unchanged == m_pureCharacterStyle) - return; - m_currentCharacterStyle = styleId; - m_pureCharacterStyle = unchanged; + if (m_modelType == StylesModel::CharacterStyle) { + m_provideStyleNone = provide; + } } KoParagraphStyle *StylesModel::paragraphStyleForIndex(const QModelIndex &index) const @@ -154,7 +172,8 @@ QModelIndex StylesModel::indexForParagraphStyle(const KoParagraphStyle &style) const { if (&style) { - return createIndex(m_styleList.indexOf(style.styleId()), 0, style.styleId());; + QModelIndex index = createIndex(m_styleList.indexOf(style.styleId()), 0, style.styleId()); + return index; } else { return QModelIndex(); @@ -176,6 +195,41 @@ } } +QImage StylesModel::stylePreview(int row, QSize size) +{ + if (!m_styleManager || !m_styleThumbnailer) { + return QImage(); + } + if (m_modelType == StylesModel::ParagraphStyle) { + KoParagraphStyle *usedStyle = 0; + usedStyle = m_styleManager->paragraphStyle(index(row).internalId()); + if (usedStyle) { + return m_styleThumbnailer->thumbnail(usedStyle, size); + } + } + else { + KoCharacterStyle *usedStyle = 0; + if (index(row).internalId() == -1) { + usedStyle = static_cast(m_currentParagraphStyle); + if (!usedStyle) { + usedStyle = m_defaultCharacterStyle; + } + usedStyle->setName(i18n("None")); + if (usedStyle->styleId() >= 0) { + usedStyle->setStyleId(-usedStyle->styleId()); //this style is not managed by the styleManager but its styleId will be used in the thumbnail cache as part of the key. + } + return m_styleThumbnailer->thumbnail(usedStyle, m_currentParagraphStyle, size); + } + else { + usedStyle = m_styleManager->characterStyle(index(row).internalId()); + if (usedStyle) { + return m_styleThumbnailer->thumbnail(usedStyle, m_currentParagraphStyle, size); + } + } + } + return QImage(); +} + void StylesModel::setStyleManager(KoStyleManager *sm) { if (sm == m_styleManager) @@ -191,14 +245,12 @@ return; } - if (m_paragraphMode) { - foreach(KoParagraphStyle *style, m_styleManager->paragraphStyles()) - addParagraphStyle(style); + if (m_modelType == StylesModel::ParagraphStyle) { + updateParagraphStyles(); connect(sm, SIGNAL(styleAdded(KoParagraphStyle*)), this, SLOT(addParagraphStyle(KoParagraphStyle*))); connect(sm, SIGNAL(styleRemoved(KoParagraphStyle*)), this, SLOT(removeParagraphStyle(KoParagraphStyle*))); } else { - foreach(KoCharacterStyle *style, m_styleManager->characterStyles()) - addCharacterStyle(style); + updateCharacterStyles(); connect(sm, SIGNAL(styleAdded(KoCharacterStyle*)), this, SLOT(addCharacterStyle(KoCharacterStyle*))); connect(sm, SIGNAL(styleRemoved(KoCharacterStyle*)), this, SLOT(removeCharacterStyle(KoCharacterStyle*))); } @@ -213,40 +265,197 @@ void StylesModel::addParagraphStyle(KoParagraphStyle *style) { Q_ASSERT(style); - m_styleList.append(style->styleId()); + QList::iterator begin = m_styleList.begin(); + int index = 0; + for ( ; begin != m_styleList.end(); ++begin) { + KoParagraphStyle *s = m_styleManager->paragraphStyle(*begin); + // s should be found as the manager and the m_styleList should be in sync + Q_ASSERT(s); + if (QString::localeAwareCompare(style->name(), s->name()) < 0) { + break; + } + ++index; + } + beginInsertRows(QModelIndex(), index, index); + m_styleList.insert(begin, style->styleId()); m_styleMapper->setMapping(style, style->styleId()); connect(style, SIGNAL(nameChanged(const QString&)), m_styleMapper, SLOT(map())); + endInsertRows(); +} + +bool sortParagraphStyleByName(KoParagraphStyle *style1, KoParagraphStyle *style2) +{ + Q_ASSERT(style1); + Q_ASSERT(style2); + return QString::localeAwareCompare(style1->name(), style2->name()) < 0; +} + +void StylesModel::updateParagraphStyles() +{ + Q_ASSERT(m_styleManager); + + beginResetModel(); + m_styleList.clear(); + + QList styles = m_styleManager->paragraphStyles(); + qSort(styles.begin(), styles.end(), sortParagraphStyleByName); + + foreach(KoParagraphStyle *style, styles) { + m_styleList.append(style->styleId()); + m_styleMapper->setMapping(style, style->styleId()); + connect(style, SIGNAL(nameChanged(const QString&)), m_styleMapper, SLOT(map())); + } + + endResetModel(); } // called when the stylemanager adds a style void StylesModel::addCharacterStyle(KoCharacterStyle *style) { Q_ASSERT(style); - m_styleList.append(style->styleId()); + // find the place where we need to insert the style + QList::iterator begin = m_styleList.begin(); + int index = 0; + // the None style should also be the first one so only start after it + if (begin != m_styleList.end() && *begin == -1) { + ++begin; + ++index; + } + for ( ; begin != m_styleList.end(); ++begin) { + KoCharacterStyle *s = m_styleManager->characterStyle(*begin); + // s should be found as the manager and the m_styleList should be in sync + Q_ASSERT(s); + if (QString::localeAwareCompare(style->name(), s->name()) < 0) { + break; + } + ++index; + } + beginInsertRows(QModelIndex(), index, index); + m_styleList.insert(index, style->styleId()); + endInsertRows(); m_styleMapper->setMapping(style, style->styleId()); connect(style, SIGNAL(nameChanged(const QString&)), m_styleMapper, SLOT(map())); } +bool sortCharacterStyleByName(KoCharacterStyle *style1, KoCharacterStyle *style2) +{ + Q_ASSERT(style1); + Q_ASSERT(style2); + return QString::localeAwareCompare(style1->name(), style2->name()) < 0; +} + +void StylesModel::updateCharacterStyles() +{ + Q_ASSERT(m_styleManager); + + beginResetModel(); + m_styleList.clear(); + + if (m_provideStyleNone && m_styleManager->paragraphStyles().count()) { + m_styleList.append(-1); + } + + QList styles = m_styleManager->characterStyles(); + qSort(styles.begin(), styles.end(), sortCharacterStyleByName); + + foreach(KoCharacterStyle *style, styles) { + m_styleList.append(style->styleId()); + m_styleMapper->setMapping(style, style->styleId()); + connect(style, SIGNAL(nameChanged(const QString&)), m_styleMapper, SLOT(map())); + } + + endResetModel(); +} + // called when the stylemanager removes a style void StylesModel::removeParagraphStyle(KoParagraphStyle *style) { + int row = m_styleList.indexOf(style->styleId()); + beginRemoveRows(QModelIndex(), row, row); m_styleMapper->removeMappings(style); disconnect(style, SIGNAL(nameChanged(const QString&)), m_styleMapper, SLOT(map())); + m_styleList.removeAt(row); + endRemoveRows(); } // called when the stylemanager removes a style void StylesModel::removeCharacterStyle(KoCharacterStyle *style) { + int row = m_styleList.indexOf(style->styleId()); + beginRemoveRows(QModelIndex(), row, row); m_styleMapper->removeMappings(style); disconnect(style, SIGNAL(nameChanged(const QString&)), m_styleMapper, SLOT(map())); + m_styleList.removeAt(row); + endRemoveRows(); } void StylesModel::updateName(int styleId) { - // TODO, no idea how to do this more correct for children... - int row = m_styleList.indexOf(styleId); - if (row >= 0) { - QModelIndex index = createIndex(row, 0, styleId); - emit dataChanged(index, index); + // updating the name of a style can mean that the style needs to be moved inside the list to keep the sort order. + int oldIndex = m_styleList.indexOf(styleId); + if (oldIndex >= 0) { + int newIndex = 0; + if (m_modelType == StylesModel::ParagraphStyle) { + KoParagraphStyle *paragStyle = m_styleManager->paragraphStyle(styleId); + if (paragStyle) { + m_styleThumbnailer->removeFromCache(paragStyle); + + QList::iterator begin = m_styleList.begin(); + for ( ; begin != m_styleList.end(); ++begin) { + // don't test again the same style + if (*begin == styleId) { + continue; + } + KoParagraphStyle *s = m_styleManager->paragraphStyle(*begin); + // s should be found as the manager and the m_styleList should be in sync + Q_ASSERT(s); + if (QString::localeAwareCompare(paragStyle->name(), s->name()) < 0) { + break; + } + ++newIndex; + } + if (oldIndex != newIndex) { + // beginMoveRows needs the index where it would be placed when it is still in the old position + // so add one when newIndex > oldIndex + beginMoveRows(QModelIndex(), oldIndex, oldIndex, QModelIndex(), newIndex > oldIndex ? newIndex + 1 : newIndex); + m_styleList.removeAt(oldIndex); + m_styleList.insert(newIndex, styleId); + endMoveRows(); + } + } + } + else { + KoCharacterStyle *characterStyle = m_styleManager->characterStyle(styleId); + if (characterStyle) { + m_styleThumbnailer->removeFromCache(characterStyle); + + QList::iterator begin = m_styleList.begin(); + if (begin != m_styleList.end() && *begin == -1) { + ++begin; + ++newIndex; + } + for ( ; begin != m_styleList.end(); ++begin) { + // don't test again the same style + if (*begin == styleId) { + continue; + } + KoCharacterStyle *s = m_styleManager->characterStyle(*begin); + // s should be found as the manager and the m_styleList should be in sync + Q_ASSERT(s); + if (QString::localeAwareCompare(characterStyle->name(), s->name()) < 0) { + break; + } + ++newIndex; + } + if (oldIndex != newIndex) { + // beginMoveRows needs the index where it would be placed when it is still in the old position + // so add one when newIndex > oldIndex + beginMoveRows(QModelIndex(), oldIndex, oldIndex, QModelIndex(), newIndex > oldIndex ? newIndex + 1 : newIndex); + m_styleList.removeAt(oldIndex); + m_styleList.insert(newIndex, styleId); + endMoveRows(); + } + } + } } } diff -Nru calligra-2.3.86/plugins/textshape/dialogs/StylesModel.h calligra-2.3.87/plugins/textshape/dialogs/StylesModel.h --- calligra-2.3.86/plugins/textshape/dialogs/StylesModel.h 2012-01-07 03:25:03.000000000 +0000 +++ calligra-2.3.87/plugins/textshape/dialogs/StylesModel.h 2012-01-28 07:04:49.000000000 +0000 @@ -1,6 +1,7 @@ /* This file is part of the KDE project * Copyright (C) 2008 Thomas Zander * Copyright (C) 2011 Casper Boemann + * Copyright (C) 2011-2012 Pierre Stirnweiss * * This library is free software; you can redistribute it and/or * modify it under the terms of the GNU Library General Public @@ -21,27 +22,39 @@ #define MODEL_H #include -#include -#include -#include -#include +#include class KoStyleThumbnailer; class KoStyleManager; class KoParagraphStyle; class KoCharacterStyle; + +class QImage; class QSignalMapper; -class TextShape; +class QSize; + +/** This class is used to provide widgets (like the @class StylesCombo) the styles available to the document being worked on. The @class StylesModel can be of two types: character styles or paragraph styles type. This allows the widget to ignore the type of style it is handling. + * Character styles in ODF can be specified in two ways. First, a named character style, specifying character formatting properties. It is meant to be used on a couple of individual characters. Secondely, a paragraph style also specifies character formatting properties, which are to be considered the default for that particular paragraph. + * For this reason, the @class Stylesmodel, when of the type @value characterStyle, do not list the paragraph style names. Only the specific named chracter styles are listed. Additionnaly, as the first item, a virtual style "As paragraph" is provided. Selecting this "style" will set the character properties as specified by the paragraph style currently applied to the selection. + * This class requires that a @class KoStyleManager and a @class KoStyleThumbnailer be set. See below methods. +*/ class StylesModel : public QAbstractListModel { Q_OBJECT public: - explicit StylesModel(KoStyleManager *styleManager, bool paragraphMode, QObject *parent = 0); + enum Type { + CharacterStyle, + ParagraphStyle + }; + + explicit StylesModel(KoStyleManager *styleManager, Type modelType, QObject *parent = 0); ~StylesModel(); + /** Re-implemented from QAbstractItemModel. */ + virtual QModelIndex index(int row, int column=0, const QModelIndex &parent = QModelIndex()) const; virtual int rowCount(const QModelIndex &parent) const; @@ -50,28 +63,39 @@ virtual Qt::ItemFlags flags(const QModelIndex &index) const; + /** Specific methods of the StylesModel */ + + /** Specify if the combo should provide the virtual style None. This style is a virtual style which equates to no style. It is only relevant for character styles. + In case the "None" character style is selected, the character formatting properties of the paragraph style are used. + A @class StylesModel of the @enum Type ParagraphStyle always has this property set to false. + On the other hand, the default for a @class StylesModel of the @enum Type CharacterStyle is true. + */ + void setProvideStyleNone(bool provide); + + /** Returns the @class KoParagraphStyle corresponding to the specified @param index. */ KoParagraphStyle *paragraphStyleForIndex(const QModelIndex &index) const; + /** Return a @class QModelIndex for the specified @param style. */ QModelIndex indexForParagraphStyle(const KoParagraphStyle &style) const; + /** Returns the @class KoCharacterhStyle corresponding to the specified @param index. */ KoCharacterStyle *characterStyleForIndex(const QModelIndex &index) const; + /** Return a @class QModelIndex for the specified @param style. */ QModelIndex indexForCharacterStyle(const KoCharacterStyle &style) const; + /** Returns a QImage which is a preview of the style specified by @param row of the given @param size. + * If size isn't specified, the default size of the given @class KoStyleThumbnailer is used. + */ + QImage stylePreview(int row, QSize size = QSize()); + + /** Sets the @class KoStyleManager of the model. Setting this will populate the styles. It is required that a @param manager is set before using the model. + * CAUTION: Populating the style will select the first inserted item. If this model is already set on a view, this might cause the view to emit an item selection changed signal. + */ void setStyleManager(KoStyleManager *manager); + /** Sets the @class KoStyleThumbnailer of the model. It is required that a @param thumbnailer is set before using the model. */ void setStyleThumbnailer(KoStyleThumbnailer *thumbnailer); -public slots: - /** - Sets the paragraph style that is to be marked as the 'active' one. - @param styleId the id from KoParagraphStyle::styleId() - @param unchanged if true the icon will display the paragraph style in the text has no local modifications. - */ - void setCurrentParagraphStyle(int styleId, bool unchanged); - /** - Sets the character style that is to be marked as the 'active' one. - @param styleId the id from KoCharacterStyle::styleId() - @param unchanged if true the icon will display the character style in the text has no local modifications. - */ - void setCurrentCharacterStyle(int styleId, bool unchanged); + /** Specifies which paragraph style is currently the active one (on the current paragraph). This is used in order to properly preview the "As paragraph" virtual character style. */ + void setCurrentParagraphStyle(int styleId); private slots: void addParagraphStyle(KoParagraphStyle*); @@ -80,6 +104,10 @@ void removeCharacterStyle(KoCharacterStyle*); void updateName(int styleId); +private: + void updateParagraphStyles(); + void updateCharacterStyles(); + protected: QList m_styleList; // list of style IDs @@ -87,16 +115,15 @@ KoStyleManager *m_styleManager; KoStyleThumbnailer *m_styleThumbnailer; - int m_currentParagraphStyle; - int m_currentCharacterStyle; - bool m_pureParagraphStyle; - bool m_pureCharacterStyle; - bool m_paragraphMode; + KoParagraphStyle *m_currentParagraphStyle; + KoCharacterStyle *m_defaultCharacterStyle; + Type m_modelType; - QIcon m_paragIcon, m_charIcon; + KIcon m_paragIcon, m_charIcon; QSignalMapper *m_styleMapper; - TextShape *m_tmpTextShape; + + bool m_provideStyleNone; }; #endif diff -Nru calligra-2.3.86/plugins/textshape/dialogs/StylesWidget.cpp calligra-2.3.87/plugins/textshape/dialogs/StylesWidget.cpp --- calligra-2.3.86/plugins/textshape/dialogs/StylesWidget.cpp 2012-01-07 03:25:03.000000000 +0000 +++ calligra-2.3.87/plugins/textshape/dialogs/StylesWidget.cpp 2012-01-28 07:04:49.000000000 +0000 @@ -21,9 +21,9 @@ #include "StylesDelegate.h" #include "ParagraphGeneral.h" #include "CharacterGeneral.h" +#include #include -#include #include #include @@ -42,7 +42,7 @@ : QFrame(parent, f), m_styleManager(0), m_styleThumbnailer(0), - m_stylesModel(new StylesModel(0, paragraphMode)), + m_stylesModel(new StylesModel(0, StylesModel::ParagraphStyle)), m_stylesDelegate(new StylesDelegate()), m_blockSignals(false), m_isHovered(false) @@ -52,7 +52,7 @@ m_stylesModel->setStyleThumbnailer(m_styleThumbnailer); widget.setupUi(this); widget.stylesView->setModel(m_stylesModel); - widget.stylesView->setItemDelegate(m_stylesDelegate); +// widget.stylesView->setItemDelegate(m_stylesDelegate); if (paragraphMode) { connect(widget.stylesView, SIGNAL(clicked(const QModelIndex&)), this, SLOT(applyParagraphStyle())); @@ -103,7 +103,7 @@ } m_blockSignals = true; - m_stylesModel->setCurrentParagraphStyle(id, unchanged); +// m_stylesModel->setCurrentParagraphStyle(id, unchanged); m_blockSignals = false; widget.stylesView->setCurrentIndex(m_stylesModel->indexForParagraphStyle(*usedStyle)); } @@ -134,7 +134,7 @@ } m_blockSignals = true; - m_stylesModel->setCurrentCharacterStyle(id, unchanged); +// m_stylesModel->setCurrentCharacterStyle(id, unchanged); m_blockSignals = false; widget.stylesView->setCurrentIndex(m_stylesModel->indexForCharacterStyle(*usedStyle)); } diff -Nru calligra-2.3.86/plugins/textshape/dialogs/TableOfContentsStyleModel.cpp calligra-2.3.87/plugins/textshape/dialogs/TableOfContentsStyleModel.cpp --- calligra-2.3.86/plugins/textshape/dialogs/TableOfContentsStyleModel.cpp 2012-01-07 03:25:03.000000000 +0000 +++ calligra-2.3.87/plugins/textshape/dialogs/TableOfContentsStyleModel.cpp 2012-01-28 07:04:49.000000000 +0000 @@ -20,7 +20,7 @@ #include "TableOfContentsStyleModel.h" #include "KoStyleManager.h" -#include "KoStyleThumbnailer.h" +#include #include "KoParagraphStyle.h" #include "ToCBibGeneratorInfo.h" #include "KoTableOfContentsGeneratorInfo.h" diff -Nru calligra-2.3.86/plugins/textshape/ReferencesToolFactory.cpp calligra-2.3.87/plugins/textshape/ReferencesToolFactory.cpp --- calligra-2.3.86/plugins/textshape/ReferencesToolFactory.cpp 2012-01-07 03:25:03.000000000 +0000 +++ calligra-2.3.87/plugins/textshape/ReferencesToolFactory.cpp 2012-01-28 07:04:49.000000000 +0000 @@ -31,7 +31,7 @@ setToolTip(i18n("References")); setToolType(dynamicToolType()+",calligrawords"); setIcon("tool-references"); - setPriority(3); + setPriority(20); setActivationShapeId(TextShape_SHAPEID); } diff -Nru calligra-2.3.86/plugins/textshape/ReviewTool.cpp calligra-2.3.87/plugins/textshape/ReviewTool.cpp --- calligra-2.3.86/plugins/textshape/ReviewTool.cpp 2012-01-07 03:25:03.000000000 +0000 +++ calligra-2.3.87/plugins/textshape/ReviewTool.cpp 2012-01-28 07:04:49.000000000 +0000 @@ -31,6 +31,8 @@ #include #include #include +#include + #include "TextShape.h" #include "commands/AcceptChangeCommand.h" @@ -39,9 +41,11 @@ #include "dialogs/TrackedChangeModel.h" #include "dialogs/TrackedChangeManager.h" #include "dialogs/AcceptRejectChangeDialog.h" +#include "dialogs/ChangeConfigureDialog.h" #include #include +#include #include #include @@ -68,6 +72,20 @@ action->setShortcut(Qt::ALT + Qt::CTRL + Qt::Key_T); addAction("show_changeManager", action); connect(action, SIGNAL(triggered()), this, SLOT(showTrackedChangeManager())); + + m_actionShowChanges = new KAction(i18n("Show Changes"), this); + m_actionShowChanges->setCheckable(true); + addAction("edit_show_changes", m_actionShowChanges); + connect(m_actionShowChanges, SIGNAL(triggered(bool)), this, SLOT(toggleShowChanges(bool))); + + m_actionRecordChanges = new KAction(i18n("Record Changes"), this); + m_actionRecordChanges->setCheckable(true); + addAction("edit_record_changes", m_actionRecordChanges); + connect(m_actionRecordChanges, SIGNAL(triggered(bool)), this, SLOT(toggleRecordChanges(bool))); + + m_configureChangeTracking = new KAction(i18n("Configure Change Tracking..."), this); + addAction("configure_change_tracking", m_configureChangeTracking); + connect(m_configureChangeTracking, SIGNAL(triggered()), this, SLOT(configureChangeTracking())); } ReviewTool::~ReviewTool() @@ -253,6 +271,8 @@ m_textShape->update(); + + readConfig(); } void ReviewTool::setShapeData(KoTextShapeData *data) @@ -282,7 +302,6 @@ // connect(lay, SIGNAL(shapeAdded(KoShape*)), this, SLOT(shapeAddedToDoc(KoShape*))); } } - m_textEditor->updateDefaultTextDirection(m_textShapeData->pageDirection()); if (m_model) { disconnect(m_changesTreeView->selectionModel(), SIGNAL(currentChanged(QModelIndex,QModelIndex)), this, SLOT(selectedChangeChanged(QModelIndex,QModelIndex))); @@ -296,6 +315,8 @@ connect(m_changesTreeView->selectionModel(), SIGNAL(currentChanged(QModelIndex,QModelIndex)), this, SLOT(selectedChangeChanged(QModelIndex,QModelIndex))); m_changesTreeView->reset(); } + + m_changeTracker = KoTextDocument(m_textShapeData->document()).changeTracker(); } void ReviewTool::deactivate() @@ -313,6 +334,7 @@ m_changesTreeView = new QTreeView(widget); m_changesTreeView->setModel(m_model); + m_changesTreeView->setColumnHidden(0, true); connect(m_changesTreeView->selectionModel(), SIGNAL(currentChanged(QModelIndex,QModelIndex)), this, SLOT(selectedChangeChanged(QModelIndex,QModelIndex))); QVBoxLayout *vLayout = new QVBoxLayout(widget); @@ -323,7 +345,18 @@ hLayout->addWidget(accept); hLayout->addWidget(reject); vLayout->addLayout(hLayout); - + QCheckBox *showChanges = new QCheckBox(i18n("Show Changes")); + vLayout->addWidget(showChanges); + QCheckBox *recordChanges = new QCheckBox(i18n("Record Changes")); + vLayout->addWidget(recordChanges); + QToolButton *configureTracing = new QToolButton(); + configureTracing->setDefaultAction(action("configure_change_tracking")); + vLayout->addWidget(configureTracing); + + connect(m_actionShowChanges, SIGNAL(triggered(bool)), showChanges, SLOT(setChecked(bool))); + connect(m_actionRecordChanges, SIGNAL(triggered(bool)), recordChanges, SLOT(setChecked(bool))); + connect(showChanges, SIGNAL(clicked(bool)), this, SLOT(toggleShowChanges(bool))); + connect(recordChanges, SIGNAL(clicked(bool)), this, SLOT(toggleRecordChanges(bool))); connect(accept, SIGNAL(clicked(bool)), this, SLOT(acceptChange())); connect(reject, SIGNAL(clicked(bool)), this, SLOT(rejectChange())); @@ -369,6 +402,89 @@ canvas()->updateCanvas(m_textShape->boundingRect()); } +void ReviewTool::toggleShowChanges(bool on)//TODO transfer this in KoTextEditor +{ + m_actionShowChanges->setChecked(on); + ShowChangesCommand *command = new ShowChangesCommand(on, m_textShapeData->document(), this->canvas()); + connect(command, SIGNAL(toggledShowChange(bool)), m_actionShowChanges, SLOT(setChecked(bool))); + m_textEditor->addCommand(command); +} + +void ReviewTool::toggleRecordChanges(bool on) +{ + m_actionRecordChanges->setChecked(on); + if (m_changeTracker) + m_changeTracker->setRecordChanges(on); +} + +void ReviewTool::configureChangeTracking() +{ + if (m_changeTracker) { + QColor insertionBgColor, deletionBgColor, formatChangeBgColor; + insertionBgColor = m_changeTracker->getInsertionBgColor(); + deletionBgColor = m_changeTracker->getDeletionBgColor(); + formatChangeBgColor = m_changeTracker->getFormatChangeBgColor(); + QString authorName = m_changeTracker->authorName(); + KoChangeTracker::ChangeSaveFormat changeSaveFormat = m_changeTracker->saveFormat(); + + ChangeConfigureDialog changeDialog(insertionBgColor, deletionBgColor, formatChangeBgColor, authorName, changeSaveFormat, canvas()->canvasWidget()); + + if (changeDialog.exec()) { + m_changeTracker->setInsertionBgColor(changeDialog.getInsertionBgColor()); + m_changeTracker->setDeletionBgColor(changeDialog.getDeletionBgColor()); + m_changeTracker->setFormatChangeBgColor(changeDialog.getFormatChangeBgColor()); + m_changeTracker->setAuthorName(changeDialog.authorName()); + m_changeTracker->setSaveFormat(changeDialog.saveFormat()); + writeConfig(); + } + } +} + + +void ReviewTool::readConfig() +{ + if (m_changeTracker) { + QColor bgColor, defaultColor; + QString changeAuthor; + int changeSaveFormat = KoChangeTracker::DELTAXML; + KConfigGroup interface = KoGlobal::calligraConfig()->group("Change-Tracking"); + if (interface.exists()) { + bgColor = interface.readEntry("insertionBgColor", defaultColor); + m_changeTracker->setInsertionBgColor(bgColor); + bgColor = interface.readEntry("deletionBgColor", defaultColor); + m_changeTracker->setDeletionBgColor(bgColor); + bgColor = interface.readEntry("formatChangeBgColor", defaultColor); + m_changeTracker->setFormatChangeBgColor(bgColor); + changeAuthor = interface.readEntry("changeAuthor", changeAuthor); + if (changeAuthor == "") { + KUser user(KUser::UseRealUserID); + m_changeTracker->setAuthorName(user.property(KUser::FullName).toString()); + } else { + m_changeTracker->setAuthorName(changeAuthor); + } + changeSaveFormat = interface.readEntry("changeSaveFormat", changeSaveFormat); + m_changeTracker->setSaveFormat((KoChangeTracker::ChangeSaveFormat)(changeSaveFormat)); + } + } +} + +void ReviewTool::writeConfig() +{ + if (m_changeTracker) { + KConfigGroup interface = KoGlobal::calligraConfig()->group("Change-Tracking"); + interface.writeEntry("insertionBgColor", m_changeTracker->getInsertionBgColor()); + interface.writeEntry("deletionBgColor", m_changeTracker->getDeletionBgColor()); + interface.writeEntry("formatChangeBgColor", m_changeTracker->getFormatChangeBgColor()); + KUser user(KUser::UseRealUserID); + QString changeAuthor = m_changeTracker->authorName(); + if (changeAuthor != user.property(KUser::FullName).toString()) { + interface.writeEntry("changeAuthor", changeAuthor); + } + interface.writeEntry("changeSaveFormat", (int)(m_changeTracker->saveFormat())); + } +} + + void ReviewTool::showTrackedChangeManager() { /* Q_ASSERT(m_model); diff -Nru calligra-2.3.86/plugins/textshape/ReviewToolFactory.cpp calligra-2.3.87/plugins/textshape/ReviewToolFactory.cpp --- calligra-2.3.86/plugins/textshape/ReviewToolFactory.cpp 2012-01-07 03:25:03.000000000 +0000 +++ calligra-2.3.87/plugins/textshape/ReviewToolFactory.cpp 2012-01-28 07:04:49.000000000 +0000 @@ -33,7 +33,7 @@ setToolTip(i18n("Review")); setToolType(dynamicToolType()+",calligrawords"); setIcon("tool-changetracking"); - setPriority(3); + setPriority(30); setActivationShapeId(TextShape_SHAPEID); } diff -Nru calligra-2.3.86/plugins/textshape/ReviewTool.h calligra-2.3.87/plugins/textshape/ReviewTool.h --- calligra-2.3.86/plugins/textshape/ReviewTool.h 2012-01-07 03:25:03.000000000 +0000 +++ calligra-2.3.87/plugins/textshape/ReviewTool.h 2012-01-28 07:04:49.000000000 +0000 @@ -30,6 +30,9 @@ class TextShape; class TrackedChangeManager; class TrackedChangeModel; +class KoChangeTracker; + +class KAction; class QModelIndex; class QPainter; @@ -59,6 +62,9 @@ protected: virtual QList createOptionWidgets(); + void readConfig(); + void writeConfig(); + private slots: void acceptChange(); void rejectChange(); @@ -66,11 +72,22 @@ void setShapeData(KoTextShapeData *data); void showTrackedChangeManager(); + /// When enabled, display changes + void toggleShowChanges(bool); + /// When enabled, make the change tracker record changes made while typing + void toggleRecordChanges(bool); + /// Configure Change Tracking + void configureChangeTracking(); + private: int pointToPosition(const QPointF & point) const; QRectF textRect(QTextCursor &cursor) const; void updateSelectedShape(const QPointF &point); + KAction *m_actionShowChanges; + KAction *m_actionRecordChanges; + KAction *m_configureChangeTracking; + KoTextEditor *m_textEditor; KoTextShapeData *m_textShapeData; KoCanvasBase *m_canvas; @@ -78,6 +95,7 @@ TrackedChangeModel *m_model; TrackedChangeManager *m_trackedChangeManager; QTreeView *m_changesTreeView; + KoChangeTracker *m_changeTracker; }; #endif // CHANGETRACKINGTOOL_H diff -Nru calligra-2.3.86/plugins/textshape/TextShape.cpp calligra-2.3.87/plugins/textshape/TextShape.cpp --- calligra-2.3.86/plugins/textshape/TextShape.cpp 2012-01-07 03:25:03.000000000 +0000 +++ calligra-2.3.87/plugins/textshape/TextShape.cpp 2012-01-28 07:04:49.000000000 +0000 @@ -152,6 +152,7 @@ pc.showFormattingCharacters = paintContext.showFormattingCharacters; pc.showTableBorders = paintContext.showTableBorders; pc.showSpellChecking = paintContext.showSpellChecking; + pc.showSelections = paintContext.showSelections; // When clipping the painter we need to make sure not to cutoff cosmetic pens which // may used to draw e.g. table-borders for user convenience when on screen (but not diff -Nru calligra-2.3.86/plugins/textshape/textshape.desktop calligra-2.3.87/plugins/textshape/textshape.desktop --- calligra-2.3.86/plugins/textshape/textshape.desktop 2012-01-07 03:25:03.000000000 +0000 +++ calligra-2.3.87/plugins/textshape/textshape.desktop 2012-01-28 07:04:49.000000000 +0000 @@ -10,7 +10,7 @@ Name[en_GB]=Text Shape Name[es]=Forma de texto Name[et]=Tekstikujund -Name[fi]=Tekstihahmo +Name[fi]=Tekstimuoto Name[fr]=Forme texte Name[fy]=Tekst foarm Name[ga]=Giuirléid Téacs diff -Nru calligra-2.3.86/plugins/textshape/TextTool.cpp calligra-2.3.87/plugins/textshape/TextTool.cpp --- calligra-2.3.86/plugins/textshape/TextTool.cpp 2012-01-07 03:25:03.000000000 +0000 +++ calligra-2.3.87/plugins/textshape/TextTool.cpp 2012-01-28 07:04:49.000000000 +0000 @@ -2,7 +2,7 @@ * Copyright (C) 2006-2010 Thomas Zander * Copyright (C) 2008 Thorsten Zachmann * Copyright (C) 2008 Girish Ramakrishnan - * Copyright (C) 2008 Pierre Stirnweiss + * Copyright (C) 2008, 2012 Pierre Stirnweiss * Copyright (C) 2009 KO GmbH * Copyright (C) 2011 Mojtaba Shahi Senobari * @@ -33,11 +33,8 @@ #include "dialogs/InsertCharacter.h" #include "dialogs/FontDia.h" #include "dialogs/TableDialog.h" -#include "dialogs/ChangeConfigureDialog.h" -#include "dialogs/ChangeTrackingOptionsWidget.h" #include "dialogs/SimpleTableWidget.h" #include "commands/TextCutCommand.h" -#include "commands/ShowChangesCommand.h" #include "commands/AutoResizeCommand.h" #include "commands/ChangeListLevelCommand.h" #include "FontSizeAction.h" @@ -61,7 +58,6 @@ #include #include #include -#include #include #include #include @@ -81,10 +77,11 @@ #include #include #include -#include #include #include #include +#include +#include #include @@ -125,11 +122,8 @@ m_changeTracker(0), m_allowActions(true), m_allowAddUndoCommand(true), - m_trackChanges(false), m_allowResourceManagerUpdates(true), m_prevCursorPosition(-1), - m_prevMouseSelectionStart(-1), - m_prevMouseSelectionEnd(-1), m_caretTimer(this), m_caretTimerState(true), m_currentCommand(0), @@ -374,11 +368,6 @@ m_shrinkToFitAction->setCheckable(true); connect(m_shrinkToFitAction, SIGNAL(triggered(bool)), this, SLOT(setShrinkToFit(bool))); - action = new KAction(i18n("Default Format"), this); - addAction("text_default", action); - action->setToolTip(i18n("Change text attributes to their default values")); - connect(action, SIGNAL(triggered()), this, SLOT(setDefaultFormat())); - action = new KAction(KIcon("insert-table"), i18n("Insert Custom..."), this); addAction("insert_table", action); action->setToolTip(i18n("Insert a table into the document.")); @@ -466,20 +455,6 @@ action->setWhatsThis(i18n("Change paragraph margins, text flow, borders, bullets, numbering etc.

Select text in multiple paragraphs to change the formatting of all selected paragraphs.

If no text is selected, the paragraph where the cursor is located will be changed.

")); connect(action, SIGNAL(triggered()), this, SLOT(formatParagraph())); - m_actionShowChanges = new KAction(i18n("Show Changes"), this); - m_actionShowChanges->setCheckable(true); - addAction("edit_show_changes", m_actionShowChanges); - connect(m_actionShowChanges, SIGNAL(triggered(bool)), this, SLOT(toggleShowChanges(bool))); - - m_actionRecordChanges = new KAction(i18n("Record Changes"), this); - m_actionRecordChanges->setCheckable(true); - addAction("edit_record_changes", m_actionRecordChanges); - connect(m_actionRecordChanges, SIGNAL(triggered(bool)), this, SLOT(toggleRecordChanges(bool))); - - m_configureChangeTracking = new KAction(i18n("Configure Change Tracking..."), this); - addAction("configure_change_tracking", m_configureChangeTracking); - connect(m_configureChangeTracking, SIGNAL(triggered()), this, SLOT(configureChangeTracking())); - action = new KAction(i18n("Style Manager..."), this); action->setShortcut(Qt::ALT + Qt::CTRL + Qt::Key_S); action->setToolTip(i18n("Change attributes of styles")); @@ -527,7 +502,6 @@ m_changeTracker(0), m_allowActions(true), m_allowAddUndoCommand(true), - m_trackChanges(false), m_allowResourceManagerUpdates(true), m_prevCursorPosition(-1), m_caretTimer(this), @@ -817,7 +791,7 @@ connect(m_textShapeData, SIGNAL(destroyed (QObject*)), this, SLOT(shapeDataRemoved())); if (docChanged) { if (!m_textEditor.isNull()) { - disconnect(m_textEditor.data(), SIGNAL(isBidiUpdated()), this, SLOT(isBidiUpdated())); + disconnect(m_textEditor.data(), SIGNAL(textFormatChanged()), this, SLOT(updateActions())); } m_textEditor = KoTextDocument(m_textShapeData->document()).textEditor(); Q_ASSERT(m_textEditor.data()); @@ -834,9 +808,8 @@ m_variableMenu->addAction(action); } - connect(m_textEditor.data(), SIGNAL(isBidiUpdated()), this, SLOT(isBidiUpdated())); + connect(m_textEditor.data(), SIGNAL(textFormatChanged()), this, SLOT(updateActions())); } - m_textEditor.data()->updateDefaultTextDirection(m_textShapeData->pageDirection()); } void TextTool::updateSelectionHandler() @@ -895,8 +868,7 @@ void TextTool::deleteSelection() { - m_textEditor.data()->deleteChar(KoTextEditor::NextChar, m_actionRecordChanges->isChecked(), - canvas()->shapeController()); + m_textEditor.data()->deleteChar(KoTextEditor::NextChar, canvas()->shapeController()); editingPluginEvents(); } @@ -942,22 +914,35 @@ return; } + if (event->modifiers() & Qt::ShiftModifier) { + // When whift is pressed we behave as a single press + return mousePressEvent(event); + } + int pos = m_textEditor.data()->position(); - m_textEditor.data()->movePosition(QTextCursor::WordLeft); - m_textEditor.data()->movePosition(QTextCursor::WordRight, QTextCursor::KeepAnchor); + m_textEditor.data()->select(QTextCursor::WordUnderCursor); + + repaintSelection(); + updateSelectionHandler(); +} + +void TextTool::mouseTripleClickEvent(KoPointerEvent *event) +{ + if (canvas()->shapeManager()->shapeAt(event->point) != m_textShape) { + event->ignore(); // allow the event to be used by another + return; + } - // clicked between two words - if (qAbs(pos - m_textEditor.data()->position()) <= 1) - m_textEditor.data()->movePosition(QTextCursor::WordRight, QTextCursor::KeepAnchor); - - // switch between select single words or whole line - if (m_prevMouseSelectionStart == m_textEditor.data()->selectionStart() && m_prevMouseSelectionEnd == m_textEditor.data()->selectionEnd()) { - m_textEditor.data()->clearSelection(); - m_textEditor.data()->movePosition(QTextCursor::StartOfLine); - m_textEditor.data()->movePosition(QTextCursor::EndOfLine, QTextCursor::KeepAnchor); + if (event->modifiers() & Qt::ShiftModifier) { + // When whift is pressed we behave as a single press + return mousePressEvent(event); } - m_prevMouseSelectionStart = m_textEditor.data()->selectionStart(); - m_prevMouseSelectionEnd = m_textEditor.data()->selectionEnd(); + + int pos = m_textEditor.data()->position(); + + m_textEditor.data()->clearSelection(); + m_textEditor.data()->movePosition(QTextCursor::StartOfBlock); + m_textEditor.data()->movePosition(QTextCursor::EndOfBlock, QTextCursor::KeepAnchor); repaintSelection(); updateSelectionHandler(); @@ -1069,20 +1054,22 @@ if (event->key() == Qt::Key_Backspace) { if (!textEditor->hasSelection() && textEditor->block().textList() && (textEditor->position() == textEditor->block().position()) - && !(m_actionRecordChanges->isChecked())) { + && !(m_changeTracker && m_changeTracker->recordChanges())) { if (!textEditor->blockFormat().boolProperty(KoParagraphStyle::UnnumberedListItem)) { // backspace at beginning of numbered list item, makes it unnumbered textEditor->toggleListNumbering(false); } else { + KoListLevelProperties llp; + llp.setStyle(KoListStyle::None); + llp.setLevel(0); // backspace on numbered, empty parag, removes numbering. - textEditor->setListProperties(KoListStyle::None, 0 /* level */); + textEditor->setListProperties(llp); } } else if (textEditor->position() > 0 || textEditor->hasSelection()) { if (!textEditor->hasSelection() && event->modifiers() & Qt::ControlModifier) { // delete prev word. textEditor->movePosition(QTextCursor::PreviousWord, QTextCursor::KeepAnchor); } - textEditor->deleteChar(KoTextEditor::PreviousChar, m_actionRecordChanges->isChecked(), - canvas()->shapeController()); + textEditor->deleteChar(KoTextEditor::PreviousChar, canvas()->shapeController()); editingPluginEvents(); } @@ -1093,7 +1080,7 @@ textEditor->addCommand(cll); editingPluginEvents(); } else if ((event->key() == Qt::Key_Backtab) - && ((!textEditor->hasSelection() && (textEditor->position() == textEditor->block().position())) || (textEditor->block().document()->findBlock(textEditor->anchor()) != textEditor->block().document()->findBlock(textEditor->position()))) && textEditor->block().textList() && !(m_actionRecordChanges->isChecked())) { + && ((!textEditor->hasSelection() && (textEditor->position() == textEditor->block().position())) || (textEditor->block().document()->findBlock(textEditor->anchor()) != textEditor->block().document()->findBlock(textEditor->position()))) && textEditor->block().textList() && !(m_changeTracker && m_changeTracker->recordChanges())) { ChangeListLevelCommand::CommandType type = ChangeListLevelCommand::DecreaseLevel; ChangeListLevelCommand *cll = new ChangeListLevelCommand(*textEditor->cursor(), type, 1); textEditor->addCommand(cll); @@ -1104,8 +1091,7 @@ } // the event only gets through when the Del is not used in the app // if the app forwards Del then deleteSelection is used - textEditor->deleteChar(KoTextEditor::NextChar, m_actionRecordChanges->isChecked(), - canvas()->shapeController()); + textEditor->deleteChar(KoTextEditor::NextChar, canvas()->shapeController()); editingPluginEvents(); } else if ((event->key() == Qt::Key_Left) && (event->modifiers() & Qt::ControlModifier) == 0) { moveOperation = QTextCursor::Left; @@ -1264,8 +1250,7 @@ if (event->replacementLength() > 0) { textEditor->setPosition(textEditor->position() + event->replacementStart()); for (int i = event->replacementLength(); i > 0; --i) { - textEditor->deleteChar(KoTextEditor::NextChar, m_actionRecordChanges->isChecked(), - canvas()->shapeController()); + textEditor->deleteChar(KoTextEditor::NextChar, canvas()->shapeController()); } } if (!event->commitString().isEmpty()) { @@ -1329,8 +1314,9 @@ void TextTool::updateActions() { KoTextEditor *textEditor = m_textEditor.data(); - if (textEditor == 0) + if (textEditor == 0) { return; + } m_allowActions = false; //Update the characterStyle related GUI elements @@ -1386,17 +1372,12 @@ m_actionFormatDecreaseIndent->setEnabled(textEditor->blockFormat().leftMargin() > 0.); - //change tracking - if (m_changeTracker && m_changeTracker->displayChanges()) - m_actionShowChanges->setChecked(true); - if (m_changeTracker && m_changeTracker->recordChanges()) - m_actionRecordChanges->setChecked(true); - m_allowActions = true; - emit charFormatChanged(cf); - emit blockFormatChanged(bf); + ///TODO if selection contains several different format emit blockChanged(textEditor->block()); + emit charFormatChanged(cf, textEditor->blockCharFormat()); + emit blockFormatChanged(bf); } void TextTool::updateStyleManager() @@ -1412,8 +1393,6 @@ void TextTool::activate(ToolActivation toolActivation, const QSet &shapes) { - kDebug(); - Q_UNUSED(toolActivation); m_caretTimer.start(); m_caretTimerState = true; @@ -1437,23 +1416,19 @@ rect = m_textShape->absoluteTransformation(0).mapRect(rect); v.setValue(rect); canvas()->resourceManager()->setResource(KoCanvasResourceManager::ActiveRange, v); - setShapeData(static_cast(m_textShape->userData())); useCursor(Qt::IBeamCursor); + updateStyleManager(); repaintSelection(); updateSelectionHandler(); updateActions(); - updateStyleManager(); if (m_specialCharacterDocker) m_specialCharacterDocker->setEnabled(true); - readConfig(); } void TextTool::deactivate() { - kDebug(); - m_caretTimer.stop(); m_caretTimerState = false; repaintCaret(); @@ -1586,14 +1561,24 @@ QList widgets; SimpleCharacterWidget *scw = new SimpleCharacterWidget(this, 0); SimpleParagraphWidget *spw = new SimpleParagraphWidget(this, 0); + if (m_textEditor.data()) { + //initialise the char- and par- widgets with the current block and formats. + scw->setCurrentBlockFormat(m_textEditor.data()->blockFormat()); + scw->setCurrentFormat(m_textEditor.data()->charFormat(), m_textEditor.data()-> blockCharFormat()); + spw->setCurrentBlock(m_textEditor.data()->block()); + spw->setCurrentFormat(m_textEditor.data()->blockFormat()); + } SimpleTableWidget *stw = new SimpleTableWidget(this, 0); SimpleInsertWidget *siw = new SimpleInsertWidget(this, 0); // Connect to/with simple character widget (docker) connect(this, SIGNAL(styleManagerChanged(KoStyleManager *)), scw, SLOT(setStyleManager(KoStyleManager *))); - connect(this, SIGNAL(charFormatChanged(QTextCharFormat)), scw, SLOT(setCurrentFormat(QTextCharFormat))); + connect(this, SIGNAL(charFormatChanged(QTextCharFormat, QTextCharFormat)), scw, SLOT(setCurrentFormat(QTextCharFormat, QTextCharFormat))); + connect(this, SIGNAL(blockFormatChanged(QTextBlockFormat)), scw, SLOT(setCurrentBlockFormat(QTextBlockFormat))); connect(scw, SIGNAL(doneWithFocus()), this, SLOT(returnFocusToCanvas())); connect(scw, SIGNAL(characterStyleSelected(KoCharacterStyle *)), this, SLOT(setStyle(KoCharacterStyle*))); + connect(scw, SIGNAL(newStyleRequested(QString)), this, SLOT(createStyleFromCurrentCharFormat(QString))); + connect(scw, SIGNAL(showStyleManager(int)), this, SLOT(showStyleManager(int))); // Connect to/with simple paragraph widget (docker) @@ -1602,6 +1587,8 @@ connect(this, SIGNAL(blockFormatChanged(QTextBlockFormat)), spw, SLOT(setCurrentFormat(QTextBlockFormat))); connect(spw, SIGNAL(doneWithFocus()), this, SLOT(returnFocusToCanvas())); connect(spw, SIGNAL(paragraphStyleSelected(KoParagraphStyle *)), this, SLOT(setStyle(KoParagraphStyle*))); + connect(spw, SIGNAL(newStyleRequested(QString)), this, SLOT(createStyleFromCurrentBlockFormat(QString))); + connect(spw, SIGNAL(showStyleManager(int)), this, SLOT(showStyleManager(int))); // Connect to/with simple table widget (docker) connect(this, SIGNAL(styleManagerChanged(KoStyleManager *)), stw, SLOT(setStyleManager(KoStyleManager *))); @@ -1612,8 +1599,9 @@ connect(siw, SIGNAL(insertTableQuick(int, int)), this, SLOT(insertTableQuick(int, int))); updateStyleManager(); - if (m_textShape) + if (m_textShape) { updateActions(); + } scw->setWindowTitle(i18n("Character")); widgets.append(scw); spw->setWindowTitle(i18n("Paragraph")); @@ -1778,11 +1766,6 @@ m_textEditor.data()->setFontSize(size); } -void TextTool::setDefaultFormat() -{ - m_textEditor.data()->setDefaultFormat(); -} - void TextTool::insertIndexMarker() { // TODO handle result when we figure out how to report errors from a tool. @@ -1791,15 +1774,21 @@ void TextTool::setStyle(KoCharacterStyle *style) { - m_textEditor.data()->setStyle(style); - emit charFormatChanged(m_textEditor.data()->charFormat()); + KoCharacterStyle *charStyle = style; + //if the given KoCharacterStyle is null, set the KoParagraphStyle character properties + if (!charStyle){ + charStyle = static_cast(KoTextDocument(m_textShapeData->document()).styleManager()->paragraphStyle(m_textEditor.data()->blockFormat().intProperty(KoParagraphStyle::StyleId))); + } + if (charStyle) { + m_textEditor.data()->setStyle(charStyle); + updateActions(); + } } void TextTool::setStyle(KoParagraphStyle *style) { m_textEditor.data()->setStyle(style); - emit blockFormatChanged(m_textEditor.data()->blockFormat()); - emit charFormatChanged(m_textEditor.data()->charFormat()); + updateActions(); } void TextTool::insertTable() @@ -1866,44 +1855,6 @@ delete dia; } -void TextTool::toggleShowChanges(bool on)//TODO transfer this in KoTextEditor -{ - m_actionShowChanges->setChecked(on); - ShowChangesCommand *command = new ShowChangesCommand(on, m_textShapeData->document(), this->canvas()); - connect(command, SIGNAL(toggledShowChange(bool)), m_actionShowChanges, SLOT(setChecked(bool))); - m_textEditor.data()->addCommand(command); -} - -void TextTool::toggleRecordChanges(bool on) -{ - m_actionRecordChanges->setChecked(on); - if (m_changeTracker) - m_changeTracker->setRecordChanges(on); -} - -void TextTool::configureChangeTracking() -{ - if (m_changeTracker) { - QColor insertionBgColor, deletionBgColor, formatChangeBgColor; - insertionBgColor = m_changeTracker->getInsertionBgColor(); - deletionBgColor = m_changeTracker->getDeletionBgColor(); - formatChangeBgColor = m_changeTracker->getFormatChangeBgColor(); - QString authorName = m_changeTracker->authorName(); - KoChangeTracker::ChangeSaveFormat changeSaveFormat = m_changeTracker->saveFormat(); - - ChangeConfigureDialog changeDialog(insertionBgColor, deletionBgColor, formatChangeBgColor, authorName, changeSaveFormat, canvas()->canvasWidget()); - - if (changeDialog.exec()) { - m_changeTracker->setInsertionBgColor(changeDialog.getInsertionBgColor()); - m_changeTracker->setDeletionBgColor(changeDialog.getDeletionBgColor()); - m_changeTracker->setFormatChangeBgColor(changeDialog.getFormatChangeBgColor()); - m_changeTracker->setAuthorName(changeDialog.authorName()); - m_changeTracker->setSaveFormat(changeDialog.saveFormat()); - writeConfig(); - } - } -} - void TextTool::testSlot(bool on) { kDebug(32500) << "signal received. bool:" << on; @@ -1965,7 +1916,7 @@ m_currentCommand = 0; } -void TextTool::showStyleManager() +void TextTool::showStyleManager(int styleId) { if (!m_textShapeData) return; @@ -1976,6 +1927,15 @@ StyleManagerDialog *dia = new StyleManagerDialog(canvas()->canvasWidget()); dia->setStyleManager(styleManager); dia->setUnit(canvas()->unit()); + + KoParagraphStyle *paragraphStyle = styleManager->paragraphStyle(styleId); + if (paragraphStyle) { + dia->setParagraphStyle(paragraphStyle); + } + KoCharacterStyle *characterStyle = styleManager->characterStyle(styleId); + if (characterStyle) { + dia->setCharacterStyle(characterStyle); + } dia->show(); } @@ -1994,13 +1954,6 @@ } } -bool TextTool::isBidiDocument() const -{ - if (m_textEditor) - return m_textEditor.data()->isBidiDocument(); - return false; -} - void TextTool::resourceChanged(int key, const QVariant &var) { if (m_textEditor.isNull()) @@ -2023,11 +1976,6 @@ repaintSelection(); } -void TextTool::isBidiUpdated() -{ - emit blockChanged(m_textEditor.data()->block()); // make sure that the dialogs follow this change -} - void TextTool::insertSpecialCharacter() { if (m_specialCharacterDocker == 0) { @@ -2087,6 +2035,38 @@ } } +void TextTool::createStyleFromCurrentBlockFormat(QString name) +{ + KoTextDocument document(m_textShapeData->document()); + KoStyleManager *styleManager = document.styleManager(); + KoParagraphStyle *paragraphStyle = new KoParagraphStyle(m_textEditor.data()->blockFormat(), m_textEditor.data()->charFormat()); + paragraphStyle->setName(name); + styleManager->add(paragraphStyle); + m_textEditor.data()->setStyle(paragraphStyle); + emit charFormatChanged(m_textEditor.data()->charFormat(), m_textEditor.data()->blockCharFormat()); + emit blockFormatChanged(m_textEditor.data()->blockFormat()); +} + +void TextTool::createStyleFromCurrentCharFormat(QString name) +{ + KoTextDocument document(m_textShapeData->document()); + KoStyleManager *styleManager = document.styleManager(); + KoCharacterStyle *originalCharStyle = styleManager->characterStyle(m_textEditor.data()->charFormat().intProperty(KoCharacterStyle::StyleId)); + KoCharacterStyle *autoStyle; + if (!originalCharStyle) { + KoCharacterStyle blankStyle; + originalCharStyle = &blankStyle; + autoStyle = originalCharStyle->autoStyle(m_textEditor.data()->charFormat(), m_textEditor.data()->blockCharFormat()); + autoStyle->setParentStyle(0); + } else { + autoStyle = originalCharStyle->autoStyle(m_textEditor.data()->charFormat(), m_textEditor.data()->blockCharFormat()); + } + autoStyle->setName(name); + styleManager->add(autoStyle); + m_textEditor.data()->setStyle(autoStyle); + emit charFormatChanged(m_textEditor.data()->charFormat(), m_textEditor.data()->blockCharFormat()); +} + // ---------- editing plugins methods. void TextTool::editingPluginEvents() { @@ -2159,49 +2139,6 @@ updateActions(); } -void TextTool::readConfig() -{ - if (m_changeTracker) { - QColor bgColor, defaultColor; - QString changeAuthor; - int changeSaveFormat = KoChangeTracker::DELTAXML; - KConfigGroup interface = KoGlobal::calligraConfig()->group("Change-Tracking"); - if (interface.exists()) { - bgColor = interface.readEntry("insertionBgColor", defaultColor); - m_changeTracker->setInsertionBgColor(bgColor); - bgColor = interface.readEntry("deletionBgColor", defaultColor); - m_changeTracker->setDeletionBgColor(bgColor); - bgColor = interface.readEntry("formatChangeBgColor", defaultColor); - m_changeTracker->setFormatChangeBgColor(bgColor); - changeAuthor = interface.readEntry("changeAuthor", changeAuthor); - if (changeAuthor == "") { - KUser user(KUser::UseRealUserID); - m_changeTracker->setAuthorName(user.property(KUser::FullName).toString()); - } else { - m_changeTracker->setAuthorName(changeAuthor); - } - changeSaveFormat = interface.readEntry("changeSaveFormat", changeSaveFormat); - m_changeTracker->setSaveFormat((KoChangeTracker::ChangeSaveFormat)(changeSaveFormat)); - } - } -} - -void TextTool::writeConfig() -{ - if (m_changeTracker) { - KConfigGroup interface = KoGlobal::calligraConfig()->group("Change-Tracking"); - interface.writeEntry("insertionBgColor", m_changeTracker->getInsertionBgColor()); - interface.writeEntry("deletionBgColor", m_changeTracker->getDeletionBgColor()); - interface.writeEntry("formatChangeBgColor", m_changeTracker->getFormatChangeBgColor()); - KUser user(KUser::UseRealUserID); - QString changeAuthor = m_changeTracker->authorName(); - if (changeAuthor != user.property(KUser::FullName).toString()) { - interface.writeEntry("changeAuthor", changeAuthor); - } - interface.writeEntry("changeSaveFormat", (int)(m_changeTracker->saveFormat())); - } -} - void TextTool::runUrl(KoPointerEvent *event, QString &url) { bool isLocalLink = (url.indexOf("file:") == 0); diff -Nru calligra-2.3.86/plugins/textshape/TextTool.h calligra-2.3.87/plugins/textshape/TextTool.h --- calligra-2.3.86/plugins/textshape/TextTool.h 2012-01-07 03:25:03.000000000 +0000 +++ calligra-2.3.87/plugins/textshape/TextTool.h 2012-01-28 07:04:49.000000000 +0000 @@ -3,6 +3,7 @@ * Copyright (C) 2008 Thorsten Zachmann * Copyright (C) 2009 KO GmbH * Copyright (C) 2011 Mojtaba Shahi Senobari + * Copyright (C) 2008, 2012 Pierre Stirnweiss * * This library is free software; you can redistribute it and/or * modify it under the terms of the GNU Library General Public @@ -76,10 +77,12 @@ virtual void paint(QPainter &painter, const KoViewConverter &converter); /// reimplemented from superclass - virtual void mousePressEvent(KoPointerEvent *event) ; + virtual void mousePressEvent(KoPointerEvent *event); /// reimplemented from superclass virtual void mouseDoubleClickEvent(KoPointerEvent *event); /// reimplemented from superclass + virtual void mouseTripleClickEvent(KoPointerEvent *event); + /// reimplemented from superclass virtual void mouseMoveEvent(KoPointerEvent *event); /// reimplemented from superclass virtual void mouseReleaseEvent(KoPointerEvent *event); @@ -119,8 +122,6 @@ /// reimplemented from superclass virtual void inputMethodEvent(QInputMethodEvent * event); - bool isBidiDocument() const; - /// The following two methods allow an undo/redo command to tell the tool, it will modify the QTextDocument and wants to be parent of the undo/redo commands resulting from these changes. @@ -147,20 +148,12 @@ void startTextEditingPlugin(const QString &pluginId); /// reimplemented from KoToolBase virtual void resourceChanged(int key, const QVariant &res); - //When enabled, display changes - void toggleShowChanges(bool); - /// When enabled, make the change tracker record changes made while typing - void toggleRecordChanges(bool); - /// Configure Change Tracking - void configureChangeTracking(); - /// call this when the 'is-bidi' boolean has been changed. - void isBidiUpdated(); signals: /// emitted every time a different styleManager is set. void styleManagerChanged(KoStyleManager *manager); /// emitted every time a caret move leads to a different character format being under the caret - void charFormatChanged(const QTextCharFormat &format); + void charFormatChanged(const QTextCharFormat &format, const QTextCharFormat& refBlockCharFormat); /// emitted every time a caret move leads to a different paragraph format being under the caret void blockFormatChanged(const QTextBlockFormat &format); /// emitted every time a caret move leads to a different paragraph format being under the caret @@ -209,8 +202,6 @@ void setFontFamily(const QString &); /// Set Font size void setFontSize(qreal size); - /// Default Format - void setDefaultFormat(); /// see KoTextEditor::insertIndexMarker void insertIndexMarker(); /// shows a dialog to insert a table @@ -238,7 +229,7 @@ /// select all text in the current document. void selectAll(); /// show the style manager - void showStyleManager(); + void showStyleManager(int styleId = -1); /// change color of a selected text void setTextColor(const KoColor &color); /// change background color of a selected text @@ -286,24 +277,26 @@ void ensureCursorVisible(bool moveView = true); + void createStyleFromCurrentBlockFormat(QString name); + void createStyleFromCurrentCharFormat(QString name); + void testSlot(bool); /// change block text direction void textDirectionChanged(); + void updateActions(); + private: void repaintCaret(); void repaintSelection(); KoPointedAt hitTest(const QPointF & point) const; - void updateActions(); void updateStyleManager(); void updateSelectedShape(const QPointF &point); void updateSelectionHandler(); void editingPluginEvents(); void finishedWord(); void finishedParagraph(); - void readConfig(); - void writeConfig(); void runUrl(KoPointerEvent *event, QString &url); private: @@ -318,7 +311,6 @@ KoChangeTracker *m_changeTracker; bool m_allowActions; bool m_allowAddUndoCommand; - bool m_trackChanges; bool m_allowResourceManagerUpdates; int m_prevCursorPosition; /// used by editingPluginEvents int m_prevMouseSelectionStart, m_prevMouseSelectionEnd; @@ -338,9 +330,6 @@ KAction *m_actionFormatSub; KAction *m_actionFormatIncreaseIndent; KAction *m_actionFormatDecreaseIndent; - KAction *m_actionShowChanges; - KAction *m_actionRecordChanges; - KAction *m_configureChangeTracking; KAction *m_growWidthAction; KAction *m_growHeightAction; KAction *m_shrinkToFitAction; diff -Nru calligra-2.3.86/plugins/variables/InfoVariable.cpp calligra-2.3.87/plugins/variables/InfoVariable.cpp --- calligra-2.3.86/plugins/variables/InfoVariable.cpp 2012-01-07 03:25:03.000000000 +0000 +++ calligra-2.3.87/plugins/variables/InfoVariable.cpp 2012-01-28 07:04:49.000000000 +0000 @@ -38,7 +38,8 @@ { KoInlineObject::Title, "title", "text:title" }, { KoInlineObject::Subject, "subject", "text:subject" }, { KoInlineObject::Keywords, "keywords", "text:keywords" }, - { KoInlineObject::Description, "description", "text:description" } + //{ KoInlineObject::Description, "description", "text:description" } + { KoInlineObject::Comments, "comments", "text:comments" } }; static const unsigned int numPropertyData = sizeof(propertyData) / sizeof(*propertyData); @@ -104,5 +105,12 @@ const QString localName(element.localName()); m_type = s_loadInfo->value(localName); + for(KoXmlNode node = element.firstChild(); !node.isNull(); node = node.nextSibling() ) { + if (node.isText()) { + setValue(node.toText().data()); + break; + } + } + return true; } diff -Nru calligra-2.3.86/plugins/variables/InfoVariableFactory.cpp calligra-2.3.87/plugins/variables/InfoVariableFactory.cpp --- calligra-2.3.86/plugins/variables/InfoVariableFactory.cpp 2012-01-07 03:25:03.000000000 +0000 +++ calligra-2.3.87/plugins/variables/InfoVariableFactory.cpp 2012-01-28 07:04:49.000000000 +0000 @@ -56,6 +56,30 @@ var3.properties = props; addTemplate(var3); + KoInlineObjectTemplate var4; + var4.id = "file-name"; + var4.name = i18n("File Name"); + props = new KoProperties(); + props->setProperty("vartype", KoInlineObject::DocumentURL); + var4.properties = props; + addTemplate(var4); + + KoInlineObjectTemplate var5; + var5.id = "keywords"; + var5.name = i18n("Keywords"); + props = new KoProperties(); + props->setProperty("vartype", KoInlineObject::Keywords); + var5.properties = props; + addTemplate(var5); + + KoInlineObjectTemplate var6; + var6.id = "comments"; + var6.name = i18n("Comments"); + props = new KoProperties(); + props->setProperty("vartype", KoInlineObject::Comments); + var6.properties = props; + addTemplate(var6); + QStringList elementNames(InfoVariable::tags()); setOdfElementNames(KoXmlNS::text, elementNames); } diff -Nru calligra-2.3.86/plugins/videoshape/videoshape.desktop calligra-2.3.87/plugins/videoshape/videoshape.desktop --- calligra-2.3.86/plugins/videoshape/videoshape.desktop 2012-01-07 03:25:03.000000000 +0000 +++ calligra-2.3.87/plugins/videoshape/videoshape.desktop 2012-01-28 07:04:49.000000000 +0000 @@ -9,8 +9,10 @@ Name[en_GB]=Video Shape Name[es]=Forma de vídeo Name[et]=Videokujund +Name[fi]=Videomuoto Name[fr]=Forme vidéo Name[ga]=Giuirléid Fhíseáin +Name[hu]=Videó alakzat Name[it]=Forma video Name[ja]=ビデオシェイプ Name[kk]=Видео қалыпы diff -Nru calligra-2.3.86/servicetypes/calligra_application.desktop calligra-2.3.87/servicetypes/calligra_application.desktop --- calligra-2.3.86/servicetypes/calligra_application.desktop 2012-01-07 03:25:03.000000000 +0000 +++ calligra-2.3.87/servicetypes/calligra_application.desktop 2012-01-28 07:04:49.000000000 +0000 @@ -3,6 +3,7 @@ X-KDE-ServiceType=Calligra/Application Comment=Calligra Application Comment[ca]=Aplicació Calligra +Comment[ca@valencia]=Aplicació Calligra Comment[cs]=Aplikace Calligra Comment[da]=Calligra-program Comment[de]=Calligra-Anwendung @@ -10,6 +11,7 @@ Comment[en_GB]=Calligra Application Comment[es]=Aplicación de Calligra Comment[et]=Calligra rakendus +Comment[hu]=Calligra alkalmazás Comment[it]=Applicazione di Calligra Comment[nb]=Calligraprogrammet Comment[nds]=Calligra-Programm diff -Nru calligra-2.3.86/servicetypes/calligra_deferred_plugin.desktop calligra-2.3.87/servicetypes/calligra_deferred_plugin.desktop --- calligra-2.3.86/servicetypes/calligra_deferred_plugin.desktop 2012-01-07 03:25:03.000000000 +0000 +++ calligra-2.3.87/servicetypes/calligra_deferred_plugin.desktop 2012-01-28 07:04:49.000000000 +0000 @@ -1,6 +1,7 @@ [Desktop Entry] Name=Calligra Deferred Loading Plugin Name[ca]=Connector de càrrega diferida del Calligra +Name[ca@valencia]=Connector de càrrega diferida del Calligra Name[da]=Plugin til forsinket indlæsning til Calligra Name[el]=Πρόσθετο Calligra για αναβολή φόρτωσης Name[es]=Complemento de carga diferida de Calligra diff -Nru calligra-2.3.86/servicetypes/calligrapart.desktop calligra-2.3.87/servicetypes/calligrapart.desktop --- calligra-2.3.86/servicetypes/calligrapart.desktop 2012-01-07 03:25:03.000000000 +0000 +++ calligra-2.3.87/servicetypes/calligrapart.desktop 2012-01-28 07:04:49.000000000 +0000 @@ -5,10 +5,12 @@ Comment=Calligra Component Comment[bg]=Компонент на Calligra Comment[ca]=Component del Calligra +Comment[ca@valencia]=Component del Calligra Comment[cs]=Komponenta Calligra Comment[da]=Calligra-komponent Comment[de]=Calligra-Komponente Comment[et]=Calligra komponent +Comment[hu]=Calligra komponens Comment[it]=Componente di Calligra Comment[nb]=Calligra-komponent Comment[nds]=Calligra-Komponent diff -Nru calligra-2.3.86/servicetypes/kofilter.desktop calligra-2.3.87/servicetypes/kofilter.desktop --- calligra-2.3.86/servicetypes/kofilter.desktop 2012-01-07 03:25:03.000000000 +0000 +++ calligra-2.3.87/servicetypes/kofilter.desktop 2012-01-28 07:04:49.000000000 +0000 @@ -4,10 +4,12 @@ Comment=Calligra Filter Comment[bg]=Филтър за Calligra Comment[ca]=Filtre del Calligra +Comment[ca@valencia]=Filtre del Calligra Comment[cs]=Filtr Calligra Comment[da]=Calligra-filter Comment[de]=Calligra-Filter Comment[et]=Calligra filter +Comment[hu]=Calligra szűrő Comment[it]=Filtro di Calligra Comment[nb]=Calligra-filter Comment[nds]=Calligra-Filter diff -Nru calligra-2.3.86/servicetypes/kofilterwrapper.desktop calligra-2.3.87/servicetypes/kofilterwrapper.desktop --- calligra-2.3.86/servicetypes/kofilterwrapper.desktop 2012-01-07 03:25:03.000000000 +0000 +++ calligra-2.3.87/servicetypes/kofilterwrapper.desktop 2012-01-28 07:04:49.000000000 +0000 @@ -4,6 +4,7 @@ Comment=Calligra Filter Wrapper Comment[bg]=Обвивка за филтър на Calligra Comment[ca]=Filtre d'embolcall del Calligra +Comment[ca@valencia]=Filtre d'embolcall del Calligra Comment[da]=Filteromslag til Calligra Comment[de]=Calligra-Filter-Wrapper Comment[et]=Calligra filtrikest diff -Nru calligra-2.3.86/servicetypes/koplugin.desktop calligra-2.3.87/servicetypes/koplugin.desktop --- calligra-2.3.86/servicetypes/koplugin.desktop 2012-01-07 03:25:03.000000000 +0000 +++ calligra-2.3.87/servicetypes/koplugin.desktop 2012-01-28 07:04:49.000000000 +0000 @@ -4,10 +4,12 @@ Comment=Calligra Plugin Comment[bg]=Приставка за Calligra Comment[ca]=Connector del Calligra +Comment[ca@valencia]=Connector del Calligra Comment[cs]=Modul Calligra Comment[da]=Calligra-plugin Comment[de]=Calligramodul Comment[et]=Calligra plugin +Comment[hu]=Calligra bővítmény Comment[it]=Estensione di Calligra Comment[nb]=Programtillegg for Calligra Comment[nds]=Calligra-Moduul diff -Nru calligra-2.3.86/stage/data/kpr_pageeffect.desktop calligra-2.3.87/stage/data/kpr_pageeffect.desktop --- calligra-2.3.86/stage/data/kpr_pageeffect.desktop 2012-01-07 03:25:03.000000000 +0000 +++ calligra-2.3.87/stage/data/kpr_pageeffect.desktop 2012-01-28 07:04:49.000000000 +0000 @@ -4,6 +4,7 @@ Comment=Page effect plugin for Calligra Stage Comment[bg]=Приставка за ефекти в страниците на Calligra Stage Comment[ca]=Connector d'efectes de pàgina per al Calligra +Comment[ca@valencia]=Connector d'efectes de pàgina per al Calligra Comment[da]=Sideeffekt-plugin til Calligra Stage Comment[de]=Seiteneffektmodul für Calligra Stage Comment[el]=Πρόσθετο εφέ σελίδας για το Calligra Stage diff -Nru calligra-2.3.86/stage/data/kpr_shapeanimation.desktop calligra-2.3.87/stage/data/kpr_shapeanimation.desktop --- calligra-2.3.86/stage/data/kpr_shapeanimation.desktop 2012-01-07 03:25:03.000000000 +0000 +++ calligra-2.3.87/stage/data/kpr_shapeanimation.desktop 2012-01-28 07:04:49.000000000 +0000 @@ -4,6 +4,7 @@ Comment=Shape animation plugin for Calligra Stage Comment[bg]=Приставка за анимации на Calligra Stage Comment[ca]=Connector d'animació de formes per al Calligra +Comment[ca@valencia]=Connector d'animació de formes per al Calligra Comment[da]=Form-animationsplugin til Calligra Stage Comment[de]=Objektanimationsmodul für Calligra Stage Comment[el]=Πρόσθετο κίνησης σχήματος για το Calligra Stage diff -Nru calligra-2.3.86/stage/part/animations/KPrAnimationLoader.cpp calligra-2.3.87/stage/part/animations/KPrAnimationLoader.cpp --- calligra-2.3.86/stage/part/animations/KPrAnimationLoader.cpp 2012-01-07 03:25:03.000000000 +0000 +++ calligra-2.3.87/stage/part/animations/KPrAnimationLoader.cpp 2012-01-28 07:04:49.000000000 +0000 @@ -50,7 +50,8 @@ QByteArray array; QDomDocument doc; QTextStream st(&array); - st << element.asQDomNode(doc); + KoXml::asQDomElement( doc, element); + st << doc.documentElement(); kDebug() << pos << array; } diff -Nru calligra-2.3.86/stage/part/KPrNotes.cpp calligra-2.3.87/stage/part/KPrNotes.cpp --- calligra-2.3.86/stage/part/KPrNotes.cpp 2012-01-07 03:25:03.000000000 +0000 +++ calligra-2.3.87/stage/part/KPrNotes.cpp 2012-01-28 07:04:49.000000000 +0000 @@ -197,6 +197,12 @@ { } +QImage KPrNotes::thumbImage(const QSize&) +{ + Q_ASSERT( 0 ); + return QImage(); +} + QPixmap KPrNotes::generateThumbnail( const QSize& ) { Q_ASSERT( 0 ); diff -Nru calligra-2.3.86/stage/part/KPrNotes.h calligra-2.3.87/stage/part/KPrNotes.h --- calligra-2.3.86/stage/part/KPrNotes.h 2012-01-07 03:25:03.000000000 +0000 +++ calligra-2.3.87/stage/part/KPrNotes.h 2012-01-28 07:04:49.000000000 +0000 @@ -65,6 +65,8 @@ virtual void setDisplayMasterBackground( bool ); /// reimplemented virtual bool displayShape(KoShape *shape) const; + + QImage thumbImage(const QSize& = QSize(512, 512)); /// reimplemented virtual QPixmap generateThumbnail( const QSize& ); /// reimplemented diff -Nru calligra-2.3.86/stage/part/stage.desktop calligra-2.3.87/stage/part/stage.desktop --- calligra-2.3.86/stage/part/stage.desktop 2012-01-07 03:25:03.000000000 +0000 +++ calligra-2.3.87/stage/part/stage.desktop 2012-01-28 07:04:49.000000000 +0000 @@ -3,11 +3,13 @@ Name=Calligra Stage Name[bg]=Calligra Stage Name[ca]=Etapa del Calligra +Name[ca@valencia]=Etapa del Calligra Name[cs]=Calligra Stage Name[da]=Calligra Stage Name[de]=Calligra Stage Name[el]=Calligra Stage Name[et]=Calligra Stage +Name[hu]=Calligra Stage Name[it]=Stage di Calligra Name[nb]=Calligra Stage Name[nds]=Calligra-Stage diff -Nru calligra-2.3.86/stage/part/stagepart.desktop calligra-2.3.87/stage/part/stagepart.desktop --- calligra-2.3.86/stage/part/stagepart.desktop 2012-01-07 03:25:03.000000000 +0000 +++ calligra-2.3.87/stage/part/stagepart.desktop 2012-01-28 07:04:49.000000000 +0000 @@ -2,6 +2,7 @@ Name=Calligra Stage Component Name[bg]=Компонент Calligra Stage Name[ca]=Component d'etapes del Calligra +Name[ca@valencia]=Component d'etapes del Calligra Name[cs]=Komponenta Calligra Stage Name[da]=Calligra-komponenten Stage Name[de]=Calligra-Komponente für Tabellenkalkulation diff -Nru calligra-2.3.86/tables/commands/PasteCommand.cpp calligra-2.3.87/tables/commands/PasteCommand.cpp --- calligra-2.3.86/tables/commands/PasteCommand.cpp 2012-01-07 03:25:03.000000000 +0000 +++ calligra-2.3.87/tables/commands/PasteCommand.cpp 2012-01-28 07:04:49.000000000 +0000 @@ -231,7 +231,7 @@ if (m_firstrun) { // apply // First, prepare the data ONCE for all region elements. if (m_mimeData->hasFormat("application/x-kspread-snippet")) { - m_xmlDocument = new KoXmlDocument(); + m_xmlDocument = new KoXmlDocument(true); const QByteArray data = m_mimeData->data("application/x-kspread-snippet"); kDebug(36005) << "Parsing" << data.size() << "bytes"; QString errorMsg; diff -Nru calligra-2.3.86/tables/commands/PasteCommand.h calligra-2.3.87/tables/commands/PasteCommand.h --- calligra-2.3.86/tables/commands/PasteCommand.h 2012-01-07 03:25:03.000000000 +0000 +++ calligra-2.3.87/tables/commands/PasteCommand.h 2012-01-28 07:04:49.000000000 +0000 @@ -26,6 +26,8 @@ #include "Global.h" +#include "calligra_tables_export.h" + class QMimeData; class KoXmlDocument; @@ -38,7 +40,7 @@ * \ingroup Commands * \brief Command to paste cell data. */ -class PasteCommand : public AbstractRegionCommand +class CALLIGRA_TABLES_COMMON_TEST_EXPORT PasteCommand : public AbstractRegionCommand { public: PasteCommand(KUndo2Command *parent = 0); diff -Nru calligra-2.3.86/tables/data/templates/General/Worksheet.desktop calligra-2.3.87/tables/data/templates/General/Worksheet.desktop --- calligra-2.3.86/tables/data/templates/General/Worksheet.desktop 2012-01-07 03:25:03.000000000 +0000 +++ calligra-2.3.87/tables/data/templates/General/Worksheet.desktop 2012-01-28 07:04:49.000000000 +0000 @@ -50,7 +50,7 @@ Name[ta]=வெற்று பணித்தாள் Name[tg]=Саҳифаи холӣ Name[tr]=Boş Çalışma Kağıdı -Name[uk]=Порожній лист +Name[uk]=Порожній аркуш Name[uz]=Boʻsh elektron jadval Name[uz@cyrillic]=Бўш электрон жадвал Name[wa]=Vude foye d' ovraedje diff -Nru calligra-2.3.86/tables/data/templates/HomeFamily/BMI.desktop calligra-2.3.87/tables/data/templates/HomeFamily/BMI.desktop --- calligra-2.3.86/tables/data/templates/HomeFamily/BMI.desktop 2012-01-07 03:25:03.000000000 +0000 +++ calligra-2.3.87/tables/data/templates/HomeFamily/BMI.desktop 2012-01-28 07:04:49.000000000 +0000 @@ -47,7 +47,7 @@ Name[ta]=பிஎம்ஐ கணினி Name[tg]=Нархгузори BMI Name[tr]=BMI Hesap Makinesi -Name[uk]=Калькулятор BMI +Name[uk]=Калькулятор індексу маси Name[wa]=Carculete BMI Name[xh]=Umatshini wokubala we BMI Name[x-test]=xxBMI Calculatorxx diff -Nru calligra-2.3.86/tables/DependencyManager.cpp calligra-2.3.87/tables/DependencyManager.cpp --- calligra-2.3.86/tables/DependencyManager.cpp 2012-01-07 03:25:03.000000000 +0000 +++ calligra-2.3.87/tables/DependencyManager.cpp 2012-01-28 07:04:49.000000000 +0000 @@ -23,9 +23,6 @@ #include "DependencyManager.h" #include "DependencyManager_p.h" -#include -#include - #include "Cell.h" #include "CellStorage.h" #include "Formula.h" @@ -36,6 +33,12 @@ #include "RTree.h" #include "Sheet.h" #include "Value.h" +#include "DocBase.h" + +#include +#include + +#include using namespace Calligra::Tables; @@ -175,7 +178,7 @@ // TODO Stefan: Implement, if dependencies should not be tracked all the time. } -void DependencyManager::updateAllDependencies(const Map* map) +void DependencyManager::updateAllDependencies(const Map* map, KoUpdater *updater) { ElapsedTime et("Generating dependencies", ElapsedTime::PrintOnlyTime); @@ -186,9 +189,19 @@ d->namedAreaConsumers.clear(); d->depths.clear(); + int cellsCount = 9; + int cellCurrent = 0; + + if (updater) { + updater->setProgress(0); + + foreach(const Sheet* sheet, map->sheetList()) + cellsCount += sheet->formulaStorage()->count(); + } + Cell cell; foreach(const Sheet* sheet, map->sheetList()) { - for (int c = 0; c < sheet->formulaStorage()->count(); ++c) { + for (int c = 0; c < sheet->formulaStorage()->count(); ++c, ++cellCurrent) { cell = Cell(sheet, sheet->formulaStorage()->col(c), sheet->formulaStorage()->row(c)); d->generateDependencies(cell, sheet->formulaStorage()->data(c)); @@ -198,8 +211,14 @@ } if (!sheet->formulaStorage()->data(c).isValid()) cell.setValue(Value::errorPARSE()); + + if (updater) + updater->setProgress(int(qreal(cellCurrent) / qreal(cellsCount) * 100.)); } } + + if (updater) + updater->setProgress(100); } QMap DependencyManager::depths() const diff -Nru calligra-2.3.86/tables/DependencyManager.h calligra-2.3.87/tables/DependencyManager.h --- calligra-2.3.86/tables/DependencyManager.h 2012-01-07 03:25:03.000000000 +0000 +++ calligra-2.3.87/tables/DependencyManager.h 2012-01-28 07:04:49.000000000 +0000 @@ -25,6 +25,8 @@ #include "Region.h" +class KoUpdater; + namespace Calligra { namespace Tables @@ -66,7 +68,7 @@ /** * Updates the whole \p map. */ - void updateAllDependencies(const Map* map); + void updateAllDependencies(const Map* map, KoUpdater *updater = 0); /** * Returns the cell depths. diff -Nru calligra-2.3.86/tables/dialogs/LayoutDialog.cpp calligra-2.3.87/tables/dialogs/LayoutDialog.cpp --- calligra-2.3.86/tables/dialogs/LayoutDialog.cpp 2012-01-07 03:25:03.000000000 +0000 +++ calligra-2.3.87/tables/dialogs/LayoutDialog.cpp 2012-01-28 07:04:49.000000000 +0000 @@ -829,7 +829,7 @@ // We need to create a command that would act as macro, // but which would also ensure that updates are not painted until everything // is updated properly ... - KUndo2Command* macroCommand = new KUndo2Command("Change Format"); + KUndo2Command* macroCommand = new KUndo2Command(i18nc("(qtundo-format)", "Change Format")); if (isMerged != positionPage->getMergedCellState()) { MergeCommand* command = new MergeCommand(macroCommand); diff -Nru calligra-2.3.86/tables/DocBase.cpp calligra-2.3.87/tables/DocBase.cpp --- calligra-2.3.86/tables/DocBase.cpp 2012-01-07 03:25:03.000000000 +0000 +++ calligra-2.3.87/tables/DocBase.cpp 2012-01-28 07:04:49.000000000 +0000 @@ -147,6 +147,9 @@ return false; } + // Document Url for FILENAME function and page header/footer. + d->map->calculationSettings()->setFileName(url().prettyUrl()); + KoXmlWriter* bodyWriter = documentContext.odfStore.bodyWriter(); KoShapeSavingContext savingContext(*bodyWriter, mainStyles, documentContext.embeddedSaver); @@ -241,6 +244,9 @@ return false; } + // Document Url for FILENAME function and page header/footer. + d->map->calculationSettings()->setFileName(url().prettyUrl()); + KoOdfLoadingContext context(odfStore.styles(), odfStore.store()); // TODO check versions and mimetypes etc. diff -Nru calligra-2.3.86/tables/DocBase_p.h calligra-2.3.87/tables/DocBase_p.h --- calligra-2.3.86/tables/DocBase_p.h 2012-01-07 03:25:03.000000000 +0000 +++ calligra-2.3.87/tables/DocBase_p.h 2012-01-28 07:04:49.000000000 +0000 @@ -35,7 +35,7 @@ static const int CURRENT_SYNTAX_VERSION = 1; -typedef QMap SavedDocParts; +typedef QMap SavedDocParts; namespace Calligra { namespace Tables { diff -Nru calligra-2.3.86/tables/Formula.cpp calligra-2.3.87/tables/Formula.cpp --- calligra-2.3.86/tables/Formula.cpp 2012-01-07 03:25:03.000000000 +0000 +++ calligra-2.3.87/tables/Formula.cpp 2012-01-28 07:04:49.000000000 +0000 @@ -841,7 +841,13 @@ break; case InSheetOrAreaName: // consume until ' - if (*data != QChar('\'', 0)) { + if (data->isNull()) { + parseError = true; + token.resize(out - outStart); + tokens.append(Token(Token::Unknown, '\'' + token + '\'', tokenStart - start)); + state = Start; + } + else if (*data != QChar('\'', 0)) { *out++ = *data++; } else { diff -Nru calligra-2.3.86/tables/functions/engineering.xml calligra-2.3.87/tables/functions/engineering.xml --- calligra-2.3.86/tables/functions/engineering.xml 2012-01-07 03:25:03.000000000 +0000 +++ calligra-2.3.87/tables/functions/engineering.xml 2012-01-28 07:04:49.000000000 +0000 @@ -16,12 +16,12 @@ Int - MinLength + MinLength Int The BASE() function converts a number from base-10 to a string value in a target base from 2 to 36. - BASE(number;base;prec) + BASE(number;base;prec) BASE(128;8) returns "200" diff -Nru calligra-2.3.86/tables/functions/financial.xml calligra-2.3.87/tables/functions/financial.xml --- calligra-2.3.86/tables/functions/financial.xml 2012-01-07 03:25:03.000000000 +0000 +++ calligra-2.3.87/tables/functions/financial.xml 2012-01-28 07:04:49.000000000 +0000 @@ -462,7 +462,7 @@ Basis - Integer + Int Returns the Macauley duration of a fixed interest security in years. @@ -652,7 +652,7 @@ Type (optional) - IntType + Int IPMT calculates the amount of a payment of an annuity going towards interest. @@ -698,11 +698,11 @@ Period - IntType + Int Number of periods - IntType + Int Present values (PV) @@ -779,7 +779,7 @@ Basis - Integer + Int The MDURATION() function will calculate the modified Macauley duration of a fixed interest security in years. @@ -852,7 +852,7 @@ Type (optional) - IntType + Int Returns the number of periods of an investment. @@ -879,6 +879,7 @@ The net present value (NPV) for a series of periodic cash flows. + Computes the net present value for a series of periodic cash flows with the discount rate Rate. Values should be positive if they are received as income, and negative if the amounts are expenditure. @@ -1000,7 +1001,7 @@ Type (optional) - IntType + Int PMT returns the amount of payment for a loan based on a constant interest rate and constant payments (each payment is equal amount). @@ -1038,7 +1039,7 @@ Type (optional) - IntType + Int PPMT calculates the amount of a payment of an annuity going towards principal. @@ -1142,8 +1143,6 @@ - RECEIVED @@ -1381,7 +1379,7 @@ Basis - int + Int VDB calculates the depreciation allowance of an asset with an initial value, an expected useful life, and a final value of salvage for a period specified, using the variable-rate declining balance method. @@ -1457,7 +1455,7 @@ Basis - int + Int YIELDDISC calculates the yield of a discounted security per 100 currency units of face value. diff -Nru calligra-2.3.86/tables/functions/information.cpp calligra-2.3.87/tables/functions/information.cpp --- calligra-2.3.86/tables/functions/information.cpp 2012-01-07 03:25:03.000000000 +0000 +++ calligra-2.3.87/tables/functions/information.cpp 2012-01-28 07:04:49.000000000 +0000 @@ -34,10 +34,12 @@ #include "FunctionModuleRegistry.h" #include "ValueCalc.h" #include "ValueConverter.h" +#include "Map.h" #include "Sheet.h" #include "Region.h" #include "Cell.h" #include "Formula.h" +#include "CellStorage.h" #include @@ -53,6 +55,7 @@ Value func_iserr(valVector args, ValueCalc *calc, FuncExtra *); Value func_iserror(valVector args, ValueCalc *calc, FuncExtra *); Value func_iseven(valVector args, ValueCalc *calc, FuncExtra *); +Value func_isformula(valVector args, ValueCalc *calc, FuncExtra *); Value func_islogical(valVector args, ValueCalc *calc, FuncExtra *); Value func_isna(valVector args, ValueCalc *calc, FuncExtra *); Value func_isnottext(valVector args, ValueCalc *calc, FuncExtra *); @@ -66,7 +69,6 @@ Value func_type(valVector args, ValueCalc *calc, FuncExtra *); Value func_version(valVector args, ValueCalc *calc, FuncExtra *); - CALLIGRA_TABLES_EXPORT_FUNCTION_MODULE("information", InformationModule) @@ -97,6 +99,9 @@ f = new Function("ISEVEN", func_iseven); f->setAlternateName("COM.SUN.STAR.SHEET.ADDIN.ANALYSIS.GETISEVEN"); add(f); + f = new Function("ISFORMULA", func_isformula); + f->setNeedsExtra(true); + add(f); f = new Function("ISLOGICAL", func_islogical); add(f); f = new Function("ISNA", func_isna); @@ -135,7 +140,6 @@ return QString("information.xml"); } - // Function: ERROR.TYPE Value func_errortype(valVector args, ValueCalc *, FuncExtra *) { @@ -297,6 +301,16 @@ return Value(calc->isEven(args[0])); } +// Function: ISFORMULA +Value func_isformula(valVector args, ValueCalc *calc, FuncExtra *e) +{ + const Calligra::Tables::Region ®ion = e->regions[0]; + QPoint p = region.firstRange().topLeft(); + CellStorage *s = region.firstSheet()->cellStorage(); + Formula formula = s->formula(p.x(), p.y()); + return Value(formula.isValid()); +} + // Function: ISERR Value func_iserr(valVector args, ValueCalc *, FuncExtra *) { diff -Nru calligra-2.3.86/tables/functions/information.xml calligra-2.3.87/tables/functions/information.xml --- calligra-2.3.86/tables/functions/information.xml 2012-01-07 03:25:03.000000000 +0000 +++ calligra-2.3.87/tables/functions/information.xml 2012-01-28 07:04:49.000000000 +0000 @@ -216,6 +216,19 @@ + ISFORMULA + Boolean + + Reference + Reference + + + The ISFORMULA() function returns True if the referenced cell contains a formula. Otherwise it returns False + ISFORMULA(x) + + + + ISODD Boolean diff -Nru calligra-2.3.86/tables/functions/kspreadbitopsmodule.desktop calligra-2.3.87/tables/functions/kspreadbitopsmodule.desktop --- calligra-2.3.86/tables/functions/kspreadbitopsmodule.desktop 2012-01-07 03:25:03.000000000 +0000 +++ calligra-2.3.87/tables/functions/kspreadbitopsmodule.desktop 2012-01-28 07:04:49.000000000 +0000 @@ -44,6 +44,7 @@ Comment[fr]=BITAND, BITOR, BITXOR, BITLSHIFT, BITRSHIFT Comment[ga]=BITAND, BITOR, BITXOR, BITLSHIFT, BITRSHIFT Comment[gl]=BITAND, BITOR, BITXOR, BITLSHIFT, BITRSHIFT +Comment[hu]=BITAND, BITOR, BITXOR, BITLSHIFT, BITRSHIFT Comment[it]=BITAND, BITOR, BITXOR, BITLSHIFT, BITRSHIFT Comment[ja]=BITAND, BITOR, BITXOR, BITLSHIFT, BITRSHIFT Comment[kk]=BITAND, BITOR, BITXOR, BITLSHIFT, BITRSHIFT diff -Nru calligra-2.3.86/tables/functions/kspreadconversionmodule.desktop calligra-2.3.87/tables/functions/kspreadconversionmodule.desktop --- calligra-2.3.86/tables/functions/kspreadconversionmodule.desktop 2012-01-07 03:25:03.000000000 +0000 +++ calligra-2.3.87/tables/functions/kspreadconversionmodule.desktop 2012-01-28 07:04:49.000000000 +0000 @@ -46,6 +46,7 @@ Comment[et]=ARABIC, ASCIITOCHAR, BOOL2INT, BOOL2STRING, CARX, CARY, CHARTOASCII, DECSEX, INT2BOOL, NUM2STRING, POLA, POLR, ROMAN, SEXDEC, STRING Comment[fr]=ARABIC, ASCIITOCHAR, BOOL2INT, BOOL2STRING, CARX, CARY, CHARTOASCII, DECSEX, INT2BOOL, NUM2STRING, POLA, POLR, ROMAN, SEXDEC, STRING Comment[gl]=ARABIC, ASCIITOCHAR, BOOL2INT, BOOL2STRING, CARX, CARY, CHARTOASCII, DECSEX, INT2BOOL, NUM2STRING, POLA, POLR, ROMAN, SEXDEC, STRING +Comment[hu]=ARABIC, ASCIITOCHAR, BOOL2INT, BOOL2STRING, CARX, CARY, CHARTOASCII, DECSEX, INT2BOOL, NUM2STRING, POLA, POLR, ROMAN, SEXDEC, STRING Comment[it]=ARABIC, ASCIITOCHAR, BOOL2INT, BOOL2STRING, CARX, CARY, CHARTOASCII, DECSEX, INT2BOOL, NUM2STRING, POLA, POLR, ROMAN, SEXDEC, STRING Comment[ja]=ARABIC, ASCIITOCHAR, BOOL2INT, BOOL2STRING, CARX, CARY, CHARTOASCII, DECSEX, INT2BOOL, NUM2STRING, POLA, POLR, ROMAN, SEXDEC, STRING Comment[kk]=ARABIC, ASCIITOCHAR, BOOL2INT, BOOL2STRING, CARX, CARY, CHARTOASCII, DECSEX, INT2BOOL, NUM2STRING, POLA, POLR, ROMAN, SEXDEC, STRING diff -Nru calligra-2.3.86/tables/functions/kspreaddatabasemodule.desktop calligra-2.3.87/tables/functions/kspreaddatabasemodule.desktop --- calligra-2.3.86/tables/functions/kspreaddatabasemodule.desktop 2012-01-07 03:25:03.000000000 +0000 +++ calligra-2.3.87/tables/functions/kspreaddatabasemodule.desktop 2012-01-28 07:04:49.000000000 +0000 @@ -15,6 +15,7 @@ Name[gl]=Funcións de Bases de Datos Name[he]=פונקציות מסד־נתונים Name[hne]=डाटाबेस फंक्सन्स +Name[hu]=Adatbázis függvények Name[it]=Funzioni per banche dati Name[ja]=データベース関数 Name[kk]=Деректер қоры функциялары @@ -49,6 +50,7 @@ Comment[et]=DAVERAGE, DCOUNT, DCOUNTA, DGET, DMAX, DMIN, DPRODUCT, DSTDEV, DSTDEVP, DSUM, DVAR, DVARP, GETPIVOTDATA Comment[fr]=DAVERAGE, DCOUNT, DCOUNTA, DGET, DMAX, DMIN, DPRODUCT, DSTDEV, DSTDEVP, DSUM, DVAR, DVARP, GETPIVOTDATA Comment[gl]=DAVERAGE, DCOUNT, DCOUNTA, DGET, DMAX, DMIN, DPRODUCT, DSTDEV, DSTDEVP, DSUM, DVAR, DVARP, GETPIVOTDATA +Comment[hu]=DAVERAGE, DCOUNT, DCOUNTA, DGET, DMAX, DMIN, DPRODUCT, DSTDEV, DSTDEVP, DSUM, DVAR, DVARP, GETPIVOTDATA Comment[it]=DAVERAGE, DCOUNT, DCOUNTA, DGET, DMAX, DMIN, DPRODUCT, DSTDEV, DSTDEVP, DSUM, DVAR, DVARP, GETPIVOTDATA Comment[ja]=DAVERAGE, DCOUNT, DCOUNTA, DGET, DMAX, DMIN, DPRODUCT, DSTDEV, DSTDEVP, DSUM, DVAR, DVARP, GETPIVOTDATA Comment[kk]=DAVERAGE, DCOUNT, DCOUNTA, DGET, DMAX, DMIN, DPRODUCT, DSTDEV, DSTDEVP, DSUM, DVAR, DVARP, GETPIVOTDATA diff -Nru calligra-2.3.86/tables/functions/kspreaddatetimemodule.desktop calligra-2.3.87/tables/functions/kspreaddatetimemodule.desktop --- calligra-2.3.86/tables/functions/kspreaddatetimemodule.desktop 2012-01-07 03:25:03.000000000 +0000 +++ calligra-2.3.87/tables/functions/kspreaddatetimemodule.desktop 2012-01-28 07:04:49.000000000 +0000 @@ -44,6 +44,7 @@ Comment[et]=CURRENTDATE, CURRENTDATETIME, CURRENTTIME, DATE, DATE2UNIX, DATEDIF, DATEVALUE, DAY, DAYNAME, DAYOFYEAR, DAYS, DAYS360, DAYSINMONTH, DAYSINYEAR, EASTERSUNDAY, EDATE, EOMONTH, HOUR, HOURS, ISLEAPYEAR, ISOWEEKNUM, MINUTE, MINUTES, MONTH, MONTHNAME, MONTHS, NETWORKDAY, NOW, SECOND, SECONDS, TIME, TIMEVALUE, TODAY, UNIX2DATE, WEEKDAY, WEEKNUM, WEEKS, WEEKSINYEAR, WORKDAY, YEAR, YEARFRAC, YEARS Comment[fr]=CURRENTDATE, CURRENTDATETIME, CURRENTTIME, DATE, DATE2UNIX, DATEDIF, DATEVALUE, DAY, DAYNAME, DAYOFYEAR, DAYS, DAYS360, DAYSINMONTH, DAYSINYEAR, EASTERSUNDAY, EDATE, EOMONTH, HOUR, HOURS, ISLEAPYEAR, ISOWEEKNUM, MINUTE, MINUTES, MONTH, MONTHNAME, MONTHS, NETWORKDAY, NOW, SECOND, SECONDS, TIME, TIMEVALUE, TODAY, UNIX2DATE, WEEKDAY, WEEKNUM, WEEKS, WEEKSINYEAR, WORKDAY, YEAR, YEARFRAC, YEARS Comment[gl]=CURRENTDATE, CURRENTDATETIME, CURRENTTIME, DATE, DATE2UNIX, DATEDIF, DATEVALUE, DAY, DAYNAME, DAYOFYEAR, DAYS, DAYS360, DAYSINMONTH, DAYSINYEAR, EASTERSUNDAY, EDATE, EOMONTH, HOUR, HOURS, ISLEAPYEAR, ISOWEEKNUM, MINUTE, MINUTES, MONTH, MONTHNAME, MONTHS, NETWORKDAY, NOW, SECOND, SECONDS, TIME, TIMEVALUE, TODAY, UNIX2DATE, WEEKDAY, WEEKNUM, WEEKS, WEEKSINYEAR, WORKDAY, YEAR, YEARFRAC, YEARS +Comment[hu]=CURRENTDATE, CURRENTDATETIME, CURRENTTIME, DATE, DATE2UNIX, DATEDIF, DATEVALUE, DAY, DAYNAME, DAYOFYEAR, DAYS, DAYS360, DAYSINMONTH, DAYSINYEAR, EASTERSUNDAY, EDATE, EOMONTH, HOUR, HOURS, ISLEAPYEAR, ISOWEEKNUM, MINUTE, MINUTES, MONTH, MONTHNAME, MONTHS, NETWORKDAY, NOW, SECOND, SECONDS, TIME, TIMEVALUE, TODAY, UNIX2DATE, WEEKDAY, WEEKNUM, WEEKS, WEEKSINYEAR, WORKDAY, YEAR, YEARFRAC, YEARS Comment[it]=CURRENTDATE, CURRENTDATETIME, CURRENTTIME, DATE, DATE2UNIX, DATEDIF, DATEVALUE, DAY, DAYNAME, DAYOFYEAR, DAYS, DAYS360, DAYSINMONTH, DAYSINYEAR, EASTERSUNDAY, EDATE, EOMONTH, HOUR, HOURS, ISLEAPYEAR, ISOWEEKNUM, MINUTE, MINUTES, MONTH, MONTHNAME, MONTHS, NETWORKDAY, NOW, SECOND, SECONDS, TIME, TIMEVALUE, TODAY, UNIX2DATE, WEEKDAY, WEEKNUM, WEEKS, WEEKSINYEAR, WORKDAY, YEAR, YEARFRAC, YEARS Comment[ja]=CURRENTDATE, CURRENTDATETIME, CURRENTTIME, DATE, DATE2UNIX, DATEDIF, DATEVALUE, DAY, DAYNAME, DAYOFYEAR, DAYS, DAYS360, DAYSINMONTH, DAYSINYEAR, EASTERSUNDAY, EDATE, EOMONTH, HOUR, HOURS, ISLEAPYEAR, ISOWEEKNUM, MINUTE, MINUTES, MONTH, MONTHNAME, MONTHS, NETWORKDAY, NOW, SECOND, SECONDS, TIME, TIMEVALUE, TODAY, UNIX2DATE, WEEKDAY, WEEKNUM, WEEKS, WEEKSINYEAR, WORKDAY, YEAR, YEARFRAC, YEARS Comment[kk]=CURRENTDATE, CURRENTDATETIME, CURRENTTIME, DATE, DATE2UNIX, DATEDIF, DATEVALUE, DAY, DAYNAME, DAYOFYEAR, DAYS, DAYS360, DAYSINMONTH, DAYSINYEAR, EASTERSUNDAY, EDATE, EOMONTH, HOUR, HOURS, ISLEAPYEAR, ISOWEEKNUM, MINUTE, MINUTES, MONTH, MONTHNAME, MONTHS, NETWORKDAY, NOW, SECOND, SECONDS, TIME, TIMEVALUE, TODAY, UNIX2DATE, WEEKDAY, WEEKNUM, WEEKS, WEEKSINYEAR, WORKDAY, YEAR, YEARFRAC, YEARS diff -Nru calligra-2.3.86/tables/functions/kspreadengineeringmodule.desktop calligra-2.3.87/tables/functions/kspreadengineeringmodule.desktop --- calligra-2.3.86/tables/functions/kspreadengineeringmodule.desktop 2012-01-07 03:25:03.000000000 +0000 +++ calligra-2.3.87/tables/functions/kspreadengineeringmodule.desktop 2012-01-28 07:04:49.000000000 +0000 @@ -46,6 +46,7 @@ Comment[et]=BASE, BESSELI, BESSELJ, BESSELK, BESSELY, BIN2DEC, BIN2HEX, BIN2OCT, COMPLEX, CONVERT, DEC2BIN, DEC2HEX, DEC2OCT, DELTA, ERF, ERFC, GESTEP, HEX2BIN, HEX2DEC, HEX2OCT, IMABS, IMAGINARY, IMARGUMENT, IMCONJUGATE, IMCOS, IMCOSH, IMDIV, IMEXP, IMLN, IMLOG10, IMLOG2, IMPOWER, IMPRODUCT, IMREAL, IMSIN, IMSINH, IMSQRT, IMSUB, IMSUM, IMTAN, IMTANH, OCT2BIN, OCT2DEC, OCT2HEX Comment[fr]=BASE, BESSELI, BESSELJ, BESSELK, BESSELY, BIN2DEC, BIN2HEX, BIN2OCT, COMPLEX, CONVERT, DEC2BIN, DEC2HEX, DEC2OCT, DELTA, ERF, ERFC, GESTEP, HEX2BIN, HEX2DEC, HEX2OCT, IMABS, IMAGINARY, IMARGUMENT, IMCONJUGATE, IMCOS, IMCOSH, IMDIV, IMEXP, IMLN, IMLOG10, IMLOG2, IMPOWER, IMPRODUCT, IMREAL, IMSIN, IMSINH, IMSQRT, IMSUB, IMSUM, IMTAN, IMTANH, OCT2BIN, OCT2DEC, OCT2HEX Comment[gl]=BASE, BESSELI, BESSELJ, BESSELK, BESSELY, BIN2DEC, BIN2HEX, BIN2OCT, COMPLEX, CONVERT, DEC2BIN, DEC2HEX, DEC2OCT, DELTA, ERF, ERFC, GESTEP, HEX2BIN, HEX2DEC, HEX2OCT, IMABS, IMAGINARY, IMARGUMENT, IMCONJUGATE, IMCOS, IMCOSH, IMDIV, IMEXP, IMLN, IMLOG10, IMLOG2, IMPOWER, IMPRODUCT, IMREAL, IMSIN, IMSINH, IMSQRT, IMSUB, IMSUM, IMTAN, IMTANH, OCT2BIN, OCT2DEC, OCT2HEX +Comment[hu]=BASE, BESSELI, BESSELJ, BESSELK, BESSELY, BIN2DEC, BIN2HEX, BIN2OCT, COMPLEX, CONVERT, DEC2BIN, DEC2HEX, DEC2OCT, DELTA, ERF, ERFC, GESTEP, HEX2BIN, HEX2DEC, HEX2OCT, IMABS, IMAGINARY, IMARGUMENT, IMCONJUGATE, IMCOS, IMCOSH, IMDIV, IMEXP, IMLN, IMLOG10, IMLOG2, IMPOWER, IMPRODUCT, IMREAL, IMSIN, IMSINH, IMSQRT, IMSUB, IMSUM, IMTAN, IMTANH, OCT2BIN, OCT2DEC, OCT2HEX Comment[it]=BASE, BESSELI, BESSELJ, BESSELK, BESSELY, BIN2DEC, BIN2HEX, BIN2OCT, COMPLEX, CONVERT, DEC2BIN, DEC2HEX, DEC2OCT, DELTA, ERF, ERFC, GESTEP, HEX2BIN, HEX2DEC, HEX2OCT, IMABS, IMAGINARY, IMARGUMENT, IMCONJUGATE, IMCOS, IMCOSH, IMDIV, IMEXP, IMLN, IMLOG10, IMLOG2, IMPOWER, IMPRODUCT, IMREAL, IMSIN, IMSINH, IMSQRT, IMSUB, IMSUM, IMTAN, IMTANH, OCT2BIN, OCT2DEC, OCT2HEX Comment[ja]=BASE, BESSELI, BESSELJ, BESSELK, BESSELY, BIN2DEC, BIN2HEX, BIN2OCT, COMPLEX, CONVERT, DEC2BIN, DEC2HEX, DEC2OCT, DELTA, ERF, ERFC, GESTEP, HEX2BIN, HEX2DEC, HEX2OCT, IMABS, IMAGINARY, IMARGUMENT, IMCONJUGATE, IMCOS, IMCOSH, IMDIV, IMEXP, IMLN, IMLOG10, IMLOG2, IMPOWER, IMPRODUCT, IMREAL, IMSIN, IMSINH, IMSQRT, IMSUB, IMSUM, IMTAN, IMTANH, OCT2BIN, OCT2DEC, OCT2HEX Comment[kk]=BASE, BESSELI, BESSELJ, BESSELK, BESSELY, BIN2DEC, BIN2HEX, BIN2OCT, COMPLEX, CONVERT, DEC2BIN, DEC2HEX, DEC2OCT, DELTA, ERF, ERFC, GESTEP, HEX2BIN, HEX2DEC, HEX2OCT, IMABS, IMAGINARY, IMARGUMENT, IMCONJUGATE, IMCOS, IMCOSH, IMDIV, IMEXP, IMLN, IMLOG10, IMLOG2, IMPOWER, IMPRODUCT, IMREAL, IMSIN, IMSINH, IMSQRT, IMSUB, IMSUM, IMTAN, IMTANH, OCT2BIN, OCT2DEC, OCT2HEX diff -Nru calligra-2.3.86/tables/functions/kspreadfinancialmodule.desktop calligra-2.3.87/tables/functions/kspreadfinancialmodule.desktop --- calligra-2.3.86/tables/functions/kspreadfinancialmodule.desktop 2012-01-07 03:25:03.000000000 +0000 +++ calligra-2.3.87/tables/functions/kspreadfinancialmodule.desktop 2012-01-28 07:04:49.000000000 +0000 @@ -46,6 +46,7 @@ Comment[et]=ACCRINT, ACCRINTM, AMORDEGRC, AMORLINC, COMPOUND, CONTINUOUS, COUPNUM, CUMIPMT, CUMPRINC, DB, DDB, DISC, DOLLARDE, DOLLARFR, DURATION, DURATION_ADD, EFFECT, EFFECTIVE, EURO, EUROCONVERT, FV, FV_ANNUITY, INTRATE, IPMT, ISPMT, LEVEL_COUPON, MDURATION, MIRR, NOMINAL, NPER, NPV, ODDLPRICE, ODDLYIELD, PMT, PPMT, PRICEMAT, PV, PV_ANNUITY, RECEIVED, RRI, SLN, SYD, TBILLEQ, TBILLPRICE, TBILLYIELD, VDB, XIRR, XNPV, YIELDDISC, YIELDMAT, ZERO_COUPON Comment[fr]=ACCRINT, ACCRINTM, AMORDEGRC, AMORLINC, COMPOUND, CONTINUOUS, COUPNUM, CUMIPMT, CUMPRINC, DB, DDB, DISC, DOLLARDE, DOLLARFR, DURATION, DURATION_ADD, EFFECT, EFFECTIVE, EURO, EUROCONVERT, FV, FV_ANNUITY, INTRATE, IPMT, ISPMT, LEVEL_COUPON, MDURATION, MIRR, NOMINAL, NPER, NPV, ODDLPRICE, ODDLYIELD, PMT, PPMT, PRICEMAT, PV, PV_ANNUITY, RECEIVED, RRI, SLN, SYD, TBILLEQ, TBILLPRICE, TBILLYIELD, VDB, XIRR, XNPV, YIELDDISC, YIELDMAT, ZERO_COUPON Comment[gl]=ACCRINT, ACCRINTM, AMORDEGRC, AMORLINC, COMPOUND, CONTINUOUS, COUPNUM, CUMIPMT, CUMPRINC, DB, DDB, DISC, DOLLARDE, DOLLARFR, DURATION, DURATION_ADD, EFFECT, EFFECTIVE, EURO, EUROCONVERT, FV, FV_ANNUITY, INTRATE, IPMT, ISPMT, LEVEL_COUPON, MDURATION, MIRR, NOMINAL, NPER, NPV, ODDLPRICE, ODDLYIELD, PMT, PPMT, PRICEMAT, PV, PV_ANNUITY, RECEIVED, RRI, SLN, SYD, TBILLEQ, TBILLPRICE, TBILLYIELD, VDB, XIRR, XNPV, YIELDDISC, YIELDMAT, ZERO_COUPON +Comment[hu]=ACCRINT, ACCRINTM, AMORDEGRC, AMORLINC, COMPOUND, CONTINUOUS, COUPNUM, CUMIPMT, CUMPRINC, DB, DDB, DISC, DOLLARDE, DOLLARFR, DURATION, DURATION_ADD, EFFECT, EFFECTIVE, EURO, EUROCONVERT, FV, FV_ANNUITY, INTRATE, IPMT, ISPMT, LEVEL_COUPON, MDURATION, MIRR, NOMINAL, NPER, NPV, ODDLPRICE, ODDLYIELD, PMT, PPMT, PRICEMAT, PV, PV_ANNUITY, RECEIVED, RRI, SLN, SYD, TBILLEQ, TBILLPRICE, TBILLYIELD, VDB, XIRR, XNPV, YIELDDISC, YIELDMAT, ZERO_COUPON Comment[it]=ACCRINT, ACCRINTM, AMORDEGRC, AMORLINC, COMPOUND, CONTINUOUS, COUPNUM, CUMIPMT, CUMPRINC, DB, DDB, DISC, DOLLARDE, DOLLARFR, DURATION, DURATION_ADD, EFFECT, EFFECTIVE, EURO, EUROCONVERT, FV, FV_ANNUITY, INTRATE, IPMT, ISPMT, LEVEL_COUPON, MDURATION, MIRR, NOMINAL, NPER, NPV, ODDLPRICE, ODDLYIELD, PMT, PPMT, PRICEMAT, PV, PV_ANNUITY, RECEIVED, RRI, SLN, SYD, TBILLEQ, TBILLPRICE, TBILLYIELD, VDB, XIRR, XNPV, YIELDDISC, YIELDMAT, ZERO_COUPON Comment[ja]=ACCRINT, ACCRINTM, AMORDEGRC, AMORLINC, COMPOUND, CONTINUOUS, COUPNUM, CUMIPMT, CUMPRINC, DB, DDB, DISC, DOLLARDE, DOLLARFR, DURATION, DURATION_ADD, EFFECT, EFFECTIVE, EURO, EUROCONVERT, FV, FV_ANNUITY, INTRATE, IPMT, ISPMT, LEVEL_COUPON, MDURATION, MIRR, NOMINAL, NPER, NPV, ODDLPRICE, ODDLYIELD, PMT, PPMT, PRICEMAT, PV, PV_ANNUITY, RECEIVED, RRI, SLN, SYD, TBILLEQ, TBILLPRICE, TBILLYIELD, VDB, XIRR, XNPV, YIELDDISC, YIELDMAT, ZERO_COUPON Comment[kk]=ACCRINT, ACCRINTM, AMORDEGRC, AMORLINC, COMPOUND, CONTINUOUS, COUPNUM, CUMIPMT, CUMPRINC, DB, DDB, DISC, DOLLARDE, DOLLARFR, DURATION, DURATION_ADD, EFFECT, EFFECTIVE, EURO, EUROCONVERT, FV, FV_ANNUITY, INTRATE, IPMT, ISPMT, LEVEL_COUPON, MDURATION, MIRR, NOMINAL, NPER, NPV, ODDLPRICE, ODDLYIELD, PMT, PPMT, PRICEMAT, PV, PV_ANNUITY, RECEIVED, RRI, SLN, SYD, TBILLEQ, TBILLPRICE, TBILLYIELD, VDB, XIRR, XNPV, YIELDDISC, YIELDMAT, ZERO_COUPON diff -Nru calligra-2.3.86/tables/functions/kspreadinformationmodule.desktop calligra-2.3.87/tables/functions/kspreadinformationmodule.desktop --- calligra-2.3.86/tables/functions/kspreadinformationmodule.desktop 2012-01-07 03:25:03.000000000 +0000 +++ calligra-2.3.87/tables/functions/kspreadinformationmodule.desktop 2012-01-28 07:04:49.000000000 +0000 @@ -45,6 +45,7 @@ Comment[et]=ERRORTYPE, FILENAME, INFO, ISBLANK, ISDATE, ISERR, ISERROR, ISEVEN, ISLOGICAL, ISNA, ISNONTEXT, ISNOTTEXT, ISNUM, ISNUMBER, ISODD, ISREF, ISTEXT, ISTIME, N, NA, TYPE Comment[fr]=ERRORTYPE, FILENAME, INFO, ISBLANK, ISDATE, ISERR, ISERROR, ISEVEN, ISLOGICAL, ISNA, ISNONTEXT, ISNOTTEXT, ISNUM, ISNUMBER, ISODD, ISREF, ISTEXT, ISTIME, N, NA, TYPE Comment[gl]=ERRORTYPE, FILENAME, INFO, ISBLANK, ISDATE, ISERR, ISERROR, ISEVEN, ISLOGICAL, ISNA, ISNONTEXT, ISNOTTEXT, ISNUM, ISNUMBER, ISODD, ISREF, ISTEXT, ISTIME, N, NA, TYPE +Comment[hu]=ERRORTYPE, FILENAME, INFO, ISBLANK, ISDATE, ISERR, ISERROR, ISEVEN, ISLOGICAL, ISNA, ISNONTEXT, ISNOTTEXT, ISNUM, ISNUMBER, ISODD, ISREF, ISTEXT, ISTIME, N, NA, TYPE Comment[it]=ERRORTYPE, FILENAME, INFO, ISBLANK, ISDATE, ISERR, ISERROR, ISEVEN, ISLOGICAL, ISNA, ISNONTEXT, ISNOTTEXT, ISNUM, ISNUMBER, ISODD, ISREF, ISTEXT, ISTIME, N, NA, TYPE Comment[ja]=ERRORTYPE, FILENAME, INFO, ISBLANK, ISDATE, ISERR, ISERROR, ISEVEN, ISLOGICAL, ISNA, ISNONTEXT, ISNOTTEXT, ISNUM, ISNUMBER, ISODD, ISREF, ISTEXT, ISTIME, N, NA, TYPE Comment[kk]=ERRORTYPE, FILENAME, INFO, ISBLANK, ISDATE, ISERR, ISERROR, ISEVEN, ISLOGICAL, ISNA, ISNONTEXT, ISNOTTEXT, ISNUM, ISNUMBER, ISODD, ISREF, ISTEXT, ISTIME, N, NA, TYPE diff -Nru calligra-2.3.86/tables/functions/kspreadlogicmodule.desktop calligra-2.3.87/tables/functions/kspreadlogicmodule.desktop --- calligra-2.3.86/tables/functions/kspreadlogicmodule.desktop 2012-01-07 03:25:03.000000000 +0000 +++ calligra-2.3.87/tables/functions/kspreadlogicmodule.desktop 2012-01-28 07:04:49.000000000 +0000 @@ -15,6 +15,7 @@ Name[he]=פונקציות לוגיות Name[hne]=लाजिक फंक्सन्स Name[hr]=Logičke funkcije +Name[hu]=Logikai függvények Name[it]=Funzioni logiche Name[ja]=論理関数 Name[kk]=Логикалық функциялары @@ -48,6 +49,7 @@ Comment[et]=AND, FALSE, IF, NAND, NOR, NOT, OR, TRUE, XOR Comment[fr]=AND, FALSE, IF, NAND, NOR, NOT, OR, TRUE, XOR Comment[gl]=AND, FALSE, IF, NAND, NOR, NOT, OR, TRUE, XOR +Comment[hu]=AND, FALSE, IF, NAND, NOR, NOT, OR, TRUE, XOR Comment[it]=AND, FALSE, IF, NAND, NOR, NOT, OR, TRUE, XOR Comment[ja]=AND, FALSE, IF, NAND, NOR, NOT, OR, TRUE, XOR Comment[kk]=AND, FALSE, IF, NAND, NOR, NOT, OR, TRUE, XOR diff -Nru calligra-2.3.86/tables/functions/kspreadmathmodule.desktop calligra-2.3.87/tables/functions/kspreadmathmodule.desktop --- calligra-2.3.86/tables/functions/kspreadmathmodule.desktop 2012-01-07 03:25:03.000000000 +0000 +++ calligra-2.3.87/tables/functions/kspreadmathmodule.desktop 2012-01-28 07:04:49.000000000 +0000 @@ -13,6 +13,7 @@ Name[fr]=Fonctions mathématiques Name[gl]=Funcións Matemáticas Name[he]=פונקציות מתמטיות +Name[hu]=Matematikai függvények Name[it]=Funzioni matematiche Name[ja]=数学関数 Name[kk]=Математикалық функциялары @@ -46,6 +47,7 @@ Comment[et]=ABS, CEIL, CEILING, COUNT, COUNTA, COUNTBLANK, COUNTIF, CUR, DIV, EPS, EVEN, EXP, FACT, FACTDOUBLE, FIB, FLOOR, GAMMA, GCD, G_PRODUCT, INT, INV, KPRODUCT, LCM, LN, LOG, LOG10, LOG2, LOGN, MAX, MAXA, MDETERM, MIN, MINA, MINVERSE, MMULT, MOD, MROUND, MULTINOMIAL, MULTIPLY, MUNIT, ODD, POW, POWER, PRODUCT, QUOTIENT, RAND, RANDBERNOULLI, RANDBETWEEN, RANDBINOM, RANDEXP, RANDNEGBINOM, RANDNORM, RANDPOISSON, ROOTN, ROUND, ROUNDDOWN, ROUNDUP, SERIESSUM, SIGN, SQRT, SQRTPI, SUBTOTAL, SUM, SUMA, SUMIF, SUMSQ, TRANSPOSE, TRUNC Comment[fr]=ABS, CEIL, CEILING, COUNT, COUNTA, COUNTBLANK, COUNTIF, CUR, DIV, EPS, EVEN, EXP, FACT, FACTDOUBLE, FIB, FLOOR, GAMMA, GCD, G_PRODUCT, INT, INV, KPRODUCT, LCM, LN, LOG, LOG10, LOG2, LOGN, MAX, MAXA, MDETERM, MIN, MINA, MINVERSE, MMULT, MOD, MROUND, MULTINOMIAL, MULTIPLY, MUNIT, ODD, POW, POWER, PRODUCT, QUOTIENT, RAND, RANDBERNOULLI, RANDBETWEEN, RANDBINOM, RANDEXP, RANDNEGBINOM, RANDNORM, RANDPOISSON, ROOTN, ROUND, ROUNDDOWN, ROUNDUP, SERIESSUM, SIGN, SQRT, SQRTPI, SUBTOTAL, SUM, SUMA, SUMIF, SUMSQ, TRANSPOSE, TRUNC Comment[gl]=ABS, CEIL, CEILING, COUNT, COUNTA, COUNTBLANK, COUNTIF, CUR, DIV, EPS, EVEN, EXP, FACT, FACTDOUBLE, FIB, FLOOR, GAMMA, GCD, G_PRODUCT, INT, INV, KPRODUCT, LCM, LN, LOG, LOG10, LOG2, LOGN, MAX, MAXA, MDETERM, MIN, MINA, MINVERSE, MMULT, MOD, MROUND, MULTINOMIAL, MULTIPLY, MUNIT, ODD, POW, POWER, PRODUCT, QUOTIENT, RAND, RANDBERNOULLI, RANDBETWEEN, RANDBINOM, RANDEXP, RANDNEGBINOM, RANDNORM, RANDPOISSON, ROOTN, ROUND, ROUNDDOWN, ROUNDUP, SERIESSUM, SIGN, SQRT, SQRTPI, SUBTOTAL, SUM, SUMA, SUMIF, SUMSQ, TRANSPOSE, TRUNC +Comment[hu]=ABS, CEIL, CEILING, COUNT, COUNTA, COUNTBLANK, COUNTIF, CUR, DIV, EPS, EVEN, EXP, FACT, FACTDOUBLE, FIB, FLOOR, GAMMA, GCD, G_PRODUCT, INT, INV, KPRODUCT, LCM, LN, LOG, LOG10, LOG2, LOGN, MAX, MAXA, MDETERM, MIN, MINA, MINVERSE, MMULT, MOD, MROUND, MULTINOMIAL, MULTIPLY, MUNIT, ODD, POW, POWER, PRODUCT, QUOTIENT, RAND, RANDBERNOULLI, RANDBETWEEN, RANDBINOM, RANDEXP, RANDNEGBINOM, RANDNORM, RANDPOISSON, ROOTN, ROUND, ROUNDDOWN, ROUNDUP, SERIESSUM, SIGN, SQRT, SQRTPI, SUBTOTAL, SUM, SUMA, SUMIF, SUMSQ, TRANSPOSE, TRUNC Comment[it]=ABS, CEIL, CEILING, COUNT, COUNTA, COUNTBLANK, COUNTIF, CUR, DIV, EPS, EVEN, EXP, FACT, FACTDOUBLE, FIB, FLOOR, GAMMA, GCD, G_PRODUCT, INT, INV, KPRODUCT, LCM, LN, LOG, LOG10, LOG2, LOGN, MAX, MAXA, MDETERM, MIN, MINA, MINVERSE, MMULT, MOD, MROUND, MULTINOMIAL, MULTIPLY, MUNIT, ODD, POW, POWER, PRODUCT, QUOTIENT, RAND, RANDBERNOULLI, RANDBETWEEN, RANDBINOM, RANDEXP, RANDNEGBINOM, RANDNORM, RANDPOISSON, ROOTN, ROUND, ROUNDDOWN, ROUNDUP, SERIESSUM, SIGN, SQRT, SQRTPI, SUBTOTAL, SUM, SUMA, SUMIF, SUMSQ, TRANSPOSE, TRUNC Comment[ja]=ABS, CEIL, CEILING, COUNT, COUNTA, COUNTBLANK, COUNTIF, CUR, DIV, EPS, EVEN, EXP, FACT, FACTDOUBLE, FIB, FLOOR, GAMMA, GCD, G_PRODUCT, INT, INV, KPRODUCT, LCM, LN, LOG, LOG10, LOG2, LOGN, MAX, MAXA, MDETERM, MIN, MINA, MINVERSE, MMULT, MOD, MROUND, MULTINOMIAL, MULTIPLY, MUNIT, ODD, POW, POWER, PRODUCT, QUOTIENT, RAND, RANDBERNOULLI, RANDBETWEEN, RANDBINOM, RANDEXP, RANDNEGBINOM, RANDNORM, RANDPOISSON, ROOTN, ROUND, ROUNDDOWN, ROUNDUP, SERIESSUM, SIGN, SQRT, SQRTPI, SUBTOTAL, SUM, SUMA, SUMIF, SUMSQ, TRANSPOSE, TRUNC Comment[kk]=ABS, CEIL, CEILING, COUNT, COUNTA, COUNTBLANK, COUNTIF, CUR, DIV, EPS, EVEN, EXP, FACT, FACTDOUBLE, FIB, FLOOR, GAMMA, GCD, G_PRODUCT, INT, INV, KPRODUCT, LCM, LN, LOG, LOG10, LOG2, LOGN, MAX, MAXA, MDETERM, MIN, MINA, MINVERSE, MMULT, MOD, MROUND, MULTINOMIAL, MULTIPLY, MUNIT, ODD, POW, POWER, PRODUCT, QUOTIENT, RAND, RANDBERNOULLI, RANDBETWEEN, RANDBINOM, RANDEXP, RANDNEGBINOM, RANDNORM, RANDPOISSON, ROOTN, ROUND, ROUNDDOWN, ROUNDUP, SERIESSUM, SIGN, SQRT, SQRTPI, SUBTOTAL, SUM, SUMA, SUMIF, SUMSQ, TRANSPOSE, TRUNC diff -Nru calligra-2.3.86/tables/functions/kspreadreferencemodule.desktop calligra-2.3.87/tables/functions/kspreadreferencemodule.desktop --- calligra-2.3.86/tables/functions/kspreadreferencemodule.desktop 2012-01-07 03:25:03.000000000 +0000 +++ calligra-2.3.87/tables/functions/kspreadreferencemodule.desktop 2012-01-28 07:04:49.000000000 +0000 @@ -44,6 +44,7 @@ Comment[et]=ADDRESS, AREAS, CHOOSE, COLUMN, COLUMNS, HLOOKUP, INDEX, INDIRECT, LOOKUP, MULTIPLE.OPERATIONS ROW, ROWS, VLOOKUP Comment[fr]=ADDRESS, AREAS, CHOOSE, COLUMN, COLUMNS, HLOOKUP, INDEX, INDIRECT, LOOKUP, MULTIPLE.OPERATIONS ROW, ROWS, VLOOKUP Comment[gl]=ADDRESS, AREAS, CHOOSE, COLUMN, COLUMNS, HLOOKUP, INDEX, INDIRECT, LOOKUP, ROW, ROWS, VLOOKUP +Comment[hu]=ADDRESS, AREAS, CHOOSE, COLUMN, COLUMNS, HLOOKUP, INDEX, INDIRECT, LOOKUP, MULTIPLE.OPERATIONS ROW, ROWS, VLOOKUP Comment[it]=ADDRESS, AREAS, CHOOSE, COLUMN, COLUMNS, HLOOKUP, INDEX, INDIRECT, LOOKUP, MULTIPLE.OPERATIONS ROW, ROWS, VLOOKUP Comment[ja]=ADDRESS, AREAS, CHOOSE, COLUMN, COLUMNS, HLOOKUP, INDEX, INDIRECT, LOOKUP, MULTIPLE.OPERATIONS ROW, ROWS, VLOOKUP Comment[kk]=ADDRESS, AREAS, CHOOSE, COLUMN, COLUMNS, HLOOKUP, INDEX, INDIRECT, LOOKUP, MULTIPLE.OPERATIONS ROW, ROWS, VLOOKUP diff -Nru calligra-2.3.86/tables/functions/kspreadstatisticalmodule.desktop calligra-2.3.87/tables/functions/kspreadstatisticalmodule.desktop --- calligra-2.3.86/tables/functions/kspreadstatisticalmodule.desktop 2012-01-07 03:25:03.000000000 +0000 +++ calligra-2.3.87/tables/functions/kspreadstatisticalmodule.desktop 2012-01-28 07:04:49.000000000 +0000 @@ -13,6 +13,7 @@ Name[fr]=Fonctions statistiques Name[gl]=Funcións Estatísticas Name[he]=פונקציות סטטיסטיות +Name[hu]=Statisztikai függvények Name[it]=Funzioni statistiche Name[ja]=統計関数 Name[kk]=Статистикалық функциялары @@ -38,11 +39,13 @@ Name[zh_TW]=統計函數 Comment=AVEDEV, AVERAGE, AVERAGEA, BETADIST, BETAINV, BINO, CHIDIST, COMBIN, COMBINA, CONFIDENCE, CORREL, COVAR, DEVSQ, EXPONDIST, FDIST, FINV, FISHER, FISHERINV, FREQUENCY, GAMMADIST, GAMMAINV, GAMMALN, GAUSS, GEOMEAN, HARMEAN, HYPGEOMDIST, INTERCEPT, INVBINO, KURT, KURTP, LARGE, LEGACYFDIST, LOGINV, LOGNORMDIST, MEDIAN, MODE, NEGBINOMDIST, NORMDIST, NORMINV, NORMSDIST, NORMSINV, PEARSON, PERMUT, PERMUTATIONA, PHI, POISSON, RANK, RSQ, SKEW, SKEWP, SLOPE, SMALL, STANDARDIZE, STDEV, STDEVA, STDEVP, STDEVPA, STEYX, SUM2XMY, SUMPRODUCT, SUMX2MY2, SUMX2PY2, SUMXMY2, TDIST, TREND, TRIMMEAN, TTEST, VAR, VARA, VARIANCE, VARP, VARPA, WEIBULL, ZTEST Comment[ca]=AVEDEV, AVERAGE, AVERAGEA, BETADIST, BETAINV, BINO, CHIDIST, COMBIN, COMBINA, CONFIDENCE, CORREL, COVAR, DEVSQ, EXPONDIST, FDIST, FINV, FISHER, FISHERINV, FREQUENCY, GAMMADIST, GAMMAINV, GAMMALN, GAUSS, GEOMEAN, HARMEAN, HYPGEOMDIST, INTERCEPT, INVBINO, KURT, KURTP, LARGE, LEGACYFDIST, LOGINV, LOGNORMDIST, MEDIAN, MODE, NEGBINOMDIST, NORMDIST, NORMINV, NORMSDIST, NORMSINV, PEARSON, PERMUT, PERMUTATIONA, PHI, POISSON, RANK, RSQ, SKEW, SKEWP, SLOPE, SMALL, STANDARDIZE, STDEV, STDEVA, STDEVP, STDEVPA, STEYX, SUM2XMY, SUMPRODUCT, SUMX2MY2, SUMX2PY2, SUMXMY2, TDIST, TREND, TRIMMEAN, TTEST, VAR, VARA, VARIANCE, VARP, VARPA, WEIBULL, ZTEST +Comment[ca@valencia]=AVEDEV, AVERAGE, AVERAGEA, BETADIST, BETAINV, BINO, CHIDIST, COMBIN, COMBINA, CONFIDENCE, CORREL, COVAR, DEVSQ, EXPONDIST, FDIST, FINV, FISHER, FISHERINV, FREQUENCY, GAMMADIST, GAMMAINV, GAMMALN, GAUSS, GEOMEAN, HARMEAN, HYPGEOMDIST, INTERCEPT, INVBINO, KURT, KURTP, LARGE, LEGACYFDIST, LOGINV, LOGNORMDIST, MEDIAN, MODE, NEGBINOMDIST, NORMDIST, NORMINV, NORMSDIST, NORMSINV, PEARSON, PERMUT, PERMUTATIONA, PHI, POISSON, RANK, RSQ, SKEW, SKEWP, SLOPE, SMALL, STANDARDIZE, STDEV, STDEVA, STDEVP, STDEVPA, STEYX, SUM2XMY, SUMPRODUCT, SUMX2MY2, SUMX2PY2, SUMXMY2, TDIST, TREND, TRIMMEAN, TTEST, VAR, VARA, VARIANCE, VARP, VARPA, WEIBULL, ZTEST Comment[cs]=AVEDEV, AVERAGE, AVERAGEA, BETADIST, BETAINV, BINO, CHIDIST, COMBIN, COMBINA, CONFIDENCE, CORREL, COVAR, DEVSQ, EXPONDIST, FDIST, FINV, FISHER, FISHERINV, FREQUENCY, GAMMADIST, GAMMAINV, GAMMALN, GAUSS, GEOMEAN, HARMEAN, HYPGEOMDIST, INTERCEPT, INVBINO, KURT, KURTP, LARGE, LEGACYFDIST, LOGINV, LOGNORMDIST, MEDIAN, MODE, NEGBINOMDIST, NORMDIST, NORMINV, NORMSDIST, NORMSINV, PEARSON, PERMUT, PERMUTATIONA, PHI, POISSON, RANK, RSQ, SKEW, SKEWP, SLOPE, SMALL, STANDARDIZE, STDEV, STDEVA, STDEVP, STDEVPA, STEYX, SUM2XMY, SUMPRODUCT, SUMX2MY2, SUMX2PY2, SUMXMY2, TDIST, TREND, TRIMMEAN, TTEST, VAR, VARA, VARIANCE, VARP, VARPA, WEIBULL, ZTEST Comment[da]=AVEDEV, AVERAGE, AVERAGEA, BETADIST, BETAINV, BINO, CHIDIST, COMBIN, COMBINA, CONFIDENCE, CORREL, COVAR, DEVSQ, EXPONDIST, FDIST, FINV, FISHER, FISHERINV, FREQUENCY, GAMMADIST, GAMMAINV, GAMMALN, GAUSS, GEOMEAN, HARMEAN, HYPGEOMDIST, INTERCEPT, INVBINO, KURT, KURTP, LARGE, LEGACYFDIST, LOGINV, LOGNORMDIST, MEDIAN, MODE, NEGBINOMDIST, NORMDIST, NORMINV, NORMSDIST, NORMSINV, PEARSON, PERMUT, PERMUTATIONA, PHI, POISSON, RANK, RSQ, SKEW, SKEWP, SLOPE, SMALL, STANDARDIZE, STDEV, STDEVA, STDEVP, STDEVPA, STEYX, SUM2XMY, SUMPRODUCT, SUMX2MY2, SUMX2PY2, SUMXMY2, TDIST, TREND, TRIMMEAN, TTEST, VAR, VARA, VARIANCE, VARP, VARPA, WEIBULL, ZTEST Comment[de]=AVEDEV, AVERAGE, AVERAGEA, BETADIST, BETAINV, BINO, CHIDIST, COMBIN, COMBINA, CONFIDENCE, CORREL, COVAR, DEVSQ, EXPONDIST, FDIST, FINV, FISHER, FISHERINV, FREQUENCY, GAMMADIST, GAMMAINV, GAMMALN, GAUSS, GEOMEAN, HARMEAN, HYPGEOMDIST, INTERCEPT, INVBINO, KURT, KURTP, LARGE, LEGACYFDIST, LOGINV, LOGNORMDIST, MEDIAN, MODE, NEGBINOMDIST, NORMDIST, NORMINV, NORMSDIST, NORMSINV, PEARSON, PERMUT, PERMUTATIONA, PHI, POISSON, RANK, RSQ, SKEW, SKEWP, SLOPE, SMALL, STANDARDIZE, STDEV, STDEVA, STDEVP, STDEVPA, STEYX, SUM2XMY, SUMPRODUCT, SUMX2MY2, SUMX2PY2, SUMXMY2, TDIST, TREND, TRIMMEAN, TTEST, VAR, VARA, VARIANCE, VARP, VARPA, WEIBULL, ZTEST Comment[el]=AVEDEV, AVERAGE, AVERAGEA, BETADIST, BETAINV, BINO, CHIDIST, COMBIN, COMBINA, CONFIDENCE, CORREL, COVAR, DEVSQ, EXPONDIST, FDIST, FINV, FISHER, FISHERINV, FREQUENCY, GAMMADIST, GAMMAINV, GAMMALN, GAUSS, GEOMEAN, HARMEAN, HYPGEOMDIST, INTERCEPT, INVBINO, KURT, KURTP, LARGE, LEGACYFDIST, LOGINV, LOGNORMDIST, MEDIAN, MODE, NEGBINOMDIST, NORMDIST, NORMINV, NORMSDIST, NORMSINV, PEARSON, PERMUT, PERMUTATIONA, PHI, POISSON, RANK, RSQ, SKEW, SKEWP, SLOPE, SMALL, STANDARDIZE, STDEV, STDEVA, STDEVP, STDEVPA, STEYX, SUM2XMY, SUMPRODUCT, SUMX2MY2, SUMX2PY2, SUMXMY2, TDIST, TREND, TRIMMEAN, TTEST, VAR, VARA, VARIANCE, VARP, VARPA, WEIBULL, ZTEST Comment[et]=AVEDEV, AVERAGE, AVERAGEA, BETADIST, BETAINV, BINO, CHIDIST, COMBIN, COMBINA, CONFIDENCE, CORREL, COVAR, DEVSQ, EXPONDIST, FDIST, FINV, FISHER, FISHERINV, FREQUENCY, GAMMADIST, GAMMAINV, GAMMALN, GAUSS, GEOMEAN, HARMEAN, HYPGEOMDIST, INTERCEPT, INVBINO, KURT, KURTP, LARGE, LEGACYFDIST, LOGINV, LOGNORMDIST, MEDIAN, MODE, NEGBINOMDIST, NORMDIST, NORMINV, NORMSDIST, NORMSINV, PEARSON, PERMUT, PERMUTATIONA, PHI, POISSON, RANK, RSQ, SKEW, SKEWP, SLOPE, SMALL, STANDARDIZE, STDEV, STDEVA, STDEVP, STDEVPA, STEYX, SUM2XMY, SUMPRODUCT, SUMX2MY2, SUMX2PY2, SUMXMY2, TDIST, TREND, TRIMMEAN, TTEST, VAR, VARA, VARIANCE, VARP, VARPA, WEIBULL, ZTEST +Comment[hu]=AVEDEV, AVERAGE, AVERAGEA, BETADIST, BETAINV, BINO, CHIDIST, COMBIN, COMBINA, CONFIDENCE, CORREL, COVAR, DEVSQ, EXPONDIST, FDIST, FINV, FISHER, FISHERINV, FREQUENCY, GAMMADIST, GAMMAINV, GAMMALN, GAUSS, GEOMEAN, HARMEAN, HYPGEOMDIST, INTERCEPT, INVBINO, KURT, KURTP, LARGE, LEGACYFDIST, LOGINV, LOGNORMDIST, MEDIAN, MODE, NEGBINOMDIST, NORMDIST, NORMINV, NORMSDIST, NORMSINV, PEARSON, PERMUT, PERMUTATIONA, PHI, POISSON, RANK, RSQ, SKEW, SKEWP, SLOPE, SMALL, STANDARDIZE, STDEV, STDEVA, STDEVP, STDEVPA, STEYX, SUM2XMY, SUMPRODUCT, SUMX2MY2, SUMX2PY2, SUMXMY2, TDIST, TREND, TRIMMEAN, TTEST, VAR, VARA, VARIANCE, VARP, VARPA, WEIBULL, ZTEST Comment[it]=AVEDEV, AVERAGE, AVERAGEA, BETADIST, BETAINV, BINO, CHIDIST, COMBIN, COMBINA, CONFIDENCE, CORREL, COVAR, DEVSQ, EXPONDIST, FDIST, FINV, FISHER, FISHERINV, FREQUENCY, GAMMADIST, GAMMAINV, GAMMALN, GAUSS, GEOMEAN, HARMEAN, HYPGEOMDIST, INTERCEPT, INVBINO, KURT, KURTP, LARGE, LEGACYFDIST, LOGINV, LOGNORMDIST, MEDIAN, MODE, NEGBINOMDIST, NORMDIST, NORMINV, NORMSDIST, NORMSINV, PEARSON, PERMUT, PERMUTATIONA, PHI, POISSON, RANK, RSQ, SKEW, SKEWP, SLOPE, SMALL, STANDARDIZE, STDEV, STDEVA, STDEVP, STDEVPA, STEYX, SUM2XMY, SUMPRODUCT, SUMX2MY2, SUMX2PY2, SUMXMY2, TDIST, TREND, TRIMMEAN, TTEST, VAR, VARA, VARIANCE, VARP, VARPA, WEIBULL, ZTEST Comment[nb]=AVEDEV, AVERAGE, AVERAGEA, BETADIST, BETAINV, BINO, CHIDIST, COMBIN, COMBINA, CONFIDENCE, CORREL, COVAR, DEVSQ, EXPONDIST, FDIST, FINV, FISHER, FISHERINV, FREQUENCY, GAMMADIST, GAMMAINV, GAMMALN, GAUSS, GEOMEAN, HARMEAN, HYPGEOMDIST, INTERCEPT, INVBINO, KURT, KURTP, LARGE, LEGACYFDIST, LOGINV, LOGNORMDIST, MEDIAN, MODE, NEGBINOMDIST, NORMDIST, NORMINV, NORMSDIST, NORMSINV, PEARSON, PERMUT, PHI, POISSON, RANK, RSQ, SKEW, SKEWP, SLOPE, SMALL, STANDARDIZE, STDEV, STDEVA, STDEVP, STDEVPA, STEYX, SUM2XMY, SUMPRODUCT, SUMX2MY2, SUMX2PY2, SUMXMY2, TDIST, TREND, TRIMMEAN, TTEST, VAR, VARA, VARIANCE, VARP, VARPA, WEIBULL, ZTEST Comment[pl]=AVEDEV, AVERAGE, AVERAGEA, BETADIST, BETAINV, BINO, CHIDIST, COMBIN, COMBINA, CONFIDENCE, CORREL, COVAR, DEVSQ, EXPONDIST, FDIST, FINV, FISHER, FISHERINV, FREQUENCY, GAMMADIST, GAMMAINV, GAMMALN, GAUSS, GEOMEAN, HARMEAN, HYPGEOMDIST, INTERCEPT, INVBINO, KURT, KURTP, LARGE, LEGACYFDIST, LOGINV, LOGNORMDIST, MEDIAN, MODE, NEGBINOMDIST, NORMDIST, NORMINV, NORMSDIST, NORMSINV, PEARSON, PERMUT, PERMUTATIONA, PHI, POISSON, RANK, RSQ, SKEW, SKEWP, SLOPE, SMALL, STANDARDIZE, STDEV, STDEVA, STDEVP, STDEVPA, STEYX, SUM2XMY, SUMPRODUCT, SUMX2MY2, SUMX2PY2, SUMXMY2, TDIST, TREND, TRIMMEAN, TTEST, VAR, VARA, VARIANCE, VARP, VARPA, WEIBULL, ZTEST diff -Nru calligra-2.3.86/tables/functions/kspreadtextmodule.desktop calligra-2.3.87/tables/functions/kspreadtextmodule.desktop --- calligra-2.3.86/tables/functions/kspreadtextmodule.desktop 2012-01-07 03:25:03.000000000 +0000 +++ calligra-2.3.87/tables/functions/kspreadtextmodule.desktop 2012-01-28 07:04:49.000000000 +0000 @@ -15,6 +15,7 @@ Name[gl]=Funcións de Texto Name[he]=פונקציות טקסט Name[hne]=पाठ फंक्सन्स +Name[hu]=Szövegfüggvények Name[it]=Funzioni di testo Name[ja]=テキスト関数 Name[kk]=Мәтіндік функциялары @@ -46,6 +47,7 @@ Comment[es]=ASC, BAHTTEXT, CHAR, CLEAN, CODE, COMPARE, CONCATENATE, DOLLAR, EXACT, FIND, FIXED, JIS, LEFT, LEN, LOWER, MID, PROPER, REGEXP, REGEXPRE, REPLACE, REPT, RIGHT, ROT, SEARCH, SLEEK, SUBSTITUTE, T, TEXT, TOGGLE, TRIM, UNICHAR, UNICODE, UPPER, VALUE Comment[et]=ASC, BAHTTEXT, CHAR, CLEAN, CODE, COMPARE, CONCATENATE, DOLLAR, EXACT, FIND, FIXED, JIS, LEFT, LEN, LOWER, MID, PROPER, REGEXP, REGEXPRE, REPLACE, REPT, RIGHT, ROT, SEARCH, SLEEK, SUBSTITUTE, T, TEXT, TOGGLE, TRIM, UNICHAR, UNICODE, UPPER, VALUE Comment[fr]=ASC, BAHTTEXT, CHAR, CLEAN, CODE, COMPARE, CONCATENATE, DOLLAR, EXACT, FIND, FIXED, JIS, LEFT, LEN, LOWER, MID, PROPER, REGEXP, REGEXPRE, REPLACE, REPT, RIGHT, ROT, SEARCH, SLEEK, SUBSTITUTE, T, TEXT, TOGGLE, TRIM, UNICHAR, UNICODE, UPPER, VALUE +Comment[hu]=ASC, BAHTTEXT, CHAR, CLEAN, CODE, COMPARE, CONCATENATE, DOLLAR, EXACT, FIND, FIXED, JIS, LEFT, LEN, LOWER, MID, PROPER, REGEXP, REGEXPRE, REPLACE, REPT, RIGHT, ROT, SEARCH, SLEEK, SUBSTITUTE, T, TEXT, TOGGLE, TRIM, UNICHAR, UNICODE, UPPER, VALUE Comment[it]=ASC, BAHTTEXT, CHAR, CLEAN, CODE, COMPARE, CONCATENATE, DOLLAR, EXACT, FIND, FIXED, JIS, LEFT, LEN, LOWER, MID, PROPER, REGEXP, REGEXPRE, REPLACE, REPT, RIGHT, ROT, SEARCH, SLEEK, SUBSTITUTE, T, TEXT, TOGGLE, TRIM, UNICHAR, UNICODE, UPPER, VALUE Comment[ja]=ASC, BAHTTEXT, CHAR, CLEAN, CODE, COMPARE, CONCATENATE, DOLLAR, EXACT, FIND, FIXED, JIS, LEFT, LEN, LOWER, MID, PROPER, REGEXP, REGEXPRE, REPLACE, REPT, RIGHT, ROT, SEARCH, SLEEK, SUBSTITUTE, T, TEXT, TOGGLE, TRIM, UNICHAR, UNICODE, UPPER, VALUE Comment[kk]=ASC, BAHTTEXT, CHAR, CLEAN, CODE, COMPARE, CONCATENATE, DOLLAR, EXACT, FIND, FIXED, JIS, LEFT, LEN, LOWER, MID, PROPER, REGEXP, REGEXPRE, REPLACE, REPT, RIGHT, ROT, SEARCH, SLEEK, SUBSTITUTE, T, TEXT, TOGGLE, TRIM, UNICHAR, UNICODE, UPPER, VALUE diff -Nru calligra-2.3.86/tables/functions/kspreadtrigonometrymodule.desktop calligra-2.3.87/tables/functions/kspreadtrigonometrymodule.desktop --- calligra-2.3.86/tables/functions/kspreadtrigonometrymodule.desktop 2012-01-07 03:25:03.000000000 +0000 +++ calligra-2.3.87/tables/functions/kspreadtrigonometrymodule.desktop 2012-01-28 07:04:49.000000000 +0000 @@ -13,6 +13,7 @@ Name[fr]=Fonctions trigonométriques Name[gl]=Funcións Trigonométricas Name[he]=פונקציות טריגונומטריות +Name[hu]=Trigonometrikus függvények Name[it]=Funzioni trigonometriche Name[ja]=三角関数 Name[kk]=Тригонометриялық функциялары @@ -46,6 +47,7 @@ Comment[et]=ACOS, ACOSH, ACOT, ASIN, ASINH, ATAN, ATAN2, ATANH, COS, COSH, DEGREES, PI, RADIANS, SIN, SINH, TAN, TANH Comment[fr]=ACOS, ACOSH, ACOT, ASIN, ASINH, ATAN, ATAN2, ATANH, COS, COSH, DEGREES, PI, RADIANS, SIN, SINH, TAN, TANH Comment[gl]=ACOS, ACOSH, ACOT, ASIN, ASINH, ATAN, ATAN2, ATANH, COS, COSH, DEGREES, PI, RADIANS, SIN, SINH, TAN, TANH +Comment[hu]=ACOS, ACOSH, ACOT, ASIN, ASINH, ATAN, ATAN2, ATANH, COS, COSH, DEGREES, PI, RADIANS, SIN, SINH, TAN, TANH Comment[it]=ACOS, ACOSH, ACOT, ASIN, ASINH, ATAN, ATAN2, ATANH, COS, COSH, DEGREES, PI, RADIANS, SIN, SINH, TAN, TANH Comment[ja]=ACOS, ACOSH, ACOT, ASIN, ASINH, ATAN, ATAN2, ATANH, COS, COSH, DEGREES, PI, RADIANS, SIN, SINH, TAN, TANH Comment[kk]=ACOS, ACOSH, ACOT, ASIN, ASINH, ATAN, ATAN2, ATANH, COS, COSH, DEGREES, PI, RADIANS, SIN, SINH, TAN, TANH diff -Nru calligra-2.3.86/tables/functions/logic.cpp calligra-2.3.87/tables/functions/logic.cpp --- calligra-2.3.86/tables/functions/logic.cpp 2012-01-07 03:25:03.000000000 +0000 +++ calligra-2.3.87/tables/functions/logic.cpp 2012-01-28 07:04:49.000000000 +0000 @@ -34,6 +34,8 @@ Value func_and(valVector args, ValueCalc *calc, FuncExtra *); Value func_false(valVector args, ValueCalc *calc, FuncExtra *); Value func_if(valVector args, ValueCalc *calc, FuncExtra *); +Value func_iferror(valVector args, ValueCalc *calc, FuncExtra *); +Value func_ifna(valVector args, ValueCalc *calc, FuncExtra *); Value func_nand(valVector args, ValueCalc *calc, FuncExtra *); Value func_nor(valVector args, ValueCalc *calc, FuncExtra *); Value func_not(valVector args, ValueCalc *calc, FuncExtra *); @@ -82,6 +84,12 @@ f = new Function("IF", func_if); f->setParamCount(2, 3); add(f); + f = new Function("IFERROR", func_iferror); + f->setParamCount(2); + add(f); + f = new Function("IFNA", func_ifna); + f->setParamCount(2); + add(f); } QString LogicModule::descriptionFileName() const @@ -190,6 +198,28 @@ // +// Function: IFERROR +// +Value func_iferror(valVector args, ValueCalc *, FuncExtra *) +{ + if (args[0].isError()) + return args[1]; + return args[0]; +} + + +// +// Function: IFNA +// +Value func_ifna(valVector args, ValueCalc *, FuncExtra *) +{ + if (args[0] == Value::errorNA()) + return args[1]; + return args[0]; +} + + +// // Function: NAND // Value func_nand(valVector args, ValueCalc *calc, FuncExtra *extra) diff -Nru calligra-2.3.86/tables/functions/logic.xml calligra-2.3.87/tables/functions/logic.xml --- calligra-2.3.86/tables/functions/logic.xml 2012-01-07 03:25:03.000000000 +0000 +++ calligra-2.3.87/tables/functions/logic.xml 2012-01-28 07:04:49.000000000 +0000 @@ -216,6 +216,41 @@ + + IFERROR + Any + + Any X + Any + + + Any Alternative + Any + + + Return X unless it is an Error, in which case return an alternative value. + IFERROR(AnyX;AnyAlternative) + IFERROR(A1;A2) returns the content of A1 if that content is not an error-value else the content of A2 is returned. + + + + + IFNA + Any + + Any X + Any + + + Any Alternative + Any + + + Return X unless it is an NA, in which case return an alternative value. + IFNA(AnyX;AnyAlternative) + IFNA(A1;A2) returns the content of A1 if that content is not an #N/A error-value else the content of A2 is returned. + + diff -Nru calligra-2.3.86/tables/functions/math.xml calligra-2.3.87/tables/functions/math.xml --- calligra-2.3.86/tables/functions/math.xml 2012-01-07 03:25:03.000000000 +0000 +++ calligra-2.3.87/tables/functions/math.xml 2012-01-28 07:04:49.000000000 +0000 @@ -188,7 +188,7 @@ Precision - Integer + Int The TRUNC() function truncates a numeric value to a certain precision. If the precision is omitted 0 is assumed. @@ -886,6 +886,7 @@ Round a number x down to the nearest multiple of the second parameter, Significance. + The FLOOR() function rounds x down (towards zero) to the nearest multiple of Significance. The default value for Significance is 1, if x is positive. It is -1, if the value is negative, which means rounding up to the nearest integer. @@ -1258,7 +1259,7 @@ Float Dimension - Integer + Int Creates the unity matrix of the given dimension. diff -Nru calligra-2.3.86/tables/functions/reference.cpp calligra-2.3.87/tables/functions/reference.cpp --- calligra-2.3.86/tables/functions/reference.cpp 2012-01-07 03:25:03.000000000 +0000 +++ calligra-2.3.87/tables/functions/reference.cpp 2012-01-28 07:04:49.000000000 +0000 @@ -26,7 +26,8 @@ #include "Sheet.h" #include "Util.h" #include "Value.h" - +#include "Map.h" +#include "CalculationSettings.h" #include "CellStorage.h" #include "Formula.h" #include "Function.h" @@ -41,6 +42,7 @@ // prototypes (sorted alphabetically) Value func_address(valVector args, ValueCalc *calc, FuncExtra *); Value func_areas(valVector args, ValueCalc *calc, FuncExtra *); +Value func_cell(valVector args, ValueCalc *calc, FuncExtra *e); Value func_choose(valVector args, ValueCalc *calc, FuncExtra *); Value func_column(valVector args, ValueCalc *calc, FuncExtra *); Value func_columns(valVector args, ValueCalc *calc, FuncExtra *); @@ -50,8 +52,11 @@ Value func_lookup(valVector args, ValueCalc *calc, FuncExtra *); Value func_match(valVector args, ValueCalc *calc, FuncExtra *); Value func_multiple_operations(valVector args, ValueCalc *calc, FuncExtra *); +Value func_offset(valVector args, ValueCalc *calc, FuncExtra *); Value func_row(valVector args, ValueCalc *calc, FuncExtra *); Value func_rows(valVector args, ValueCalc *calc, FuncExtra *); +Value func_sheet(valVector args, ValueCalc *calc, FuncExtra *); +Value func_sheets(valVector args, ValueCalc *calc, FuncExtra *); Value func_vlookup(valVector args, ValueCalc *calc, FuncExtra *); @@ -71,6 +76,11 @@ f->setNeedsExtra(true); f->setAcceptArray(); add(f); + f = new Function("CELL", func_cell); + f->setParamCount(1, 2); + f->setAcceptArray(); + f->setNeedsExtra(true); + add(f); f = new Function("CHOOSE", func_choose); f->setParamCount(2, -1); f->setAcceptArray(); @@ -108,6 +118,10 @@ f->setParamCount(3, 5); f->setNeedsExtra(true); add(f); + f = new Function("OFFSET", func_offset); + f->setParamCount(3, 5); + f->setNeedsExtra(true); + add(f); f = new Function("ROW", func_row); f->setParamCount(0, 1); add(f); @@ -116,6 +130,15 @@ f->setAcceptArray(); f->setNeedsExtra(true); add(f); + f = new Function("SHEET", func_sheet); + f->setParamCount(0, 1); + f->setNeedsExtra(true); + add(f); + f = new Function("SHEETS", func_sheets); + f->setParamCount(0, 1); + f->setAcceptArray(); + f->setNeedsExtra(true); + add(f); f = new Function("VLOOKUP", func_vlookup); f->setParamCount(3, 4); f->setAcceptArray(); @@ -240,6 +263,54 @@ return Value(num); } +// +// Function: CELL +// +Value func_cell(valVector args, ValueCalc *calc, FuncExtra *e) +{ + const QString type = calc->conv()->asString(args[0]).asString().toLower(); + + args.pop_front(); + FuncExtra extra(*e); + extra.ranges.pop_front(); + extra.regions.pop_front(); + + if (type == "col") { + return func_column(args, calc, &extra); + } + if (type == "row") { + return func_row(args, calc, &extra); + } + if (type == "sheet") { + return func_sheet(args, calc, &extra); + } + if (type == "address") { + const Calligra::Tables::Region ®ion = args.count() ? extra.regions[0] : Calligra::Tables::Region(QPoint(e->mycol, e->myrow), e->sheet); + QString s; + if (region.firstSheet() && region.firstSheet() != e->sheet) + s += "'" + region.firstSheet()->sheetName() + "'!"; + s += "$" + Cell::columnName(region.firstRange().x()) + "$" + QString::number(region.firstRange().y()); + if (region.firstRange() != region.lastRange()) + s += ":$" + Cell::columnName(region.lastRange().x()) + "$" + QString::number(region.lastRange().y()); + return Value(s); + } + if (type == "filename") { + return Value(calc->settings()->fileName()); + } + + /*TODO + if (type == "contents") + if (type == "color") + if (type == "format") + if (type == "width") + if (type == "type") + if (type == "protect") + if (type == "parenthese") + if (type == "prefix") + */ + + return Value::errorVALUE(); +} // // Function: CHOOSE @@ -486,6 +557,38 @@ } // +// Function: OFFSET +// +Value func_offset(valVector args, ValueCalc *calc, FuncExtra *e) +{ + const int rowPlus = calc->conv()->asInteger(args[1]).asInteger(); + const int colPlus = calc->conv()->asInteger(args[2]).asInteger(); + + //const int rowNew = args.count() >= 4 ? calc->conv()->asInteger(args[3]).asInteger() : -1; + //const int colNew = args.count() >= 5 ? calc->conv()->asInteger(args[4]).asInteger() : -1; + //if (colNew == 0 || rowNew == 0) return Value::errorVALUE(); + + // Doesn't take references to other sheets into account + //const QRect rect(e->ranges[0].col1, e->ranges[0].row1, e->ranges[0].col2, e->ranges[0].row2); + //const Calligra::Tables::Region region(rect, e->sheet); + + if (e->regions.isEmpty()) + return Value::errorVALUE(); + + const Calligra::Tables::Region ®ion = e->regions[0]; + + if (!region.isValid() /* || !region.isSingular() */) + return Value::errorVALUE(); + + QPoint p = region.firstRange().topLeft() + QPoint(colPlus, rowPlus); + const Cell cell(region.firstSheet(), p); + if (!cell.isNull()) + return cell.value(); + + return Value::errorVALUE(); +} + +// // Function: ROW // Value func_row(valVector args, ValueCalc *, FuncExtra *e) @@ -511,6 +614,38 @@ return Value(row2 - row1 + 1); } +// +// Function: SHEET +// +Value func_sheet(valVector args, ValueCalc *, FuncExtra *e) +{ + Sheet *sheet = e->sheet; + if (!e->regions.isEmpty()) { + const Calligra::Tables::Region ®ion = e->regions[0]; + if (region.isValid()) + sheet = region.firstSheet(); + } + return Value(sheet->map()->indexOf(sheet) + 1); +} + +// +// Function: SHEETS +// +Value func_sheets(valVector args, ValueCalc *, FuncExtra *e) +{ + if (!e->regions.isEmpty()) { + const Calligra::Tables::Region ®ion = e->regions[0]; + if (region.isValid()) { + QList sheets; + Calligra::Tables::Region::ConstIterator it(region.constBegin()), end(region.constEnd()); + for(; it != end; ++it) + if (!sheets.contains((*it)->sheet())) + sheets.append((*it)->sheet()); + return Value(sheets.count()); + } + } + return Value(e->sheet->map()->count()); +} // // Function: VLOOKUP diff -Nru calligra-2.3.86/tables/functions/reference.xml calligra-2.3.87/tables/functions/reference.xml --- calligra-2.3.86/tables/functions/reference.xml 2012-01-07 03:25:03.000000000 +0000 +++ calligra-2.3.87/tables/functions/reference.xml 2012-01-28 07:04:49.000000000 +0000 @@ -57,6 +57,26 @@ + CELL + Any + + Type + String + + + Reference + Reference + + + Returns information about position, formatting or contents in a reference. + CELL(type; reference) + CELL("COL", C7) returns 3 + CELL("ROW", C7) returns 7 + CELL("ADDRESS", C7) returns $C$7 + + + + CHOOSE Index @@ -115,11 +135,11 @@ Row - Integer + Int Column - Integer + Int If a range is given, returns value stored in a given row/column. If one cell is given, which contains an array, then one element of the array is returned. @@ -181,6 +201,35 @@ COLUMNS + + + SHEET + Int + + Reference + Reference + + + Returns the sheet number of the reference or the string representing a sheet name. + SHEET(reference) + SHEET(Sheet1!C7) returns 1 + SHEET(Sheet2!C7) returns 2 + + + + + SHEETS + Int + + Reference + Reference + + + Returns the number of sheets in a reference or current document. + SHEETS(reference) + + + LOOKUP @@ -222,7 +271,7 @@ Boolean - Look for a matching value in the first row of the given table, and return the value of the indicated row. + Look for a matching value in the first row of the given table, and return the value of the indicated row. Looks up the 'lookup value' in the first row of the 'data source'. If a value matches, the value in the 'row' and the column, the value was found in, is returned. If 'sorted' is true (default), the first row is assumed to be sorted. The search will end, if the 'lookup value' is lower than the value, currently compared to. HLOOKUP(Lookup value; data source; Row; Sorted) @@ -304,6 +353,34 @@ + + OFFSET + Reference + + Reference or range + Reference + + + Number of rows to offset + Int + + + Number of columns to offset + Int + + + Height of the offset range (optional) + Int + + + Width of the offset range (optional) + Int + + + Modifies a reference's position and dimension. + OFFSET(Reference reference; Integer rowOffset; Integer columnOffset; Integer newHeight; Integer newWidth) + + diff -Nru calligra-2.3.86/tables/functions/statistical.xml calligra-2.3.87/tables/functions/statistical.xml --- calligra-2.3.86/tables/functions/statistical.xml 2012-01-07 03:25:03.000000000 +0000 +++ calligra-2.3.87/tables/functions/statistical.xml 2012-01-28 07:04:49.000000000 +0000 @@ -109,7 +109,7 @@ Cumulative - Bool + Boolean The BETADIST() function returns the cumulative beta probability density function. @@ -1424,7 +1424,7 @@ allowOffset - Bool + Boolean The TREND() function calculates a sequence of values based on a linear regression of known value pairs. @@ -1705,6 +1705,7 @@ The ZTEST() function calculates the two tailed probability of a z-test with normal distribution. ZTEST(x; mean; standardDeviation) + Performs a test of the null hypothesis, that sample is a sample of a normal distributed random variable with mean mean and standard deviation sigma. A return value of 1 indicates, that the null diff -Nru calligra-2.3.86/tables/functions/text.cpp calligra-2.3.87/tables/functions/text.cpp --- calligra-2.3.86/tables/functions/text.cpp 2012-01-07 03:25:03.000000000 +0000 +++ calligra-2.3.87/tables/functions/text.cpp 2012-01-28 07:04:49.000000000 +0000 @@ -24,6 +24,8 @@ // please keep it in alphabetical order #include +#include +#include #include #include @@ -57,6 +59,7 @@ Value func_len(valVector args, ValueCalc *calc, FuncExtra *); Value func_lower(valVector args, ValueCalc *calc, FuncExtra *); Value func_mid(valVector args, ValueCalc *calc, FuncExtra *); +Value func_numbervalue(valVector args, ValueCalc *calc, FuncExtra *); Value func_proper(valVector args, ValueCalc *calc, FuncExtra *); Value func_regexp(valVector args, ValueCalc *calc, FuncExtra *); Value func_regexpre(valVector args, ValueCalc *calc, FuncExtra *); @@ -153,6 +156,9 @@ f->setParamCount(2, 3); f->setAlternateName("MIDB"); add(f); + f = new Function("NUMBERVALUE", func_numbervalue); + f->setParamCount(2, 3); + add(f); f = new Function("REGEXP", func_regexp); f->setParamCount(2, 4); add(f); @@ -444,6 +450,32 @@ return Value(str.mid(pos, len)); } +// Function: NUMBERVALUE +Value func_numbervalue(valVector args, ValueCalc *calc, FuncExtra *) +{ + QString text = calc->conv()->asString(args[0]).asString(); + + QString decimalPoint = calc->conv()->asString(args[1]).asString(); + + QString thousandsSeparator; + if (args.count() >= 3) + thousandsSeparator = calc->conv()->asString(args[2]).asString(); + else if (decimalPoint == ".") + thousandsSeparator = ','; + else if (decimalPoint == ",") + thousandsSeparator = '.'; + + KLocale l(*KGlobal::locale()); + l.setDecimalSymbol(decimalPoint); + l.setThousandsSeparator(thousandsSeparator); + l.setPositiveSign("+"); + l.setNegativeSign("-"); + + bool ok; + double v = l.readNumber(text, &ok); + return ok ? Value(v) : Value::errorVALUE(); +} + // Function: PROPER Value func_proper(valVector args, ValueCalc *calc, FuncExtra *) { diff -Nru calligra-2.3.86/tables/functions/text.xml calligra-2.3.87/tables/functions/text.xml --- calligra-2.3.86/tables/functions/text.xml 2012-01-07 03:25:03.000000000 +0000 +++ calligra-2.3.87/tables/functions/text.xml 2012-01-28 07:04:49.000000000 +0000 @@ -36,7 +36,7 @@ No_commas - Bool + Boolean The FIXED() function rounds a number to the specified number of decimals, formats the number in decimal format string, and returns the result as text. If decimals is negative, number is rounded to the left of the decimal point. If you omit decimals, it is assumed to be 2. If optional parameter no_commas is True, thousand separators will not show up. @@ -331,6 +331,7 @@ The FINDB() function finds one text string (find_text) within another text string (within_text) and returns the number of the starting point of find_text, from the leftmost character of within_text using byte positions. Parameter BytePosition specifies the character at which to start the search. The first character is character number 2. If start_num is omitted, it is assumed to be 2. + FINDB(find_text;within_text;BytePosition Start) FIND SEARCH diff -Nru calligra-2.3.86/tables/Map.cpp calligra-2.3.87/tables/Map.cpp --- calligra-2.3.86/tables/Map.cpp 2012-01-07 03:25:03.000000000 +0000 +++ calligra-2.3.87/tables/Map.cpp 2012-01-28 07:04:49.000000000 +0000 @@ -44,6 +44,8 @@ #include #include #include +#include +#include #include "ApplicationSettings.h" #include "BindingManager.h" @@ -140,7 +142,9 @@ d->recalcManager = new RecalcManager(this); d->styleManager = new StyleManager(); d->textStyleManager = new KoStyleManager(this); - + if (doc) { + d->textStyleManager->setUndoStack(doc->undoStack()); + } d->applicationSettings = new ApplicationSettings(); d->calculationSettings = new CalculationSettings(); @@ -230,11 +234,19 @@ bool Map::completeLoading(KoStore *store) { Q_UNUSED(store); + + QPointer dependencyUpdater, recalcUpdater; + if (doc() && doc()->progressUpdater()) { + dependencyUpdater = doc()->progressUpdater()->startSubtask(1, "Calligra::Tables::DependencyManager::updateAllDependencies"); + recalcUpdater = doc()->progressUpdater()->startSubtask(1, "Calligra::Tables::RecalcManager::recalc"); + } + // Initial build of all cell dependencies. - d->dependencyManager->updateAllDependencies(this); + d->dependencyManager->updateAllDependencies(this, dependencyUpdater); // Recalc the whole workbook now, since there may be formulas other spreadsheets support, // but KSpread does not. - d->recalcManager->recalcMap(); + d->recalcManager->recalcMap(recalcUpdater); + return true; } diff -Nru calligra-2.3.86/tables/part/dialogs/PreferenceDialog.cpp calligra-2.3.87/tables/part/dialogs/PreferenceDialog.cpp --- calligra-2.3.86/tables/part/dialogs/PreferenceDialog.cpp 2012-01-07 03:25:03.000000000 +0000 +++ calligra-2.3.87/tables/part/dialogs/PreferenceDialog.cpp 2012-01-28 07:04:49.000000000 +0000 @@ -294,7 +294,7 @@ , d(new Private) { setObjectName(QLatin1String("PreferenceDialog")); - setCaption(i18n("Configure KSpread")); + setCaption(i18nc("@title:window", "Configure")); setFaceType(List); setButtons(Ok | Cancel | Default | Reset); setDefaultButton(Ok); diff -Nru calligra-2.3.86/tables/part/Doc.cpp calligra-2.3.87/tables/part/Doc.cpp --- calligra-2.3.86/tables/part/Doc.cpp 2012-01-07 03:25:03.000000000 +0000 +++ calligra-2.3.87/tables/part/Doc.cpp 2012-01-28 07:04:49.000000000 +0000 @@ -284,7 +284,7 @@ SavedDocParts::const_iterator end = d->savedDocParts.constEnd(); while (iter != end) { // save data we loaded in the beginning and which has no owner back to file - spread.appendChild(iter.value()); + spread.appendChild(iter.value().documentElement()); ++iter; } @@ -425,7 +425,9 @@ && tagName != "SPELLCHECKIGNORELIST" && tagName != "areaname" && tagName != "paper") { // belongs to a plugin, load it and save it for later use - d->savedDocParts[ tagName ] = KoXml::asQDomElement(QDomDocument(), element); + QDomDocument doc; + KoXml::asQDomElement(doc, element); + d->savedDocParts[ tagName ] = doc; } element = element.nextSibling().toElement(); @@ -513,7 +515,7 @@ } -bool Doc::docData(QString const & xmlTag, QDomElement & data) +bool Doc::docData(QString const & xmlTag, QDomDocument & data) { SavedDocParts::iterator iter = d->savedDocParts.find(xmlTag); if (iter == d->savedDocParts.end()) diff -Nru calligra-2.3.86/tables/part/Doc.h calligra-2.3.87/tables/part/Doc.h --- calligra-2.3.86/tables/part/Doc.h 2012-01-07 03:25:03.000000000 +0000 +++ calligra-2.3.87/tables/part/Doc.h 2012-01-28 07:04:49.000000000 +0000 @@ -126,7 +126,7 @@ virtual void addView(KoView *_view); - bool docData(QString const & xmlTag, QDomElement & data); + bool docData(QString const & xmlTag, QDomDocument & data); // reimplemented; paints the thumbnail virtual void paintContent(QPainter & painter, const QRect & rect); diff -Nru calligra-2.3.86/tables/plugins/calendar/kspread_plugin_tool_calendar.desktop calligra-2.3.87/tables/plugins/calendar/kspread_plugin_tool_calendar.desktop --- calligra-2.3.86/tables/plugins/calendar/kspread_plugin_tool_calendar.desktop 2012-01-07 03:25:03.000000000 +0000 +++ calligra-2.3.87/tables/plugins/calendar/kspread_plugin_tool_calendar.desktop 2012-01-28 07:04:49.000000000 +0000 @@ -15,6 +15,7 @@ Name[gl]=Ferramenta de Calendario Name[he]=כלי לוח־שנה Name[hne]=कलेन्डर औजार +Name[hu]=Naptár eszköz Name[it]=Strumento calendario Name[ja]=カレンダーツール Name[kk]=Күнтізбе құралы diff -Nru calligra-2.3.86/tables/plugins/scripting/krossmodulekspread.desktop calligra-2.3.87/tables/plugins/scripting/krossmodulekspread.desktop --- calligra-2.3.86/tables/plugins/scripting/krossmodulekspread.desktop 2012-01-07 03:25:03.000000000 +0000 +++ calligra-2.3.87/tables/plugins/scripting/krossmodulekspread.desktop 2012-01-28 07:04:49.000000000 +0000 @@ -49,7 +49,7 @@ Comment=Allow execution of scripts Comment[bg]=Изпълнение на скриптове Comment[ca]=Permet l'execució d'scripts -Comment[ca@valencia]=Permet l'execució de seqüències +Comment[ca@valencia]=Permet l'execució d'scripts Comment[cs]=Umožní spouštění skriptů Comment[da]=Tillad kørsel af script Comment[de]=Ermöglicht das Ausführen von Skripten diff -Nru calligra-2.3.86/tables/RecalcManager.cpp calligra-2.3.87/tables/RecalcManager.cpp --- calligra-2.3.86/tables/RecalcManager.cpp 2012-01-07 03:25:03.000000000 +0000 +++ calligra-2.3.87/tables/RecalcManager.cpp 2012-01-28 07:04:49.000000000 +0000 @@ -21,9 +21,6 @@ // Local #include "RecalcManager.h" -#include -#include - #include "Cell.h" #include "CellStorage.h" #include "DependencyManager.h" @@ -34,6 +31,12 @@ #include "Region.h" #include "Value.h" #include "ValueFormatter.h" +#include "DocBase.h" + +#include + +#include +#include using namespace Calligra::Tables; @@ -191,14 +194,14 @@ d->active = false; } -void RecalcManager::recalcMap() +void RecalcManager::recalcMap(KoUpdater *updater) { if (d->active) return; d->active = true; ElapsedTime et("Overall map recalculation", ElapsedTime::PrintOnlyTime); d->cellsToCalculate(); - recalc(); + recalc(updater); d->active = false; } @@ -224,12 +227,17 @@ recalcMap(); // FIXME Stefan: Implement a more elegant solution. } -void RecalcManager::recalc() +void RecalcManager::recalc(KoUpdater *updater) { kDebug(36002) << "Recalculating" << d->cells.count() << " cell(s).."; ElapsedTime et("Recalculating cells", ElapsedTime::PrintOnlyTime); + + if (updater) + updater->setProgress(0); + const QList cells = d->cells.values(); - for (int c = 0; c < cells.count(); ++c) { + const int cellsCount = cells.count(); + for (int c = 0; c < cellsCount; ++c) { // only recalculate, if no circular dependency occurred if (cells.value(c).value() == Value::errorCIRCLE()) continue; @@ -252,9 +260,16 @@ } // relock sheet->cellStorage()->lockCells(rect); - } else + } else { Cell(cells.value(c)).setValue(result); + } + if (updater) + updater->setProgress(int(qreal(c) / qreal(cellsCount) * 100.)); } + + if (updater) + updater->setProgress(100); + // dump(); d->cells.clear(); } diff -Nru calligra-2.3.86/tables/RecalcManager.h calligra-2.3.87/tables/RecalcManager.h --- calligra-2.3.86/tables/RecalcManager.h 2012-01-07 03:25:03.000000000 +0000 +++ calligra-2.3.87/tables/RecalcManager.h 2012-01-28 07:04:49.000000000 +0000 @@ -24,6 +24,8 @@ #include +class KoUpdater; + namespace Calligra { namespace Tables @@ -88,7 +90,7 @@ * * \see recalc() */ - void recalcMap(); + void recalcMap(KoUpdater *updater = 0); /** * Returns the recalculation state. @@ -119,7 +121,7 @@ * * \see recalcCell() */ - void recalc(); + void recalc(KoUpdater *updater = 0); private: Q_DISABLE_COPY(RecalcManager) diff -Nru calligra-2.3.86/tables/Region.cpp calligra-2.3.87/tables/Region.cpp --- calligra-2.3.86/tables/Region.cpp 2012-01-07 03:25:03.000000000 +0000 +++ calligra-2.3.87/tables/Region.cpp 2012-01-28 07:04:49.000000000 +0000 @@ -853,14 +853,16 @@ case ':': { // cell separator isRange = true; append(pos, data, &out); - *out++ = *data++; // append : - if (!data->isNull()) { - const QChar * next = data + 1; - if (!next->isNull() && *data == QChar('$', 0) && *next != QChar('.', 0)) { + *out = *data; // append : + ++out; + const QChar * next = data + 1; + if (!next->isNull()) { + const QChar * nextnext = next + 1; + if (!nextnext->isNull() && *next == QChar('$', 0) && *nextnext != QChar('.', 0)) { ++data; } } - pos = data; + pos = data + 1; } break; case ' ': // range separator append(pos, data, &out); diff -Nru calligra-2.3.86/tables/shape/spreadsheetshape-deferred.desktop calligra-2.3.87/tables/shape/spreadsheetshape-deferred.desktop --- calligra-2.3.86/tables/shape/spreadsheetshape-deferred.desktop 2012-01-07 03:25:03.000000000 +0000 +++ calligra-2.3.87/tables/shape/spreadsheetshape-deferred.desktop 2012-01-28 07:04:49.000000000 +0000 @@ -13,6 +13,7 @@ Name[ga]=Giuirléid Scarbhileoige Name[gl]=Obxecto de Folla de Cálculo Name[hne]=स्प्रेडसीट आकार +Name[hu]=Táblázat alakzat Name[it]=Forma di foglio di calcolo Name[ja]=スプレッドシートシェイプ Name[kk]=Электрондық кесте қалыпы diff -Nru calligra-2.3.86/tables/shape/spreadsheetshape.desktop calligra-2.3.87/tables/shape/spreadsheetshape.desktop --- calligra-2.3.86/tables/shape/spreadsheetshape.desktop 2012-01-07 03:25:03.000000000 +0000 +++ calligra-2.3.87/tables/shape/spreadsheetshape.desktop 2012-01-28 07:04:49.000000000 +0000 @@ -13,6 +13,7 @@ Name[ga]=Giuirléid Scarbhileoige Name[gl]=Obxecto de Folla de Cálculo Name[hne]=स्प्रेडसीट आकार +Name[hu]=Táblázat alakzat Name[it]=Forma di foglio di calcolo Name[ja]=スプレッドシートシェイプ Name[kk]=Электрондық кесте қалыпы diff -Nru calligra-2.3.86/tables/tables.desktop calligra-2.3.87/tables/tables.desktop --- calligra-2.3.86/tables/tables.desktop 2012-01-07 03:25:03.000000000 +0000 +++ calligra-2.3.87/tables/tables.desktop 2012-01-28 07:04:49.000000000 +0000 @@ -1,12 +1,15 @@ [Desktop Entry] Name=Calligra Tables Name[ca]=Taules del Calligra +Name[ca@valencia]=Taules del Calligra Name[cs]=Calligra Tables Name[da]=Calligra Tables Name[de]=Calligra Tables Name[el]=Πίνακες Calligra Name[en_GB]=Calligra Tables Name[et]=Calligra Tables +Name[fi]=Calligra Tables +Name[hu]=Calligra Tables Name[it]=Tables di Calligra Name[nb]=Calligratabeller Name[nds]=Calligra-Tables @@ -32,6 +35,7 @@ GenericName[en_GB]=Spreadsheet GenericName[es]=Hoja de cálculo GenericName[et]=Tabelitöötlus +GenericName[fi]=Taulukkolaskentaohjelma GenericName[fr]=Tableur GenericName[fy]=Spreadsheet GenericName[ga]=Scarbhileog diff -Nru calligra-2.3.86/tables/tables.notifyrc calligra-2.3.87/tables/tables.notifyrc --- calligra-2.3.86/tables/tables.notifyrc 2012-01-07 03:25:03.000000000 +0000 +++ calligra-2.3.87/tables/tables.notifyrc 2012-01-28 07:04:49.000000000 +0000 @@ -71,6 +71,7 @@ Comment[en_GB]=KSpread Spreadsheet Comment[es]=Hoja de cálculo de KSpread Comment[et]=KSpreadi tabelitöötlus +Comment[fi]=KSpread-taulukkolaskenta Comment[fr]=Tableur Kspread Comment[fy]=KSpread Spreadsheet Comment[ga]=Scarbhileog KSpread diff -Nru calligra-2.3.86/tables/tablespart.desktop calligra-2.3.87/tables/tablespart.desktop --- calligra-2.3.86/tables/tablespart.desktop 2012-01-07 03:25:03.000000000 +0000 +++ calligra-2.3.87/tables/tablespart.desktop 2012-01-28 07:04:49.000000000 +0000 @@ -2,6 +2,7 @@ Name=Calligra Spreadsheet Component Name[bg]=Компонент за електронни таблици в Calligra Name[ca]=Component de full de càlcul del Calligra +Name[ca@valencia]=Component de full de càlcul del Calligra Name[cs]=Komponenta Calligra pro tabulky Name[da]=Caligra-komponent til regneark Name[de]=Calligra-Komponente für Tabellenkalkulation @@ -37,6 +38,7 @@ GenericName[en_GB]=Spreadsheet GenericName[es]=Hoja de cálculo GenericName[et]=Tabelitöötlus +GenericName[fi]=Taulukkolaskentaohjelma GenericName[fr]=Tableur GenericName[fy]=Spreadsheet GenericName[ga]=Scarbhileog diff -Nru calligra-2.3.86/tables/tables_plugin.desktop calligra-2.3.87/tables/tables_plugin.desktop --- calligra-2.3.86/tables/tables_plugin.desktop 2012-01-07 03:25:03.000000000 +0000 +++ calligra-2.3.87/tables/tables_plugin.desktop 2012-01-28 07:04:49.000000000 +0000 @@ -4,6 +4,7 @@ Comment=Plugin for Calligra Tables Comment[bg]=Приставка за Calligra Tables Comment[ca]=Connector per a les taules del Calligra +Comment[ca@valencia]=Connector per a les taules del Calligra Comment[cs]=Modul pro Calligra Tables Comment[da]=Plugin til Calligra Tables Comment[de]=Modul für Calligra Tables diff -Nru calligra-2.3.86/tables/tests/CMakeLists.txt calligra-2.3.87/tables/tests/CMakeLists.txt --- calligra-2.3.86/tables/tests/CMakeLists.txt 2012-01-07 03:25:03.000000000 +0000 +++ calligra-2.3.87/tables/tests/CMakeLists.txt 2012-01-28 07:04:49.000000000 +0000 @@ -185,6 +185,12 @@ kde4_add_unit_test(TestDatabaseFilter TESTNAME kspread-Database-Filter ${TestDatabaseFilter_SRCS}) target_link_libraries(TestDatabaseFilter calligratablesodf ${QT_QTCORE_LIBRARY} ${QT_QTTEST_LIBRARY}) +########### next target ############### + +set(TestPasteCommand_SRCS TestPasteCommand.cpp) +kde4_add_unit_test(TestPasteCommand TESTNAME kspread-PasteCommand ${TestPasteCommand_SRCS}) +target_link_libraries(TestPasteCommand calligratablescommon ${QT_QTCORE_LIBRARY} ${QT_QTTEST_LIBRARY}) + ########### Benchmarks ############### # set(BenchmarkCluster_SRCS BenchmarkCluster.cpp ../Cluster.cpp) # explicit Cluster.cpp for no extra symbol visibility diff -Nru calligra-2.3.86/tables/tests/generate-openformula-missing.py calligra-2.3.87/tables/tests/generate-openformula-missing.py --- calligra-2.3.86/tables/tests/generate-openformula-missing.py 1970-01-01 00:00:00.000000000 +0000 +++ calligra-2.3.87/tables/tests/generate-openformula-missing.py 2012-01-28 07:04:49.000000000 +0000 @@ -0,0 +1,418 @@ +#!/usr/bin/env python + +import sys, os, re + +functions = """ +MDETERM +MINVERSE +MMULT +MUNIT +SUMPRODUCT +SUMX2MY2 +SUMX2PY2 +SUMXMY2 +TRANSPOSE +BITAND +BITLSHIFT +BITOR +BITRSHIFT +BITXOR +FINDB +LEFTB +LENB +MIDB +REPLACEB +RIGHTB +SEARCHB +COMPLEX +IMABS +IMAGINARY +IMARGUMENT +IMCONJUGATE +IMCOS +IMCOT +IMCSC +IMCSCH +IMDIV +IMEXP +IMLN +IMLOG10 +IMLOG2 +IMPOWER +IMPRODUCT +IMREAL +IMSIN +IMSEC +IMSECH +IMSQRT +IMSUB +IMSUM +IMTAN +DAVERAGE +DCOUNT +DCOUNTA +DGET +DMAX +DMIN +DPRODUCT +DSTDEV +DSTDEVP +DSUM +DVAR +DVARP +DATE +DATEDIF +DATEVALUE +DAY +DAYS +DAYS360 +EDATE +EOMONTH +HOUR +ISOWEEKNUM +MINUTE +MONTH +NETWORKDAYS +NOW +SECOND +TIME +TIMEVALUE +TODAY +WEEKDAY +WEEKNUM +WORKDAY +YEAR +YEARFRAC +External +DDE +HYPERLINK +ACCRINT +ACCRINTM +AMORDEGRC +AMORLINC +COUPDAYBS +COUPDAYS +COUPDAYSNC +COUPNCD +COUPNUM +COUPPCD +CUMIPMT +CUMPRINC +DB +DDB +DISC +DOLLARDE +DOLLARFR +DURATION +EFFECT +FV +FVSCHEDULE +INTRATE +IPMT +IRR +ISPMT +MDURATION +MIRR +NOMINAL +NPER +NPV +ODDFPRICE +ODDFYIELD +ODDLPRICE +ODDLYIELD +PDURATION +PMT +PPMT +PRICE +PRICEDISC +PRICEMAT +PV +RATE +RECEIVED +RRI +SLN +SYD +TBILLEQ +TBILLPRICE +TBILLYIELD +VDB +XIRR +XNPV +YIELD +YIELDDISC +YIELDMAT +AREAS +CELL +COLUMN +COLUMNS +COUNT +COUNTA +COUNTBLANK +COUNTIF +COUNTIFS +ERROR.TYPE +FORMULA +INFO +ISBLANK +ISERR +ISERROR +ISEVEN +ISFORMULA +ISLOGICAL +ISNA +ISNONTEXT +ISNUMBER +ISODD +ISREF +ISTEXT +N +NA +NUMBERVALUE +ROW +ROWS +SHEET +SHEETS +TYPE +VALUE +ADDRESS +CHOOSE +GETPIVOTDATA +HLOOKUP +INDEX +INDIRECT +LOOKUP +MATCH +MULTIPLE.OPERATIONS +OFFSET +VLOOKUP +AND +FALSE +IF +IFERROR +IFNA +NOT +OR +TRUE +XOR +ABS +ACOS +ACOSH +ACOT +ACOTH +ASIN +ASINH +ATAN +ATAN2 +ATANH +BESSELI +BESSELJ +BESSELK +BESSELY +COMBIN +COMBINA +CONVERT +COS +COSH +COT +COTH +CSC +CSCH +DEGREES +DELTA +ERF +ERFC +EUROCONVERT +EVEN +EXP +FACT +FACTDOUBLE +GAMMA +GAMMALN +GCD +GESTEP +LCM +LN +LOG +LOG10 +MOD +MULTINOMIAL +ODD +PI +POWER +PRODUCT +QUOTIENT +RADIANS +RAND +RANDBETWEEN +SEC +SERIESSUM +SIGN +SIN +SINH +SECH +SQRT +SQRTPI +SUBTOTAL +SUM +SUMIF +SUMIFS +SUMSQ +TAN +TANH +CEILING +INT +FLOOR +MROUND +ROUND +ROUNDDOWN +ROUNDUP +TRUNC +AVEDEV +AVERAGE +AVERAGEA +AVERAGEIF +AVERAGEIFS +B +BETADIST +BETAINV +BINOMDIST +LEGACY.CHIDIST +CHISQDIST +LEGACY.CHIINV +CHISQINV +LEGACY.CHITEST +CONFIDENCE +CORREL +COVAR +CRITBINOM +DEVSQ +EXPONDIST +FDIST +LEGACY.FDIST +FINV +LEGACY.FINV +FISHER +FISHERINV +FORECAST +FREQUENCY +FTEST +GAMMADIST +GAMMAINV +GAUSS +GEOMEAN +GROWTH +HARMEAN +HYPGEOMDIST +INTERCEPT +KURT +LARGE +LINEST +LOGEST +LOGINV +LOGNORMDIST +MAX +MAXA +MEDIAN +MIN +MINA +MODE +NEGBINOMDIST +NORMDIST +NORMINV +LEGACY.NORMSDIST +LEGACY.NORMSINV +PEARSON +PERCENTILE +PERCENTRANK +PERMUT +PERMUTATIONA +PHI +POISSON +PROB +QUARTILE +RANK +RSQ +SKEW +SKEWP +SLOPE +SMALL +STANDARDIZE +STDEV +STDEVA +STDEVP +STDEVPA +STEYX +TDIST +TINV +TREND +TRIMMEAN +TTEST +VAR +VARA +VARP +VARPA +WEIBULL +ZTEST +ARABIC +BASE +BIN2DEC +BIN2HEX +BIN2OCT +DEC2BIN +DEC2HEX +DEC2OCT +DECIMAL +HEX2BIN +HEX2DEC +HEX2OCT +OCT2BIN +OCT2DEC +OCT2HEX +ROMAN +ASC +CHAR +CLEAN +CODE +CONCATENATE +DOLLAR +EXACT +FIND +FIXED +JIS +LEFT +LEN +LOWER +MID +PROPER +REPLACE +REPT +RIGHT +SEARCH +SUBSTITUTE +T +TEXT +TRIM +""" + +def functionName(name): + #return name.strip().lower() + return name.strip().replace('.','').replace('_','').lower() + +functions1 = [ functionName(line) for line in [ k for k in [ i.strip() for i in functions.split("\n") ] if len(k)>0 ] ] + +functions2 = [] +path = os.path.join(os.path.split(sys.argv[0])[0],"../functions") +for n in [ f for f in os.listdir(path) if f.endswith(".cpp") ]: + f = open(os.path.join(path,n), 'r') + for t in [t.strip() for t in f.read().split("\n") ]: + m = re.search('(?!//|/\*).*new\s+Function\s*\(\s*\"(.+)\"', t) + if m: + functions2.append( functionName(m.group(1)) ) + else: + m = re.search('(?!//|/\*).*\-\>\s*setAlternateName\s*\(\s*\"(.+)\"', t) + if m: + functions2.append( functionName(m.group(1)) ) + +diff = list(set(functions1).difference(set(functions2))) +diff.sort() +print "%s missing OpenFormula functions (%s available):\n%s" % (len(diff), len(functions2), " ".join(diff)) diff -Nru calligra-2.3.86/tables/tests/TestFormula.cpp calligra-2.3.87/tables/tests/TestFormula.cpp --- calligra-2.3.86/tables/tests/TestFormula.cpp 2012-01-07 03:25:03.000000000 +0000 +++ calligra-2.3.87/tables/tests/TestFormula.cpp 2012-01-28 07:04:49.000000000 +0000 @@ -179,6 +179,7 @@ // empty parameter CHECK_TOKENIZE("IF(A1;A2;)", "xococoo"); + CHECK_TOKENIZE("=OFFSET(Sheet2'!B7;0;0)", ""); // function cascade CHECK_TOKENIZE("SUM(ABS(-1);ABS(-1))", "xoxooiooxooioo"); diff -Nru calligra-2.3.86/tables/tests/TestInformationFunctions.cpp calligra-2.3.87/tables/tests/TestInformationFunctions.cpp --- calligra-2.3.86/tables/tests/TestInformationFunctions.cpp 2012-01-07 03:25:03.000000000 +0000 +++ calligra-2.3.87/tables/tests/TestInformationFunctions.cpp 2012-01-28 07:04:49.000000000 +0000 @@ -22,6 +22,7 @@ #include #include #include +#include #include "TestKspreadCommon.h" @@ -30,10 +31,10 @@ // because we may need to promote expected value from integer to float #define CHECK_EVAL(x,y) { Value z(y); QCOMPARE(evaluate(x,z),(z)); } -Value TestInformationFunctions::evaluate(const QString& formula, Value& ex) +Value TestInformationFunctions::evaluate(const QString& formula, Value& ex, const Cell &cell) { Sheet* sheet = m_map->sheet(0); - Formula f(sheet); + Formula f(sheet, cell); QString expr = formula; if (expr[0] != '=') expr.prepend('='); @@ -77,6 +78,11 @@ storage->setValue(1,30, Value( 2048 ) ); storage->setValue(1,31, Value( 4096 ) ); + // B1:B2 + Formula formula(sheet); + formula.setExpression("=SUM(A19:A31)"); + storage->setFormula(2,1, formula); + storage->setFormula(2,2, Formula::empty()); // B3:B17 storage->setValue(2, 3, Value("7")); @@ -185,6 +191,27 @@ storage->setValue(26,22, Value( 2 ) ); storage->setValue(26,23, Value( 1 ) ); + // Add the second sheet + m_map->addNewSheet(); + sheet = m_map->sheet(1); + sheet->setSheetName("Sheet2"); + storage = sheet->cellStorage(); + + // B1:B2 + Formula formula2(sheet); + formula2.setExpression("=SUM(Sheet1!A19:Sheet1!A31)"); + storage->setFormula(2,1, formula2); + storage->setFormula(2,2, Formula::empty()); + + // Add the theird sheet + m_map->addNewSheet(); + sheet = m_map->sheet(2); + sheet->setSheetName("Sheet3"); + storage = sheet->cellStorage(); + + // A1:A2 + storage->setValue(1,1, Value( 1.1 ) ); + storage->setValue(1,2, Value( 2.2 ) ); } // @@ -200,22 +227,35 @@ // CHECK_EVAL( "AREAS(B3:C4~B3)", Value( 2 ) ); // Cell concatenation counts, even if the cells are duplicated } -/* void TestInformationFunctions::testCELL() { - CHECK_EVAL( "CELL(\"COL\";B7)", Value( 2 ) ); // Column B is column number 2. - CHECK_EVAL( "CELL(\"ADDRESS\";B7)", Value( "$B$7" ) ); // Absolute address - CHECK_EVAL( "CELL(\"ADDRESS\";Sheet2!B7)", Value( "$Sheet2.$B$7" ) ); // Absolute address including sheet name + CHECK_EVAL( "CELL(\"COL\";C7)", Value( 3 ) ); // Column C is column number 3. + CHECK_EVAL( "CELL(\"COL\";Sheet2!C7)", Value( 3 ) ); + + CHECK_EVAL( "CELL(\"ROW\";C7)", Value( 7 ) ); // Row 7 is row number 7. + CHECK_EVAL( "CELL(\"ROW\";Sheet2!C7)", Value( 7 ) ); + + CHECK_EVAL( "CELL(\"Sheet\";C7)", Value( 1 ) ); + CHECK_EVAL( "CELL(\"Sheet\";Sheet2!C7)", Value( 2 ) ); + CHECK_EVAL( "CELL(\"Sheet\";Sheet3!C7)", Value( 3 ) ); + + CHECK_EVAL( "CELL(\"ADDRESS\";B7)", Value( "$B$7" ) ); + CHECK_EVAL( "CELL(\"ADDRESS\";Sheet2!B7)", Value( "'Sheet2'!$B$7" ) ); - // Absolute address including sheet name and IRI of location of documentare duplicated - CHECK_EVAL( "CELL(\"ADDRESS\";'x:\\sample.ods'#Sheet3!B7)", Value( "'file:///x:/sample.ods'#$Sheet3.$B$7" ) ); + Value v1( "$B$7" ); + Value r1 = evaluate("CELL(\"ADDRESS\")", v1, Cell(m_map->sheet(0), 2, 7)); + QCOMPARE(r1, v1); - // The current cell is saved in a file named ��sample.ods�� which is located at ��file:///x:/�� - CHECK_EVAL( "CELL(\"FILENAME\")", Value( "file:///x:/sample.ods" ) ); + Value v2( "$B$7" ); + Value r2 = evaluate("CELL(\"ADDRESS\")", v2, Cell(m_map->sheet(1), 2, 7)); + QCOMPARE(r2, v2); - CHECK_EVAL( "CELL(\"FORMAT\";C7)", Value( "D4" ) ); // C7's number format is like ��DD-MM-YYYY HH:MM:SS�� + //CHECK_EVAL( "CELL(\"ADDRESS\";'x:\\sample.ods'#Sheet3!B7)", Value( "'file:///x:/sample.ods'#$Sheet3.$B$7" ) ); + + m_map->calculationSettings()->setFileName("/home/sample.ods"); + CHECK_EVAL( "CELL(\"FILENAME\")", Value( "/home/sample.ods" ) ); + CHECK_EVAL( "CELL(\"FILENAME\";B7)", Value( "/home/sample.ods" ) ); } -*/ void TestInformationFunctions::testCOLUMN() { @@ -279,13 +319,14 @@ CHECK_EVAL("ERRORTYPE(1/0)", Value(2)); } -/* void TestInformationFunctions::testFORMULA() { - CHECK_EVAL( "LENGTH(FORMULA(B7))>0", Value( true ) ); // B7 is a formula, so this is fine and will produce a text value - CHECK_EVAL( "FORMULA(B3)", Value( true ) ); // Simple formulas that produce Text are still formulas + CHECK_EVAL( "FORMULA(B1)", Value( "=SUM(A19:A31)" ) ); // B1 contains a simple SUM formula + CHECK_EVAL( "FORMULA(B2)", Value::errorNA() ); // Empty formula means no formula + CHECK_EVAL( "FORMULA(B3)", Value::errorNA() ); // Cell constants are not formulas + + CHECK_EVAL( "LEN(FORMULA(B1))>0", Value( true ) ); // B7 is a formula, so this is fine and will produce a text value } -*/ void TestInformationFunctions::testINFO() { @@ -351,16 +392,12 @@ CHECK_EVAL("COM.SUN.STAR.SHEET.ADDIN.ANALYSIS.GETISEVEN(2.5)", Value(true)); // alternate function name } -/* void TestInformationFunctions::testISFORMULA() { - CHECK_EVAL( "ISFORMULA(B5)", Value( true ) ); // Simple formulas that produce Number are still formulas - CHECK_EVAL( "ISFORMULA(B3)", Value( true ) ); // Simple formulas that produce Text are still formulas - CHECK_EVAL( "ISFORMULA(C5)", Value( false ) ); // Cell constants are not formulas - CHECK_EVAL( "ISFORMULA(C7)", Value( false ) ); // Cell constants are not formulas, even if they are dates - CHECK_EVAL( "ISFORMULA(B9)", Value( true ) ); // Formulas that return an error are still formulas + CHECK_EVAL( "ISFORMULA(B1)", Value( true ) ); // B1 contains a simple SUM formula + CHECK_EVAL( "ISFORMULA(B2)", Value( false ) ); // Empty formula means no formula + CHECK_EVAL( "ISFORMULA(B3)", Value( false ) ); // Cell constants are not formulas } -*/ void TestInformationFunctions::testISLOGICAL() { @@ -443,15 +480,6 @@ // and operators, just like any other error type. } -/* -void TestInformationFunctions::testNUMBERVALUE() -{ - CHECK_EVAL( "NUMBERVALUE(\"6\" ; \".\")", Value( 6 ) ); // VALUE converts text to numbers (unlike N). - CHECK_EVAL( "NUMBERVALUE(\"6,000.5\"; \".\")", Value( 6000.5 ) ); // Period works. - CHECK_EVAL( "NUMBERVALUE(\"6.000,5\"; \",\")", Value( 6000.5 ) ); // Comma works -} -*/ - // TODO row not working here void TestInformationFunctions::testROW() { @@ -473,19 +501,27 @@ CHECK_EVAL("ROWS(A4:D100)", Value(97)); // Number of rows in range. } -/* void TestInformationFunctions::testSHEET() { - CHECK_EVAL( "SHEET(B7)>=1", Value( true ) ); // If given, the sheet number of the reference is used. - CHECK_EVAL( "SHEET(\"Sheet1\")>=1", Value( true ) ); // Given a sheet name, the sheet number is returned. + CHECK_EVAL("SHEET(B7)", Value(1)); + CHECK_EVAL("SHEET(Sheet2!B7)", Value(2)); + CHECK_EVAL("SHEET(Sheet3!B7)", Value(3)); + CHECK_EVAL("SHEET()", Value(1)); } void TestInformationFunctions::testSHEETS() { - CHECK_EVAL( "SHEETS(B7)", Value( 1 ) ); // If given, the sheet number of the reference is used. - CHECK_EVAL( "SHEETS()>=1", Value( true ) ); // Range with four rows. + CHECK_EVAL( "SHEETS(B7)", Value( 1 ) ); // If given, the sheet number of the reference is used. + CHECK_EVAL( "SHEETS(Sheet1!B7:C9)", Value( 1 ) ); + CHECK_EVAL( "SHEETS(Sheet1!A7:Sheet1!C9)", Value( 1 ) ); + + //TODO this should not fail! :-( + //CHECK_EVAL( "SHEETS(Sheet1!B7:Sheet2!C9)", Value( 2 ) ); + //CHECK_EVAL( "SHEETS(Sheet1!B7:Sheet3!C9)", Value( 2 ) ); + //CHECK_EVAL( "SHEETS(Sheet1!A7:Sheet3!C9)", Value( 3 ) ); + + CHECK_EVAL( "SHEETS()", Value( 3 ) ); // Count all sheets } -*/ void TestInformationFunctions::testTYPE() { diff -Nru calligra-2.3.86/tables/tests/TestInformationFunctions.h calligra-2.3.87/tables/tests/TestInformationFunctions.h --- calligra-2.3.86/tables/tests/TestInformationFunctions.h 2012-01-07 03:25:03.000000000 +0000 +++ calligra-2.3.87/tables/tests/TestInformationFunctions.h 2012-01-28 07:04:49.000000000 +0000 @@ -31,6 +31,7 @@ namespace Tables { class Map; +class Cell; class TestInformationFunctions: public QObject { @@ -41,7 +42,7 @@ void initTestCase(); void testAREAS(); - // void testCELL(); // to be implemented + void testCELL(); void testCOLUMN(); void testCOLUMNS(); void testCOUNT(); @@ -49,13 +50,13 @@ void testCOUNTBLANK(); void testCOUNTIF(); void testERRORTYPE(); - // void testFORMULA(); // to be implemented + void testFORMULA(); void testINFO(); void testISBLANK(); void testISERR(); void testISERROR(); void testISEVEN(); - // void testISFORMULA(); // to be implemented + void testISFORMULA(); void testISLOGICAL(); void testISNONTEXT(); void testISNA(); @@ -66,18 +67,17 @@ void testMATCH(); void testN(); void testNA(); - // void testNUMBERVALUE(); // to be implemented void testROW(); void testROWS(); - // void testSHEET(); // to be implemented - // void testSHEETS(); // to be implemented + void testSHEET(); + void testSHEETS(); void testTYPE(); void testVALUE(); void cleanupTestCase(); private: - Value evaluate(const QString&, Value& ex); + Value evaluate(const QString&, Value& ex, const Cell &cell = Cell()); Map* m_map; }; diff -Nru calligra-2.3.86/tables/tests/TestPasteCommand.cpp calligra-2.3.87/tables/tests/TestPasteCommand.cpp --- calligra-2.3.86/tables/tests/TestPasteCommand.cpp 1970-01-01 00:00:00.000000000 +0000 +++ calligra-2.3.87/tables/tests/TestPasteCommand.cpp 2012-01-28 07:04:49.000000000 +0000 @@ -0,0 +1,66 @@ +/* This file is part of the KDE project + Copyright 2012 Marijn Kruisselbrink + + This library is free software; you can redistribute it and/or + modify it under the terms of the GNU Library General Public + License as published by the Free Software Foundation; only + version 2 of the License. + + This library is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Library General Public License for more details. + + You should have received a copy of the GNU Library General Public License + along with this library; see the file COPYING.LIB. If not, write to + the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, + Boston, MA 02110-1301, USA. +*/ +#include "TestPasteCommand.h" + +#include + +#include "part/CanvasItem.h" +#include "part/Doc.h" +#include "Map.h" +#include "ui/Selection.h" +#include "Sheet.h" +#include "commands/PasteCommand.h" + +using namespace Calligra::Tables; + +void PasteCommandTest::testKSpreadSnippet() +{ + Doc doc; + Map *map = doc.map(); + Sheet* sheet = new Sheet(map, "Sheet1"); + map->addSheet(sheet); + CanvasItem canvas(&doc); + Selection selection(&canvas); + selection.setActiveSheet(sheet); + selection.initialize(QPoint(2, 4), sheet); + + QMimeData *mimedata = new QMimeData(); + mimedata->setData("application/x-kspread-snippet", + "\n" + "\n" + "\n" + " \n" + " 3\n" + " \n" + "\n"); + + PasteCommand *command = new PasteCommand(); + command->setSheet(selection.activeSheet()); + command->add(selection); + command->setMimeData(mimedata); + command->setPasteFC(true); + command->execute(&canvas); + + kDebug() << Cell(sheet, 2, 4).value() << Cell(sheet, 1, 3).value() << Value(3); + QCOMPARE(Cell(sheet, 2, 4).value(), Value(3)); +} + +QTEST_KDEMAIN(PasteCommandTest, GUI) + +#include "TestPasteCommand.moc" diff -Nru calligra-2.3.86/tables/tests/TestPasteCommand.h calligra-2.3.87/tables/tests/TestPasteCommand.h --- calligra-2.3.86/tables/tests/TestPasteCommand.h 1970-01-01 00:00:00.000000000 +0000 +++ calligra-2.3.87/tables/tests/TestPasteCommand.h 2012-01-28 07:04:49.000000000 +0000 @@ -0,0 +1,40 @@ +/* This file is part of the KDE project + Copyright 2012 Marijn Kruisselbrink + + This library is free software; you can redistribute it and/or + modify it under the terms of the GNU Library General Public + License as published by the Free Software Foundation; either + version 2 of the License, or (at your option) any later version. + + This library is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Library General Public License for more details. + + You should have received a copy of the GNU Library General Public License + along with this library; see the file COPYING.LIB. If not, write to + the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, + Boston, MA 02110-1301, USA. +*/ + +#ifndef CALLIGRA_TABLES_PASTE_COMMAND_TEST +#define CALLIGRA_TABLES_PASTE_COMMAND_TEST + +#include + +namespace Calligra +{ +namespace Tables +{ + +class PasteCommandTest : public QObject +{ + Q_OBJECT +private Q_SLOTS: + void testKSpreadSnippet(); +}; + +} // namespace Tables +} // namespace Calligra + +#endif // CALLIGRA_TABLES_PASTE_COMMAND_TEST diff -Nru calligra-2.3.86/tables/tests/TestTextFunctions.cpp calligra-2.3.87/tables/tests/TestTextFunctions.cpp --- calligra-2.3.86/tables/tests/TestTextFunctions.cpp 2012-01-07 03:25:03.000000000 +0000 +++ calligra-2.3.87/tables/tests/TestTextFunctions.cpp 2012-01-28 07:04:49.000000000 +0000 @@ -172,6 +172,16 @@ CHECK_EVAL("MID(\"123456789\";5)", Value("56789")); } +void TestTextFunctions::testNUMBERVALUE() +{ + CHECK_EVAL( "NUMBERVALUE(\"6\"; \".\")", Value( 6 ) ); // VALUE converts text to numbers (unlike N). + CHECK_EVAL( "NUMBERVALUE(\"6,000.5\"; \".\")", Value( 6000.5 ) ); // Period works. + CHECK_EVAL( "NUMBERVALUE(\"6.000,5\"; \",\")", Value( 6000.5 ) ); // Comma works + CHECK_EVAL( "NUMBERVALUE(\"3!456!000*567\"; \"*\"; \"!\")", Value( 3456000.567 ) ); // Thousands separator works + CHECK_EVAL( "NUMBERVALUE(\"+6,000.5\"; \".\")", Value( 6000.5 ) ); // Positive sign + CHECK_EVAL( "NUMBERVALUE(\"-6,000.5\"; \".\")", Value( -6000.5 ) ); // Negative sign +} + void TestTextFunctions::testPROPER() { CHECK_EVAL("PROPER(\"hello there\")", Value("Hello There")); diff -Nru calligra-2.3.86/tables/tests/TestTextFunctions.h calligra-2.3.87/tables/tests/TestTextFunctions.h --- calligra-2.3.86/tables/tests/TestTextFunctions.h 2012-01-07 03:25:03.000000000 +0000 +++ calligra-2.3.87/tables/tests/TestTextFunctions.h 2012-01-28 07:04:49.000000000 +0000 @@ -49,6 +49,7 @@ void testLEN(); void testLOWER(); void testMID(); + void testNUMBERVALUE(); void testPROPER(); void testREPLACE(); void testREPT(); diff -Nru calligra-2.3.86/tables/ui/Selection.h calligra-2.3.87/tables/ui/Selection.h --- calligra-2.3.86/tables/ui/Selection.h 2012-01-07 03:25:03.000000000 +0000 +++ calligra-2.3.87/tables/ui/Selection.h 2012-01-28 07:04:49.000000000 +0000 @@ -200,11 +200,6 @@ int setActiveElement(const Cell &cell); /** - * Sets the element, which has @p point as anchor, as active - */ - void setActiveElement(const QPoint& point, CellEditor* cellEditor); - - /** * @return the active element */ Element* activeElement() const; diff -Nru calligra-2.3.86/tables/Util.cpp calligra-2.3.87/tables/Util.cpp --- calligra-2.3.86/tables/Util.cpp 2012-01-07 03:25:03.000000000 +0000 +++ calligra-2.3.87/tables/Util.cpp 2012-01-28 07:04:49.000000000 +0000 @@ -446,6 +446,12 @@ state = InNumber; *out++ = *data++; } + else if (*data == QChar('.', 0)) { + state = InNumber; + *out = decimal[0]; + ++out; + ++data; + } else if (isIdentifier(*data)) { // beginning with alphanumeric ? // could be identifier, cell, range, or function... @@ -496,12 +502,6 @@ state = InString; *out++ = *data++; break; - case '.': // decimal dot ? - state = InNumber; - *out = decimal[0]; - ++out; - ++data; - break; case '[': // [ marks sheet name for 3-d cell, e.g ['Sales Q3'.A4] state = InReference; ++data; diff -Nru calligra-2.3.86/tables/ValueCalc.cpp calligra-2.3.87/tables/ValueCalc.cpp --- calligra-2.3.86/tables/ValueCalc.cpp 2012-01-07 03:25:03.000000000 +0000 +++ calligra-2.3.87/tables/ValueCalc.cpp 2012-01-28 07:04:49.000000000 +0000 @@ -1923,14 +1923,14 @@ Value ValueCalc::sum(const Value &range, bool full) { Value res(0); - arrayWalk(range, res, awFunc(full ? "suma" : "sum"), Value(0)); + arrayWalk(range, res, full ? awSumA : awSum, Value(0)); return res; } Value ValueCalc::sum(QVector range, bool full) { Value res(0); - arrayWalk(range, res, awFunc(full ? "suma" : "sum"), Value(0)); + arrayWalk(range, res, full ? awSumA : awSum, Value(0)); return res; } @@ -1938,7 +1938,7 @@ Value ValueCalc::sumsq(const Value &range, bool full) { Value res(0); - arrayWalk(range, res, awFunc(full ? "sumsqa" : "sumsq"), Value(0)); + arrayWalk(range, res, full ? awSumSqA : awSumSq, Value(0)); return res; } @@ -2021,14 +2021,14 @@ int ValueCalc::count(const Value &range, bool full) { Value res(0); - arrayWalk(range, res, awFunc(full ? "counta" : "count"), Value(0)); + arrayWalk(range, res, full ? awCountA : awCount, Value(0)); return converter->asInteger(res).asInteger(); } int ValueCalc::count(QVector range, bool full) { Value res(0); - arrayWalk(range, res, awFunc(full ? "counta" : "count"), Value(0)); + arrayWalk(range, res, full ? awCountA : awCount, Value(0)); return converter->asInteger(res).asInteger(); } @@ -2074,28 +2074,28 @@ Value ValueCalc::max(const Value &range, bool full) { Value res; - arrayWalk(range, res, awFunc(full ? "maxa" : "max"), Value(0)); + arrayWalk(range, res, full ? awMaxA : awMax, Value(0)); return res; } Value ValueCalc::max(QVector range, bool full) { Value res; - arrayWalk(range, res, awFunc(full ? "maxa" : "max"), Value(0)); + arrayWalk(range, res, full ? awMaxA: awMax, Value(0)); return res; } Value ValueCalc::min(const Value &range, bool full) { Value res; - arrayWalk(range, res, awFunc(full ? "mina" : "min"), Value(0)); + arrayWalk(range, res, full ? awMinA : awMin, Value(0)); return res; } Value ValueCalc::min(QVector range, bool full) { Value res; - arrayWalk(range, res, awFunc(full ? "mina" : "min"), Value(0)); + arrayWalk(range, res, full ? awMinA : awMin, Value(0)); return res; } @@ -2108,7 +2108,7 @@ return init; res = Value(1.0); } - arrayWalk(range, res, awFunc(full ? "proda" : "prod"), Value(0)); + arrayWalk(range, res, full ? awProdA : awProd, Value(0)); return res; } @@ -2121,7 +2121,7 @@ return init; res = Value(1.0); } - arrayWalk(range, res, awFunc(full ? "proda" : "prod"), Value(0)); + arrayWalk(range, res, full ? awProdA : awProd, Value(0)); return res; } @@ -2135,7 +2135,7 @@ { Value res; int cnt = count(range, full); - arrayWalk(range, res, awFunc(full ? "devsqa" : "devsq"), avg); + arrayWalk(range, res, full ? awDevSqA : awDevSq, avg); return sqrt(div(res, cnt - 1)); } @@ -2149,7 +2149,7 @@ { Value res; int cnt = count(range, full); - arrayWalk(range, res, awFunc(full ? "devsqa" : "devsq"), avg); + arrayWalk(range, res, full ? awDevSqA : awDevSq, avg); return sqrt(div(res, cnt - 1)); } @@ -2163,7 +2163,7 @@ { Value res; int cnt = count(range, full); - arrayWalk(range, res, awFunc(full ? "devsqa" : "devsq"), avg); + arrayWalk(range, res, full ? awDevSqA : awDevSq, avg); return sqrt(div(res, cnt)); } @@ -2177,7 +2177,7 @@ { Value res; int cnt = count(range, full); - arrayWalk(range, res, awFunc(full ? "devsqa" : "devsq"), avg); + arrayWalk(range, res, full ? awDevSqA : awDevSq, avg); return sqrt(div(res, cnt)); } diff -Nru calligra-2.3.86/templates/TextDocument.desktop calligra-2.3.87/templates/TextDocument.desktop --- calligra-2.3.86/templates/TextDocument.desktop 2012-01-07 03:25:03.000000000 +0000 +++ calligra-2.3.87/templates/TextDocument.desktop 2012-01-28 07:04:49.000000000 +0000 @@ -58,6 +58,7 @@ Comment=New Words document: Comment[bg]=Нов документ на Words: Comment[ca]=Nou document del Words: +Comment[ca@valencia]=Nou document del Words: Comment[cs]=Nový dokument aplikace Words: Comment[da]=Nyt Words-dokument: Comment[de]=Neues Words-Dokument: diff -Nru calligra-2.3.86/tools/converter/calligraconverter.cpp calligra-2.3.87/tools/converter/calligraconverter.cpp --- calligra-2.3.86/tools/converter/calligraconverter.cpp 2012-01-07 03:25:03.000000000 +0000 +++ calligra-2.3.87/tools/converter/calligraconverter.cpp 2012-01-28 07:04:49.000000000 +0000 @@ -42,6 +42,8 @@ bool convertPdf(const KUrl &uIn, const QString &inputFormat, const KUrl &uOut, const QString &outputFormat) { + Q_UNUSED(outputFormat); + QString error; KoDocument *doc = KMimeTypeTrader::self()->createPartInstanceFromQuery< KoDocument >( inputFormat, 0, 0, QString(), QVariantList(), &error); diff -Nru calligra-2.3.86/tools/cstester/cstester.cpp calligra-2.3.87/tools/cstester/cstester.cpp --- calligra-2.3.86/tools/cstester/cstester.cpp 2012-01-07 03:25:03.000000000 +0000 +++ calligra-2.3.87/tools/cstester/cstester.cpp 2012-01-28 07:04:49.000000000 +0000 @@ -35,7 +35,7 @@ #include #include #include -#include +#include #include #include "CSThumbProviderStage.h" @@ -109,7 +109,7 @@ return saveAs; } -QList createThumbnails(KoDocument *document, const QSize &thumbSize) +QList createThumbnails(KoDocument *document, const QSize &thumbSize) { CSThumbProvider *tp = 0; @@ -128,13 +128,13 @@ } #endif - return tp ? tp->createThumbnails(thumbSize) : QList(); + return tp ? tp->createThumbnails(thumbSize) : QList(); } -void saveThumbnails(const QList &thumbnails, const QString &dir) +void saveThumbnails(const QList &thumbnails, const QString &dir) { int i = 0; - for (QList::const_iterator it(thumbnails.constBegin()); it != thumbnails.constEnd(); ++it) { + for (QList::const_iterator it(thumbnails.constBegin()); it != thumbnails.constEnd(); ++it) { // it is not possible to use QString("%1/thumb_%2.png").arg(dir).arg(++i); // as dir can contain % values which then might or might not be overwritten by the second arg QString thumbFilename = dir + QString("/thumb_%2.png").arg(++i); @@ -142,7 +142,7 @@ } } -void saveThumbnails(const QFileInfo &file, const QList &thumbnails, const QString &outdir) +void saveThumbnails(const QFileInfo &file, const QList &thumbnails, const QString &outdir) { QDir dir(outdir); QString checkSubDir(file.fileName() + ".check"); @@ -150,11 +150,11 @@ saveThumbnails(thumbnails, outdir + '/' + checkSubDir); } -bool checkThumbnails(const QList &thumbnails, const QString &dir, bool verbose) +bool checkThumbnails(const QList &thumbnails, const QString &dir, bool verbose) { bool success = true; int i = 0; - for (QList::const_iterator it(thumbnails.constBegin()); it != thumbnails.constEnd(); ++it) { + for (QList::const_iterator it(thumbnails.constBegin()); it != thumbnails.constEnd(); ++it) { QString thumbFilename = dir + QString("/thumb_%2.png").arg(++i); QByteArray ba; @@ -179,7 +179,7 @@ return success; } -bool checkThumbnails(const QList &thumbnails, const QList &others, bool verbose) +bool checkThumbnails(const QList &thumbnails, const QList &others, bool verbose) { bool success = true; if (thumbnails.size() != others.size()) { @@ -187,8 +187,8 @@ return false; } int i = 1; - QList::const_iterator it(thumbnails.constBegin()); - QList::const_iterator oIt(others.constBegin()); + QList::const_iterator it(thumbnails.constBegin()); + QList::const_iterator oIt(others.constBegin()); for (; it != thumbnails.constEnd(); ++it, ++oIt, ++i) { QByteArray ba; @@ -309,7 +309,7 @@ exit(2); } - QList thumbnails(createThumbnails(document, QSize(800,800))); + QList thumbnails(createThumbnails(document, QSize(800,800))); qDebug() << "created" << thumbnails.size() << "thumbnails"; if (create) { @@ -333,7 +333,7 @@ QFileInfo rFile(rFilename); qDebug() << roundtrip << "rFilename" << rFilename << rFile.absoluteFilePath(); document = openFile(rFile.absoluteFilePath()); - QList others(createThumbnails(document, QSize(800,800))); + QList others(createThumbnails(document, QSize(800,800))); if (args->isSet("outdir")) { saveThumbnails(file, others, outDir); saveThumbnails(file, thumbnails, outDir + "/before"); diff -Nru calligra-2.3.86/tools/cstester/CSThumbProvider.h calligra-2.3.87/tools/cstester/CSThumbProvider.h --- calligra-2.3.86/tools/cstester/CSThumbProvider.h 2012-01-07 03:25:03.000000000 +0000 +++ calligra-2.3.87/tools/cstester/CSThumbProvider.h 2012-01-28 07:04:49.000000000 +0000 @@ -25,7 +25,7 @@ #include -class QPixmap; +class QImage; class QSize; class CSThumbProvider @@ -34,7 +34,7 @@ CSThumbProvider() {} virtual ~CSThumbProvider() {} - virtual QList createThumbnails(const QSize &thumbSize) = 0; + virtual QList createThumbnails(const QSize &thumbSize) = 0; }; #endif /* CSTHUMBPROVIDER_H */ diff -Nru calligra-2.3.86/tools/cstester/CSThumbProviderKarbon.cpp calligra-2.3.87/tools/cstester/CSThumbProviderKarbon.cpp --- calligra-2.3.86/tools/cstester/CSThumbProviderKarbon.cpp 2012-01-07 03:25:03.000000000 +0000 +++ calligra-2.3.87/tools/cstester/CSThumbProviderKarbon.cpp 2012-01-28 07:04:49.000000000 +0000 @@ -46,18 +46,18 @@ { } -QList CSThumbProviderKarbon::createThumbnails(const QSize &thumbSize) +QList CSThumbProviderKarbon::createThumbnails(const QSize &thumbSize) { // make sure everything is rendered before painting processEvents(); - QPixmap thumbnail(thumbSize); - thumbnail.fill(Qt::white); + QImage thumbnail(thumbSize, QImage::Format_RGB32); + thumbnail.fill(QColor(Qt::white).rgb()); QPainter thumbPainter(&thumbnail); m_doc->paintContent(thumbPainter, QRect(QPoint(0, 0), thumbSize)); // make sure there are no events; this fixes a crash on shutdown processEvents(); - return QList() << thumbnail; + return QList() << thumbnail; } diff -Nru calligra-2.3.86/tools/cstester/CSThumbProviderKarbon.h calligra-2.3.87/tools/cstester/CSThumbProviderKarbon.h --- calligra-2.3.86/tools/cstester/CSThumbProviderKarbon.h 2012-01-07 03:25:03.000000000 +0000 +++ calligra-2.3.87/tools/cstester/CSThumbProviderKarbon.h 2012-01-28 07:04:49.000000000 +0000 @@ -32,7 +32,7 @@ CSThumbProviderKarbon(KarbonPart *doc); virtual ~CSThumbProviderKarbon(); - virtual QList createThumbnails(const QSize &thumbSize); + virtual QList createThumbnails(const QSize &thumbSize); private: KarbonPart *m_doc; diff -Nru calligra-2.3.86/tools/cstester/CSThumbProviderStage.cpp calligra-2.3.87/tools/cstester/CSThumbProviderStage.cpp --- calligra-2.3.86/tools/cstester/CSThumbProviderStage.cpp 2012-01-07 03:25:03.000000000 +0000 +++ calligra-2.3.87/tools/cstester/CSThumbProviderStage.cpp 2012-01-28 07:04:49.000000000 +0000 @@ -38,7 +38,7 @@ { } -QList CSThumbProviderStage::createThumbnails(const QSize &thumbSize) +QList CSThumbProviderStage::createThumbnails(const QSize &thumbSize) { // make sure all is rendered before painting int i = 100; @@ -47,9 +47,9 @@ QCoreApplication::processEvents(QEventLoop::ExcludeUserInputEvents); } - QList thumbnails; + QList thumbnails; foreach(KoPAPageBase *page, m_doc->pages(false)) { - thumbnails.append(m_doc->pageThumbnail(page, thumbSize)); + thumbnails.append(m_doc->pageThumbImage(page, thumbSize)); } // make sure there are no events this fixes a crash on shutdown diff -Nru calligra-2.3.86/tools/cstester/CSThumbProviderStage.h calligra-2.3.87/tools/cstester/CSThumbProviderStage.h --- calligra-2.3.86/tools/cstester/CSThumbProviderStage.h 2012-01-07 03:25:03.000000000 +0000 +++ calligra-2.3.87/tools/cstester/CSThumbProviderStage.h 2012-01-28 07:04:49.000000000 +0000 @@ -33,7 +33,7 @@ CSThumbProviderStage(KoPADocument *doc); virtual ~CSThumbProviderStage(); - virtual QList createThumbnails(const QSize &thumbSize); + virtual QList createThumbnails(const QSize &thumbSize); private: KoPADocument *m_doc; diff -Nru calligra-2.3.86/tools/cstester/CSThumbProviderTables.cpp calligra-2.3.87/tools/cstester/CSThumbProviderTables.cpp --- calligra-2.3.86/tools/cstester/CSThumbProviderTables.cpp 2012-01-07 03:25:03.000000000 +0000 +++ calligra-2.3.87/tools/cstester/CSThumbProviderTables.cpp 2012-01-28 07:04:49.000000000 +0000 @@ -43,13 +43,13 @@ { } -QList CSThumbProviderTables::createThumbnails(const QSize &thumbSize) +QList CSThumbProviderTables::createThumbnails(const QSize &thumbSize) { - QList thumbnails; + QList thumbnails; if (0 != m_doc->map()) { foreach(Calligra::Tables::Sheet* sheet, m_doc->map()->sheetList()) { - QPixmap thumbnail(thumbSize); - thumbnail.fill(Qt::white); + QImage thumbnail(thumbSize, QImage::Format_RGB32); + thumbnail.fill(QColor(Qt::white).rgb()); QPainter p(&thumbnail); KoPageLayout pageLayout; diff -Nru calligra-2.3.86/tools/cstester/CSThumbProviderTables.h calligra-2.3.87/tools/cstester/CSThumbProviderTables.h --- calligra-2.3.86/tools/cstester/CSThumbProviderTables.h 2012-01-07 03:25:03.000000000 +0000 +++ calligra-2.3.87/tools/cstester/CSThumbProviderTables.h 2012-01-28 07:04:49.000000000 +0000 @@ -37,7 +37,7 @@ CSThumbProviderTables(Calligra::Tables::Doc *doc); virtual ~CSThumbProviderTables(); - virtual QList createThumbnails(const QSize &thumbSize); + virtual QList createThumbnails(const QSize &thumbSize); private: Calligra::Tables::Doc *m_doc; diff -Nru calligra-2.3.86/tools/cstester/CSThumbProviderWords.cpp calligra-2.3.87/tools/cstester/CSThumbProviderWords.cpp --- calligra-2.3.86/tools/cstester/CSThumbProviderWords.cpp 2012-01-07 03:25:03.000000000 +0000 +++ calligra-2.3.87/tools/cstester/CSThumbProviderWords.cpp 2012-01-28 07:04:49.000000000 +0000 @@ -49,7 +49,7 @@ { } -QList CSThumbProviderWords::createThumbnails(const QSize &thumbSize) +QList CSThumbProviderWords::createThumbnails(const QSize &thumbSize) { KWCanvasItem *canvasItem = static_cast(m_doc->canvasItem()); KoZoomHandler zoomHandler; @@ -64,7 +64,7 @@ KWPageManager *pageManager = m_doc->pageManager(); KoShapeManager *shapeManager = canvasItem->shapeManager(); - QList thumbnails; + QList thumbnails; foreach(KWPage page, pageManager->pages()) { @@ -76,8 +76,8 @@ KoPAUtil::setZoom(layout, thumbSize, zoomHandler); QRect pageRect = KoPAUtil::pageRect(layout, thumbSize, zoomHandler); - QPixmap thumbnail(thumbSize); - thumbnail.fill(Qt::white); + QImage thumbnail(thumbSize, QImage::Format_RGB32); + thumbnail.fill(QColor(Qt::white).rgb()); QPainter p(&thumbnail); QImage img = page.thumbnail(pageRect.size(), shapeManager); diff -Nru calligra-2.3.86/tools/cstester/CSThumbProviderWords.h calligra-2.3.87/tools/cstester/CSThumbProviderWords.h --- calligra-2.3.86/tools/cstester/CSThumbProviderWords.h 2012-01-07 03:25:03.000000000 +0000 +++ calligra-2.3.87/tools/cstester/CSThumbProviderWords.h 2012-01-28 07:04:49.000000000 +0000 @@ -33,7 +33,7 @@ CSThumbProviderWords(KWDocument *doc); virtual ~CSThumbProviderWords(); - virtual QList createThumbnails(const QSize &thumbSize); + virtual QList createThumbnails(const QSize &thumbSize); private: KWDocument *m_doc; diff -Nru calligra-2.3.86/tools/mobile/calligramobile.desktop calligra-2.3.87/tools/mobile/calligramobile.desktop --- calligra-2.3.86/tools/mobile/calligramobile.desktop 2012-01-07 03:25:03.000000000 +0000 +++ calligra-2.3.87/tools/mobile/calligramobile.desktop 2012-01-28 07:04:49.000000000 +0000 @@ -3,6 +3,7 @@ Type=Application Name=Calligra Mobile Name[ca]=Calligra Mòbil +Name[ca@valencia]=Calligra Mòbil Name[cs]=Calligra Mobile Name[da]=Calligra Mobile Name[de]=Calligra Mobile diff -Nru calligra-2.3.86/tools/thumbnail/calligrathumbnail.desktop calligra-2.3.87/tools/thumbnail/calligrathumbnail.desktop --- calligra-2.3.86/tools/thumbnail/calligrathumbnail.desktop 2012-01-07 03:25:03.000000000 +0000 +++ calligra-2.3.87/tools/thumbnail/calligrathumbnail.desktop 2012-01-28 07:04:49.000000000 +0000 @@ -3,6 +3,7 @@ Name=Calligra Files Name[bg]=Файлове на Calligra Name[ca]=Fitxers Calligra +Name[ca@valencia]=Fitxers Calligra Name[cs]=Soubory Calligra Name[da]=Calligra-filer Name[de]=Calligra-Dateien diff -Nru calligra-2.3.86/words/part/CMakeLists.txt calligra-2.3.87/words/part/CMakeLists.txt --- calligra-2.3.86/words/part/CMakeLists.txt 2012-01-07 03:25:03.000000000 +0000 +++ calligra-2.3.87/words/part/CMakeLists.txt 2012-01-28 07:04:49.000000000 +0000 @@ -30,6 +30,11 @@ KWOdfSharedLoadingData.cpp KWRootAreaProvider.cpp + pagetool/KWPageTool.cpp + pagetool/KWPageToolFactory.cpp + pagetool/SimpleSetupWidget.cpp + pagetool/SimpleHeaderFooterWidget.cpp + frames/KWFrameLayout.cpp frames/KWFrame.cpp frames/KWFrameSet.cpp @@ -46,12 +51,13 @@ dialogs/KWDocumentColumns.cpp dialogs/KWStartupWidget.cpp dialogs/KWPageSettingsDialog.cpp - dialogs/KWStatistics.cpp - dialogs/KWStatisticsDialog.cpp dialogs/KWPrintingDialog.cpp dialogs/KWCreateBookmarkDialog.cpp dialogs/KWSelectBookmarkDialog.cpp + dockers/KWStatisticsDocker.cpp + dockers/KWStatistics.cpp + dockers/StatisticsPreferencesPopup.cpp commands/KWPageStylePropertiesCommand.cpp commands/KWPageInsertCommand.cpp @@ -79,11 +85,13 @@ dialogs/KWAnchoringProperties.ui dialogs/KWDocumentColumns.ui dialogs/KWStartupWidget.ui - dialogs/KWStatistics.ui dialogs/KWCreateBookmark.ui dialogs/KWSelectBookmark.ui dialogs/KWInsertImage.ui dockers/KWStatisticsDocker.ui + dockers/StatisticsPreferencesPopup.ui + pagetool/SimpleSetupWidget.ui + pagetool/SimpleHeaderFooterWidget.ui ) if( Soprano_FOUND ) kde4_add_ui_files(wordsprivate_LIB_SRCS diff -Nru calligra-2.3.86/words/part/dialogs/KWAnchoringProperties.cpp calligra-2.3.87/words/part/dialogs/KWAnchoringProperties.cpp --- calligra-2.3.86/words/part/dialogs/KWAnchoringProperties.cpp 2012-01-07 03:25:03.000000000 +0000 +++ calligra-2.3.87/words/part/dialogs/KWAnchoringProperties.cpp 2012-01-28 07:04:49.000000000 +0000 @@ -22,9 +22,12 @@ #include "KWFrameDialog.h" #include "KWDocument.h" #include "frames/KWFrame.h" +#include "frames/KWTextFrameSet.h" #include #include +#include +#include #include #include @@ -138,7 +141,7 @@ connect(widget.cTopArea, SIGNAL(currentIndexChanged(int)), this, SLOT(vertRelChanged(int))); connect(widget.cVCenterArea, SIGNAL(currentIndexChanged(int)), this, SLOT(vertRelChanged(int))); - connect(widget.cRightArea, SIGNAL(currentIndexChanged(int)), this, SLOT(vertRelChanged(int))); + connect(widget.cBottomArea, SIGNAL(currentIndexChanged(int)), this, SLOT(vertRelChanged(int))); connect(widget.cVOffsetArea, SIGNAL(currentIndexChanged(int)), this, SLOT(vertRelChanged(int))); connect(widget.cLeftArea, SIGNAL(currentIndexChanged(int)), this, SLOT(horizRelChanged(int))); @@ -147,7 +150,7 @@ connect(widget.cHOffsetArea, SIGNAL(currentIndexChanged(int)), this, SLOT(horizRelChanged(int))); } -void KWAnchoringProperties::open(const QList &frames) +bool KWAnchoringProperties::open(const QList &frames) { m_state->addUser(); m_frames = frames; @@ -163,7 +166,16 @@ m_horizRel = -1; QPointF offset; + bool atLeastOne = false; + foreach (KWFrame *frame, frames) { + if (frame->frameSet()->type() == Words::TextFrameSet) { + if (static_cast(frame->frameSet())->textFrameSetType() != Words::OtherTextFrameSet) { + continue; + } + } + atLeastOne = true; + KoTextAnchor *anchor = frame->anchor(); KoTextAnchor::AnchorType anchorTypeOfFrame = anchor ? anchor->anchorType() : KoTextAnchor::AnchorPage; @@ -205,6 +217,10 @@ } } + if (!atLeastOne) { + return false; + } + if (anchorTypeHelper != GuiHelper::TriState) { m_anchorTypeGroup->button(anchorType)->setChecked(true); @@ -228,6 +244,8 @@ widget.grpVert->setEnabled(false); widget.grpHoriz->setEnabled(false); } + + return true; } void KWAnchoringProperties::vertPosChanged(int vertPos, QPointF offset) @@ -485,50 +503,67 @@ void KWAnchoringProperties::save(KUndo2Command *macro) { - if (m_frames.count() == 0) { - KWFrame *frame = m_state->frame(); - if (frame == 0 && m_shape) - frame = m_state->createFrame(m_shape); - Q_ASSERT(frame); - m_state->markFrameUsed(); - m_frames.append(frame); - } + Q_ASSERT(macro); + Q_ASSERT(m_frames.count() > 0); - KoInlineTextObjectManager *manager = m_state->document()->inlineTextObjectManager(); + if (m_anchorTypeGroup->checkedId() != -1) { + foreach (KWFrame *frame, m_frames) { + if (frame->frameSet()->type() == Words::TextFrameSet) { + if (static_cast(frame->frameSet())->textFrameSetType() != Words::OtherTextFrameSet) { + continue; + } + } - foreach (KWFrame *frame, m_frames) { - if (m_anchorTypeGroup->checkedId() != -1) { KoTextAnchor::AnchorType type = KoTextAnchor::AnchorType(m_anchorTypeGroup->checkedId()); - KoTextAnchor *anchor = 0; - if (type != KoTextAnchor::AnchorPage) { - anchor = m_state->document()->anchorOfShape(frame->shape(), true); - } - else { - anchor = m_state->document()->anchorOfShape(frame->shape(), true); - m_state->document()->inlineTextObjectManager()->removeInlineObject(anchor); - } - - if (macro) { - // create the actual undo step. - KoTextAnchor anchorProperties(0); - anchorProperties.setAnchorType(type); - anchorProperties.setHorizontalRel(KoTextAnchor::HorizontalRel(m_horizRel)); - anchorProperties.setVerticalRel(KoTextAnchor::VerticalRel(m_vertRel)); - anchorProperties.setHorizontalPos(KoTextAnchor::HorizontalPos(m_horizPos)); - anchorProperties.setVerticalPos(KoTextAnchor::VerticalPos(m_vertPos)); - - new ChangeAnchorPropertiesCommand(anchor, &anchorProperties, macro); - } else { - // no macro, then this is on creation and no undo step wanted. - anchor->setAnchorType(type); - anchor->setHorizontalRel(KoTextAnchor::HorizontalRel(m_horizRel)); - anchor->setVerticalRel(KoTextAnchor::VerticalRel(m_vertRel)); - anchor->setHorizontalPos(KoTextAnchor::HorizontalPos(m_horizPos)); - anchor->setVerticalPos(KoTextAnchor::VerticalPos(m_vertPos)); - anchor->shape()->notifyChanged(); - } + KoTextAnchor *anchor = frame->anchor(); + if (!anchor) { + anchor = new KoTextAnchor(frame->shape()); + anchor->setAnchorType(KoTextAnchor::AnchorPage); + anchor->setHorizontalPos(KoTextAnchor::HFromLeft); + anchor->setVerticalPos(KoTextAnchor::VFromTop); + frame->setAnchor(anchor); + } + KoShapeContainer *container = 0; + // we change from page anchored to text shape anchored. + if (type != KoTextAnchor::AnchorPage && anchor->anchorType() == KoTextAnchor::AnchorPage) { + KWFrame *targetFrame = m_state->document()->findClosestFrame(anchor->shape()); + + if (targetFrame != 0) { + KoTextShapeData *textData = qobject_cast(targetFrame->shape()->userData()); + if (textData) { + container = static_cast(targetFrame->shape()); + } + } + } + else if (type != KoTextAnchor::AnchorPage) { + container = anchor->shape()->parent(); + } + + // if there was not text shape found where we can anchor the shape to set anchoring to page. + if (!container) { + type = KoTextAnchor::AnchorPage; + } + + QPointF offset = anchor->offset(); + if (m_horizPos == KoTextAnchor::HFromLeft) { + offset.setX(widget.sHOffset->value()); + } + if (m_vertPos == KoTextAnchor::VFromTop) { + offset.setY(widget.sVOffset->value()); + } + + KoTextAnchor anchorProperties(0); + anchorProperties.setAnchorType(type); + anchorProperties.setOffset(offset); + anchorProperties.setHorizontalRel(KoTextAnchor::HorizontalRel(m_horizRel)); + anchorProperties.setVerticalRel(KoTextAnchor::VerticalRel(m_vertRel)); + anchorProperties.setHorizontalPos(KoTextAnchor::HorizontalPos(m_horizPos)); + anchorProperties.setVerticalPos(KoTextAnchor::VerticalPos(m_vertPos)); + + new ChangeAnchorPropertiesCommand(anchor, anchorProperties, container, macro); } } + m_state->removeUser(); } diff -Nru calligra-2.3.86/words/part/dialogs/KWAnchoringProperties.h calligra-2.3.87/words/part/dialogs/KWAnchoringProperties.h --- calligra-2.3.86/words/part/dialogs/KWAnchoringProperties.h 2012-01-07 03:25:03.000000000 +0000 +++ calligra-2.3.87/words/part/dialogs/KWAnchoringProperties.h 2012-01-28 07:04:49.000000000 +0000 @@ -42,7 +42,8 @@ explicit KWAnchoringProperties(FrameConfigSharedState *state); /// load all info from the argument frames into this widget - void open(const QList &frames); + /// returns true if at least one frame was accepted + bool open(const QList &frames); /// reimplemented void open(KoShape *shape); /// reimplemented diff -Nru calligra-2.3.86/words/part/dialogs/KWFrameDialog.cpp calligra-2.3.87/words/part/dialogs/KWFrameDialog.cpp --- calligra-2.3.86/words/part/dialogs/KWFrameDialog.cpp 2012-01-07 03:25:03.000000000 +0000 +++ calligra-2.3.87/words/part/dialogs/KWFrameDialog.cpp 2012-01-28 07:04:49.000000000 +0000 @@ -39,10 +39,15 @@ setFaceType(Tabbed); m_generalFrameProperties = new KWGeneralFrameProperties(m_state); addPage(m_generalFrameProperties, i18n("General")); + m_generalFrameProperties->open(frames); + m_anchoringProperties = new KWAnchoringProperties(m_state); - addPage(m_anchoringProperties, i18n("Smart Positioning")); + if (m_anchoringProperties->open(frames)) + addPage(m_anchoringProperties, i18n("Smart Positioning")); + m_runAroundProperties = new KWRunAroundProperties(m_state); - addPage(m_runAroundProperties, i18n("Text Run Around")); + if (m_runAroundProperties->open(frames)) + addPage(m_runAroundProperties, i18n("Text Run Around")); if (frames.count() == 1) { m_frameConnectSelector = new KWFrameConnectSelector(m_state); @@ -56,9 +61,6 @@ } } - m_generalFrameProperties->open(frames); - m_anchoringProperties->open(frames); - m_runAroundProperties->open(frames); connect(this, SIGNAL(okClicked()), this, SLOT(okClicked())); connect(this, SIGNAL(cancelClicked()), this, SLOT(cancelClicked())); @@ -78,7 +80,7 @@ m_generalFrameProperties->save(); m_anchoringProperties->save(macro); - m_runAroundProperties->save(); + m_runAroundProperties->save(macro); m_canvas->addCommand(macro); } diff -Nru calligra-2.3.86/words/part/dialogs/KWRunAroundProperties.cpp calligra-2.3.87/words/part/dialogs/KWRunAroundProperties.cpp --- calligra-2.3.86/words/part/dialogs/KWRunAroundProperties.cpp 2012-01-07 03:25:03.000000000 +0000 +++ calligra-2.3.87/words/part/dialogs/KWRunAroundProperties.cpp 2012-01-28 07:04:49.000000000 +0000 @@ -21,6 +21,11 @@ #include "KWFrameDialog.h" #include "KWDocument.h" #include "frames/KWFrame.h" +#include "frames/KWTextFrameSet.h" + +#include + +#include KWRunAroundProperties::KWRunAroundProperties(FrameConfigSharedState *state) : m_state(state), @@ -50,7 +55,7 @@ connect(widget.enough, SIGNAL(toggled(bool)), this, SLOT(enoughRunAroundToggled(bool))); } -void KWRunAroundProperties::open(const QList &frames) +bool KWRunAroundProperties::open(const QList &frames) { m_state->addUser(); m_frames = frames; @@ -60,7 +65,16 @@ KoShape::TextRunAroundSide side = KoShape::BiggestRunAroundSide; qreal distance = 10.0; qreal threshold = 0.0; + + bool atLeastOne = false; + foreach (KWFrame *frame, frames) { + if (frame->frameSet()->type() == Words::TextFrameSet) { + if (static_cast(frame->frameSet())->textFrameSetType() != Words::OtherTextFrameSet) { + continue; + } + } + atLeastOne = true; if (runaround == GuiHelper::Unset) { side = frame->shape()->textRunAroundSide(); runaround = GuiHelper::On; @@ -80,11 +94,17 @@ raThreshold = GuiHelper::TriState; } + if (!atLeastOne) { + return false; + } + if (runaround != GuiHelper::TriState) m_runAroundSide->button(side)->setChecked(true); widget.distance->changeValue(distance); widget.threshold->changeValue(threshold); + + return true; } void KWRunAroundProperties::open(KoShape *shape) @@ -98,6 +118,11 @@ void KWRunAroundProperties::save() { + save(0); +} + +void KWRunAroundProperties::save(KUndo2Command *macro) +{ if (m_frames.count() == 0) { KWFrame *frame = m_state->frame(); if (frame == 0 && m_shape) @@ -107,24 +132,38 @@ m_frames.append(frame); } foreach (KWFrame *frame, m_frames) { - bool needRelayout = false; + if (frame->frameSet()->type() == Words::TextFrameSet) { + if (static_cast(frame->frameSet())->textFrameSetType() != Words::OtherTextFrameSet) { + continue; + } + } + KoShape *shape = frame->shape(); + KoShape::TextRunAroundSide side = shape->textRunAroundSide(); + int runThrough = shape->runThrough(); + qreal distance = shape->textRunAroundDistance(); + qreal threshold = shape->textRunAroundThreshold(); + if (m_runAroundSide->checkedId() != -1) { KoShape::TextRunAroundSide rrs = static_cast(m_runAroundSide->checkedId()); - if (frame->shape()->textRunAroundSide() != rrs) { - frame->shape()->setTextRunAroundSide(rrs); - needRelayout = true; + if (side != rrs) { + side = rrs; } } - if (frame->shape()->textRunAroundDistance() != widget.distance->value()) { - frame->shape()->setTextRunAroundDistance(widget.distance->value()); - needRelayout = true; - } - if (frame->shape()->textRunAroundThreshold() != widget.threshold->value()) { - frame->shape()->setTextRunAroundThreshold(widget.threshold->value()); - needRelayout = true; + if (distance != widget.distance->value()) { + distance = widget.distance->value(); + } + if (shape->textRunAroundThreshold() != widget.threshold->value()) { + threshold = widget.threshold->value(); + } + if (macro) { + new KoShapeRunAroundCommand(shape, side, runThrough, distance, threshold, macro); + } else { + shape->setTextRunAroundSide(side, KoShape::Background); + shape->setRunThrough(runThrough); + shape->setTextRunAroundDistance(distance); + shape->setTextRunAroundThreshold(threshold); + shape->notifyChanged(); } - if (needRelayout) - frame->shape()->notifyChanged(); } m_state->removeUser(); } diff -Nru calligra-2.3.86/words/part/dialogs/KWRunAroundProperties.h calligra-2.3.87/words/part/dialogs/KWRunAroundProperties.h --- calligra-2.3.86/words/part/dialogs/KWRunAroundProperties.h 2012-01-07 03:25:03.000000000 +0000 +++ calligra-2.3.87/words/part/dialogs/KWRunAroundProperties.h 2012-01-28 07:04:49.000000000 +0000 @@ -39,11 +39,14 @@ explicit KWRunAroundProperties(FrameConfigSharedState *state); /// load all info from the argument frames into this widget - void open(const QList &frames); + /// returns true if at least one frame was accepted + bool open(const QList &frames); /// reimplemented void open(KoShape *shape); /// reimplemented void save(); + /// save but add to undo command if command != 0 + void save(KUndo2Command *command); /// reimplemented virtual bool showOnShapeCreate() { diff -Nru calligra-2.3.86/words/part/dialogs/KWStatistics.cpp calligra-2.3.87/words/part/dialogs/KWStatistics.cpp --- calligra-2.3.86/words/part/dialogs/KWStatistics.cpp 2012-01-07 03:25:03.000000000 +0000 +++ calligra-2.3.87/words/part/dialogs/KWStatistics.cpp 1970-01-01 00:00:00.000000000 +0000 @@ -1,308 +0,0 @@ -/* This file is part of the KDE project - * Copyright (C) 2005, 2007 Thomas Zander - * - * This library is free software; you can redistribute it and/or - * modify it under the terms of the GNU Library General Public - * License as published by the Free Software Foundation; either - * version 2 of the License, or (at your option) any later version. - * - * This library is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - * Library General Public License for more details. - * - * You should have received a copy of the GNU Library General Public License - * along with this library; see the file COPYING.LIB. If not, write to - * the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, - * Boston, MA 02110-1301, USA. - */ - -#include "KWStatistics.h" -#include "Words.h" -#include "KWDocument.h" -#include "frames/KWFrame.h" -#include "frames/KWFrameSet.h" -#include "frames/KWTextFrameSet.h" - -#include -#include -#include - -#include -#include -#include -#include - -KWStatistics::KWStatistics(KoCanvasResourceManager *provider, KWDocument *document, KoSelection *selection, QWidget *parent) - : QWidget(parent), - m_resourceManager(provider), - m_selection(selection), - m_document(document), - m_textDocument(0), - m_timer(0), - m_charsWithSpace(0), - m_charsWithoutSpace(0), - m_words(0), - m_sentences(0), - m_lines(0), - m_syllables(0), - m_paragraphs(0), - m_autoUpdate(true) -{ - m_showInDocker = true; - m_autoUpdate = false; - m_timer = new QTimer(this); - m_timer->setInterval(2000); // make the interval configurable? - m_timer->setSingleShot(true); - widgetDocker.setupUi(this); - widgetDocker.refresh->setIcon(KIcon("view-refresh")); - - connect(widgetDocker.refresh, SIGNAL(pressed()), this, SLOT(updateData())); - connect(widgetDocker.autoRefresh, SIGNAL(stateChanged(int)), this, SLOT(setAutoUpdate(int))); - connect(m_selection, SIGNAL(selectionChanged()), this, SLOT(selectionChanged())); - connect(m_timer, SIGNAL(timeout()), this, SLOT(updateData())); -} - -void KWStatistics::updateData() -{ - m_charsWithSpace = 0; - m_charsWithoutSpace = 0; - m_words = 0; - m_sentences = 0; - m_lines = 0; - m_syllables = 0; - m_paragraphs = 0; - m_cjkChars = 0; - - // parts of words for better counting of syllables: - // (only use reg exp if necessary -> speed up) - - QStringList subs_syl; - subs_syl << "cial" << "tia" << "cius" << "cious" << "giu" << "ion" << "iou"; - QStringList subs_syl_regexp; - subs_syl_regexp << "sia$" << "ely$"; - - QStringList add_syl; - add_syl << "ia" << "riet" << "dien" << "iu" << "io" << "ii"; - QStringList add_syl_regexp; - add_syl_regexp << "[aeiouym]bl$" << "[aeiou]{3}" << "^mc" << "ism$" - << "[^l]lien" << "^coa[dglx]." << "[^gq]ua[^auieo]" << "dnt$"; - - bool footEnd = m_showInDocker ? !widgetDocker.footEndNotes->isChecked() : widget.footEndNotes->isChecked(); - - foreach (KWFrameSet *fs, m_document->frameSets()) { - KWTextFrameSet *tfs = dynamic_cast(fs); - if (tfs == 0) continue; - if (m_showInDocker && (!(footEnd || - (tfs->textFrameSetType() == Words::MainTextFrameSet || - tfs->textFrameSetType() == Words::OtherTextFrameSet)))) - continue; - else if (!(footEnd || (tfs->textFrameSetType() == Words::MainTextFrameSet || - tfs->textFrameSetType() == Words::OtherTextFrameSet))) - continue; - QTextDocument *doc = tfs->document(); - QTextBlock block = doc->begin(); - while (block.isValid()) { - m_paragraphs += 1; - m_charsWithSpace += block.text().length(); - m_charsWithoutSpace += block.text().length() - block.text().count(QRegExp("\\s")); - if (block.layout()) - m_lines += block.layout()->lineCount(); - m_cjkChars += countCJKChars(block.text()); - - QString s = block.text(); - - // Syllable and Word count - // Algorithm mostly taken from Greg Fast's Lingua::EN::Syllable module for Perl. - // This guesses correct for 70-90% of English words, but the overall value - // is quite good, as some words get a number that's too high and others get - // one that's too low. - // IMPORTANT: please test any changes against demos/statistics.kwd - QRegExp re("\\s+"); - const QStringList wordlist = s.split(re, QString::SkipEmptyParts); - m_words += wordlist.count(); - re.setCaseSensitivity(Qt::CaseInsensitive); - for (QStringList::ConstIterator it1 = wordlist.begin(); it1 != wordlist.end(); ++it1) { - QString word1 = *it1; - QString word = *it1; - re.setPattern("[!?.,:_\"-]"); // clean word from punctuation - word.remove(re); - if (word.length() <= 3) { // extension to the original algorithm - m_syllables++; - continue; - } - re.setPattern("e$"); - word.remove(re); - re.setPattern("[^aeiouy]+"); - QStringList syls = word.split(re, QString::SkipEmptyParts); - int word_syllables = 0; - for (QStringList::Iterator it = subs_syl.begin(); it != subs_syl.end(); ++it) { - if (word.indexOf(*it, 0, Qt::CaseInsensitive) != -1) - word_syllables--; - } - for (QStringList::Iterator it = subs_syl_regexp.begin(); it != subs_syl_regexp.end(); ++it) { - re.setPattern(*it); - if (word.indexOf(re) != -1) - word_syllables--; - } - for (QStringList::Iterator it = add_syl.begin(); it != add_syl.end(); ++it) { - if (word.indexOf(*it, 0, Qt::CaseInsensitive) != -1) - word_syllables++; - } - for (QStringList::Iterator it = add_syl_regexp.begin(); it != add_syl_regexp.end(); ++it) { - re.setPattern(*it); - if (word.indexOf(re) != -1) - word_syllables++; - } - word_syllables += syls.count(); - if (word_syllables == 0) - word_syllables = 1; - m_syllables += word_syllables; - } - re.setCaseSensitivity(Qt::CaseSensitive); - - block = block.next(); - - // Sentence count - // Clean up for better result, destroys the original text but we only want to count - s = s.trimmed(); - if (s.isEmpty()) - continue; - QChar lastchar = s.at(s.length() - 1); - if (! s.isEmpty() && lastchar != QChar('.') && lastchar != QChar('?') && lastchar != QChar('!')) { // e.g. for headlines - s = s + '.'; - } - re.setPattern("[.?!]+"); // count "..." as only one "." - s.replace(re, "."); - re.setPattern("\\d\\.\\d"); // don't count floating point numbers as sentences - s.replace(re, "0,0"); - re.setPattern("[A-Z]\\.+"); // don't count "U.S.A." as three sentences - s.replace(re, "*"); - for (int i = 0 ; i < s.length(); ++i) { - QChar ch = s[i]; - if (ch == QChar('.') || ch == QChar('?') || ch == QChar('!')) - ++m_sentences; - } - } - } - - if (m_showInDocker) - updateDataUi(); -} - -void KWStatistics::updateDataUi() -{ - // calculate Flesch reading ease score: - float flesch_score = 0; - if (m_words > 0 && m_sentences > 0) - flesch_score = 206.835 - (1.015 * (m_words / m_sentences)) - (84.6 * m_syllables / m_words); - QString flesch = KGlobal::locale()->formatNumber(flesch_score); - - if (m_showInDocker) { - int currentIndex = widgetDocker.statistics->currentIndex(); - QString newText; - if (currentIndex == 0) - newText = KGlobal::locale()->formatNumber(m_words, 0); - else if (currentIndex == 1) - newText = KGlobal::locale()->formatNumber(m_sentences, 0); - else if (currentIndex == 2) - newText = KGlobal::locale()->formatNumber(m_syllables, 0); - else if (currentIndex == 3) - newText = KGlobal::locale()->formatNumber(m_lines, 0); - else if (currentIndex == 4) - newText = KGlobal::locale()->formatNumber(m_charsWithSpace, 0); - else if (currentIndex == 5) - newText = KGlobal::locale()->formatNumber(m_charsWithoutSpace, 0); - else if (currentIndex == 6) - newText = KGlobal::locale()->formatNumber(m_cjkChars, 0); - else if (currentIndex == 7) - newText = flesch; - - int top, bottom, left, right; - widgetDocker.count->getTextMargins(&left, &top, &right, &bottom); - const int minWidth = widgetDocker.count->fontMetrics().width(newText); - widgetDocker.count->setMinimumSize(10 + minWidth + left + right, widgetDocker.count->minimumSize().height()); - widgetDocker.count->setText(newText); - } else { - // tab 1 - widget.pages->setText( - KGlobal::locale()->formatNumber(m_resourceManager->intResource(Words::CurrentPageCount), 0)); - widget.frames->setText( - KGlobal::locale()->formatNumber(m_resourceManager->intResource(Words::CurrentFrameSetCount), 0)); - widget.pictures->setText( - KGlobal::locale()->formatNumber(m_resourceManager->intResource(Words::CurrentPictureCount), 0)); - widget.tables->setText( - KGlobal::locale()->formatNumber(m_resourceManager->intResource(Words::CurrentTableCount), 0)); - - // tab 2 - widget.words->setText(KGlobal::locale()->formatNumber(m_words, 0)); - widget.sentences->setText(KGlobal::locale()->formatNumber(m_sentences, 0)); - widget.syllables->setText(KGlobal::locale()->formatNumber(m_syllables, 0)); - widget.lines->setText(KGlobal::locale()->formatNumber(m_lines, 0)); - widget.characters->setText(KGlobal::locale()->formatNumber(m_charsWithSpace, 0)); - widget.characters2->setText(KGlobal::locale()->formatNumber(m_charsWithoutSpace, 0)); - widget.cjkChars->setText(KGlobal::locale()->formatNumber(m_cjkChars, 0)); - if (m_words < 200) // a kind of warning if too few words: - flesch = i18n("approximately %1", flesch); - widget.flesch->setText(flesch); - } -} - -void KWStatistics::setAutoUpdate(int state) -{ - if (state == Qt::Checked) { - m_autoUpdate = true; - connect(m_textDocument, SIGNAL(contentsChanged()), m_timer, SLOT(start())); - updateData(); - } else { - m_autoUpdate = false; - disconnect(m_textDocument, SIGNAL(contentsChanged()), m_timer, SLOT(start())); - } - if (m_showInDocker) - widgetDocker.refresh->setVisible(!m_autoUpdate); -} - -void KWStatistics::selectionChanged() -{ - if (m_selection->count() != 1) - return; - - KoShape *shape = m_selection->firstSelectedShape(); - if (!shape) return; - KWFrame *frame = dynamic_cast(shape->applicationData()); - if (!frame) return; // you can have embedded shapes selected, in that case it surely is no text frameset. - KWTextFrameSet *fs = dynamic_cast(frame->frameSet()); - if (fs) { - if (m_textDocument && m_autoUpdate) - disconnect(m_textDocument, SIGNAL(contentsChanged()), m_timer, SLOT(start())); - m_textDocument = fs->document(); - if (m_autoUpdate) - connect(m_textDocument, SIGNAL(contentsChanged()), m_timer, SLOT(start())); - } -} - -int KWStatistics::countCJKChars(const QString &text) -{ - int count = 0; - - QString::const_iterator it; - for (it = text.constBegin(); it != text.constEnd(); ++it) { - QChar qChar = *it; - /* - * CJK punctuations: 0x3000 - 0x303F (but I believe we shouldn't include this in the statistics) - * Hiragana: 0x3040 - 0x309F - * Katakana: 0x30A0 - 0x30FF - * CJK Unified Ideographs: 4E00 - 9FFF (Chinese Traditional & Simplified, Kanji and Hanja - * Hangul: 0xAC00 - 0xD7AF - */ - if ((qChar >= 0x3040 && qChar <= 0x309F) - || (qChar >= 0x30A0 && qChar <= 0x30FF) - || (qChar >= 0x4E00 && qChar <= 0x9FFF) - || (qChar >= 0xAC00 && qChar <= 0xD7AF)) { - count++; - } - } - - return count; -} - diff -Nru calligra-2.3.86/words/part/dialogs/KWStatisticsDialog.cpp calligra-2.3.87/words/part/dialogs/KWStatisticsDialog.cpp --- calligra-2.3.86/words/part/dialogs/KWStatisticsDialog.cpp 2012-01-07 03:25:03.000000000 +0000 +++ calligra-2.3.87/words/part/dialogs/KWStatisticsDialog.cpp 1970-01-01 00:00:00.000000000 +0000 @@ -1,38 +0,0 @@ -/* This file is part of the KDE project - * Copyright (C) 2006-2007 Thomas Zander - * Copyright (C) 2010 Boudewijn Rempt - * - * This library is free software; you can redistribute it and/or - * modify it under the terms of the GNU Library General Public - * License as published by the Free Software Foundation; either - * version 2 of the License, or (at your option) any later version. - * - * This library is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - * Library General Public License for more details. - * - * You should have received a copy of the GNU Library General Public License - * along with this library; see the file COPYING.LIB. If not, write to - * the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, - * Boston, MA 02110-1301, USA. - */ - -#include "KWStatisticsDialog.h" -#include "KWStatistics.h" -#include "KWView.h" -#include "KWCanvas.h" - -KWStatisticsDialog::KWStatisticsDialog(KWView *parent) - : KDialog(parent) -{ - setCaption(i18n("Statistics")); - setButtons(KDialog::Close); - setDefaultButton(KDialog::Close); - setMainWidget(new KWStatistics(parent->canvasBase()->resourceManager(), parent->kwdocument(), 0, this)); -} - -KWStatisticsDialog::~KWStatisticsDialog() -{ -} - diff -Nru calligra-2.3.86/words/part/dialogs/KWStatisticsDialog.h calligra-2.3.87/words/part/dialogs/KWStatisticsDialog.h --- calligra-2.3.86/words/part/dialogs/KWStatisticsDialog.h 2012-01-07 03:25:03.000000000 +0000 +++ calligra-2.3.87/words/part/dialogs/KWStatisticsDialog.h 1970-01-01 00:00:00.000000000 +0000 @@ -1,39 +0,0 @@ -/* This file is part of the KDE project - * Copyright (C) 2006-2007 Thomas Zander - * - * This library is free software; you can redistribute it and/or - * modify it under the terms of the GNU Library General Public - * License as published by the Free Software Foundation; either - * version 2 of the License, or (at your option) any later version. - * - * This library is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - * Library General Public License for more details. - * - * You should have received a copy of the GNU Library General Public License - * along with this library; see the file COPYING.LIB. If not, write to - * the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, - * Boston, MA 02110-1301, USA. - */ - -#ifndef KWSTATISTICSDIALOG_H -#define KWSTATISTICSDIALOG_H - -#include - -class KWView; - -class KWStatisticsDialog : public KDialog -{ - Q_OBJECT -public: - /** - * Constructor. - * @param parent a parent widget for the purpose of centering the dialog - */ - KWStatisticsDialog(KWView *parent); - ~KWStatisticsDialog(); -}; - -#endif diff -Nru calligra-2.3.86/words/part/dialogs/KWStatistics.h calligra-2.3.87/words/part/dialogs/KWStatistics.h --- calligra-2.3.86/words/part/dialogs/KWStatistics.h 2012-01-07 03:25:03.000000000 +0000 +++ calligra-2.3.87/words/part/dialogs/KWStatistics.h 1970-01-01 00:00:00.000000000 +0000 @@ -1,73 +0,0 @@ -/* This file is part of the KDE project - * Copyright (C) 2005, 2007 Thomas Zander - * - * This library is free software; you can redistribute it and/or - * modify it under the terms of the GNU Library General Public - * License as published by the Free Software Foundation; either - * version 2 of the License, or (at your option) any later version. - * - * This library is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - * Library General Public License for more details. - * - * You should have received a copy of the GNU Library General Public License - * along with this library; see the file COPYING.LIB. If not, write to - * the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, - * Boston, MA 02110-1301, USA. - */ - -#ifndef KWSTATISTICS_H -#define KWSTATISTICS_H - -#include -#include - -#include - -class QTimer; -class QTextDocument; -class KoCanvasResourceManager; -class KoSelection; -class KWDocument; - -class KWStatistics : public QWidget -{ - Q_OBJECT -public: - KWStatistics(KoCanvasResourceManager *provider, KWDocument *m_document, - KoSelection *selection = 0, QWidget *parent = 0); - -private slots: - - void updateData(); - void updateDataUi(); - void setAutoUpdate(int); - void selectionChanged(); - -private: - int countCJKChars(const QString &text); - -private: - Ui::KWStatistics widget; - Ui::KWStatisticsDocker widgetDocker; - KoCanvasResourceManager *m_resourceManager; - KoSelection *m_selection; - KWDocument *m_document; - QTextDocument *m_textDocument; - QTimer *m_timer; - - long m_charsWithSpace; - long m_charsWithoutSpace; - long m_words; - long m_sentences; - long m_lines; - long m_syllables; - long m_paragraphs; - long m_cjkChars; - - bool m_autoUpdate; - bool m_showInDocker; -}; - -#endif diff -Nru calligra-2.3.86/words/part/dialogs/KWStatistics.ui calligra-2.3.87/words/part/dialogs/KWStatistics.ui --- calligra-2.3.86/words/part/dialogs/KWStatistics.ui 2012-01-07 03:25:03.000000000 +0000 +++ calligra-2.3.87/words/part/dialogs/KWStatistics.ui 1970-01-01 00:00:00.000000000 +0000 @@ -1,383 +0,0 @@ - - - KWStatistics - - - - 0 - 0 - 400 - 317 - - - - - 0 - - - - - 1 - - - - General - - - - - - Number of pages: - - - - - - - Qt::Horizontal - - - - 40 - 20 - - - - - - - - - - - Number of frames: - - - - - - - Qt::Horizontal - - - - 40 - 20 - - - - - - - - - - - Number of pictures: - - - - - - - Qt::Horizontal - - - - 40 - 20 - - - - - - - - - - - Number of tables: - - - - - - - Qt::Horizontal - - - - 40 - 20 - - - - - - - - - - - Qt::Vertical - - - - 201 - 40 - - - - - - - - - Text - - - - - - Include text from foot- and endnotes - - - - - - - Words: - - - - - - - Qt::Horizontal - - - - 40 - 20 - - - - - - - - Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter - - - - - - - Sentences: - - - - - - - Qt::Horizontal - - - - 40 - 20 - - - - - - - - Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter - - - - - - - Syllables: - - - - - - - Qt::Horizontal - - - - 40 - 20 - - - - - - - - Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter - - - - - - - Lines: - - - - - - - Qt::Horizontal - - - - 40 - 20 - - - - - - - - Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter - - - - - - - Characters including spaces: - - - - - - - Qt::Horizontal - - - - 40 - 20 - - - - - - - - Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter - - - - - - - Characters without spaces: - - - - - - - Qt::Horizontal - - - - 40 - 20 - - - - - - - - Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter - - - - - - - East Asian characters - - - - - - - Qt::Horizontal - - - - 183 - 20 - - - - - - - - Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter - - - - - - - Flesch reading ease: - - - - - - - Qt::Horizontal - - - - 40 - 20 - - - - - - - - Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter - - - - - - - Qt::Vertical - - - - 20 - 40 - - - - - - - - - - - - - diff -Nru calligra-2.3.86/words/part/dockers/KWStatistics.cpp calligra-2.3.87/words/part/dockers/KWStatistics.cpp --- calligra-2.3.86/words/part/dockers/KWStatistics.cpp 1970-01-01 00:00:00.000000000 +0000 +++ calligra-2.3.87/words/part/dockers/KWStatistics.cpp 2012-01-28 07:04:49.000000000 +0000 @@ -0,0 +1,464 @@ +/* This file is part of the KDE project + * Copyright (C) 2005, 2007 Thomas Zander + * Copyright (C) 2012 Shreya Pandit + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU Library General Public + * License as published by the Free Software Foundation; either + * version 2 of the License, or (at your option) any later version. + * + * This library is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + * Library General Public License for more details. + * + * You should have received a copy of the GNU Library General Public License + * along with this library; see the file COPYING.LIB. If not, write to + * the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, + * Boston, MA 02110-1301, USA. + */ + +#include "KWStatistics.h" + +#include "Words.h" +#include "KWDocument.h" +#include "frames/KWFrame.h" +#include "frames/KWFrameSet.h" +#include "frames/KWTextFrameSet.h" +#include +#include "dockers/StatisticsPreferencesPopup.h" +#include +#include +#include + +#include +#include +#include +#include + +KWStatistics::KWStatistics(KoCanvasResourceManager *provider, KWDocument *document, KoSelection *selection, QWidget *parent) + : QWidget(parent), + m_resourceManager(provider), + m_selection(selection), + m_document(document), + m_textDocument(0), + m_timer(0), + m_charsWithSpace(0), + m_charsWithoutSpace(0), + m_words(0), + m_sentences(0), + m_lines(0), + m_syllables(0), + m_paragraphs(0) + +{ + m_showInDocker = true; + m_timer = new QTimer(this); + m_timer->start(2500); + widgetDocker.setupUi(this); + m_menu = new StatisticsPreferencesPopup(widgetDocker.preferences); + widgetDocker.preferences->setMenu(m_menu); + widgetDocker.preferences->setPopupMode(QToolButton::InstantPopup); + + connect(m_timer, SIGNAL(timeout()), this, SLOT(updateData())); + connect(widgetDocker.preferences, SIGNAL(clicked()), widgetDocker.preferences, SLOT(showMenu())); + connect(m_menu, SIGNAL(wordsDisplayChange(int)), this, SLOT(wordsDisplayChanged(int))); + connect(m_menu, SIGNAL(sentencesDisplayChange(int)), this, SLOT(sentencesDisplayChanged(int))); + connect(m_menu, SIGNAL(linesDisplayChange(int)), this, SLOT(linesDisplayChanged(int))); + connect(m_menu, SIGNAL(syllablesDisplayChange(int)), this, SLOT(syllablesDisplayChanged(int))); + connect(m_menu, SIGNAL(charspaceDisplayChange(int)), this, SLOT(charspaceDisplayChanged(int))); + connect(m_menu, SIGNAL(charnospaceDisplayChange(int)), this, SLOT(charnospaceDisplayChanged(int))); + connect(m_menu, SIGNAL(eastDisplayChange(int)), this, SLOT(eastDisplayChanged(int))); + connect(m_menu, SIGNAL(fleschDisplayChange(int)), this, SLOT(fleschDisplayChanged(int))); + + KConfigGroup cfgGroup = KGlobal::config()->group("Statistics"); + bool visible = cfgGroup.readEntry("WordsVisible", true); + widgetDocker.Words->setVisible(visible); + widgetDocker.count_words->setVisible(visible); + + visible = cfgGroup.readEntry("SentencesVisible", true); + widgetDocker.Sentences->setVisible(visible); + widgetDocker.count_sentences->setVisible(visible); + + visible = cfgGroup.readEntry("SyllablesVisible", true); + widgetDocker.Syllables->setVisible(visible); + widgetDocker.count_syllables->setVisible(visible); + + visible = cfgGroup.readEntry("LinesVisible", true); + widgetDocker.Lines->setVisible(visible); + widgetDocker.count_lines->setVisible(visible); + + visible = cfgGroup.readEntry("EastAsianCharactersVisible", true); + widgetDocker.Cjkchars->setVisible(visible); + widgetDocker.count_cjkchars->setVisible(visible); + + visible = cfgGroup.readEntry("FleschVisible", true); + widgetDocker.Flesch->setVisible(visible); + widgetDocker.count_flesch->setVisible(visible); + + visible = cfgGroup.readEntry("CharspacesVisible", true); + widgetDocker.spaces->setVisible(visible); + widgetDocker.count_spaces->setVisible(visible); + + visible = cfgGroup.readEntry("CharnospacesVisible", true); + widgetDocker.nospaces->setVisible(visible); + widgetDocker.count_nospaces->setVisible(visible); +} + +void KWStatistics::updateData() +{ + m_charsWithSpace = 0; + m_charsWithoutSpace = 0; + m_words = 0; + m_sentences = 0; + m_lines = 0; + m_syllables = 0; + m_paragraphs = 0; + m_cjkChars = 0; + + // parts of words for better counting of syllables: + // (only use reg exp if necessary -> speed up) + + QStringList subs_syl; + subs_syl << "cial" << "tia" << "cius" << "cious" << "giu" << "ion" << "iou"; + QStringList subs_syl_regexp; + subs_syl_regexp << "sia$" << "ely$"; + + QStringList add_syl; + add_syl << "ia" << "riet" << "dien" << "iu" << "io" << "ii"; + QStringList add_syl_regexp; + add_syl_regexp << "[aeiouym]bl$" << "[aeiou]{3}" << "^mc" << "ism$" + << "[^l]lien" << "^coa[dglx]." << "[^gq]ua[^auieo]" << "dnt$"; + + foreach (KWFrameSet *fs, m_document->frameSets()) { + KWTextFrameSet *tfs = dynamic_cast(fs); + if (tfs == 0) continue; + + QTextDocument *doc = tfs->document(); + QTextBlock block = doc->begin(); + while (block.isValid()) { + m_paragraphs += 1; + m_charsWithSpace += block.text().length(); + m_charsWithoutSpace += block.text().length() - block.text().count(QRegExp("\\s")); + if (block.layout()) + m_lines += block.layout()->lineCount(); + m_cjkChars += countCJKChars(block.text()); + + QString s = block.text(); + + // Syllable and Word count + // Algorithm mostly taken from Greg Fast's Lingua::EN::Syllable module for Perl. + // This guesses correct for 70-90% of English words, but the overall value + // is quite good, as some words get a number that's too high and others get + // one that's too low. + // IMPORTANT: please test any changes against demos/statistics.kwd + QRegExp re("\\s+"); + const QStringList wordlist = s.split(re, QString::SkipEmptyParts); + m_words += wordlist.count(); + re.setCaseSensitivity(Qt::CaseInsensitive); + for (QStringList::ConstIterator it1 = wordlist.begin(); it1 != wordlist.end(); ++it1) { + QString word1 = *it1; + QString word = *it1; + re.setPattern("[!?.,:_\"-]"); // clean word from punctuation + word.remove(re); + if (word.length() <= 3) { // extension to the original algorithm + m_syllables++; + continue; + } + re.setPattern("e$"); + word.remove(re); + re.setPattern("[^aeiouy]+"); + QStringList syls = word.split(re, QString::SkipEmptyParts); + int word_syllables = 0; + for (QStringList::Iterator it = subs_syl.begin(); it != subs_syl.end(); ++it) { + if (word.indexOf(*it, 0, Qt::CaseInsensitive) != -1) + word_syllables--; + } + for (QStringList::Iterator it = subs_syl_regexp.begin(); it != subs_syl_regexp.end(); ++it) { + re.setPattern(*it); + if (word.indexOf(re) != -1) + word_syllables--; + } + for (QStringList::Iterator it = add_syl.begin(); it != add_syl.end(); ++it) { + if (word.indexOf(*it, 0, Qt::CaseInsensitive) != -1) + word_syllables++; + } + for (QStringList::Iterator it = add_syl_regexp.begin(); it != add_syl_regexp.end(); ++it) { + re.setPattern(*it); + if (word.indexOf(re) != -1) + word_syllables++; + } + word_syllables += syls.count(); + if (word_syllables == 0) + word_syllables = 1; + m_syllables += word_syllables; + } + re.setCaseSensitivity(Qt::CaseSensitive); + + block = block.next(); + + // Sentence count + // Clean up for better result, destroys the original text but we only want to count + s = s.trimmed(); + if (s.isEmpty()) + continue; + QChar lastchar = s.at(s.length() - 1); + if (! s.isEmpty() && lastchar != QChar('.') && lastchar != QChar('?') && lastchar != QChar('!')) { // e.g. for headlines + s = s + '.'; + } + re.setPattern("[.?!]+"); // count "..." as only one "." + s.replace(re, "."); + re.setPattern("\\d\\.\\d"); // don't count floating point numbers as sentences + s.replace(re, "0,0"); + re.setPattern("[A-Z]\\.+"); // don't count "U.S.A." as three sentences + s.replace(re, "*"); + for (int i = 0 ; i < s.length(); ++i) { + QChar ch = s[i]; + if (ch == QChar('.') || ch == QChar('?') || ch == QChar('!')) + ++m_sentences; + } + } + } + updateDataUi(); +} + +void KWStatistics::updateDataUi() +{ + // calculate Flesch reading ease score: + float flesch_score = 0; + if (m_words > 0 && m_sentences > 0) + flesch_score = 206.835 - (1.015 * (m_words / m_sentences)) - (84.6 * m_syllables / m_words); + QString flesch = KGlobal::locale()->formatNumber(flesch_score); + QString newText[8]; + newText[0] = KGlobal::locale()->formatNumber(m_words, 0); + widgetDocker.count_words->setText(newText[0]); + + newText[1] = KGlobal::locale()->formatNumber(m_sentences, 0); + widgetDocker.count_sentences->setText(newText[1]); + + newText[2] = KGlobal::locale()->formatNumber(m_syllables, 0); + widgetDocker.count_syllables->setText(newText[2]); + + newText[3] = KGlobal::locale()->formatNumber(m_lines, 0); + widgetDocker.count_lines->setText(newText[3]); + + newText[4] = KGlobal::locale()->formatNumber(m_charsWithSpace, 0); + widgetDocker.count_spaces->setText(newText[4]); + + newText[5] = KGlobal::locale()->formatNumber(m_charsWithoutSpace, 0); + widgetDocker.count_nospaces->setText(newText[5]); + + newText[6] = KGlobal::locale()->formatNumber(m_cjkChars, 0); + widgetDocker.count_cjkchars->setText(newText[6]); + + newText[7] = flesch; + widgetDocker.count_flesch->setText(newText[7]); +} + + +void KWStatistics::selectionChanged() +{ + if (m_selection->count() != 1) + return; + + KoShape *shape = m_selection->firstSelectedShape(); + if (!shape) return; + KWFrame *frame = dynamic_cast(shape->applicationData()); + if (!frame) return; // you can have embedded shapes selected, in that case it surely is no text frameset. + KWTextFrameSet *fs = dynamic_cast(frame->frameSet()); + if (fs) { + if (m_textDocument) + disconnect(m_textDocument, SIGNAL(contentsChanged()), m_timer, SLOT(start())); + m_textDocument = fs->document(); + + } +} + +int KWStatistics::countCJKChars(const QString &text) +{ + int count = 0; + + QString::const_iterator it; + for (it = text.constBegin(); it != text.constEnd(); ++it) { + QChar qChar = *it; + /* + * CJK punctuations: 0x3000 - 0x303F (but I believe we shouldn't include this in the statistics) + * Hiragana: 0x3040 - 0x309F + * Katakana: 0x30A0 - 0x30FF + * CJK Unified Ideographs: 4E00 - 9FFF (Chinese Traditional & Simplified, Kanji and Hanja + * Hangul: 0xAC00 - 0xD7AF + */ + if ((qChar >= 0x3040 && qChar <= 0x309F) + || (qChar >= 0x30A0 && qChar <= 0x30FF) + || (qChar >= 0x4E00 && qChar <= 0x9FFF) + || (qChar >= 0xAC00 && qChar <= 0xD7AF)) { + count++; + } + } + + return count; +} + +void KWStatistics::wordsDisplayChanged(int state) +{ KConfigGroup cfgGroup = KGlobal::config()->group("Statistics"); + switch (state) { + case Qt::Checked: + widgetDocker.Words->show(); + widgetDocker.count_words->show(); + cfgGroup.writeEntry("WordsVisible",true); + cfgGroup.sync(); + break; + case Qt::Unchecked: + widgetDocker.Words->hide(); + widgetDocker.count_words->hide(); + cfgGroup.writeEntry("WordsVisible",false); + cfgGroup.sync(); + break; + default: + break; + } +} + +void KWStatistics::sentencesDisplayChanged(int state) +{ + KConfigGroup cfgGroup = KGlobal::config()->group("Statistics"); + switch (state) { + case Qt::Checked: + widgetDocker.Sentences->show(); + widgetDocker.count_sentences->show(); + cfgGroup.writeEntry("SentencesVisible",true); + cfgGroup.sync(); + break; + case Qt::Unchecked: + widgetDocker.Sentences->hide(); + widgetDocker.count_sentences->hide(); + cfgGroup.writeEntry("SentencesVisible",false); + cfgGroup.sync(); + break; + default: + break; + } +} + +void KWStatistics::linesDisplayChanged(int state) +{ + KConfigGroup cfgGroup = KGlobal::config()->group("Statistics"); + switch (state) { + case Qt::Checked: + widgetDocker.Lines->show(); + widgetDocker.count_lines->show(); + cfgGroup.writeEntry("LinesVisible",true); + cfgGroup.sync(); + break; + case Qt::Unchecked: + widgetDocker.Lines->hide(); + widgetDocker.count_lines->hide(); + cfgGroup.writeEntry("LinesVisible",false); + cfgGroup.sync(); + break; + default: + break; + } +} +void KWStatistics::syllablesDisplayChanged(int state) +{ + KConfigGroup cfgGroup = KGlobal::config()->group("Statistics"); + switch (state) { + case Qt::Checked: + widgetDocker.Syllables->show(); + widgetDocker.count_syllables->show(); + cfgGroup.writeEntry("SyllablesVisible",true); + cfgGroup.sync(); + break; + case Qt::Unchecked: + widgetDocker.Syllables->hide(); + widgetDocker.count_syllables->hide(); + cfgGroup.writeEntry("SyllablesVisible",false); + cfgGroup.sync(); + break; + default: + break; + } +} +void KWStatistics::charspaceDisplayChanged(int state) +{ + KConfigGroup cfgGroup = KGlobal::config()->group("Statistics"); + switch (state) { + case Qt::Checked: + widgetDocker.spaces->show(); + widgetDocker.count_spaces->show(); + cfgGroup.writeEntry("CharspacesVisible",true); + cfgGroup.sync(); + break; + case Qt::Unchecked: + widgetDocker.spaces->hide(); + widgetDocker.count_spaces->hide(); + cfgGroup.writeEntry("CharspacesVisible",false); + cfgGroup.sync(); + break; + default: + break; + } +} + +void KWStatistics::charnospaceDisplayChanged(int state) +{ + KConfigGroup cfgGroup = KGlobal::config()->group("Statistics"); + switch (state) { + case Qt::Checked: + widgetDocker.nospaces->show(); + widgetDocker.count_nospaces->show(); + cfgGroup.writeEntry("CharnospacesVisible",true); + cfgGroup.sync(); + break; + case Qt::Unchecked: + widgetDocker.nospaces->hide(); + widgetDocker.count_nospaces->hide(); + cfgGroup.writeEntry("CharnospacesVisible",false); + cfgGroup.sync(); + break; + default: + break; + } +} +void KWStatistics::eastDisplayChanged(int state) +{ + KConfigGroup cfgGroup = KGlobal::config()->group("Statistics"); + switch (state) { + case Qt::Checked: + widgetDocker.Cjkchars->show(); + widgetDocker.count_cjkchars->show(); + cfgGroup.writeEntry("EastAsianCharactersVisible",true); + cfgGroup.sync(); + break; + case Qt::Unchecked: + widgetDocker.Cjkchars->hide(); + widgetDocker.count_cjkchars->hide(); + cfgGroup.writeEntry("EastAsianCharactersVisible",false); + cfgGroup.sync(); + break; + default: + break; + } +} +void KWStatistics::fleschDisplayChanged(int state) +{ + KConfigGroup cfgGroup = KGlobal::config()->group("Statistics"); + switch (state) { + case Qt::Checked: + widgetDocker.Flesch->show(); + widgetDocker.count_flesch->show(); + cfgGroup.writeEntry("FleschVisible",true); + cfgGroup.sync(); + break; + case Qt::Unchecked: + widgetDocker.Flesch->hide(); + widgetDocker.count_flesch->hide(); + cfgGroup.writeEntry("FleschVisible",false); + cfgGroup.sync(); + break; + default: + break; + } +} + + diff -Nru calligra-2.3.86/words/part/dockers/KWStatisticsDocker.cpp calligra-2.3.87/words/part/dockers/KWStatisticsDocker.cpp --- calligra-2.3.86/words/part/dockers/KWStatisticsDocker.cpp 2012-01-07 03:25:03.000000000 +0000 +++ calligra-2.3.87/words/part/dockers/KWStatisticsDocker.cpp 2012-01-28 07:04:49.000000000 +0000 @@ -21,7 +21,8 @@ #include "KWStatisticsDocker.h" #include "KWCanvas.h" -#include "dialogs/KWStatistics.h" +#include "dockers/KWStatistics.h" + #include #include @@ -32,6 +33,7 @@ KWStatisticsDocker::KWStatisticsDocker() { + m_canvasReset = false; setWindowTitle(i18n("Statistics")); } @@ -44,12 +46,12 @@ KWCanvas *canvas = dynamic_cast(_canvas); - if (!canvas) { - delete widget(); - } - QWidget *wdg = widget(); - delete wdg; + if (wdg) { + delete wdg; + m_canvasReset = true; + } else + m_canvasReset = false; KWStatistics *statistics = new KWStatistics(canvas->resourceManager(), canvas->document(), @@ -61,7 +63,10 @@ void KWStatisticsDocker::unsetCanvas() { - delete widget(); + if (!m_canvasReset) { + delete widget(); + setWidget(0); + } } KWStatisticsDockerFactory::KWStatisticsDockerFactory() diff -Nru calligra-2.3.86/words/part/dockers/KWStatisticsDocker.h calligra-2.3.87/words/part/dockers/KWStatisticsDocker.h --- calligra-2.3.86/words/part/dockers/KWStatisticsDocker.h 2012-01-07 03:25:03.000000000 +0000 +++ calligra-2.3.87/words/part/dockers/KWStatisticsDocker.h 2012-01-28 07:04:49.000000000 +0000 @@ -38,6 +38,8 @@ virtual void setCanvas(KoCanvasBase *canvas); virtual void unsetCanvas(); +private: + bool m_canvasReset; }; class KWStatisticsDockerFactory : public KoDockFactoryBase diff -Nru calligra-2.3.86/words/part/dockers/KWStatisticsDocker.ui calligra-2.3.87/words/part/dockers/KWStatisticsDocker.ui --- calligra-2.3.86/words/part/dockers/KWStatisticsDocker.ui 2012-01-07 03:25:03.000000000 +0000 +++ calligra-2.3.87/words/part/dockers/KWStatisticsDocker.ui 2012-01-28 07:04:49.000000000 +0000 @@ -6,104 +6,163 @@ 0 0 - 319 - 106 + 263 + 198 - - - - 0 + + + + Sentences: + + + Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter + + + + + + + Syllables: + + + Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter + + + + + + + Lines: + + + Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter + + + + + + + Characters (including spaces): + + + Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter + + + + + + + Characters (excluding spaces): + + + Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter + + + + + + + East Asian characters: + + + Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter - - - Words - - - - - Sentences - - - - - Syllables - - - - - Lines - - - - - Characters incl. spaces - - - - - Characters without spaces - - - - - East Asian characters - - - - - Flesch reading ease - - - - + + - 0 + Flesch Reading Ease: - - false + + Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter + + + + + + + Words: Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter - - true + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + - - + + - ... + - - + + - Automatically update + - - + + - Only count main text + Preferences - + Qt::Vertical - 1 - 1 + 20 + 40 diff -Nru calligra-2.3.86/words/part/dockers/KWStatistics.h calligra-2.3.87/words/part/dockers/KWStatistics.h --- calligra-2.3.86/words/part/dockers/KWStatistics.h 1970-01-01 00:00:00.000000000 +0000 +++ calligra-2.3.87/words/part/dockers/KWStatistics.h 2012-01-28 07:04:49.000000000 +0000 @@ -0,0 +1,81 @@ +/* This file is part of the KDE project + * Copyright (C) 2005, 2007 Thomas Zander + * Copyright (C) 2012 Shreya Pandit + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU Library General Public + * License as published by the Free Software Foundation; either + * version 2 of the License, or (at your option) any later version. + * + * This library is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + * Library General Public License for more details. + * + * You should have received a copy of the GNU Library General Public License + * along with this library; see the file COPYING.LIB. If not, write to + * the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, + * Boston, MA 02110-1301, USA. + */ + +#ifndef KWSTATISTICS_H +#define KWSTATISTICS_H + + +#include + +#include + +#include + +class QTimer; +class QTextDocument; +class KoCanvasResourceManager; +class KoSelection; +class KWDocument; +class StatisticsPreferencesPopup; +class KConfigGroup; + +class KWStatistics : public QWidget +{ + Q_OBJECT +public: + KWStatistics(KoCanvasResourceManager *provider, KWDocument *m_document, + KoSelection *selection = 0, QWidget *parent = 0); + + void updateDataUi(); + +public slots: + void wordsDisplayChanged(int); + void sentencesDisplayChanged(int); + void linesDisplayChanged(int); + void syllablesDisplayChanged(int); + void charspaceDisplayChanged(int); + void charnospaceDisplayChanged(int); + void eastDisplayChanged(int); + void fleschDisplayChanged(int); + void updateData(); + void selectionChanged(); + +private: + int countCJKChars(const QString &text); + Ui::KWStatisticsDocker widgetDocker; + + KoCanvasResourceManager *m_resourceManager; + KoSelection *m_selection; + KWDocument *m_document; + QTextDocument *m_textDocument; + QTimer *m_timer; + StatisticsPreferencesPopup *m_menu; + + long m_charsWithSpace; + long m_charsWithoutSpace; + long m_words; + long m_sentences; + long m_lines; + long m_syllables; + long m_paragraphs; + long m_cjkChars; + bool m_showInDocker; +}; + +#endif diff -Nru calligra-2.3.86/words/part/dockers/StatisticsPreferencesPopup.cpp calligra-2.3.87/words/part/dockers/StatisticsPreferencesPopup.cpp --- calligra-2.3.86/words/part/dockers/StatisticsPreferencesPopup.cpp 1970-01-01 00:00:00.000000000 +0000 +++ calligra-2.3.87/words/part/dockers/StatisticsPreferencesPopup.cpp 2012-01-28 07:04:49.000000000 +0000 @@ -0,0 +1,54 @@ +/* This file is part of the KDE project + * Copyright (C) 2012 Shreya Pandit + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU Library General Public + * License as published by the Free Software Foundation; either + * version 2 of the License, or (at your option) any later version. + * + * This library is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + * Library General Public License for more details. + * + * You should have received a copy of the GNU Library General Public License + * along with this library; see the file COPYING.LIB. If not, write to + * the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, + * Boston, MA 02110-1301, USA. + */ + +#include "StatisticsPreferencesPopup.h" +#include "ui_StatisticsPreferencesPopup.h" + +#include + +StatisticsPreferencesPopup::StatisticsPreferencesPopup(QWidget *parent) + : QMenu(parent) +{ + Ui::StatisticsPreferencesPopup *w = new Ui::StatisticsPreferencesPopup(); + + w->setupUi(this); + + w->check_words->setCheckState(Qt::Checked); + w->check_sentences->setCheckState(Qt::Checked); + w->check_lines->setCheckState(Qt::Checked); + w->check_syllables->setCheckState(Qt::Checked); + w->check_charspace->setCheckState(Qt::Checked); + w->check_charnospace->setCheckState(Qt::Checked); + w->check_east->setCheckState(Qt::Checked); + w->check_flesch->setCheckState(Qt::Checked); + connect(w->check_words, SIGNAL(stateChanged(int)), this, SIGNAL(wordsDisplayChange(int))); + connect(w->check_sentences, SIGNAL(stateChanged(int)), this, SIGNAL(sentencesDisplayChange(int))); + connect(w->check_syllables, SIGNAL(stateChanged(int)), this, SIGNAL(syllablesDisplayChange(int))); + connect(w->check_lines, SIGNAL(stateChanged(int)), this, SIGNAL(linesDisplayChange(int))); + connect(w->check_charspace, SIGNAL(stateChanged(int)), this, SIGNAL(charspaceDisplayChange(int))); + connect(w->check_charnospace, SIGNAL(stateChanged(int)), this, SIGNAL(charnospaceDisplayChange(int))); + connect(w->check_east, SIGNAL(stateChanged(int)), this, SIGNAL(eastDisplayChange(int))); + connect(w->check_flesch, SIGNAL(stateChanged(int)), this, SIGNAL(fleschDisplayChange(int))); +} + + +QSize StatisticsPreferencesPopup::sizeHint() const +{ + return layout()->sizeHint(); +} diff -Nru calligra-2.3.86/words/part/dockers/StatisticsPreferencesPopup.h calligra-2.3.87/words/part/dockers/StatisticsPreferencesPopup.h --- calligra-2.3.86/words/part/dockers/StatisticsPreferencesPopup.h 1970-01-01 00:00:00.000000000 +0000 +++ calligra-2.3.87/words/part/dockers/StatisticsPreferencesPopup.h 2012-01-28 07:04:49.000000000 +0000 @@ -0,0 +1,52 @@ +/* This file is part of the KDE project + * Copyright (C) 2012 Shreya Pandit + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU Library General Public + * License as published by the Free Software Foundation; either + * version 2 of the License, or (at your option) any later version. + * + * This library is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + * Library General Public License for more details. + * + * You should have received a copy of the GNU Library General Public License + * along with this library; see the file COPYING.LIB. If not, write to + * the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, + * Boston, MA 02110-1301, USA. + */ + +#ifndef STATISTICSPREFERENCESPOPUP_H +#define STATISTICSPREFERENCESPOPUP_H +#include +#include +#include + +class QMenu; + + +namespace Ui { + class StatisticsPreferencesPopup; +} + +class StatisticsPreferencesPopup : public QMenu +{ + Q_OBJECT +public: + StatisticsPreferencesPopup(QWidget *parent = 0); + virtual QSize sizeHint() const; + +signals: + void wordsDisplayChange(int); + void sentencesDisplayChange(int); + void syllablesDisplayChange(int); + void linesDisplayChange(int); + void charspaceDisplayChange(int); + void charnospaceDisplayChange(int); + void eastDisplayChange(int); + void fleschDisplayChange(int); +}; + +#endif // StatisticsPreferencesPopup_H + diff -Nru calligra-2.3.86/words/part/dockers/StatisticsPreferencesPopup.ui calligra-2.3.87/words/part/dockers/StatisticsPreferencesPopup.ui --- calligra-2.3.86/words/part/dockers/StatisticsPreferencesPopup.ui 1970-01-01 00:00:00.000000000 +0000 +++ calligra-2.3.87/words/part/dockers/StatisticsPreferencesPopup.ui 2012-01-28 07:04:49.000000000 +0000 @@ -0,0 +1,74 @@ + + + StatisticsPreferencesPopup + + + + 0 + 0 + 208 + 204 + + + + + + + Words + + + + + + + Sentences + + + + + + + Syllables + + + + + + + Lines + + + + + + + Characters With Spaces + + + + + + + Characters without spaces + + + + + + + East Asian characters + + + + + + + Flesch Reading Ease + + + + + + + + diff -Nru calligra-2.3.86/words/part/documentation/header and footer layout.txt calligra-2.3.87/words/part/documentation/header and footer layout.txt --- calligra-2.3.86/words/part/documentation/header and footer layout.txt 1970-01-01 00:00:00.000000000 +0000 +++ calligra-2.3.87/words/part/documentation/header and footer layout.txt 2012-01-28 07:04:49.000000000 +0000 @@ -0,0 +1,47 @@ +If the text is less than it tkaes to fill the min-height minus bottom-margin, then the header occupies the space anyway like this: + + ---------------------------- |-------------------------------| + | |HEADER TEXT | + | | | +min-height | ----- |-------------------------------| + | | + | | bottom-margin + ---------------------------- |-------------------------------| + |BODY TEXT BODY TEXT | + |BODY TEXT BODY TEXT | |BODY TEXT BODY TEXT | + + + + +If the header text takes up more space and NO dynamic spacing, then it pushes everything down and maintains the margin to the body: + + ---------------------------- |-------------------------------| + | |HEADER TEXT HEADER TEXT | + | |HEADER TEXT HEADER TEXT | +min-height | |HEADER TEXT HEADER TEXT | + | |HEADER TEXT HEADER TEXT | + | ---------------- |-------------------------------| + --------------------| + | bottom-margin + ---------------- |-------------------------------| + |BODY TEXT BODY TEXT | + |BODY TEXT BODY TEXT | + |BODY TEXT BODY TEXT | + + + +And if the header text takes up more space than minimum AND dynamic spacing, then the effective +margin crimps until there is nothing left. Here is an example where only the slightest of effective distance remains: + + ---------------------------- |-------------------------------| + | |HEADER TEXT HEADER TEXT | + | |HEADER TEXT HEADER TEXT | +min-height | ----- |HEADER TEXT HEADER TEXT | + | | |HEADER TEXT HEADER TEXT | + | | bottom-margin |-------------------------------| + ------------------------- |-------------------------------| + |BODY TEXT BODY TEXT | + |BODY TEXT BODY TEXT | + |BODY TEXT BODY TEXT | + + diff -Nru calligra-2.3.86/words/part/frames/KWFrameLayout.cpp calligra-2.3.87/words/part/frames/KWFrameLayout.cpp --- calligra-2.3.86/words/part/frames/KWFrameLayout.cpp 2012-01-07 03:25:03.000000000 +0000 +++ calligra-2.3.87/words/part/frames/KWFrameLayout.cpp 2012-01-28 07:04:49.000000000 +0000 @@ -317,23 +317,21 @@ | 1 [ header ] | | 2 | <- pageStyle->headerDistance() | 3 [ maintxt ] | - | 4 | <- pageStyle->endNoteDistance() - | 5 [ endnote ] | - | 6 | <- pageStyle->footerDistance() - | 7 [ footer ] | - | 8 | <- pageStyle->pageLayout()->bottomMargin + layout->bottomPadding + | 4 | <- pageStyle->footerDistance() + | 5 [ footer ] | + | 6 | <- pageStyle->pageLayout()->bottomMargin + layout->bottomPadding +-----------------+ */ // Create some data structures used for the layouting of the frames later int minZIndex = INT_MAX; - qreal requestedHeight[9], minimumHeight[9], resultingPositions[9]; - for (int i = 0; i < 9; i++) { // zero fill. + qreal requestedHeight[7], minimumHeight[7], resultingPositions[7]; + for (int i = 0; i < 7; i++) { // zero fill. requestedHeight[i] = 0; minimumHeight[i] = 0; resultingPositions[i] = 0; } minimumHeight[0] = page.topMargin() + page.topPadding(); - minimumHeight[8] = page.bottomMargin() + page.bottomPadding(); + minimumHeight[6] = page.bottomMargin() + page.bottomPadding(); KoPageLayout layout = page.pageStyle().pageLayout(); layout.leftMargin = page.leftMargin(); @@ -359,7 +357,7 @@ int columnsCount = columns; int columnIndex = 0; KWFrame **main; - KWFrame *footer = 0, *endnote = 0, *header = 0; + KWFrame *footer = 0, *header = 0; KWFrame *pageBackground = 0; main = new KWFrame*[columnsCount]; if (columns > 0) @@ -403,17 +401,23 @@ case Words::OddPagesHeaderTextFrameSet: case Words::EvenPagesHeaderTextFrameSet: { header = frame; - minimumHeight[1] = qMax((qreal)10, pageStyle.headerMinimumHeight()); minimumHeight[2] = pageStyle.headerDistance(); - requestedHeight[1] = qMax(pageStyle.headerMinimumHeight(), textFrameSet->frames().first()->minimumFrameHeight()); + minimumHeight[1] = qMax((qreal)10, pageStyle.headerMinimumHeight() - pageStyle.headerDistance()); + requestedHeight[1] = qMax(minimumHeight[1], textFrameSet->frames().first()->minimumFrameHeight()); + if (pageStyle.headerDynamicSpacing()) { + minimumHeight[2] = qMax((qreal)0, minimumHeight[1] - requestedHeight[1]); + } break; } case Words::OddPagesFooterTextFrameSet: case Words::EvenPagesFooterTextFrameSet: { footer = frame; - minimumHeight[7] = qMax((qreal)10, pageStyle.footerMinimumHeight()); - minimumHeight[6] = pageStyle.footerDistance(); - requestedHeight[7] = qMax(pageStyle.footerMinimumHeight(), textFrameSet->frames().first()->minimumFrameHeight()); + minimumHeight[4] = pageStyle.footerDistance(); + minimumHeight[5] = qMax((qreal)10, pageStyle.footerMinimumHeight() - pageStyle.footerDistance()); + requestedHeight[5] = qMax(minimumHeight[5], textFrameSet->frames().first()->minimumFrameHeight()); + if (pageStyle.headerDynamicSpacing()) { + minimumHeight[4] = qMax((qreal)0, minimumHeight[5] - requestedHeight[5]); + } break; } case Words::MainTextFrameSet: { @@ -439,9 +443,6 @@ pageBackground = frameOn(m_backgroundFrameSet, pageNumber); --minZIndex; - if (endnote) { - endnote->shape()->setZIndex(minZIndex--); - } for (int i = 0; i < columns; ++i) { Q_ASSERT_X(main[i], __FUNCTION__, QString("No KWFrame for column=%1 columnCount=%2").arg(i).arg(columns).toLocal8Bit()); Q_ASSERT_X(main[i]->shape(), __FUNCTION__, QString("No TextShape in KWFrame for column=%1 columnCount=%2").arg(i).arg(columns).toLocal8Bit()); @@ -464,27 +465,23 @@ // spread space across items. qreal heightLeft = page.height(); - for (int i = 0; i < 9; i++) + for (int i = 0; i < 7; i++) heightLeft -= qMax(minimumHeight[i], requestedHeight[i]); if (heightLeft >= 0) { // easy; plenty of space - if (minimumHeight[5] > 0) // if we have an endnote - minimumHeight[6] += heightLeft; // add space below endnote - else - minimumHeight[3] += heightLeft; // add space to main text frame + minimumHeight[3] += heightLeft; // add space to main text frame qreal y = page.offsetInDocument(); - for (int i = 0; i < 9; i++) { + for (int i = 0; i < 7; i++) { resultingPositions[i] = y; y += qMax(minimumHeight[i], requestedHeight[i]); } } else { // for situations where the header + footer are too big to fit together with a // minimum sized main text frame. - minimumHeight[5] = 0; // no end note heightLeft = page.height(); - for (int i = 0; i < 9; i++) + for (int i = 0; i < 7; i++) heightLeft -= minimumHeight[i]; qreal y = page.offsetInDocument(); - for (int i = 0; i < 9; i++) { + for (int i = 0; i < 7; i++) { resultingPositions[i] = y; qreal row = minimumHeight[i]; if (requestedHeight[i] > row) { @@ -523,11 +520,10 @@ first = false; } delete[] points; - } - if (endnote) { - endnote->shape()->setPosition( - QPointF(left + layout.leftMargin + layout.leftPadding, resultingPositions[5])); - endnote->shape()->setSize(QSizeF(textWidth, resultingPositions[6] - resultingPositions[5])); + + // We need to store the content rect so layout can place it's anchored shapes + // correctly + page.setContentRect(QRectF(QPointF(left + layout.leftMargin + layout.leftPadding, resultingPositions[3]), QSizeF(textWidth ,resultingPositions[4] - resultingPositions[3]))); } if (header) { header->shape()->setPosition( @@ -536,8 +532,8 @@ } if (footer) { footer->shape()->setPosition( - QPointF(left + layout.leftMargin + layout.leftPadding, resultingPositions[7])); - footer->shape()->setSize(QSizeF(textWidth, resultingPositions[8] - resultingPositions[7])); + QPointF(left + layout.leftMargin + layout.leftPadding, resultingPositions[5])); + footer->shape()->setSize(QSizeF(textWidth, resultingPositions[6] - resultingPositions[5])); } if (pageBackground) { pageBackground->shape()->setPosition( @@ -571,10 +567,10 @@ } } break; case KWPageStyle::LeftPages: - *origin = Words::EvenPagesHeaderTextFrameSet; + *origin = header ? Words::EvenPagesHeaderTextFrameSet : Words::EvenPagesFooterTextFrameSet; break; case KWPageStyle::RightPages: - *origin = Words::OddPagesHeaderTextFrameSet; + *origin = header ? Words::OddPagesHeaderTextFrameSet : Words::OddPagesFooterTextFrameSet; break; } return true; diff -Nru calligra-2.3.86/words/part/KWAboutData.h calligra-2.3.87/words/part/KWAboutData.h --- calligra-2.3.86/words/part/KWAboutData.h 2012-01-07 03:25:03.000000000 +0000 +++ calligra-2.3.87/words/part/KWAboutData.h 2012-01-28 07:04:49.000000000 +0000 @@ -24,30 +24,28 @@ #include #include -static const char* WORDS_DESCRIPTION = I18N_NOOP("Calligra Word Processor"); -// First official public release Oct 2000 version 0.8 -// Calligra-1.1-beta1: version 0.9 -// Calligra-1.1-beta2: version 1.1 (to remove confusion) -// Calligra-1.2: version 1.2 -// From then on: always the same as the Calligra version +static const char* WORDS_DESCRIPTION = I18N_NOOP("Word processor"); static const char* WORDS_VERSION = CALLIGRA_VERSION_STRING; KAboutData * newWordsAboutData() { - KAboutData * aboutData = new KAboutData("words", 0, ki18nc("application name", "Words"), + KAboutData * aboutData = new KAboutData("words", 0, ki18nc("application name", "Calligra Words"), WORDS_VERSION, ki18n(WORDS_DESCRIPTION), KAboutData::License_LGPL, - ki18n("(c) 1998-2011, The Words Team"), KLocalizedString(), + ki18n("© 1998-2012, The Words Team"), KLocalizedString(), "http://www.calligra.org/words/"); aboutData->setProductName("calligrawords"); // for bugs.kde.org aboutData->addAuthor(ki18n("Pierre Ducroquet"), ki18n("Co maintainer"), ""); - aboutData->addAuthor(ki18n("Casper Boemann"), ki18n("Co maintainer"), "cbo@boemann.dk"); + aboutData->addAuthor(ki18n("C. Boemann"), ki18n("Co maintainer"), "cbo@boemann.dk"); aboutData->addAuthor(ki18n("Sebastian Sauer"), ki18n("Everything"), "mail@dipe.org"); - aboutData->addAuthor(ki18n("Boudewijn Rempt"), ki18n("Notes and fixes"), "boud@kde.org"); + aboutData->addAuthor(ki18n("Boudewijn Rempt"), ki18n("Everything"), "boud@kde.org"); + aboutData->addAuthor(ki18n("Pierre Stirnweiss"), ki18n("Everything"), ""); aboutData->addAuthor(ki18n("Inge Wallin"), ki18n("Formatting stuff"), "inge@lysator.liu.se"); aboutData->addAuthor(ki18n("Thorsten Zachmann"), ki18n("Everything"), "zachmann@kde.org"); aboutData->addAuthor(ki18n("Matus Uzak"), ki18n("Filter"), "matus.uzak@ixonos.com"); aboutData->addAuthor(ki18n("Pavol Korinek"), ki18n("Layout and Painting"), "pavol.korinek@ixonos.com"); - aboutData->addAuthor(ki18n("Pierre Stirnweiss"), ki18n("Everything"), ""); + aboutData->addAuthor(ki18n("Shreya Pandit"), ki18n("Statistics docker"), ""); + aboutData->addAuthor(ki18n("Brijesh Patel"), ki18n("Foot and endnotes"), ""); + aboutData->addAuthor(ki18n("Smit Patel"), ki18n("Bibliography"), ""); aboutData->addAuthor(ki18n("Lassi Nieminen"), ki18n("Filter"), "lassniem@gmail.com"); aboutData->addAuthor(ki18n("Hanzes Matus"), ki18n("Filter"), "matus.hanzes@ixonos.com"); aboutData->addAuthor(ki18n("Lukáš Tvrdý"), ki18n("Filter"), "lukast.dev@gmail.com"); diff -Nru calligra-2.3.86/words/part/KWApplicationConfig.cpp calligra-2.3.87/words/part/KWApplicationConfig.cpp --- calligra-2.3.86/words/part/KWApplicationConfig.cpp 2012-01-07 03:25:03.000000000 +0000 +++ calligra-2.3.87/words/part/KWApplicationConfig.cpp 2012-01-28 07:04:49.000000000 +0000 @@ -51,7 +51,9 @@ // setCursorInProtectedArea(interface.readEntry("cursorInProtectArea", true)); // Config-file value in mm, default 10 pt m_viewRulers = interface.readEntry("Rulers", m_viewRulers); - m_autoSaveSeconds = interface.readEntry("AutoSave", qRound(m_autoSaveSeconds / 60.0)) * 60; // read key in minutes + m_autoSaveSeconds = interface.readEntry("AutoSave", qRound(m_autoSaveSeconds)); + document->setAutoSave(m_autoSaveSeconds); + m_createBackupFile = interface.readEntry("BackupFile", m_createBackupFile); // setNbPagePerRow(interface.readEntry("nbPagePerRow",4)); diff -Nru calligra-2.3.86/words/part/KWDocument.cpp calligra-2.3.87/words/part/KWDocument.cpp --- calligra-2.3.86/words/part/KWDocument.cpp 2012-01-07 03:25:03.000000000 +0000 +++ calligra-2.3.87/words/part/KWDocument.cpp 2012-01-28 07:04:49.000000000 +0000 @@ -863,7 +863,7 @@ return result; } -KoTextAnchor* KWDocument::anchorOfShape(KoShape *shape, bool create) const +KoTextAnchor* KWDocument::anchorOfShape(KoShape *shape) const { Q_ASSERT(mainFrameSet()); Q_ASSERT(shape); @@ -876,39 +876,21 @@ } } - if (create) { - KWFrame *targetFrame = findClosestFrame(shape); + KWFrame *frame = frameOfShape(shape); + KoTextAnchor *anchor = frame->anchor(); - if (targetFrame == 0) {/* can't happen later on... */ - kDebug(32001) << "bailing out...no shape to anchor to"; - return 0; - } - - KoTextShapeDataBase *textData = qobject_cast(targetFrame->shape()->userData()); - - if (!textData) - return 0; - - QPointF absPos = shape->absolutePosition(); - shape->setParent(static_cast(targetFrame->shape())); - shape->setAbsolutePosition(absPos); - - KWFrame *frame = frameOfShape(shape); - KoTextAnchor *anchor = frame->anchor(); - - if (!anchor) { - anchor = new KoTextAnchor(shape); - frame->setAnchor(anchor); - } - - KoTextEditor editor(textData->document()); - editor.insertInlineObject(anchor); - return anchor; + if (!anchor) { + anchor = new KoTextAnchor(shape); + anchor->setAnchorType(KoTextAnchor::AnchorPage); + anchor->setHorizontalPos(KoTextAnchor::HFromLeft); + anchor->setVerticalPos(KoTextAnchor::VFromTop); + frame->setAnchor(anchor); } - return 0; + return anchor; } + KWFrame *KWDocument::frameOfShape(KoShape* shape) const { while (shape) { diff -Nru calligra-2.3.86/words/part/KWDocument.h calligra-2.3.87/words/part/KWDocument.h --- calligra-2.3.86/words/part/KWDocument.h 2012-01-07 03:25:03.000000000 +0000 +++ calligra-2.3.87/words/part/KWDocument.h 2012-01-28 07:04:49.000000000 +0000 @@ -46,6 +46,7 @@ class KoShapeConfigFactoryBase; class KoUpdater; class KoTextAnchor; +class KoShapeContainer; class KLocalizedString; class QIODevice; @@ -183,7 +184,7 @@ /// find the frame closest to the given shape or return 0 KWFrame *findClosestFrame(KoShape *shape) const; - KoTextAnchor *anchorOfShape(KoShape *shape, bool create) const; + KoTextAnchor *anchorOfShape(KoShape *shape) const; KWFrame *frameOfShape(KoShape *shape) const; diff -Nru calligra-2.3.86/words/part/KWFactory.cpp calligra-2.3.87/words/part/KWFactory.cpp --- calligra-2.3.86/words/part/KWFactory.cpp 2012-01-07 03:25:03.000000000 +0000 +++ calligra-2.3.87/words/part/KWFactory.cpp 2012-01-28 07:04:49.000000000 +0000 @@ -29,6 +29,8 @@ #include #include +#include + #ifdef SHOULD_BUILD_RDF #include #include @@ -36,6 +38,7 @@ #include "dockers/KWRdfDockerFactory.h" #endif #include "dockers/KWStatisticsDocker.h" +#include "pagetool/KWPageToolFactory.h" KComponentData *KWFactory::s_instance = 0; KAboutData *KWFactory::s_aboutData = 0; @@ -95,7 +98,8 @@ #ifdef SHOULD_BUILD_RDF dockRegistry->add(new KWRdfDockerFactory()); #endif - + + KoToolRegistry::instance()->add(new KWPageToolFactory()); } return *s_instance; } diff -Nru calligra-2.3.86/words/part/KWGui.cpp calligra-2.3.87/words/part/KWGui.cpp --- calligra-2.3.86/words/part/KWGui.cpp 2012-01-07 03:25:03.000000000 +0000 +++ calligra-2.3.87/words/part/KWGui.cpp 2012-01-28 07:04:49.000000000 +0000 @@ -36,6 +36,7 @@ #include #include #include +#include #include #include @@ -70,7 +71,7 @@ if (m_view->shell()) { - KoModeBoxFactory modeBoxFactory(canvasController, i18n("Tools")); + KoModeBoxFactory modeBoxFactory(canvasController, qApp->applicationName(), i18n("Tools")); m_view->shell()->createDockWidget(&modeBoxFactory); m_view->shell()->dockerManager()->removeToolOptionsDocker(); } diff -Nru calligra-2.3.86/words/part/KWOdfLoader.cpp calligra-2.3.87/words/part/KWOdfLoader.cpp --- calligra-2.3.86/words/part/KWOdfLoader.cpp 2012-01-07 03:25:03.000000000 +0000 +++ calligra-2.3.87/words/part/KWOdfLoader.cpp 2012-01-28 07:04:49.000000000 +0000 @@ -222,7 +222,6 @@ KoTextEditor *editor = KoTextDocument(textShapeData.document()).textEditor(); if (editor) // at one point we have to get the position from the odf doc instead. editor->setPosition(0); - editor->finishedLoading(); if (updater) updater->setProgress(90); @@ -322,7 +321,7 @@ // The actual content of the header/footer. KoXmlElement elem = KoXml::namedItemNS(masterPage, KoXmlNS::style, headerFooter == LoadHeader ? "header" : "footer"); // The two additional elements and specifies if defined that even and odd pages - // should be displayed different. If they are missing, the conent of odd and even (aka left and right) pages are the same. + // should be displayed different. If they are missing, the content of odd and even (aka left and right) pages are the same. KoXmlElement leftElem = KoXml::namedItemNS(masterPage, KoXmlNS::style, headerFooter == LoadHeader ? "header-left" : "footer-left"); // Used in KWPageStyle to determine if, and what kind of header/footer to use. Words::HeaderFooterType hfType = elem.isNull() ? Words::HFTypeNone : leftElem.isNull() ? Words::HFTypeUniform : Words::HFTypeEvenOdd; diff -Nru calligra-2.3.86/words/part/KWOdfWriter.cpp calligra-2.3.87/words/part/KWOdfWriter.cpp --- calligra-2.3.86/words/part/KWOdfWriter.cpp 2012-01-07 03:25:03.000000000 +0000 +++ calligra-2.3.87/words/part/KWOdfWriter.cpp 2012-01-28 07:04:49.000000000 +0000 @@ -51,14 +51,23 @@ #include #include -QByteArray KWOdfWriter::serializeHeaderFooter(KoEmbeddedDocumentSaver &embeddedSaver, KoGenStyles &mainStyles, KoGenChanges &changes, KWTextFrameSet *fs) +static const struct { + const char * tag; +} headerFooterTag[] = { + { "style:header" }, + { "style:header-left" }, + { "style:footer" }, + { "style:footer-left" } +}; + +QByteArray KWOdfWriter::serializeHeaderFooter(KoShapeSavingContext &context, KWTextFrameSet *fs) { - QByteArray tag; + const char * tag = 0; switch (fs->textFrameSetType()) { - case Words::OddPagesHeaderTextFrameSet: tag = "style:header"; break; - case Words::EvenPagesHeaderTextFrameSet: tag = "style:header-left"; break; - case Words::OddPagesFooterTextFrameSet: tag = "style:footer"; break; - case Words::EvenPagesFooterTextFrameSet: tag = "style:footer-left"; break; + case Words::OddPagesHeaderTextFrameSet: tag = headerFooterTag[0].tag; break; + case Words::EvenPagesHeaderTextFrameSet: tag = headerFooterTag[1].tag; break; + case Words::OddPagesFooterTextFrameSet: tag = headerFooterTag[2].tag; break; + case Words::EvenPagesFooterTextFrameSet: tag = headerFooterTag[3].tag; break; default: return QByteArray(); } @@ -67,13 +76,11 @@ buffer.open(QIODevice::WriteOnly); KoXmlWriter writer(&buffer); - KoShapeSavingContext context(writer, mainStyles, embeddedSaver); - - context.setOptions(KoShapeSavingContext::AutoStyleInStyleXml); + KoXmlWriter &savedWriter = context.xmlWriter(); - KoTextSharedSavingData *sharedData = new KoTextSharedSavingData; - sharedData->setGenChanges(changes); - context.addSharedData(KOTEXT_SHARED_SAVING_ID, sharedData); + KoShapeSavingContext::ShapeSavingOptions options = context.options(); + context.setOptions(KoShapeSavingContext::AutoStyleInStyleXml); + context.setXmlWriter(writer); Q_ASSERT(!fs->frames().isEmpty()); KoTextShapeData *shapedata = qobject_cast(fs->frames().first()->shape()->userData()); @@ -83,11 +90,14 @@ shapedata->saveOdf(context, m_document->documentRdfBase()); writer.endElement(); + context.setOptions(options); + context.setXmlWriter(savedWriter); + return content; } // rename to save pages ? -void KWOdfWriter::saveHeaderFooter(KoEmbeddedDocumentSaver &embeddedSaver, KoGenStyles &mainStyles, KoGenChanges &changes) +void KWOdfWriter::saveHeaderFooter(KoShapeSavingContext &context) { //kDebug(32001)<< "START saveHeaderFooter ############################################"; // first get all the framesets in a nice quick-to-access data structure @@ -116,8 +126,8 @@ KoGenStyle layoutStyle = pageStyle.saveOdf(); if (!pageStyle.displayName().isEmpty() && pageStyle.displayName() != pageStyle.name()) masterStyle.addProperty("style:display-name", pageStyle.displayName()); - masterStyle.addProperty("style:page-layout-name", mainStyles.insert(layoutStyle, "pm")); - QString name = mainStyles.insert(masterStyle, pageStyle.name(), KoGenStyles::DontAddNumberToName); + masterStyle.addProperty("style:page-layout-name", context.mainStyles().insert(layoutStyle, "pm")); + QString name = context.mainStyles().insert(masterStyle, pageStyle.name(), KoGenStyles::DontAddNumberToName); m_masterPages.insert(pageStyle, name); } @@ -132,7 +142,7 @@ KoGenStyle masterStyle(KoGenStyle::MasterPageStyle); //masterStyle.setAutoStyleInStylesDotXml(true); KoGenStyle layoutStyle = pageStyle.saveOdf(); - masterStyle.addProperty("style:page-layout-name", mainStyles.insert(layoutStyle, "pm")); + masterStyle.addProperty("style:page-layout-name", context.mainStyles().insert(layoutStyle, "pm")); QHash headersAndFooters = data.value(pageStyle); int index = 0; @@ -144,7 +154,7 @@ if (fs->frameCount() == 0) // don't save empty framesets continue; - QByteArray content = serializeHeaderFooter(embeddedSaver, mainStyles, changes, fs); + QByteArray content = serializeHeaderFooter(context, fs); if (content.isNull()) continue; @@ -152,10 +162,8 @@ masterStyle.addChildElement(QString::number(++index), QString::fromUtf8(content)); } // append the headerfooter-style to the main-style - if (! masterStyle.isEmpty()) { - QString name = mainStyles.insert(masterStyle, pageStyle.name(), KoGenStyles::DontAddNumberToName); - m_masterPages.insert(pageStyle, name); - } + QString name = context.mainStyles().insert(masterStyle, pageStyle.name(), KoGenStyles::DontAddNumberToName); + m_masterPages.insert(pageStyle, name); } //foreach (KoGenStyles::NamedStyle s, mainStyles.styles(KoGenStyle::ParagraphAutoStyle)) @@ -225,6 +233,10 @@ KoShapeSavingContext context(*tmpBodyWriter, mainStyles, embeddedSaver); + KoTextSharedSavingData *sharedData = new KoTextSharedSavingData; + sharedData->setGenChanges(changes); + context.addSharedData(KOTEXT_SHARED_SAVING_ID, sharedData); + // Save the named styles if (KoStyleManager *styleManager = m_document->resourceManager()->resource(KoText::StyleManager).value()) { styleManager->saveOdf(context); @@ -234,8 +246,7 @@ // Header and footers save their content into master-styles/master-page, and their // styles into the page-layout automatic-style. - - saveHeaderFooter(embeddedSaver, mainStyles, changes); + saveHeaderFooter(context); KoXmlWriter *bodyWriter = odfStore.bodyWriter(); bodyWriter->startElement("office:body"); @@ -246,10 +257,6 @@ variableManager->saveOdf(bodyWriter); } - KoTextSharedSavingData *sharedData = new KoTextSharedSavingData; - sharedData->setGenChanges(changes); - context.addSharedData(KOTEXT_SHARED_SAVING_ID, sharedData); - calculateZindexOffsets(); KWTextFrameSet *mainTextFrame = 0; diff -Nru calligra-2.3.86/words/part/KWOdfWriter.h calligra-2.3.87/words/part/KWOdfWriter.h --- calligra-2.3.86/words/part/KWOdfWriter.h 2012-01-07 03:25:03.000000000 +0000 +++ calligra-2.3.87/words/part/KWOdfWriter.h 2012-01-28 07:04:49.000000000 +0000 @@ -30,6 +30,7 @@ class KWDocument; class KoOdfWriteStore; +class KoShapeSavingContext; class KoEmbeddedDocumentSaver; class KoGenStyles; class KWTextFrameSet; @@ -63,8 +64,8 @@ bool save(KoOdfWriteStore &odfStore, KoEmbeddedDocumentSaver &embeddedSaver); private: - QByteArray serializeHeaderFooter(KoEmbeddedDocumentSaver &embeddedSaver, KoGenStyles &mainStyles, KoGenChanges &changes, KWTextFrameSet* fs); - void saveHeaderFooter(KoEmbeddedDocumentSaver &embeddedSaver, KoGenStyles &mainStyles, KoGenChanges &changes); + void saveHeaderFooter(KoShapeSavingContext &context); + QByteArray serializeHeaderFooter(KoShapeSavingContext &context, KWTextFrameSet* fs); void calculateZindexOffsets(); void addShapeToTree(KoShape *shape); diff -Nru calligra-2.3.86/words/part/KWPage.cpp calligra-2.3.87/words/part/KWPage.cpp --- calligra-2.3.86/words/part/KWPage.cpp 2012-01-07 03:25:03.000000000 +0000 +++ calligra-2.3.87/words/part/KWPage.cpp 2012-01-28 07:04:49.000000000 +0000 @@ -223,6 +223,20 @@ return QRectF(0, offsetInDocument(), width(), height()); } +QRectF KWPage::contentRect() const +{ + if (! isValid()) + return QRectF(); + return priv->pages[n].contentRect; +} + +void KWPage::setContentRect(const QRectF &rect) +{ + if (isValid()) { + priv->pages[n].contentRect = rect; + } +} + KoPageFormat::Orientation KWPage::orientationHint() const { if (! isValid()) diff -Nru calligra-2.3.86/words/part/KWPage.h calligra-2.3.87/words/part/KWPage.h --- calligra-2.3.86/words/part/KWPage.h 2012-01-07 03:25:03.000000000 +0000 +++ calligra-2.3.87/words/part/KWPage.h 2012-01-28 07:04:49.000000000 +0000 @@ -87,6 +87,15 @@ */ QRectF rect() const; + /** + * return a rectangle outlining the main text on this page, using the offset in the document. + */ + QRectF contentRect() const; + + /* set the content rect valid on this page + */ + void setContentRect(const QRectF &rect); + // the y coordinate /** * All Pages are in a document-wide coordinate system that simply puts every page under diff -Nru calligra-2.3.86/words/part/KWPageManager_p.h calligra-2.3.87/words/part/KWPageManager_p.h --- calligra-2.3.86/words/part/KWPageManager_p.h 2012-01-07 03:25:03.000000000 +0000 +++ calligra-2.3.87/words/part/KWPageManager_p.h 2012-01-28 07:04:49.000000000 +0000 @@ -45,6 +45,7 @@ uint pageNumber : 20; // set by the append-page and overwritten by the text-layout uint autoGenerated : 1; // bool to signify words having generated it uint padding : 11; + QRectF contentRect; }; KWPageManagerPrivate(); diff -Nru calligra-2.3.86/words/part/KWPageStyle.cpp calligra-2.3.87/words/part/KWPageStyle.cpp --- calligra-2.3.86/words/part/KWPageStyle.cpp 2012-01-07 03:25:03.000000000 +0000 +++ calligra-2.3.87/words/part/KWPageStyle.cpp 2012-01-28 07:04:49.000000000 +0000 @@ -43,24 +43,19 @@ void KWPageStylePrivate::clear() { - // defaults - footNoteSeparatorLineLength = 20; // 20%, i.e. 1/5th - footNoteSeparatorLineWidth = 0.5; // like in OOo - footNoteSeparatorLineType = Qt::SolidLine; - displayName.clear(); headerDistance = 10; // ~3mm footerDistance = 10; - headerMinimumHeight = 0; - footerMinimumHeight = 0; - footNoteDistance = 10; - endNoteDistance = 10; + headerMinimumHeight = 10; // includes spacing + footerMinimumHeight = 10; // includes spacing headers = Words::HFTypeNone; footers = Words::HFTypeNone; pageUsage = KWPageStyle::AllPages; columns.columns = 1; columns.columnSpacing = 17; // ~ 6mm direction = KoText::AutoDirection; + headerDynamicSpacing = false; + footerDynamicSpacing = false; if (fullPageBackground && !fullPageBackground->deref()) { delete fullPageBackground; @@ -164,6 +159,16 @@ d->headerDistance = distance; } +bool KWPageStyle::headerDynamicSpacing() const +{ + return d->headerDynamicSpacing; +} + +void KWPageStyle::setHeaderDynamicSpacing(bool dynamic) +{ + d->headerDynamicSpacing = dynamic; +} + qreal KWPageStyle::headerMinimumHeight() const { return d->headerMinimumHeight; @@ -194,64 +199,14 @@ d->footerDistance = distance; } -qreal KWPageStyle::footnoteDistance() const -{ - return d->footNoteDistance; -} - -void KWPageStyle::setFootnoteDistance(qreal distance) -{ - d->footNoteDistance = distance; -} - -qreal KWPageStyle::endNoteDistance() const -{ - return d->endNoteDistance; -} - -void KWPageStyle::setEndNoteDistance(qreal distance) -{ - d->endNoteDistance = distance; -} - -int KWPageStyle::footNoteSeparatorLineLength() const -{ - return d->footNoteSeparatorLineLength; -} - -void KWPageStyle::setFootNoteSeparatorLineLength(int length) +bool KWPageStyle::footerDynamicSpacing() const { - d->footNoteSeparatorLineLength = length; + return d->footerDynamicSpacing; } -qreal KWPageStyle::footNoteSeparatorLineWidth() const +void KWPageStyle::setFooterDynamicSpacing(bool dynamic) { - return d->footNoteSeparatorLineWidth; -} - -void KWPageStyle::setFootNoteSeparatorLineWidth(qreal width) -{ - d->footNoteSeparatorLineWidth = width; -} - -Qt::PenStyle KWPageStyle::footNoteSeparatorLineType() const -{ - return d->footNoteSeparatorLineType; -} - -void KWPageStyle::setFootNoteSeparatorLineType(Qt::PenStyle type) -{ - d->footNoteSeparatorLineType = type; -} - -Words::FootNoteSeparatorLinePos KWPageStyle::footNoteSeparatorLinePosition() const -{ - return d->footNoteSeparatorLinePos; -} - -void KWPageStyle::setFootNoteSeparatorLinePosition(Words::FootNoteSeparatorLinePos position) -{ - d->footNoteSeparatorLinePos = position; + d->footerDynamicSpacing = dynamic; } void KWPageStyle::clear() @@ -291,15 +246,18 @@ pageLayout.setAutoStyleInStylesDotXml(true); pageLayout.addAttribute("style:page-usage", "all"); - QBuffer buffer; - buffer.open(QIODevice::WriteOnly); - KoXmlWriter writer(&buffer); - if (d->columns.columns > 1) { + QBuffer buffer; + buffer.open(QIODevice::WriteOnly); + KoXmlWriter writer(&buffer); + writer.startElement("style:columns"); writer.addAttribute("fo:column-count", d->columns.columns); writer.addAttributePt("fo:column-gap", d->columns.columnSpacing); writer.endElement(); + + QString contentElement = QString::fromUtf8(buffer.buffer(), buffer.buffer().size()); + pageLayout.addChildElement("columnsEnzo", contentElement); } // @@ -313,32 +271,42 @@ // TODO save background - QString contentElement = QString::fromUtf8(buffer.buffer(), buffer.buffer().size()); - pageLayout.addChildElement("columnsEnzo", contentElement); -// the header/footer-style should be saved as a child of the style:page-layout; but using the -// addChildElement its instead saved as a child of style:page-layout-properties I can't follow why... -// so lets disable this until I figure out how to save this in the right position in the tree. -#if 0 if (headerPolicy() != Words::HFTypeNone) { + QBuffer buffer; + buffer.open(QIODevice::WriteOnly); + KoXmlWriter writer(&buffer); + writer.startElement("style:header-style"); writer.startElement("style:header-footer-properties"); - writer.addAttribute("fo:min-height", "0.01pt"); + writer.addAttributePt("fo:min-height", headerMinimumHeight()); writer.addAttributePt("fo:margin-bottom", headerDistance()); + writer.addAttribute("style:dynamic-spacing", headerDynamicSpacing()); // TODO there are quite some more properties we want to at least preserve between load and save writer.endElement(); writer.endElement(); + + QString contentElement = QString::fromUtf8(buffer.buffer(), buffer.buffer().size()); + // the 1_ 2_ is needed to get the correct order + pageLayout.addStyleChildElement("1_headerStyle", contentElement); } if (footerPolicy() != Words::HFTypeNone) { + QBuffer buffer; + buffer.open(QIODevice::WriteOnly); + KoXmlWriter writer(&buffer); + writer.startElement("style:footer-style"); writer.startElement("style:header-footer-properties"); - writer.addAttribute("fo:min-height", "0.01pt"); + writer.addAttributePt("fo:min-height", footerMinimumHeight()); writer.addAttributePt("fo:margin-top", footerDistance()); + writer.addAttribute("style:dynamic-spacing", footerDynamicSpacing()); // TODO there are quite some more properties we want to at least preserve between load and save writer.endElement(); writer.endElement(); + + QString contentElement = QString::fromUtf8(buffer.buffer(), buffer.buffer().size()); + pageLayout.addStyleChildElement("2_footerStyle", contentElement); } -#endif // TODO see how we should save margins if we use the 'closest to binding' stuff. @@ -382,6 +350,8 @@ if (! hfprops.isNull()) d->headerDistance = KoUnit::parseValue(hfprops.attributeNS(KoXmlNS::fo, "margin-bottom")); d->headerMinimumHeight = KoUnit::parseValue(hfprops.attributeNS(KoXmlNS::fo, "min-height")); + const QString dynamicSpacing(hfprops.attributeNS(KoXmlNS::style, "dynamic-spacing")); + d->headerDynamicSpacing = dynamicSpacing == "true"; // TODO there are quite some more properties we want to at least preserve between load and save } @@ -391,6 +361,8 @@ if (! hfprops.isNull()) d->footerDistance = KoUnit::parseValue(hfprops.attributeNS(KoXmlNS::fo, "margin-top")); d->footerMinimumHeight = KoUnit::parseValue(hfprops.attributeNS(KoXmlNS::fo, "min-height")); + const QString dynamicSpacing(hfprops.attributeNS(KoXmlNS::style, "dynamic-spacing")); + d->footerDynamicSpacing = dynamicSpacing == "true"; // TODO there are quite some more properties we want to at least preserve between load and save } diff -Nru calligra-2.3.86/words/part/KWPageStyle.h calligra-2.3.87/words/part/KWPageStyle.h --- calligra-2.3.86/words/part/KWPageStyle.h 2012-01-07 03:25:03.000000000 +0000 +++ calligra-2.3.87/words/part/KWPageStyle.h 2012-01-28 07:04:49.000000000 +0000 @@ -130,6 +130,12 @@ */ void setHeaderDistance(qreal distance); + /// return if a growing header eats the distance first. + bool headerDynamicSpacing() const; + + /// set if a growing header eats the distance first. + void setHeaderDynamicSpacing(bool dynamic); + /// return the minimum header height. qreal headerMinimumHeight() const; /** @@ -154,40 +160,11 @@ */ void setFooterDistance(qreal distance); - /// return the distance between the footnote and the main frame. - qreal footnoteDistance() const; - /** - * Set the distance between the footnote and the main frame. - * @param distance the distance - */ - void setFootnoteDistance(qreal distance); - /// return the distance between the main text frame and the end notes frame. - qreal endNoteDistance() const; - /** - * Set the distance between the main text frame and the end notes frame. - * @param distance the distance - */ - void setEndNoteDistance(qreal distance); + /// return if a growing footer eats the distance first. + bool footerDynamicSpacing() const; - /// return the line length of the foot note separator line, in percent of the pagewidth - int footNoteSeparatorLineLength() const; - /// set the line length of the foot note separator line, in percent of the pagewidth - void setFootNoteSeparatorLineLength(int length); - - /// return the thickness of the line (in pt) drawn above the foot notes - qreal footNoteSeparatorLineWidth() const; - /// set the thickness of the line (in pt) drawn above the foot notes - void setFootNoteSeparatorLineWidth(qreal width); - - /// return the pen style used to draw the foot note separator line - Qt::PenStyle footNoteSeparatorLineType() const; - /// set the pen style used to draw the foot note separator line - void setFootNoteSeparatorLineType(Qt::PenStyle type); - - /// return the position on the page for the foot note separator line - Words::FootNoteSeparatorLinePos footNoteSeparatorLinePosition() const; - /// set the position on the page for the foot note separator line - void setFootNoteSeparatorLinePosition(Words::FootNoteSeparatorLinePos position); + /// set if a growing footer eats the distance first. + void setFooterDynamicSpacing(bool dynamic); /// initialize to default settings void clear(); diff -Nru calligra-2.3.86/words/part/KWPageStyle_p.h calligra-2.3.87/words/part/KWPageStyle_p.h --- calligra-2.3.86/words/part/KWPageStyle_p.h 2012-01-07 03:25:03.000000000 +0000 +++ calligra-2.3.87/words/part/KWPageStyle_p.h 2012-01-28 07:04:49.000000000 +0000 @@ -38,7 +38,8 @@ qreal headerDistance, footerDistance, footNoteDistance, endNoteDistance; qreal headerMinimumHeight,footerMinimumHeight; Words::HeaderFooterType headers, footers; - + bool headerDynamicSpacing; + bool footerDynamicSpacing; qreal footNoteSeparatorLineWidth; ///< width of line; so more like 'thickness' int footNoteSeparatorLineLength; ///< It's a percentage of page. Qt::PenStyle footNoteSeparatorLineType; ///< foot note separate type diff -Nru calligra-2.3.86/words/part/KWView.cpp calligra-2.3.87/words/part/KWView.cpp --- calligra-2.3.86/words/part/KWView.cpp 2012-01-07 03:25:03.000000000 +0000 +++ calligra-2.3.87/words/part/KWView.cpp 2012-01-28 07:04:49.000000000 +0000 @@ -34,7 +34,6 @@ #include "frames/KWTextFrameSet.h" #include "dialogs/KWFrameDialog.h" #include "dialogs/KWPageSettingsDialog.h" -#include "dialogs/KWStatisticsDialog.h" #include "dialogs/KWPrintingDialog.h" #include "dialogs/KWCreateBookmarkDialog.h" #include "dialogs/KWSelectBookmarkDialog.h" @@ -195,10 +194,6 @@ m_actionViewHeader->setEnabled(readWrite); m_actionViewFooter->setEnabled(readWrite); m_actionViewSnapToGrid->setEnabled(readWrite); - m_actionRaiseFrame->setEnabled(readWrite); - m_actionLowerFrame->setEnabled(readWrite); - m_actionBringToFront->setEnabled(readWrite); - m_actionSendBackward->setEnabled(readWrite); m_actionAddBookmark->setEnabled(readWrite); QAction *action = actionCollection()->action("insert_variable"); if (action) action->setEnabled(readWrite); @@ -242,66 +237,23 @@ m_actionInsertFrameBreak->setToolTip(i18n("Force the remainder of the text into the next page")); m_actionInsertFrameBreak->setWhatsThis(i18n("All text after this point will be moved into the next page.")); - m_actionViewHeader = new KToggleAction(i18n("Enable Document Headers"), this); - actionCollection()->addAction("format_header", m_actionViewHeader); - m_actionViewHeader->setToolTip(i18n("Shows and hides header display")); - m_actionViewHeader->setWhatsThis(i18n("Selecting this option toggles the display of headers in Words.

Headers are special frames at the top of each page which can contain page numbers or other information.")); + m_actionViewHeader = new KAction(i18n("Create Header"), this); + actionCollection()->addAction("insert_header", m_actionViewHeader); if (m_currentPage.isValid()) - m_actionViewHeader->setChecked(m_currentPage.pageStyle().headerPolicy() != Words::HFTypeNone); - connect(m_actionViewHeader, SIGNAL(triggered()), this, SLOT(toggleHeader())); + m_actionViewHeader->setEnabled(m_currentPage.pageStyle().headerPolicy() == Words::HFTypeNone); + connect(m_actionViewHeader, SIGNAL(triggered()), this, SLOT(enableHeader())); - m_actionViewFooter = new KToggleAction(i18n("Enable Document Footers"), this); - actionCollection()->addAction("format_footer", m_actionViewFooter); - m_actionViewFooter->setToolTip(i18n("Shows and hides footer display")); - m_actionViewFooter->setWhatsThis(i18n("Selecting this option toggles the display of footers in Words.

Footers are special shapes at the bottom of each page which can contain page numbers or other information.")); + m_actionViewFooter = new KAction(i18n("Create Footer"), this); + actionCollection()->addAction("insert_footer", m_actionViewFooter); if (m_currentPage.isValid()) - m_actionViewFooter->setChecked(m_currentPage.pageStyle().footerPolicy() != Words::HFTypeNone); - connect(m_actionViewFooter, SIGNAL(triggered()), this, SLOT(toggleFooter())); + m_actionViewFooter->setEnabled(m_currentPage.pageStyle().footerPolicy() == Words::HFTypeNone); + connect(m_actionViewFooter, SIGNAL(triggered()), this, SLOT(enableFooter())); m_actionViewSnapToGrid = new KToggleAction(i18n("Snap to Grid"), this); actionCollection()->addAction("view_snaptogrid", m_actionViewSnapToGrid); m_actionViewSnapToGrid->setChecked(m_snapToGrid); connect(m_actionViewSnapToGrid, SIGNAL(triggered()), this, SLOT(toggleSnapToGrid())); - m_actionRaiseFrame = new KAction(KIcon("raise"), i18n("Raise Shape"), this); - actionCollection()->addAction("raiseframe", m_actionRaiseFrame); - m_actionRaiseFrame->setShortcut(KShortcut(Qt::CTRL + Qt::SHIFT + Qt::Key_R)); - m_actionRaiseFrame->setToolTip(i18n("Raise the currently selected shape so that it appears above " - "all the other shape")); - m_actionRaiseFrame->setWhatsThis(i18n("Raise the currently selected shape so that it appears " - "above all the other shapes. This is only useful if shapes overlap each other. If multiple " - "shapes are selected they are all raised in turn.")); - connect(m_actionRaiseFrame, SIGNAL(triggered()), this, SLOT(raiseFrame())); - - m_actionLowerFrame = new KAction(KIcon("lower"), i18n("Lower Shape"), this); - actionCollection()->addAction("lowerframe", m_actionLowerFrame); - m_actionLowerFrame->setShortcut(KShortcut(Qt::CTRL + Qt::SHIFT + Qt::Key_L)); - m_actionLowerFrame->setToolTip(i18n("Lower the currently selected shape so that it disappears under " - "any shape that overlaps it")); - m_actionLowerFrame->setWhatsThis(i18n("Lower the currently selected shape so that it disappears under " - "any shape that overlaps it. If multiple shape are selected they are all lowered in turn.")); - connect(m_actionLowerFrame, SIGNAL(triggered()), this, SLOT(lowerFrame())); - - m_actionBringToFront = new KAction(KIcon("bring_forward"), i18n("Bring to Front"), this); - actionCollection()->addAction("bring_tofront_frame", m_actionBringToFront); - connect(m_actionBringToFront, SIGNAL(triggered()), this, SLOT(bringToFront())); - - m_actionSendBackward = new KAction(KIcon("send_backward"), i18n("Send to Back"), this); - actionCollection()->addAction("send_toback_frame", m_actionSendBackward); - connect(m_actionSendBackward, SIGNAL(triggered()), this, SLOT(sendToBack())); - -#ifdef SHOULD_BUILD_RDF - if (KoDocumentRdf* rdf = m_document->documentRdf()) { - KAction* createRef = rdf->createInsertSemanticObjectReferenceAction(canvasBase()); - actionCollection()->addAction("insert_semanticobject_ref", createRef); - KActionMenu *subMenu = new KActionMenu(i18n("Create"), this); - actionCollection()->addAction("insert_semanticobject_new", subMenu); - foreach(KAction *action, rdf->createInsertSemanticObjectNewActions(canvasBase())) { - subMenu->addAction(action); - } - } -#endif - m_actionAddBookmark = new KAction(KIcon("bookmark-new"), i18n("Bookmark..."), this); m_actionAddBookmark->setShortcut(Qt::CTRL + Qt::SHIFT + Qt::Key_G); actionCollection()->addAction("add_bookmark", m_actionAddBookmark); @@ -354,8 +306,19 @@ action->setToolTip(i18n("Modify and add semantic stylesheets")); action->setWhatsThis(i18n("Stylesheets are used to format contact, event, and location information which is stored in Rdf")); connect(action, SIGNAL(triggered()), this, SLOT(editSemanticStylesheets())); + + if (KoDocumentRdf* rdf = m_document->documentRdf()) { + KAction* createRef = rdf->createInsertSemanticObjectReferenceAction(canvasBase()); + actionCollection()->addAction("insert_semanticobject_ref", createRef); + KActionMenu *subMenu = new KActionMenu(i18n("Create"), this); + actionCollection()->addAction("insert_semanticobject_new", subMenu); + foreach(KAction *action, rdf->createInsertSemanticObjectNewActions(canvasBase())) { + subMenu->addAction(action); + } + } #endif + action = actionCollection()->addAction(KStandardAction::Prior, "page_previous", this, SLOT(goToPreviousPage())); action = actionCollection()->addAction(KStandardAction::Next, "page_next", this, SLOT(goToNextPage())); @@ -368,12 +331,6 @@ action = actionCollection()->addAction(KStandardAction::Paste, "edit_paste", 0, 0); new KoPasteController(canvasBase(), action); - action = new KAction(i18n("Statistics"), this); - actionCollection()->addAction("file_statistics", action); - action->setToolTip(i18n("Sentence, word and letter counts for this document")); - action->setWhatsThis(i18n("Information on the number of letters, words, syllables and sentences for this document.

Evaluates readability using the Flesch reading score.

")); - connect(action, SIGNAL(triggered()), this, SLOT(showStatisticsDialog())); - action = new KAction(i18n("Show Rulers"), this); action->setCheckable(true); action->setToolTip(i18n("Shows or hides rulers")); @@ -421,7 +378,6 @@ actionCollection()->addAction("showStatusBar", tAction); connect(tAction, SIGNAL(toggled(bool)), this, SLOT(showStatusBar(bool))); - // -------------- Insert menu /* ********** From old kwview **** We probably want to have each of these again, so just move them when you want to implement it This saves problems with finding out which we missed near the end. @@ -444,53 +400,10 @@ // (void) new KWMailMergeComboAction::KWMailMergeComboAction(i18n("Insert Mailmerge Var"),0,this,SLOT(JWJWJW()),actionCollection(),"mailmerge_varchooser"); - // -------------- View menu - - if (!m_doc->isEmbedded()) { - - QActionGroup *viewModeActionGroup = new QActionGroup(this); - viewModeActionGroup->setExclusive(true); - m_actionViewTextMode = new KToggleAction(i18n("Text Mode"), 0, - this, SLOT(viewTextMode()), - actionCollection(), "view_textmode"); - m_actionViewTextMode->setToolTip(i18n("Only show the text of the document")); - m_actionViewTextMode->setWhatsThis(i18n("Do not show any pictures, formatting or layout. Words will display only the text for editing.")); - - m_actionViewTextMode->setActionGroup(viewModeActionGroup); - m_actionViewPageMode = new KToggleAction(i18n("Page Mode"), 0, - this, SLOT(viewPageMode()), - actionCollection(), "view_pagemode"); - m_actionViewPageMode->setWhatsThis(i18n("Switch to page mode.

Page mode is designed to make editing your text easy.

This function is most frequently used to return to text editing after switching to preview mode.")); - m_actionViewPageMode->setToolTip(i18n("Switch to page editing mode")); - - m_actionViewPageMode->setActionGroup(viewModeActionGroup); - m_actionViewPageMode->setChecked(true); - m_actionViewPreviewMode = new KToggleAction(i18n("Preview Mode"), 0, - this, SLOT(viewPreviewMode()), - actionCollection(), "view_previewmode"); - m_actionViewPreviewMode->setWhatsThis(i18n("Zoom out from your document to get a look at several pages of your document.

The number of pages per line can be customized.")); - m_actionViewPreviewMode->setToolTip(i18n("Zoom out to a multiple page view")); - - m_actionViewPreviewMode->setActionGroup(viewModeActionGroup); - } - else // no viewmode switching when embedded; at least "Page" makes no sense - { - m_actionViewTextMode = 0; - m_actionViewPageMode = 0; - m_actionViewPreviewMode = 0; - } - m_actionEditCustomVarsEdit = new KAction(i18n("Custom Variables..."), 0, this, SLOT(editCustomVars()), // TODO: new dialog w add etc. actionCollection(), "custom_vars"); - m_actionEditPersonnalExpr=new KAction(i18n("Edit Personal Expressions..."), 0, - this, SLOT(editPersonalExpr()), - actionCollection(), "personal_expr"); - m_actionEditPersonnalExpr->setToolTip(i18n("Add or change one or more personal expressions")); - m_actionEditPersonnalExpr->setWhatsThis(i18n("Add or change one or more personal expressions.

Personal expressions are a way to quickly insert commonly used phrases or text into your document.")); - - m_actionConfigureHeaderFooter=new KAction(i18n("Configure Header/Footer..."), 0, this, SLOT(configureHeaderFooter()), actionCollection(), "configure_headerfooter"); @@ -520,11 +433,6 @@ m_actionCreateStyleFromSelection->setToolTip(i18n("Create a new style based on the currently selected text")); m_actionCreateStyleFromSelection->setWhatsThis(i18n("Create a new style based on the currently selected text.")); // ## "on the current paragraph, taking the formatting from where the cursor is. Selecting text isn't even needed." - m_actionSavePicture= new KAction(i18n("Save Picture As..."), 0, - this, SLOT(savePicture()), - actionCollection(), "save_picture"); - m_actionSavePicture->setToolTip(i18n("Save the picture in a separate file")); - m_actionSavePicture->setWhatsThis(i18n("Save the picture in the currently selected frame in a separate file, outside the Words document.")); m_actionAddBookmark= new KAction(i18n("Bookmark..."), 0, this, SLOT(addBookmark()), @@ -571,6 +479,17 @@ // -------------------- Actions ----------------------- +void KWView::pasteRequested() +{ + QImage img = QApplication::clipboard()->image(); + + if (!img.isNull()) { + QList images; + images.append(img); + addImages(images, canvas()->mapFromGlobal(QCursor::pos())); + } +} + void KWView::editFrameProperties() { KWFrameDialog *frameDialog = new KWFrameDialog(selectedFrames(), m_document, m_canvas); @@ -705,37 +624,23 @@ #endif } -void KWView::editDeleteFrame() -{ - QList frames; - foreach (KoShape *shape, canvasBase()->shapeManager()->selection()->selectedShapes(KoFlake::TopLevelSelection)) { - KWFrame *frame = kwdocument()->frameOfShape(shape); - if (frame) { - KWTextFrameSet *fs = dynamic_cast(frame->frameSet()); - if (fs && fs->textFrameSetType() != Words::OtherTextFrameSet) - continue; // can't delete auto-generated frames - } - frames.append(shape); - } - KUndo2Command *cmd = canvasBase()->shapeController()->removeShapes(frames); - m_document->addCommand(cmd); -} - -void KWView::toggleHeader() +void KWView::enableHeader() { if (!m_currentPage.isValid()) return; Q_ASSERT(m_currentPage.pageStyle().isValid()); - m_currentPage.pageStyle().setHeaderPolicy(m_actionViewHeader->isChecked() ? Words::HFTypeEvenOdd : Words::HFTypeNone); + m_currentPage.pageStyle().setHeaderPolicy(Words::HFTypeUniform); + m_actionViewHeader->setEnabled(false); m_document->relayout(); } -void KWView::toggleFooter() +void KWView::enableFooter() { if (!m_currentPage.isValid()) return; Q_ASSERT(m_currentPage.pageStyle().isValid()); - m_currentPage.pageStyle().setFooterPolicy(m_actionViewFooter->isChecked() ? Words::HFTypeEvenOdd : Words::HFTypeNone); + m_currentPage.pageStyle().setFooterPolicy(Words::HFTypeUniform); + m_actionViewFooter->setEnabled(false); m_document->relayout(); } @@ -772,12 +677,6 @@ if (! m_currentPage.isValid()) return; KWPageSettingsDialog *dia = new KWPageSettingsDialog(this, m_document, m_currentPage); - if (m_document->mainFrameSet()) { - KoTextDocument doc(m_document->mainFrameSet()->document()); - KoTextEditor *editor = doc.textEditor(); - if (editor) - dia->showTextDirection(editor->isBidiDocument()); - } if (!m_lastPageSettingsTab.isEmpty()) { KPageWidgetItem *item = dia->pageItem(m_lastPageSettingsTab); if (item) @@ -804,13 +703,6 @@ #endif } -void KWView::showStatisticsDialog() -{ - KWStatisticsDialog *dia = new KWStatisticsDialog(this); - dia->exec(); - delete dia; -} - void KWView::showRulers(bool visible) { m_document->config().setViewRulers(visible); @@ -966,8 +858,8 @@ m_zoomController->setPageSize(m_maxPageSize); } - m_actionViewHeader->setChecked(m_currentPage.pageStyle().headerPolicy() != Words::HFTypeNone); - m_actionViewFooter->setChecked(m_currentPage.pageStyle().footerPolicy() != Words::HFTypeNone); + m_actionViewHeader->setEnabled(m_currentPage.pageStyle().headerPolicy() == Words::HFTypeNone); + m_actionViewFooter->setEnabled(m_currentPage.pageStyle().footerPolicy() == Words::HFTypeNone); } } @@ -1113,32 +1005,6 @@ #endif } -void adjustZOrderOfSelectedFrames(KoCanvasBase *canvasBase, KWDocument *document, KoShapeReorderCommand::MoveShapeType direction) -{ - // TODO we should not allow any shapes to fall behind the main text frame. - KUndo2Command *cmd = KoShapeReorderCommand::createCommand(canvasBase->shapeManager()->selection()->selectedShapes(), - canvasBase->shapeManager(), direction); - if (cmd) - document->addCommand(cmd); -} - - -void KWView::raiseFrame() { - adjustZOrderOfSelectedFrames(canvasBase(), m_document, KoShapeReorderCommand::RaiseShape); -} - -void KWView::lowerFrame() { - adjustZOrderOfSelectedFrames(canvasBase(), m_document, KoShapeReorderCommand::LowerShape); -} - -void KWView::bringToFront() { - adjustZOrderOfSelectedFrames(canvasBase(), m_document, KoShapeReorderCommand::BringToFront); -} - -void KWView::sendToBack() { - adjustZOrderOfSelectedFrames(canvasBase(), m_document, KoShapeReorderCommand::SendToBack); -} - void KWView::findMatchFound(KoFindMatch match) { if(!match.isValid() || !match.location().canConvert() || !match.container().canConvert()) { @@ -1165,34 +1031,18 @@ return; } - QPointF pos(0, 0); + QPointF pos = viewConverter()->viewToDocument(m_canvas->documentOffset() + insertAt - KWView::pos()); + pos.setX(qMax(qreal(0), pos.x())); + pos.setY(qMax(qreal(0), pos.y())); - /* TODO: find out how to convert the position correctly - // get position from event and convert to document coordinates - QPointF pos = m_canvas->viewConverter()->viewToDocument(insertAt) + - m_canvas->documentOffset() - m_canvas->documentOrigin(); - //*/ - // create a factory KoShapeFactoryBase *factory = KoShapeRegistry::instance()->value("PictureShape"); - + if (!factory) { kWarning(30003) << "No picture shape found, cannot drop images."; return; } - // get the textshape at this point - QList possibleTextShapes = canvasBase()->shapeManager()->shapesAt(QRectF(pos.x() - 10, pos.y() -10, 20, 20)); - KoTextShapeData *textShapeData = 0; - - foreach (KoShape* shape, possibleTextShapes) { - KoShapeUserData *userData = shape->userData(); - if ((textShapeData = dynamic_cast(userData))) { - // We've found the top-level text shape. - break; - } - } - foreach(const QImage image, imageList) { KoProperties params; params.setProperty("qimage", image); @@ -1217,8 +1067,7 @@ shape->setTextRunAroundSide(KoShape::BothRunAroundSide); - QTextDocument *qdoc = textShapeData ? textShapeData->document() : 0; - KoTextAnchor *anchor = new KoTextAnchor(shape); + KoTextAnchor *anchor = new KoTextAnchor(shape); anchor->setAnchorType(KoTextAnchor::AnchorPage); anchor->setHorizontalPos(KoTextAnchor::HFromLeft); anchor->setVerticalPos(KoTextAnchor::VFromTop); diff -Nru calligra-2.3.86/words/part/KWView.h calligra-2.3.87/words/part/KWView.h --- calligra-2.3.86/words/part/KWView.h 2012-01-07 03:25:03.000000000 +0000 +++ calligra-2.3.87/words/part/KWView.h 2012-01-28 07:04:49.000000000 +0000 @@ -150,28 +150,16 @@ void selectBookmark(); /// delete previously bookmarked text cursor location or selection (from the Select Bookmark dialog) void deleteBookmark(const QString &name); - /// delete the currently selected frame(s) - void editDeleteFrame(); - /// enable/disable document headers - void toggleHeader(); - /// enable/disable document footers - void toggleFooter(); + /// enable document headers + void enableHeader(); + /// enable document footers + void enableFooter(); /// snap to grid void toggleSnapToGrid(); - /** Move the selected frame above maximum 1 frame that is in front of it. */ - void raiseFrame(); - /** Move the selected frame behind maximum 1 frame that is behind it */ - void lowerFrame(); - /** Move the selected frame(s) to be in the front most position. */ - void bringToFront(); - /** Move the selected frame(s) to be behind all other frames */ - void sendToBack(); /// displays libs/main/rdf/SemanticStylesheetsEditor to edit Rdf stylesheets void editSemanticStylesheets(); /// called if the zoom changed void zoomChanged(KoZoomMode::Mode mode, qreal zoom); - /// displays the KWStatisticsDialog - void showStatisticsDialog(); /// shows or hides the rulers void showRulers(bool visible); /// creates a copy of the current frame @@ -198,6 +186,8 @@ void loadingCompleted(); /// The KWPageSettingsDialog was closed. void pageSettingsDialogFinished(); + /// user wants to past data from the clipboard + void pasteRequested(); private: KWGui *m_gui; @@ -221,8 +211,8 @@ KToggleAction *m_actionFormatItalic; KToggleAction *m_actionFormatUnderline; KToggleAction *m_actionFormatStrikeOut; - KToggleAction *m_actionViewHeader; - KToggleAction *m_actionViewFooter; + KAction *m_actionViewHeader; + KAction *m_actionViewFooter; KToggleAction *m_actionViewSnapToGrid; bool m_snapToGrid; diff -Nru calligra-2.3.86/words/part/pagetool/KWPageTool.cpp calligra-2.3.87/words/part/pagetool/KWPageTool.cpp --- calligra-2.3.86/words/part/pagetool/KWPageTool.cpp 1970-01-01 00:00:00.000000000 +0000 +++ calligra-2.3.87/words/part/pagetool/KWPageTool.cpp 2012-01-28 14:26:27.000000000 +0000 @@ -0,0 +1,113 @@ +/* + * Copyright (C) 2011 Jignesh Kakadiya + * + * This program is free software; you can redistribute it and/or modify + * it under the terms of the GNU Lesser General Public License as published by + * the Free Software Foundation; either version 2 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU Lesser General Public License + * along with this program; if not, write to the Free Software + * Foundation, Inc., 51 Franklin Street, Fifth Floor, + * Boston, MA 02110-1301, USA. +*/ + +//pagetool includes +#include "SimpleHeaderFooterWidget.h" +#include "SimpleSetupWidget.h" +#include "KWPageTool.h" +#include "frames/KWTextFrameSet.h" + +//words includes +#include "KWDocument.h" +#include "KWCanvas.h" + +//Qt includes +#include +#include + +//calligra includes +#include +#include +#include +#include +#include +#include +#include + +KWPageTool::KWPageTool(KoCanvasBase *canvas) + : KoToolBase(canvas) +{ + m_canvas = dynamic_cast(canvas); + if (m_canvas) { + m_document = m_canvas->document(); + } +} + +KWPageTool::~KWPageTool() +{ +} + +void KWPageTool::paint( QPainter &painter, const KoViewConverter &converter) +{ + Q_UNUSED(painter); + Q_UNUSED(converter); +} + +void KWPageTool::activate(ToolActivation toolActivation, const QSet &shapes) +{ + useCursor(Qt::ArrowCursor); + repaintDecorations(); + Q_UNUSED(toolActivation); + Q_UNUSED(shapes); +} + +void KWPageTool::mousePressEvent(KoPointerEvent *event) +{ + event->ignore(); +} + +void KWPageTool::mouseMoveEvent(KoPointerEvent *event) +{ + Q_UNUSED(event); +} + +void KWPageTool::mouseReleaseEvent(KoPointerEvent *event) +{ + Q_UNUSED(event); +} + +void KWPageTool::insertPageBreak() +{ + if (m_document->mainFrameSet()) { + // lets just add one to the main text frameset + KoTextEditor *editor = KoTextDocument(m_document->mainFrameSet()->document()).textEditor(); + if (editor == KoTextEditor::getTextEditorFromCanvas(m_canvas)) { + editor->insertFrameBreak(); + } + } +} + +QList KWPageTool::createOptionWidgets() +{ + QList widgets; + + SimpleSetupWidget *ssw = new SimpleSetupWidget(m_canvas->view()); + ssw->setWindowTitle(i18n("Page Setup")); + widgets.append(ssw); + + SimpleHeaderFooterWidget *shfw = new SimpleHeaderFooterWidget(m_canvas->view()); + shfw->setWindowTitle(i18n("Header & Footer")); + widgets.append(shfw); + + return widgets; +} + +#include "KWPageTool.moc" + + diff -Nru calligra-2.3.86/words/part/pagetool/KWPageToolFactory.cpp calligra-2.3.87/words/part/pagetool/KWPageToolFactory.cpp --- calligra-2.3.86/words/part/pagetool/KWPageToolFactory.cpp 1970-01-01 00:00:00.000000000 +0000 +++ calligra-2.3.87/words/part/pagetool/KWPageToolFactory.cpp 2012-01-28 07:04:49.000000000 +0000 @@ -0,0 +1,49 @@ +/* + * Copyright (C) 2011 Jignesh Kakadiya + * + * This program is free software; you can redistribute it and/or modify + * it under the terms of the GNU Lesser General Public License as published by + * the Free Software Foundation; either version 2 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU Lesser General Public License + * along with this program; if not, write to the Free Software + * Foundation, Inc., 51 Franklin Street, Fifth Floor, + * Boston, MA 02110-1301, USA. +*/ + +#include "KWPageToolFactory.h" +#include "KWPageTool.h" +#include + +#include +#include + +KWPageToolFactory::KWPageToolFactory() + : KoToolFactoryBase("PageToolFactory_ID") +{ + setToolTip(i18n("Page layout")); + setToolType(dynamicToolType()+",calligrawords"); + setIcon("tool-pagelayout"); + setPriority(25); + setActivationShapeId("flake/always"); +} + +KWPageToolFactory::~KWPageToolFactory() +{ +} + +bool KWPageToolFactory::canCreateTool(KoCanvasBase *canvas) const +{ + return true; +} + +KoToolBase* KWPageToolFactory::createTool(KoCanvasBase *canvas) +{ + return new KWPageTool(canvas); +} diff -Nru calligra-2.3.86/words/part/pagetool/KWPageToolFactory.h calligra-2.3.87/words/part/pagetool/KWPageToolFactory.h --- calligra-2.3.86/words/part/pagetool/KWPageToolFactory.h 1970-01-01 00:00:00.000000000 +0000 +++ calligra-2.3.87/words/part/pagetool/KWPageToolFactory.h 2012-01-28 07:04:49.000000000 +0000 @@ -0,0 +1,36 @@ +/* This file is part of the KDE project + * + * Copyright (C) 2008 Casper Boemann + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU Library General Public + * License as published by the Free Software Foundation; either + * version 2 of the License, or (at your option) any later version. + * + * This library is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + * Library General Public License for more details. + * + * You should have received a copy of the GNU Library General Public License + * along with this library; see the file COPYING.LIB. If not, write to + * the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, + * Boston, MA 02110-1301, USA. + */ + +#ifndef KWPAGETOOLFACTORY_H +#define KWPAGETOOLFACTORY_H + +#include + +/// Factory for the KPrAnimationTool +class KWPageToolFactory : public KoToolFactoryBase { +public: + /// constructor + KWPageToolFactory(); + ~KWPageToolFactory(); + + bool canCreateTool(KoCanvasBase *canvas) const; + KoToolBase* createTool(KoCanvasBase *canvas); +}; +#endif \ No newline at end of file diff -Nru calligra-2.3.86/words/part/pagetool/KWPageTool.h calligra-2.3.87/words/part/pagetool/KWPageTool.h --- calligra-2.3.86/words/part/pagetool/KWPageTool.h 1970-01-01 00:00:00.000000000 +0000 +++ calligra-2.3.87/words/part/pagetool/KWPageTool.h 2012-01-28 07:04:49.000000000 +0000 @@ -0,0 +1,67 @@ +/* + * Copyright (C) 2011 Jignesh Kakadiya + * + * This program is free software; you can redistribute it and/or modify + * it under the terms of the GNU Lesser General Public License as published by + * the Free Software Foundation; either version 2 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU Lesser General Public License + * along with this program; if not, write to the Free Software + * Foundation, Inc., 51 Franklin Street, Fifth Floor, + * Boston, MA 02110-1301, USA. +*/ + +#ifndef KWPAGETOOL_H +#define KWPAGETOOL_H + +#include + +class KWCanvas; +class KWDocument; + +class KWPageTool : public KoToolBase +{ + Q_OBJECT +public: + explicit KWPageTool(KoCanvasBase *canvas); + virtual ~KWPageTool(); + +public: + virtual void paint(QPainter &painter, const KoViewConverter &converter); + +public slots: + virtual void activate(ToolActivation toolActivation, const QSet &shapes); + +public: // Events + + virtual void mousePressEvent(KoPointerEvent *event); + virtual void mouseMoveEvent(KoPointerEvent *event); + virtual void mouseReleaseEvent(KoPointerEvent *event); +// virtual void mouseDoubleClickEvent(KoPointerEvent *event); + +// virtual void keyPressEvent(QKeyEvent *event); + +private slots: + ///Force the remaining content on the page to next page. + void insertPageBreak(); + +private: + KWCanvas *getCanvas() const; + KWDocument *getDocument() const; + +protected: + QList createOptionWidgets(); + +private: + KWCanvas *m_canvas; + KWDocument *m_document; +}; + +#endif + diff -Nru calligra-2.3.86/words/part/pagetool/SimpleHeaderFooterWidget.cpp calligra-2.3.87/words/part/pagetool/SimpleHeaderFooterWidget.cpp --- calligra-2.3.86/words/part/pagetool/SimpleHeaderFooterWidget.cpp 1970-01-01 00:00:00.000000000 +0000 +++ calligra-2.3.87/words/part/pagetool/SimpleHeaderFooterWidget.cpp 2012-01-28 07:04:49.000000000 +0000 @@ -0,0 +1,35 @@ +/* + * Copyright (C) 2012 C. Boemann + * + * This program is free software; you can redistribute it and/or modify + * it under the terms of the GNU Lesser General Public License as published by + * the Free Software Foundation; either version 2 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU Lesser General Public License + * along with this program; if not, write to the Free Software + * Foundation, Inc., 51 Franklin Street, Fifth Floor, + * Boston, MA 02110-1301, USA. +*/ + +#include "SimpleHeaderFooterWidget.h" + +#include "KWView.h" + +SimpleHeaderFooterWidget::SimpleHeaderFooterWidget(KWView *view, QWidget *parent) + : QWidget(parent) +{ + widget.setupUi(this); + + widget.insertFooter->setDefaultAction(view->action("insert_footer")); + widget.insertHeader->setDefaultAction(view->action("insert_header")); +} + +SimpleHeaderFooterWidget::~SimpleHeaderFooterWidget() +{ +} diff -Nru calligra-2.3.86/words/part/pagetool/SimpleHeaderFooterWidget.h calligra-2.3.87/words/part/pagetool/SimpleHeaderFooterWidget.h --- calligra-2.3.86/words/part/pagetool/SimpleHeaderFooterWidget.h 1970-01-01 00:00:00.000000000 +0000 +++ calligra-2.3.87/words/part/pagetool/SimpleHeaderFooterWidget.h 2012-01-28 07:04:49.000000000 +0000 @@ -0,0 +1,41 @@ +/* + * Copyright (C) 2012 C. Boemann + * + * This program is free software; you can redistribute it and/or modify + * it under the terms of the GNU Lesser General Public License as published by + * the Free Software Foundation; either version 2 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU Lesser General Public License + * along with this program; if not, write to the Free Software + * Foundation, Inc., 51 Franklin Street, Fifth Floor, + * Boston, MA 02110-1301, USA. +*/ + +#ifndef SIMPLEHEADERFOOTERWIDGET_H +#define SIMPLEHEADERFOOTERWIDGET_H + +#include + +#include "ui_SimpleHeaderFooterWidget.h" + +class KWView; + +class SimpleHeaderFooterWidget : public QWidget +{ + Q_OBJECT +public: + + SimpleHeaderFooterWidget(KWView *view, QWidget *parent = 0); + ~SimpleHeaderFooterWidget(); + +private: + Ui::SimpleHeaderFooterWidget widget; +}; + +#endif // SIMPLEHEADERFOOTERWIDGET_H diff -Nru calligra-2.3.86/words/part/pagetool/SimpleHeaderFooterWidget.ui calligra-2.3.87/words/part/pagetool/SimpleHeaderFooterWidget.ui --- calligra-2.3.86/words/part/pagetool/SimpleHeaderFooterWidget.ui 1970-01-01 00:00:00.000000000 +0000 +++ calligra-2.3.87/words/part/pagetool/SimpleHeaderFooterWidget.ui 2012-01-28 07:04:49.000000000 +0000 @@ -0,0 +1,38 @@ + + + SimpleHeaderFooterWidget + + + + 0 + 0 + 86 + 74 + + + + Form + + + + + + ... + + + + + + + ... + + + + + + + + + + + diff -Nru calligra-2.3.86/words/part/pagetool/SimpleSetupWidget.cpp calligra-2.3.87/words/part/pagetool/SimpleSetupWidget.cpp --- calligra-2.3.86/words/part/pagetool/SimpleSetupWidget.cpp 1970-01-01 00:00:00.000000000 +0000 +++ calligra-2.3.87/words/part/pagetool/SimpleSetupWidget.cpp 2012-01-28 07:04:49.000000000 +0000 @@ -0,0 +1,34 @@ +/* + * Copyright (C) 2011 Jignesh Kakadiya + * + * This program is free software; you can redistribute it and/or modify + * it under the terms of the GNU Lesser General Public License as published by + * the Free Software Foundation; either version 2 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU Lesser General Public License + * along with this program; if not, write to the Free Software + * Foundation, Inc., 51 Franklin Street, Fifth Floor, + * Boston, MA 02110-1301, USA. +*/ + +#include "SimpleSetupWidget.h" + +#include "KWView.h" + +SimpleSetupWidget::SimpleSetupWidget(KWView *view, QWidget *parent) + : QWidget(parent) +{ + widget.setupUi(this); + + widget.setup->setDefaultAction(view->action("format_page")); +} + +SimpleSetupWidget::~SimpleSetupWidget() +{ +} diff -Nru calligra-2.3.86/words/part/pagetool/SimpleSetupWidget.h calligra-2.3.87/words/part/pagetool/SimpleSetupWidget.h --- calligra-2.3.86/words/part/pagetool/SimpleSetupWidget.h 1970-01-01 00:00:00.000000000 +0000 +++ calligra-2.3.87/words/part/pagetool/SimpleSetupWidget.h 2012-01-28 07:04:49.000000000 +0000 @@ -0,0 +1,41 @@ +/* + * Copyright (C) 2011 Jignesh Kakadiya + * + * This program is free software; you can redistribute it and/or modify + * it under the terms of the GNU Lesser General Public License as published by + * the Free Software Foundation; either version 2 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU Lesser General Public License + * along with this program; if not, write to the Free Software + * Foundation, Inc., 51 Franklin Street, Fifth Floor, + * Boston, MA 02110-1301, USA. +*/ + +#ifndef SIMPLESETUPWIDGET_H +#define SIMPLESETUPWIDGET_H + +#include + +#include "ui_SimpleSetupWidget.h" + +class KWView; + +class SimpleSetupWidget : public QWidget +{ + Q_OBJECT +public: + + SimpleSetupWidget(KWView *view, QWidget *parent = 0); + ~SimpleSetupWidget(); + +private: + Ui::SimpleSetupWidget widget; +}; + +#endif // SIMPLESETUPWIDGET_H diff -Nru calligra-2.3.86/words/part/pagetool/SimpleSetupWidget.ui calligra-2.3.87/words/part/pagetool/SimpleSetupWidget.ui --- calligra-2.3.86/words/part/pagetool/SimpleSetupWidget.ui 1970-01-01 00:00:00.000000000 +0000 +++ calligra-2.3.87/words/part/pagetool/SimpleSetupWidget.ui 2012-01-28 07:04:49.000000000 +0000 @@ -0,0 +1,31 @@ + + + SimpleSetupWidget + + + + 0 + 0 + 86 + 74 + + + + Form + + + + + + ... + + + + + + + + + + + diff -Nru calligra-2.3.86/words/part/words.desktop calligra-2.3.87/words/part/words.desktop --- calligra-2.3.86/words/part/words.desktop 2012-01-07 03:25:03.000000000 +0000 +++ calligra-2.3.87/words/part/words.desktop 2012-01-28 07:04:49.000000000 +0000 @@ -3,6 +3,7 @@ Name=Calligra Words Name[bg]=Calligra Words Name[ca]=Words del Calligra +Name[ca@valencia]=Words del Calligra Name[cs]=Calligra Words Name[da]=Calligra Words Name[de]=Calligra Words @@ -31,7 +32,7 @@ GenericName[en_GB]=Word Processor GenericName[es]=Procesador de textos GenericName[et]=Tekstitöötlus -GenericName[fi]=Tekstinkäsittelyohjelma +GenericName[fi]=Tekstinkäsittely GenericName[fr]=Traitement de texte GenericName[fy]=Tekstferwurker GenericName[ga]=Próiseálaí Focal @@ -67,6 +68,7 @@ Comment=Write documents Comment[bg]=Писане на документи Comment[ca]=Escriviu documents +Comment[ca@valencia]=Escriviu documents Comment[cs]=Zapsat dokumenty Comment[da]=Skriv dokumenter Comment[de]=Dokumente verfassen diff -Nru calligra-2.3.86/words/part/wordspart.desktop calligra-2.3.87/words/part/wordspart.desktop --- calligra-2.3.86/words/part/wordspart.desktop 2012-01-07 03:25:03.000000000 +0000 +++ calligra-2.3.87/words/part/wordspart.desktop 2012-01-28 07:04:49.000000000 +0000 @@ -3,6 +3,7 @@ Name=Calligra Word Processing Component Name[bg]=Компонент за текстообработка в Calligra Name[ca]=Component de processament de textos del Calligra +Name[ca@valencia]=Component de processament de textos del Calligra Name[cs]=Komponenta Calligra pro zpracování textu Name[da]=Calligra-komponent til tekstbehandling Name[de]=Calligra-Komponente für Textverarbeitung @@ -33,6 +34,7 @@ GenericName=Word processor GenericName[bg]=Текстообработваща програма GenericName[ca]=Processador de textos +GenericName[ca@valencia]=Processador de textos GenericName[cs]=Textový procesor GenericName[da]=Tekstbehandling GenericName[de]=Textverarbeitung @@ -40,6 +42,7 @@ GenericName[en_GB]=Word processor GenericName[es]=Procesador de textos GenericName[et]=Tekstitöötlus +GenericName[fi]=Tekstinkäsittely GenericName[hu]=Szövegszerkesztő GenericName[it]=Elaboratore di testi GenericName[nb]=Tekstbehandler diff -Nru calligra-2.3.86/words/part/words.rc calligra-2.3.87/words/part/words.rc --- calligra-2.3.86/words/part/words.rc 2012-01-07 03:25:03.000000000 +0000 +++ calligra-2.3.87/words/part/words.rc 2012-01-28 07:04:49.000000000 +0000 @@ -2,8 +2,6 @@

&File - - &Edit @@ -58,13 +56,11 @@ --> F&ormat - @@ -72,28 +68,17 @@ - - - - - &Settings - - - Spellcheck - Change Tracking - - - - + + diff -Nru calligra-2.3.86/words/plugins/scripting/krossmodulewords.desktop calligra-2.3.87/words/plugins/scripting/krossmodulewords.desktop --- calligra-2.3.86/words/plugins/scripting/krossmodulewords.desktop 2012-01-07 03:25:03.000000000 +0000 +++ calligra-2.3.87/words/plugins/scripting/krossmodulewords.desktop 2012-01-28 07:04:49.000000000 +0000 @@ -49,7 +49,7 @@ Comment=Allow execution of scripts Comment[bg]=Изпълнение на скриптове Comment[ca]=Permet l'execució d'scripts -Comment[ca@valencia]=Permet l'execució de seqüències +Comment[ca@valencia]=Permet l'execució d'scripts Comment[cs]=Umožní spouštění skriptů Comment[da]=Tillad kørsel af script Comment[de]=Ermöglicht das Ausführen von Skripten