Merge branch 'next' into corvuscorax/OP-1900_fixedwingautotakeoff_rebaserc6
@ -1,8 +1,8 @@
|
||||
|
||||
|
||||
# *************** OpenPilot commits guidelines ***************
|
||||
# *************** LibrePilot commits guidelines ***************
|
||||
# Each commit needs to have a message like the following sample:
|
||||
# OP-1150 UI for thermal calibration: Connect State machine to UI
|
||||
# LP-188 Determine AccelTau based on usage
|
||||
#
|
||||
# It needs to begin with a reference to one or more Jira tickets followed by a short description.
|
||||
# If needed add a longer description in the following lines, after an empty line.
|
||||
@ -11,13 +11,4 @@
|
||||
# make uncrustify_all
|
||||
# You can format flight or ground code only using respectively
|
||||
# uncrustify_flight or uncrustify_ground
|
||||
#
|
||||
# To automatically create a review, append the following smart commit messages:
|
||||
# +review OPReview
|
||||
#
|
||||
# To append the commit to an existing review, use the following smart commit message:
|
||||
# +review OPReview-NNN
|
||||
# For example "+review OPReview-609"
|
||||
#
|
||||
# *NOTE* leave an empty line between the commit message and "smart commit command"
|
||||
# Smart commits commands need to starts immediately at first column
|
||||
|
||||
|
45
.gitignore
vendored
@ -4,6 +4,9 @@
|
||||
/build
|
||||
/3rdparty
|
||||
|
||||
# Ignore user config
|
||||
/config
|
||||
|
||||
# Exclude temporary and system files
|
||||
Thumbs.db
|
||||
.DS_Store
|
||||
@ -25,29 +28,25 @@ core
|
||||
/flight/Project/OpenPilotOSX/OpenPilotOSX.xcodeproj/*.pbxuser
|
||||
|
||||
# ground
|
||||
openpilotgcs-build-desktop
|
||||
ground/openpilotgcs/.cproject
|
||||
ground/openpilotgcs/.project
|
||||
ground/openpilotgcs/.settings
|
||||
gcs-build-desktop
|
||||
ground/gcs/.cproject
|
||||
ground/gcs/.project
|
||||
ground/gcs/.settings
|
||||
|
||||
# Ignore some of the .pro.user files
|
||||
# Ignore .pro.user files
|
||||
*.pro.user
|
||||
/ground/openpilotgcs/openpilotgcs.pro.user
|
||||
/ground/uavobjgenerator/uavobjgenerator.pro.user
|
||||
/ground/uavobjects/uavobjects.pro.user
|
||||
/ground/ground.pro.user
|
||||
/ground/openpilotgcs/src/libs/sdlgamepad.pro.user
|
||||
|
||||
# Misc artifacts
|
||||
/ground/openpilotgcs/share/openpilotgcs/sounds/normalize.exe
|
||||
/ground/openpilotgcs/share/openpilotgcs/sounds/default/normalize.exe
|
||||
/ground/openpilotgcs/share/openpilotgcs/translations/extract-mimetypes.xq
|
||||
/ground/openpilotgcs/src/experimental/tools/DocumentationHelper/ui_mainwindow.h
|
||||
/ground/openpilotgcs/src/libs/qextserialport/.hg
|
||||
/ground/openpilotgcs/src/libs/qextserialport/.hgtags
|
||||
/ground/openpilotgcs/src/libs/qwt/qwt.prf
|
||||
/ground/openpilotgcs/src/libs/qwt/designer
|
||||
/ground/openpilotgcs/src/plugins/ipconnection/ui_ipconnectionoptionspage.h
|
||||
*.exe
|
||||
*.log
|
||||
*.opl
|
||||
/ground/gcs/share/translations/extract-mimetypes.xq
|
||||
/ground/gcs/src/experimental/tools/DocumentationHelper/ui_mainwindow.h
|
||||
/ground/gcs/src/libs/qextserialport/.hg
|
||||
/ground/gcs/src/libs/qextserialport/.hgtags
|
||||
/ground/gcs/src/libs/qwt/qwt.prf
|
||||
/ground/gcs/src/libs/qwt/designer
|
||||
/ground/gcs/src/plugins/ipconnection/ui_ipconnectionoptionspage.h
|
||||
|
||||
# Ignore intermediate files generated by command-line android builds
|
||||
# Couldn't figure out how to force these files into the ./build directory
|
||||
@ -60,11 +59,12 @@ ground/openpilotgcs/.settings
|
||||
/androidgcs/gen/
|
||||
|
||||
# Ignore Eclipse Projects and Metadata
|
||||
/.cproject
|
||||
/.project
|
||||
.cproject
|
||||
.project
|
||||
/.metadata
|
||||
/.settings
|
||||
/.pydevproject
|
||||
/workspace
|
||||
|
||||
# Ignore Eclipse temp folder, git plugin based?
|
||||
RemoteSystemsTempFiles
|
||||
@ -73,3 +73,6 @@ RemoteSystemsTempFiles
|
||||
*.rej
|
||||
*.orig
|
||||
*.diff~
|
||||
|
||||
# ignore ccache storage
|
||||
.ccache
|
||||
|
17
.travis.yml
Normal file
@ -0,0 +1,17 @@
|
||||
language: cpp
|
||||
|
||||
sudo: required
|
||||
|
||||
dist: trusty
|
||||
|
||||
before_install:
|
||||
- sudo add-apt-repository ppa:librepilot/tools -y
|
||||
- sudo apt-get update -q
|
||||
- sudo apt-get install -y libudev-dev libusb-1.0-0-dev libsdl1.2-dev python libopenscenegraph-dev qt56-meta-minimal qt56svg qt56script qt56serialport qt56multimedia qt56translations qt56tools
|
||||
|
||||
script: . /opt/qt56/bin/qt56-env.sh && make gcs CCACHE=ccache GCS_EXTRA_CONF=osg
|
||||
|
||||
git:
|
||||
depth: 500
|
||||
|
||||
cache: ccache
|
82
CONTRIBUTING.md
Normal file
@ -0,0 +1,82 @@
|
||||
# How to build from source?
|
||||
|
||||
Both development environment and GCS are supported on Windows, Linux and Mac OS X.
|
||||
|
||||
# Install prerequisites
|
||||
|
||||
The first step is to Install all OS specific prerequisites.
|
||||
|
||||
## Mac OS X
|
||||
|
||||
Install XCode and its relatated command line tools (follow Apple documentation). Install git, curl and p7zip.
|
||||
|
||||
You can use brew with `brew install git curl p7zip` or macport with `sudo port install git curl p7zip`.
|
||||
|
||||
|
||||
## Ubuntu
|
||||
|
||||
sudo apt-get install git build-essential curl gdb wget debhelper p7zip-full unzip flex bison libsdl1.2-dev libudev-dev libusb-1.0-0-dev libc6-i386 mesa-common-dev
|
||||
|
||||
|
||||
## Windows
|
||||
|
||||
### Install [Msys2](https://msys2.github.io/)
|
||||
|
||||
Follow the instructions on the web site. You can either install the i686 (Win32) or x86_64 (Win64) version.
|
||||
It is recommended to go for the Win64 Shell if possible.
|
||||
The x86_64 version has both Win32 and Win64 shells and it is possible to build both i686 and x86_64 applications.
|
||||
|
||||
### Add the LibrePilot MinGW package repository
|
||||
|
||||
Add the following lines at the end of your /etc/pacman.conf file:
|
||||
|
||||
[librepilot-mingw]
|
||||
SigLevel = Optional TrustAll
|
||||
Server = http://download.librepilot.org/repo/mingw
|
||||
|
||||
### Install required packages
|
||||
|
||||
#### For i686 applications
|
||||
|
||||
Start a MinGW-w64 Win64 Shell or a MinGW-w64 Win32 Shell.
|
||||
|
||||
pacman -Sy
|
||||
pacman -S --needed git unzip tar mingw-w64-i686-toolchain mingw-w64-i686-ccache mingw-w64-i686-qt5 mingw-w64-i686-SDL mingw-w64-i686-mesa mingw-w64-i686-openssl mingw-w64-i686-gdal-minimal mingw-w64-i686-OpenSceneGraph mingw-w64-i686-osgearth
|
||||
|
||||
Optionally install debug packages:
|
||||
|
||||
pacman -S --needed mingw-w64-i686-OpenSceneGraph-debug mingw-w64-i686-osgearth-debug
|
||||
|
||||
#### For x86_64 applications
|
||||
|
||||
Start a MinGW-w64 Win64 Shell.
|
||||
|
||||
pacman -Sy
|
||||
pacman -S --needed git unzip tar mingw-w64-x86_64-toolchain mingw-w64-x86_64-ccache mingw-w64-x86_64-qt5 mingw-w64-x86_64-SDL mingw-w64-x86_64-mesa mingw-w64-x86_64-openssl mingw-w64-x86_64-gdal-minimal mingw-w64-x86_64-OpenSceneGraph mingw-w64-x86_64-osgearth
|
||||
|
||||
Optionally install debug packages:
|
||||
|
||||
pacman -S --needed mingw-w64-x86_64-OpenSceneGraph-debug mingw-w64-x86_64-osgearth-debug
|
||||
|
||||
**NOTE** On Windows you need to run the mingw version of make, which is `mingw32-make`
|
||||
|
||||
|
||||
# Setup the build environment and build
|
||||
|
||||
The `all_sdk_install` target will automatically retrieve and install all needed tools (qt, arm gcc, etc.) in a local folder `/path/to/LibrePilot_root/tools`
|
||||
|
||||
## Ubuntu / Mac OS X
|
||||
|
||||
make all_sdk_install
|
||||
make package
|
||||
|
||||
## Windows
|
||||
|
||||
mingw32-make all_sdk_install
|
||||
mingw32-make package
|
||||
|
||||
The `package` target will build the complete installable package for the current platform.
|
||||
|
||||
You can build the `all` target to just build the software.
|
||||
|
||||
Run `make` with no arguments to show the complete list of supported targets.
|
11
CREDITS.txt
@ -1,4 +1,4 @@
|
||||
Connor Abbott
|
||||
Connor Abbott
|
||||
Sergiy Anikeyev
|
||||
David Ankers
|
||||
Fredrik Arvidsson
|
||||
@ -6,13 +6,14 @@ Pedro Assuncao
|
||||
Werner Backes
|
||||
Jose Barros
|
||||
Alex Beck
|
||||
Roy Bekken
|
||||
Andre Bernet
|
||||
Mikael Blomqvist
|
||||
Pete Boehl
|
||||
Berkely Brown
|
||||
Joel Brueziere
|
||||
Thierry Bugeat
|
||||
Samuel Brugger
|
||||
Thierry Bugeat
|
||||
Glenn Campigli
|
||||
David Carlson
|
||||
Mike Carr
|
||||
@ -47,6 +48,7 @@ Andy Honecker
|
||||
Patrick Huebner
|
||||
Ryan Hunt
|
||||
Mark James
|
||||
Paul Jewell
|
||||
Michael Johnston
|
||||
Stefan Karlsson
|
||||
Ricky King
|
||||
@ -61,12 +63,13 @@ Edouard Lafargue
|
||||
Laurent Lalanne
|
||||
Fredrik Larsson
|
||||
Xavier Lecluse
|
||||
Richard Von Lehe
|
||||
Pablo Lema
|
||||
Matt Lipski
|
||||
David Llama
|
||||
Jasper Van Loenen
|
||||
Ben Matthews
|
||||
Greg Matthews
|
||||
Greg Matthews
|
||||
Guy McCaldin
|
||||
Alessio Morale
|
||||
Gary Mortimer
|
||||
@ -107,11 +110,9 @@ Rowan Taubitz
|
||||
Jim Allen Thibodaux
|
||||
Andrew Thoms
|
||||
Vladimir Timofeev
|
||||
Jasper Van Loenen
|
||||
Philippe Vanhaesendonck
|
||||
Vassilis Varveropoulos
|
||||
Kevin Vertucio
|
||||
Richard Von Lehe
|
||||
Alex Vrubel
|
||||
Mike Walters
|
||||
Sam Wang
|
||||
|
60
LICENSE.txt
@ -1,64 +1,6 @@
|
||||
The OpenPilot code is licensed under the GPLv3. There are a few minor exceptions to this so please see
|
||||
The LibrePilot code is licensed under the GPLv3. There are a few minor exceptions to this so please see
|
||||
the headers of all source code for copyright and license information. The full text of the GPLv3 can be
|
||||
read here: http://www.gnu.org/licenses/gpl-3.0.txt
|
||||
|
||||
Artwork is licensed under the Creative Commons BY-SA v3 license.
|
||||
|
||||
Documentation including translations is also licensed under the Creative Commons BY-SA v3 license.
|
||||
For details please see: http://creativecommons.org/licenses/by-sa/3.0/
|
||||
|
||||
Licenses for the hardware files are included in the directories that contain the hardware, not all items
|
||||
are under the same license and you must check the files for each individual hardware design. Please note
|
||||
that some of the hardware files are licensed under the Creative Commons BY-NC-SA v3 license, this is a
|
||||
non-commercial license. OpenPilot is purely a non-profit hobby project with zero commercial intent. If you
|
||||
just want people to work for free or do your R&D for zero cost, please find a project that allows this as
|
||||
that not what OpenPilot is about. We are hobbyists and we want to share our work with fellow hobbyists,
|
||||
additionally we need to ensure the future of the project and make sure it is sustainable.
|
||||
|
||||
If you wish to sell/distribute OpenPilot hardware or derivatives of OpenPilot hardware that are under a
|
||||
non-commercial license, please get in touch with one of the members of OpenPilot Foundation's
|
||||
administration committee. We can then negotiate a license waiver where a portion of the profits are donated
|
||||
to the OpenPilot Project to ensure its survival and future progression. Please note that this is in
|
||||
reference to PCB and Schematic designs. For people wishing to combine OpenPilot in to a Ready to Fly
|
||||
solution, this is perfectly fine as long as OpenPilot PCBs are bought from the OpenPilot project or one
|
||||
of the approved distributors.
|
||||
|
||||
For details the non-commercial license please see: http://creativecommons.org/licenses/by-nc-sa/3.0/
|
||||
A quick summary of what this license talk means, firstly using any work that is licensed under a form of
|
||||
the Creative Commons BY license, requires that credit is to be given. The SA or Share Alike part of the
|
||||
license means that you must also use the same license in any work derived from the work under this license.
|
||||
|
||||
Hardware
|
||||
The items under the non-commercial license means exactly that: they are for non-commercial use only and
|
||||
any derivatives that are made are also covered by the same non-commercial license. The hardware files
|
||||
under a non-commercial license are for reference and for fellow hobbyists; they are not to be used to
|
||||
generate profit of any kind. Please note that even the OpenPilot project its self is a non-profit project.
|
||||
|
||||
For all items both non-commercial and items that allows commercial use, the OP logo must be placed on any
|
||||
work or derivative work and be clearly visible. If any web addresses are present on the hardware, these
|
||||
are also required to remain on any replications or any derivative work.
|
||||
|
||||
Documentation
|
||||
In documentation, authors names must be kept along with any logos. If documentation is for a physical
|
||||
product such as a schematic, the OpenPilot logo should be shown and any web addresses also displayed on
|
||||
the final physical hardware it was derived from.
|
||||
|
||||
Artwork
|
||||
If artwork is to be reused, the OpenPilot project should be credited. If for example this is a software
|
||||
application, credit should be given on the application splash screen or in a separate part of the
|
||||
application that is visible to users. For example the Help/About screen.
|
||||
|
||||
Contact Us
|
||||
If you are unsure, please contact one of the OpenPilot Foundation's administrators. Additionally, if you
|
||||
plan to use parts of the OpenPilot project in your own work, we would appreciate it if you get in touch
|
||||
with us anyway, it is possible we could combine efforts or have some work already in progress that might
|
||||
be helpful. This of course is our baby and we want to see what great things people do with it as well.
|
||||
|
||||
A final note, OpenPilot is a non-profit for fun project and we have only volunteers. A great deal of time,
|
||||
money and effort has been donated to this project; please respect the people that are part of it and their
|
||||
generosity. OpenPilot is funded entirely by the generous people who donate money and time to the community
|
||||
and help it grow. Giving full and proper credit is not only a legal requirement of the CC-BY-SA license,
|
||||
it is also the right thing to do.
|
||||
|
||||
Buying hardware from the OpenPilot project is very important to the survival and continuing progress of
|
||||
the project, a project like OpenPilot is extremely expensive to produce.
|
||||
|
708
Makefile
@ -1,5 +1,6 @@
|
||||
#
|
||||
# Top level Makefile for the OpenPilot project build system.
|
||||
# Top level Makefile for the LibrePilot Project build system.
|
||||
# Copyright (c) 2015, The LibrePilot Project, http://www.librepilot.org
|
||||
# Copyright (c) 2010-2013, The OpenPilot Team, http://www.openpilot.org
|
||||
# Use 'make help' for instructions.
|
||||
#
|
||||
@ -23,37 +24,63 @@
|
||||
# Lower level makefiles assume that these variables are defined. To ensure
|
||||
# that a special magic variable is exported here. It must be checked for
|
||||
# existance by each sub-make.
|
||||
export OPENPILOT_IS_COOL := Fuck Yeah!
|
||||
export TOP_LEVEL_MAKEFILE := TRUE
|
||||
|
||||
# It is possible to set OPENPILOT_DL_DIR and/or OPENPILOT_TOOLS_DIR environment
|
||||
# The root directory that this makefile resides in
|
||||
export ROOT_DIR := $(realpath $(dir $(lastword $(MAKEFILE_LIST))))
|
||||
|
||||
# Include some helper functions
|
||||
include $(ROOT_DIR)/make/functions.mk
|
||||
|
||||
# This file can be used to override default options using the "override" keyword
|
||||
CONFIG_FILE := config
|
||||
-include $(CONFIG_FILE)
|
||||
|
||||
##############################
|
||||
# It is possible to set DL_DIR and/or TOOLS_DIR environment
|
||||
# variables to override local tools download and installation directorys. So the
|
||||
# same toolchains can be used for all working copies. Particularly useful for CI
|
||||
# server build agents, but also for local installations.
|
||||
#
|
||||
# If no OPENPILOT_* variables found, makefile internal DL_DIR and TOOLS_DIR paths
|
||||
# will be used. They still can be overriden by the make command line parameters:
|
||||
# make DL_DIR=/path/to/download/directory TOOLS_DIR=/path/to/tools/directory targets...
|
||||
|
||||
# Function for converting Windows style slashes into Unix style
|
||||
slashfix = $(subst \,/,$(1))
|
||||
|
||||
# Function for converting an absolute path to one relative
|
||||
# to the top of the source tree
|
||||
toprel = $(subst $(realpath $(ROOT_DIR))/,,$(abspath $(1)))
|
||||
override DL_DIR := $(if $(DL_DIR),$(call slashfix,$(DL_DIR)),$(ROOT_DIR)/downloads)
|
||||
override TOOLS_DIR := $(if $(TOOLS_DIR),$(call slashfix,$(TOOLS_DIR)),$(ROOT_DIR)/tools)
|
||||
export DL_DIR
|
||||
export TOOLS_DIR
|
||||
|
||||
# Set up some macros for common directories within the tree
|
||||
export ROOT_DIR := $(realpath $(dir $(lastword $(MAKEFILE_LIST))))
|
||||
export DL_DIR := $(if $(OPENPILOT_DL_DIR),$(call slashfix,$(OPENPILOT_DL_DIR)),$(ROOT_DIR)/downloads)
|
||||
export TOOLS_DIR := $(if $(OPENPILOT_TOOLS_DIR),$(call slashfix,$(OPENPILOT_TOOLS_DIR)),$(ROOT_DIR)/tools)
|
||||
export BUILD_DIR := $(ROOT_DIR)/build
|
||||
export PACKAGE_DIR := $(ROOT_DIR)/build/package
|
||||
export DIST_DIR := $(ROOT_DIR)/build/dist
|
||||
export BUILD_DIR := $(CURDIR)/build
|
||||
export PACKAGE_DIR := $(BUILD_DIR)/package
|
||||
export DIST_DIR := $(BUILD_DIR)/dist
|
||||
export OPGCSSYNTHDIR := $(BUILD_DIR)/gcs-synthetics
|
||||
|
||||
DIRS = $(DL_DIR) $(TOOLS_DIR) $(BUILD_DIR) $(PACKAGE_DIR) $(DIST_DIR)
|
||||
DIRS := $(DL_DIR) $(TOOLS_DIR) $(BUILD_DIR) $(PACKAGE_DIR) $(DIST_DIR) $(OPGCSSYNTHDIR)
|
||||
|
||||
# Naming for binaries and packaging etc,.
|
||||
export ORG_BIG_NAME := LibrePilot
|
||||
GCS_LABEL := GCS
|
||||
GCS_BIG_NAME := $(ORG_BIG_NAME) $(GCS_LABEL)
|
||||
# These should be lowercase with no spaces
|
||||
export ORG_SMALL_NAME := $(call smallify,$(ORG_BIG_NAME))
|
||||
GCS_SMALL_NAME := $(call smallify,$(GCS_BIG_NAME))
|
||||
|
||||
WEBSITE_URL := http://librepilot.org
|
||||
GIT_URL := https://bitbucket.org/librepilot/librepilot.git
|
||||
GITWEB_URL := https://bitbucket.org/librepilot/librepilot
|
||||
# Change this once the DNS is set to http://wiki.librepilot.org/
|
||||
WIKI_URL_ROOT := https://librepilot.atlassian.net/wiki/display/LPDOC/
|
||||
USAGETRACKER_URL := https://usagetracker.librepilot.org/
|
||||
|
||||
PACKAGING_EMAIL_ADDRESS := packaging@librepilot.org
|
||||
|
||||
define DESCRIPTION_SHORT :=
|
||||
A ground control station and firmware for UAV flight controllers
|
||||
endef
|
||||
|
||||
define DESCRIPTION_LONG :=
|
||||
The LibrePilot open source project was founded in July 2015.
|
||||
It focuses on research and development of software and hardware to be used in a variety of applications including vehicle control and stabilization, unmanned autonomous vehicles and robotics.
|
||||
One of the project's primary goals is to provide an open and collaborative environment making it the ideal home for development of innovative ideas.
|
||||
endef
|
||||
|
||||
# Set up default build configurations (debug | release)
|
||||
GCS_BUILD_CONF := release
|
||||
GOOGLE_API_VERSION := 14
|
||||
|
||||
# Clean out undesirable variables from the environment and command-line
|
||||
# to remove the chance that they will cause problems with our build
|
||||
@ -81,7 +108,7 @@ $(foreach var, $(SANITIZE_DEPRECATED_VARS), $(eval $(call SANITIZE_VAR,$(var),de
|
||||
|
||||
# Make sure this isn't being run as root unless installing (no whoami on Windows, but that is ok here)
|
||||
ifeq ($(shell whoami 2>/dev/null),root)
|
||||
ifeq ($(filter install,$(MAKECMDGOALS)),)
|
||||
ifeq ($(filter install uninstall,$(MAKECMDGOALS)),)
|
||||
ifndef FAKEROOTKEY
|
||||
$(error You should not be running this as root)
|
||||
endif
|
||||
@ -99,14 +126,7 @@ else ifeq ($(V), 0)
|
||||
else ifeq ($(V), 1)
|
||||
endif
|
||||
|
||||
# Make sure we know few things about the architecture before including
|
||||
# the tools.mk to ensure that we download/install the right tools.
|
||||
UNAME := $(shell uname)
|
||||
ARCH := $(shell uname -m)
|
||||
# Here and everywhere if not Linux or Mac then assume Windows
|
||||
ifeq ($(filter Linux Darwin, $(UNAME)), )
|
||||
UNAME := Windows
|
||||
endif
|
||||
ARCH := $(call get_arch)
|
||||
|
||||
# Include tools installers
|
||||
include $(ROOT_DIR)/make/tools.mk
|
||||
@ -116,14 +136,22 @@ include $(ROOT_DIR)/make/tools.mk
|
||||
|
||||
# We almost need to consider autoconf/automake instead of this
|
||||
ifeq ($(UNAME), Linux)
|
||||
QT_SPEC = linux-g++
|
||||
UAVOBJGENERATOR = $(BUILD_DIR)/uavobjgenerator/uavobjgenerator
|
||||
UAVOBJGENERATOR := $(BUILD_DIR)/uavobjgenerator/uavobjgenerator
|
||||
else ifeq ($(UNAME), Darwin)
|
||||
QT_SPEC = macx-g++
|
||||
UAVOBJGENERATOR = $(BUILD_DIR)/uavobjgenerator/uavobjgenerator
|
||||
UAVOBJGENERATOR := $(BUILD_DIR)/uavobjgenerator/uavobjgenerator
|
||||
else ifeq ($(UNAME), Windows)
|
||||
QT_SPEC = win32-g++
|
||||
UAVOBJGENERATOR = $(BUILD_DIR)/uavobjgenerator/uavobjgenerator.exe
|
||||
UAVOBJGENERATOR := $(BUILD_DIR)/uavobjgenerator/uavobjgenerator.exe
|
||||
endif
|
||||
|
||||
export UAVOBJGENERATOR
|
||||
|
||||
# Set up default build configurations (debug | release)
|
||||
GCS_BUILD_CONF := release
|
||||
|
||||
# Set extra configuration
|
||||
GCS_EXTRA_CONF += osg copy_osg
|
||||
ifeq ($(UNAME), Windows)
|
||||
GCS_EXTRA_CONF += osgearth
|
||||
endif
|
||||
|
||||
##############################
|
||||
@ -140,7 +168,7 @@ all_clean:
|
||||
@$(ECHO) " CLEAN $(call toprel, $(BUILD_DIR))"
|
||||
$(V1) [ ! -d "$(BUILD_DIR)" ] || $(RM) -rf "$(BUILD_DIR)"
|
||||
|
||||
.PONY: clean
|
||||
.PHONY: clean
|
||||
clean: all_clean
|
||||
|
||||
|
||||
@ -150,14 +178,16 @@ clean: all_clean
|
||||
#
|
||||
##############################
|
||||
|
||||
UAVOBJGENERATOR_DIR = $(BUILD_DIR)/uavobjgenerator
|
||||
UAVOBJGENERATOR_DIR := $(BUILD_DIR)/uavobjgenerator
|
||||
DIRS += $(UAVOBJGENERATOR_DIR)
|
||||
|
||||
.PHONY: uavobjgenerator
|
||||
uavobjgenerator $(UAVOBJGENERATOR): | $(UAVOBJGENERATOR_DIR)
|
||||
uavobjgenerator: $(UAVOBJGENERATOR)
|
||||
|
||||
$(UAVOBJGENERATOR): | $(UAVOBJGENERATOR_DIR)
|
||||
$(V1) cd $(UAVOBJGENERATOR_DIR) && \
|
||||
( [ -f Makefile ] || $(QMAKE) $(ROOT_DIR)/ground/uavobjgenerator/uavobjgenerator.pro \
|
||||
-spec $(QT_SPEC) CONFIG+=$(GCS_BUILD_CONF) CONFIG+=$(GCS_SILENT) ) && \
|
||||
CONFIG+='$(GCS_BUILD_CONF) $(GCS_EXTRA_CONF)' ) && \
|
||||
$(MAKE) --no-print-directory -w
|
||||
|
||||
UAVOBJ_TARGETS := gcs flight python matlab java wireshark
|
||||
@ -168,13 +198,13 @@ uavobjects: $(addprefix uavobjects_, $(UAVOBJ_TARGETS))
|
||||
UAVOBJ_XML_DIR := $(ROOT_DIR)/shared/uavobjectdefinition
|
||||
UAVOBJ_OUT_DIR := $(BUILD_DIR)/uavobject-synthetics
|
||||
|
||||
uavobjects_%: uavobjgenerator
|
||||
uavobjects_%: $(UAVOBJGENERATOR)
|
||||
@$(MKDIR) -p $(UAVOBJ_OUT_DIR)/$*
|
||||
$(V1) ( cd $(UAVOBJ_OUT_DIR)/$* && \
|
||||
$(UAVOBJGENERATOR) -$* $(UAVOBJ_XML_DIR) $(ROOT_DIR) ; \
|
||||
)
|
||||
|
||||
uavobjects_test: uavobjgenerator
|
||||
uavobjects_test: $(UAVOBJGENERATOR)
|
||||
$(V1) $(UAVOBJGENERATOR) -v $(UAVOBJ_XML_DIR) $(ROOT_DIR)
|
||||
|
||||
uavobjects_clean:
|
||||
@ -187,54 +217,6 @@ uavobjects_clean:
|
||||
#
|
||||
##############################
|
||||
|
||||
# Define some pointers to the various important pieces of the flight code
|
||||
# to prevent these being repeated in every sub makefile
|
||||
export PIOS := $(ROOT_DIR)/flight/pios
|
||||
export FLIGHTLIB := $(ROOT_DIR)/flight/libraries
|
||||
export OPMODULEDIR := $(ROOT_DIR)/flight/modules
|
||||
export OPUAVOBJ := $(ROOT_DIR)/flight/uavobjects
|
||||
export OPUAVTALK := $(ROOT_DIR)/flight/uavtalk
|
||||
export OPUAVSYNTHDIR := $(BUILD_DIR)/uavobject-synthetics/flight
|
||||
export OPGCSSYNTHDIR := $(BUILD_DIR)/openpilotgcs-synthetics
|
||||
|
||||
DIRS += $(OPGCSSYNTHDIR)
|
||||
|
||||
# Define supported board lists
|
||||
ALL_BOARDS := oplinkmini revolution osd revoproto simposix discoveryf4bare gpsplatinum revonano
|
||||
|
||||
# Short names of each board (used to display board name in parallel builds)
|
||||
oplinkmini_short := 'oplm'
|
||||
revolution_short := 'revo'
|
||||
osd_short := 'osd '
|
||||
revoproto_short := 'revp'
|
||||
revonano_short := 'revn'
|
||||
simposix_short := 'posx'
|
||||
discoveryf4bare_short := 'df4b'
|
||||
gpsplatinum_short := 'gps9'
|
||||
|
||||
# SimPosix only builds on Linux so drop it from the list for
|
||||
# all other platforms.
|
||||
ifneq ($(UNAME), Linux)
|
||||
ALL_BOARDS := $(filter-out simposix, $(ALL_BOARDS))
|
||||
endif
|
||||
|
||||
# Start out assuming that we'll build fw, bl and bu for all boards
|
||||
FW_BOARDS := $(ALL_BOARDS)
|
||||
BL_BOARDS := $(ALL_BOARDS)
|
||||
BU_BOARDS := $(ALL_BOARDS)
|
||||
EF_BOARDS := $(ALL_BOARDS)
|
||||
|
||||
# SimPosix doesn't have a BL, BU or EF target so we need to
|
||||
# filter them out to prevent errors on the all_flight target.
|
||||
BL_BOARDS := $(filter-out simposix, $(BL_BOARDS))
|
||||
BU_BOARDS := $(filter-out simposix gpsplatinum, $(BU_BOARDS))
|
||||
EF_BOARDS := $(filter-out simposix, $(EF_BOARDS))
|
||||
|
||||
# Generate the targets for whatever boards are left in each list
|
||||
FW_TARGETS := $(addprefix fw_, $(FW_BOARDS))
|
||||
BL_TARGETS := $(addprefix bl_, $(BL_BOARDS))
|
||||
BU_TARGETS := $(addprefix bu_, $(BU_BOARDS))
|
||||
EF_TARGETS := $(addprefix ef_, $(EF_BOARDS))
|
||||
|
||||
# When building any of the "all_*" targets, tell all sub makefiles to display
|
||||
# additional details on each line of output to describe which build and target
|
||||
@ -250,190 +232,10 @@ ifneq ($(word 2,$(MAKECMDGOALS)),)
|
||||
export ENABLE_MSG_EXTRA := yes
|
||||
endif
|
||||
|
||||
# TEMPLATES (used to generate build rules)
|
||||
FLIGHT_OUT_DIR := $(BUILD_DIR)/firmware
|
||||
DIRS += $(FLIGHT_OUT_DIR)
|
||||
|
||||
# $(1) = Canonical board name all in lower case (e.g. coptercontrol)
|
||||
# $(2) = Short name for board (e.g cc)
|
||||
define FW_TEMPLATE
|
||||
.PHONY: $(1) fw_$(1)
|
||||
$(1): fw_$(1)_opfw
|
||||
fw_$(1): fw_$(1)_opfw
|
||||
|
||||
fw_$(1)_%: uavobjects_flight
|
||||
$(V1) $$(ARM_GCC_VERSION_CHECK_TEMPLATE)
|
||||
$(V1) $(MKDIR) -p $(BUILD_DIR)/fw_$(1)/dep
|
||||
$(V1) cd $(ROOT_DIR)/flight/targets/boards/$(1)/firmware && \
|
||||
$$(MAKE) -r --no-print-directory \
|
||||
BUILD_TYPE=fw \
|
||||
BOARD_NAME=$(1) \
|
||||
BOARD_SHORT_NAME=$(2) \
|
||||
TOPDIR=$(ROOT_DIR)/flight/targets/boards/$(1)/firmware \
|
||||
OUTDIR=$(BUILD_DIR)/fw_$(1) \
|
||||
TARGET=fw_$(1) \
|
||||
$$*
|
||||
|
||||
.PHONY: $(1)_clean
|
||||
$(1)_clean: fw_$(1)_clean
|
||||
fw_$(1)_clean:
|
||||
@$(ECHO) " CLEAN $(call toprel, $(BUILD_DIR)/fw_$(1))"
|
||||
$(V1) $(RM) -fr $(BUILD_DIR)/fw_$(1)
|
||||
endef
|
||||
|
||||
# $(1) = Canonical board name all in lower case (e.g. coptercontrol)
|
||||
# $(2) = Short name for board (e.g cc)
|
||||
define BL_TEMPLATE
|
||||
.PHONY: bl_$(1)
|
||||
bl_$(1): bl_$(1)_bin
|
||||
bl_$(1)_bino: bl_$(1)_bin
|
||||
|
||||
bl_$(1)_%:
|
||||
$(V1) $$(ARM_GCC_VERSION_CHECK_TEMPLATE)
|
||||
$(V1) $(MKDIR) -p $(BUILD_DIR)/bl_$(1)/dep
|
||||
$(V1) cd $(ROOT_DIR)/flight/targets/boards/$(1)/bootloader && \
|
||||
$$(MAKE) -r --no-print-directory \
|
||||
BUILD_TYPE=bl \
|
||||
BOARD_NAME=$(1) \
|
||||
BOARD_SHORT_NAME=$(2) \
|
||||
TOPDIR=$(ROOT_DIR)/flight/targets/boards/$(1)/bootloader \
|
||||
OUTDIR=$(BUILD_DIR)/bl_$(1) \
|
||||
TARGET=bl_$(1) \
|
||||
$$*
|
||||
|
||||
.PHONY: unbrick_$(1)
|
||||
unbrick_$(1): bl_$(1)_hex
|
||||
$(if $(filter-out undefined,$(origin UNBRICK_TTY)),
|
||||
$(V0) @$(ECHO) " UNBRICK $(1) via $$(UNBRICK_TTY)"
|
||||
$(V1) $(STM32FLASH_DIR)/stm32flash \
|
||||
-w $(BUILD_DIR)/bl_$(1)/bl_$(1).hex \
|
||||
-g 0x0 \
|
||||
$$(UNBRICK_TTY)
|
||||
,
|
||||
$(V0) @$(ECHO)
|
||||
$(V0) @$(ECHO) "ERROR: You must specify UNBRICK_TTY=<serial-device> to use for unbricking."
|
||||
$(V0) @$(ECHO) " eg. $$(MAKE) $$@ UNBRICK_TTY=/dev/ttyUSB0"
|
||||
)
|
||||
|
||||
.PHONY: bl_$(1)_clean
|
||||
bl_$(1)_clean:
|
||||
@$(ECHO) " CLEAN $(call toprel, $(BUILD_DIR)/bl_$(1))"
|
||||
$(V1) $(RM) -fr $(BUILD_DIR)/bl_$(1)
|
||||
endef
|
||||
|
||||
# $(1) = Canonical board name all in lower case (e.g. coptercontrol)
|
||||
# $(2) = Short name for board (e.g cc)
|
||||
define BU_TEMPLATE
|
||||
.PHONY: bu_$(1)
|
||||
bu_$(1): bu_$(1)_opfw
|
||||
|
||||
bu_$(1)_%: bl_$(1)_bino
|
||||
$(V1) $(MKDIR) -p $(BUILD_DIR)/bu_$(1)/dep
|
||||
$(V1) cd $(ROOT_DIR)/flight/targets/common/bootloader_updater && \
|
||||
$$(MAKE) -r --no-print-directory \
|
||||
BUILD_TYPE=bu \
|
||||
BOARD_NAME=$(1) \
|
||||
BOARD_SHORT_NAME=$(2) \
|
||||
TOPDIR=$(ROOT_DIR)/flight/targets/common/bootloader_updater \
|
||||
OUTDIR=$(BUILD_DIR)/bu_$(1) \
|
||||
TARGET=bu_$(1) \
|
||||
$$*
|
||||
|
||||
.PHONY: bu_$(1)_clean
|
||||
bu_$(1)_clean:
|
||||
@$(ECHO) " CLEAN $(call toprel, $(BUILD_DIR)/bu_$(1))"
|
||||
$(V1) $(RM) -fr $(BUILD_DIR)/bu_$(1)
|
||||
endef
|
||||
|
||||
# $(1) = Canonical board name all in lower case (e.g. coptercontrol)
|
||||
# $(2) = Short name for board (e.g cc)
|
||||
define EF_TEMPLATE
|
||||
.PHONY: ef_$(1)
|
||||
ef_$(1): ef_$(1)_bin
|
||||
|
||||
ef_$(1)_%: bl_$(1)_bin fw_$(1)_opfw
|
||||
$(V1) $(MKDIR) -p $(BUILD_DIR)/ef_$(1)
|
||||
$(V1) cd $(ROOT_DIR)/flight/targets/common/entire_flash && \
|
||||
$$(MAKE) -r --no-print-directory \
|
||||
BUILD_TYPE=ef \
|
||||
BOARD_NAME=$(1) \
|
||||
BOARD_SHORT_NAME=$(2) \
|
||||
DFU_CMD="$(DFUUTIL_DIR)/bin/dfu-util" \
|
||||
TOPDIR=$(ROOT_DIR)/flight/targets/common/entire_flash \
|
||||
OUTDIR=$(BUILD_DIR)/ef_$(1) \
|
||||
TARGET=ef_$(1) \
|
||||
$$*
|
||||
|
||||
.PHONY: ef_$(1)_clean
|
||||
ef_$(1)_clean:
|
||||
@$(ECHO) " CLEAN $(call toprel, $(BUILD_DIR)/ef_$(1))"
|
||||
$(V1) $(RM) -fr $(BUILD_DIR)/ef_$(1)
|
||||
endef
|
||||
|
||||
# $(1) = Canonical board name all in lower case (e.g. coptercontrol)
|
||||
define BOARD_PHONY_TEMPLATE
|
||||
.PHONY: all_$(1)
|
||||
all_$(1): $$(filter fw_$(1), $$(FW_TARGETS))
|
||||
all_$(1): $$(filter bl_$(1), $$(BL_TARGETS))
|
||||
all_$(1): $$(filter bu_$(1), $$(BU_TARGETS))
|
||||
all_$(1): $$(filter ef_$(1), $$(EF_TARGETS))
|
||||
|
||||
.PHONY: all_$(1)_clean
|
||||
all_$(1)_clean: $$(addsuffix _clean, $$(filter fw_$(1), $$(FW_TARGETS)))
|
||||
all_$(1)_clean: $$(addsuffix _clean, $$(filter bl_$(1), $$(BL_TARGETS)))
|
||||
all_$(1)_clean: $$(addsuffix _clean, $$(filter bu_$(1), $$(BU_TARGETS)))
|
||||
all_$(1)_clean: $$(addsuffix _clean, $$(filter ef_$(1), $$(EF_TARGETS)))
|
||||
endef
|
||||
|
||||
# Generate flight build rules
|
||||
.PHONY: all_fw all_fw_clean
|
||||
all_fw: $(addsuffix _opfw, $(FW_TARGETS))
|
||||
all_fw_clean: $(addsuffix _clean, $(FW_TARGETS))
|
||||
|
||||
.PHONY: all_bl all_bl_clean
|
||||
all_bl: $(addsuffix _bin, $(BL_TARGETS))
|
||||
all_bl_clean: $(addsuffix _clean, $(BL_TARGETS))
|
||||
|
||||
.PHONY: all_bu all_bu_clean
|
||||
all_bu: $(addsuffix _opfw, $(BU_TARGETS))
|
||||
all_bu_clean: $(addsuffix _clean, $(BU_TARGETS))
|
||||
|
||||
.PHONY: all_ef all_ef_clean
|
||||
all_ef: $(EF_TARGETS)
|
||||
all_ef_clean: $(addsuffix _clean, $(EF_TARGETS))
|
||||
|
||||
.PHONY: all_flight all_flight_clean
|
||||
all_flight: all_fw all_bl all_bu all_ef
|
||||
all_flight_clean: all_fw_clean all_bl_clean all_bu_clean all_ef_clean
|
||||
|
||||
# Expand the groups of targets for each board
|
||||
$(foreach board, $(ALL_BOARDS), $(eval $(call BOARD_PHONY_TEMPLATE,$(board))))
|
||||
|
||||
# Expand the firmware rules
|
||||
$(foreach board, $(ALL_BOARDS), $(eval $(call FW_TEMPLATE,$(board),$($(board)_short))))
|
||||
|
||||
# Expand the bootloader rules
|
||||
$(foreach board, $(ALL_BOARDS), $(eval $(call BL_TEMPLATE,$(board),$($(board)_short))))
|
||||
|
||||
# Expand the bootloader updater rules
|
||||
$(foreach board, $(ALL_BOARDS), $(eval $(call BU_TEMPLATE,$(board),$($(board)_short))))
|
||||
|
||||
# Expand the entire-flash rules
|
||||
$(foreach board, $(ALL_BOARDS), $(eval $(call EF_TEMPLATE,$(board),$($(board)_short))))
|
||||
|
||||
.PHONY: sim_win32
|
||||
sim_win32: sim_win32_exe
|
||||
|
||||
sim_win32_%: uavobjects_flight
|
||||
$(V1) $(MKDIR) -p $(BUILD_DIR)/sitl_win32
|
||||
$(V1) $(MAKE) --no-print-directory \
|
||||
-C $(ROOT_DIR)/flight/targets/OpenPilot --file=$(ROOT_DIR)/flight/targets/OpenPilot/Makefile.win32 $*
|
||||
|
||||
.PHONY: sim_osx
|
||||
sim_osx: sim_osx_elf
|
||||
|
||||
sim_osx_%: uavobjects_flight
|
||||
$(V1) $(MKDIR) -p $(BUILD_DIR)/sim_osx
|
||||
$(V1) $(MAKE) --no-print-directory \
|
||||
-C $(ROOT_DIR)/flight/targets/SensorTest --file=$(ROOT_DIR)/flight/targets/SensorTest/Makefile.osx $*
|
||||
include $(ROOT_DIR)/flight/Makefile
|
||||
|
||||
##############################
|
||||
#
|
||||
@ -442,39 +244,37 @@ sim_osx_%: uavobjects_flight
|
||||
##############################
|
||||
|
||||
.PHONY: all_ground
|
||||
all_ground: openpilotgcs uploader
|
||||
all_ground: gcs uploader
|
||||
|
||||
# Convenience target for the GCS
|
||||
.PHONY: gcs gcs_qmake gcs_clean
|
||||
gcs: openpilotgcs
|
||||
gcs_qmake: openpilotgcs_qmake
|
||||
gcs_clean: openpilotgcs_clean
|
||||
|
||||
ifeq ($(V), 1)
|
||||
GCS_SILENT :=
|
||||
else
|
||||
GCS_SILENT := silent
|
||||
ifneq ($(V), 1)
|
||||
GCS_EXTRA_CONF += silent
|
||||
endif
|
||||
|
||||
OPENPILOTGCS_DIR := $(BUILD_DIR)/openpilotgcs_$(GCS_BUILD_CONF)
|
||||
DIRS += $(OPENPILOTGCS_DIR)
|
||||
GCS_DIR := $(BUILD_DIR)/$(GCS_SMALL_NAME)_$(GCS_BUILD_CONF)
|
||||
DIRS += $(GCS_DIR)
|
||||
|
||||
OPENPILOTGCS_MAKEFILE := $(OPENPILOTGCS_DIR)/Makefile
|
||||
GCS_MAKEFILE := $(GCS_DIR)/Makefile
|
||||
|
||||
.PHONY: openpilotgcs_qmake
|
||||
openpilotgcs_qmake $(OPENPILOTGCS_MAKEFILE): | $(OPENPILOTGCS_DIR)
|
||||
$(V1) cd $(OPENPILOTGCS_DIR) && \
|
||||
$(QMAKE) $(ROOT_DIR)/ground/openpilotgcs/openpilotgcs.pro \
|
||||
-spec $(QT_SPEC) -r CONFIG+=$(GCS_BUILD_CONF) CONFIG+=$(GCS_SILENT) $(GCS_QMAKE_OPTS)
|
||||
.PHONY: gcs_qmake
|
||||
gcs_qmake $(GCS_MAKEFILE): | $(GCS_DIR)
|
||||
$(V1) cd $(GCS_DIR) && \
|
||||
$(QMAKE) $(ROOT_DIR)/ground/gcs/gcs.pro \
|
||||
-r CONFIG+='$(GCS_BUILD_CONF) $(GCS_EXTRA_CONF)' \
|
||||
'GCS_BIG_NAME="$(GCS_BIG_NAME)"' GCS_SMALL_NAME=$(GCS_SMALL_NAME) \
|
||||
'ORG_BIG_NAME="$(ORG_BIG_NAME)"' ORG_SMALL_NAME=$(ORG_SMALL_NAME) \
|
||||
'WIKI_URL_ROOT="$(WIKI_URL_ROOT)"' \
|
||||
'USAGETRACKER_URL="$(USAGETRACKER_URL)"' \
|
||||
'GCS_LIBRARY_BASENAME=$(libbasename)' \
|
||||
$(GCS_QMAKE_OPTS)
|
||||
|
||||
.PHONY: openpilotgcs
|
||||
openpilotgcs: uavobjgenerator $(OPENPILOTGCS_MAKEFILE)
|
||||
$(V1) $(MAKE) -w -C $(OPENPILOTGCS_DIR)/$(MAKE_DIR);
|
||||
.PHONY: gcs
|
||||
gcs: $(UAVOBJGENERATOR) $(GCS_MAKEFILE)
|
||||
$(V1) $(MAKE) -w -C $(GCS_DIR)/$(MAKE_DIR);
|
||||
|
||||
.PHONY: openpilotgcs_clean
|
||||
openpilotgcs_clean:
|
||||
@$(ECHO) " CLEAN $(call toprel, $(OPENPILOTGCS_DIR))"
|
||||
$(V1) [ ! -d "$(OPENPILOTGCS_DIR)" ] || $(RM) -r "$(OPENPILOTGCS_DIR)"
|
||||
.PHONY: gcs_clean
|
||||
gcs_clean:
|
||||
@$(ECHO) " CLEAN $(call toprel, $(GCS_DIR))"
|
||||
$(V1) [ ! -d "$(GCS_DIR)" ] || $(RM) -r "$(GCS_DIR)"
|
||||
|
||||
|
||||
|
||||
@ -492,8 +292,8 @@ UPLOADER_MAKEFILE := $(UPLOADER_DIR)/Makefile
|
||||
.PHONY: uploader_qmake
|
||||
uploader_qmake $(UPLOADER_MAKEFILE): | $(UPLOADER_DIR)
|
||||
$(V1) cd $(UPLOADER_DIR) && \
|
||||
$(QMAKE) $(ROOT_DIR)/ground/openpilotgcs/src/experimental/USB_UPLOAD_TOOL/upload.pro \
|
||||
-spec $(QT_SPEC) -r CONFIG+=$(GCS_BUILD_CONF) CONFIG+=$(GCS_SILENT) $(GCS_QMAKE_OPTS)
|
||||
$(QMAKE) $(ROOT_DIR)/ground/gcs/src/experimental/USB_UPLOAD_TOOL/upload.pro \
|
||||
-r CONFIG+='$(GCS_BUILD_CONF) $(GCS_EXTRA_CONF)' $(GCS_QMAKE_OPTS)
|
||||
|
||||
.PHONY: uploader
|
||||
uploader: $(UPLOADER_MAKEFILE)
|
||||
@ -505,209 +305,46 @@ uploader_clean:
|
||||
$(V1) [ ! -d "$(UPLOADER_DIR)" ] || $(RM) -r "$(UPLOADER_DIR)"
|
||||
|
||||
|
||||
# We want to take snapshots of the UAVOs at each point that they change
|
||||
# to allow the GCS to be compatible with as many versions as possible.
|
||||
# We always include a pseudo collection called "srctree" which represents
|
||||
# the UAVOs in the source tree. So not necessary to add current tree UAVO
|
||||
# hash here, it is always included.
|
||||
|
||||
# Find the git hashes of each commit that changes uavobjects with:
|
||||
# git log --format=%h -- shared/uavobjectdefinition/ | head -n 2
|
||||
# List only UAVO hashes of past releases, do not list current hash.
|
||||
# Past compatible versions are so far: RELEASE-12.10.2
|
||||
UAVO_GIT_VERSIONS := 5e14f53
|
||||
|
||||
# All versions includes also the current source tree UAVO hash
|
||||
UAVO_ALL_VERSIONS := $(UAVO_GIT_VERSIONS) srctree
|
||||
|
||||
# This is where the UAVO collections are stored
|
||||
UAVO_COLLECTION_DIR := $(BUILD_DIR)/uavo-collections
|
||||
|
||||
# $(1) git hash of a UAVO snapshot
|
||||
define UAVO_COLLECTION_GIT_TEMPLATE
|
||||
|
||||
# Make the output directory that will contain all of the synthetics for the
|
||||
# uavo collection referenced by the git hash $(1)
|
||||
$$(UAVO_COLLECTION_DIR)/$(1):
|
||||
$$(V1) $(MKDIR) -p $$(UAVO_COLLECTION_DIR)/$(1)
|
||||
|
||||
# Extract the snapshot of shared/uavobjectdefinition from git hash $(1)
|
||||
$$(UAVO_COLLECTION_DIR)/$(1)/uavo-xml.tar: | $$(UAVO_COLLECTION_DIR)/$(1)
|
||||
$$(UAVO_COLLECTION_DIR)/$(1)/uavo-xml.tar:
|
||||
$$(V0) @$(ECHO) " UAVOTAR $(1)"
|
||||
$$(V1) $(GIT) archive $(1) -o $$@ -- shared/uavobjectdefinition/
|
||||
|
||||
# Extract the uavo xml files from our snapshot
|
||||
$$(UAVO_COLLECTION_DIR)/$(1)/uavo-xml: $$(UAVO_COLLECTION_DIR)/$(1)/uavo-xml.tar
|
||||
$$(V0) @$(ECHO) " UAVOUNTAR $(1)"
|
||||
$$(V1) $(RM) -rf $$@
|
||||
$$(V1) $(MKDIR) -p $$@
|
||||
$$(V1) $(TAR) -C $$(call toprel, $$@) -xf $$(call toprel, $$<) || $(RM) -rf $$@
|
||||
endef
|
||||
|
||||
# Map the current working directory into the set of UAVO collections
|
||||
$(UAVO_COLLECTION_DIR)/srctree:
|
||||
$(V1) $(MKDIR) -p $@
|
||||
|
||||
$(UAVO_COLLECTION_DIR)/srctree/uavo-xml: | $(UAVO_COLLECTION_DIR)/srctree
|
||||
$(UAVO_COLLECTION_DIR)/srctree/uavo-xml: $(UAVOBJ_XML_DIR)
|
||||
$(V1) $(LN) -sf $(ROOT_DIR) $(UAVO_COLLECTION_DIR)/srctree/uavo-xml
|
||||
|
||||
# $(1) git hash (or symbolic name) of a UAVO snapshot
|
||||
define UAVO_COLLECTION_BUILD_TEMPLATE
|
||||
|
||||
# This leaves us with a (broken) symlink that points to the full sha1sum of the collection
|
||||
$$(UAVO_COLLECTION_DIR)/$(1)/uavohash: $$(UAVO_COLLECTION_DIR)/$(1)/uavo-xml
|
||||
# Compute the sha1 hash for this UAVO collection
|
||||
# The sed bit truncates the UAVO hash to 16 hex digits
|
||||
$$(V1) $$(VERSION_INFO) \
|
||||
--uavodir=$$(UAVO_COLLECTION_DIR)/$(1)/uavo-xml/shared/uavobjectdefinition \
|
||||
--format='$$$${UAVO_HASH}' | \
|
||||
$(SED) -e 's|\(................\).*|\1|' > $$@
|
||||
|
||||
$$(V0) @$(ECHO) " UAVOHASH $(1) ->" $$$$(cat $$(UAVO_COLLECTION_DIR)/$(1)/uavohash)
|
||||
|
||||
# Generate the java uavobjects for this UAVO collection
|
||||
$$(UAVO_COLLECTION_DIR)/$(1)/java-build/java: $$(UAVO_COLLECTION_DIR)/$(1)/uavohash
|
||||
$$(V0) @$(ECHO) " UAVOJAVA $(1) " $$$$(cat $$(UAVO_COLLECTION_DIR)/$(1)/uavohash)
|
||||
$$(V1) $(MKDIR) -p $$@
|
||||
$$(V1) ( \
|
||||
cd $$(UAVO_COLLECTION_DIR)/$(1)/java-build && \
|
||||
$$(UAVOBJGENERATOR) -java $$(UAVO_COLLECTION_DIR)/$(1)/uavo-xml/shared/uavobjectdefinition $$(ROOT_DIR) ; \
|
||||
)
|
||||
|
||||
# Build a jar file for this UAVO collection
|
||||
$$(UAVO_COLLECTION_DIR)/$(1)/java-build/uavobjects.jar: | $$(ANDROIDGCS_ASSETS_DIR)/uavos
|
||||
$$(UAVO_COLLECTION_DIR)/$(1)/java-build/uavobjects.jar: $$(UAVO_COLLECTION_DIR)/$(1)/java-build/java
|
||||
$$(V0) @$(ECHO) " UAVOJAR $(1) " $$$$(cat $$(UAVO_COLLECTION_DIR)/$(1)/uavohash)
|
||||
$$(V1) ( \
|
||||
HASH=$$$$(cat $$(UAVO_COLLECTION_DIR)/$(1)/uavohash) && \
|
||||
cd $$(UAVO_COLLECTION_DIR)/$(1)/java-build && \
|
||||
$(JAVAC) java/*.java \
|
||||
$$(ROOT_DIR)/androidgcs/src/org/openpilot/uavtalk/UAVDataObject.java \
|
||||
$$(ROOT_DIR)/androidgcs/src/org/openpilot/uavtalk/UAVObject*.java \
|
||||
$$(ROOT_DIR)/androidgcs/src/org/openpilot/uavtalk/UAVMetaObject.java \
|
||||
-d . && \
|
||||
find ./org/openpilot/uavtalk/uavobjects -type f -name '*.class' > classlist.txt && \
|
||||
$(JAR) cf tmp_uavobjects.jar @classlist.txt && \
|
||||
$$(ANDROID_DX) \
|
||||
--dex \
|
||||
--output $$(ANDROIDGCS_ASSETS_DIR)/uavos/$$$${HASH}.jar \
|
||||
tmp_uavobjects.jar && \
|
||||
$(LN) -sf $$(ANDROIDGCS_ASSETS_DIR)/uavos/$$$${HASH}.jar uavobjects.jar \
|
||||
)
|
||||
|
||||
endef
|
||||
|
||||
# One of these for each element of UAVO_GIT_VERSIONS so we can extract the UAVOs from git
|
||||
$(foreach githash, $(UAVO_GIT_VERSIONS), $(eval $(call UAVO_COLLECTION_GIT_TEMPLATE,$(githash))))
|
||||
|
||||
# One of these for each UAVO_ALL_VERSIONS which includes the ones in the srctree
|
||||
$(foreach githash, $(UAVO_ALL_VERSIONS), $(eval $(call UAVO_COLLECTION_BUILD_TEMPLATE,$(githash))))
|
||||
|
||||
.PHONY: uavo-collections_java
|
||||
uavo-collections_java: $(foreach githash, $(UAVO_ALL_VERSIONS), $(UAVO_COLLECTION_DIR)/$(githash)/java-build/uavobjects.jar)
|
||||
|
||||
.PHONY: uavo-collections
|
||||
uavo-collections: uavo-collections_java
|
||||
|
||||
.PHONY: uavo-collections_clean
|
||||
uavo-collections_clean:
|
||||
@$(ECHO) " CLEAN $(call toprel, $(UAVO_COLLECTION_DIR))"
|
||||
$(V1) [ ! -d "$(UAVO_COLLECTION_DIR)" ] || $(RM) -r $(UAVO_COLLECTION_DIR)
|
||||
|
||||
##############################
|
||||
#
|
||||
# Unit Tests
|
||||
#
|
||||
##############################
|
||||
|
||||
ALL_UNITTESTS := logfs math lednotification
|
||||
|
||||
# Build the directory for the unit tests
|
||||
UT_OUT_DIR := $(BUILD_DIR)/unit_tests
|
||||
DIRS += $(UT_OUT_DIR)
|
||||
|
||||
.PHONY: all_ut
|
||||
all_ut: $(addsuffix _elf, $(addprefix ut_, $(ALL_UNITTESTS)))
|
||||
|
||||
.PHONY: all_ut_xml
|
||||
all_ut_xml: $(addsuffix _xml, $(addprefix ut_, $(ALL_UNITTESTS)))
|
||||
|
||||
.PHONY: all_ut_run
|
||||
all_ut_run: $(addsuffix _run, $(addprefix ut_, $(ALL_UNITTESTS)))
|
||||
|
||||
.PHONY: all_ut_clean
|
||||
all_ut_clean:
|
||||
@$(ECHO) " CLEAN $(call toprel, $(UT_OUT_DIR))"
|
||||
$(V1) [ ! -d "$(UT_OUT_DIR)" ] || $(RM) -r "$(UT_OUT_DIR)"
|
||||
|
||||
# $(1) = Unit test name
|
||||
define UT_TEMPLATE
|
||||
.PHONY: ut_$(1)
|
||||
ut_$(1): ut_$(1)_run
|
||||
|
||||
ut_$(1)_%: $$(UT_OUT_DIR)
|
||||
$(V1) $(MKDIR) -p $(UT_OUT_DIR)/$(1)
|
||||
$(V1) cd $(ROOT_DIR)/flight/tests/$(1) && \
|
||||
$$(MAKE) -r --no-print-directory \
|
||||
BUILD_TYPE=ut \
|
||||
BOARD_SHORT_NAME=$(1) \
|
||||
TOPDIR=$(ROOT_DIR)/flight/tests/$(1) \
|
||||
OUTDIR="$(UT_OUT_DIR)/$(1)" \
|
||||
TARGET=$(1) \
|
||||
$$*
|
||||
|
||||
.PHONY: ut_$(1)_clean
|
||||
ut_$(1)_clean:
|
||||
@$(ECHO) " CLEAN $(call toprel, $(UT_OUT_DIR)/$(1))"
|
||||
$(V1) [ ! -d "$(UT_OUT_DIR)/$(1)" ] || $(RM) -r "$(UT_OUT_DIR)/$(1)"
|
||||
endef
|
||||
|
||||
# Expand the unittest rules
|
||||
$(foreach ut, $(ALL_UNITTESTS), $(eval $(call UT_TEMPLATE,$(ut))))
|
||||
|
||||
# Disable parallel make when the all_ut_run target is requested otherwise the TAP
|
||||
# output is interleaved with the rest of the make output.
|
||||
ifneq ($(strip $(filter all_ut_run,$(MAKECMDGOALS))),)
|
||||
.NOTPARALLEL:
|
||||
$(info $(EMPTY) NOTE Parallel make disabled by all_ut_run target so we have sane console output)
|
||||
endif
|
||||
|
||||
##############################
|
||||
#
|
||||
# Packaging components
|
||||
#
|
||||
##############################
|
||||
|
||||
# Firmware files to package
|
||||
PACKAGE_FW_EXCLUDE := fw_simposix $(if $(PACKAGE_FW_INCLUDE_DISCOVERYF4BARE),,fw_discoveryf4bare)
|
||||
PACKAGE_FW_TARGETS := $(filter-out $(PACKAGE_FW_EXCLUDE), $(FW_TARGETS))
|
||||
PACKAGE_ELF_TARGETS := $(filter fw_simposix, $(FW_TARGETS))
|
||||
PACKAGE_FW_TARGETS := fw_coptercontrol fw_oplinkmini fw_revolution fw_osd fw_revoproto fw_gpsplatinum fw_revonano
|
||||
|
||||
# Rules to generate GCS resources used to embed firmware binaries into the GCS.
|
||||
# They are used later by the vehicle setup wizard to update board firmware.
|
||||
# To open a firmware image use ":/firmware/fw_coptercontrol.opfw"
|
||||
OPFW_RESOURCE := $(OPGCSSYNTHDIR)/opfw_resource.qrc
|
||||
OPFW_RESOURCE_PREFIX := ../../
|
||||
OPFW_FILES := $(foreach fw_targ, $(PACKAGE_FW_TARGETS), $(call toprel, $(BUILD_DIR)/$(fw_targ)/$(fw_targ).opfw))
|
||||
|
||||
ifeq ($(WITH_PREBUILT_FW),)
|
||||
FIRMWARE_DIR := $(FLIGHT_OUT_DIR)
|
||||
# We need to build the FW targets
|
||||
$(OPFW_RESOURCE): $(PACKAGE_FW_TARGETS)
|
||||
else
|
||||
FIRMWARE_DIR := $(WITH_PREBUILT_FW)
|
||||
endif
|
||||
|
||||
OPFW_FILES := $(foreach fw_targ, $(PACKAGE_FW_TARGETS), $(FIRMWARE_DIR)/$(fw_targ)/$(fw_targ).opfw)
|
||||
OPFW_CONTENTS := \
|
||||
<!DOCTYPE RCC><RCC version="1.0"> \
|
||||
<qresource prefix="/firmware"> \
|
||||
$(foreach fw_file, $(OPFW_FILES), <file alias="$(notdir $(fw_file))">$(OPFW_RESOURCE_PREFIX)$(fw_file)</file>) \
|
||||
$(foreach fw_file, $(OPFW_FILES), <file alias="$(notdir $(fw_file))">$(call system_path,$(fw_file))</file>) \
|
||||
</qresource> \
|
||||
</RCC>
|
||||
|
||||
.PHONY: opfw_resource
|
||||
opfw_resource: $(OPFW_RESOURCE)
|
||||
|
||||
$(OPFW_RESOURCE): $(FW_TARGETS) | $(OPGCSSYNTHDIR)
|
||||
$(OPFW_RESOURCE): | $(OPGCSSYNTHDIR)
|
||||
@$(ECHO) Generating OPFW resource file $(call toprel, $@)
|
||||
$(V1) $(ECHO) $(QUOTE)$(OPFW_CONTENTS)$(QUOTE) > $@
|
||||
|
||||
# If opfw_resource or all firmware are requested, GCS should depend on the resource
|
||||
ifneq ($(strip $(filter opfw_resource all all_fw all_flight package,$(MAKECMDGOALS))),)
|
||||
$(OPENPILOTGCS_MAKEFILE): $(OPFW_RESOURCE)
|
||||
$(GCS_MAKEFILE): $(OPFW_RESOURCE)
|
||||
endif
|
||||
|
||||
# Packaging targets: package
|
||||
@ -717,14 +354,64 @@ endif
|
||||
|
||||
# Define some variables
|
||||
PACKAGE_LBL := $(shell $(VERSION_INFO) --format=\$${LABEL})
|
||||
PACKAGE_NAME := OpenPilot
|
||||
PACKAGE_NAME := $(subst $(SPACE),,$(ORG_BIG_NAME))
|
||||
PACKAGE_SEP := -
|
||||
PACKAGE_FULL_NAME := $(PACKAGE_NAME)$(PACKAGE_SEP)$(PACKAGE_LBL)
|
||||
|
||||
# Source distribution is never dirty because it uses git archive
|
||||
DIST_LBL := $(subst -dirty,,$(PACKAGE_LBL))
|
||||
DIST_NAME := $(PACKAGE_NAME)$(PACKAGE_SEP)$(DIST_LBL)
|
||||
DIST_TAR := $(DIST_DIR)/$(DIST_NAME).tar
|
||||
DIST_TAR_GZ := $(DIST_TAR).gz
|
||||
FW_DIST_NAME := $(DIST_NAME)_firmware
|
||||
FW_DIST_TAR := $(DIST_DIR)/$(FW_DIST_NAME).tar
|
||||
FW_DIST_TAR_GZ := $(FW_DIST_TAR).gz
|
||||
DIST_VER_INFO := $(DIST_DIR)/version-info.json
|
||||
|
||||
include $(ROOT_DIR)/package/$(UNAME).mk
|
||||
|
||||
# Source distribution is never dirty because it uses git archive
|
||||
DIST_NAME := $(DIST_DIR)/$(subst dirty-,,$(PACKAGE_FULL_NAME)).tar
|
||||
##############################
|
||||
#
|
||||
# Source for distribution
|
||||
#
|
||||
##############################
|
||||
$(DIST_VER_INFO): .git/index | $(DIST_DIR)
|
||||
$(V1) $(VERSION_INFO) --jsonpath="$(DIST_DIR)"
|
||||
|
||||
$(DIST_TAR): $(DIST_VER_INFO) .git/index | $(DIST_DIR)
|
||||
@$(ECHO) " SOURCE FOR DISTRIBUTION $(call toprel, $(DIST_TAR))"
|
||||
$(V1) git archive --prefix="$(PACKAGE_NAME)/" -o "$(DIST_TAR)" HEAD
|
||||
$(V1) tar --append --file="$(DIST_TAR)" \
|
||||
--transform='s,.*version-info.json,$(PACKAGE_NAME)/version-info.json,' \
|
||||
$(call toprel, "$(DIST_VER_INFO)")
|
||||
|
||||
$(DIST_TAR_GZ): $(DIST_TAR)
|
||||
@$(ECHO) " SOURCE FOR DISTRIBUTION $(call toprel, $(DIST_TAR_GZ))"
|
||||
$(V1) gzip -kf "$(DIST_TAR)"
|
||||
|
||||
.PHONY: dist_tar_gz
|
||||
dist_tar_gz: $(DIST_TAR_GZ)
|
||||
|
||||
.PHONY: dist
|
||||
dist: dist_tar_gz
|
||||
|
||||
|
||||
$(FW_DIST_TAR): $(PACKAGE_FW_TARGETS) | $(DIST_DIR)
|
||||
@$(ECHO) " FIRMWARE FOR DISTRIBUTION $(call toprel, $(FW_DIST_TAR))"
|
||||
$(V1) tar -c --file="$(FW_DIST_TAR)" --directory=$(FLIGHT_OUT_DIR) \
|
||||
--transform='s,^,firmware/,' \
|
||||
$(foreach fw_targ,$(PACKAGE_FW_TARGETS),$(fw_targ)/$(fw_targ).opfw)
|
||||
|
||||
$(FW_DIST_TAR_GZ): $(FW_DIST_TAR)
|
||||
@$(ECHO) " FIRMWARE FOR DISTRIBUTION $(call toprel, $(FW_DIST_TAR_GZ))"
|
||||
$(V1) gzip -kf "$(FW_DIST_TAR)"
|
||||
|
||||
.PHONY: fw_dist_tar_gz
|
||||
fw_dist_tar_gz: $(FW_DIST_TAR_GZ)
|
||||
|
||||
.PHONY: fw_dist
|
||||
fw_dist: fw_dist_tar_gz
|
||||
|
||||
|
||||
##############################
|
||||
#
|
||||
@ -802,26 +489,28 @@ build-info: | $(BUILD_DIR)
|
||||
|
||||
##############################
|
||||
#
|
||||
# Source for distribution
|
||||
# Config
|
||||
#
|
||||
##############################
|
||||
|
||||
DIST_VER_INFO := $(DIST_DIR)/version-info.json
|
||||
CONFIG_OPTS := $(addsuffix \n,$(MAKEOVERRIDES))
|
||||
CONFIG_OPTS := $(addprefix override$(SPACE),$(CONFIG_OPTS))
|
||||
|
||||
$(DIST_VER_INFO): .git/index | $(DIST_DIR)
|
||||
$(V1) $(VERSION_INFO) --jsonpath="$(DIST_DIR)"
|
||||
.PHONY: config_new
|
||||
config_new:
|
||||
@printf '$(CONFIG_OPTS)' > $(CONFIG_FILE)
|
||||
|
||||
.PHONY: config_append
|
||||
config_append:
|
||||
@printf '$(CONFIG_OPTS)' >> $(CONFIG_FILE)
|
||||
|
||||
$(DIST_NAME).gz: $(DIST_VER_INFO) .git/index | $(DIST_DIR)
|
||||
@$(ECHO) " SOURCE FOR DISTRIBUTION $(call toprel, $(DIST_NAME).gz)"
|
||||
$(V1) git archive --prefix="$(PACKAGE_NAME)/" -o "$(DIST_NAME)" HEAD
|
||||
$(V1) tar --append --file="$(DIST_NAME)" \
|
||||
--transform='s,.*version-info.json,$(PACKAGE_NAME)/version-info.json,' \
|
||||
$(call toprel, "$(DIST_VER_INFO)")
|
||||
$(V1) gzip -f "$(DIST_NAME)"
|
||||
.PHONY: config_show
|
||||
config_show:
|
||||
@cat $(CONFIG_FILE)
|
||||
|
||||
.PHONY: dist
|
||||
dist: $(DIST_NAME).gz
|
||||
.PHONY: config_clean
|
||||
config_clean:
|
||||
rm -f $(CONFIG_FILE)
|
||||
|
||||
|
||||
##############################
|
||||
@ -847,7 +536,7 @@ help:
|
||||
@$(ECHO)
|
||||
@$(ECHO) " This Makefile is known to work on Linux and Mac in a standard shell environment."
|
||||
@$(ECHO) " It also works on Windows by following the instructions given on this wiki page:"
|
||||
@$(ECHO) " http://wiki.openpilot.org/display/Doc/Windows%3A+Building+and+Packaging"
|
||||
@$(ECHO) " $(WIKI_ROOT_URL)Windows+Building+and+Packaging"
|
||||
@$(ECHO)
|
||||
@$(ECHO) " Here is a summary of the available targets:"
|
||||
@$(ECHO)
|
||||
@ -857,12 +546,11 @@ help:
|
||||
@$(ECHO) " arm_sdk_install - Install the GNU ARM gcc toolchain"
|
||||
@$(ECHO) " qt_sdk_install - Install the QT development tools"
|
||||
@$(ECHO) " nsis_install - Install the NSIS Unicode (Windows only)"
|
||||
@$(ECHO) " sdl_install - Install the SDL library (Windows only)"
|
||||
@$(ECHO) " mesawin_install - Install the OpenGL32 DLL (Windows only)"
|
||||
@$(ECHO) " openssl_install - Install the OpenSSL libraries (Windows only)"
|
||||
@$(ECHO) " uncrustify_install - Install the Uncrustify source code beautifier"
|
||||
@$(ECHO) " doxygen_install - Install the Doxygen documentation generator"
|
||||
@$(ECHO) " gtest_install - Install the GoogleTest framework"
|
||||
@$(ECHO) " ccache_install - Install ccache"
|
||||
@$(ECHO) " These targets are not updated yet and are probably broken:"
|
||||
@$(ECHO) " openocd_install - Install the OpenOCD JTAG daemon"
|
||||
@$(ECHO) " stm32flash_install - Install the stm32flash tool for unbricking F1-based boards"
|
||||
@ -877,7 +565,7 @@ help:
|
||||
@$(ECHO) " <tool>_distclean - Remove downloaded <tool> distribution file(s)"
|
||||
@$(ECHO)
|
||||
@$(ECHO) " [Big Hammer]"
|
||||
@$(ECHO) " all - Generate UAVObjects, build openpilot firmware and gcs"
|
||||
@$(ECHO) " all - Generate UAVObjects, build $(ORG_BIG_NAME) firmware and gcs"
|
||||
@$(ECHO) " all_flight - Build all firmware, bootloaders and bootloader updaters"
|
||||
@$(ECHO) " all_fw - Build only firmware for all boards"
|
||||
@$(ECHO) " all_bl - Build only bootloaders for all boards"
|
||||
@ -930,9 +618,9 @@ help:
|
||||
@$(ECHO) " ut_<test>_run - Run test and dump output to console"
|
||||
@$(ECHO)
|
||||
@$(ECHO) " [Simulation]"
|
||||
@$(ECHO) " sim_osx - Build OpenPilot simulation firmware for OSX"
|
||||
@$(ECHO) " sim_osx - Build $(ORG_BIG_NAME) simulation firmware for OSX"
|
||||
@$(ECHO) " sim_osx_clean - Delete all build output for the osx simulation"
|
||||
@$(ECHO) " sim_win32 - Build OpenPilot simulation firmware for Windows"
|
||||
@$(ECHO) " sim_win32 - Build $(ORG_BIG_NAME) simulation firmware for Windows"
|
||||
@$(ECHO) " using mingw and msys"
|
||||
@$(ECHO) " sim_win32_clean - Delete all build output for the win32 simulation"
|
||||
@$(ECHO)
|
||||
@ -958,9 +646,10 @@ help:
|
||||
@$(ECHO) " Supported groups are ($(UAVOBJ_TARGETS))"
|
||||
@$(ECHO)
|
||||
@$(ECHO) " [Packaging]"
|
||||
@$(ECHO) " package - Build and package the OpenPilot platform-dependent package (no clean)"
|
||||
@$(ECHO) " package - Build and package the platform-dependent package (no clean)"
|
||||
@$(ECHO) " opfw_resource - Generate resources to embed firmware binaries into the GCS"
|
||||
@$(ECHO) " dist - Generate source archive for distribution"
|
||||
@$(ECHO) " fw_dist - Generate archive of firmware"
|
||||
@$(ECHO) " install - Install GCS to \"DESTDIR\" with prefix \"prefix\" (Linux only)"
|
||||
@$(ECHO)
|
||||
@$(ECHO) " [Code Formatting]"
|
||||
@ -975,6 +664,11 @@ help:
|
||||
@$(ECHO) " docs_<source>_clean - Delete generated documentation for <source>"
|
||||
@$(ECHO) " docs_all_clean - Delete all generated documentation"
|
||||
@$(ECHO)
|
||||
@$(ECHO) " [Configuration]"
|
||||
@$(ECHO) " config_new - Place your make arguments in the config file"
|
||||
@$(ECHO) " config_append - Place your make arguments in the config file but append"
|
||||
@$(ECHO) " config_clean - Removes the config file"
|
||||
@$(ECHO)
|
||||
@$(ECHO) " Hint: Add V=1 to your command line to see verbose build output."
|
||||
@$(ECHO)
|
||||
@$(ECHO) " Notes: All tool distribution files will be downloaded into $(DL_DIR)"
|
||||
@ -982,7 +676,7 @@ help:
|
||||
@$(ECHO) " All build output will be placed in $(BUILD_DIR)"
|
||||
@$(ECHO)
|
||||
@$(ECHO) " Tool download and install directories can be changed using environment variables:"
|
||||
@$(ECHO) " OPENPILOT_DL_DIR full path to downloads directory [downloads if not set]"
|
||||
@$(ECHO) " OPENPILOT_TOOLS_DIR full path to installed tools directory [tools if not set]"
|
||||
@$(ECHO) " More info: http://wiki.openpilot.org/display/Doc/OpenPilot+Build+System+Overview"
|
||||
@$(ECHO) " DL_DIR full path to downloads directory [downloads if not set]"
|
||||
@$(ECHO) " TOOLS_DIR full path to installed tools directory [tools if not set]"
|
||||
@$(ECHO) " More info: $(WIKI_URL_ROOT)LibrePilot+Build+System+Overview"
|
||||
@$(ECHO)
|
||||
|
41
README.md
Normal file
@ -0,0 +1,41 @@
|
||||
About the LibrePilot Project
|
||||
============================
|
||||
|
||||
### Open - Collaborative - Free
|
||||
|
||||
The LibrePilot open source project was founded in July 2015. It focuses on
|
||||
research and development of software and hardware to be used in a variety of
|
||||
applications including vehicle control and stabilization, unmanned autonomous
|
||||
vehicles and robotics. One of the project’s primary goals is to provide an open
|
||||
and collaborative environment making it the ideal home for development of
|
||||
innovative ideas.
|
||||
|
||||
LibrePilot welcomes and encourages exchange and collaboration with other
|
||||
projects, like adding support for existing hardware or software in
|
||||
collaboration under the spirit of open source.
|
||||
|
||||
LibrePilot finds its roots in the OpenPilot project and the founding members
|
||||
are all long-standing contributors in that project.
|
||||
|
||||
The LibrePilot Project will be governed by a board of members using consensual
|
||||
methods to make important decisions and to set the overall direction of the
|
||||
project.
|
||||
|
||||
The LibrePilot source code is released under the OSI approved GPLv3 license.
|
||||
Integral text of the license can be found at [www.gnu.org](http://www.gnu.org/licenses/gpl-3.0.en.html)
|
||||
|
||||
|
||||
Links for the LibrePilot Project
|
||||
--------------------------------
|
||||
|
||||
- [Main project web site](https://www.librepilot.org)
|
||||
- [Project forums](https://forum.librepilot.org)
|
||||
- [Software downloads](https://librepilot.atlassian.net/wiki/display/LPDOC/Downloads)
|
||||
- [Wiki](https://librepilot.atlassian.net/wiki/display/LPDOC/Welcome)
|
||||
- [Source code repository](https://bitbucket.org/librepilot)
|
||||
- [Mirror](https://github.com/librepilot)
|
||||
- [Issue tracker](https://librepilot.atlassian.net)
|
||||
- [Gitter Chat](https://gitter.im/librepilot/LibrePilot)
|
||||
- IRC: #LibrePilot on FreeNode
|
||||
|
||||
[![Build Status](https://travis-ci.org/librepilot/LibrePilot.svg?branch=next)](https://travis-ci.org/librepilot/LibrePilot)
|
44
README.txt
@ -1,44 +0,0 @@
|
||||
What is OpenPilot all about?
|
||||
----------------------------
|
||||
|
||||
The project aims at implementing the best features of all existing similar systems developed by
|
||||
enthusiasts and combines them into a single, easy-to-use software/hardware package. The ease-of-use
|
||||
in this case does not imply functional simplicity or compromises. There are no rigidly defined
|
||||
constraints and settings, but a full-fledged programming language configuration loaded via a
|
||||
Ground Control Station and other advanced features. OpenPilot is developed as a powerful platform
|
||||
for all types of vehicles.
|
||||
|
||||
This is a non-profit project of the OpenPilot Foundation
|
||||
--------------------------------------------------------
|
||||
|
||||
This is a project using only volunteer personnel who have donated enormous amounts of time, money
|
||||
and effort. Please respect the people that are part of the project and their generosity. OpenPilot
|
||||
is funded entirely at the expense of those who spend their time and money in the development of the
|
||||
public project which helps it grow. Giving complete and correct references to all their work is not
|
||||
only a legal requirement of the CC-BY-SA license, but also simple respect for their work. The people
|
||||
who create this project, really deserve it for their very hard work.
|
||||
|
||||
The OpenPilot project web sites
|
||||
-------------------------------
|
||||
|
||||
The project provides feature-rich development and collaboration environment using advanced tools such
|
||||
as GCC compilers, git, Atlassian JIRA, Confluence, FishEye, Crucible, Bamboo, Crowd, forums and blogs.
|
||||
|
||||
Main project web site: http://www.openpilot.org/
|
||||
Project forums: http://forums.openpilot.org/
|
||||
Wiki, docs and manuals: http://wiki.openpilot.org/
|
||||
Bug and issue tracker: http://progress.openpilot.org/
|
||||
Source code repository: http://git.openpilot.org/
|
||||
Crucible code reviews: http://reviews.openpilot.org/cru
|
||||
Project build server: http://bamboo.openpilot.org/
|
||||
Community blogs: http://forums.openpilot.org/blogs/
|
||||
Software downloads: http://wiki.openpilot.org/display/WIKI/OpenPilot+Downloads
|
||||
|
||||
How to build from source?
|
||||
-------------------------
|
||||
|
||||
make all_sdk_install
|
||||
make all
|
||||
|
||||
The project supports Windows, Linux and Mac OS X platforms as well as Android.
|
||||
Check the wiki for more details: http://wiki.openpilot.org/display/Doc/OpenPilot+Developer+Manual
|
164
WHATSNEW.txt
@ -1,38 +1,133 @@
|
||||
Release Notes - OpenPilot - Version RELEASE-15.05 RC7
|
||||
-- RELEASE-15.09 - First LibrePilot Release -- Supermoon Eclipse
|
||||
This is the first LibrePilot release.
|
||||
The main focus of this release is to bring back support for CC3D and a general re-branding of the GCS.
|
||||
|
||||
RC7 changes relative to RC6:
|
||||
1. Nano hardware page fixes
|
||||
2. Upgrade google map version
|
||||
3. xtal frequency changes again to suit an sbus receiver.
|
||||
4. OP-1875 reinit EKF on changes to AuxMagSettings
|
||||
|
||||
RC6 changes relative to RC5:
|
||||
1. Altvario AltHold PID updates
|
||||
2. Fix timer bank assignments
|
||||
3. Reboot nano in wizard only when needed
|
||||
4. Fix wizard limits for oneshot/pwmsync
|
||||
5. Update PFD with latest flight modes
|
||||
6. Add AccelTau, AccelKp and AccelKi to TxPID
|
||||
7. Adding support for SRXL in vehicle wizard.
|
||||
8. OSD TxPID display
|
||||
9. MPU9k reset fixes and frequency fix affecting baud rate accuracy
|
||||
The full list of bug fixes and enhancements in this release is available here:
|
||||
https://librepilot.atlassian.net/issues/?filter=10300
|
||||
|
||||
|
||||
RC5 changes relative to RC4:
|
||||
1. Landing flight mode now truely disarms to complete its sequence, triggered by a critical guidance alarm. Reset via change of flight mode.
|
||||
2. VelocityRoam now has its own VelocityRoamHorizontalVelPID to allow independent tuning.
|
||||
3. Sanity check for PWMSync & OneShot while using PWM receiver. Remove CC in hwsettings.xml
|
||||
4. Wizard freeze issue on erase settings fixed.
|
||||
** Bug
|
||||
* [LP-37] - Memory wasted in pvPortMallocGeneric
|
||||
* [LP-57] - Errors during NewsPanel data scraping
|
||||
* [LP-58] - Splash Screen doesn't display
|
||||
* [LP-59] - Replace openpilot email address in packaging
|
||||
* [LP-65] - Heli config tab refresh
|
||||
* [LP-69] - Add SRXL to CC3D target
|
||||
* [LP-70] - Vehicle Setup Wizard allows a not working CC3D configuration
|
||||
* [LP-84] - Nano (Revo Nano) does not automatically select correct firmware after Firmware then Halt
|
||||
* [LP-89] - Port bug fixes from OP HotFix 150501
|
||||
* [LP-107] - Motors could accidentally turn off with the recent motor output scaling feature
|
||||
* [LP-115] - TPS and Acro+ settings are initialized incorrectly
|
||||
* [LP-116] - Add uninstall to Makefile to prevent side effects from Installing over a previous installation
|
||||
* [LP-123] - EasyTune yaw calculation is active even if easytune is not active
|
||||
* [LP-125] - PathUtils should return absolute pathes
|
||||
* [LP-127] - Fix Mac tool install md5 check
|
||||
* [LP-128] - ElevateAndCompress is broken at full throttle
|
||||
* [LP-134] - Obsolete Google Satellite Version
|
||||
* [LP-135] - Aux mag calibration issue
|
||||
* [LP-136] - Build errors caused by broken uavobjgenerator make dependencies
|
||||
* [LP-153] - Bug in configrevohwwidget.cpp use MAINPORT enum not FLEXIPORT
|
||||
* [LP-155] - GCS crashes on OS X 10.11 when the board is halted
|
||||
* [LP-156] - Update Vehicle templates to work with current UAVO's
|
||||
|
||||
RC4 changes relative to RC3:
|
||||
1. GCS Input flight mode limit fixes hiding unsupported modes.
|
||||
2. Throttle check on GPSAssist/Stabi whilst in hold removed. Now easy to fly out of hold without reducing throttle.
|
||||
3. Trialing Rate instead of AxisLock on Yaw during Braking.
|
||||
4. VelocityRoam now passing throttle position to AltVario. previously it was stuck in AltHold.
|
||||
5. OP-1905 Fix OPLN in PPM mode blocking telemetry stream of no USB connected
|
||||
** Epic
|
||||
* [LP-1] - Code Rebranding
|
||||
|
||||
** Story
|
||||
* [LP-3] - Artwork rebranding
|
||||
* [LP-4] - Add a Gitter chat link to README.txt
|
||||
* [LP-5] - Add back CC/CC3D Support
|
||||
* [LP-6] - Laurent/lp 03 artwork rebranding
|
||||
* [LP-7] - OP-1879 remove openpilot hardcoding
|
||||
* [LP-8] - OP-1929 broken package src
|
||||
* [LP-9] - Hotfix for files that were missed in share directory move due to rebase
|
||||
* [LP-12] - Openpilot migration
|
||||
* [LP-13] - some more OP hardcoding fixes
|
||||
* [LP-14] - Remove some more openpilot hardcoding
|
||||
* [LP-17] - Laurent/lp 03 artwork icons splashscreen
|
||||
* [LP-18] - Makefile fix
|
||||
* [LP-19] - Remove openpilot hardcoding
|
||||
* [LP-20] - Menu item change
|
||||
* [LP-21] - udevdir fix
|
||||
* [LP-22] - Desktopfile migration
|
||||
* [LP-23] - amorale/lp-05 readd cc rebased
|
||||
* [LP-24] - filnet/op 1518 osgearth
|
||||
* [LP-28] - Removed OpenPilot reference in About menu
|
||||
* [LP-33] - Remove op from gcs dir structure
|
||||
* [LP-35] - Removed OpenPilot reference in About Menu
|
||||
* [LP-43] - change links and headers in welcome plugin
|
||||
* [LP-44] - Review and cleanup to free some memory for CC3D
|
||||
* [LP-47] - Fixed missing QDataStream includes to make compilation on qt 5.5 work
|
||||
* [LP-48] - French translation
|
||||
* [LP-49] - Laurent/lp 48 update rebranding strings translations
|
||||
* [LP-50] - Make name define available for all by setting in openpilotgcs.pri
|
||||
* [LP-51] - Wrong config tab contents
|
||||
* [LP-52] - LP-51 Fix merge issue for Revo / Revonano HW config display
|
||||
* [LP-53] - Set up Anonymous data collection to send information to the LibrePilot website
|
||||
* [LP-55] - Config fix for echo without -e
|
||||
* [LP-62] - Implement rpm spec
|
||||
|
||||
** New Feature
|
||||
* [LP-100] - Make firmware package
|
||||
* [LP-101] - Make build possible with prebuilt firmware
|
||||
|
||||
** Task
|
||||
* [LP-16] - Vehicle template enhancements.
|
||||
* [LP-26] - Update Welcome page plugin.
|
||||
* [LP-27] - LP-16 Vehicle templates enhancements
|
||||
* [LP-36] - Win install fixes
|
||||
* [LP-41] - Add support for ccache
|
||||
* [LP-42] - Added option for config file.
|
||||
* [LP-60] - Fix project links in readme
|
||||
* [LP-92] - Remove old Feed Forward
|
||||
* [LP-98] - SystemHealth refresh
|
||||
* [LP-99] - Decouple flight build
|
||||
* [LP-113] - Create new tool install framework
|
||||
* [LP-129] - Remove broken scaleMotor modes
|
||||
* [LP-138] - Remove OpenPilot branding from Makefile Help text
|
||||
* [LP-141] - Missing link for wiki help page on Stabilization Configuration page
|
||||
* [LP-142] - Replace remaining OpenPilot wiki links with LibrePilot links
|
||||
|
||||
** Improvement
|
||||
* [LP-10] - Cleanup build warnings on OSX
|
||||
* [LP-56] - Split roll/pitch acro+ factors
|
||||
* [LP-61] - Make more things configurable with make config
|
||||
* [LP-64] - Install target for ccache
|
||||
* [LP-66] - Add differential Roll mixing to Fixed Wing frames
|
||||
* [LP-67] - Add a txpid option that manage all PID factors at once
|
||||
* [LP-77] - Jira needs more Component options
|
||||
* [LP-80] - Extend linux packaging to easily support new distros
|
||||
* [LP-82] - Define all packaging descriptions and URLs in top Makefile
|
||||
* [LP-87] - Remove OpenPilot branding from Doxygen Documentation
|
||||
* [LP-93] - Thermal calibration should calculate also gyro bias
|
||||
* [LP-94] - Set up Wiki link in Configuration tabs to point to Librepilot Wiki
|
||||
* [LP-102] - Remove OpenPilot links in "About Plugins" dialog boxes
|
||||
* [LP-106] - Setup Wizard refresh
|
||||
* [LP-108] - Fixes for mpu6k
|
||||
* [LP-110] - Wizard : high rate servos and normal Esc rate for planes and ground vehicles
|
||||
* [LP-114] - Support to more than three Accessory channels
|
||||
* [LP-124] - Rename RollRatePID and PitcahRatePID to EasyTuneRateRoll and EasyTuneRatePitch
|
||||
* [LP-130] - Add an overridable postfix that is appended to GCS name
|
||||
* [LP-162] - Add more data to usage tracker.
|
||||
|
||||
|
||||
This release introduces new features and new hardware support for the Revolution Nano. Note that the CC3D is not supported by this feature release. New features for multirotors include:
|
||||
--- RELEASE-15.05.01 HOTFIX --- Banana Split ---
|
||||
This release fixes an important bug. All Revolution hardware running 15.05 should upgrade to 15.05.01. Note that this is a hotfix; it can
|
||||
simply be flashed without an erase settings. Furthermore, please review your vtolpathfollowersettings:HorizontalVelMax; a value of around 4m/s would be more appropriate for preliminary trialing of a new release and will be changed in future.
|
||||
|
||||
Release Notes - OP Next Generation - Version OP15.05.01
|
||||
|
||||
** Bug
|
||||
* [NG-55] - 15.05 PositionHold exhibits fly-away behaviour at the vtolpathfollowersettings maxRollPitch and HorizontalVelMax values.
|
||||
|
||||
|
||||
|
||||
--- RELEASE-15.05 --- Banana Split ---
|
||||
|
||||
This release introduces new features and new hardware support for the Revolution Nano.
|
||||
Note that the CC3D is not supported by this feature release.
|
||||
|
||||
New features for multirotors include:
|
||||
- Fully autonomous flight is now possible with auto-takeoff and landing as flight modes available to path plans.
|
||||
- An all new implementation of altitude vario provides improved altitude maintenance and smoother flight.
|
||||
- A new RateTrainer flight mode for beginners and aerial photographers makes it easier to use this mode by limiting the pitch and roll extents.
|
||||
@ -42,10 +137,6 @@ This release introduces new features and new hardware support for the Revolution
|
||||
- Full speed flight just got faster with new motor constraints that maintain your ability to enact roll without requiring an upper throttle limit of 90%.
|
||||
- Setup of GPS is now automatic with auto-baud detection.
|
||||
- Support for dual telemetry and minim OSD programing have been added.
|
||||
- New control protocols have been introduced.
|
||||
|
||||
The full list of bugfixes in this release is accessible here:
|
||||
|
||||
|
||||
Release Notes - OpenPilot - Version RELEASE-15.05
|
||||
|
||||
@ -64,10 +155,13 @@ Release Notes - OpenPilot - Version RELEASE-15.05
|
||||
* [OP-1867] - PathPlanner AutoLand simplification
|
||||
* [OP-1869] - Allow Analog Airspeed scale
|
||||
* [OP-1872] - Vehicle Wiz Tricopter tail servo settings don't save
|
||||
* [OP-1875] - MagSource changes not applied
|
||||
* [OP-1888] - SIGSEGV after starting simulator in HITL
|
||||
* [OP-1893] - Deadband changes max stick input
|
||||
* [OP-1905] - OPLM in PPM mode blocks telemetry stream if no USB connected
|
||||
* [OP-1906] - Auto land - yaw disarm can cause a crash
|
||||
* [OP-1915] - google map issue
|
||||
|
||||
|
||||
** Improvement
|
||||
* [OP-1289] - Need Revo to send two telemetry streams for OSD and GCS
|
||||
@ -114,6 +208,10 @@ Release Notes - OpenPilot - Version RELEASE-15.05
|
||||
* [OP-1849] - Support programming/update of minimosd using USB VCP port
|
||||
* [OP-1863] - RateTrainer mode - add maxpitch for beginners and aerial photography
|
||||
|
||||
** Sub task
|
||||
* [OP-1901] - Add SRXL configuration support to Vehicle Setup Wizard.
|
||||
|
||||
|
||||
|
||||
|
||||
--- RELEASE-15.02.02 ---
|
||||
|
BIN
artwork/3D Model/boards/cc3d/cc3d.jpg
Normal file
After Width: | Height: | Size: 162 KiB |
Before Width: | Height: | Size: 160 KiB After Width: | Height: | Size: 160 KiB |
BIN
artwork/3D Model/boards/cc3d/texture.png
Normal file
After Width: | Height: | Size: 130 KiB |
Before Width: | Height: | Size: 31 KiB After Width: | Height: | Size: 31 KiB |
BIN
artwork/3D Model/boards/OPGPSv8/OPGPS.3DS → artwork/3D Model/boards/op_gps_v8/op_gps_v8.3ds
Normal file → Executable file
Before Width: | Height: | Size: 129 KiB After Width: | Height: | Size: 129 KiB |
Before Width: | Height: | Size: 188 KiB After Width: | Height: | Size: 188 KiB |
BIN
artwork/3D Model/boards/OPGPSv9/OPGPSv9.3DS → artwork/3D Model/boards/op_gps_v9/op_gps_v9.3ds
Normal file → Executable file
Before Width: | Height: | Size: 136 KiB After Width: | Height: | Size: 136 KiB |
Before Width: | Height: | Size: 309 KiB After Width: | Height: | Size: 309 KiB |
BIN
artwork/3D Model/boards/OPLink/OPLink.3DS → artwork/3D Model/boards/oplink/oplink.3ds
Normal file → Executable file
Before Width: | Height: | Size: 129 KiB After Width: | Height: | Size: 129 KiB |
Before Width: | Height: | Size: 253 KiB After Width: | Height: | Size: 253 KiB |
BIN
artwork/3D Model/boards/Revolution/revolution.3ds → artwork/3D Model/boards/revolution/revolution.3ds
Normal file → Executable file
Before Width: | Height: | Size: 261 KiB After Width: | Height: | Size: 261 KiB |
Before Width: | Height: | Size: 344 KiB After Width: | Height: | Size: 344 KiB |
Before Width: | Height: | Size: 114 KiB After Width: | Height: | Size: 114 KiB |
Before Width: | Height: | Size: 1.0 MiB After Width: | Height: | Size: 1.0 MiB |
Before Width: | Height: | Size: 102 KiB After Width: | Height: | Size: 102 KiB |
Before Width: | Height: | Size: 127 KiB |
BIN
artwork/3D Model/multi/easy_quad/easy_quad_x.jpg
Normal file
After Width: | Height: | Size: 126 KiB |
Before Width: | Height: | Size: 58 KiB |
Before Width: | Height: | Size: 96 KiB After Width: | Height: | Size: 96 KiB |
BIN
artwork/3D Model/multi/joes_cnc/j14-q_+.3ds
Normal file
Before Width: | Height: | Size: 84 KiB After Width: | Height: | Size: 84 KiB |
BIN
artwork/3D Model/multi/joes_cnc/j14-q_x.3ds
Normal file
Before Width: | Height: | Size: 84 KiB After Width: | Height: | Size: 84 KiB |
BIN
artwork/3D Model/multi/joes_cnc/j14-qt_+.3ds
Normal file
Before Width: | Height: | Size: 125 KiB After Width: | Height: | Size: 125 KiB |
BIN
artwork/3D Model/multi/joes_cnc/j14-qt_x.3ds
Normal file
Before Width: | Height: | Size: 132 KiB After Width: | Height: | Size: 132 KiB |
BIN
artwork/3D Model/multi/joes_cnc/texture.png
Normal file
After Width: | Height: | Size: 1.1 KiB |
Before Width: | Height: | Size: 93 KiB After Width: | Height: | Size: 93 KiB |
Before Width: | Height: | Size: 131 KiB After Width: | Height: | Size: 131 KiB |
Before Width: | Height: | Size: 131 KiB After Width: | Height: | Size: 131 KiB |
Before Width: | Height: | Size: 127 KiB After Width: | Height: | Size: 127 KiB |
Before Width: | Height: | Size: 123 KiB After Width: | Height: | Size: 123 KiB |
Before Width: | Height: | Size: 131 KiB After Width: | Height: | Size: 131 KiB |
Before Width: | Height: | Size: 96 KiB After Width: | Height: | Size: 96 KiB |
Before Width: | Height: | Size: 51 KiB After Width: | Height: | Size: 51 KiB |
Before Width: | Height: | Size: 33 KiB |
BIN
artwork/3D Model/multi/test_quad/test_quad_+-old.3ds
Normal file → Executable file
Before Width: | Height: | Size: 50 KiB After Width: | Height: | Size: 113 KiB |
Before Width: | Height: | Size: 50 KiB |
BIN
artwork/3D Model/multi/test_quad/test_quad_X-old.3ds → artwork/3D Model/multi/test_quad/test_quad_x-old.3ds
Normal file → Executable file
Before Width: | Height: | Size: 121 KiB After Width: | Height: | Size: 121 KiB |
BIN
artwork/3D Model/multi/test_quad/test_quad_x.jpg
Normal file
After Width: | Height: | Size: 114 KiB |
Before Width: | Height: | Size: 210 KiB After Width: | Height: | Size: 210 KiB |
BIN
artwork/3D Model/multi/test_quad/texture.png
Normal file
After Width: | Height: | Size: 130 KiB |
Before Width: | Height: | Size: 143 KiB After Width: | Height: | Size: 143 KiB |
Before Width: | Height: | Size: 484 KiB After Width: | Height: | Size: 484 KiB |
BIN
artwork/Logo/LP_logo_horizontal.png
Normal file
After Width: | Height: | Size: 48 KiB |
BIN
artwork/Logo/LP_logo_square.png
Normal file
After Width: | Height: | Size: 86 KiB |
725
artwork/Logo/LibrePilot_logo.svg
Normal file
@ -0,0 +1,725 @@
|
||||
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
|
||||
<!-- Created with Inkscape (http://www.inkscape.org/) -->
|
||||
|
||||
<svg
|
||||
xmlns:dc="http://purl.org/dc/elements/1.1/"
|
||||
xmlns:cc="http://creativecommons.org/ns#"
|
||||
xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
|
||||
xmlns:svg="http://www.w3.org/2000/svg"
|
||||
xmlns="http://www.w3.org/2000/svg"
|
||||
xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
|
||||
xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
|
||||
width="302.05917mm"
|
||||
height="252.19586mm"
|
||||
viewBox="0 0 1070.2883 893.60738"
|
||||
id="svg7377"
|
||||
version="1.1"
|
||||
inkscape:version="0.91 r13725"
|
||||
sodipodi:docname="LibrePilot_logo.svg"
|
||||
inkscape:export-filename="./librepilot_logo_64.png"
|
||||
inkscape:export-xdpi="11.52"
|
||||
inkscape:export-ydpi="11.52">
|
||||
<title
|
||||
id="title3513">LibrePilot Logo</title>
|
||||
<defs
|
||||
id="defs7379" />
|
||||
<sodipodi:namedview
|
||||
id="base"
|
||||
pagecolor="#ffffff"
|
||||
bordercolor="#666666"
|
||||
borderopacity="1.0"
|
||||
inkscape:pageopacity="0.0"
|
||||
inkscape:pageshadow="2"
|
||||
inkscape:zoom="0.39867996"
|
||||
inkscape:cx="517.71302"
|
||||
inkscape:cy="324.03604"
|
||||
inkscape:document-units="px"
|
||||
inkscape:current-layer="layer1"
|
||||
showgrid="false"
|
||||
fit-margin-top="10"
|
||||
fit-margin-right="10"
|
||||
fit-margin-left="10"
|
||||
fit-margin-bottom="10"
|
||||
inkscape:window-width="1280"
|
||||
inkscape:window-height="927"
|
||||
inkscape:window-x="0"
|
||||
inkscape:window-y="27"
|
||||
inkscape:window-maximized="1"
|
||||
inkscape:snap-page="true"
|
||||
inkscape:snap-bbox="true"
|
||||
inkscape:bbox-nodes="true"
|
||||
inkscape:snap-bbox-midpoints="true"
|
||||
inkscape:snap-midpoints="true" />
|
||||
<metadata
|
||||
id="metadata7382">
|
||||
<rdf:RDF>
|
||||
<cc:Work
|
||||
rdf:about="">
|
||||
<dc:format>image/svg+xml</dc:format>
|
||||
<dc:type
|
||||
rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
|
||||
<dc:title>LibrePilot Logo</dc:title>
|
||||
<dc:date>July 2015</dc:date>
|
||||
<dc:creator>
|
||||
<cc:Agent>
|
||||
<dc:title>LibrePilot</dc:title>
|
||||
</cc:Agent>
|
||||
</dc:creator>
|
||||
<dc:identifier>www.librepilot.org</dc:identifier>
|
||||
<cc:license
|
||||
rdf:resource="http://creativecommons.org/licenses/by-nc-nd/3.0/" />
|
||||
</cc:Work>
|
||||
<cc:License
|
||||
rdf:about="http://creativecommons.org/licenses/by-nc-nd/3.0/">
|
||||
<cc:permits
|
||||
rdf:resource="http://creativecommons.org/ns#Reproduction" />
|
||||
<cc:permits
|
||||
rdf:resource="http://creativecommons.org/ns#Distribution" />
|
||||
<cc:requires
|
||||
rdf:resource="http://creativecommons.org/ns#Notice" />
|
||||
<cc:requires
|
||||
rdf:resource="http://creativecommons.org/ns#Attribution" />
|
||||
<cc:prohibits
|
||||
rdf:resource="http://creativecommons.org/ns#CommercialUse" />
|
||||
</cc:License>
|
||||
</rdf:RDF>
|
||||
</metadata>
|
||||
<g
|
||||
inkscape:label="Calque 1"
|
||||
inkscape:groupmode="layer"
|
||||
id="layer1"
|
||||
transform="translate(566.91944,446.91581)">
|
||||
<g
|
||||
id="g3502"
|
||||
transform="translate(554.89321,146.32681)"
|
||||
inkscape:export-xdpi="401.10089"
|
||||
inkscape:export-ydpi="401.10089">
|
||||
<path
|
||||
inkscape:connector-curvature="0"
|
||||
id="rect8168"
|
||||
d="M -561.37457,-37.809547 L -112.54027,-37.809547 L -112.54027,121.2776 L -561.37457,121.2776 Z"
|
||||
style="color:#000000;display:inline;overflow:visible;visibility:visible;opacity:1;fill:#ffffff;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:5;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;marker:none;enable-background:accumulate" />
|
||||
<g
|
||||
inkscape:export-ydpi="56.630924"
|
||||
inkscape:export-xdpi="56.630924"
|
||||
id="g8170"
|
||||
transform="translate(-691.00285,-528.64572)">
|
||||
<g
|
||||
id="text8172"
|
||||
style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:80px;line-height:125%;font-family:paola;-inkscape-font-specification:paola;letter-spacing:0px;word-spacing:0px;fill:#767575;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1">
|
||||
<path
|
||||
inkscape:connector-curvature="0"
|
||||
id="path4625"
|
||||
style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-family:Prototype;-inkscape-font-specification:Prototype;fill:#767575;fill-opacity:1"
|
||||
d="M 184.74482,611.42617 L 163.06482,611.42617 Q 159.94482,611.42617 159.94482,608.78617 L 159.94482,565.26617 Q 159.94482,564.46617 159.14482,564.46617 L 149.14482,564.46617 Q 148.34482,564.46617 148.34482,565.26617 L 148.34482,607.82617 Q 148.34482,614.54617 151.14482,617.90617 Q 153.94482,621.18617 160.58482,621.74617 Q 160.98482,621.82617 161.54482,621.82617 Q 162.10482,621.82617 162.74482,621.82617 L 184.74482,621.82617 Q 185.54482,621.82617 185.54482,621.02617 L 185.54482,612.22617 Q 185.54482,611.42617 184.74482,611.42617 Z" />
|
||||
<path
|
||||
inkscape:connector-curvature="0"
|
||||
id="path4627"
|
||||
style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-family:Prototype;-inkscape-font-specification:Prototype;fill:#767575;fill-opacity:1"
|
||||
d="M 189.36232,621.02617 Q 189.36232,621.82617 190.16232,621.82617 L 198.32232,621.82617 Q 199.12232,621.82617 199.12232,621.02617 L 199.12232,580.94617 Q 199.12232,580.14617 198.32232,580.14617 L 190.16232,580.14617 Q 189.36232,580.14617 189.36232,580.94617 L 189.36232,621.02617 Z M 189.36232,565.26617 L 189.36232,573.42617 Q 189.36232,574.22617 190.16232,574.22617 L 198.32232,574.22617 Q 199.12232,574.22617 199.12232,573.42617 L 199.12232,565.26617 Q 199.12232,564.46617 198.32232,564.46617 L 190.16232,564.46617 Q 189.36232,564.46617 189.36232,565.26617 Z" />
|
||||
<path
|
||||
inkscape:connector-curvature="0"
|
||||
id="path4629"
|
||||
style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-family:Prototype;-inkscape-font-specification:Prototype;fill:#767575;fill-opacity:1"
|
||||
d="M 215.52857,579.34617 L 215.52857,565.26617 Q 215.52857,564.46617 214.72857,564.46617 L 206.56857,564.46617 Q 205.76857,564.46617 205.76857,565.26617 L 205.76857,621.02617 Q 205.76857,621.82617 206.56857,621.82617 L 231.44857,621.82617 Q 235.12857,621.82617 237.84857,619.98617 Q 240.64857,618.06617 242.40857,615.18617 Q 244.16857,612.22617 245.04857,608.54617 Q 245.92857,604.86617 245.92857,601.26617 Q 245.92857,596.54617 245.04857,592.62617 Q 244.24857,588.70617 242.48857,585.98617 Q 240.72857,583.18617 238.00857,581.66617 Q 235.28857,580.14617 231.44857,580.14617 L 216.32857,580.14617 Q 215.52857,580.14617 215.52857,579.34617 Z M 215.52857,590.70617 Q 215.52857,589.90617 216.32857,589.90617 L 225.04857,589.90617 Q 227.52857,589.90617 229.52857,590.38617 Q 231.60857,590.78617 233.04857,592.06617 Q 234.56857,593.26617 235.36857,595.50617 Q 236.16857,597.74617 236.16857,601.26617 Q 236.16857,604.54617 235.36857,606.62617 Q 234.56857,608.70617 233.12857,609.90617 Q 231.68857,611.10617 229.60857,611.58617 Q 227.52857,612.06617 225.04857,612.06617 L 216.32857,612.06617 Q 215.52857,612.06617 215.52857,611.26617 L 215.52857,590.70617 Z" />
|
||||
<path
|
||||
inkscape:connector-curvature="0"
|
||||
id="path4631"
|
||||
style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-family:Prototype;-inkscape-font-specification:Prototype;fill:#767575;fill-opacity:1"
|
||||
d="M 260.77607,580.14617 Q 258.61607,580.14617 256.69607,581.02617 Q 254.77607,581.82617 253.33607,583.26617 Q 251.89607,584.70617 251.01607,586.62617 Q 250.21607,588.54617 250.21607,590.62617 L 250.21607,621.02617 Q 250.21607,621.82617 251.01607,621.82617 L 259.97607,621.82617 Q 260.77607,621.82617 260.77607,621.02617 L 260.77607,593.42617 Q 260.77607,592.94617 261.01607,592.38617 Q 261.25607,591.74617 261.65607,591.26617 Q 262.13607,590.70617 262.69607,590.30617 Q 263.25607,589.90617 263.97607,589.90617 L 271.65607,589.90617 Q 272.45607,589.90617 272.45607,589.10617 L 272.45607,580.94617 Q 272.45607,580.14617 271.65607,580.14617 L 260.77607,580.14617 Z" />
|
||||
<path
|
||||
inkscape:connector-curvature="0"
|
||||
id="path4633"
|
||||
style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-family:Prototype;-inkscape-font-specification:Prototype;fill:#767575;fill-opacity:1"
|
||||
d="M 285.34607,605.66617 L 314.94607,605.66617 Q 315.74607,605.66617 315.74607,604.86617 L 315.74607,596.54617 Q 315.74607,592.78617 314.62607,589.74617 Q 313.58607,586.70617 311.26607,584.62617 Q 308.94607,582.46617 305.34607,581.34617 Q 301.74607,580.14617 296.78607,580.14617 Q 292.78607,580.14617 288.78607,581.18617 Q 284.86607,582.14617 281.66607,584.62617 Q 278.54607,587.10617 276.54607,591.34617 Q 274.62607,595.50617 274.62607,601.90617 Q 274.62607,607.18617 275.74607,610.94617 Q 276.94607,614.70617 279.66607,617.18617 Q 282.46607,619.58617 286.94607,620.70617 Q 291.50607,621.82617 298.22607,621.82617 L 311.74607,621.82617 Q 312.54607,621.82617 312.54607,621.02617 L 312.54607,612.86617 Q 312.54607,612.06617 311.74607,612.06617 L 292.70607,612.06617 Q 291.02607,612.06617 289.50607,611.66617 Q 287.98607,611.18617 286.86607,610.46617 Q 285.82607,609.66617 285.18607,608.70617 Q 284.54607,607.66617 284.54607,606.46617 Q 284.54607,605.66617 285.34607,605.66617 Z M 285.34607,596.30617 Q 284.54607,596.30617 284.54607,595.50617 Q 284.54607,593.98617 285.74607,592.78617 Q 286.94607,591.50617 288.70607,590.70617 Q 290.54607,589.82617 292.46607,589.34617 Q 294.46607,588.86617 296.06607,588.86617 Q 301.10607,588.86617 303.90607,590.70617 Q 306.70607,592.46617 306.70607,595.50617 Q 306.70607,596.30617 305.90607,596.30617 L 285.34607,596.30617 Z" />
|
||||
</g>
|
||||
<g
|
||||
id="text8176"
|
||||
style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:85.35001373px;line-height:125%;font-family:paola;-inkscape-font-specification:paola;letter-spacing:0px;word-spacing:0px;fill:#767575;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
|
||||
transform="scale(1.0668752,0.93731676)">
|
||||
<path
|
||||
inkscape:connector-curvature="0"
|
||||
id="path4636"
|
||||
style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-family:Prototype;-inkscape-font-specification:Prototype;fill:#767575;fill-opacity:1"
|
||||
d="M 368.68865,604.0074 L 368.68865,662.55751 Q 368.68865,663.41101 369.54215,663.41101 L 380.2109,663.41101 Q 381.0644,663.41101 381.0644,662.55751 L 381.0644,643.01236 Q 381.0644,642.15886 381.9179,642.15886 L 396.76881,642.15886 Q 401.54841,642.15886 404.87706,640.79326 Q 408.20571,639.34231 410.25411,636.69646 Q 412.30251,634.05061 413.24136,630.38056 Q 414.18021,626.7105 414.18021,622.18695 Q 414.18021,617.8341 413.24136,614.16405 Q 412.30251,610.494 410.25411,607.84815 Q 408.20571,605.2023 404.87706,603.75135 Q 401.54841,602.21505 396.76881,602.21505 L 369.54215,602.21505 Q 368.68865,602.21505 368.68865,603.06855 L 368.68865,604.0074 Z M 398.21976,613.31055 Q 399.75606,613.31055 400.60956,614.4201 Q 401.54841,615.4443 401.97516,616.89525 Q 402.40191,618.3462 402.48726,619.8825 Q 402.65796,621.33345 402.65796,622.18695 Q 402.65796,623.04045 402.48726,624.57675 Q 402.40186,626.0277 401.97516,627.47865 Q 401.54841,628.92961 400.60956,630.03916 Q 399.75606,631.06336 398.21976,631.06336 L 381.9179,631.06336 Q 381.0644,631.06336 381.0644,630.20986 L 381.0644,614.16405 Q 381.0644,613.31055 381.9179,613.31055 L 398.21976,613.31055 Z" />
|
||||
<path
|
||||
inkscape:connector-curvature="0"
|
||||
id="path4638"
|
||||
style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-family:Prototype;-inkscape-font-specification:Prototype;fill:#767575;fill-opacity:1"
|
||||
d="M 418.69842,662.55751 Q 418.69842,663.41101 419.55192,663.41101 L 428.25763,663.41101 Q 429.11113,663.41101 429.11113,662.55751 L 429.11113,619.79715 Q 429.11113,618.94365 428.25763,618.94365 L 419.55192,618.94365 Q 418.69842,618.94365 418.69842,619.79715 L 418.69842,662.55751 Z M 418.69842,603.06855 L 418.69842,611.77425 Q 418.69842,612.62775 419.55192,612.62775 L 428.25763,612.62775 Q 429.11113,612.62775 429.11113,611.77425 L 429.11113,603.06855 Q 429.11113,602.21505 428.25763,602.21505 L 419.55192,602.21505 Q 418.69842,602.21505 418.69842,603.06855 Z" />
|
||||
<path
|
||||
inkscape:connector-curvature="0"
|
||||
id="path4640"
|
||||
style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-family:Prototype;-inkscape-font-specification:Prototype;fill:#767575;fill-opacity:1"
|
||||
d="M 436.20184,603.06855 L 436.20184,653.68111 L 436.20184,653.85181 L 436.20184,662.55751 Q 436.20184,663.41101 437.05534,663.41101 L 445.76104,663.41101 Q 446.61454,663.41101 446.61454,662.55751 L 446.61454,653.85181 L 446.61454,653.68111 L 446.61454,603.06855 Q 446.61454,602.21505 445.76104,602.21505 L 437.05534,602.21505 Q 436.20184,602.21505 436.20184,603.06855 Z" />
|
||||
<path
|
||||
inkscape:connector-curvature="0"
|
||||
id="path4642"
|
||||
style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-family:Prototype;-inkscape-font-specification:Prototype;fill:#767575;fill-opacity:1"
|
||||
d="M 496.20957,631.74616 Q 496.20957,628.67356 495.01467,626.3691 Q 493.90512,623.9793 492.02742,622.35765 Q 490.23507,620.65065 487.84527,619.79715 Q 485.54082,618.94365 483.23637,618.94365 L 465.99567,618.94365 Q 463.26447,618.94365 460.78932,619.8825 Q 458.39952,620.82135 456.60717,622.6137 Q 454.81482,624.3207 453.70527,626.79585 Q 452.68107,629.27101 452.68107,632.34361 L 452.68107,647.36521 Q 452.68107,650.35246 453.27852,653.25436 Q 453.87597,656.07091 455.41227,658.37536 Q 456.94857,660.59446 459.50907,662.04541 Q 462.06957,663.41101 465.99567,663.41101 L 481.18797,663.41101 Q 485.11407,663.41101 487.93062,662.64286 Q 490.74717,661.87471 492.53952,659.91166 Q 494.41722,657.94861 495.27072,654.61996 Q 496.20957,651.29131 496.20957,646.17031 L 496.20957,631.74616 Z M 485.71152,641.04931 L 485.71152,647.87731 Q 485.71152,650.09641 483.40707,651.54736 Q 481.18797,652.99831 478.11537,652.99831 L 470.26317,652.99831 Q 469.15362,652.99831 467.87337,652.82761 Q 466.59312,652.57156 465.48357,651.97411 Q 464.37402,651.29131 463.60587,650.18176 Q 462.92307,649.07221 462.92307,647.36521 L 462.92307,633.70921 Q 462.92307,632.51431 463.52052,631.66081 Q 464.11797,630.80731 464.97147,630.29521 Q 465.91032,629.78311 467.01987,629.61241 Q 468.12942,629.35636 469.23897,629.35636 L 478.54212,629.35636 Q 479.82237,629.35636 481.10262,629.61241 Q 482.38287,629.86846 483.40707,630.46591 Q 484.43127,630.97801 485.02872,631.83151 Q 485.71152,632.59966 485.71152,633.62386 L 485.71152,641.04931 Z" />
|
||||
<path
|
||||
inkscape:connector-curvature="0"
|
||||
id="path4644"
|
||||
style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-family:Prototype;-inkscape-font-specification:Prototype;fill:#767575;fill-opacity:1"
|
||||
d="M 516.89095,630.20986 Q 516.89095,629.35636 517.74445,629.35636 L 524.74315,629.35636 Q 525.59665,629.35636 525.59665,628.50286 L 525.59665,619.79715 Q 525.59665,618.94365 524.74315,618.94365 L 517.74445,618.94365 Q 516.89095,618.94365 516.89095,618.09015 L 516.89095,607.4214 Q 516.89095,606.5679 516.03745,606.5679 L 507.33175,606.5679 Q 506.47825,606.5679 506.47825,607.4214 L 506.47825,618.09015 Q 506.47825,618.94365 505.62475,618.94365 L 501.1012,618.94365 Q 500.2477,618.94365 500.2477,619.79715 L 500.2477,628.50286 Q 500.2477,629.35636 501.1012,629.35636 L 505.62475,629.35636 Q 506.47825,629.35636 506.47825,630.20986 L 506.47825,656.83906 Q 506.47825,659.48491 508.612,661.44796 Q 510.74575,663.41101 513.98905,663.41101 L 524.74315,663.41101 Q 525.59665,663.41101 525.59665,662.55751 L 525.59665,653.85181 Q 525.59665,653.08366 524.91385,652.99831 L 517.74445,652.99831 Q 516.89095,652.99831 516.89095,652.14481 L 516.89095,630.20986 Z" />
|
||||
</g>
|
||||
<g
|
||||
id="text8180"
|
||||
style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:80px;line-height:125%;font-family:paola;-inkscape-font-specification:paola;letter-spacing:0px;word-spacing:0px;fill:#ff6000;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1">
|
||||
<path
|
||||
inkscape:connector-curvature="0"
|
||||
id="path4647"
|
||||
style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-family:Prototype;-inkscape-font-specification:Prototype;fill:#ff6000;fill-opacity:1"
|
||||
d="M 183.74482,610.42617 L 162.06482,610.42617 Q 158.94482,610.42617 158.94482,607.78617 L 158.94482,564.26617 Q 158.94482,563.46617 158.14482,563.46617 L 148.14482,563.46617 Q 147.34482,563.46617 147.34482,564.26617 L 147.34482,606.82617 Q 147.34482,613.54617 150.14482,616.90617 Q 152.94482,620.18617 159.58482,620.74617 Q 159.98482,620.82617 160.54482,620.82617 Q 161.10482,620.82617 161.74482,620.82617 L 183.74482,620.82617 Q 184.54482,620.82617 184.54482,620.02617 L 184.54482,611.22617 Q 184.54482,610.42617 183.74482,610.42617 Z" />
|
||||
<path
|
||||
inkscape:connector-curvature="0"
|
||||
id="path4649"
|
||||
style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-family:Prototype;-inkscape-font-specification:Prototype;fill:#ff6000;fill-opacity:1"
|
||||
d="M 188.36232,620.02617 Q 188.36232,620.82617 189.16232,620.82617 L 197.32232,620.82617 Q 198.12232,620.82617 198.12232,620.02617 L 198.12232,579.94617 Q 198.12232,579.14617 197.32232,579.14617 L 189.16232,579.14617 Q 188.36232,579.14617 188.36232,579.94617 L 188.36232,620.02617 Z M 188.36232,564.26617 L 188.36232,572.42617 Q 188.36232,573.22617 189.16232,573.22617 L 197.32232,573.22617 Q 198.12232,573.22617 198.12232,572.42617 L 198.12232,564.26617 Q 198.12232,563.46617 197.32232,563.46617 L 189.16232,563.46617 Q 188.36232,563.46617 188.36232,564.26617 Z" />
|
||||
<path
|
||||
inkscape:connector-curvature="0"
|
||||
id="path4651"
|
||||
style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-family:Prototype;-inkscape-font-specification:Prototype;fill:#ff6000;fill-opacity:1"
|
||||
d="M 214.52857,578.34617 L 214.52857,564.26617 Q 214.52857,563.46617 213.72857,563.46617 L 205.56857,563.46617 Q 204.76857,563.46617 204.76857,564.26617 L 204.76857,620.02617 Q 204.76857,620.82617 205.56857,620.82617 L 230.44857,620.82617 Q 234.12857,620.82617 236.84857,618.98617 Q 239.64857,617.06617 241.40857,614.18617 Q 243.16857,611.22617 244.04857,607.54617 Q 244.92857,603.86617 244.92857,600.26617 Q 244.92857,595.54617 244.04857,591.62617 Q 243.24857,587.70617 241.48857,584.98617 Q 239.72857,582.18617 237.00857,580.66617 Q 234.28857,579.14617 230.44857,579.14617 L 215.32857,579.14617 Q 214.52857,579.14617 214.52857,578.34617 Z M 214.52857,589.70617 Q 214.52857,588.90617 215.32857,588.90617 L 224.04857,588.90617 Q 226.52857,588.90617 228.52857,589.38617 Q 230.60857,589.78617 232.04857,591.06617 Q 233.56857,592.26617 234.36857,594.50617 Q 235.16857,596.74617 235.16857,600.26617 Q 235.16857,603.54617 234.36857,605.62617 Q 233.56857,607.70617 232.12857,608.90617 Q 230.68857,610.10617 228.60857,610.58617 Q 226.52857,611.06617 224.04857,611.06617 L 215.32857,611.06617 Q 214.52857,611.06617 214.52857,610.26617 L 214.52857,589.70617 Z" />
|
||||
<path
|
||||
inkscape:connector-curvature="0"
|
||||
id="path4653"
|
||||
style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-family:Prototype;-inkscape-font-specification:Prototype;fill:#ff6000;fill-opacity:1"
|
||||
d="M 259.77607,579.14617 Q 257.61607,579.14617 255.69607,580.02617 Q 253.77607,580.82617 252.33607,582.26617 Q 250.89607,583.70617 250.01607,585.62617 Q 249.21607,587.54617 249.21607,589.62617 L 249.21607,620.02617 Q 249.21607,620.82617 250.01607,620.82617 L 258.97607,620.82617 Q 259.77607,620.82617 259.77607,620.02617 L 259.77607,592.42617 Q 259.77607,591.94617 260.01607,591.38617 Q 260.25607,590.74617 260.65607,590.26617 Q 261.13607,589.70617 261.69607,589.30617 Q 262.25607,588.90617 262.97607,588.90617 L 270.65607,588.90617 Q 271.45607,588.90617 271.45607,588.10617 L 271.45607,579.94617 Q 271.45607,579.14617 270.65607,579.14617 L 259.77607,579.14617 Z" />
|
||||
<path
|
||||
inkscape:connector-curvature="0"
|
||||
id="path4655"
|
||||
style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-family:Prototype;-inkscape-font-specification:Prototype;fill:#ff6000;fill-opacity:1"
|
||||
d="M 284.34607,604.66617 L 313.94607,604.66617 Q 314.74607,604.66617 314.74607,603.86617 L 314.74607,595.54617 Q 314.74607,591.78617 313.62607,588.74617 Q 312.58607,585.70617 310.26607,583.62617 Q 307.94607,581.46617 304.34607,580.34617 Q 300.74607,579.14617 295.78607,579.14617 Q 291.78607,579.14617 287.78607,580.18617 Q 283.86607,581.14617 280.66607,583.62617 Q 277.54607,586.10617 275.54607,590.34617 Q 273.62607,594.50617 273.62607,600.90617 Q 273.62607,606.18617 274.74607,609.94617 Q 275.94607,613.70617 278.66607,616.18617 Q 281.46607,618.58617 285.94607,619.70617 Q 290.50607,620.82617 297.22607,620.82617 L 310.74607,620.82617 Q 311.54607,620.82617 311.54607,620.02617 L 311.54607,611.86617 Q 311.54607,611.06617 310.74607,611.06617 L 291.70607,611.06617 Q 290.02607,611.06617 288.50607,610.66617 Q 286.98607,610.18617 285.86607,609.46617 Q 284.82607,608.66617 284.18607,607.70617 Q 283.54607,606.66617 283.54607,605.46617 Q 283.54607,604.66617 284.34607,604.66617 Z M 284.34607,595.30617 Q 283.54607,595.30617 283.54607,594.50617 Q 283.54607,592.98617 284.74607,591.78617 Q 285.94607,590.50617 287.70607,589.70617 Q 289.54607,588.82617 291.46607,588.34617 Q 293.46607,587.86617 295.06607,587.86617 Q 300.10607,587.86617 302.90607,589.70617 Q 305.70607,591.46617 305.70607,594.50617 Q 305.70607,595.30617 304.90607,595.30617 L 284.34607,595.30617 Z" />
|
||||
</g>
|
||||
<g
|
||||
id="text8184"
|
||||
style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:85.35001373px;line-height:125%;font-family:paola;-inkscape-font-specification:paola;letter-spacing:0px;word-spacing:0px;fill:#ff6000;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
|
||||
transform="scale(1.0668752,0.93731676)">
|
||||
<path
|
||||
inkscape:connector-curvature="0"
|
||||
id="path4658"
|
||||
style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-family:Prototype;-inkscape-font-specification:Prototype;fill:#ff6000;fill-opacity:1"
|
||||
d="M 367.75133,602.94063 L 367.75133,661.49074 Q 367.75133,662.34424 368.60483,662.34424 L 379.27359,662.34424 Q 380.12709,662.34424 380.12709,661.49074 L 380.12709,641.94558 Q 380.12709,641.09208 380.98059,641.09208 L 395.83149,641.09208 Q 400.61109,641.09208 403.93974,639.72648 Q 407.26839,638.27553 409.31679,635.62968 Q 411.36519,632.98383 412.30404,629.31378 Q 413.24289,625.64373 413.24289,621.12018 Q 413.24289,616.76733 412.30404,613.09728 Q 411.36519,609.42723 409.31679,606.78138 Q 407.26839,604.13553 403.93974,602.68458 Q 400.61109,601.14828 395.83149,601.14828 L 368.60483,601.14828 Q 367.75133,601.14828 367.75133,602.00178 L 367.75133,602.94063 Z M 397.28244,612.24378 Q 398.81874,612.24378 399.67224,613.35333 Q 400.61109,614.37753 401.03784,615.82848 Q 401.46459,617.27943 401.54994,618.81573 Q 401.72064,620.26668 401.72064,621.12018 Q 401.72064,621.97368 401.54994,623.50998 Q 401.46454,624.96093 401.03784,626.41188 Q 400.61109,627.86283 399.67224,628.97238 Q 398.81874,629.99658 397.28244,629.99658 L 380.98059,629.99658 Q 380.12709,629.99658 380.12709,629.14308 L 380.12709,613.09728 Q 380.12709,612.24378 380.98059,612.24378 L 397.28244,612.24378 Z" />
|
||||
<path
|
||||
inkscape:connector-curvature="0"
|
||||
id="path4660"
|
||||
style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-family:Prototype;-inkscape-font-specification:Prototype;fill:#ff6000;fill-opacity:1"
|
||||
d="M 417.76111,661.49074 Q 417.76111,662.34424 418.61461,662.34424 L 427.32031,662.34424 Q 428.17381,662.34424 428.17381,661.49074 L 428.17381,618.73038 Q 428.17381,617.87688 427.32031,617.87688 L 418.61461,617.87688 Q 417.76111,617.87688 417.76111,618.73038 L 417.76111,661.49074 Z M 417.76111,602.00178 L 417.76111,610.70748 Q 417.76111,611.56098 418.61461,611.56098 L 427.32031,611.56098 Q 428.17381,611.56098 428.17381,610.70748 L 428.17381,602.00178 Q 428.17381,601.14828 427.32031,601.14828 L 418.61461,601.14828 Q 417.76111,601.14828 417.76111,602.00178 Z" />
|
||||
<path
|
||||
inkscape:connector-curvature="0"
|
||||
id="path4662"
|
||||
style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-family:Prototype;-inkscape-font-specification:Prototype;fill:#ff6000;fill-opacity:1"
|
||||
d="M 435.26453,602.00178 L 435.26453,652.61434 L 435.26453,652.78504 L 435.26453,661.49074 Q 435.26453,662.34424 436.11803,662.34424 L 444.82373,662.34424 Q 445.67723,662.34424 445.67723,661.49074 L 445.67723,652.78504 L 445.67723,652.61434 L 445.67723,602.00178 Q 445.67723,601.14828 444.82373,601.14828 L 436.11803,601.14828 Q 435.26453,601.14828 435.26453,602.00178 Z" />
|
||||
<path
|
||||
inkscape:connector-curvature="0"
|
||||
id="path4664"
|
||||
style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-family:Prototype;-inkscape-font-specification:Prototype;fill:#ff6000;fill-opacity:1"
|
||||
d="M 495.27226,630.67938 Q 495.27226,627.60678 494.07736,625.30233 Q 492.96781,622.91253 491.09011,621.29088 Q 489.29776,619.58388 486.90796,618.73038 Q 484.60351,617.87688 482.29906,617.87688 L 465.05835,617.87688 Q 462.32715,617.87688 459.852,618.81573 Q 457.4622,619.75458 455.66985,621.54693 Q 453.8775,623.25393 452.76795,625.72908 Q 451.74375,628.20423 451.74375,631.27683 L 451.74375,646.29844 Q 451.74375,649.28569 452.3412,652.18759 Q 452.93865,655.00414 454.47495,657.30859 Q 456.01125,659.52769 458.57175,660.97864 Q 461.13225,662.34424 465.05835,662.34424 L 480.25066,662.34424 Q 484.17676,662.34424 486.99331,661.57609 Q 489.80986,660.80794 491.60221,658.84489 Q 493.47991,656.88184 494.33341,653.55319 Q 495.27226,650.22454 495.27226,645.10354 L 495.27226,630.67938 Z M 484.77421,639.98253 L 484.77421,646.81054 Q 484.77421,649.02964 482.46976,650.48059 Q 480.25066,651.93154 477.17805,651.93154 L 469.32585,651.93154 Q 468.2163,651.93154 466.93605,651.76084 Q 465.6558,651.50479 464.54625,650.90734 Q 463.4367,650.22454 462.66855,649.11499 Q 461.98575,648.00544 461.98575,646.29844 L 461.98575,632.64243 Q 461.98575,631.44753 462.5832,630.59403 Q 463.18065,629.74053 464.03415,629.22843 Q 464.973,628.71633 466.08255,628.54563 Q 467.1921,628.28958 468.30165,628.28958 L 477.60481,628.28958 Q 478.88506,628.28958 480.16531,628.54563 Q 481.44556,628.80168 482.46976,629.39913 Q 483.49396,629.91123 484.09141,630.76473 Q 484.77421,631.53288 484.77421,632.55708 L 484.77421,639.98253 Z" />
|
||||
<path
|
||||
inkscape:connector-curvature="0"
|
||||
id="path4666"
|
||||
style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-family:Prototype;-inkscape-font-specification:Prototype;fill:#ff6000;fill-opacity:1"
|
||||
d="M 515.95363,629.14308 Q 515.95363,628.28958 516.80713,628.28958 L 523.80583,628.28958 Q 524.65933,628.28958 524.65933,627.43608 L 524.65933,618.73038 Q 524.65933,617.87688 523.80583,617.87688 L 516.80713,617.87688 Q 515.95363,617.87688 515.95363,617.02338 L 515.95363,606.35463 Q 515.95363,605.50113 515.10013,605.50113 L 506.39443,605.50113 Q 505.54093,605.50113 505.54093,606.35463 L 505.54093,617.02338 Q 505.54093,617.87688 504.68743,617.87688 L 500.16388,617.87688 Q 499.31038,617.87688 499.31038,618.73038 L 499.31038,627.43608 Q 499.31038,628.28958 500.16388,628.28958 L 504.68743,628.28958 Q 505.54093,628.28958 505.54093,629.14308 L 505.54093,655.77229 Q 505.54093,658.41814 507.67468,660.38119 Q 509.80843,662.34424 513.05173,662.34424 L 523.80583,662.34424 Q 524.65933,662.34424 524.65933,661.49074 L 524.65933,652.78504 Q 524.65933,652.01689 523.97653,651.93154 L 516.80713,651.93154 Q 515.95363,651.93154 515.95363,651.07804 L 515.95363,629.14308 Z" />
|
||||
</g>
|
||||
<g
|
||||
transform="matrix(0.96592582,-0.25881904,0.25881904,0.96592582,-135.96662,113.04244)"
|
||||
id="g8188">
|
||||
<g
|
||||
transform="matrix(0.5969555,0.15995374,-0.15995374,0.5969555,187.18453,347.03367)"
|
||||
style="fill:#767575;fill-opacity:1;stroke:none"
|
||||
id="g8190">
|
||||
<path
|
||||
sodipodi:nodetypes="ccccc"
|
||||
style="fill:#767575;fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
|
||||
d="M 403.66024,282.97714 L 350.98876,230.30666 C 305.52073,201.13204 216.95499,216.43139 216.95499,216.43139 L 350.81024,334.95314 Z"
|
||||
id="path8192"
|
||||
inkscape:connector-curvature="0" />
|
||||
<path
|
||||
style="fill:#767575;fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
|
||||
d="M 308.8794,376.0474 L 308.8794,308.0664 L 344.9544,339.9714 Z"
|
||||
id="path8194"
|
||||
inkscape:connector-curvature="0" />
|
||||
<path
|
||||
style="fill:#767575;fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
|
||||
d="M 403.66024,274.97714 L 354.42124,225.73914 L 403.66024,176.49414 Z"
|
||||
id="path8196"
|
||||
inkscape:connector-curvature="0" />
|
||||
<path
|
||||
style="fill:#767575;fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
|
||||
d="M 440.99424,208.82914 L 408.66024,176.49414 L 408.66024,208.82914 Z"
|
||||
id="path8198"
|
||||
inkscape:connector-curvature="0" />
|
||||
</g>
|
||||
<g
|
||||
id="g8200"
|
||||
style="stroke:none"
|
||||
transform="matrix(0.5969555,0.15995374,-0.15995374,0.5969555,186.71819,346.56976)">
|
||||
<path
|
||||
inkscape:connector-curvature="0"
|
||||
id="path8202"
|
||||
d="M 403.66024,282.97714 L 350.98876,230.30666 C 305.52073,201.13204 216.95499,216.43139 216.95499,216.43139 L 350.81024,334.95314 Z"
|
||||
style="fill:#47adc5;fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
|
||||
sodipodi:nodetypes="ccccc" />
|
||||
<path
|
||||
inkscape:connector-curvature="0"
|
||||
id="path8204"
|
||||
d="M 308.8794,376.0474 L 308.8794,308.0664 L 344.9544,339.9714 Z"
|
||||
style="fill:#47adc5;fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1" />
|
||||
<path
|
||||
inkscape:connector-curvature="0"
|
||||
id="path8206"
|
||||
d="M 403.66024,274.97714 L 354.42124,225.73914 L 403.66024,176.49414 Z"
|
||||
style="fill:#feb103;fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1" />
|
||||
<path
|
||||
inkscape:connector-curvature="0"
|
||||
id="path8208"
|
||||
d="M 440.99424,208.82914 L 408.66024,176.49414 L 408.66024,208.82914 Z"
|
||||
style="fill:#feb103;fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1" />
|
||||
</g>
|
||||
</g>
|
||||
</g>
|
||||
</g>
|
||||
<g
|
||||
transform="translate(-134.39309,-220.9483)"
|
||||
id="g8226"
|
||||
inkscape:export-xdpi="56.630924"
|
||||
inkscape:export-ydpi="56.630924">
|
||||
<g
|
||||
style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:80px;line-height:125%;font-family:paola;-inkscape-font-specification:paola;letter-spacing:0px;word-spacing:0px;fill:#767575;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
|
||||
id="text8228">
|
||||
<path
|
||||
d="M 184.74482,611.42617 L 163.06482,611.42617 Q 159.94482,611.42617 159.94482,608.78617 L 159.94482,565.26617 Q 159.94482,564.46617 159.14482,564.46617 L 149.14482,564.46617 Q 148.34482,564.46617 148.34482,565.26617 L 148.34482,607.82617 Q 148.34482,614.54617 151.14482,617.90617 Q 153.94482,621.18617 160.58482,621.74617 Q 160.98482,621.82617 161.54482,621.82617 Q 162.10482,621.82617 162.74482,621.82617 L 184.74482,621.82617 Q 185.54482,621.82617 185.54482,621.02617 L 185.54482,612.22617 Q 185.54482,611.42617 184.74482,611.42617 Z"
|
||||
style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-family:Prototype;-inkscape-font-specification:Prototype;fill:#767575;fill-opacity:1"
|
||||
id="path4581"
|
||||
inkscape:connector-curvature="0" />
|
||||
<path
|
||||
d="M 189.36232,621.02617 Q 189.36232,621.82617 190.16232,621.82617 L 198.32232,621.82617 Q 199.12232,621.82617 199.12232,621.02617 L 199.12232,580.94617 Q 199.12232,580.14617 198.32232,580.14617 L 190.16232,580.14617 Q 189.36232,580.14617 189.36232,580.94617 L 189.36232,621.02617 Z M 189.36232,565.26617 L 189.36232,573.42617 Q 189.36232,574.22617 190.16232,574.22617 L 198.32232,574.22617 Q 199.12232,574.22617 199.12232,573.42617 L 199.12232,565.26617 Q 199.12232,564.46617 198.32232,564.46617 L 190.16232,564.46617 Q 189.36232,564.46617 189.36232,565.26617 Z"
|
||||
style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-family:Prototype;-inkscape-font-specification:Prototype;fill:#767575;fill-opacity:1"
|
||||
id="path4583"
|
||||
inkscape:connector-curvature="0" />
|
||||
<path
|
||||
d="M 215.52857,579.34617 L 215.52857,565.26617 Q 215.52857,564.46617 214.72857,564.46617 L 206.56857,564.46617 Q 205.76857,564.46617 205.76857,565.26617 L 205.76857,621.02617 Q 205.76857,621.82617 206.56857,621.82617 L 231.44857,621.82617 Q 235.12857,621.82617 237.84857,619.98617 Q 240.64857,618.06617 242.40857,615.18617 Q 244.16857,612.22617 245.04857,608.54617 Q 245.92857,604.86617 245.92857,601.26617 Q 245.92857,596.54617 245.04857,592.62617 Q 244.24857,588.70617 242.48857,585.98617 Q 240.72857,583.18617 238.00857,581.66617 Q 235.28857,580.14617 231.44857,580.14617 L 216.32857,580.14617 Q 215.52857,580.14617 215.52857,579.34617 Z M 215.52857,590.70617 Q 215.52857,589.90617 216.32857,589.90617 L 225.04857,589.90617 Q 227.52857,589.90617 229.52857,590.38617 Q 231.60857,590.78617 233.04857,592.06617 Q 234.56857,593.26617 235.36857,595.50617 Q 236.16857,597.74617 236.16857,601.26617 Q 236.16857,604.54617 235.36857,606.62617 Q 234.56857,608.70617 233.12857,609.90617 Q 231.68857,611.10617 229.60857,611.58617 Q 227.52857,612.06617 225.04857,612.06617 L 216.32857,612.06617 Q 215.52857,612.06617 215.52857,611.26617 L 215.52857,590.70617 Z"
|
||||
style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-family:Prototype;-inkscape-font-specification:Prototype;fill:#767575;fill-opacity:1"
|
||||
id="path4585"
|
||||
inkscape:connector-curvature="0" />
|
||||
<path
|
||||
d="M 260.77607,580.14617 Q 258.61607,580.14617 256.69607,581.02617 Q 254.77607,581.82617 253.33607,583.26617 Q 251.89607,584.70617 251.01607,586.62617 Q 250.21607,588.54617 250.21607,590.62617 L 250.21607,621.02617 Q 250.21607,621.82617 251.01607,621.82617 L 259.97607,621.82617 Q 260.77607,621.82617 260.77607,621.02617 L 260.77607,593.42617 Q 260.77607,592.94617 261.01607,592.38617 Q 261.25607,591.74617 261.65607,591.26617 Q 262.13607,590.70617 262.69607,590.30617 Q 263.25607,589.90617 263.97607,589.90617 L 271.65607,589.90617 Q 272.45607,589.90617 272.45607,589.10617 L 272.45607,580.94617 Q 272.45607,580.14617 271.65607,580.14617 L 260.77607,580.14617 Z"
|
||||
style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-family:Prototype;-inkscape-font-specification:Prototype;fill:#767575;fill-opacity:1"
|
||||
id="path4587"
|
||||
inkscape:connector-curvature="0" />
|
||||
<path
|
||||
d="M 285.34607,605.66617 L 314.94607,605.66617 Q 315.74607,605.66617 315.74607,604.86617 L 315.74607,596.54617 Q 315.74607,592.78617 314.62607,589.74617 Q 313.58607,586.70617 311.26607,584.62617 Q 308.94607,582.46617 305.34607,581.34617 Q 301.74607,580.14617 296.78607,580.14617 Q 292.78607,580.14617 288.78607,581.18617 Q 284.86607,582.14617 281.66607,584.62617 Q 278.54607,587.10617 276.54607,591.34617 Q 274.62607,595.50617 274.62607,601.90617 Q 274.62607,607.18617 275.74607,610.94617 Q 276.94607,614.70617 279.66607,617.18617 Q 282.46607,619.58617 286.94607,620.70617 Q 291.50607,621.82617 298.22607,621.82617 L 311.74607,621.82617 Q 312.54607,621.82617 312.54607,621.02617 L 312.54607,612.86617 Q 312.54607,612.06617 311.74607,612.06617 L 292.70607,612.06617 Q 291.02607,612.06617 289.50607,611.66617 Q 287.98607,611.18617 286.86607,610.46617 Q 285.82607,609.66617 285.18607,608.70617 Q 284.54607,607.66617 284.54607,606.46617 Q 284.54607,605.66617 285.34607,605.66617 Z M 285.34607,596.30617 Q 284.54607,596.30617 284.54607,595.50617 Q 284.54607,593.98617 285.74607,592.78617 Q 286.94607,591.50617 288.70607,590.70617 Q 290.54607,589.82617 292.46607,589.34617 Q 294.46607,588.86617 296.06607,588.86617 Q 301.10607,588.86617 303.90607,590.70617 Q 306.70607,592.46617 306.70607,595.50617 Q 306.70607,596.30617 305.90607,596.30617 L 285.34607,596.30617 Z"
|
||||
style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-family:Prototype;-inkscape-font-specification:Prototype;fill:#767575;fill-opacity:1"
|
||||
id="path4589"
|
||||
inkscape:connector-curvature="0" />
|
||||
</g>
|
||||
<g
|
||||
transform="scale(1.0668752,0.93731676)"
|
||||
style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:85.35001373px;line-height:125%;font-family:paola;-inkscape-font-specification:paola;letter-spacing:0px;word-spacing:0px;fill:#767575;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
|
||||
id="text8232">
|
||||
<path
|
||||
d="M 368.68865,604.0074 L 368.68865,662.55751 Q 368.68865,663.41101 369.54215,663.41101 L 380.2109,663.41101 Q 381.0644,663.41101 381.0644,662.55751 L 381.0644,643.01236 Q 381.0644,642.15886 381.9179,642.15886 L 396.76881,642.15886 Q 401.54841,642.15886 404.87706,640.79326 Q 408.20571,639.34231 410.25411,636.69646 Q 412.30251,634.05061 413.24136,630.38056 Q 414.18021,626.7105 414.18021,622.18695 Q 414.18021,617.8341 413.24136,614.16405 Q 412.30251,610.494 410.25411,607.84815 Q 408.20571,605.2023 404.87706,603.75135 Q 401.54841,602.21505 396.76881,602.21505 L 369.54215,602.21505 Q 368.68865,602.21505 368.68865,603.06855 L 368.68865,604.0074 Z M 398.21976,613.31055 Q 399.75606,613.31055 400.60956,614.4201 Q 401.54841,615.4443 401.97516,616.89525 Q 402.40191,618.3462 402.48726,619.8825 Q 402.65796,621.33345 402.65796,622.18695 Q 402.65796,623.04045 402.48726,624.57675 Q 402.40186,626.0277 401.97516,627.47865 Q 401.54841,628.92961 400.60956,630.03916 Q 399.75606,631.06336 398.21976,631.06336 L 381.9179,631.06336 Q 381.0644,631.06336 381.0644,630.20986 L 381.0644,614.16405 Q 381.0644,613.31055 381.9179,613.31055 L 398.21976,613.31055 Z"
|
||||
style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-family:Prototype;-inkscape-font-specification:Prototype;fill:#767575;fill-opacity:1"
|
||||
id="path4592"
|
||||
inkscape:connector-curvature="0" />
|
||||
<path
|
||||
d="M 418.69842,662.55751 Q 418.69842,663.41101 419.55192,663.41101 L 428.25763,663.41101 Q 429.11113,663.41101 429.11113,662.55751 L 429.11113,619.79715 Q 429.11113,618.94365 428.25763,618.94365 L 419.55192,618.94365 Q 418.69842,618.94365 418.69842,619.79715 L 418.69842,662.55751 Z M 418.69842,603.06855 L 418.69842,611.77425 Q 418.69842,612.62775 419.55192,612.62775 L 428.25763,612.62775 Q 429.11113,612.62775 429.11113,611.77425 L 429.11113,603.06855 Q 429.11113,602.21505 428.25763,602.21505 L 419.55192,602.21505 Q 418.69842,602.21505 418.69842,603.06855 Z"
|
||||
style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-family:Prototype;-inkscape-font-specification:Prototype;fill:#767575;fill-opacity:1"
|
||||
id="path4594"
|
||||
inkscape:connector-curvature="0" />
|
||||
<path
|
||||
d="M 436.20184,603.06855 L 436.20184,653.68111 L 436.20184,653.85181 L 436.20184,662.55751 Q 436.20184,663.41101 437.05534,663.41101 L 445.76104,663.41101 Q 446.61454,663.41101 446.61454,662.55751 L 446.61454,653.85181 L 446.61454,653.68111 L 446.61454,603.06855 Q 446.61454,602.21505 445.76104,602.21505 L 437.05534,602.21505 Q 436.20184,602.21505 436.20184,603.06855 Z"
|
||||
style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-family:Prototype;-inkscape-font-specification:Prototype;fill:#767575;fill-opacity:1"
|
||||
id="path4596"
|
||||
inkscape:connector-curvature="0" />
|
||||
<path
|
||||
d="M 496.20957,631.74616 Q 496.20957,628.67356 495.01467,626.3691 Q 493.90512,623.9793 492.02742,622.35765 Q 490.23507,620.65065 487.84527,619.79715 Q 485.54082,618.94365 483.23637,618.94365 L 465.99567,618.94365 Q 463.26447,618.94365 460.78932,619.8825 Q 458.39952,620.82135 456.60717,622.6137 Q 454.81482,624.3207 453.70527,626.79585 Q 452.68107,629.27101 452.68107,632.34361 L 452.68107,647.36521 Q 452.68107,650.35246 453.27852,653.25436 Q 453.87597,656.07091 455.41227,658.37536 Q 456.94857,660.59446 459.50907,662.04541 Q 462.06957,663.41101 465.99567,663.41101 L 481.18797,663.41101 Q 485.11407,663.41101 487.93062,662.64286 Q 490.74717,661.87471 492.53952,659.91166 Q 494.41722,657.94861 495.27072,654.61996 Q 496.20957,651.29131 496.20957,646.17031 L 496.20957,631.74616 Z M 485.71152,641.04931 L 485.71152,647.87731 Q 485.71152,650.09641 483.40707,651.54736 Q 481.18797,652.99831 478.11537,652.99831 L 470.26317,652.99831 Q 469.15362,652.99831 467.87337,652.82761 Q 466.59312,652.57156 465.48357,651.97411 Q 464.37402,651.29131 463.60587,650.18176 Q 462.92307,649.07221 462.92307,647.36521 L 462.92307,633.70921 Q 462.92307,632.51431 463.52052,631.66081 Q 464.11797,630.80731 464.97147,630.29521 Q 465.91032,629.78311 467.01987,629.61241 Q 468.12942,629.35636 469.23897,629.35636 L 478.54212,629.35636 Q 479.82237,629.35636 481.10262,629.61241 Q 482.38287,629.86846 483.40707,630.46591 Q 484.43127,630.97801 485.02872,631.83151 Q 485.71152,632.59966 485.71152,633.62386 L 485.71152,641.04931 Z"
|
||||
style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-family:Prototype;-inkscape-font-specification:Prototype;fill:#767575;fill-opacity:1"
|
||||
id="path4598"
|
||||
inkscape:connector-curvature="0" />
|
||||
<path
|
||||
d="M 516.89095,630.20986 Q 516.89095,629.35636 517.74445,629.35636 L 524.74315,629.35636 Q 525.59665,629.35636 525.59665,628.50286 L 525.59665,619.79715 Q 525.59665,618.94365 524.74315,618.94365 L 517.74445,618.94365 Q 516.89095,618.94365 516.89095,618.09015 L 516.89095,607.4214 Q 516.89095,606.5679 516.03745,606.5679 L 507.33175,606.5679 Q 506.47825,606.5679 506.47825,607.4214 L 506.47825,618.09015 Q 506.47825,618.94365 505.62475,618.94365 L 501.1012,618.94365 Q 500.2477,618.94365 500.2477,619.79715 L 500.2477,628.50286 Q 500.2477,629.35636 501.1012,629.35636 L 505.62475,629.35636 Q 506.47825,629.35636 506.47825,630.20986 L 506.47825,656.83906 Q 506.47825,659.48491 508.612,661.44796 Q 510.74575,663.41101 513.98905,663.41101 L 524.74315,663.41101 Q 525.59665,663.41101 525.59665,662.55751 L 525.59665,653.85181 Q 525.59665,653.08366 524.91385,652.99831 L 517.74445,652.99831 Q 516.89095,652.99831 516.89095,652.14481 L 516.89095,630.20986 Z"
|
||||
style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-family:Prototype;-inkscape-font-specification:Prototype;fill:#767575;fill-opacity:1"
|
||||
id="path4600"
|
||||
inkscape:connector-curvature="0" />
|
||||
</g>
|
||||
<g
|
||||
style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:80px;line-height:125%;font-family:paola;-inkscape-font-specification:paola;letter-spacing:0px;word-spacing:0px;fill:#ff6000;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
|
||||
id="text8236">
|
||||
<path
|
||||
d="M 183.74482,610.42617 L 162.06482,610.42617 Q 158.94482,610.42617 158.94482,607.78617 L 158.94482,564.26617 Q 158.94482,563.46617 158.14482,563.46617 L 148.14482,563.46617 Q 147.34482,563.46617 147.34482,564.26617 L 147.34482,606.82617 Q 147.34482,613.54617 150.14482,616.90617 Q 152.94482,620.18617 159.58482,620.74617 Q 159.98482,620.82617 160.54482,620.82617 Q 161.10482,620.82617 161.74482,620.82617 L 183.74482,620.82617 Q 184.54482,620.82617 184.54482,620.02617 L 184.54482,611.22617 Q 184.54482,610.42617 183.74482,610.42617 Z"
|
||||
style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-family:Prototype;-inkscape-font-specification:Prototype;fill:#ff6000;fill-opacity:1"
|
||||
id="path4603"
|
||||
inkscape:connector-curvature="0" />
|
||||
<path
|
||||
d="M 188.36232,620.02617 Q 188.36232,620.82617 189.16232,620.82617 L 197.32232,620.82617 Q 198.12232,620.82617 198.12232,620.02617 L 198.12232,579.94617 Q 198.12232,579.14617 197.32232,579.14617 L 189.16232,579.14617 Q 188.36232,579.14617 188.36232,579.94617 L 188.36232,620.02617 Z M 188.36232,564.26617 L 188.36232,572.42617 Q 188.36232,573.22617 189.16232,573.22617 L 197.32232,573.22617 Q 198.12232,573.22617 198.12232,572.42617 L 198.12232,564.26617 Q 198.12232,563.46617 197.32232,563.46617 L 189.16232,563.46617 Q 188.36232,563.46617 188.36232,564.26617 Z"
|
||||
style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-family:Prototype;-inkscape-font-specification:Prototype;fill:#ff6000;fill-opacity:1"
|
||||
id="path4605"
|
||||
inkscape:connector-curvature="0" />
|
||||
<path
|
||||
d="M 214.52857,578.34617 L 214.52857,564.26617 Q 214.52857,563.46617 213.72857,563.46617 L 205.56857,563.46617 Q 204.76857,563.46617 204.76857,564.26617 L 204.76857,620.02617 Q 204.76857,620.82617 205.56857,620.82617 L 230.44857,620.82617 Q 234.12857,620.82617 236.84857,618.98617 Q 239.64857,617.06617 241.40857,614.18617 Q 243.16857,611.22617 244.04857,607.54617 Q 244.92857,603.86617 244.92857,600.26617 Q 244.92857,595.54617 244.04857,591.62617 Q 243.24857,587.70617 241.48857,584.98617 Q 239.72857,582.18617 237.00857,580.66617 Q 234.28857,579.14617 230.44857,579.14617 L 215.32857,579.14617 Q 214.52857,579.14617 214.52857,578.34617 Z M 214.52857,589.70617 Q 214.52857,588.90617 215.32857,588.90617 L 224.04857,588.90617 Q 226.52857,588.90617 228.52857,589.38617 Q 230.60857,589.78617 232.04857,591.06617 Q 233.56857,592.26617 234.36857,594.50617 Q 235.16857,596.74617 235.16857,600.26617 Q 235.16857,603.54617 234.36857,605.62617 Q 233.56857,607.70617 232.12857,608.90617 Q 230.68857,610.10617 228.60857,610.58617 Q 226.52857,611.06617 224.04857,611.06617 L 215.32857,611.06617 Q 214.52857,611.06617 214.52857,610.26617 L 214.52857,589.70617 Z"
|
||||
style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-family:Prototype;-inkscape-font-specification:Prototype;fill:#ff6000;fill-opacity:1"
|
||||
id="path4607"
|
||||
inkscape:connector-curvature="0" />
|
||||
<path
|
||||
d="M 259.77607,579.14617 Q 257.61607,579.14617 255.69607,580.02617 Q 253.77607,580.82617 252.33607,582.26617 Q 250.89607,583.70617 250.01607,585.62617 Q 249.21607,587.54617 249.21607,589.62617 L 249.21607,620.02617 Q 249.21607,620.82617 250.01607,620.82617 L 258.97607,620.82617 Q 259.77607,620.82617 259.77607,620.02617 L 259.77607,592.42617 Q 259.77607,591.94617 260.01607,591.38617 Q 260.25607,590.74617 260.65607,590.26617 Q 261.13607,589.70617 261.69607,589.30617 Q 262.25607,588.90617 262.97607,588.90617 L 270.65607,588.90617 Q 271.45607,588.90617 271.45607,588.10617 L 271.45607,579.94617 Q 271.45607,579.14617 270.65607,579.14617 L 259.77607,579.14617 Z"
|
||||
style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-family:Prototype;-inkscape-font-specification:Prototype;fill:#ff6000;fill-opacity:1"
|
||||
id="path4609"
|
||||
inkscape:connector-curvature="0" />
|
||||
<path
|
||||
d="M 284.34607,604.66617 L 313.94607,604.66617 Q 314.74607,604.66617 314.74607,603.86617 L 314.74607,595.54617 Q 314.74607,591.78617 313.62607,588.74617 Q 312.58607,585.70617 310.26607,583.62617 Q 307.94607,581.46617 304.34607,580.34617 Q 300.74607,579.14617 295.78607,579.14617 Q 291.78607,579.14617 287.78607,580.18617 Q 283.86607,581.14617 280.66607,583.62617 Q 277.54607,586.10617 275.54607,590.34617 Q 273.62607,594.50617 273.62607,600.90617 Q 273.62607,606.18617 274.74607,609.94617 Q 275.94607,613.70617 278.66607,616.18617 Q 281.46607,618.58617 285.94607,619.70617 Q 290.50607,620.82617 297.22607,620.82617 L 310.74607,620.82617 Q 311.54607,620.82617 311.54607,620.02617 L 311.54607,611.86617 Q 311.54607,611.06617 310.74607,611.06617 L 291.70607,611.06617 Q 290.02607,611.06617 288.50607,610.66617 Q 286.98607,610.18617 285.86607,609.46617 Q 284.82607,608.66617 284.18607,607.70617 Q 283.54607,606.66617 283.54607,605.46617 Q 283.54607,604.66617 284.34607,604.66617 Z M 284.34607,595.30617 Q 283.54607,595.30617 283.54607,594.50617 Q 283.54607,592.98617 284.74607,591.78617 Q 285.94607,590.50617 287.70607,589.70617 Q 289.54607,588.82617 291.46607,588.34617 Q 293.46607,587.86617 295.06607,587.86617 Q 300.10607,587.86617 302.90607,589.70617 Q 305.70607,591.46617 305.70607,594.50617 Q 305.70607,595.30617 304.90607,595.30617 L 284.34607,595.30617 Z"
|
||||
style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-family:Prototype;-inkscape-font-specification:Prototype;fill:#ff6000;fill-opacity:1"
|
||||
id="path4611"
|
||||
inkscape:connector-curvature="0" />
|
||||
</g>
|
||||
<g
|
||||
transform="scale(1.0668752,0.93731676)"
|
||||
style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:85.35001373px;line-height:125%;font-family:paola;-inkscape-font-specification:paola;letter-spacing:0px;word-spacing:0px;fill:#ff6000;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
|
||||
id="text8240">
|
||||
<path
|
||||
d="M 367.75133,602.94063 L 367.75133,661.49074 Q 367.75133,662.34424 368.60483,662.34424 L 379.27359,662.34424 Q 380.12709,662.34424 380.12709,661.49074 L 380.12709,641.94558 Q 380.12709,641.09208 380.98059,641.09208 L 395.83149,641.09208 Q 400.61109,641.09208 403.93974,639.72648 Q 407.26839,638.27553 409.31679,635.62968 Q 411.36519,632.98383 412.30404,629.31378 Q 413.24289,625.64373 413.24289,621.12018 Q 413.24289,616.76733 412.30404,613.09728 Q 411.36519,609.42723 409.31679,606.78138 Q 407.26839,604.13553 403.93974,602.68458 Q 400.61109,601.14828 395.83149,601.14828 L 368.60483,601.14828 Q 367.75133,601.14828 367.75133,602.00178 L 367.75133,602.94063 Z M 397.28244,612.24378 Q 398.81874,612.24378 399.67224,613.35333 Q 400.61109,614.37753 401.03784,615.82848 Q 401.46459,617.27943 401.54994,618.81573 Q 401.72064,620.26668 401.72064,621.12018 Q 401.72064,621.97368 401.54994,623.50998 Q 401.46454,624.96093 401.03784,626.41188 Q 400.61109,627.86283 399.67224,628.97238 Q 398.81874,629.99658 397.28244,629.99658 L 380.98059,629.99658 Q 380.12709,629.99658 380.12709,629.14308 L 380.12709,613.09728 Q 380.12709,612.24378 380.98059,612.24378 L 397.28244,612.24378 Z"
|
||||
style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-family:Prototype;-inkscape-font-specification:Prototype;fill:#ff6000;fill-opacity:1"
|
||||
id="path4614"
|
||||
inkscape:connector-curvature="0" />
|
||||
<path
|
||||
d="M 417.76111,661.49074 Q 417.76111,662.34424 418.61461,662.34424 L 427.32031,662.34424 Q 428.17381,662.34424 428.17381,661.49074 L 428.17381,618.73038 Q 428.17381,617.87688 427.32031,617.87688 L 418.61461,617.87688 Q 417.76111,617.87688 417.76111,618.73038 L 417.76111,661.49074 Z M 417.76111,602.00178 L 417.76111,610.70748 Q 417.76111,611.56098 418.61461,611.56098 L 427.32031,611.56098 Q 428.17381,611.56098 428.17381,610.70748 L 428.17381,602.00178 Q 428.17381,601.14828 427.32031,601.14828 L 418.61461,601.14828 Q 417.76111,601.14828 417.76111,602.00178 Z"
|
||||
style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-family:Prototype;-inkscape-font-specification:Prototype;fill:#ff6000;fill-opacity:1"
|
||||
id="path4616"
|
||||
inkscape:connector-curvature="0" />
|
||||
<path
|
||||
d="M 435.26453,602.00178 L 435.26453,652.61434 L 435.26453,652.78504 L 435.26453,661.49074 Q 435.26453,662.34424 436.11803,662.34424 L 444.82373,662.34424 Q 445.67723,662.34424 445.67723,661.49074 L 445.67723,652.78504 L 445.67723,652.61434 L 445.67723,602.00178 Q 445.67723,601.14828 444.82373,601.14828 L 436.11803,601.14828 Q 435.26453,601.14828 435.26453,602.00178 Z"
|
||||
style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-family:Prototype;-inkscape-font-specification:Prototype;fill:#ff6000;fill-opacity:1"
|
||||
id="path4618"
|
||||
inkscape:connector-curvature="0" />
|
||||
<path
|
||||
d="M 495.27226,630.67938 Q 495.27226,627.60678 494.07736,625.30233 Q 492.96781,622.91253 491.09011,621.29088 Q 489.29776,619.58388 486.90796,618.73038 Q 484.60351,617.87688 482.29906,617.87688 L 465.05835,617.87688 Q 462.32715,617.87688 459.852,618.81573 Q 457.4622,619.75458 455.66985,621.54693 Q 453.8775,623.25393 452.76795,625.72908 Q 451.74375,628.20423 451.74375,631.27683 L 451.74375,646.29844 Q 451.74375,649.28569 452.3412,652.18759 Q 452.93865,655.00414 454.47495,657.30859 Q 456.01125,659.52769 458.57175,660.97864 Q 461.13225,662.34424 465.05835,662.34424 L 480.25066,662.34424 Q 484.17676,662.34424 486.99331,661.57609 Q 489.80986,660.80794 491.60221,658.84489 Q 493.47991,656.88184 494.33341,653.55319 Q 495.27226,650.22454 495.27226,645.10354 L 495.27226,630.67938 Z M 484.77421,639.98253 L 484.77421,646.81054 Q 484.77421,649.02964 482.46976,650.48059 Q 480.25066,651.93154 477.17805,651.93154 L 469.32585,651.93154 Q 468.2163,651.93154 466.93605,651.76084 Q 465.6558,651.50479 464.54625,650.90734 Q 463.4367,650.22454 462.66855,649.11499 Q 461.98575,648.00544 461.98575,646.29844 L 461.98575,632.64243 Q 461.98575,631.44753 462.5832,630.59403 Q 463.18065,629.74053 464.03415,629.22843 Q 464.973,628.71633 466.08255,628.54563 Q 467.1921,628.28958 468.30165,628.28958 L 477.60481,628.28958 Q 478.88506,628.28958 480.16531,628.54563 Q 481.44556,628.80168 482.46976,629.39913 Q 483.49396,629.91123 484.09141,630.76473 Q 484.77421,631.53288 484.77421,632.55708 L 484.77421,639.98253 Z"
|
||||
style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-family:Prototype;-inkscape-font-specification:Prototype;fill:#ff6000;fill-opacity:1"
|
||||
id="path4620"
|
||||
inkscape:connector-curvature="0" />
|
||||
<path
|
||||
d="M 515.95363,629.14308 Q 515.95363,628.28958 516.80713,628.28958 L 523.80583,628.28958 Q 524.65933,628.28958 524.65933,627.43608 L 524.65933,618.73038 Q 524.65933,617.87688 523.80583,617.87688 L 516.80713,617.87688 Q 515.95363,617.87688 515.95363,617.02338 L 515.95363,606.35463 Q 515.95363,605.50113 515.10013,605.50113 L 506.39443,605.50113 Q 505.54093,605.50113 505.54093,606.35463 L 505.54093,617.02338 Q 505.54093,617.87688 504.68743,617.87688 L 500.16388,617.87688 Q 499.31038,617.87688 499.31038,618.73038 L 499.31038,627.43608 Q 499.31038,628.28958 500.16388,628.28958 L 504.68743,628.28958 Q 505.54093,628.28958 505.54093,629.14308 L 505.54093,655.77229 Q 505.54093,658.41814 507.67468,660.38119 Q 509.80843,662.34424 513.05173,662.34424 L 523.80583,662.34424 Q 524.65933,662.34424 524.65933,661.49074 L 524.65933,652.78504 Q 524.65933,652.01689 523.97653,651.93154 L 516.80713,651.93154 Q 515.95363,651.93154 515.95363,651.07804 L 515.95363,629.14308 Z"
|
||||
style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-family:Prototype;-inkscape-font-specification:Prototype;fill:#ff6000;fill-opacity:1"
|
||||
id="path4622"
|
||||
inkscape:connector-curvature="0" />
|
||||
</g>
|
||||
<g
|
||||
id="g8244"
|
||||
transform="matrix(0.96592582,-0.25881904,0.25881904,0.96592582,-135.96662,113.04244)">
|
||||
<g
|
||||
id="g8246"
|
||||
style="fill:#767575;fill-opacity:1;stroke:none"
|
||||
transform="matrix(0.5969555,0.15995374,-0.15995374,0.5969555,187.18453,347.03367)">
|
||||
<path
|
||||
inkscape:connector-curvature="0"
|
||||
id="path8248"
|
||||
d="M 403.66024,282.97714 L 350.98876,230.30666 C 305.52073,201.13204 216.95499,216.43139 216.95499,216.43139 L 350.81024,334.95314 Z"
|
||||
style="fill:#767575;fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
|
||||
sodipodi:nodetypes="ccccc" />
|
||||
<path
|
||||
inkscape:connector-curvature="0"
|
||||
id="path8250"
|
||||
d="M 308.8794,376.0474 L 308.8794,308.0664 L 344.9544,339.9714 Z"
|
||||
style="fill:#767575;fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1" />
|
||||
<path
|
||||
inkscape:connector-curvature="0"
|
||||
id="path8252"
|
||||
d="M 403.66024,274.97714 L 354.42124,225.73914 L 403.66024,176.49414 Z"
|
||||
style="fill:#767575;fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1" />
|
||||
<path
|
||||
inkscape:connector-curvature="0"
|
||||
id="path8254"
|
||||
d="M 440.99424,208.82914 L 408.66024,176.49414 L 408.66024,208.82914 Z"
|
||||
style="fill:#767575;fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1" />
|
||||
</g>
|
||||
<g
|
||||
transform="matrix(0.5969555,0.15995374,-0.15995374,0.5969555,186.71819,346.56976)"
|
||||
style="stroke:none"
|
||||
id="g8256">
|
||||
<path
|
||||
sodipodi:nodetypes="ccccc"
|
||||
style="fill:#47adc5;fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
|
||||
d="M 403.66024,282.97714 L 350.98876,230.30666 C 305.52073,201.13204 216.95499,216.43139 216.95499,216.43139 L 350.81024,334.95314 Z"
|
||||
id="path8258"
|
||||
inkscape:connector-curvature="0" />
|
||||
<path
|
||||
style="fill:#47adc5;fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
|
||||
d="M 308.8794,376.0474 L 308.8794,308.0664 L 344.9544,339.9714 Z"
|
||||
id="path8260"
|
||||
inkscape:connector-curvature="0" />
|
||||
<path
|
||||
style="fill:#feb103;fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
|
||||
d="M 403.66024,274.97714 L 354.42124,225.73914 L 403.66024,176.49414 Z"
|
||||
id="path8262"
|
||||
inkscape:connector-curvature="0" />
|
||||
<path
|
||||
style="fill:#feb103;fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
|
||||
d="M 440.99424,208.82914 L 408.66024,176.49414 L 408.66024,208.82914 Z"
|
||||
id="path8264"
|
||||
inkscape:connector-curvature="0" />
|
||||
</g>
|
||||
</g>
|
||||
</g>
|
||||
<g
|
||||
id="g3579"
|
||||
inkscape:export-filename="./LP_logo_square.png"
|
||||
inkscape:export-xdpi="360"
|
||||
inkscape:export-ydpi="360"
|
||||
transform="translate(-37.42618,-379.85478)">
|
||||
<rect
|
||||
rx="30"
|
||||
ry="30"
|
||||
y="-31.627954"
|
||||
x="5.3619666"
|
||||
height="500"
|
||||
width="500"
|
||||
id="rect3526"
|
||||
style="color:#000000;display:inline;overflow:visible;visibility:visible;opacity:1;fill:#e5e5e5;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:2;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;marker:none;enable-background:accumulate" />
|
||||
<g
|
||||
id="g4328"
|
||||
inkscape:export-xdpi="177.41391"
|
||||
inkscape:export-ydpi="177.41391"
|
||||
transform="matrix(2.5876865,0,0,2.5876865,-706.2251,-2452.6924)">
|
||||
<g
|
||||
transform="matrix(0.96592582,-0.25881904,0.25881904,0.96592582,-102.04982,555.17501)"
|
||||
id="g4332"
|
||||
inkscape:export-xdpi="64.777489"
|
||||
inkscape:export-ydpi="64.777489">
|
||||
<g
|
||||
transform="matrix(0.5969555,0.15995374,-0.15995374,0.5969555,187.18453,347.03367)"
|
||||
style="fill:#767575;fill-opacity:1;stroke:none"
|
||||
id="g4334">
|
||||
<path
|
||||
sodipodi:nodetypes="ccccc"
|
||||
style="fill:#767575;fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
|
||||
d="M 403.66024,282.97714 L 350.98876,230.30666 C 305.52073,201.13204 216.95499,216.43139 216.95499,216.43139 L 350.81024,334.95314 Z"
|
||||
id="path4336"
|
||||
inkscape:connector-curvature="0" />
|
||||
<path
|
||||
style="fill:#767575;fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
|
||||
d="M 308.8794,376.0474 L 308.8794,308.0664 L 344.9544,339.9714 Z"
|
||||
id="path4338"
|
||||
inkscape:connector-curvature="0" />
|
||||
<path
|
||||
style="fill:#767575;fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
|
||||
d="M 403.66024,274.97714 L 354.42124,225.73914 L 403.66024,176.49414 Z"
|
||||
id="path4340"
|
||||
inkscape:connector-curvature="0" />
|
||||
<path
|
||||
style="fill:#767575;fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
|
||||
d="M 440.99424,208.82914 L 408.66024,176.49414 L 408.66024,208.82914 Z"
|
||||
id="path4342"
|
||||
inkscape:connector-curvature="0" />
|
||||
</g>
|
||||
<g
|
||||
id="g4344"
|
||||
style="stroke:none"
|
||||
transform="matrix(0.5969555,0.15995374,-0.15995374,0.5969555,186.71819,346.56976)">
|
||||
<path
|
||||
inkscape:connector-curvature="0"
|
||||
id="path4346"
|
||||
d="M 403.66024,282.97714 L 350.98876,230.30666 C 305.52073,201.13204 216.95499,216.43139 216.95499,216.43139 L 350.81024,334.95314 Z"
|
||||
style="fill:#47adc5;fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
|
||||
sodipodi:nodetypes="ccccc" />
|
||||
<path
|
||||
inkscape:connector-curvature="0"
|
||||
id="path4348"
|
||||
d="M 308.8794,376.0474 L 308.8794,308.0664 L 344.9544,339.9714 Z"
|
||||
style="fill:#47adc5;fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1" />
|
||||
<path
|
||||
inkscape:connector-curvature="0"
|
||||
id="path4350"
|
||||
d="M 403.66024,274.97714 L 354.42124,225.73914 L 403.66024,176.49414 Z"
|
||||
style="fill:#feb103;fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1" />
|
||||
<path
|
||||
inkscape:connector-curvature="0"
|
||||
id="path4352"
|
||||
d="M 440.99424,208.82914 L 408.66024,176.49414 L 408.66024,208.82914 Z"
|
||||
style="fill:#feb103;fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1" />
|
||||
</g>
|
||||
</g>
|
||||
</g>
|
||||
<g
|
||||
transform="matrix(1.161436,0,0,1.161436,-673.02805,-449.62803)"
|
||||
id="g4506">
|
||||
<path
|
||||
inkscape:connector-curvature="0"
|
||||
d="M 664.54607,745.48685 L 642.86607,745.48685 Q 639.74607,745.48685 639.74607,742.84685 L 639.74607,699.32685 Q 639.74607,698.52685 638.94607,698.52685 L 628.94607,698.52685 Q 628.14607,698.52685 628.14607,699.32685 L 628.14607,741.88685 Q 628.14607,748.60685 630.94607,751.96685 Q 633.74607,755.24685 640.38607,755.80685 Q 640.78607,755.88685 641.34607,755.88685 Q 641.90607,755.88685 642.54607,755.88685 L 664.54607,755.88685 Q 665.34607,755.88685 665.34607,755.08685 L 665.34607,746.28685 Q 665.34607,745.48685 664.54607,745.48685 Z"
|
||||
style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:medium;line-height:125%;font-family:Prototype;-inkscape-font-specification:Prototype;letter-spacing:0px;word-spacing:0px;fill:#767575;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
|
||||
id="path4356" />
|
||||
<path
|
||||
inkscape:connector-curvature="0"
|
||||
d="M 669.16357,755.08685 Q 669.16357,755.88685 669.96357,755.88685 L 678.12357,755.88685 Q 678.92357,755.88685 678.92357,755.08685 L 678.92357,715.00685 Q 678.92357,714.20685 678.12357,714.20685 L 669.96357,714.20685 Q 669.16357,714.20685 669.16357,715.00685 L 669.16357,755.08685 Z M 669.16357,699.32685 L 669.16357,707.48685 Q 669.16357,708.28685 669.96357,708.28685 L 678.12357,708.28685 Q 678.92357,708.28685 678.92357,707.48685 L 678.92357,699.32685 Q 678.92357,698.52685 678.12357,698.52685 L 669.96357,698.52685 Q 669.16357,698.52685 669.16357,699.32685 Z"
|
||||
style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:medium;line-height:125%;font-family:Prototype;-inkscape-font-specification:Prototype;letter-spacing:0px;word-spacing:0px;fill:#767575;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
|
||||
id="path4358" />
|
||||
<path
|
||||
inkscape:connector-curvature="0"
|
||||
d="M 695.32982,713.40685 L 695.32982,699.32685 Q 695.32982,698.52685 694.52982,698.52685 L 686.36982,698.52685 Q 685.56982,698.52685 685.56982,699.32685 L 685.56982,755.08685 Q 685.56982,755.88685 686.36982,755.88685 L 711.24982,755.88685 Q 714.92982,755.88685 717.64982,754.04685 Q 720.44982,752.12685 722.20982,749.24685 Q 723.96982,746.28685 724.84982,742.60685 Q 725.72982,738.92685 725.72982,735.32685 Q 725.72982,730.60685 724.84982,726.68685 Q 724.04982,722.76685 722.28982,720.04685 Q 720.52982,717.24685 717.80982,715.72685 Q 715.08982,714.20685 711.24982,714.20685 L 696.12982,714.20685 Q 695.32982,714.20685 695.32982,713.40685 Z M 695.32982,724.76685 Q 695.32982,723.96685 696.12982,723.96685 L 704.84982,723.96685 Q 707.32982,723.96685 709.32982,724.44685 Q 711.40982,724.84685 712.84982,726.12685 Q 714.36982,727.32685 715.16982,729.56685 Q 715.96982,731.80685 715.96982,735.32685 Q 715.96982,738.60685 715.16982,740.68685 Q 714.36982,742.76685 712.92982,743.96685 Q 711.48982,745.16685 709.40982,745.64685 Q 707.32982,746.12685 704.84982,746.12685 L 696.12982,746.12685 Q 695.32982,746.12685 695.32982,745.32685 L 695.32982,724.76685 Z"
|
||||
style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:medium;line-height:125%;font-family:Prototype;-inkscape-font-specification:Prototype;letter-spacing:0px;word-spacing:0px;fill:#767575;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
|
||||
id="path4360" />
|
||||
<path
|
||||
inkscape:connector-curvature="0"
|
||||
d="M 740.57732,714.20685 Q 738.41732,714.20685 736.49732,715.08685 Q 734.57732,715.88685 733.13732,717.32685 Q 731.69732,718.76685 730.81732,720.68685 Q 730.01732,722.60685 730.01732,724.68685 L 730.01732,755.08685 Q 730.01732,755.88685 730.81732,755.88685 L 739.77732,755.88685 Q 740.57732,755.88685 740.57732,755.08685 L 740.57732,727.48685 Q 740.57732,727.00685 740.81732,726.44685 Q 741.05732,725.80685 741.45732,725.32685 Q 741.93732,724.76685 742.49732,724.36685 Q 743.05732,723.96685 743.77732,723.96685 L 751.45732,723.96685 Q 752.25732,723.96685 752.25732,723.16685 L 752.25732,715.00685 Q 752.25732,714.20685 751.45732,714.20685 L 740.57732,714.20685 Z"
|
||||
style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:medium;line-height:125%;font-family:Prototype;-inkscape-font-specification:Prototype;letter-spacing:0px;word-spacing:0px;fill:#767575;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
|
||||
id="path4362" />
|
||||
<path
|
||||
inkscape:connector-curvature="0"
|
||||
d="M 765.14732,739.72685 L 794.74732,739.72685 Q 795.54732,739.72685 795.54732,738.92685 L 795.54732,730.60685 Q 795.54732,726.84685 794.42732,723.80685 Q 793.38732,720.76685 791.06732,718.68685 Q 788.74732,716.52685 785.14732,715.40685 Q 781.54732,714.20685 776.58732,714.20685 Q 772.58732,714.20685 768.58732,715.24685 Q 764.66732,716.20685 761.46732,718.68685 Q 758.34732,721.16685 756.34732,725.40685 Q 754.42732,729.56685 754.42732,735.96685 Q 754.42732,741.24685 755.54732,745.00685 Q 756.74732,748.76685 759.46732,751.24685 Q 762.26732,753.64685 766.74732,754.76685 Q 771.30732,755.88685 778.02732,755.88685 L 791.54732,755.88685 Q 792.34732,755.88685 792.34732,755.08685 L 792.34732,746.92685 Q 792.34732,746.12685 791.54732,746.12685 L 772.50732,746.12685 Q 770.82732,746.12685 769.30732,745.72685 Q 767.78732,745.24685 766.66732,744.52685 Q 765.62732,743.72685 764.98732,742.76685 Q 764.34732,741.72685 764.34732,740.52685 Q 764.34732,739.72685 765.14732,739.72685 Z M 765.14732,730.36685 Q 764.34732,730.36685 764.34732,729.56685 Q 764.34732,728.04685 765.54732,726.84685 Q 766.74732,725.56685 768.50732,724.76685 Q 770.34732,723.88685 772.26732,723.40685 Q 774.26732,722.92685 775.86732,722.92685 Q 780.90732,722.92685 783.70732,724.76685 Q 786.50732,726.52685 786.50732,729.56685 Q 786.50732,730.36685 785.70732,730.36685 L 765.14732,730.36685 Z"
|
||||
style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:medium;line-height:125%;font-family:Prototype;-inkscape-font-specification:Prototype;letter-spacing:0px;word-spacing:0px;fill:#767575;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
|
||||
id="path4364" />
|
||||
<path
|
||||
inkscape:connector-curvature="0"
|
||||
d="M 804.14603,700.20694 L 804.14603,755.08694 Q 804.14603,755.88694 805.05661,755.88694 L 816.43883,755.88694 Q 817.34941,755.88694 817.34941,755.08694 L 817.34941,736.76694 Q 817.34941,735.96694 818.25999,735.96694 L 834.10405,735.96694 Q 839.20329,735.96694 842.75454,734.68694 Q 846.3058,733.32694 848.49119,730.84694 Q 850.67657,728.36694 851.67821,724.92694 Q 852.67984,721.48694 852.67984,717.24694 Q 852.67984,713.16694 851.67821,709.72694 Q 850.67657,706.28694 848.49119,703.80694 Q 846.3058,701.32694 842.75454,699.96694 Q 839.20329,698.52694 834.10405,698.52694 L 805.05661,698.52694 Q 804.14603,698.52694 804.14603,699.32694 L 804.14603,700.20694 Z M 835.65204,708.92694 Q 837.29108,708.92694 838.20165,709.96694 Q 839.20329,710.92694 839.65858,712.28694 Q 840.11387,713.64694 840.20493,715.08694 Q 840.38704,716.44694 840.38704,717.24694 Q 840.38704,718.04694 840.20493,719.48694 Q 840.11383,720.84694 839.65858,722.20694 Q 839.20329,723.56694 838.20165,724.60694 Q 837.29108,725.56694 835.65204,725.56694 L 818.25999,725.56694 Q 817.34941,725.56694 817.34941,724.76694 L 817.34941,709.72694 Q 817.34941,708.92694 818.25999,708.92694 L 835.65204,708.92694 Z"
|
||||
style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:medium;line-height:125%;font-family:Prototype;-inkscape-font-specification:Prototype;letter-spacing:0px;word-spacing:0px;fill:#767575;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
|
||||
id="path4368" />
|
||||
<path
|
||||
inkscape:connector-curvature="0"
|
||||
d="M 857.50021,755.08694 Q 857.50021,755.88694 858.41079,755.88694 L 867.69869,755.88694 Q 868.60927,755.88694 868.60927,755.08694 L 868.60927,715.00694 Q 868.60927,714.20694 867.69869,714.20694 L 858.41079,714.20694 Q 857.50021,714.20694 857.50021,715.00694 L 857.50021,755.08694 Z M 857.50021,699.32694 L 857.50021,707.48694 Q 857.50021,708.28694 858.41079,708.28694 L 867.69869,708.28694 Q 868.60927,708.28694 868.60927,707.48694 L 868.60927,699.32694 Q 868.60927,698.52694 867.69869,698.52694 L 858.41079,698.52694 Q 857.50021,698.52694 857.50021,699.32694 Z"
|
||||
style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:medium;line-height:125%;font-family:Prototype;-inkscape-font-specification:Prototype;letter-spacing:0px;word-spacing:0px;fill:#767575;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
|
||||
id="path4370" />
|
||||
<path
|
||||
inkscape:connector-curvature="0"
|
||||
d="M 876.17418,699.32694 L 876.17418,746.76694 L 876.17418,746.92694 L 876.17418,755.08694 Q 876.17418,755.88694 877.08475,755.88694 L 886.37265,755.88694 Q 887.28323,755.88694 887.28323,755.08694 L 887.28323,746.92694 L 887.28323,746.76694 L 887.28323,699.32694 Q 887.28323,698.52694 886.37265,698.52694 L 877.08475,698.52694 Q 876.17418,698.52694 876.17418,699.32694 Z"
|
||||
style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:medium;line-height:125%;font-family:Prototype;-inkscape-font-specification:Prototype;letter-spacing:0px;word-spacing:0px;fill:#767575;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
|
||||
id="path4372" />
|
||||
<path
|
||||
inkscape:connector-curvature="0"
|
||||
d="M 940.1949,726.20694 Q 940.1949,723.32694 938.9201,721.16694 Q 937.7364,718.92694 935.7331,717.40694 Q 933.8209,715.80694 931.2713,715.00694 Q 928.81271,714.20694 926.35415,714.20694 L 907.96047,714.20694 Q 905.04662,714.20694 902.40595,715.08694 Q 899.85633,715.96694 897.94412,717.64694 Q 896.0319,719.24694 894.84815,721.56694 Q 893.75546,723.88694 893.75546,726.76694 L 893.75546,740.84694 Q 893.75546,743.64694 894.39286,746.36694 Q 895.03027,749.00694 896.66931,751.16694 Q 898.30835,753.24694 901.04008,754.60694 Q 903.77181,755.88694 907.96047,755.88694 L 924.16876,755.88694 Q 928.35742,755.88694 931.3623,755.16694 Q 934.3672,754.44694 936.2794,752.60694 Q 938.2827,750.76694 939.1933,747.64694 Q 940.1949,744.52694 940.1949,739.72694 L 940.1949,726.20694 Z M 928.99483,734.92694 L 928.99483,741.32694 Q 928.99483,743.40694 926.53626,744.76694 Q 924.16876,746.12694 920.89068,746.12694 L 912.51336,746.12694 Q 911.32961,746.12694 909.96375,745.96694 Q 908.59788,745.72694 907.41413,745.16694 Q 906.23038,744.52694 905.41086,743.48694 Q 904.68239,742.44694 904.68239,740.84694 L 904.68239,728.04694 Q 904.68239,726.92694 905.3198,726.12694 Q 905.9572,725.32694 906.86778,724.84694 Q 907.86942,724.36694 909.05317,724.20694 Q 910.23692,723.96694 911.42067,723.96694 L 921.34597,723.96694 Q 922.71184,723.96694 924.0777,724.20694 Q 925.44357,724.44694 926.53626,725.00694 Q 927.62896,725.48694 928.26636,726.28694 Q 928.99483,727.00694 928.99483,727.96694 L 928.99483,734.92694 Z"
|
||||
style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:medium;line-height:125%;font-family:Prototype;-inkscape-font-specification:Prototype;letter-spacing:0px;word-spacing:0px;fill:#767575;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
|
||||
id="path4374" />
|
||||
<path
|
||||
inkscape:connector-curvature="0"
|
||||
d="M 962.2594,724.76694 Q 962.2594,723.96694 963.17,723.96694 L 970.6367,723.96694 Q 971.5473,723.96694 971.5473,723.16694 L 971.5473,715.00694 Q 971.5473,714.20694 970.6367,714.20694 L 963.17,714.20694 Q 962.2594,714.20694 962.2594,713.40694 L 962.2594,703.40694 Q 962.2594,702.60694 961.3488,702.60694 L 952.0609,702.60694 Q 951.1503,702.60694 951.1503,703.40694 L 951.1503,713.40694 Q 951.1503,714.20694 950.2398,714.20694 L 945.4137,714.20694 Q 944.5031,714.20694 944.5031,715.00694 L 944.5031,723.16694 Q 944.5031,723.96694 945.4137,723.96694 L 950.2398,723.96694 Q 951.1503,723.96694 951.1503,724.76694 L 951.1503,749.72694 Q 951.1503,752.20694 953.4268,754.04694 Q 955.7032,755.88694 959.1634,755.88694 L 970.6367,755.88694 Q 971.5473,755.88694 971.5473,755.08694 L 971.5473,746.92694 Q 971.5473,746.20694 970.8188,746.12694 L 963.17,746.12694 Q 962.2594,746.12694 962.2594,745.32694 L 962.2594,724.76694 Z"
|
||||
style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:medium;line-height:125%;font-family:Prototype;-inkscape-font-specification:Prototype;letter-spacing:0px;word-spacing:0px;fill:#767575;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
|
||||
id="path4376" />
|
||||
<path
|
||||
inkscape:connector-curvature="0"
|
||||
d="M 663.54607,744.48685 L 641.86607,744.48685 Q 638.74607,744.48685 638.74607,741.84685 L 638.74607,698.32685 Q 638.74607,697.52685 637.94607,697.52685 L 627.94607,697.52685 Q 627.14607,697.52685 627.14607,698.32685 L 627.14607,740.88685 Q 627.14607,747.60685 629.94607,750.96685 Q 632.74607,754.24685 639.38607,754.80685 Q 639.78607,754.88685 640.34607,754.88685 Q 640.90607,754.88685 641.54607,754.88685 L 663.54607,754.88685 Q 664.34607,754.88685 664.34607,754.08685 L 664.34607,745.28685 Q 664.34607,744.48685 663.54607,744.48685 Z"
|
||||
style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:medium;line-height:125%;font-family:Prototype;-inkscape-font-specification:Prototype;letter-spacing:0px;word-spacing:0px;fill:#ff6000;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
|
||||
id="path4380" />
|
||||
<path
|
||||
inkscape:connector-curvature="0"
|
||||
d="M 668.16357,754.08685 Q 668.16357,754.88685 668.96357,754.88685 L 677.12357,754.88685 Q 677.92357,754.88685 677.92357,754.08685 L 677.92357,714.00685 Q 677.92357,713.20685 677.12357,713.20685 L 668.96357,713.20685 Q 668.16357,713.20685 668.16357,714.00685 L 668.16357,754.08685 Z M 668.16357,698.32685 L 668.16357,706.48685 Q 668.16357,707.28685 668.96357,707.28685 L 677.12357,707.28685 Q 677.92357,707.28685 677.92357,706.48685 L 677.92357,698.32685 Q 677.92357,697.52685 677.12357,697.52685 L 668.96357,697.52685 Q 668.16357,697.52685 668.16357,698.32685 Z"
|
||||
style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:medium;line-height:125%;font-family:Prototype;-inkscape-font-specification:Prototype;letter-spacing:0px;word-spacing:0px;fill:#ff6000;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
|
||||
id="path4382" />
|
||||
<path
|
||||
inkscape:connector-curvature="0"
|
||||
d="M 694.32982,712.40685 L 694.32982,698.32685 Q 694.32982,697.52685 693.52982,697.52685 L 685.36982,697.52685 Q 684.56982,697.52685 684.56982,698.32685 L 684.56982,754.08685 Q 684.56982,754.88685 685.36982,754.88685 L 710.24982,754.88685 Q 713.92982,754.88685 716.64982,753.04685 Q 719.44982,751.12685 721.20982,748.24685 Q 722.96982,745.28685 723.84982,741.60685 Q 724.72982,737.92685 724.72982,734.32685 Q 724.72982,729.60685 723.84982,725.68685 Q 723.04982,721.76685 721.28982,719.04685 Q 719.52982,716.24685 716.80982,714.72685 Q 714.08982,713.20685 710.24982,713.20685 L 695.12982,713.20685 Q 694.32982,713.20685 694.32982,712.40685 Z M 694.32982,723.76685 Q 694.32982,722.96685 695.12982,722.96685 L 703.84982,722.96685 Q 706.32982,722.96685 708.32982,723.44685 Q 710.40982,723.84685 711.84982,725.12685 Q 713.36982,726.32685 714.16982,728.56685 Q 714.96982,730.80685 714.96982,734.32685 Q 714.96982,737.60685 714.16982,739.68685 Q 713.36982,741.76685 711.92982,742.96685 Q 710.48982,744.16685 708.40982,744.64685 Q 706.32982,745.12685 703.84982,745.12685 L 695.12982,745.12685 Q 694.32982,745.12685 694.32982,744.32685 L 694.32982,723.76685 Z"
|
||||
style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:medium;line-height:125%;font-family:Prototype;-inkscape-font-specification:Prototype;letter-spacing:0px;word-spacing:0px;fill:#ff6000;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
|
||||
id="path4384" />
|
||||
<path
|
||||
inkscape:connector-curvature="0"
|
||||
d="M 739.57732,713.20685 Q 737.41732,713.20685 735.49732,714.08685 Q 733.57732,714.88685 732.13732,716.32685 Q 730.69732,717.76685 729.81732,719.68685 Q 729.01732,721.60685 729.01732,723.68685 L 729.01732,754.08685 Q 729.01732,754.88685 729.81732,754.88685 L 738.77732,754.88685 Q 739.57732,754.88685 739.57732,754.08685 L 739.57732,726.48685 Q 739.57732,726.00685 739.81732,725.44685 Q 740.05732,724.80685 740.45732,724.32685 Q 740.93732,723.76685 741.49732,723.36685 Q 742.05732,722.96685 742.77732,722.96685 L 750.45732,722.96685 Q 751.25732,722.96685 751.25732,722.16685 L 751.25732,714.00685 Q 751.25732,713.20685 750.45732,713.20685 L 739.57732,713.20685 Z"
|
||||
style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:medium;line-height:125%;font-family:Prototype;-inkscape-font-specification:Prototype;letter-spacing:0px;word-spacing:0px;fill:#ff6000;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
|
||||
id="path4386" />
|
||||
<path
|
||||
inkscape:connector-curvature="0"
|
||||
d="M 764.14732,738.72685 L 793.74732,738.72685 Q 794.54732,738.72685 794.54732,737.92685 L 794.54732,729.60685 Q 794.54732,725.84685 793.42732,722.80685 Q 792.38732,719.76685 790.06732,717.68685 Q 787.74732,715.52685 784.14732,714.40685 Q 780.54732,713.20685 775.58732,713.20685 Q 771.58732,713.20685 767.58732,714.24685 Q 763.66732,715.20685 760.46732,717.68685 Q 757.34732,720.16685 755.34732,724.40685 Q 753.42732,728.56685 753.42732,734.96685 Q 753.42732,740.24685 754.54732,744.00685 Q 755.74732,747.76685 758.46732,750.24685 Q 761.26732,752.64685 765.74732,753.76685 Q 770.30732,754.88685 777.02732,754.88685 L 790.54732,754.88685 Q 791.34732,754.88685 791.34732,754.08685 L 791.34732,745.92685 Q 791.34732,745.12685 790.54732,745.12685 L 771.50732,745.12685 Q 769.82732,745.12685 768.30732,744.72685 Q 766.78732,744.24685 765.66732,743.52685 Q 764.62732,742.72685 763.98732,741.76685 Q 763.34732,740.72685 763.34732,739.52685 Q 763.34732,738.72685 764.14732,738.72685 Z M 764.14732,729.36685 Q 763.34732,729.36685 763.34732,728.56685 Q 763.34732,727.04685 764.54732,725.84685 Q 765.74732,724.56685 767.50732,723.76685 Q 769.34732,722.88685 771.26732,722.40685 Q 773.26732,721.92685 774.86732,721.92685 Q 779.90732,721.92685 782.70732,723.76685 Q 785.50732,725.52685 785.50732,728.56685 Q 785.50732,729.36685 784.70732,729.36685 L 764.14732,729.36685 Z"
|
||||
style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:medium;line-height:125%;font-family:Prototype;-inkscape-font-specification:Prototype;letter-spacing:0px;word-spacing:0px;fill:#ff6000;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
|
||||
id="path4388" />
|
||||
<path
|
||||
inkscape:connector-curvature="0"
|
||||
d="M 803.14602,699.20704 L 803.14602,754.08704 Q 803.14602,754.88704 804.0566,754.88704 L 815.43884,754.88704 Q 816.34942,754.88704 816.34942,754.08704 L 816.34942,735.76703 Q 816.34942,734.96703 817.25999,734.96703 L 833.10405,734.96703 Q 838.20329,734.96703 841.75454,733.68703 Q 845.3058,732.32703 847.49118,729.84703 Q 849.67657,727.36703 850.67821,723.92703 Q 851.67984,720.48703 851.67984,716.24703 Q 851.67984,712.16704 850.67821,708.72704 Q 849.67657,705.28704 847.49118,702.80704 Q 845.3058,700.32704 841.75454,698.96704 Q 838.20329,697.52704 833.10405,697.52704 L 804.0566,697.52704 Q 803.14602,697.52704 803.14602,698.32704 L 803.14602,699.20704 Z M 834.65203,707.92704 Q 836.29107,707.92704 837.20165,708.96704 Q 838.20329,709.92704 838.65858,711.28704 Q 839.11386,712.64704 839.20492,714.08704 Q 839.38704,715.44703 839.38704,716.24703 Q 839.38704,717.04703 839.20492,718.48703 Q 839.11382,719.84703 838.65858,721.20703 Q 838.20329,722.56703 837.20165,723.60703 Q 836.29107,724.56703 834.65203,724.56703 L 817.25999,724.56703 Q 816.34942,724.56703 816.34942,723.76703 L 816.34942,708.72704 Q 816.34942,707.92704 817.25999,707.92704 L 834.65203,707.92704 Z"
|
||||
style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:medium;line-height:125%;font-family:Prototype;-inkscape-font-specification:Prototype;letter-spacing:0px;word-spacing:0px;fill:#ff6000;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
|
||||
id="path4392" />
|
||||
<path
|
||||
inkscape:connector-curvature="0"
|
||||
d="M 856.50022,754.08704 Q 856.50022,754.88704 857.4108,754.88704 L 866.69869,754.88704 Q 867.60927,754.88704 867.60927,754.08704 L 867.60927,714.00704 Q 867.60927,713.20704 866.69869,713.20704 L 857.4108,713.20704 Q 856.50022,713.20704 856.50022,714.00704 L 856.50022,754.08704 Z M 856.50022,698.32704 L 856.50022,706.48704 Q 856.50022,707.28704 857.4108,707.28704 L 866.69869,707.28704 Q 867.60927,707.28704 867.60927,706.48704 L 867.60927,698.32704 Q 867.60927,697.52704 866.69869,697.52704 L 857.4108,697.52704 Q 856.50022,697.52704 856.50022,698.32704 Z"
|
||||
style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:medium;line-height:125%;font-family:Prototype;-inkscape-font-specification:Prototype;letter-spacing:0px;word-spacing:0px;fill:#ff6000;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
|
||||
id="path4394" />
|
||||
<path
|
||||
inkscape:connector-curvature="0"
|
||||
d="M 875.17418,698.32704 L 875.17418,745.76704 L 875.17418,745.92704 L 875.17418,754.08704 Q 875.17418,754.88704 876.08476,754.88704 L 885.37266,754.88704 Q 886.28323,754.88704 886.28323,754.08704 L 886.28323,745.92704 L 886.28323,745.76704 L 886.28323,698.32704 Q 886.28323,697.52704 885.37266,697.52704 L 876.08476,697.52704 Q 875.17418,697.52704 875.17418,698.32704 Z"
|
||||
style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:medium;line-height:125%;font-family:Prototype;-inkscape-font-specification:Prototype;letter-spacing:0px;word-spacing:0px;fill:#ff6000;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
|
||||
id="path4396" />
|
||||
<path
|
||||
inkscape:connector-curvature="0"
|
||||
d="M 939.1949,725.20703 Q 939.1949,722.32703 937.9201,720.16703 Q 936.7364,717.92703 934.7331,716.40703 Q 932.8209,714.80703 930.27128,714.00704 Q 927.81272,713.20704 925.35416,713.20704 L 906.96047,713.20704 Q 904.04662,713.20704 901.40594,714.08704 Q 898.85633,714.96703 896.94411,716.64703 Q 895.0319,718.24703 893.84815,720.56703 Q 892.75545,722.88703 892.75545,725.76703 L 892.75545,739.84704 Q 892.75545,742.64704 893.39286,745.36704 Q 894.03026,748.00704 895.6693,750.16704 Q 897.30834,752.24704 900.04008,753.60704 Q 902.77181,754.88704 906.96047,754.88704 L 923.16877,754.88704 Q 927.35743,754.88704 930.36234,754.16704 Q 933.3672,753.44704 935.2795,751.60704 Q 937.2827,749.76704 938.1933,746.64704 Q 939.1949,743.52704 939.1949,738.72704 L 939.1949,725.20703 Z M 927.99483,733.92703 L 927.99483,740.32704 Q 927.99483,742.40704 925.53627,743.76704 Q 923.16877,745.12704 919.89068,745.12704 L 911.51336,745.12704 Q 910.32961,745.12704 908.96374,744.96704 Q 907.59787,744.72704 906.41412,744.16704 Q 905.23037,743.52704 904.41085,742.48704 Q 903.68239,741.44704 903.68239,739.84704 L 903.68239,727.04703 Q 903.68239,725.92703 904.31979,725.12703 Q 904.9572,724.32703 905.86778,723.84703 Q 906.86941,723.36703 908.05316,723.20703 Q 909.23692,722.96703 910.42067,722.96703 L 920.34598,722.96703 Q 921.71184,722.96703 923.07771,723.20703 Q 924.44358,723.44703 925.53627,724.00703 Q 926.62897,724.48703 927.26637,725.28703 Q 927.99483,726.00703 927.99483,726.96703 L 927.99483,733.92703 Z"
|
||||
style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:medium;line-height:125%;font-family:Prototype;-inkscape-font-specification:Prototype;letter-spacing:0px;word-spacing:0px;fill:#ff6000;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
|
||||
id="path4398" />
|
||||
<path
|
||||
inkscape:connector-curvature="0"
|
||||
d="M 961.2594,723.76703 Q 961.2594,722.96703 962.17,722.96703 L 969.6367,722.96703 Q 970.5473,722.96703 970.5473,722.16703 L 970.5473,714.00704 Q 970.5473,713.20704 969.6367,713.20704 L 962.17,713.20704 Q 961.2594,713.20704 961.2594,712.40704 L 961.2594,702.40704 Q 961.2594,701.60704 960.3488,701.60704 L 951.0609,701.60704 Q 950.1503,701.60704 950.1503,702.40704 L 950.1503,712.40704 Q 950.1503,713.20704 949.2398,713.20704 L 944.4137,713.20704 Q 943.5031,713.20704 943.5031,714.00704 L 943.5031,722.16703 Q 943.5031,722.96703 944.4137,722.96703 L 949.2398,722.96703 Q 950.1503,722.96703 950.1503,723.76703 L 950.1503,748.72704 Q 950.1503,751.20704 952.4268,753.04704 Q 954.7032,754.88704 958.1634,754.88704 L 969.6367,754.88704 Q 970.5473,754.88704 970.5473,754.08704 L 970.5473,745.92704 Q 970.5473,745.20704 969.8188,745.12704 L 962.17,745.12704 Q 961.2594,745.12704 961.2594,744.32704 L 961.2594,723.76703 Z"
|
||||
style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:medium;line-height:125%;font-family:Prototype;-inkscape-font-specification:Prototype;letter-spacing:0px;word-spacing:0px;fill:#ff6000;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
|
||||
id="path4400" />
|
||||
</g>
|
||||
</g>
|
||||
<g
|
||||
id="g4436"
|
||||
transform="translate(32.551166,70.704061)">
|
||||
<rect
|
||||
ry="27.086214"
|
||||
rx="27.086214"
|
||||
y="-454.30685"
|
||||
x="-564.0376"
|
||||
height="444.24011"
|
||||
width="444.24011"
|
||||
id="rect4434"
|
||||
style="color:#000000;display:inline;overflow:visible;visibility:visible;opacity:1;fill:#ffffff;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:4.51436901;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;marker:none;enable-background:accumulate" />
|
||||
<g
|
||||
transform="matrix(2.5876865,0,0,2.5876865,-1303.5046,-2852.2513)"
|
||||
inkscape:export-ydpi="177.41391"
|
||||
inkscape:export-xdpi="177.41391"
|
||||
id="g3489">
|
||||
<g
|
||||
inkscape:export-ydpi="64.777489"
|
||||
inkscape:export-xdpi="64.777489"
|
||||
id="g3491"
|
||||
transform="matrix(0.96592582,-0.25881904,0.25881904,0.96592582,-102.04982,555.17501)">
|
||||
<g
|
||||
id="g3493"
|
||||
style="fill:#767575;fill-opacity:1;stroke:none"
|
||||
transform="matrix(0.5969555,0.15995374,-0.15995374,0.5969555,187.18453,347.03367)">
|
||||
<path
|
||||
inkscape:connector-curvature="0"
|
||||
id="path3495"
|
||||
d="M 403.66024,282.97714 L 350.98876,230.30666 C 305.52073,201.13204 216.95499,216.43139 216.95499,216.43139 L 350.81024,334.95314 Z"
|
||||
style="fill:#767575;fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
|
||||
sodipodi:nodetypes="ccccc" />
|
||||
<path
|
||||
inkscape:connector-curvature="0"
|
||||
id="path3497"
|
||||
d="M 308.8794,376.0474 L 308.8794,308.0664 L 344.9544,339.9714 Z"
|
||||
style="fill:#767575;fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1" />
|
||||
<path
|
||||
inkscape:connector-curvature="0"
|
||||
id="path3499"
|
||||
d="M 403.66024,274.97714 L 354.42124,225.73914 L 403.66024,176.49414 Z"
|
||||
style="fill:#767575;fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1" />
|
||||
<path
|
||||
inkscape:connector-curvature="0"
|
||||
id="path3501"
|
||||
d="M 440.99424,208.82914 L 408.66024,176.49414 L 408.66024,208.82914 Z"
|
||||
style="fill:#767575;fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1" />
|
||||
</g>
|
||||
<g
|
||||
transform="matrix(0.5969555,0.15995374,-0.15995374,0.5969555,186.71819,346.56976)"
|
||||
style="stroke:none"
|
||||
id="g3503">
|
||||
<path
|
||||
sodipodi:nodetypes="ccccc"
|
||||
style="fill:#47adc5;fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
|
||||
d="M 403.66024,282.97714 L 350.98876,230.30666 C 305.52073,201.13204 216.95499,216.43139 216.95499,216.43139 L 350.81024,334.95314 Z"
|
||||
id="path3505"
|
||||
inkscape:connector-curvature="0" />
|
||||
<path
|
||||
style="fill:#47adc5;fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
|
||||
d="M 308.8794,376.0474 L 308.8794,308.0664 L 344.9544,339.9714 Z"
|
||||
id="path3507"
|
||||
inkscape:connector-curvature="0" />
|
||||
<path
|
||||
style="fill:#feb103;fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
|
||||
d="M 403.66024,274.97714 L 354.42124,225.73914 L 403.66024,176.49414 Z"
|
||||
id="path3509"
|
||||
inkscape:connector-curvature="0" />
|
||||
<path
|
||||
style="fill:#feb103;fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
|
||||
d="M 440.99424,208.82914 L 408.66024,176.49414 L 408.66024,208.82914 Z"
|
||||
id="path3511"
|
||||
inkscape:connector-curvature="0" />
|
||||
</g>
|
||||
</g>
|
||||
</g>
|
||||
</g>
|
||||
</g>
|
||||
</svg>
|
After Width: | Height: | Size: 94 KiB |
Before Width: | Height: | Size: 15 KiB After Width: | Height: | Size: 15 KiB |
Before Width: | Height: | Size: 252 KiB After Width: | Height: | Size: 252 KiB |
Before Width: | Height: | Size: 13 KiB After Width: | Height: | Size: 13 KiB |
Before Width: | Height: | Size: 14 KiB After Width: | Height: | Size: 14 KiB |
Before Width: | Height: | Size: 14 KiB After Width: | Height: | Size: 14 KiB |
Before Width: | Height: | Size: 11 KiB After Width: | Height: | Size: 11 KiB |
Before Width: | Height: | Size: 9.3 KiB After Width: | Height: | Size: 9.3 KiB |
Before Width: | Height: | Size: 14 KiB After Width: | Height: | Size: 14 KiB |
Before Width: | Height: | Size: 14 KiB After Width: | Height: | Size: 14 KiB |