Merge branch 'bzr/master'

This commit is contained in:
Tomasz Włostowski 2015-01-19 19:35:47 +01:00
commit 78442a8b06
417 changed files with 26731 additions and 10440 deletions

2
.gitconfig Normal file
View File

@ -0,0 +1,2 @@
[core]
excludesfile .bzrignore

View File

@ -2,7 +2,7 @@
* This program source code file is part of KiCad, a free EDA CAD application.
*
* Copyright (C) 2014 Mario Luzeiro <mrluzeiro@gmail.com>
* Copyright (C) 1992-2014 KiCad Developers, see AUTHORS.txt for contributors.
* Copyright (C) 1992-2015 KiCad Developers, see AUTHORS.txt for contributors.
*
* This program is free software; you can redistribute it and/or
* modify it under the terms of the GNU General Public License
@ -28,9 +28,13 @@
#include "vrml_aux.h"
char SkipGetChar( FILE* File )
static int SkipGetChar ( FILE* File );
static int SkipGetChar( FILE* File )
{
char c;
int c;
bool re_parse;
if( ( c = fgetc( File ) ) == EOF )
@ -92,7 +96,7 @@ char SkipGetChar( FILE* File )
char* GetNextTag( FILE* File, char* tag )
{
char c = SkipGetChar( File );
int c = SkipGetChar( File );
if( c == EOF )
{
@ -136,7 +140,7 @@ char* GetNextTag( FILE* File, char* tag )
int read_NotImplemented( FILE* File, char closeChar )
{
char c;
int c;
// DBG( printf( "look for %c\n", closeChar) );
while( ( c = fgetc( File ) ) != EOF )
@ -189,7 +193,7 @@ int parseVertex( FILE* File, glm::vec3& dst_vertex )
dst_vertex.y = b;
dst_vertex.z = c;
char s = SkipGetChar( File );
int s = SkipGetChar( File );
if( s != EOF )
{

View File

@ -49,7 +49,6 @@
#include <wx/glcanvas.h>
int read_NotImplemented( FILE* File, char closeChar);
char SkipGetChar ( FILE* File );
int parseVertexList( FILE* File, std::vector< glm::vec3 > &dst_vector);
int parseVertex( FILE* File, glm::vec3 &dst_vertex );
int parseFloat( FILE* File, float *dst_float );

View File

@ -2,7 +2,7 @@
* This program source code file is part of KiCad, a free EDA CAD application.
*
* Copyright (C) 2014 Mario Luzeiro <mrluzeiro@gmail.com>
* Copyright (C) 1992-2014 KiCad Developers, see AUTHORS.txt for contributors.
* Copyright (C) 1992-2015 KiCad Developers, see AUTHORS.txt for contributors.
*
* This program is free software; you can redistribute it and/or
* modify it under the terms of the GNU General Public License
@ -93,7 +93,7 @@ void VRML1_MODEL_PARSER::Load( const wxString& aFilename, double aVrmlunits_to_3
while( GetNextTag( m_file, text ) )
{
if( ( text == NULL ) || ( *text == '}' ) || ( *text == ']' ) )
if( ( *text == '}' ) || ( *text == ']' ) )
{
continue;
}
@ -187,7 +187,7 @@ int VRML1_MODEL_PARSER::readMaterial()
while( GetNextTag( m_file, text ) )
{
if( ( text == NULL ) || ( *text == ']' ) )
if( *text == ']' )
{
continue;
}
@ -235,7 +235,7 @@ int VRML1_MODEL_PARSER::readCoordinate3()
while( GetNextTag( m_file, text ) )
{
if( ( text == NULL ) || ( *text == ']' ) )
if( *text == ']' )
{
continue;
}
@ -263,7 +263,7 @@ int VRML1_MODEL_PARSER::readIndexedFaceSet()
while( GetNextTag( m_file, text ) )
{
if( ( text == NULL ) || ( *text == ']' ) )
if( *text == ']' )
{
continue;
}

View File

@ -95,7 +95,7 @@ void VRML2_MODEL_PARSER::Load( const wxString& aFilename, double aVrmlunits_to_3
while( GetNextTag( m_file, text ) )
{
if( ( text == NULL ) || ( *text == '}' ) || ( *text == ']' ) )
if( ( *text == '}' ) || ( *text == ']' ) )
{
continue;
}
@ -140,7 +140,7 @@ int VRML2_MODEL_PARSER::read_Transform()
while( GetNextTag( m_file, text ) )
{
if( ( text == NULL ) || ( *text == ']' ) )
if( *text == ']' )
{
continue;
}
@ -259,7 +259,7 @@ int VRML2_MODEL_PARSER::read_DEF()
while( GetNextTag( m_file, text ) )
{
if( ( text == NULL ) || ( *text == ']' ) )
if( *text == ']' )
{
// DBG( printf( " skiping %c\n", *text) );
continue;
@ -316,7 +316,7 @@ int VRML2_MODEL_PARSER::read_Shape()
while( GetNextTag( m_file, text ) )
{
if( ( text == NULL ) || ( *text == ']' ) )
if( *text == ']' )
{
continue;
}
@ -363,7 +363,7 @@ int VRML2_MODEL_PARSER::read_Appearance()
while( GetNextTag( m_file, text ) )
{
if( ( text == NULL ) || ( *text == ']' ) )
if( *text == ']' )
{
continue;
}
@ -468,7 +468,7 @@ int VRML2_MODEL_PARSER::read_Material()
while( GetNextTag( m_file, text ) )
{
if( ( text == NULL ) || ( *text == ']' ) )
if( *text == ']' )
{
continue;
}
@ -561,7 +561,7 @@ int VRML2_MODEL_PARSER::read_IndexedFaceSet()
while( GetNextTag( m_file, text ) )
{
if( ( text == NULL ) || ( *text == ']' ) )
if( *text == ']' )
{
continue;
}
@ -744,7 +744,7 @@ int VRML2_MODEL_PARSER::read_Color()
while( GetNextTag( m_file, text ) )
{
if( ( text == NULL ) || ( *text == ']' ) )
if( *text == ']' )
{
continue;
}
@ -774,7 +774,7 @@ int VRML2_MODEL_PARSER::read_Normal()
while( GetNextTag( m_file, text ) )
{
if( ( text == NULL ) || ( *text == ']' ) )
if( *text == ']' )
{
continue;
}
@ -812,7 +812,7 @@ int VRML2_MODEL_PARSER::read_Coordinate()
while( GetNextTag( m_file, text ) )
{
if( ( text == NULL ) || ( *text == ']' ) )
if( *text == ']' )
{
continue;
}

View File

@ -36,6 +36,22 @@ option( KICAD_KEEPCASE
ON
)
# The footprint library wizard uses wxWebview, which needs a system webkit to be built
# The default build option in wxWidgets is to build wxWebview, but it could be not built
# if web kit devel tools are missing
# So this option disable use of wxWebview, if building wxWebview creates issues
# see:
# http://docs.wxwidgets.org/3.0/classwx_web_view.html
# * No issues on Windows.
# * needs webkitgtk-devel package installed on Linux, and wxWidgets rebuilt with this package.
# * Seems also OK on OSX.
# However the default option is on and has effect only if BUILD_GITHUB_PLUGIN is ON
# This option could be removed soon, if no serious issue happens on Linux
option( KICAD_USE_WEBKIT
"Use system web kit to build a web viewer in footprint library wizard to easily select github libraries (default ON)."
ON
)
option( USE_WX_GRAPHICS_CONTEXT
"Use wxGraphicsContext for rendering (default OFF). Warning, this is experimental" )
@ -100,7 +116,7 @@ LINK_DIRECTORIES( ${LINK_DIRECTORIES_PATH} )
if( UNIX )
set( KICAD_USER_CONFIG_DIR $ENV{HOME} CACHE PATH "Location of user specific KiCad config files" )
elseif( MINGW )
set( KICAD_USER_CONFIG_DIR $ENV{%APPDATA%} CACHE PATH "Location of user specific KiCad config files" )
set( KICAD_USER_CONFIG_DIR $ENV{APPDATA} CACHE PATH "Location of user specific KiCad config files" )
endif()
mark_as_advanced( KICAD_USER_CONFIG_DIR )
@ -226,8 +242,8 @@ if( CMAKE_COMPILER_IS_GNUCXX OR CMAKE_CXX_COMPILER_ID MATCHES "Clang" )
if( APPLE )
set( CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -D__ASSERTMACROS__ -mmacosx-version-min=10.5" )
set( CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -D__ASSERTMACROS__ -mmacosx-version-min=10.5" )
set( CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -D__ASSERTMACROS__" )
set( CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -D__ASSERTMACROS__" )
# Allows .dylib relocation in the future - needed by fixbundle
set( CMAKE_LD_FLAGS "${CMAKE_LD_FLAGS} -headerpad_max_install_names")
@ -240,6 +256,12 @@ if( CMAKE_COMPILER_IS_GNUCXX OR CMAKE_CXX_COMPILER_ID MATCHES "Clang" )
EXEC_PROGRAM( wx-config ARGS --cxx OUTPUT_VARIABLE CMAKE_CXX_COMPILER )
endif()
# There seems to be no consistent behavior when -mmacosx-min-version is
# not specified, so force user to set minimum OSX version to build for
if( NOT CMAKE_OSX_DEPLOYMENT_TARGET )
message( FATAL_ERROR "Please specify target OS X version using -DCMAKE_OSX_DEPLOYMENT_TARGET=10.x" )
endif()
endif()
endif( CMAKE_COMPILER_IS_GNUCXX OR CMAKE_CXX_COMPILER_ID MATCHES "Clang" )
@ -397,7 +419,14 @@ add_definitions( -DWX_COMPATIBILITY )
# See line 41 of CMakeModules/FindwxWidgets.cmake
set( wxWidgets_CONFIG_OPTIONS --static=no )
find_package( wxWidgets 3.0.0 COMPONENTS gl aui adv html core net base xml REQUIRED )
if( KICAD_USE_WEBKIT AND BUILD_GITHUB_PLUGIN )
set( webkitlib "webview" )
add_definitions( -DKICAD_USE_WEBKIT )
else()
set( webkitlib "" )
endif()
find_package( wxWidgets 3.0.0 COMPONENTS gl aui adv html core net base xml ${webkitlib} stc REQUIRED )
# Include wxWidgets macros.
include( ${wxWidgets_USE_FILE} )
@ -678,6 +707,9 @@ add_subdirectory( cvpcb )
add_subdirectory( eeschema )
add_subdirectory( gerbview )
add_subdirectory( lib_dxf )
if( KICAD_USE_WEBKIT )
add_subdirectory( webviewer )
endif()
add_subdirectory( pcbnew )
add_subdirectory( polygon )
add_subdirectory( pagelayout_editor )
@ -773,10 +805,6 @@ install( FILES INSTALL.txt
DESTINATION ${KICAD_DOCS}
COMPONENT resources )
install( FILES resources/freeroute.jnlp
DESTINATION ${KICAD_BIN}
COMPONENT resources )
###
# Install scripts
###

View File

@ -54,15 +54,15 @@ if( Bazaar_EXECUTABLE )
# Fetch the Bazaar executable version.
execute_process( COMMAND ${Bazaar_EXECUTABLE} --version
OUTPUT_VARIABLE bzr_version_output
OUTPUT_VARIABLE _bzr_version_output
ERROR_VARIABLE _bzr_version_error
RESULT_VARIABLE _bzr_version_result
OUTPUT_STRIP_TRAILING_WHITESPACE )
if( ${_bzr_version_result} EQUAL 0 )
set( Bazaar_FOUND TRUE )
string( REGEX REPLACE "^(.*\n)? \(bzr\) ([^\n]+).*"
"\\2" Bazaar_VERSION "${_bzr_version_output}" )
string( REGEX REPLACE "^[\n]*Bazaar \\(bzr\\) ([0-9.a-z]+).*"
"\\1" Bazaar_VERSION "${_bzr_version_output}" )
message( STATUS "Bazaar version control system version ${Bazaar_VERSION} found." )
endif( ${_bzr_version_result} EQUAL 0 )

View File

@ -165,7 +165,7 @@ if(WIN32 AND NOT CYGWIN)
find_library(LIB_EAY
NAMES
${LIB_EAY_NAMES}
${_OPENSLL_ROOT_HINTS_AND_PATHS}
${_OPENSSL_ROOT_HINTS_AND_PATHS}
PATH_SUFFIXES
"lib"
"lib/MinGW"
@ -177,7 +177,7 @@ if(WIN32 AND NOT CYGWIN)
find_library(SSL_EAY
NAMES
${SSL_EAY_NAMES}
${_OPENSLL_ROOT_HINTS_AND_PATHS}
${_OPENSSL_ROOT_HINTS_AND_PATHS}
PATH_SUFFIXES
"lib"
"lib/MinGW"

View File

@ -330,7 +330,7 @@ if(wxWidgets_FIND_STYLE STREQUAL "win32")
# Find wxWidgets multilib libraries.
foreach(LIB core adv aui html media xrc dbgrid gl qa richtext
stc ribbon propgrid)
webview stc ribbon propgrid)
find_library(WX_${LIB}${_DBG}
NAMES
wxmsw${_UNV}31${_UCD}${_DBG}_${LIB}
@ -374,7 +374,7 @@ if(wxWidgets_FIND_STYLE STREQUAL "win32")
# Clear wxWidgets multilib libraries.
foreach(LIB core adv aui html media xrc dbgrid gl qa richtext
stc ribbon propgrid)
webview stc ribbon propgrid)
wx_clear_lib(WX_${LIB}${_DBG})
endforeach(LIB)
endmacro(wx_clear_all_libs)
@ -448,6 +448,7 @@ if(wxWidgets_FIND_STYLE STREQUAL "win32")
D:/
$ENV{ProgramFiles}
PATH_SUFFIXES
wxWidgets-3.0.2
wxWidgets-3.0.1
wxWidgets-3.0.0
wxWidgets-2.9.5

View File

@ -140,11 +140,8 @@ endif()
if( APPLE )
# I set this to being compatible with wxWidgets
# wxWidgets still using libstdc++ (gcc), meanwhile OSX
# has switched to libc++ (llvm) by default
set( BOOST_CXXFLAGS "cxxflags=-mmacosx-version-min=10.5 -fno-common" )
set( BOOST_LINKFLAGS "linkflags=-mmacosx-version-min=10.5 -fno-common" )
set( BOOST_CXXFLAGS "cxxflags=-mmacosx-version-min=${CMAKE_OSX_DEPLOYMENT_TARGET} -fno-common" )
set( BOOST_LINKFLAGS "linkflags=-mmacosx-version-min=${CMAKE_OSX_DEPLOYMENT_TARGET} -fno-common" )
set( BOOST_TOOLSET "toolset=darwin" )
if( CMAKE_CXX_COMPILER_ID MATCHES "Clang" )

View File

@ -1,7 +1,7 @@
Compiling KiCad from Source
===========================
KiCad Documentation Team
Last revised on 12-mars-2012 by jp Charras
Last revised on 2014-december-24 by JP Charras
Introduction
------------
@ -32,7 +32,7 @@ KiCad from source.
* CMake - Cross-platform make
* GLUT - The OpenGL Utility Library
* GLEW
* wxGTK or wxWidgets - The wxWidgets GUI toolkit with GTK+ bindings
* wxWidgets - The wxWidgets GUI toolkit with GTK+ bindings version 3.0 or more
* libbz2 (dev)
* libcairo (dev)
@ -57,7 +57,7 @@ Compiler and basic development tools
Make sure g++, make and other tools are in your path.
If windows, then try running g++ and make from within your msys bash shell.
PLEASE NOTE: g++ 4.7.1 at least (possibly the 4.7.x series) is known to
PLEASE NOTE: g++ 4.7.1 and 4.7.2 are known to
miscompile pcbnew (it get zones wrong) with -O2; using -O1 is a suitable
workaround until they fix the compiler.
@ -68,7 +68,7 @@ WARNING:
see wxWidgets_patch_notes.txt for patches and issues in wxWidgets.
On Windows, download
http://sourceforge.net/projects/wxwindows/files/3.0.0/wxWidgets-3.0.0.zip/download
http://sourceforge.net/projects/wxwindows/files/3.0.2/wxWidgets-3.0.2.zip/download
or a newer version.
Do NOT use previous versions which all have annoying issues for KiCad.
Start msys so you have a bash shell.
@ -95,6 +95,10 @@ or more recent (Older versions have a print function which does not work).
Verify that wx-config is in your path by running it from a command prompt.
Linux users then go to next step.
Note also wxWidgets must be compiled with the wxWebView support.
This is the default when building wxWidgets, but only if the libwebkitgtk-dev is installed
before building wxWidgets (sudo apt-get install libwebkitgtk-dev)
Install CMake
-------------
On windows, download the installation binary for windows from cmake.org.
@ -167,9 +171,12 @@ Linux and windows users both then make two "out of source" build directories:
On either cmake command line shown below, you can optionally include
-DCMAKE_INSTALL_PREFIX=<finallInstallDir>
For instance on Linux: <finallInstallDir>=/usr/local/kicad or ~/kicad
On windows, run the following command:
cmake -G "MSYS Makefiles" -DCMAKE_BUILD_TYPE=Release -DwxWidgets_ROOT_DIR=<wxInstallDir> ../../
Avoid installing Kicad on C: disk, which is protected by Windows.
Use D: or E: ...
On linux, run instead the following command:
cmake -DCMAKE_BUILD_TYPE=Release ../../

View File

@ -100,9 +100,12 @@ USE_IMAGES_IN_MENUS (ON/OFF)
----------------------------
Default: OFF for OSX, ON for other platforms.
This option is used to enable or disable building KiCad with images in menu
This option is used to enable or disable building KiCad with images (icons) in menu
items. If this is not defined when CMake is used to create the build files,
images will be included in menu items on all platforms except OSX.
Note also, on Linux, some window managers do not show icons in menu, or
show them only if the current option is activated.
Therefore, even if you have icons in menus, they will be not always displayed
DOWNLOAD_DIR (PATH)
@ -138,6 +141,7 @@ Default: OFF
This option enables or disables building Python scripting support within KiCad.
Currently only Pcbnew is supported. This option requires SWIG and Python to be
installed on the system.
It allows using footprint wizards in footprint editor to create new footprints
KICAD_SCRIPTING_MODULES (ON/OFF)
@ -147,6 +151,8 @@ Default: OFF
This option enables or disables building KiCad Python modules that can be used
externally by Python. Currently only Pcbnew is supported. This option
requires SWIG and Python to be installed on the system.
This python module is used to edit board files (.kicad_pcb files) from a
python script, outside kicad.
KICAD_SCRIPTING_WXPYTHON (ON/OFF)
@ -156,6 +162,7 @@ Default: OFF
This option enables or disables building wxPython support into the KiCad
scripting support. Currently only Pcbnew has scripting support. This option requires
SWIG, Python, and wxPython to be installed on the system.
It allows execution of python scripts insided Pcbnew, during a session.
PYTHON_SITE_PACKAGE_PATH (PATH)
@ -169,11 +176,21 @@ different path, set this variable to the desired path.
BUILD_GITHUB_PLUGIN (ON/OFF)
----------------------------
Default: OFF
Default: ON
This option enables or disables building KiCad with a pcbnew plugin for loading
footprints from a GitHub repository.
KICAD_USE_WEBKIT (ON/OFF)
----------------------------
Default: ON (and OFF when BUILD_GITHUB_PLUGIN is OFF)
This option enables or disables building a web viewer used if the
footprint library table wizard to easily add footprints library entries
to this tables when libraries are on a GitHub repository.
This option need the full support of wxWebview/WebKit in wxWidgets, which is not
always the case on Linux.
KICAD_REPO_NAME (STRING)
------------------------

View File

@ -1,9 +1,9 @@
Compiling KiCad on Apple Mac OS X
=================================
Building on OSX is very similar to building on Linux. This document will provide
a complete walk-through on what to do but it will focus on OSX specific things.
See general documentation on non-OSX specific KiCad build switches, etc.
Building on OS X is very similar to building on Linux. This document will provide
a complete walk-through on what to do but it will focus on OS X specific things.
See general documentation on non OS X specific KiCad build switches, etc.
Prerequisites
@ -24,6 +24,7 @@ Mandatory library dependencies needed to compile KiCad:
OR
wxPython - A blending of the wxWidgets C++ class library with the Python
programming language
* SWIG - Interface compiler (only needed for scripting/wxPython builds)
Optional library dependencies, depends on used KiCad features
* OpenSSL - The Open Source toolkit for SSL/TLS
@ -31,7 +32,7 @@ Optional library dependencies, depends on used KiCad features
All tools (except XCode, of course) and all dependencies except wxWidgets/wxPython
can be compiled manually, but it is advised to install them using your favorite
package manager for OSX like MacPorts or Homebrew.
package manager for OS X like MacPorts or Homebrew.
Depending on the package manager the development packages of the library
dependencies may have to be installed (usually something like <pkg>-dev or
<pkg>-devel).
@ -44,7 +45,7 @@ automatically by KiCad build process.
IMPORTANT:
At the moment you *must not* use a wxWidgets/wxPython version installed by any
package manager.
KiCad on OSX needs overlay support and some other fixes, which are not yet
KiCad on OS X needs overlay support and some other fixes, which are not yet
contained in mainline wxWidgets/wxPython sources and builds.
If you don't use a patched wxWidgets you will get graphical artifacts (something
like a magnifying glass effect in the upper left corner of KiCad windows) or
@ -92,13 +93,15 @@ It is recommended to use the latest stable version. As of this writing this is
There is a little helper script osx_build_wx.sh in kicad/scripts that does all
the patching/configuring/compiling of wxWidgets or wxPython for you.
Go to your working root "KiCad" and run:
# kicad/scripts/osx_build_wx.sh wx-src wx-bin kicad "-j4"
Go to your working root "KiCad" and for example run:
# kicad/scripts/osx_build_wx.sh wx-src wx-bin kicad 10.7 "-j4"
First parameter is the source folder of wxWidgets/wxPython, second parameter the
target folder for compiled binaries, third parameter is the kicad folder, and
the last optional parameter are make options used during the build (in this
case for building with 4 jobs in parallel).
target folder for compiled binaries, and third parameter is the kicad folder.
The fourth parameter is the minimum OS X version you are building for (see the
section about compiling KiCad for further notes on minimum OS X version).
The last parameter is optional and contains make options used during the build
(in this example for building with 4 jobs in parallel).
The script will automatically detect if you are compiling wxWidgets or wxPython.
NOTE: All paths are assumed to be relative to the current directory, i.e., the
working root you are in.
@ -132,10 +135,8 @@ work:
--with-zlib=builtin \
--with-expat=builtin \
--without-liblzma \
--with-macosx-version-min=10.5 \
--with-macosx-version-min=<osxtarget> \
--enable-universal-binary=i386,x86_64 \
CPPFLAGS="-stdlib=libstdc++" \
LDFLAGS="-stdlib=libstdc++" \
CC=clang \
CXX=clang++
If you know what you are doing, you can of course use different settings.
@ -152,6 +153,7 @@ Now, configure KiCad without scripting support:
# cmake ../kicad \
-DCMAKE_C_COMPILER=clang \
-DCMAKE_CXX_COMPILER=clang++ \
-DCMAKE_OSX_DEPLOYMENT_TARGET=10.7 \
-DwxWidgets_CONFIG_EXECUTABLE=../wx-bin/bin/wx-config \
-DKICAD_SCRIPTING=OFF \
-DKICAD_SCRIPTING_MODULES=OFF \
@ -163,6 +165,7 @@ or, configure KiCad with scripting support:
# cmake ../kicad \
-DCMAKE_C_COMPILER=clang \
-DCMAKE_CXX_COMPILER=clang++ \
-DCMAKE_OSX_DEPLOYMENT_TARGET=10.7 \
-DwxWidgets_CONFIG_EXECUTABLE=../wx-bin/bin/wx-config \
-DPYTHON_EXECUTABLE=`which python` \
-DPYTHON_SITE_PACKAGE_PATH=`pwd`/../wx-bin/lib/python2.7/site-packages \
@ -177,6 +180,18 @@ been generated when compiling/installing wxPython. If you want to use a specific
python, you can also specify it via "-DPYTHON_EXECUTABLE" instead of using
`which python` (this one will just detect/use you default python).
The parameter "-DCMAKE_OSX_DEPLOYMENT_TARGET=10.x" is mandatory, you have to
specify the (minimum) OS X version you intend to build for. It is important that
at least wxWidgets/wxPython and KiCad (and boost, if you use an external build)
are built using the same or compatible settings. If not, you might get linker
errors, because this parameter influences which standard C++ library is being
used (libstdc++ vs. libc++).
If you don't know what to use and you are only building for your machine, just
set it to your current OS X version (e.g., MacPorts always builds this way).
Binaries built with a target OS X version <10.7 are known to show strange
behavior in some situations on recent systems (maybe because libc++ is standard
on everything >= 10.7 and problems arise due to mixing libstdc++/libc++).
Now KiCad is configured using default features/build-switches.
See Documentation/compiling/build-config.txt for a list of all CMake options
available when compiling KiCad.

View File

@ -646,7 +646,8 @@ WARN_LOGFILE =
# directories like "/usr/src/myproject". Separate the files or directories
# with spaces.
INPUT = stable-release-policy.md \
INPUT = coding-style-policy.md \
stable-release-policy.md \
road-map.md
# This tag can be used to specify the character encoding of the source files

View File

@ -0,0 +1,800 @@
# KiCad C++ Source Code Style Guide #
Latest Publishing: February 2013
First Published: September 2010
written by
Wayne Stambaugh \<<stambaughw@verizon.net>\>
and
Dick Hollenbeck \<<dick@softplc.com>\>
[TOC]
# 1. Introduction # {#intro}
The purpose of this document is to provide a reference guide for KiCad
developers about how source code should be styled and formatted in
KiCad. It is not a comprehensive programming guide because it does not
discuss many things such as software engineering strategies, source
directories, existing classes, or how to internationalize text. The goal
is to make all of the KiCad source conform to this guide.
## 1.1 Why Coding Style Matters ## {#why}
You may be thinking to yourself that using the style defined in this
document will not make you a good programmer and you would be correct.
Any given coding style is no substitute for experience. However, any
experienced coder will tell that the only thing worse than looking at
code that is not in your preferred coding style, is looking at twenty
different coding styles that are not your preferred coding style.
Consistency makes a) problems easier to spot, and b) looking at code for
long periods of time more tolerable.
## 1.2 Enforcement ## {#enforcement}
The KiCad coding police are not going to break down your door and beat
you with your keyboard if you don't follow these guidelines (although
there are those who would argue that they should). However, there are
some very sound reasons why you should follow them. If you are
contributing patches, you are much more likely to be taken seriously by
the primary developers if your patches are formatted correctly. Busy
developers don't have the time to go back and reformat your code. If you
have a desire to become a regular KiCad developer with commit access to
the development branch, you're not likely to get a glowing
recommendation by the lead developers if you will not follow these
guidelines. It is just good programming courtesy to follow this policy
because it is respectful of the investment already made by the existing
developers. The other KiCad developers will appreciate your effort.
**Warning**
**Do not modify this document without the consent of the project
leader. All changes to this document require approval.**
# 2. Naming Conventions # {#naming_conventions}
Before delving into anything as esoteric as indentation and formatting,
naming conventions need to be addressed. This section does not attempt
to define what names you use for your code. Rather, it defines the style
for naming. See the references section for links to some excellent
coding references. When defining multiple word names use the following
conventions for improved readability:
- Use underscores for all upper and all lower case variables to make
multiple word names more readable.
- Use camel case for mixed case variable names.
Avoid mixing camel case and underscores.
**Examples**
~~~~~~~~~~~~~{.cpp}
CamelCaseName // if camelcase, then no underscores
all_lower_case_name
ALL_UPPER_CASE_NAME
~~~~~~~~~~~~~
## 2.1 Class, Type Definitions, Name Space, and Macro Names ## {#definitions}
Class, typedef, enum, name space, and macro names should be comprised of
all capital letters.
**Examples**
~~~~~~~~~~~~~{.cpp}
class SIMPLE
#define LONG_MACRO_WITH_UNDERSCORES
typedef boost::ptr_vector<PIN> PIN_LIST;
enum KICAD_T {...};
~~~~~~~~~~~~~
## 2.2 Local, Private and Automatic Variables ## {#local_variables}
The first character of automatic, static local, and private variable
names should be lower case. This indicates that the variable will not be
“visible” outside of the function, file, or class where they are
defined, respectively. The limited visibility is being acknowledged with
the lowercase starting letter, where lowercase is considered to be less
boisterous than uppercase.
**Examples**
~~~~~~~~~~~~~{.cpp}
int i;
double aPrivateVariable;
static char* static_variable = NULL;
~~~~~~~~~~~~~
## 2.3 Public and Global Variables ## {#global_variables}
The first character of public and global variable names are to be
uppercase. This indicates that the variable is visible outside the class
or file in which it was defined. (An exception is the use of prefix `g_`
which is also sometimes used to indicate a global variable.)
**Example**
~~~~~~~~~~~~~{.cpp}
char* GlobalVariable;
~~~~~~~~~~~~~
## 2.4 Local, Private and Static Functions ## {#functions}
The first character of local, private, and static functions should be
lower case. This indicates that the function is not visible outside the
class or file where it is defined.
**Example**
~~~~~~~~~~~~~{.cpp}
bool isModified();
static int buildList( int* list );
~~~~~~~~~~~~~
## 2.5 Function Arguments ## {#function_arguments}
Function arguments are prefixed with an 'a' to indicate these are
arguments to a function. The 'a' stands for “argument”, and it also
enables clever and concise Doxygen comments.
**Example**
~~~~~~~~~~~~~{.cpp}
/*/** */*
* Function SetFoo
* takes aFoo and copies it into this instance.
*/
void SetFoo( int aFoo );
~~~~~~~~~~~~~
Notice how the reader can say “a Foo” to himself when reading this.
## 2.6 Pointers ## {#pointers}
It is not desired to identify a pointer by building a 'p' into the
variable name. The pointer aspect of the variable pertains to type, not
purpose.
**Example**
~~~~~~~~~~~~~{.cpp}
MODULE* module;
~~~~~~~~~~~~~
The purpose of the variable is that it represents a MODULE. Something
like `p_module` would only make that harder to discern.
## 2.7 Accessing Member Variables and Member Functions ## {#accessing_members}
We do not use “`this->`” to access either member variables or member
functions from within the containing class. We let C++ perform this for
us.
# 3. Commenting # {#commenting}
Comments in KiCad typically fall into two categories: in line code
comments and Doxygen comments. In line comments have no set formatting
rules other than they should have the same indent level as the code if
they do not follow a statement. In line comments that follow statements
should not exceed 99 columns unless absolutely necessary. The prevents
word wrapping in an editor when the viewable columns is set to 100. In
line comments can use either the C++ or the C commenting style, but C++
comments are preferred for single line comments or comments consisting
of only a few lines.
## 3.1 Blank Lines Above Comments ## {#blank_lines_above_comments}
If a comment is the first thing on a line, then that comment should have
one or more blank lines above them. One blank line is preferred.
## 3.2 Doxygen ## {#doxygen}
Doxygen is a C++ source code documenting tool used by the project. Descriptive
*.html files can be generated from the source code by installing Doxygen and
building the target named **doxygen-docs**.
$ cd <kicad_build_base>
$ make doxygen-docs
The \*.html files will be placed into
\<kicad\_project\_base\>/Documentation/doxygen/html/
Doxygen comments are used to build developer documentation from the
source code. They should normally be only placed in header files and not
in \*.cpp files. This eliminates the obligation to keep two comments in
agreement with each other. is if the class, function, or enum, etc. is
only defined in a \*.cpp source file and not present in any header file,
in which case the Doxygen comments should go into the \*.cpp source file.
Again, avoid duplicating the Doxygen comments in both the header and
\*.cpp source files.
KiCad uses the JAVADOC comment style defined in the [“Documenting the
code”][doccode] section of the Doxygen [manual][manual]. Don't forget
to use the special Doxygen tags: bug, todo, deprecated, etc., so other
developers can quickly get useful information about your code. It is
good practice to actually generate the Doxygen \*.html files by
building target doxygen-docs, and then to review the quality of your
Doxygen comments with a web browser before submitting a patch.
[doccode]: http://www.stack.nl/~dimitri/doxygen/manual/docblocks.html
[manual]: http://www.stack.nl/~dimitri/doxygen/manual.html
### 3.2.1 Function Comments ### {#function_comments}
These go into a header file, unless the function is a private (i.e.
static) function known only to a \*.cpp file. The format of a function
comment is chosen to serve a dual purpose role: delineation of the
function declaration within the source code and to create a consistent
leading sentence in the doxygen html output. The chosen format is
“Function \<name\>” as shown in the example below.
**Example**
~~~~~~~~~~~~~{.cpp}
/*/** */*
* Function Print
* formats and writes text to the output stream.
* @param nestLevel is the multiple of spaces to precede the output with.
* @param fmt is a printf() style format string.
* @param ... is a variable list of parameters that will get blended into
* the output under control of the format string.
* @return int - the number of characters output.
* @throw IO_ERROR, if there is a problem outputting, such asisk.
*/
int PRINTF_FUNC Print( int nestLevel,
const char* fmt, ... ) throw( IO_ERROR );
~~~~~~~~~~~~~
The “Function \<name\>” text goes on the 2nd line of the comment. The
\@return keyword if present, should show the type of the return value
followed by a hiphen. The \@param keyword names a function parameter
and the text following should flow like a normal English sentence.
### 3.2.2 Class Comments ### {#class_comments}
A class comment describes a class declaration by giving the purpose and
use of the class. Its format is similar to a function comment. Doxygen
can use the html \<p\> (paragraph designation) to begin a new paragraph
in its output. So if the text of the comment is large, break it put into
multiple paragraphs.
**Example**
~~~~~~~~~~~~~{.cpp}
/*/** */*
* Class OUTPUTFORMATTER
* is an important interface (abstract) class used to output UTF8 text in
* a convenient way. The primary interface is "printf() - like" but
* with support for indentation control. The destination of the 8 bit
* wide text is up to the implementer.
* <p>
* The implementer only has to implement the write() function, but can
* also optionally re-implement GetQuoteChar().
* <p>
* If you want to output a wxString, then use CONV_TO_UTF8() on it
* before passing it as an argument to Print().
* <p>
* Since this is an abstract interface, only classes derived from
* this one may actually be used.
*/
class OUTPUTFORMATTER
{
~~~~~~~~~~~~~
# 4. Formatting # {#formatting}
This section defines the formatting style used in the KiCad source.
## 4.1 Indentation ## {#indentation}
The indentation level for the KiCad source code is defined as four
spaces. Please do not use tabs.
### 4.1.1 Defines ### {#defines}
There should be only one space after a \#define statement.
### 4.1.2 Column Alignment ### {#column_alignment}
Please try to align multiple consecutive similar lines into consistent
columns when possible, such as \#define lines which can be thought of as
containing 4 columns: \#define, symbol, value, and comment. Notice how
all 4 columns are aligned in the example below.
**Example**
~~~~~~~~~~~~~{.cpp}
#define LN_RED 12 // my favorite
#define LN_GREEN 13 // eco friendly
~~~~~~~~~~~~~
Another common case is the declaration of automatic variables. These are
preferably shown in columns of type and variable name.
## 4.2 Blank Lines ## {#blank_lines}
### 4.2.1 Function Declarations ### {#function_declarations}
There should be 1 blank line above a function declaration in a class
file if that function declaration is presented with a Javadoc comment.
This is consist with the statement above about blank lines above
comments.
### 4.2.2 Function Definitions ### {#function_definitions}
Function definitions in *.cpp files will not typically be accompanied by
any comment, since those are normally only in the header file. It is
desirable to set off the function definition within the *.cpp file by
leaving two blank lines above the function definition.
### 4.2.3 If Statements ### {#if_statements}
There should be one blank line above if statements.
## 4.3 Line Length ### {#line_length}
The maximum line width is 99 columns. An exception to this is a long
quoted string such as the internationalized text required to satisfy
MSVC++, described below.
## 4.4 Strings ## {#strings}
The KiCad project team no longer supports compiling with Microsoft
Visual C++. When you need to break long strings into smaller substrings,
please use the C99 compliant method for improved readability. Using
any of previously accepted methods defined below for breaking
long internationalized strings will no longer be accepted.
**Examples**
~~~~~~~~~~~~~{.cpp}
// This works with C99 compliant compilers is the **only** accepted method:
wxChar* foo = _( “this is a long string broken ”
“into pieces for readability.” );
// This works with MSVC, breaks POEdit, and is **not** acceptable:
wxChar* foo = _( “this is a long string broken ”
L“into pieces for readability” );
// This works with MSVC, is ugly, and is **not** accepted:
wxChar* foo = _( “this is a long string \
broken into pieces for readability” );
~~~~~~~~~~~~~
A second acceptable solution is to simply put the text all on one
line, even if it exceeds the 99 character line length limit. However,
the preferred method is to break strings within the 99 character limit
whenever possible to prevent wrapping.
## 4.5 Trailing Whitespace ## {#trailing_whitespace}
Many programming editors conveniently indent your code for you. Some of
them do it rather poorly and leave trailing whitespace. Thankfully, most
editors come with a remove trailing whitespace macro or at least a
setting to make trailing whitespace visible so you can see it and
manually remove it. Trailing whitespace is known to break some text
parsing tools. It also leads to unnecessary diffs in the version control
system. Please remove trailing whitespace.
## 4.6 Multiple Statements per Line ## {#multiple_statements_per_line}
It is generally preferred that each statement be placed on its own line.
This is especially true for statements without keywords.
**Example**
~~~~~~~~~~~~~{.cpp}
x=1; y=2; z=3; // Bad, should be on separate lines.
~~~~~~~~~~~~~
## 4.7 Braces ## {#braces}
Braces should be placed on the line proceeding the keyword and indented
to the same level. It is not necessary to use braces if there is only a
single line statement after the keyword. In the case of if..else
if..else, indent all to the same level.
**Example**
~~~~~~~~~~~~~{.cpp}
void function()
{
if( foo )
{
statement1;
statement2;
}
else if( bar )
{
statement3;
statement4;
}
else
statement5;
}
~~~~~~~~~~~~~
## 4.8 Parenthesis ## {#parenthesis}
Parenthesis should be placed immediately after function names and
keywords. Spaces should be placed after the opening parenthesis, before
the closing parenthesis, and between the comma and the next argument in
functions. No space is needed if a function has no arguments.
**Example**
~~~~~~~~~~~~~{.cpp}
void Function( int aArg1, int aArg2 )
{
while( busy )
{
if( a || b || c )
doSomething();
else
doSomethingElse();
}
}
~~~~~~~~~~~~~
## 4.9 Switch Formatting ## {#switch}
The case statement is to be indented to the same level as the switch.
**Example**
~~~~~~~~~~~~~{.cpp}
switch( foo )
{
case 1:
doOne();
break;
case 2:
doTwo();
// Fall through.
default:
doDefault();
}
~~~~~~~~~~~~~
# 5. License Statement # {#license_statement}
There is a the file copyright.h which you can copy into the top of
your new source files and edit the \<author\> field. KiCad depends on
the copyright enforcement capabilities of copyright law, and this
means that source files must be copyrighted and not be released into
the public domain. Each source file has one or more owners.
# 6. Header Files # {#header_files}
Project \*.h source files should:
- contain a license statement
- contain a nested include \#ifndef
- be fully self standing and not depend on other headers that are not
included within it.
The license statement was described above.
## 6.1 Nested Include #ifndef ## {#nested_include}
Each header file should include an \#ifndef which is commonly used to
prevent compiler errors in the case where the header file is seen
multiple times in the code stream presented to the compiler. Just
after the license statement, at the top of the file there should be
lines similar to these (but with a filename specific token other than
`RICHIO_H_`):
~~~~~~~~~~~~~{.cpp}
#ifndef RICHIO_H_
#define RICHIO_H_
~~~~~~~~~~~~~
And at the very bottom of the header file, use a line like this one:
~~~~~~~~~~~~~{.cpp}
#endif // RICHIO_H_
~~~~~~~~~~~~~
The \#ifndef wrapper begins after the license statement, and ends at
the very bottom of the file. It is important that it wrap any nested
\#include statements, so that the compiler can skip them if the
\#ifndef evaluates to false, which will reduce compilation time.
## 6.2 Headers Without Unsatisfied Dependencies ## {#header_depends}
Any header file should include other headers that it depends on. (Note:
KiCad is not at this point now, but this section is a goal of the
project.)
It should be possible to run the compiler on any header file within the
project, and with proper include paths being passed to the compiler, the
header file should compile without error.
**Example**
$ cd /svn/kicad/testing.checkout/include
$ g++ wx-config --cxxflags -I . xnode.h -o /tmp/junk
Such structuring of the header files removes the need within a client
\*.cpp file to include some project header file before some other project
header file. (A client \*.cpp file is one that intends to **use, not
implement,** the public API exposed within the header file.)
Client code should not have to piece together things that a header file
wishes to expose. The exposing header file should be viewed as a fully
sufficient **ticket to use** the public API of that header file.
This is not saying anything about how much to expose, only that that
which is exposed needs to be fully usable merely by including the header
file that exposes it, with no additional includes.
For situations where there is a class header file and an
implementation \*.cpp file, it is desirable to hide as much of the
private implementation as is practical and any header file that is not
needed as part of the public API can and should be included only in
the implementation \*.cpp file. However, the number one concern of
this section is that client (using) code can use the public API which
is exposed in the header file, merely by including that one header
file.
# 7. I Wrote X Lines of Code Before I Read This Document # {#x_lines}
It's OK. We all make mistakes. Fortunately, KiCad provides a
configuration file for the code beautifier uncrustify. Uncrustify won't
fix your naming problems but it does a pretty decent job of formatting
your source code. There are a few places where uncrustify makes some
less than ideal indentation choices. It struggles with the string
declaration macros wxT(“”) and \_(“”) and functions used as arguments to
other functions. After you uncrustify your source code, please review the
indentation for any glaring errors and manually fix them. See the
uncrustify [website][uncrustify] for more information.
[uncrustify]: http://uncrustify.sourceforge.net/
# 8. Show Me an Example # {#show_me_an_example}
Nothing drives the point home like an example. The source file richio.h
below was taken directly from the KiCad source.
~~~~~~~~~~~~~{.cpp}
/*
* This program source code file is part of KICAD, a free EDA CAD application.
*
* Copyright (C) 2007-2010 SoftPLC Corporation, Dick Hollenbeck <dick@softplc.com>
* Copyright (C) 2007 KiCad Developers, see change_log.txt for contributors.
*
* This program is free software; you can redistribute it and/or
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with this program; if not, you may find one here:
* http://www.gnu.org/licenses/old-licenses/gpl-2.0.html
* or you may search the http://www.gnu.org website for the version 2 license,
* or you may write to the Free Software Foundation, Inc.,
* 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA
*/
#ifndef RICHIO_H_
#define RICHIO_H_
// This file defines 3 classes useful for working with DSN text files and is named
// "richio" after its author, Richard Hollenbeck, aka Dick Hollenbeck.
#include <string>
#include <vector>
// I really did not want to be dependent on wxWidgets in richio
// but the errorText needs to be wide char so wxString rules.
#include <wx/wx.h>
#include <cstdio> // FILE
/*/** */*
* Struct IOError
* is a class used to hold an error message and may be used to throw exceptions
* containing meaningful error messages.
*/
struct IOError
{
wxString errorText;
IOError( const wxChar* aMsg ) :
errorText( aMsg )
{
}
IOError( const wxString& aMsg ) :
errorText( aMsg )
{
}
};
/*/** */*
* Class LINE_READER
* reads single lines of text into its buffer and increments a line number counter.
* It throws an exception if a line is too long.
*/
class LINE_READER
{
protected:
FILE* fp;
int lineNum;
unsigned maxLineLength;
unsigned length;
char* line;
unsigned capacity;
public:
/*/** */*
* Constructor LINE_READER
* takes an open FILE and the size of the desired line buffer.
* @param aFile An open file in "ascii" mode, not binary mode.
* @param aMaxLineLength The number of bytes to use in the line buffer.
*/
LINE_READER( FILE* aFile, unsigned aMaxLineLength );
~LINE_READER()
{
delete[] line;
}
/*
int CharAt( int aNdx )
{
if( (unsigned) aNdx < capacity )
return (char) (unsigned char) line[aNdx];
return -1;
}
*/
/*/** */*
* Function ReadLine
* reads a line of text into the buffer and increments the line number
* counter. If the line is larger than the buffer size, then an exception
* is thrown.
* @return int - The number of bytes read, 0 at end of file.
* @throw IOError only when a line is too long.
*/
int ReadLine() throw (IOError);
operator char* ()
{
return line;
}
int LineNumber()
{
return lineNum;
}
unsigned Length()
{
return length;
}
};
/*/** */*
* Class OUTPUTFORMATTER
* is an interface (abstract class) used to output ASCII text in a convenient
* way. The primary interface is printf() like but with support for indentation
* control. The destination of the 8 bit wide text is up to the implementer.
* If you want to output a wxString, then use CONV_TO_UTF8() on it before passing
* it as an argument to Print().
* <p>
* Since this is an abstract interface, only classes derived from this one
* will be the implementations.
*/
class OUTPUTFORMATTER
{
#if defined(__GNUG__) // The GNU C++ compiler defines this
// When used on a C++ function, we must account for the "this" pointer,
// so increase the STRING-INDEX and FIRST-TO_CHECK by one.
// See http://docs.freebsd.org/info/gcc/gcc.info.Function_Attributes.html
// Then to get format checking during the compile, compile with -Wall or -Wformat
#define PRINTF_FUNC __attribute__ ((format (printf, 3, 4)))
#else
#define PRINTF_FUNC // nothing
#endif
public:
/*/** */*
* Function Print
* formats and writes text to the output stream.
*
* @param nestLevel The multiple of spaces to preceed the output with.
* @param fmt A printf() style format string.
* @param ... a variable list of parameters that will get blended into
* the output under control of the format string.
* @return int - the number of characters output.
* @throw IOError, if there is a problem outputting, such as a full disk.
*/
virtual int PRINTF_FUNC Print( int nestLevel, const char* fmt, ... ) throw( IOError ) = 0;
/*/** */*
* Function GetQuoteChar
* performs quote character need determination.
* It returns the quote character as a single character string for a given
* input wrapee string. If the wrappee does not need to be quoted,
* the return value is "" (the null string), such as when there are no
* delimiters in the input wrapee string. If you want the quote_char
* to be assuredly not "", then pass in "(" as the wrappee.
* <p>
* Implementations are free to override the default behavior, which is to
* call the static function of the same name.
* @param wrapee A string that might need wrapping on each end.
* @return const char* - the quote_char as a single character string, or ""
* if the wrapee does not need to be wrapped.
*/
virtual const char* GetQuoteChar( const char* wrapee ) = 0;
virtual ~OUTPUTFORMATTER() {}
/*/** */*
* Function GetQuoteChar
* performs quote character need determination according to the Specctra DSN
* specification.
* @param wrapee A string that might need wrapping on each end.
* @param quote_char A single character C string which provides the current
* quote character, should it be needed by the wrapee.
*
* @return const char* - the quote_char as a single character string, or ""
* if the wrapee does not need to be wrapped.
*/
static const char* GetQuoteChar( const char* wrapee, const char* quote_char );
};
/*/** */*
* Class STRINGFORMATTER
* implements OUTPUTFORMATTER to a memory buffer. After Print()ing the
* string is available through GetString()
*/
class STRINGFORMATTER : public OUTPUTFORMATTER
{
std::vector<char> buffer;
std::string mystring;
int sprint( const char* fmt, ... );
int vprint( const char* fmt, va_list ap );
public:
/*/** */*
* Constructor STRINGFORMATTER
* reserves space in the buffer
*/
STRINGFORMATTER( int aReserve = 300 ) :
buffer( aReserve, '\0' )
{
}
/*/** */*
* Function Clear
* clears the buffer and empties the internal string.
*/
void Clear()
{
mystring.clear();
}
/*/** */*
* Function StripUseless
* removes whitespace, '(', and ')' from the mystring.
*/
void StripUseless();
std::string GetString()
{
return mystring;
}
//-----<OUTPUTFORMATTER>------------------------------------------------
int PRINTF_FUNC Print( int nestLevel, const char* fmt, ... ) throw( IOError );
const char* GetQuoteChar( const char* wrapee );
//-----</OUTPUTFORMATTER>-----------------------------------------------
};
#endif // RICHIO_H_
~~~~~~~~~~~~~
# 9. Resources # {#resources}
There are plenty of excellent resources on the Internet on C++ coding
styles and coding do's and don'ts. Here are a few useful ones. In most
cases, the coding styles do not follow the KiCad coding style but there
is plenty of other good information here. Besides, most of them have
some great humor in them enjoyable to read. Who knows, you might even
learn something new.
- [C++ Coding Standard][cppstandard]
- [Linux Kernel Coding Style][kernel]
- [C++ Operator Overloading Guidelines][overloading]
- [Wikipedia's Programming Style Page][style]
[cppstandard]:http://www.possibility.com/Cpp/CppCodingStandard.html
[kernel]:http://git.kernel.org/cgit/linux/kernel/git/stable/linux-stable.git/tree/Documentation/CodingStyle
[overloading]:http://www.cs.caltech.edu/courses/cs11/material/cpp/donnie/cpp-ops.html
[style]:http://en.wikipedia.org/wiki/Programming_style

View File

@ -536,7 +536,7 @@ Add features such as matched length and microwave tools to the P&S router.
- None
**Status:**
- No progress.
- Match trace length work in progress.
## Layer Improvements ## {#pcb_layers}
**Goal:**
@ -553,7 +553,7 @@ Increase the number of usable technical and user defined layers in Pcbnew.
- None
**Status:**
- No progress.
- Work complete on 32 copper and 32 technical layers is complete.
## Pin and Part Swapping ## {#pcb_drc}
**Goal:**
@ -620,6 +620,7 @@ Create additional DRC tests for improved error checking.
- Remove floating point code from clearance calculations to prevent rounding
errors.
- Add checks for component, silk screen, and mask clearances.
- Add checks for keep out zones.
- Remove DRC related limitations such as no arc or text on copper layers.
- Add option for saving and loading DRC options.
@ -655,6 +656,23 @@ GAL rendering.
**Progress:**
- Initial discussion.
## Keepout Zones. ## {#keepout_zones}
**Goal:**
Add support for keepout zones on boards and footprints.
**Task:**
- Add keepout support to zone classes.
- Add keepout zone support to board editor.
- Add keepout zone support to library editor.
**Dependencies:**
- [DRC Improvements.](#drc_improvements)
**Progress:**
- Planning
## Gerber File Attributes ## {#gerber_attributes}
**Goal:**
@ -671,7 +689,7 @@ document for more information.
- None
**Progress:**
- Under investigation.
- Done both in Pcbnew and Gerbview.
## Net Highlighting ## {#pcb_net_highlight}
**Goal:**

View File

@ -645,7 +645,8 @@ WARN_LOGFILE =
# directories like "/usr/src/myproject". Separate the files or directories
# with spaces.
INPUT = Documentation/development/stable-release-policy.md \
INPUT = Documentation/development/coding-style-policy.md \
Documentation/development/stable-release-policy.md \
Documentation/development/road-map.md \
kicad \
pcbnew \
@ -1211,7 +1212,7 @@ MATHJAX_EXTENSIONS =
# typically be disabled. For large projects the javascript based search engine
# can be slow, then enabling SERVER_BASED_SEARCH may provide a better solution.
SEARCHENGINE = NO
SEARCHENGINE = YES
# When the SERVER_BASED_SEARCH tag is enabled the search engine will be
# implemented using a PHP enabled web server instead of at the web client

View File

@ -151,7 +151,7 @@ BM2CMP_FRAME_BASE::BM2CMP_FRAME_BASE( wxWindow* parent, wxWindowID id, const wxS
int m_radio_PCBLayerNChoices = sizeof( m_radio_PCBLayerChoices ) / sizeof( wxString );
m_radio_PCBLayer = new wxRadioBox( m_panelRight, wxID_ANY, _("Board Layer for Outline:"), wxDefaultPosition, wxDefaultSize, m_radio_PCBLayerNChoices, m_radio_PCBLayerChoices, 1, wxRA_SPECIFY_COLS );
m_radio_PCBLayer->SetSelection( 0 );
m_radio_PCBLayer->SetToolTip( _("Choose the board layer to place the outline.\nThe 2 invisible fields reference and value and always placed on the silk screen layer.") );
m_radio_PCBLayer->SetToolTip( _("Choose the board layer to place the outline.\nThe 2 invisible fields reference and value are always placed on the silk screen layer.") );
brightSizer->Add( m_radio_PCBLayer, 0, wxALL|wxEXPAND, 5 );

View File

@ -2412,7 +2412,7 @@
<property name="style">wxRA_SPECIFY_COLS</property>
<property name="subclass"></property>
<property name="toolbar_pane">0</property>
<property name="tooltip">Choose the board layer to place the outline.&#x0A;The 2 invisible fields reference and value and always placed on the silk screen layer.</property>
<property name="tooltip">Choose the board layer to place the outline.&#x0A;The 2 invisible fields reference and value are always placed on the silk screen layer.</property>
<property name="validator_data_type"></property>
<property name="validator_style">wxFILTER_NONE</property>
<property name="validator_type">wxDefaultValidator</property>

View File

@ -158,6 +158,12 @@ int bitmap2component( potrace_bitmap_t* aPotrace_bitmap, FILE* aOutfile,
st = potrace_trace( param, aPotrace_bitmap );
if( !st || st->status != POTRACE_STATUS_OK )
{
if( st )
{
potrace_state_free( st );
}
potrace_param_free( param );
fprintf( stderr, "Error tracing bitmap: %s\n", strerror( errno ) );
return 1;
}

View File

@ -168,6 +168,7 @@ set( BMAPS_MID
browse_files
cancel
change_entry_orient
contrast_mode
create_cmp_file
checked_ok
component_select_unit
@ -253,11 +254,9 @@ set( BMAPS_MID
gbr_select_mode2
gerber_file
gerber_recent_files
gerber_open_dcode_file
gerbview_show_negative_objects
gerbview_drill_file
gerbview_clear_layers
gerber_open_dcode_file
gerbview_open_recent_drill_files
general_deletions
general_ratsnest
@ -457,6 +456,8 @@ set( BMAPS_MID
reload
reset_text
resize_sheet
rescue_pcbnew
revert_pcbnew
right
rotate_field
rotate_glabel
@ -551,6 +552,7 @@ set( BMAPS_BIG
libedit_icon
viewlibs_icon
icon_pagelayout_editor
wizard_add_fplib_icon
)

View File

@ -8,67 +8,36 @@
static const unsigned char png[] = {
0x89, 0x50, 0x4e, 0x47, 0x0d, 0x0a, 0x1a, 0x0a, 0x00, 0x00, 0x00, 0x0d, 0x49, 0x48, 0x44, 0x52,
0x00, 0x00, 0x00, 0x1a, 0x00, 0x00, 0x00, 0x1a, 0x08, 0x06, 0x00, 0x00, 0x00, 0xa9, 0x4a, 0x4c,
0xce, 0x00, 0x00, 0x03, 0xb6, 0x49, 0x44, 0x41, 0x54, 0x48, 0xc7, 0xbd, 0x96, 0x7f, 0x68, 0x95,
0x55, 0x18, 0xc7, 0xbf, 0xe7, 0xde, 0x6d, 0x77, 0x8e, 0x61, 0x33, 0xa1, 0x56, 0x62, 0xb1, 0xfc,
0x91, 0xc9, 0x6c, 0x8d, 0x8a, 0x7e, 0xfc, 0x95, 0x10, 0x15, 0xa6, 0x99, 0x91, 0xab, 0x1c, 0xb5,
0xe8, 0x07, 0x37, 0x8b, 0x4a, 0x6c, 0x26, 0x34, 0x64, 0x8c, 0x8d, 0xcc, 0xb4, 0x41, 0x65, 0x51,
0xfe, 0xb1, 0x4a, 0xa8, 0x60, 0x19, 0x0c, 0xb4, 0x08, 0x11, 0x32, 0xcd, 0xa8, 0x88, 0x58, 0x05,
0x26, 0x06, 0x6b, 0xa5, 0x33, 0x67, 0xe2, 0xb5, 0x6c, 0xf7, 0xbe, 0xe7, 0x9c, 0xe7, 0x47, 0x7f,
0xdc, 0xf7, 0xbd, 0xbb, 0xbb, 0xdc, 0xed, 0x5e, 0x4d, 0x7a, 0xe1, 0xe1, 0x3d, 0xef, 0x79, 0x0e,
0xcf, 0xe7, 0x3c, 0xdf, 0xf7, 0x39, 0xcf, 0xfb, 0x1a, 0x55, 0xc5, 0xff, 0x71, 0xc5, 0x0a, 0x27,
0xd2, 0x3d, 0xed, 0x7d, 0x99, 0xee, 0x75, 0x6b, 0xd0, 0xf5, 0x54, 0xed, 0x7f, 0x8a, 0x9c, 0x4c,
0x56, 0xe6, 0x3f, 0x9a, 0xfc, 0x8c, 0xd2, 0x3d, 0xcf, 0x25, 0x8d, 0x9a, 0xb7, 0xc2, 0xc7, 0xd3,
0x50, 0x7d, 0x1b, 0x71, 0x7d, 0x7d, 0x5a, 0x47, 0xef, 0x48, 0x39, 0xb1, 0x4f, 0x24, 0x1f, 0x9e,
0xa3, 0x4a, 0xcf, 0x42, 0x68, 0x99, 0x8a, 0x4c, 0x03, 0xcb, 0xfa, 0xfa, 0xed, 0x1f, 0x6f, 0x87,
0xaa, 0xe6, 0x40, 0x41, 0xcf, 0xba, 0x06, 0x55, 0xfd, 0x11, 0x40, 0x2d, 0x00, 0xa8, 0x48, 0xd6,
0x58, 0xbc, 0xa8, 0xbe, 0x38, 0xfd, 0x97, 0xd1, 0x6e, 0xf4, 0xf7, 0x73, 0x31, 0xc0, 0x1f, 0xc9,
0x55, 0x0b, 0x0c, 0xc9, 0x0b, 0x2a, 0xbc, 0x4a, 0x59, 0xe2, 0x2a, 0x0c, 0x25, 0x1d, 0x54, 0xe6,
0x4d, 0xb3, 0x4d, 0xcd, 0x47, 0xe8, 0xef, 0xe7, 0x1c, 0x28, 0xdd, 0xb5, 0xf6, 0x3a, 0xa8, 0x6e,
0x14, 0x96, 0x5b, 0xb3, 0x00, 0xce, 0x87, 0x41, 0x59, 0xf6, 0x83, 0xd1, 0x7a, 0xe1, 0x1b, 0x7d,
0x47, 0x22, 0xc0, 0x48, 0xdb, 0xfd, 0xf3, 0x0d, 0xa8, 0x5b, 0x45, 0xee, 0x55, 0xe6, 0x58, 0xb8,
0x36, 0x50, 0xd6, 0x0d, 0x97, 0x37, 0xdd, 0xd0, 0x8b, 0xce, 0x4e, 0x29, 0x2a, 0x1d, 0x00, 0xa4,
0xd6, 0x26, 0x17, 0x19, 0xa3, 0x6b, 0x98, 0xb9, 0x15, 0xcc, 0x89, 0x08, 0x24, 0x59, 0xf8, 0x29,
0x15, 0x7e, 0xf4, 0x92, 0x77, 0x76, 0x0c, 0x8c, 0x3c, 0x78, 0x77, 0x52, 0x49, 0x7a, 0x55, 0xa4,
0x46, 0x38, 0xda, 0x10, 0x1f, 0x50, 0xd2, 0x47, 0xae, 0xf8, 0x64, 0xcf, 0xe1, 0xc2, 0xac, 0xcd,
0x64, 0x55, 0x37, 0xba, 0xfa, 0xa1, 0x8b, 0x8c, 0xf7, 0x2f, 0x8b, 0x70, 0xdb, 0x38, 0x48, 0xa0,
0xc2, 0x0a, 0x96, 0x9f, 0x44, 0xe4, 0x6a, 0x65, 0x8e, 0xe6, 0x49, 0x45, 0x9e, 0x9f, 0x7b, 0xe3,
0x17, 0xaf, 0xa2, 0x53, 0xa5, 0x58, 0x3c, 0x53, 0xaa, 0xbc, 0x47, 0x1e, 0x58, 0x7e, 0xa7, 0x08,
0x6f, 0x13, 0x96, 0x4b, 0x27, 0x48, 0xca, 0x51, 0xa6, 0x9c, 0x11, 0x92, 0x96, 0x05, 0x9f, 0x7f,
0xb5, 0x6b, 0xaa, 0x38, 0xa6, 0x9c, 0x73, 0x34, 0xbc, 0x62, 0x71, 0x1d, 0x7b, 0xf4, 0x29, 0xeb,
0x8a, 0x09, 0x20, 0x91, 0x8c, 0x08, 0xdf, 0xb6, 0x70, 0xff, 0x77, 0x5f, 0x96, 0x8a, 0x51, 0x51,
0x4e, 0xd9, 0xba, 0xb4, 0xad, 0x57, 0xc2, 0x4d, 0x3a, 0xfe, 0x2e, 0x22, 0x58, 0xb5, 0x7a, 0x9d,
0x59, 0x4e, 0x8c, 0x92, 0x19, 0x0d, 0x2e, 0x6e, 0xae, 0xab, 0x72, 0xf1, 0x6f, 0x55, 0x65, 0x5e,
0x21, 0x28, 0x2c, 0x82, 0xd3, 0x31, 0xa1, 0xe6, 0x6b, 0x7e, 0xfe, 0x75, 0xf8, 0xac, 0x3a, 0xc3,
0xc4, 0x6d, 0x98, 0x58, 0x7c, 0x4c, 0x3e, 0x24, 0x6b, 0xe7, 0x51, 0x26, 0x00, 0x05, 0x01, 0x28,
0x13, 0xc0, 0x67, 0x82, 0x1d, 0xde, 0x3a, 0xf2, 0xce, 0xc3, 0x79, 0xaa, 0x4b, 0x33, 0xfa, 0x0f,
0x36, 0x36, 0x56, 0x9d, 0x33, 0xe8, 0x87, 0xa6, 0x2b, 0x37, 0x72, 0x26, 0xb8, 0x23, 0x0b, 0xb1,
0xf0, 0xd6, 0xc1, 0x7b, 0xff, 0xd9, 0xb5, 0x87, 0x86, 0x5a, 0x9c, 0xa7, 0x27, 0x1d, 0x11, 0x1c,
0x11, 0x9c, 0xf7, 0xd7, 0x8f, 0x8e, 0xa5, 0xba, 0xcf, 0x49, 0xba, 0xef, 0xaf, 0x9a, 0xb3, 0x54,
0x80, 0x9d, 0x22, 0x0a, 0xd1, 0xac, 0xa9, 0xea, 0x3f, 0x46, 0xe2, 0x8d, 0x37, 0x0f, 0x0d, 0xfd,
0x06, 0x00, 0x7b, 0x2e, 0x9b, 0xb5, 0x59, 0xa1, 0xed, 0xa1, 0xcf, 0x0b, 0xb8, 0x71, 0xc9, 0xd1,
0x3f, 0x0f, 0x97, 0x9d, 0xd1, 0xde, 0x86, 0x86, 0x6a, 0xcb, 0xfc, 0x9a, 0x8d, 0x76, 0x9c, 0xdb,
0x39, 0x75, 0x44, 0x10, 0x00, 0x38, 0x70, 0xe4, 0xd8, 0x7a, 0xef, 0x69, 0xa7, 0x23, 0x86, 0x25,
0xae, 0xb4, 0x4e, 0x5f, 0x39, 0x2b, 0xe9, 0x62, 0x71, 0x6e, 0x77, 0xc4, 0x0d, 0x61, 0x00, 0x58,
0x62, 0x38, 0xe2, 0x6f, 0xf6, 0xfd, 0x7e, 0x6c, 0x6b, 0xfe, 0xba, 0x4e, 0x55, 0xb1, 0x1a, 0x7b,
0xcc, 0x11, 0x9d, 0x72, 0x44, 0x70, 0x4c, 0x4b, 0x3f, 0x98, 0x79, 0xc1, 0xed, 0x65, 0x49, 0xb7,
0x7b, 0xee, 0xac, 0xd9, 0x31, 0xaf, 0x87, 0x44, 0xb5, 0x46, 0x15, 0x88, 0xa4, 0x33, 0x31, 0x6d,
0x5e, 0x72, 0xf4, 0xc4, 0x60, 0xb1, 0x20, 0xef, 0xcf, 0x98, 0xde, 0x06, 0xc5, 0xbb, 0xa1, 0xc4,
0x07, 0x87, 0xcf, 0x8c, 0x35, 0x75, 0xaa, 0xd2, 0x94, 0x19, 0x49, 0xc0, 0x5b, 0x1c, 0x71, 0x8d,
0x23, 0x86, 0xf5, 0x04, 0x4b, 0x04, 0x4f, 0xf4, 0xe9, 0x64, 0x10, 0x00, 0x68, 0x4d, 0xfd, 0xfd,
0x9e, 0x25, 0xde, 0x6d, 0x89, 0x60, 0x3d, 0x2d, 0xac, 0x4f, 0x24, 0x56, 0x97, 0x94, 0xce, 0x12,
0x8d, 0xba, 0xac, 0x54, 0xe3, 0xe6, 0x65, 0x53, 0xc9, 0x43, 0xcd, 0x92, 0x74, 0xc4, 0x63, 0x59,
0xb9, 0xa9, 0xa3, 0xcb, 0x98, 0xaa, 0x29, 0x41, 0xcb, 0x8f, 0x9f, 0x7c, 0xc6, 0xb2, 0x7f, 0xda,
0x12, 0x71, 0x58, 0x0c, 0x5f, 0xb7, 0xa4, 0x52, 0xfb, 0x4a, 0x81, 0x9e, 0xc8, 0x64, 0x86, 0x2d,
0xf9, 0x0d, 0x8e, 0x08, 0x9e, 0xf9, 0xe2, 0x5a, 0x60, 0x65, 0xc9, 0x62, 0xb8, 0xef, 0xe4, 0x5f,
0x5b, 0x3d, 0xd3, 0x32, 0x47, 0x74, 0x26, 0x20, 0x79, 0xa9, 0xdc, 0xaf, 0x77, 0x85, 0xe0, 0x4d,
0x05, 0x8e, 0x03, 0x80, 0x01, 0x16, 0x4d, 0x70, 0x6a, 0xf6, 0x0c, 0x14, 0xb5, 0x6d, 0x89, 0xc4,
0x7c, 0x0d, 0x0b, 0xa6, 0x5c, 0xdb, 0x0c, 0x3c, 0xbe, 0x05, 0xb8, 0xa7, 0x70, 0x3e, 0x57, 0x75,
0x03, 0xc6, 0xd4, 0x45, 0xf0, 0x4a, 0xc0, 0x00, 0x40, 0x3a, 0xbc, 0x87, 0xdd, 0xd7, 0x14, 0xfa,
0x01, 0x20, 0x13, 0x8e, 0xf3, 0xfd, 0xf1, 0xbc, 0xf1, 0x5d, 0xaa, 0xa3, 0xb9, 0xee, 0xbd, 0xd7,
0x98, 0x6a, 0x03, 0xa4, 0x22, 0x67, 0x54, 0x97, 0x93, 0x35, 0xaf, 0xfc, 0x1f, 0x87, 0x62, 0x6b,
0xf2, 0x0e, 0x8c, 0x05, 0x50, 0x5d, 0xba, 0xa9, 0x9e, 0xc7, 0xab, 0x02, 0x00, 0x6e, 0x51, 0x0d,
0x06, 0x8c, 0x99, 0x71, 0xbe, 0x83, 0xfb, 0xbc, 0xe4, 0xfe, 0x05, 0x6f, 0xa9, 0x1e, 0xe7, 0x5c,
0x0f, 0xb4, 0x1e, 0x00, 0x00, 0x00, 0x00, 0x49, 0x45, 0x4e, 0x44, 0xae, 0x42, 0x60, 0x82,
0xce, 0x00, 0x00, 0x01, 0xb8, 0x49, 0x44, 0x41, 0x54, 0x48, 0xc7, 0xdd, 0x96, 0xc1, 0x4a, 0x02,
0x51, 0x14, 0x86, 0x2f, 0x45, 0x8a, 0xe0, 0xda, 0x27, 0x70, 0xe3, 0xda, 0x8d, 0x4f, 0xe0, 0xc2,
0x85, 0x3b, 0xc1, 0x37, 0x08, 0x5a, 0xf4, 0x0a, 0x36, 0xf8, 0x00, 0x6d, 0x9d, 0x56, 0xad, 0x7b,
0x82, 0x88, 0x36, 0x0a, 0x21, 0x62, 0x82, 0x41, 0x6e, 0x22, 0x88, 0x56, 0x2d, 0x22, 0x18, 0x21,
0x23, 0x4a, 0xba, 0xfd, 0x67, 0x9a, 0x2b, 0xa7, 0xdb, 0x69, 0xc6, 0x7b, 0x6b, 0x11, 0x2d, 0x3e,
0x18, 0xef, 0x39, 0xe7, 0xff, 0x9c, 0x3b, 0xe3, 0x8c, 0xaa, 0xd1, 0x68, 0xa8, 0x2c, 0x74, 0xa7,
0xb3, 0xe1, 0x53, 0xe3, 0x64, 0x36, 0xbc, 0x54, 0xab, 0x87, 0xaf, 0x95, 0xca, 0xa9, 0x6e, 0xb5,
0x36, 0xbf, 0x48, 0xb0, 0x46, 0x35, 0xea, 0xf9, 0x91, 0x68, 0x81, 0x80, 0x47, 0xa5, 0x34, 0xf1,
0x64, 0xc9, 0xe8, 0x98, 0xd6, 0x4c, 0x7d, 0x91, 0x21, 0x4b, 0xdd, 0xae, 0x08, 0x41, 0x0f, 0x08,
0x31, 0x44, 0x89, 0x8c, 0x10, 0x6b, 0x29, 0xdb, 0x98, 0x7e, 0x6d, 0x10, 0x78, 0x8f, 0x80, 0x3b,
0x04, 0x19, 0xe8, 0xb3, 0xb4, 0x26, 0x6d, 0xed, 0x27, 0x91, 0xda, 0x53, 0x3b, 0x20, 0x02, 0x3a,
0x17, 0xe4, 0xde, 0xda, 0xfb, 0x6d, 0x1d, 0x86, 0xe1, 0x8a, 0x83, 0x5e, 0x4f, 0x5f, 0xd4, 0xeb,
0xfa, 0x16, 0x81, 0x12, 0x54, 0xa3, 0x1e, 0x3e, 0x43, 0x19, 0x85, 0xa0, 0xa0, 0x29, 0x13, 0x3c,
0x83, 0x5d, 0x12, 0xdd, 0x24, 0x0b, 0x31, 0xd4, 0xc0, 0x87, 0x8c, 0x6c, 0x82, 0xc0, 0x2b, 0x04,
0x73, 0x26, 0x82, 0x84, 0xc8, 0x07, 0x79, 0xcd, 0x33, 0x63, 0x47, 0x6c, 0xfb, 0xb0, 0xae, 0x0a,
0x92, 0x68, 0x84, 0xd0, 0x4b, 0x84, 0x73, 0x46, 0xdf, 0x88, 0x2c, 0x49, 0x14, 0xef, 0xda, 0x6a,
0x0f, 0x59, 0xd1, 0xbe, 0x4e, 0x33, 0x5c, 0x83, 0x09, 0x9d, 0x81, 0xc0, 0x4c, 0xb8, 0x3e, 0x52,
0x56, 0x6a, 0x91, 0x02, 0xa6, 0x08, 0x1a, 0x22, 0xd0, 0x40, 0x9f, 0xa5, 0x35, 0x2e, 0x73, 0x12,
0xd1, 0xad, 0x3a, 0x46, 0x40, 0x1f, 0x41, 0x86, 0x31, 0xbb, 0xbd, 0xc5, 0x5a, 0x72, 0x7b, 0x3b,
0x9f, 0xd1, 0x10, 0x3f, 0xc2, 0x13, 0x84, 0x10, 0x67, 0x08, 0x3a, 0x62, 0xdf, 0x9a, 0x8e, 0x69,
0xcd, 0xd4, 0x87, 0xec, 0x07, 0xeb, 0x2c, 0x22, 0x06, 0x08, 0xe8, 0x5b, 0x12, 0x2e, 0xa3, 0xda,
0xc0, 0x7a, 0x2a, 0x78, 0x89, 0x7c, 0x1e, 0xaa, 0xde, 0x22, 0x57, 0xfe, 0x9e, 0x48, 0x85, 0x6a,
0xcb, 0x5b, 0x82, 0xd9, 0x2c, 0xd1, 0x9c, 0x35, 0x1c, 0x83, 0xa2, 0xc7, 0x99, 0x14, 0x93, 0x59,
0x93, 0x33, 0x97, 0x44, 0x81, 0xf5, 0xe8, 0x38, 0x07, 0x25, 0x07, 0x49, 0x29, 0x99, 0xe1, 0x19,
0x81, 0xf8, 0x9a, 0x40, 0xa1, 0x6b, 0x35, 0x5e, 0x83, 0xf2, 0x1a, 0x92, 0x72, 0xd2, 0xcb, 0x67,
0xbb, 0xa9, 0xef, 0x23, 0x9c, 0xd7, 0x36, 0x9a, 0x96, 0xd6, 0x90, 0x0b, 0x4b, 0xca, 0x58, 0xeb,
0xc5, 0x87, 0xe6, 0x26, 0x58, 0x78, 0x48, 0x68, 0xa6, 0xe9, 0xf4, 0x86, 0xc5, 0x40, 0x0d, 0x4c,
0x1d, 0x24, 0xd4, 0x5b, 0xf3, 0xfe, 0x17, 0xf4, 0x5b, 0xfc, 0x3f, 0xd1, 0x3b, 0xe8, 0xb5, 0x4e,
0xbb, 0xfd, 0x4c, 0x20, 0xb2, 0x00, 0x00, 0x00, 0x00, 0x49, 0x45, 0x4e, 0x44, 0xae, 0x42, 0x60,
0x82,
};
const BITMAP_OPAQUE auto_delete_track_xpm[1] = {{ png, sizeof( png ), "auto_delete_track_xpm" }};

View File

@ -8,76 +8,102 @@
static const unsigned char png[] = {
0x89, 0x50, 0x4e, 0x47, 0x0d, 0x0a, 0x1a, 0x0a, 0x00, 0x00, 0x00, 0x0d, 0x49, 0x48, 0x44, 0x52,
0x00, 0x00, 0x00, 0x1a, 0x00, 0x00, 0x00, 0x1a, 0x08, 0x06, 0x00, 0x00, 0x00, 0xa9, 0x4a, 0x4c,
0xce, 0x00, 0x00, 0x04, 0x45, 0x49, 0x44, 0x41, 0x54, 0x48, 0xc7, 0xad, 0xd6, 0xdb, 0x53, 0x1b,
0x55, 0x1c, 0x07, 0xf0, 0x85, 0x96, 0x4d, 0x68, 0x02, 0x09, 0xe5, 0x52, 0xeb, 0x40, 0x99, 0xa9,
0xd5, 0xb1, 0x40, 0x8a, 0x34, 0x85, 0xbd, 0xe4, 0x0a, 0x41, 0xd2, 0x4d, 0xc8, 0x86, 0x6c, 0xd8,
0x92, 0x0b, 0x24, 0x54, 0xa0, 0x1d, 0x4a, 0x01, 0xdb, 0xa0, 0x63, 0x7d, 0x70, 0x3a, 0xe8, 0x8c,
0x4f, 0x3e, 0xb5, 0x33, 0xb6, 0x85, 0x04, 0x8b, 0x15, 0x5a, 0x15, 0x98, 0x04, 0x9c, 0x0e, 0xa3,
0x96, 0x7b, 0x47, 0x2c, 0x84, 0x4a, 0x8d, 0xd3, 0x07, 0x7d, 0xf2, 0x45, 0xeb, 0x1f, 0x11, 0xcf,
0x59, 0x58, 0xd8, 0x8d, 0x09, 0x05, 0xc6, 0x87, 0xef, 0xcb, 0xee, 0x2f, 0xfb, 0xc9, 0xd9, 0xf3,
0x3b, 0xe7, 0x2c, 0x72, 0x35, 0x2a, 0xa1, 0x41, 0xe6, 0xdf, 0x5d, 0xce, 0xfc, 0x50, 0xdf, 0x6a,
0x57, 0x91, 0x2d, 0x8e, 0x32, 0x8c, 0xa2, 0xb2, 0xe3, 0xf1, 0x38, 0xb2, 0xdf, 0x20, 0xc8, 0xf5,
0xf4, 0x83, 0xc4, 0x94, 0x19, 0xc5, 0x27, 0x9b, 0x10, 0x72, 0xba, 0x80, 0xbb, 0x16, 0x88, 0xa2,
0xbf, 0x83, 0xc4, 0x61, 0x2e, 0x3f, 0x52, 0x3e, 0x24, 0xfc, 0xf5, 0x35, 0x98, 0xdb, 0xa1, 0x55,
0xb3, 0xb5, 0x8a, 0xfd, 0x21, 0xf1, 0xb4, 0x0c, 0x62, 0xd2, 0x07, 0x72, 0x83, 0x0b, 0x1e, 0xee,
0xe4, 0xae, 0x83, 0xd1, 0x2c, 0xf2, 0x10, 0x87, 0xcd, 0x28, 0xa7, 0x71, 0x9f, 0xd5, 0x04, 0xb1,
0xb7, 0x1a, 0x8c, 0xca, 0x3d, 0x23, 0x64, 0xa4, 0x05, 0xe4, 0x26, 0x4a, 0x4e, 0xdc, 0x92, 0x90,
0x13, 0xb7, 0xa5, 0xf8, 0xb8, 0x87, 0xbb, 0xf7, 0xde, 0xcf, 0xb2, 0x57, 0xfa, 0xa2, 0xe8, 0x6f,
0x22, 0x6c, 0x56, 0xf1, 0x3d, 0xd6, 0x62, 0xa9, 0xdd, 0x0b, 0x06, 0x11, 0x94, 0x0c, 0x37, 0x67,
0x10, 0x91, 0x9b, 0x52, 0xcd, 0xb7, 0x83, 0x72, 0xdd, 0xc8, 0xfd, 0x6c, 0xfd, 0xd0, 0xe7, 0x27,
0x6d, 0x17, 0x4a, 0x4a, 0xd9, 0x52, 0x94, 0x2b, 0xea, 0x7d, 0x26, 0x3b, 0x02, 0x80, 0x98, 0x10,
0xeb, 0x9a, 0x51, 0xfc, 0x20, 0xc4, 0xc0, 0x93, 0xd2, 0x52, 0x23, 0x48, 0x1a, 0x98, 0x0f, 0x2f,
0x40, 0x6e, 0x48, 0x35, 0x63, 0x10, 0x79, 0xa0, 0x34, 0x0e, 0x84, 0xca, 0xcf, 0xb5, 0xd8, 0xf0,
0x26, 0xc7, 0x49, 0x82, 0x65, 0x33, 0xb7, 0x8a, 0xfb, 0x7e, 0x91, 0x17, 0x00, 0xe0, 0x57, 0x11,
0x36, 0xab, 0x78, 0xc4, 0x63, 0x2a, 0xab, 0x36, 0x27, 0x19, 0xb6, 0x81, 0x84, 0x13, 0x90, 0x60,
0xe8, 0x54, 0xe3, 0x79, 0x1a, 0xf3, 0x32, 0xb8, 0x8e, 0x61, 0x8e, 0xb2, 0x2c, 0x7b, 0x40, 0xf4,
0xa3, 0xee, 0x28, 0x92, 0x1f, 0x58, 0x45, 0x9f, 0x89, 0x5e, 0xe3, 0x5c, 0xf6, 0x0c, 0xe9, 0xa7,
0xde, 0xd6, 0xb8, 0xec, 0x3a, 0x95, 0xd5, 0x2a, 0xc2, 0x38, 0x84, 0x88, 0xb8, 0x37, 0x10, 0xf8,
0xba, 0xbe, 0x7a, 0xa0, 0xac, 0x1e, 0x04, 0x88, 0x8f, 0x26, 0xdd, 0x0e, 0xa2, 0xd2, 0x65, 0x2f,
0x2a, 0x65, 0x59, 0x94, 0xab, 0x4d, 0xfc, 0x87, 0x81, 0x15, 0x24, 0x0f, 0x00, 0xeb, 0x09, 0xd8,
0x1c, 0x8f, 0x95, 0x9a, 0xcd, 0x87, 0x21, 0xc0, 0x21, 0xe4, 0x94, 0x6b, 0x73, 0x24, 0x03, 0x72,
0xfd, 0xc8, 0x7d, 0x65, 0x75, 0x70, 0x13, 0xa9, 0x27, 0xd4, 0xac, 0xed, 0x18, 0x8f, 0x24, 0x85,
0x04, 0xd8, 0x53, 0x11, 0x36, 0x9f, 0x3d, 0x4f, 0x9c, 0x37, 0xd7, 0x41, 0xec, 0x4d, 0x93, 0x29,
0x17, 0xc5, 0x26, 0x36, 0x10, 0x12, 0x20, 0xba, 0x51, 0x0e, 0x51, 0x39, 0x5b, 0xed, 0xc9, 0x90,
0x94, 0x10, 0xcc, 0xb5, 0x65, 0x24, 0x17, 0x00, 0x6b, 0x42, 0xac, 0x7b, 0x2e, 0x6b, 0x11, 0x62,
0xc5, 0xe6, 0xfe, 0x8f, 0x64, 0xda, 0x7b, 0x03, 0x52, 0xe2, 0x9b, 0x41, 0x88, 0x28, 0x8c, 0xc1,
0x21, 0x15, 0xdb, 0x6a, 0x27, 0x9a, 0xed, 0x64, 0x05, 0x63, 0x29, 0x86, 0x5d, 0xf6, 0x9f, 0xb9,
0xdc, 0xa9, 0x65, 0xaf, 0xc4, 0x90, 0xc3, 0x60, 0xce, 0xa2, 0x42, 0xac, 0xed, 0xbb, 0xc2, 0xe7,
0x85, 0x96, 0x4f, 0xc3, 0x47, 0xeb, 0x3e, 0x9b, 0xcc, 0x31, 0x0c, 0x8e, 0x2b, 0x0c, 0x03, 0x5f,
0xc0, 0x91, 0x70, 0x88, 0xc7, 0x52, 0x7c, 0x82, 0xa2, 0x24, 0x49, 0x3b, 0xf3, 0x65, 0xeb, 0xe3,
0x83, 0x75, 0x24, 0xe7, 0x6a, 0x14, 0x5d, 0x15, 0x62, 0xbe, 0xf1, 0xd7, 0xff, 0x3e, 0x66, 0xfd,
0x64, 0xae, 0x88, 0xea, 0x7f, 0x58, 0xce, 0xb8, 0x5b, 0x30, 0x77, 0xbd, 0x76, 0x27, 0x64, 0x57,
0x10, 0x8f, 0x75, 0x2d, 0xe4, 0xfe, 0x21, 0xc4, 0xfc, 0x13, 0xc7, 0x5f, 0x9c, 0x69, 0x66, 0xfa,
0x09, 0x2f, 0xdd, 0x75, 0xba, 0xb1, 0xae, 0xa2, 0x90, 0x20, 0x32, 0x77, 0x5c, 0xd0, 0xbb, 0x81,
0x50, 0x7c, 0x8a, 0x51, 0x52, 0x43, 0x77, 0xda, 0xa7, 0x8b, 0x5e, 0x08, 0xb1, 0x4b, 0x3f, 0x2a,
0x63, 0x9a, 0xb6, 0x3a, 0x3f, 0xee, 0xa6, 0x4d, 0x6a, 0x9b, 0x2d, 0x0f, 0x74, 0x62, 0xfa, 0xbe,
0x21, 0x94, 0x98, 0x74, 0xc0, 0xcd, 0x11, 0xb6, 0x70, 0x3e, 0x75, 0x6b, 0xac, 0x63, 0xba, 0xf0,
0x1f, 0x51, 0x83, 0x2c, 0xc8, 0x57, 0xf4, 0xed, 0xb5, 0x67, 0x49, 0x0f, 0xad, 0xaf, 0xa0, 0xa8,
0xfc, 0x54, 0xd8, 0xcb, 0x90, 0x06, 0x1e, 0x91, 0xe9, 0x46, 0x46, 0xb3, 0x8d, 0xa1, 0xbb, 0x78,
0xa7, 0xd3, 0xdb, 0xfb, 0x93, 0x2c, 0x96, 0x80, 0x3d, 0xd9, 0xc2, 0xd8, 0xe4, 0x58, 0x6a, 0x84,
0x8c, 0xd8, 0x85, 0x08, 0x58, 0x27, 0x77, 0xcb, 0xd8, 0x36, 0x07, 0xee, 0x65, 0x34, 0xe6, 0x6b,
0x95, 0xaa, 0xc0, 0xaa, 0x64, 0x59, 0x84, 0x2d, 0xca, 0x57, 0x75, 0x17, 0x4d, 0x14, 0xc4, 0x4e,
0x39, 0xea, 0x0a, 0x12, 0xb1, 0xa4, 0x88, 0x04, 0x0f, 0xd3, 0x1c, 0x42, 0xf2, 0x48, 0x68, 0x98,
0x47, 0x2a, 0x9d, 0xd6, 0xe3, 0x46, 0xa3, 0x51, 0xfa, 0xfe, 0x73, 0x24, 0x0b, 0x00, 0x4b, 0x42,
0xac, 0x67, 0x49, 0x16, 0x35, 0x76, 0x26, 0xc7, 0x92, 0x20, 0x93, 0x36, 0x88, 0x48, 0xc8, 0xb1,
0x3b, 0x1c, 0x62, 0x0c, 0x0e, 0x97, 0x36, 0xbe, 0xc3, 0xe0, 0x7e, 0x80, 0x78, 0x36, 0x10, 0xbe,
0x16, 0x62, 0x89, 0xe7, 0x59, 0xcf, 0xa2, 0x6c, 0x0d, 0x62, 0x84, 0xdb, 0x61, 0x28, 0xa3, 0x4d,
0x47, 0x78, 0x4c, 0x84, 0x1c, 0x20, 0x22, 0xf5, 0x62, 0x24, 0x04, 0x90, 0x0e, 0x06, 0xf3, 0x81,
0x13, 0xb7, 0x89, 0x7a, 0xcd, 0xd8, 0xba, 0x8d, 0xf0, 0xb9, 0x14, 0x43, 0xe4, 0x81, 0x35, 0xc9,
0x82, 0x10, 0xeb, 0x5d, 0x92, 0x3f, 0x35, 0x74, 0xd5, 0x58, 0x20, 0x86, 0x6d, 0x62, 0xdb, 0x08,
0x19, 0xb6, 0x0a, 0x11, 0x85, 0x21, 0x34, 0x5c, 0xe2, 0x6c, 0x77, 0xf2, 0x08, 0xc1, 0xa6, 0x5e,
0x27, 0x1c, 0x16, 0x95, 0xcc, 0x89, 0x46, 0xf6, 0x58, 0xbe, 0xae, 0xef, 0xae, 0xb6, 0x6e, 0x61,
0xb0, 0xf0, 0x20, 0x16, 0xae, 0xde, 0x40, 0xc6, 0x01, 0x32, 0x3a, 0xc2, 0x21, 0xcc, 0x85, 0xc6,
0xdd, 0x20, 0xdb, 0xe7, 0x19, 0x22, 0xeb, 0x8b, 0x4a, 0x66, 0x45, 0x0d, 0x32, 0x9f, 0xf5, 0xb8,
0xca, 0x6d, 0xab, 0xc1, 0xcf, 0xd1, 0x9a, 0xcd, 0x05, 0x19, 0xf9, 0x58, 0xba, 0x85, 0x04, 0xbf,
0xdc, 0x2b, 0xc2, 0xe7, 0xfa, 0x0a, 0x72, 0x28, 0x10, 0xcd, 0x98, 0xe1, 0xa1, 0x2b, 0x4f, 0xa4,
0x7f, 0x61, 0x1e, 0xba, 0x9a, 0x60, 0x1b, 0xaa, 0xb8, 0x02, 0xa9, 0xf6, 0xeb, 0x0e, 0x0e, 0x01,
0x73, 0x52, 0xd2, 0x74, 0xd1, 0xb9, 0x1f, 0x44, 0x88, 0x81, 0x06, 0x19, 0x04, 0xd0, 0x9f, 0x3d,
0xcb, 0xd2, 0xcb, 0x1a, 0x17, 0xfd, 0x2a, 0xdc, 0x03, 0xe1, 0x29, 0x99, 0x8e, 0x79, 0xbd, 0x85,
0x6f, 0x34, 0x74, 0xd9, 0xcb, 0x5d, 0x6e, 0xba, 0x0a, 0x9c, 0x37, 0xa7, 0x59, 0xf3, 0x89, 0xfd,
0x20, 0xa9, 0xbe, 0x27, 0xb6, 0xba, 0x4e, 0xed, 0xb6, 0xe5, 0x01, 0xf9, 0x0c, 0xdc, 0xea, 0x21,
0xa2, 0xb6, 0xa9, 0x0f, 0xfd, 0x1f, 0x88, 0x30, 0xff, 0x02, 0x94, 0x7c, 0x89, 0xd7, 0x2c, 0xef,
0xcc, 0x31, 0x00, 0x00, 0x00, 0x00, 0x49, 0x45, 0x4e, 0x44, 0xae, 0x42, 0x60, 0x82,
0xce, 0x00, 0x00, 0x05, 0xe5, 0x49, 0x44, 0x41, 0x54, 0x48, 0xc7, 0xa5, 0xd6, 0x59, 0x50, 0x53,
0x57, 0x18, 0x00, 0xe0, 0x10, 0x25, 0x09, 0x2d, 0xad, 0x75, 0x74, 0xd4, 0x1a, 0xb2, 0x41, 0x12,
0x4d, 0x02, 0x41, 0x12, 0xb6, 0x40, 0x80, 0xb8, 0xb0, 0x13, 0x96, 0xea, 0x85, 0xb0, 0x09, 0x05,
0x04, 0xea, 0x82, 0x2c, 0xb2, 0x06, 0x59, 0x45, 0xd6, 0x00, 0x06, 0xd0, 0x00, 0xa2, 0x62, 0x81,
0x20, 0xd4, 0xa5, 0x83, 0x56, 0x47, 0xed, 0x74, 0xb4, 0x2f, 0xed, 0x43, 0xdb, 0xe9, 0xf8, 0xd4,
0x4e, 0xeb, 0x43, 0xb5, 0x55, 0x8b, 0x36, 0x0b, 0x21, 0x0b, 0x8e, 0x3d, 0xbd, 0xe7, 0x62, 0x20,
0x09, 0x1d, 0xa7, 0xd2, 0x87, 0x33, 0x93, 0xdc, 0x39, 0xf7, 0x7c, 0xf7, 0xfc, 0xff, 0x7f, 0xee,
0x7f, 0x71, 0xb8, 0x8b, 0xae, 0x9b, 0xf0, 0x6a, 0xc2, 0x08, 0x5e, 0x4d, 0x1c, 0xd8, 0xd4, 0xbe,
0xdd, 0x57, 0x94, 0x8e, 0x78, 0xf9, 0x21, 0x31, 0x5b, 0x70, 0x38, 0x1c, 0x1e, 0x00, 0x80, 0x5b,
0xcd, 0x98, 0xe2, 0xf1, 0x08, 0x67, 0xa8, 0xd4, 0xe0, 0x61, 0x37, 0x37, 0xbe, 0xf5, 0x1a, 0x0e,
0x37, 0x41, 0xa8, 0x76, 0x52, 0x13, 0x00, 0x1c, 0x6b, 0xc6, 0x49, 0x4f, 0x3d, 0x2a, 0xfc, 0x52,
0x03, 0x33, 0x12, 0x25, 0x42, 0x44, 0x4a, 0x5d, 0x0d, 0xa6, 0x64, 0x32, 0x89, 0x43, 0x14, 0x4a,
0xe1, 0x20, 0x85, 0xd2, 0x02, 0xc7, 0x30, 0x8d, 0xc6, 0x59, 0x84, 0xd4, 0xce, 0x85, 0x56, 0x08,
0xc3, 0xc6, 0x48, 0xcf, 0xdc, 0x2b, 0x7d, 0xd3, 0x20, 0x26, 0x7e, 0x4b, 0x0c, 0x22, 0x2a, 0x14,
0x41, 0xc7, 0xc9, 0x01, 0x1a, 0xb5, 0x73, 0x80, 0x46, 0xeb, 0x52, 0x30, 0xd8, 0x5e, 0x8b, 0x10,
0xc0, 0x39, 0xe1, 0x27, 0x89, 0x03, 0x2b, 0xb0, 0x72, 0x61, 0x3a, 0xc4, 0x82, 0xd2, 0x62, 0x68,
0xff, 0x05, 0x83, 0xc8, 0x20, 0x99, 0x5c, 0x00, 0x11, 0x25, 0x83, 0xde, 0xdb, 0xc9, 0x66, 0x8e,
0xd4, 0x7b, 0x72, 0x1b, 0x42, 0xa5, 0xe1, 0x0c, 0x1e, 0xc2, 0x23, 0x2c, 0x4d, 0xc4, 0xab, 0x9d,
0xfb, 0x1d, 0xb0, 0x3f, 0x19, 0x95, 0x82, 0x0c, 0x88, 0x05, 0xca, 0x12, 0xe9, 0x6f, 0xc2, 0x60,
0x4e, 0xd0, 0x7c, 0xe4, 0xc3, 0x50, 0xf5, 0x31, 0xe8, 0x3d, 0x1d, 0x6c, 0xd6, 0x48, 0xb5, 0x37,
0xaf, 0x23, 0x24, 0x2d, 0x21, 0x22, 0x30, 0x25, 0x89, 0x23, 0x42, 0x10, 0x17, 0xbb, 0x1b, 0xf0,
0x93, 0xce, 0x4a, 0x3b, 0x6c, 0x1c, 0xc5, 0xaa, 0x04, 0x99, 0x6f, 0xc2, 0x20, 0x32, 0x88, 0x22,
0x55, 0x7c, 0xe9, 0xe5, 0x32, 0x9f, 0xc4, 0x9b, 0xc7, 0x7c, 0xe2, 0xee, 0xe6, 0x89, 0x33, 0x2f,
0x71, 0x72, 0x47, 0x4b, 0x78, 0x85, 0x9f, 0x66, 0xfa, 0x65, 0xb5, 0xb1, 0x10, 0x04, 0x59, 0xb3,
0xe2, 0xe9, 0xf0, 0x13, 0xce, 0xbd, 0x0e, 0x3b, 0x9b, 0xb5, 0x62, 0xfe, 0x88, 0x94, 0x61, 0x8b,
0x41, 0x64, 0xc8, 0xcd, 0xed, 0x00, 0xdc, 0x49, 0x46, 0x48, 0xf9, 0xb3, 0x7d, 0x3b, 0x1b, 0xc1,
0xae, 0xf8, 0x51, 0xf0, 0x61, 0xf1, 0x0b, 0x40, 0xaf, 0xd0, 0x81, 0xed, 0x72, 0x1d, 0x10, 0xd4,
0x6b, 0xea, 0xb0, 0x1c, 0x39, 0x42, 0xc3, 0xf7, 0x2c, 0x1c, 0xd1, 0xb5, 0x9c, 0xc7, 0x2b, 0xb0,
0x4a, 0x1f, 0x0c, 0xf3, 0x4b, 0x8b, 0x75, 0x87, 0xd8, 0xa0, 0x50, 0xe8, 0x8c, 0xee, 0x24, 0xcf,
0x1a, 0xae, 0x4c, 0x71, 0xe9, 0xd3, 0xdd, 0xf1, 0x17, 0x00, 0xf9, 0x35, 0xc2, 0x91, 0x6b, 0x7f,
0x17, 0x1c, 0x7f, 0x96, 0x18, 0xd8, 0xaa, 0xa1, 0xaf, 0x80, 0xfa, 0xbe, 0x5c, 0xf8, 0xb8, 0xfb,
0xce, 0x82, 0xa5, 0xfd, 0x96, 0x05, 0x84, 0x5c, 0x29, 0x03, 0x0e, 0x61, 0x7c, 0x4e, 0xaf, 0xf6,
0xd9, 0x0f, 0x31, 0x49, 0x72, 0x14, 0xfb, 0x34, 0x99, 0x8c, 0xed, 0xa4, 0x8f, 0x4e, 0xef, 0xe9,
0x44, 0x73, 0x22, 0x8d, 0xea, 0x78, 0x48, 0x2e, 0x79, 0x01, 0x18, 0x95, 0x3a, 0xc0, 0xad, 0xd5,
0x03, 0x41, 0x93, 0x1e, 0x04, 0x9d, 0x9c, 0x2b, 0x5a, 0x3a, 0x47, 0xd6, 0x1f, 0x5d, 0x77, 0x5e,
0x8a, 0xdb, 0x6e, 0x5a, 0x16, 0x9a, 0xaf, 0x5b, 0x40, 0xdd, 0xe7, 0xe6, 0x85, 0xea, 0x2b, 0x66,
0x05, 0x51, 0xfd, 0xc1, 0x29, 0x7b, 0x8c, 0xf8, 0x9c, 0x59, 0xb5, 0x23, 0xe7, 0x90, 0xc8, 0xb7,
0xa3, 0x99, 0xc7, 0x39, 0x7d, 0x8a, 0x0e, 0xab, 0x8b, 0x35, 0x52, 0xeb, 0xcd, 0xeb, 0xa2, 0x1f,
0xf9, 0xe9, 0x6b, 0x77, 0x14, 0xe1, 0xc9, 0x67, 0xef, 0x0b, 0x51, 0x24, 0xb8, 0x75, 0x0e, 0xec,
0x51, 0x18, 0x16, 0xa4, 0x4a, 0x63, 0xe0, 0x12, 0xd4, 0x7e, 0x7b, 0x7e, 0x6b, 0xe3, 0x8c, 0xf9,
0x49, 0xed, 0x35, 0x33, 0xa8, 0xfc, 0xcc, 0x6c, 0x29, 0x99, 0x34, 0x47, 0x2c, 0x17, 0x08, 0xa1,
0xdd, 0x16, 0x23, 0x8e, 0x92, 0x0c, 0xb2, 0xf8, 0x6d, 0x33, 0x25, 0xfe, 0x82, 0xe9, 0x9a, 0x1d,
0xfc, 0xe9, 0x1a, 0x3e, 0x57, 0x11, 0x9a, 0x1c, 0x17, 0xcd, 0x2c, 0xff, 0xf5, 0x06, 0xef, 0xb8,
0x1e, 0x78, 0xd7, 0x3c, 0x60, 0x89, 0xdb, 0xe6, 0x54, 0xe1, 0x0a, 0x03, 0x90, 0xf6, 0x19, 0x40,
0xb2, 0x6a, 0xfe, 0xb7, 0xfc, 0xc1, 0xbf, 0xd6, 0x61, 0x8b, 0xd5, 0x5c, 0x36, 0x97, 0x95, 0x4f,
0x9b, 0x41, 0xf1, 0xa4, 0x09, 0x1c, 0x1c, 0x37, 0xed, 0x5f, 0x59, 0x20, 0x84, 0x56, 0x5b, 0x8c,
0x74, 0x9e, 0x64, 0x42, 0x12, 0xb9, 0xf7, 0x73, 0xc3, 0x44, 0x53, 0xe2, 0x64, 0x69, 0x6e, 0x40,
0x6a, 0x9c, 0xd8, 0xab, 0x78, 0x2a, 0x4c, 0xd0, 0x34, 0x5b, 0x0a, 0xe7, 0x4b, 0x1a, 0xc0, 0xda,
0x04, 0xa5, 0xe1, 0x2e, 0x8a, 0x80, 0xac, 0x73, 0x46, 0x50, 0x78, 0xd1, 0x10, 0x89, 0x2d, 0x54,
0xa4, 0x36, 0x4f, 0x7f, 0x32, 0x66, 0x02, 0x79, 0xa3, 0xc6, 0xbf, 0x91, 0x01, 0xe0, 0xea, 0x08,
0x7d, 0x25, 0x91, 0xac, 0xe5, 0x34, 0xbb, 0xce, 0xd8, 0xef, 0xcc, 0xc5, 0xc4, 0x2d, 0x0e, 0xe8,
0x0e, 0x4c, 0x4f, 0x38, 0x8c, 0x16, 0x88, 0xc4, 0x4d, 0x24, 0x72, 0xb1, 0xbd, 0x07, 0x45, 0x62,
0xb2, 0x21, 0x82, 0xae, 0x5b, 0x3a, 0x69, 0x2c, 0xc6, 0x2e, 0xe6, 0x5c, 0x30, 0x3e, 0xce, 0x1c,
0x31, 0x02, 0xd9, 0x90, 0xe1, 0x67, 0x47, 0xa4, 0x01, 0x45, 0xce, 0x50, 0x28, 0xd9, 0x30, 0xf1,
0xbe, 0xd5, 0xeb, 0xbe, 0x71, 0xa8, 0x46, 0xbd, 0x47, 0x85, 0xb0, 0xdc, 0x3f, 0x2d, 0x21, 0xdc,
0x3f, 0x25, 0x86, 0x6d, 0x5b, 0xfa, 0xd9, 0xe7, 0x0d, 0x5b, 0xe0, 0xc3, 0x97, 0x5e, 0x32, 0x81,
0x9a, 0xab, 0xe6, 0x41, 0x98, 0x24, 0xa7, 0x14, 0xd5, 0xfc, 0x7c, 0xd2, 0xc0, 0x3c, 0x88, 0x53,
0x1a, 0x8c, 0xf1, 0xed, 0xb3, 0xef, 0xd9, 0x22, 0x83, 0x54, 0x6a, 0x16, 0x44, 0xfa, 0xe9, 0xb4,
0x6e, 0xf4, 0xb5, 0x72, 0x96, 0x2f, 0xdf, 0x60, 0x87, 0xe1, 0xc7, 0x89, 0x1a, 0xaa, 0x9c, 0x9f,
0x03, 0xab, 0xd1, 0x17, 0x89, 0xdf, 0x66, 0xc5, 0x0e, 0x8d, 0x9b, 0x68, 0xa5, 0x53, 0x26, 0x20,
0xbf, 0x6a, 0x06, 0x4d, 0x33, 0x96, 0x56, 0x6c, 0xc1, 0x58, 0xa5, 0xe1, 0xbb, 0x88, 0x6e, 0x03,
0xd8, 0xd9, 0x39, 0x07, 0x42, 0x5a, 0xf5, 0xd9, 0xc2, 0x36, 0x13, 0x55, 0xd8, 0xa0, 0x9d, 0x6a,
0x14, 0x26, 0x14, 0x2d, 0x23, 0x1e, 0x67, 0x8f, 0x7b, 0x7b, 0xf6, 0x48, 0x52, 0x62, 0x62, 0xde,
0x55, 0x6d, 0x1c, 0xb1, 0xc7, 0x48, 0x1a, 0x6a, 0xad, 0x57, 0xae, 0x2d, 0x56, 0x36, 0x6d, 0x6a,
0xa9, 0x45, 0x91, 0x13, 0x37, 0x2c, 0xa0, 0xe7, 0xd6, 0x82, 0x00, 0x83, 0xc2, 0xda, 0xe7, 0x9a,
0x82, 0xd0, 0x72, 0xf4, 0x6b, 0x46, 0xab, 0xa6, 0x41, 0x77, 0x97, 0x57, 0xab, 0xbb, 0xc1, 0xae,
0xd1, 0x81, 0xfc, 0xdd, 0x15, 0x13, 0xfd, 0x74, 0x2a, 0x86, 0xd4, 0x7b, 0x73, 0x31, 0x24, 0x30,
0xfd, 0xa3, 0x60, 0xf8, 0x86, 0xc0, 0x8f, 0x91, 0x1a, 0x57, 0x60, 0xf2, 0x45, 0x0c, 0xa9, 0x1b,
0x8a, 0x96, 0x5f, 0x35, 0x6a, 0x5b, 0x50, 0x44, 0x71, 0xc7, 0xf2, 0x0b, 0x56, 0xde, 0x41, 0x27,
0xf5, 0x22, 0x9f, 0x86, 0x39, 0x2e, 0xbf, 0x5e, 0xff, 0x92, 0x83, 0x1e, 0x34, 0x66, 0xb5, 0x0e,
0xd0, 0xd0, 0x93, 0x4d, 0x3b, 0xfa, 0x64, 0xbe, 0xd7, 0x9d, 0xd9, 0xdb, 0xc9, 0xf2, 0x38, 0x5b,
0xc7, 0xe7, 0xf6, 0xee, 0x4a, 0x8e, 0x8e, 0x85, 0x88, 0xdf, 0xde, 0x58, 0x77, 0x89, 0x44, 0x42,
0xc2, 0x6e, 0x9e, 0x24, 0xc8, 0x1d, 0x30, 0x2d, 0xab, 0x31, 0xb4, 0xe8, 0xa0, 0xea, 0xdb, 0x47,
0x35, 0xea, 0x87, 0x40, 0x71, 0xdb, 0x04, 0xce, 0xdc, 0xb7, 0xec, 0xc5, 0xe6, 0x7a, 0xd6, 0xe9,
0x0d, 0xdb, 0xe4, 0xba, 0x57, 0xee, 0x55, 0xba, 0x57, 0x94, 0x72, 0x1d, 0xd8, 0x52, 0xa2, 0x05,
0x1b, 0x8a, 0xb4, 0x40, 0x90, 0xf2, 0xc5, 0x8f, 0x10, 0xa9, 0xf7, 0xe2, 0x9e, 0xc2, 0x90, 0x2c,
0x14, 0x49, 0x5b, 0x46, 0x96, 0x4e, 0xbc, 0x4d, 0xe3, 0xc4, 0xb0, 0x09, 0x92, 0x2e, 0x5e, 0xd5,
0x71, 0xbb, 0x7a, 0xec, 0x07, 0x50, 0xaf, 0xfe, 0xfe, 0x1c, 0x1a, 0xc6, 0x35, 0xd8, 0x3c, 0x6a,
0xe5, 0x1c, 0x6f, 0x6b, 0x99, 0x46, 0xb9, 0xb9, 0x58, 0xab, 0x59, 0x7f, 0x44, 0x0b, 0x5c, 0x0f,
0x6a, 0x80, 0x4b, 0xa1, 0x06, 0x64, 0x84, 0x1c, 0xbe, 0x6e, 0x45, 0x02, 0xf6, 0x27, 0x89, 0x85,
0x29, 0xd1, 0x1e, 0x92, 0x6c, 0x7b, 0x64, 0x09, 0x9b, 0x24, 0x54, 0x39, 0x62, 0x92, 0xde, 0x82,
0x9e, 0xd0, 0x6c, 0xd9, 0x6e, 0xd8, 0x26, 0x20, 0xb6, 0x58, 0x5d, 0x68, 0xf2, 0xda, 0x99, 0x3e,
0xd9, 0xb1, 0x11, 0x3d, 0x33, 0xe4, 0xac, 0x07, 0x7f, 0xac, 0xcf, 0x7b, 0x34, 0x5f, 0xc7, 0xf7,
0x54, 0xee, 0xdc, 0x17, 0x15, 0x67, 0x45, 0x44, 0x88, 0xfd, 0x39, 0x59, 0x81, 0x4d, 0x10, 0x2a,
0x1c, 0xc2, 0xa8, 0x77, 0xab, 0xe3, 0xe5, 0x63, 0x2d, 0x06, 0x62, 0x70, 0x12, 0xda, 0xe3, 0x65,
0xaf, 0xab, 0x4b, 0xd1, 0xc9, 0x62, 0x0e, 0x17, 0xfb, 0x47, 0x0e, 0x87, 0xbf, 0x05, 0xb2, 0x84,
0xa9, 0x89, 0xc7, 0x1c, 0x31, 0xf6, 0x51, 0x11, 0x02, 0x31, 0xdc, 0x30, 0x83, 0xb1, 0x19, 0x22,
0x03, 0xaf, 0x11, 0x34, 0x5c, 0x7d, 0x7b, 0xf6, 0x46, 0xbe, 0x35, 0xb2, 0x1c, 0x46, 0x62, 0xa9,
0x2d, 0xb6, 0xa9, 0x8d, 0x59, 0x2e, 0x4a, 0x4d, 0x0a, 0x83, 0xbd, 0xfe, 0xfd, 0x7e, 0x06, 0xbd,
0xa5, 0x8b, 0xe5, 0x31, 0xdc, 0xc0, 0xe7, 0xf6, 0x87, 0x23, 0x51, 0xb1, 0xab, 0x45, 0x96, 0xc3,
0xe8, 0x5c, 0x80, 0x22, 0x8f, 0xd0, 0x4f, 0xb8, 0x7b, 0x94, 0xaa, 0xed, 0x1c, 0x61, 0xaa, 0x74,
0x23, 0x0e, 0x1e, 0xae, 0x82, 0x50, 0x11, 0xff, 0x40, 0x68, 0x40, 0x56, 0xa8, 0x2c, 0x36, 0xce,
0x5f, 0x96, 0x10, 0x22, 0x40, 0x22, 0x99, 0xab, 0x45, 0x96, 0xfb, 0x0f, 0xce, 0x69, 0xf1, 0xeb,
0x07, 0xe7, 0x84, 0x0d, 0xf8, 0x07, 0x8a, 0xc1, 0xb2, 0x78, 0x5f, 0x51, 0x46, 0x42, 0x10, 0x44,
0x84, 0x52, 0xe1, 0x3b, 0xff, 0x07, 0xf9, 0xb7, 0xf1, 0x0f, 0x36, 0x8a, 0x5c, 0x27, 0xe1, 0x16,
0x56, 0x17, 0x00, 0x00, 0x00, 0x00, 0x49, 0x45, 0x4e, 0x44, 0xae, 0x42, 0x60, 0x82,
};
const BITMAP_OPAQUE change_entry_orient_xpm[1] = {{ png, sizeof( png ), "change_entry_orient_xpm" }};

View File

@ -0,0 +1,49 @@
/* Do not modify this file, it was automatically generated by the
* PNG2cpp CMake script, using a *.png file as input.
*/
#include <bitmaps.h>
static const unsigned char png[] = {
0x89, 0x50, 0x4e, 0x47, 0x0d, 0x0a, 0x1a, 0x0a, 0x00, 0x00, 0x00, 0x0d, 0x49, 0x48, 0x44, 0x52,
0x00, 0x00, 0x00, 0x1a, 0x00, 0x00, 0x00, 0x1a, 0x08, 0x06, 0x00, 0x00, 0x00, 0xa9, 0x4a, 0x4c,
0xce, 0x00, 0x00, 0x01, 0xfb, 0x49, 0x44, 0x41, 0x54, 0x48, 0xc7, 0xb5, 0x96, 0xbf, 0x4f, 0xc2,
0x40, 0x14, 0xc7, 0x1f, 0x09, 0x03, 0x9b, 0x81, 0xc4, 0x81, 0xc9, 0xc4, 0xc4, 0xc1, 0xd9, 0x91,
0x89, 0xd9, 0x9d, 0x85, 0x81, 0x8d, 0x45, 0xc2, 0xc4, 0x1f, 0xd0, 0x56, 0xb1, 0x26, 0x24, 0x18,
0x35, 0x21, 0xc0, 0xc6, 0xc4, 0x1f, 0x20, 0xb3, 0x09, 0x13, 0x1b, 0x83, 0x16, 0x9d, 0x9c, 0xdc,
0x64, 0x73, 0x80, 0x41, 0xe3, 0xf9, 0xde, 0xf5, 0xae, 0xbc, 0x6a, 0xdb, 0x94, 0x8b, 0x0c, 0xdf,
0x5e, 0xd2, 0xbb, 0xdc, 0xa7, 0xdf, 0xf7, 0xe3, 0x7a, 0x20, 0x84, 0x80, 0x5d, 0xaa, 0xdf, 0xef,
0x1f, 0xd1, 0xb8, 0x53, 0xc8, 0x60, 0x30, 0xb8, 0x46, 0x89, 0x5e, 0xaf, 0x77, 0x28, 0x5f, 0x80,
0x0d, 0x67, 0x60, 0xc1, 0x2b, 0xaa, 0xc1, 0x17, 0x3e, 0x02, 0xe4, 0x9f, 0x00, 0x66, 0xa4, 0x67,
0x80, 0xa2, 0x09, 0x84, 0xc6, 0xc0, 0x11, 0x02, 0x96, 0x28, 0x81, 0xfa, 0x86, 0x73, 0x38, 0xd6,
0x8b, 0x11, 0xd0, 0xf4, 0x70, 0x89, 0xd2, 0xc8, 0x14, 0xc2, 0x41, 0x13, 0x05, 0x22, 0x0d, 0xf5,
0x24, 0x6e, 0x5e, 0xd2, 0xa0, 0x05, 0xc0, 0x8a, 0x1c, 0x9a, 0x40, 0x36, 0x20, 0x1b, 0xca, 0x0c,
0xb4, 0x86, 0x4b, 0xd8, 0x67, 0x30, 0x4f, 0xc3, 0xc8, 0xa1, 0x09, 0x24, 0x54, 0x0c, 0x08, 0x98,
0x33, 0x98, 0x15, 0x13, 0x3e, 0xcf, 0x04, 0x12, 0x06, 0xd9, 0x50, 0x65, 0xa0, 0x77, 0x54, 0x4e,
0x17, 0x04, 0x85, 0x8d, 0xc1, 0xfe, 0xe8, 0xbe, 0x52, 0x21, 0x80, 0xb8, 0x73, 0x5d, 0x61, 0x59,
0xd6, 0x6f, 0x2d, 0x50, 0x05, 0xee, 0x28, 0x8b, 0x7a, 0x63, 0xb0, 0x3a, 0x0b, 0xdf, 0xc8, 0x10,
0x22, 0x65, 0xdb, 0x76, 0x2d, 0x6c, 0xcf, 0x82, 0x16, 0x03, 0xbd, 0xe0, 0x33, 0x43, 0xef, 0xa9,
0xb4, 0xa9, 0xc4, 0x13, 0x20, 0x5f, 0x71, 0x10, 0xd4, 0xb4, 0xdd, 0x6e, 0x17, 0xc3, 0xa0, 0x2b,
0xd8, 0x43, 0xc0, 0x47, 0x00, 0xb3, 0xe1, 0xd4, 0x34, 0x27, 0xb1, 0x39, 0x62, 0xae, 0xba, 0xcc,
0xd5, 0xc3, 0x7f, 0x40, 0xa2, 0x41, 0x17, 0x70, 0x80, 0x80, 0x4f, 0x06, 0x0b, 0xa9, 0xd2, 0xf5,
0xc3, 0x45, 0x63, 0xe4, 0x1a, 0x07, 0x4e, 0x52, 0x81, 0x94, 0xab, 0xb1, 0x11, 0xc4, 0xd7, 0x38,
0x3d, 0x08, 0xbf, 0xca, 0x10, 0x22, 0x64, 0x34, 0x30, 0x2a, 0xa9, 0x40, 0x26, 0x39, 0xa1, 0x7c,
0x32, 0x58, 0x77, 0x6b, 0x50, 0xda, 0xc4, 0x53, 0x85, 0x32, 0xd0, 0x07, 0x55, 0x70, 0x68, 0x5e,
0xf5, 0xc8, 0x34, 0xa9, 0x19, 0x6f, 0x3a, 0x9d, 0x75, 0x4c, 0x8f, 0xcc, 0xa8, 0x47, 0xfc, 0x2f,
0x86, 0x8c, 0xec, 0xbd, 0x0d, 0xac, 0x15, 0x02, 0xe1, 0x86, 0xb5, 0x24, 0xc8, 0x6d, 0x42, 0xc7,
0x2b, 0x8d, 0x58, 0xf8, 0xea, 0x0c, 0x44, 0xa7, 0x4c, 0x36, 0x98, 0xc3, 0x73, 0xac, 0x80, 0x1b,
0x2f, 0x0c, 0x21, 0xa4, 0x95, 0xeb, 0xba, 0x79, 0x05, 0xca, 0xa9, 0x73, 0x52, 0x37, 0x7c, 0x35,
0x36, 0x47, 0x69, 0x73, 0x82, 0x00, 0x8f, 0xc1, 0x9a, 0xcc, 0x95, 0xc5, 0x5c, 0xcd, 0x23, 0x41,
0xdb, 0x74, 0x3c, 0x6d, 0xce, 0x40, 0xc1, 0xef, 0x83, 0xfe, 0x65, 0xf2, 0x9f, 0xb6, 0x71, 0x55,
0x0e, 0x81, 0xb6, 0x3d, 0x56, 0x28, 0x5c, 0x14, 0x36, 0x0d, 0x73, 0x1c, 0xa7, 0xc4, 0x5c, 0x0d,
0x99, 0xab, 0x49, 0x00, 0x32, 0x39, 0xbb, 0x94, 0xab, 0x51, 0x64, 0xf8, 0xf0, 0xde, 0x21, 0xef,
0x1f, 0x3e, 0x68, 0x29, 0xdf, 0xd1, 0x55, 0xc8, 0x04, 0x42, 0xa2, 0xd2, 0xa6, 0x12, 0x27, 0xe9,
0x82, 0x60, 0xae, 0x1a, 0xf2, 0x66, 0x85, 0x37, 0xac, 0xc0, 0x91, 0xbe, 0xe4, 0xed, 0x52, 0x3f,
0xd1, 0xb7, 0x63, 0x3d, 0x80, 0xd8, 0x20, 0x6d, 0x00, 0x00, 0x00, 0x00, 0x49, 0x45, 0x4e, 0x44,
0xae, 0x42, 0x60, 0x82,
};
const BITMAP_OPAQUE contrast_mode_xpm[1] = {{ png, sizeof( png ), "contrast_mode_xpm" }};
//EOF

View File

@ -8,107 +8,80 @@
static const unsigned char png[] = {
0x89, 0x50, 0x4e, 0x47, 0x0d, 0x0a, 0x1a, 0x0a, 0x00, 0x00, 0x00, 0x0d, 0x49, 0x48, 0x44, 0x52,
0x00, 0x00, 0x00, 0x1a, 0x00, 0x00, 0x00, 0x1a, 0x08, 0x06, 0x00, 0x00, 0x00, 0xa9, 0x4a, 0x4c,
0xce, 0x00, 0x00, 0x06, 0x31, 0x49, 0x44, 0x41, 0x54, 0x48, 0xc7, 0x9d, 0x56, 0x0b, 0x4c, 0x53,
0x57, 0x18, 0x3e, 0x1b, 0x0e, 0x08, 0xce, 0xe8, 0xd4, 0xf8, 0x42, 0x9d, 0x0e, 0xd0, 0x6d, 0x3e,
0x0a, 0x53, 0x13, 0x9d, 0xd1, 0xe9, 0x26, 0x4e, 0x17, 0xb3, 0xa8, 0x68, 0xdc, 0x82, 0xba, 0x38,
0xe6, 0x32, 0x25, 0xc6, 0x6c, 0x03, 0xd9, 0xa2, 0xc4, 0xf7, 0x8c, 0x93, 0x81, 0x43, 0xe5, 0xb5,
0x49, 0x14, 0x98, 0x15, 0x42, 0x01, 0x01, 0x2d, 0x58, 0xb0, 0xbc, 0xc1, 0x42, 0x2d, 0xcf, 0x22,
0x50, 0xd4, 0xb2, 0x52, 0x5a, 0x68, 0xcb, 0xa3, 0xc8, 0xb3, 0xe5, 0xdb, 0x7f, 0x3b, 0xd8, 0x18,
0x45, 0xc5, 0xfd, 0xc9, 0x97, 0xf6, 0xde, 0x7b, 0xee, 0xf9, 0xee, 0xf7, 0x9f, 0xf3, 0xff, 0xdf,
0x61, 0x00, 0xd8, 0x58, 0x21, 0x95, 0x4a, 0x1d, 0x44, 0x22, 0x91, 0x6f, 0x4a, 0x4a, 0x0a, 0x5f,
0x20, 0x10, 0x14, 0x85, 0x85, 0x85, 0x49, 0xc3, 0xc3, 0xc3, 0xc5, 0x01, 0x01, 0x01, 0x1f, 0xbf,
0xe8, 0xdd, 0x31, 0x11, 0x54, 0x54, 0x54, 0x38, 0x16, 0x17, 0x17, 0x5f, 0x2f, 0x2d, 0x2d, 0x55,
0x3e, 0x78, 0xf0, 0x00, 0xf9, 0xf9, 0x79, 0xe0, 0xf3, 0xf9, 0xb8, 0x74, 0xe9, 0x12, 0x4e, 0x9f,
0x3e, 0xcd, 0x41, 0x47, 0xd7, 0x3b, 0xff, 0x37, 0x11, 0x17, 0x0a, 0x85, 0xe2, 0x54, 0x43, 0x43,
0x83, 0x46, 0xaf, 0xd7, 0xa3, 0xa5, 0xa5, 0x05, 0x74, 0x8d, 0xc2, 0xc2, 0x42, 0x90, 0x2a, 0x04,
0x07, 0x07, 0xe3, 0xec, 0xd9, 0xb3, 0xf0, 0xf3, 0xf3, 0xc3, 0xad, 0x5b, 0xb7, 0x1e, 0x70, 0xe3,
0x5f, 0x9a, 0xa8, 0xa4, 0xa4, 0x64, 0xba, 0x52, 0xa9, 0xcc, 0xd4, 0xeb, 0x75, 0xfd, 0x14, 0xe8,
0xe9, 0xe9, 0x81, 0x4e, 0xa7, 0x43, 0x4d, 0x4d, 0x0d, 0x0a, 0x0a, 0x0a, 0x90, 0x9a, 0x9a, 0x0a,
0x4a, 0x1b, 0xce, 0x9c, 0x39, 0x83, 0xa3, 0x47, 0x8f, 0x42, 0x22, 0x91, 0xf4, 0x13, 0x31, 0xef,
0xa5, 0x88, 0xb2, 0xb3, 0xb3, 0x27, 0xa9, 0xd5, 0x8d, 0xe5, 0x9c, 0x8a, 0x21, 0x92, 0xf6, 0xf6,
0x76, 0xa8, 0x54, 0x2a, 0x54, 0x55, 0x55, 0x51, 0xea, 0xf2, 0x39, 0x05, 0x88, 0x8c, 0x8c, 0xc4,
0xc9, 0x93, 0x27, 0x11, 0x1b, 0x1b, 0x0b, 0xfa, 0x28, 0x94, 0x95, 0x95, 0x25, 0x92, 0xa8, 0x57,
0xc6, 0x44, 0x24, 0x14, 0x0a, 0xed, 0x6a, 0x6a, 0x6b, 0x4a, 0xaa, 0xab, 0xab, 0x2d, 0xa9, 0x32,
0x18, 0x0c, 0xe0, 0x08, 0x1b, 0x1b, 0x1b, 0x51, 0x57, 0x57, 0x07, 0x99, 0x4c, 0x06, 0xb1, 0x58,
0x0c, 0xda, 0x0c, 0xb8, 0x7a, 0xf5, 0x2a, 0x42, 0x43, 0x43, 0xc1, 0x8d, 0x55, 0xab, 0xd5, 0xa0,
0x14, 0x0f, 0xdc, 0xb8, 0x71, 0x63, 0xc3, 0x98, 0x88, 0x68, 0xb1, 0x7f, 0x49, 0x49, 0x10, 0x40,
0x4c, 0x93, 0x64, 0x05, 0x06, 0xe2, 0xce, 0x91, 0x23, 0x10, 0x1c, 0x3c, 0x88, 0x5b, 0xfe, 0xfe,
0xb8, 0x1d, 0x14, 0x04, 0x61, 0x54, 0x14, 0xd2, 0xd3, 0xd3, 0x2d, 0x2a, 0xa2, 0xa3, 0xa3, 0x51,
0x5f, 0x5f, 0x0f, 0x8d, 0x46, 0x83, 0xe6, 0xe6, 0x66, 0x34, 0x29, 0xef, 0xa3, 0x5e, 0x1a, 0x51,
0x4e, 0xaa, 0x6c, 0x9e, 0x4b, 0xc4, 0xc9, 0x4e, 0xf7, 0x3b, 0xa2, 0x15, 0x38, 0x38, 0x20, 0x9a,
0x1e, 0x85, 0x12, 0x2e, 0x10, 0x4e, 0x10, 0x7c, 0x08, 0x07, 0x08, 0x7b, 0x08, 0x5f, 0x4c, 0x98,
0x80, 0x20, 0x4f, 0x4f, 0x3c, 0x79, 0xf2, 0xe4, 0x1f, 0xd5, 0xdc, 0xfa, 0x75, 0x28, 0x42, 0xa0,
0x15, 0xaf, 0xa6, 0x0f, 0xb9, 0xb3, 0xfb, 0x45, 0x44, 0xe3, 0xa2, 0x66, 0xcf, 0xee, 0x17, 0xd2,
0xed, 0x04, 0x42, 0xd4, 0x28, 0x64, 0xde, 0x36, 0x36, 0x08, 0xde, 0xb6, 0x0d, 0xcd, 0x4d, 0x4d,
0xe8, 0xec, 0xec, 0x84, 0xd1, 0x68, 0x44, 0x5b, 0x5b, 0x1b, 0x3a, 0x74, 0xd5, 0x30, 0x19, 0xb2,
0x61, 0x94, 0x79, 0xa2, 0xa1, 0xe4, 0xbc, 0x7a, 0xdd, 0xba, 0x75, 0xf6, 0xcf, 0x23, 0x62, 0xa1,
0x33, 0x66, 0x58, 0x88, 0x46, 0x92, 0x5d, 0x24, 0x15, 0x57, 0x77, 0xee, 0x84, 0x2c, 0x2b, 0xcb,
0x32, 0xb9, 0xc9, 0x64, 0x82, 0xd9, 0x6c, 0x46, 0x77, 0x77, 0x37, 0x8c, 0x7a, 0x05, 0xcc, 0x6d,
0x85, 0x80, 0xa9, 0x03, 0x7d, 0xaa, 0x48, 0xe8, 0xf3, 0x3e, 0x84, 0x38, 0x33, 0xf9, 0xc7, 0xe7,
0xae, 0xd1, 0xe5, 0xa5, 0x4b, 0x85, 0xa2, 0x89, 0x13, 0x91, 0x6c, 0x67, 0x87, 0x08, 0x1e, 0x0f,
0x02, 0x2f, 0x2f, 0x64, 0x47, 0x44, 0xa0, 0x9e, 0xb6, 0x35, 0x37, 0x69, 0x5f, 0x5f, 0x1f, 0x86,
0x47, 0xb7, 0xbe, 0x18, 0x5d, 0x8a, 0x9f, 0x61, 0xd2, 0x67, 0x00, 0x3d, 0x0d, 0x30, 0x77, 0x94,
0xe0, 0xa9, 0xfc, 0x5b, 0x34, 0x14, 0xf9, 0x18, 0x7d, 0x7d, 0x7d, 0xa7, 0x3e, 0x93, 0xe8, 0x30,
0x63, 0xbb, 0x72, 0x16, 0x2c, 0x40, 0xda, 0x85, 0x0b, 0x96, 0x6d, 0xdd, 0xdb, 0xdb, 0x6b, 0x01,
0xa7, 0x60, 0x78, 0x0c, 0xf4, 0x1b, 0xd1, 0x5a, 0x7a, 0x08, 0xf2, 0xc4, 0xe5, 0x68, 0x2f, 0xf3,
0x46, 0xaf, 0xea, 0x1a, 0x06, 0xda, 0x25, 0x18, 0x78, 0x2a, 0x47, 0x5f, 0xe3, 0x75, 0x18, 0x0a,
0x36, 0xa2, 0x40, 0x1c, 0x1b, 0x36, 0x54, 0xc4, 0x56, 0x44, 0x9b, 0x18, 0x5b, 0x91, 0x38, 0x7f,
0x7e, 0x2b, 0xb5, 0x9d, 0x2e, 0x2e, 0x45, 0xa3, 0x85, 0x59, 0x9f, 0x86, 0x8e, 0x3c, 0x1e, 0x34,
0x29, 0xf6, 0x90, 0xc5, 0xcc, 0x80, 0xae, 0x60, 0x0b, 0x9e, 0xd6, 0x9e, 0x82, 0x49, 0x9b, 0x04,
0x74, 0x48, 0x2c, 0xcf, 0x9f, 0xca, 0xbf, 0x83, 0x32, 0x67, 0x6f, 0xdf, 0xb9, 0x73, 0xe7, 0x5c,
0x46, 0x25, 0x5a, 0xcb, 0x98, 0x5b, 0xac, 0x93, 0x93, 0x2a, 0x23, 0x23, 0x23, 0x92, 0xea, 0xc2,
0x2a, 0x55, 0xe6, 0xb6, 0x02, 0x0c, 0x94, 0x2c, 0x42, 0x57, 0xce, 0x1c, 0xe8, 0xd3, 0x26, 0x41,
0x95, 0xf8, 0x2a, 0x64, 0xb1, 0x3c, 0xb4, 0xc9, 0xbc, 0xd0, 0xf3, 0xe4, 0x12, 0xcc, 0xba, 0xdb,
0x30, 0xe9, 0xee, 0xa2, 0xab, 0xfe, 0x22, 0x5a, 0x72, 0xd7, 0xa3, 0x50, 0x14, 0x22, 0xe4, 0x76,
0xb3, 0x15, 0xd1, 0x2a, 0xc6, 0x96, 0x24, 0x2c, 0x5a, 0xa4, 0x3e, 0x74, 0xe8, 0xd0, 0x5c, 0x6a,
0xa2, 0x06, 0x6e, 0xfb, 0x8e, 0x0c, 0x53, 0xd5, 0x67, 0xe8, 0x2b, 0x72, 0x41, 0xc7, 0xbd, 0xe9,
0xd0, 0xa6, 0x3a, 0xa0, 0x8a, 0x3f, 0x15, 0x9a, 0xec, 0x8f, 0xd0, 0x59, 0xe5, 0x83, 0x6e, 0x65,
0x38, 0x7a, 0xd5, 0x02, 0x74, 0x3e, 0xfe, 0x0d, 0xcd, 0x92, 0x2f, 0x51, 0x2b, 0xdc, 0x30, 0x70,
0xf9, 0xf2, 0xe5, 0x35, 0x56, 0x44, 0xef, 0x31, 0xf6, 0x4e, 0x02, 0x8f, 0xa7, 0xe5, 0x72, 0x4b,
0x6d, 0xe6, 0x7c, 0x6d, 0x6d, 0x2d, 0x46, 0xa6, 0xd0, 0x6c, 0x2c, 0x07, 0xa4, 0x4b, 0xd0, 0x9d,
0xfb, 0x26, 0x0c, 0x77, 0xdf, 0x40, 0x63, 0xd2, 0x38, 0x14, 0x5c, 0x5f, 0x80, 0x96, 0x22, 0x0f,
0xb4, 0xcb, 0xfd, 0xd1, 0xf9, 0x28, 0x84, 0x10, 0x01, 0x5d, 0x99, 0x1f, 0x1e, 0xa7, 0xbd, 0x8f,
0x58, 0xfe, 0xb5, 0x78, 0x2b, 0xa2, 0xc5, 0x8c, 0x39, 0xc5, 0xf3, 0x78, 0x7a, 0xee, 0xbf, 0xbb,
0xbb, 0xfb, 0x44, 0xea, 0xd4, 0x7f, 0x52, 0x58, 0xa5, 0xd0, 0xa4, 0xf0, 0x43, 0xff, 0xfd, 0x05,
0x30, 0x8a, 0x67, 0xa2, 0xf9, 0xf6, 0x78, 0x54, 0xf3, 0x1d, 0x50, 0x9f, 0xba, 0x1c, 0xda, 0xfb,
0x7b, 0x61, 0xa8, 0xf0, 0x47, 0x6b, 0x75, 0x00, 0x9a, 0x4b, 0xfd, 0x51, 0x29, 0x3e, 0x06, 0x6a,
0x4b, 0x79, 0xa3, 0x11, 0xcd, 0xb9, 0xb9, 0x78, 0x71, 0xeb, 0xd0, 0x35, 0xf9, 0xcc, 0xf7, 0x94,
0x42, 0x8c, 0x4c, 0xe1, 0x40, 0x6f, 0x33, 0x06, 0x64, 0x2b, 0xd0, 0x93, 0x37, 0x0f, 0xba, 0xf4,
0x29, 0x50, 0x0a, 0x5e, 0x43, 0x66, 0xc8, 0x0c, 0x28, 0x33, 0x3e, 0x40, 0x53, 0xa1, 0x17, 0xb4,
0xd2, 0x1f, 0xa0, 0x96, 0x9e, 0x80, 0x28, 0x3d, 0x05, 0x21, 0x21, 0x21, 0x57, 0xac, 0x88, 0xa6,
0x33, 0x36, 0xed, 0x0f, 0x67, 0xe7, 0xb6, 0x61, 0x45, 0x6c, 0x4b, 0xae, 0x5a, 0x25, 0x97, 0xcb,
0xad, 0x52, 0x68, 0x52, 0x85, 0xc2, 0x24, 0x79, 0x1b, 0x06, 0xd1, 0x4c, 0xa8, 0x92, 0x26, 0x40,
0x1e, 0xc3, 0x50, 0x1c, 0xf3, 0x16, 0x1e, 0xdd, 0xdd, 0x88, 0xc7, 0xb9, 0x07, 0x50, 0x94, 0x2f,
0x42, 0x7c, 0x7c, 0x7c, 0xbb, 0xa7, 0xa7, 0xa7, 0xd3, 0x68, 0x66, 0xf7, 0x7a, 0x98, 0xa3, 0xa3,
0x66, 0xf8, 0xbd, 0x2b, 0x57, 0xae, 0xec, 0xce, 0xa2, 0x8e, 0xc0, 0x75, 0x6f, 0xae, 0x68, 0xff,
0x5d, 0xac, 0x5e, 0x98, 0xcb, 0xdc, 0xd1, 0x26, 0x9e, 0x0f, 0x75, 0xea, 0x14, 0xd4, 0xde, 0xb4,
0x83, 0x30, 0xd0, 0x0e, 0x72, 0xe1, 0x0e, 0x94, 0x49, 0xc5, 0x5c, 0xf3, 0xed, 0x21, 0xbf, 0xfa,
0x9a, 0x3d, 0xcb, 0x11, 0x3f, 0xb5, 0xb5, 0x5d, 0x3a, 0x82, 0xdc, 0x26, 0x2e, 0x2e, 0xae, 0x30,
0x27, 0x27, 0xc7, 0xd2, 0xad, 0xb9, 0x1e, 0xc7, 0x15, 0xb3, 0x05, 0x4d, 0x29, 0x30, 0xe6, 0x2e,
0x84, 0xe6, 0xce, 0x2c, 0xd4, 0xc5, 0x4f, 0x43, 0x4d, 0xfe, 0x19, 0x50, 0x0d, 0x82, 0xc6, 0xf6,
0xd1, 0x59, 0xe2, 0xe8, 0x90, 0x3f, 0x8d, 0xf9, 0x60, 0x42, 0xe7, 0x82, 0x8d, 0x64, 0x0d, 0x26,
0x32, 0x45, 0x8b, 0x9d, 0x6b, 0xb5, 0x5a, 0x8b, 0x35, 0x70, 0xbf, 0xad, 0x92, 0x1d, 0x50, 0x67,
0x6f, 0x41, 0x4d, 0x79, 0xa6, 0xc5, 0xaf, 0xa8, 0x06, 0x95, 0xc7, 0x8f, 0x1f, 0xf7, 0x24, 0x92,
0x57, 0xad, 0x5a, 0xd0, 0x7a, 0x7b, 0xfb, 0x79, 0xfe, 0x2e, 0x2e, 0x47, 0xc2, 0xdd, 0xdd, 0x7f,
0x8d, 0xdb, 0xb3, 0x27, 0x36, 0xcd, 0xcf, 0xef, 0x76, 0xd2, 0xe1, 0xc3, 0xd1, 0xa1, 0x5b, 0xb6,
0xfc, 0xe4, 0xed, 0xe6, 0xb6, 0x8a, 0xfb, 0x32, 0x4a, 0xa1, 0x88, 0x76, 0x10, 0x32, 0x33, 0x33,
0x51, 0x59, 0x59, 0x89, 0x87, 0x0f, 0x1f, 0x5a, 0x4c, 0xaf, 0xaa, 0x2c, 0x17, 0x52, 0x69, 0x31,
0xa7, 0xa2, 0x8b, 0x3c, 0x2a, 0xd1, 0xc3, 0xc3, 0xc3, 0xc9, 0x6a, 0x49, 0xbe, 0x61, 0x6c, 0x75,
0x20, 0x63, 0x77, 0xf2, 0x3c, 0x3c, 0x3a, 0x14, 0x64, 0xcb, 0xf5, 0xa7, 0x4e, 0x41, 0x71, 0xe2,
0x04, 0xea, 0xc8, 0xe8, 0xea, 0x8e, 0x1d, 0x43, 0x8d, 0x8f, 0x0f, 0x44, 0xae, 0xae, 0x46, 0x1a,
0x73, 0xef, 0xf3, 0x85, 0x0b, 0x3d, 0x48, 0xd9, 0x43, 0xce, 0x59, 0x93, 0x93, 0x93, 0xc1, 0xa9,
0xe3, 0xd6, 0x8e, 0x0e, 0x2a, 0x9a, 0xc8, 0xc8, 0xdf, 0x63, 0xb6, 0x6f, 0xdf, 0xbe, 0x72, 0xb8,
0x8a, 0xff, 0x10, 0x05, 0x31, 0x96, 0x9a, 0x4e, 0xc2, 0x86, 0x90, 0x33, 0x77, 0x2e, 0x8a, 0x56,
0xae, 0x84, 0x64, 0xed, 0x5a, 0x14, 0x2e, 0x5b, 0x86, 0x2c, 0x47, 0x47, 0xa4, 0xd1, 0x7d, 0xea,
0x8e, 0x0a, 0x0f, 0xc6, 0xbc, 0x27, 0x4f, 0x9e, 0xbc, 0x71, 0xeb, 0xd6, 0xad, 0x01, 0xfb, 0xf7,
0xef, 0xbf, 0xb6, 0xcf, 0x6b, 0x5f, 0x84, 0xab, 0xab, 0xab, 0x8f, 0xad, 0xad, 0xed, 0x2e, 0x22,
0xf8, 0x84, 0xb0, 0x99, 0xe0, 0x4e, 0x58, 0x43, 0x58, 0x46, 0x58, 0x48, 0x98, 0x45, 0x18, 0xcf,
0x8e, 0x33, 0x36, 0xef, 0x2c, 0x63, 0xbe, 0x17, 0xc7, 0x8d, 0xe3, 0x47, 0x39, 0x3b, 0x97, 0xf2,
0xd7, 0xac, 0xa9, 0xb8, 0xb9, 0x79, 0x73, 0x65, 0xf4, 0xa6, 0x4d, 0x92, 0x20, 0x37, 0xb7, 0x24,
0xdf, 0x99, 0x33, 0x03, 0x77, 0xd8, 0xd8, 0x7c, 0x65, 0xff, 0xf7, 0x4b, 0xce, 0x83, 0x2f, 0xbf,
0x4b, 0xa0, 0x92, 0x63, 0x4b, 0x08, 0x4b, 0x07, 0xb1, 0x78, 0xf0, 0xd9, 0xfc, 0xc1, 0xc9, 0xa7,
0x58, 0x08, 0x06, 0x6d, 0xfd, 0x2f, 0x18, 0x06, 0x2a, 0xf6, 0x89, 0xcc, 0xb8, 0x39, 0x00, 0x00,
0x00, 0x00, 0x49, 0x45, 0x4e, 0x44, 0xae, 0x42, 0x60, 0x82,
0xce, 0x00, 0x00, 0x04, 0x87, 0x49, 0x44, 0x41, 0x54, 0x48, 0xc7, 0xb5, 0x95, 0x6b, 0x4c, 0x93,
0x57, 0x18, 0xc7, 0xdb, 0x81, 0x01, 0x8c, 0x24, 0x92, 0x30, 0xa3, 0x30, 0x6e, 0x6d, 0x49, 0x8b,
0x0c, 0x58, 0x4b, 0xa1, 0xa5, 0x14, 0x44, 0xa6, 0x85, 0xf2, 0x01, 0x07, 0x03, 0x4c, 0x59, 0xb9,
0xa8, 0x80, 0x32, 0xcb, 0xe8, 0x04, 0x11, 0x06, 0x48, 0x5b, 0x2c, 0xac, 0x02, 0x03, 0x12, 0x10,
0x81, 0xc9, 0x45, 0x06, 0xde, 0x36, 0xa7, 0x21, 0x6e, 0x15, 0x33, 0x82, 0x97, 0x01, 0x0a, 0xc9,
0x2e, 0x59, 0x96, 0x6d, 0xf1, 0x83, 0xf1, 0xeb, 0x3e, 0x2c, 0x64, 0x24, 0x73, 0xa6, 0xf4, 0xbf,
0x73, 0xde, 0xd0, 0xd2, 0x42, 0x01, 0x17, 0xb5, 0xc9, 0x2f, 0x3d, 0x39, 0xe7, 0xbc, 0xcf, 0xef,
0x7d, 0xde, 0x73, 0xce, 0x73, 0x58, 0x3b, 0x4d, 0x3b, 0xa1, 0xe8, 0x53, 0xbc, 0x56, 0xa8, 0x83,
0x45, 0x1b, 0xf3, 0xf3, 0xf3, 0xaf, 0x15, 0xea, 0xd8, 0x54, 0x74, 0x77, 0xf6, 0x2e, 0xcc, 0xdf,
0x9b, 0x31, 0x37, 0x3f, 0xf7, 0xea, 0x45, 0x17, 0x26, 0x2e, 0x60, 0x7f, 0xdf, 0x7e, 0x2b, 0x49,
0xf9, 0x19, 0x4b, 0xc7, 0x02, 0x65, 0x8b, 0x61, 0x8b, 0x25, 0xb1, 0x27, 0xd1, 0xd2, 0x7b, 0xbb,
0xf7, 0xe5, 0x45, 0xd3, 0x8f, 0xa6, 0xa1, 0xbe, 0xa8, 0x06, 0x5b, 0xc7, 0xb6, 0xba, 0xeb, 0xdd,
0x27, 0x89, 0xa0, 0x82, 0x90, 0x48, 0x88, 0x27, 0x14, 0x12, 0xd9, 0x1d, 0xf2, 0x6f, 0x2d, 0x19,
0x2b, 0x79, 0x39, 0x91, 0xec, 0x9c, 0xcc, 0xe2, 0xa6, 0x77, 0x5b, 0x24, 0xc1, 0xf2, 0x00, 0xb0,
0x0d, 0x06, 0x83, 0x44, 0xa7, 0xd3, 0x69, 0x28, 0xb4, 0x4d, 0xfb, 0xc8, 0x98, 0x9a, 0xbe, 0xc8,
0xff, 0x91, 0x39, 0x89, 0xea, 0xaf, 0xd7, 0xd3, 0x4c, 0x96, 0x48, 0x20, 0x69, 0x63, 0x63, 0x23,
0x97, 0x04, 0x9f, 0x22, 0x60, 0x15, 0x53, 0x74, 0x8c, 0xcc, 0x29, 0xa0, 0x32, 0x59, 0xb7, 0xcc,
0x69, 0x77, 0x25, 0x18, 0x53, 0xd1, 0x70, 0xb1, 0x79, 0x7d, 0x11, 0x5d, 0x70, 0xaf, 0x46, 0x2f,
0x0b, 0x79, 0xd8, 0x68, 0x32, 0x99, 0xbc, 0x49, 0xc0, 0x27, 0x2e, 0x24, 0x36, 0x9e, 0xd0, 0x39,
0x44, 0x96, 0x45, 0xb8, 0x44, 0xb8, 0x4c, 0xf1, 0x56, 0x85, 0x3d, 0xf4, 0x17, 0x67, 0x2f, 0xf9,
0xc9, 0x0e, 0x60, 0xea, 0xc1, 0x3d, 0x46, 0x30, 0x33, 0x33, 0x0b, 0xf3, 0xc4, 0xe4, 0x8a, 0xa8,
0xc7, 0xdc, 0x43, 0x17, 0xdc, 0x4a, 0xd8, 0x4e, 0x02, 0xb5, 0x38, 0x04, 0xb5, 0x10, 0xc6, 0x96,
0xb1, 0x38, 0xf4, 0xb7, 0x90, 0xcf, 0xc8, 0xa2, 0x90, 0x1f, 0xdb, 0x5f, 0x7c, 0xb0, 0x9d, 0x27,
0x2f, 0x5c, 0xac, 0xeb, 0x9b, 0x81, 0x24, 0xfb, 0x24, 0x14, 0x9a, 0x62, 0x4c, 0x4e, 0xdd, 0xc3,
0xde, 0xcc, 0x32, 0x94, 0xd5, 0xb4, 0xae, 0x88, 0xca, 0xaf, 0x94, 0xc3, 0xc3, 0xe0, 0xf1, 0x94,
0x3e, 0x48, 0x82, 0xfc, 0xec, 0x10, 0xf0, 0xb0, 0x2d, 0x20, 0x6d, 0xd3, 0xbe, 0xf2, 0xea, 0x72,
0xa8, 0xca, 0x55, 0x48, 0x3d, 0x9e, 0x8a, 0xf7, 0xca, 0x32, 0x20, 0x55, 0x1e, 0x41, 0x6c, 0xfa,
0x09, 0x18, 0x47, 0x7e, 0x42, 0xeb, 0xb5, 0x3f, 0xa0, 0x1b, 0x98, 0x83, 0xbf, 0xf8, 0x7d, 0x84,
0x27, 0xe5, 0xa3, 0xb2, 0xa1, 0xc3, 0xf9, 0xd3, 0x65, 0x0e, 0x66, 0xc2, 0xdd, 0xe0, 0x6e, 0xa6,
0x8b, 0x4d, 0x82, 0x3d, 0xb3, 0x89, 0x9a, 0x9a, 0x9a, 0xde, 0xf4, 0x54, 0x7a, 0xee, 0xd9, 0xa6,
0xda, 0xd6, 0xed, 0x5b, 0xec, 0x3b, 0x25, 0xa8, 0x10, 0x20, 0xec, 0x6c, 0x18, 0x76, 0xf7, 0xef,
0x86, 0x5f, 0x91, 0x3f, 0xb8, 0xc9, 0x69, 0x50, 0x14, 0x36, 0xe1, 0xec, 0x95, 0xdf, 0x18, 0x09,
0x45, 0x63, 0xba, 0x85, 0xb7, 0xc4, 0x39, 0x08, 0xdb, 0xa7, 0x5e, 0xbb, 0x46, 0xae, 0x32, 0xaa,
0xad, 0xaf, 0x45, 0x50, 0x41, 0xd0, 0x23, 0x6e, 0x2b, 0x77, 0x21, 0x76, 0x3c, 0x16, 0x52, 0xb3,
0x94, 0x41, 0xfc, 0xb5, 0x18, 0x9c, 0x62, 0x1e, 0x02, 0xc9, 0x5a, 0xe4, 0x9e, 0x1c, 0x80, 0x89,
0x48, 0x8a, 0xf4, 0x5f, 0x32, 0xe4, 0x56, 0x0d, 0x83, 0x1b, 0x5f, 0x80, 0x13, 0xed, 0x77, 0xc0,
0x4f, 0x3e, 0x84, 0xcf, 0xba, 0x87, 0x9d, 0x45, 0xab, 0xd7, 0xa8, 0xaa, 0xb6, 0x0a, 0xbc, 0xa3,
0x3c, 0x88, 0xae, 0x89, 0xec, 0x02, 0x8a, 0x70, 0x54, 0x08, 0x4e, 0x3e, 0x1f, 0x81, 0xb1, 0x59,
0xcf, 0x8f, 0x37, 0x8f, 0x33, 0x19, 0xbc, 0x9b, 0x67, 0x84, 0x50, 0xa9, 0x05, 0x47, 0x96, 0x4f,
0xfa, 0x73, 0xd1, 0xf0, 0xf9, 0x43, 0xa6, 0x5f, 0xdb, 0x36, 0x41, 0xa4, 0xb9, 0xb8, 0xff, 0x60,
0x7a, 0xfd, 0x5d, 0x27, 0x3f, 0x26, 0x5f, 0x58, 0x2d, 0x89, 0xe8, 0x89, 0x00, 0x57, 0x15, 0x89,
0x50, 0x79, 0x9e, 0xb5, 0xe6, 0xdc, 0x7d, 0xfb, 0xa7, 0xa2, 0xc1, 0x73, 0x2a, 0x87, 0x20, 0x4e,
0xaf, 0x42, 0x40, 0x8c, 0xca, 0xde, 0x4f, 0x49, 0x52, 0x9f, 0xc6, 0x91, 0x8f, 0x9b, 0xd6, 0x3f,
0x47, 0x3b, 0x8e, 0xee, 0xf8, 0xd1, 0x49, 0xd2, 0x17, 0x81, 0xd0, 0x2c, 0x09, 0xde, 0x49, 0xd5,
0x58, 0x1a, 0x87, 0x7f, 0x70, 0x0a, 0xc6, 0x64, 0x94, 0xa6, 0x65, 0xa0, 0x6d, 0xc7, 0x31, 0x03,
0x99, 0x1b, 0x12, 0x97, 0xcb, 0x9c, 0x2f, 0x97, 0x95, 0xc1, 0xe7, 0x43, 0x9f, 0x5f, 0x1d, 0x45,
0xfc, 0x0e, 0xfe, 0x3f, 0x81, 0x7b, 0xf7, 0xcd, 0x47, 0xa5, 0x94, 0x2d, 0x9e, 0x59, 0xde, 0x5d,
0x36, 0x1c, 0xd7, 0xc8, 0xe4, 0xb0, 0x29, 0x6c, 0x7c, 0x50, 0x3d, 0x84, 0x50, 0x65, 0x96, 0xeb,
0x5a, 0xe7, 0x59, 0xea, 0x89, 0x98, 0x9b, 0x31, 0x2b, 0x9f, 0xee, 0x5b, 0x29, 0xbc, 0x8b, 0xbd,
0x7f, 0xf1, 0x3d, 0x10, 0xf7, 0x94, 0x9b, 0xa4, 0x46, 0x7d, 0xff, 0xec, 0x9a, 0x80, 0xae, 0xa0,
0xd9, 0x87, 0x2b, 0x4b, 0xc0, 0xcd, 0x56, 0xba, 0xae, 0xde, 0x9d, 0x37, 0x3a, 0x11, 0x70, 0x2a,
0xc0, 0x69, 0x8d, 0x82, 0xcf, 0x06, 0x43, 0xd4, 0x2c, 0x5a, 0x3a, 0x54, 0xff, 0x09, 0xb8, 0x32,
0x35, 0x2a, 0x3a, 0xbf, 0xdb, 0x50, 0x52, 0xdb, 0x3b, 0x0d, 0x4e, 0x7c, 0xc1, 0xa2, 0x4f, 0x8e,
0x68, 0x81, 0xb9, 0x01, 0xd6, 0xbb, 0x8f, 0xaa, 0xce, 0x57, 0x41, 0x38, 0x24, 0xb4, 0x8b, 0xa2,
0xaf, 0x47, 0xa3, 0xb4, 0xa3, 0x94, 0x19, 0xeb, 0xea, 0x1f, 0x03, 0x47, 0x9a, 0x8b, 0x63, 0x67,
0x6e, 0xb8, 0x94, 0x68, 0xdb, 0x6e, 0x23, 0x44, 0xa2, 0x5a, 0xf2, 0x13, 0x65, 0x17, 0x10, 0x49,
0x29, 0x23, 0x12, 0xb4, 0x0b, 0xd6, 0xad, 0xba, 0x89, 0xb5, 0x89, 0x90, 0x7c, 0x23, 0x61, 0x44,
0x92, 0x5b, 0x12, 0xa8, 0x9a, 0x55, 0xf6, 0xb1, 0xd1, 0xab, 0x37, 0x11, 0x1a, 0xaf, 0x26, 0x67,
0x69, 0xd0, 0x49, 0x72, 0xf8, 0xf4, 0x65, 0xf2, 0x12, 0x2a, 0x94, 0x68, 0x2a, 0xa1, 0xd7, 0xeb,
0x33, 0x88, 0xc4, 0x8b, 0x14, 0x83, 0xbf, 0x58, 0xbb, 0xda, 0x76, 0x41, 0x79, 0x49, 0xe9, 0x92,
0xa4, 0xde, 0x24, 0x84, 0xe8, 0x42, 0xec, 0x59, 0x71, 0x4e, 0x71, 0x9c, 0xc6, 0x93, 0x7b, 0xd2,
0x10, 0xbc, 0x27, 0x1b, 0x29, 0x45, 0x9f, 0xa2, 0xe5, 0xea, 0xef, 0xc8, 0xd0, 0x74, 0xfd, 0x4b,
0x32, 0xfd, 0x5b, 0x5b, 0x59, 0x63, 0x2b, 0x61, 0x33, 0x4c, 0x3d, 0xd4, 0xb1, 0xd2, 0x37, 0x14,
0x51, 0x04, 0x75, 0x02, 0x44, 0x7d, 0x11, 0x85, 0xe8, 0xaf, 0xa2, 0x21, 0xa8, 0x17, 0xac, 0x19,
0x57, 0x0c, 0xa4, 0x21, 0x24, 0x25, 0x03, 0x9c, 0x04, 0x35, 0xfc, 0xe3, 0x32, 0x1f, 0x1f, 0x54,
0x7f, 0xf4, 0x36, 0x11, 0x3c, 0xb7, 0x95, 0x31, 0x72, 0x8f, 0x25, 0x30, 0xb2, 0xcd, 0x44, 0xa9,
0x63, 0xa9, 0x08, 0xaa, 0x0e, 0x02, 0xaf, 0x85, 0x07, 0x79, 0x97, 0xdc, 0xf5, 0x9c, 0x91, 0x34,
0x6c, 0x27, 0x95, 0xe4, 0x8d, 0x06, 0xb7, 0xc7, 0xcb, 0x65, 0x6c, 0xd0, 0xa1, 0x30, 0x8f, 0xbf,
0x90, 0x88, 0xc2, 0xaf, 0xe3, 0x23, 0x40, 0x1b, 0xb0, 0xe1, 0x9c, 0xc8, 0xf3, 0x91, 0xf4, 0xc0,
0xd3, 0x52, 0x26, 0x24, 0x59, 0x84, 0x13, 0x81, 0x75, 0x59, 0xf4, 0xe7, 0x0b, 0x8b, 0x52, 0x46,
0x53, 0xa0, 0x18, 0x51, 0x6c, 0x9a, 0xb9, 0x47, 0xa3, 0x07, 0x15, 0xcd, 0xd2, 0xc0, 0x64, 0x23,
0x94, 0x2f, 0x5f, 0xa0, 0x1a, 0x46, 0xe4, 0x65, 0xf4, 0x02, 0x95, 0xbd, 0x0a, 0xb6, 0x1a, 0xb7,
0x82, 0xad, 0x67, 0xd3, 0xe2, 0xec, 0x69, 0xbb, 0xc7, 0x6c, 0xfc, 0x07, 0x45, 0x55, 0x4a, 0x49,
0x73, 0xd7, 0x2b, 0x80, 0x00, 0x00, 0x00, 0x00, 0x49, 0x45, 0x4e, 0x44, 0xae, 0x42, 0x60, 0x82,
};
const BITMAP_OPAQUE fill_zone_xpm[1] = {{ png, sizeof( png ), "fill_zone_xpm" }};

View File

@ -8,108 +8,98 @@
static const unsigned char png[] = {
0x89, 0x50, 0x4e, 0x47, 0x0d, 0x0a, 0x1a, 0x0a, 0x00, 0x00, 0x00, 0x0d, 0x49, 0x48, 0x44, 0x52,
0x00, 0x00, 0x00, 0x1a, 0x00, 0x00, 0x00, 0x1a, 0x08, 0x06, 0x00, 0x00, 0x00, 0xa9, 0x4a, 0x4c,
0xce, 0x00, 0x00, 0x06, 0x43, 0x49, 0x44, 0x41, 0x54, 0x48, 0xc7, 0xad, 0x96, 0x6d, 0x4c, 0x5b,
0xe7, 0x15, 0xc7, 0xff, 0xcf, 0xbd, 0xcf, 0xbd, 0xd7, 0x2f, 0xd7, 0x2f, 0xd8, 0x06, 0x07, 0x83,
0x01, 0x83, 0x21, 0x06, 0xe2, 0x17, 0x02, 0x04, 0x4a, 0x52, 0x92, 0x40, 0x12, 0x4d, 0x6d, 0xa6,
0x6e, 0x9d, 0x54, 0x69, 0x6b, 0xb7, 0x69, 0x6d, 0xd5, 0x4d, 0x8a, 0xb6, 0x69, 0x5f, 0xd6, 0xad,
0xd3, 0xb4, 0x69, 0x91, 0x26, 0x4d, 0x53, 0x17, 0x6d, 0xda, 0x87, 0x4c, 0xab, 0x34, 0x6d, 0xf9,
0x50, 0xad, 0xe9, 0xd2, 0x4a, 0x9b, 0xa6, 0x4e, 0xd1, 0x9a, 0x25, 0x30, 0xd2, 0x40, 0x42, 0x48,
0x6c, 0x12, 0x30, 0xd8, 0x80, 0xc1, 0x10, 0xb0, 0x31, 0x2f, 0x7e, 0xc1, 0xd7, 0xf7, 0x5e, 0xdf,
0x7d, 0x88, 0x54, 0x6d, 0x4a, 0x43, 0xe8, 0xb6, 0xbf, 0xf4, 0xff, 0xf6, 0x3c, 0xe7, 0xa7, 0xf3,
0x1c, 0x9d, 0xf3, 0x1c, 0xa2, 0x69, 0x1a, 0xf6, 0xaa, 0xdb, 0x5f, 0x26, 0xac, 0x58, 0xe5, 0xf8,
0x91, 0xd8, 0x14, 0x1a, 0xe0, 0x4c, 0xb6, 0x3a, 0xbd, 0xc8, 0x39, 0x39, 0x03, 0xc7, 0xcb, 0x45,
0x45, 0x29, 0xe6, 0xe5, 0xb4, 0xb2, 0xb3, 0xb3, 0x56, 0x58, 0x9c, 0x9a, 0xda, 0x8c, 0x45, 0xcf,
0x74, 0x5c, 0xd0, 0xd2, 0xff, 0x7e, 0x97, 0xec, 0x15, 0x74, 0xf7, 0x15, 0xae, 0xd9, 0xda, 0xec,
0xbf, 0xe0, 0x3c, 0xd8, 0xdd, 0xc5, 0x16, 0xe6, 0xd8, 0xf2, 0x76, 0x1a, 0xb9, 0x4c, 0xbe, 0x94,
0x2d, 0x68, 0x25, 0xa3, 0x9e, 0x70, 0xa2, 0x55, 0x10, 0xa8, 0x68, 0x85, 0x66, 0x6a, 0xc0, 0x46,
0x72, 0x33, 0x91, 0xb9, 0x7b, 0xf5, 0xac, 0xef, 0x97, 0x5b, 0x6f, 0x7d, 0x2a, 0x50, 0xf4, 0x3b,
0xb6, 0x97, 0x6d, 0x9d, 0x27, 0xcf, 0x56, 0xd8, 0xe0, 0xca, 0xcf, 0x87, 0x4b, 0x0b, 0x69, 0xbd,
0x94, 0x13, 0xbd, 0x9c, 0xe4, 0x19, 0xd4, 0xb1, 0xd5, 0x2d, 0xd0, 0x32, 0x8b, 0x60, 0x12, 0xd7,
0x15, 0xfd, 0xfa, 0x64, 0xd1, 0xc5, 0xad, 0xa0, 0xb2, 0xc9, 0x2d, 0x4a, 0xbc, 0x67, 0x67, 0xed,
0xd6, 0xd0, 0x07, 0x9e, 0x1f, 0x4f, 0x3f, 0xbf, 0x27, 0x50, 0xf8, 0x55, 0xbe, 0xd1, 0x75, 0xfc,
0x73, 0x43, 0x0c, 0x93, 0x71, 0xe5, 0xe6, 0x13, 0xd9, 0x84, 0xe9, 0x69, 0xb2, 0x52, 0xfb, 0x19,
0xb1, 0xc1, 0x5d, 0x0f, 0x8b, 0xd5, 0x8c, 0x6b, 0xc3, 0x23, 0xe8, 0xef, 0xef, 0x83, 0x56, 0x2e,
0x43, 0x2a, 0x49, 0xd8, 0x98, 0xbc, 0xa6, 0x38, 0xee, 0x9e, 0xdf, 0xf1, 0x78, 0x74, 0x22, 0xa9,
0xee, 0x52, 0x13, 0x97, 0xdf, 0xff, 0x49, 0xcb, 0x9b, 0xa9, 0xb3, 0xcc, 0x13, 0x6a, 0x42, 0xcc,
0xde, 0xf6, 0x3f, 0x58, 0x6d, 0xd4, 0x75, 0x31, 0x11, 0x50, 0xaf, 0x3a, 0x5e, 0x33, 0x2e, 0x3a,
0x07, 0xc5, 0xde, 0xee, 0x5e, 0x78, 0x9b, 0x9a, 0x41, 0x08, 0x83, 0xa1, 0xa1, 0x11, 0xe8, 0x78,
0x1d, 0x78, 0x5e, 0x07, 0x83, 0xde, 0x08, 0x67, 0xe8, 0x04, 0xcd, 0x3d, 0xf7, 0x5b, 0x53, 0x2c,
0x41, 0x72, 0x6c, 0x6e, 0x86, 0xda, 0x0f, 0x0e, 0x9c, 0x89, 0xbc, 0xa6, 0xdb, 0x4f, 0x77, 0x03,
0x19, 0xab, 0xec, 0x6f, 0x38, 0x43, 0xdd, 0x3d, 0xc5, 0xc4, 0x88, 0xda, 0xd1, 0xff, 0x0d, 0xa6,
0xd2, 0xe5, 0x26, 0xa2, 0xd1, 0x04, 0x86, 0x21, 0x18, 0xbb, 0x39, 0x86, 0xd6, 0x36, 0x1f, 0x12,
0x8b, 0x4b, 0x10, 0x04, 0x1d, 0x54, 0x55, 0x85, 0xa2, 0x32, 0x20, 0x84, 0xc0, 0x6c, 0xa9, 0xc0,
0xd6, 0x91, 0xd7, 0x8d, 0xab, 0x77, 0x7e, 0x9e, 0xab, 0xf6, 0xed, 0x73, 0xe6, 0xbd, 0xfe, 0xdf,
0xed, 0x9a, 0x91, 0xd1, 0xed, 0x3b, 0x45, 0xa5, 0x24, 0x9d, 0x48, 0x08, 0x45, 0x8b, 0xdd, 0x49,
0x2c, 0x66, 0x33, 0x04, 0x81, 0xc7, 0xa5, 0xf7, 0xfe, 0x84, 0xf6, 0x03, 0xed, 0xe0, 0x28, 0x87,
0x72, 0x59, 0x03, 0xcb, 0x50, 0xf0, 0x3c, 0x0f, 0x8e, 0xf2, 0xa0, 0x94, 0x82, 0x65, 0x59, 0x88,
0xb5, 0x3e, 0x26, 0xc9, 0xb7, 0x32, 0x4a, 0x36, 0x05, 0xb1, 0xae, 0xc5, 0xbb, 0x2b, 0x88, 0xab,
0xd8, 0x57, 0x83, 0x42, 0x0a, 0x0b, 0x6c, 0x0b, 0xb5, 0xdb, 0xed, 0xa0, 0x94, 0x82, 0x52, 0x8a,
0xa7, 0x9e, 0xea, 0xc3, 0xf2, 0xf2, 0x32, 0x36, 0x37, 0x73, 0xd0, 0xeb, 0x78, 0x64, 0x73, 0x39,
0x70, 0x94, 0x03, 0xcb, 0xb2, 0x60, 0x98, 0x87, 0x26, 0x84, 0x01, 0xeb, 0xff, 0xbc, 0x21, 0x9f,
0x55, 0x25, 0xbd, 0x48, 0xed, 0x74, 0x97, 0xfa, 0xb8, 0x3c, 0xa7, 0x5f, 0xb0, 0x4b, 0x5b, 0x79,
0xa4, 0xf8, 0x5a, 0x61, 0x76, 0x76, 0x06, 0xe9, 0x74, 0x0a, 0xeb, 0x99, 0x0c, 0x2c, 0x56, 0x0b,
0x82, 0xfe, 0x20, 0x96, 0x96, 0x57, 0x50, 0x2e, 0x2b, 0xd8, 0xd8, 0xd8, 0x84, 0xdd, 0x66, 0x03,
0x21, 0xe4, 0xa1, 0x01, 0x10, 0x42, 0x40, 0x1d, 0x75, 0xc8, 0x47, 0x04, 0xd9, 0xcc, 0x13, 0xe1,
0xb1, 0x19, 0xb1, 0x1c, 0xdd, 0xcf, 0xf3, 0x8c, 0x65, 0x27, 0xaf, 0x94, 0xba, 0xba, 0x3a, 0x40,
0x05, 0x06, 0x4d, 0x2d, 0x4d, 0x38, 0x36, 0x70, 0x14, 0x3d, 0xbd, 0x3d, 0xb0, 0x58, 0x2d, 0x78,
0xfb, 0x8f, 0xef, 0xa0, 0x5c, 0xd6, 0xf0, 0xe6, 0x2f, 0xce, 0x21, 0x1e, 0x8f, 0x43, 0x2a, 0x95,
0xa0, 0x69, 0xda, 0x7f, 0x58, 0x01, 0xa7, 0x11, 0x55, 0xc2, 0x63, 0x33, 0x52, 0x65, 0x25, 0x22,
0xe5, 0x0b, 0x19, 0x83, 0x89, 0xb3, 0xeb, 0x32, 0xf7, 0xcb, 0x9c, 0xdb, 0xc7, 0xcc, 0xce, 0x25,
0x70, 0x79, 0x3c, 0x8a, 0xaf, 0x3d, 0x7b, 0x0c, 0xae, 0x6a, 0x27, 0x16, 0x97, 0x96, 0xd0, 0xe0,
0xae, 0x41, 0x34, 0x36, 0x8f, 0xef, 0xbe, 0xf1, 0x03, 0x94, 0x4a, 0x0a, 0x78, 0x81, 0x47, 0x47,
0x28, 0x80, 0x97, 0x5e, 0x7c, 0x01, 0x65, 0x55, 0x01, 0xcf, 0xb3, 0x44, 0xd3, 0xc8, 0xee, 0x7d,
0xf4, 0xe0, 0x37, 0xa7, 0xee, 0x39, 0xac, 0xdb, 0xad, 0x6f, 0xdd, 0xb0, 0xec, 0x5c, 0x62, 0x8f,
0xeb, 0x47, 0x69, 0x13, 0xb6, 0x9c, 0x6d, 0xa8, 0x4e, 0x8e, 0xe2, 0xa4, 0x25, 0x8b, 0xee, 0x4a,
0x01, 0x23, 0xff, 0x1c, 0x86, 0xaf, 0xad, 0x15, 0xa7, 0x06, 0x07, 0x50, 0x51, 0x61, 0x01, 0xa5,
0x2c, 0x4a, 0x72, 0x09, 0x25, 0x59, 0x42, 0x69, 0x65, 0x0a, 0x2d, 0x6b, 0xef, 0x95, 0x28, 0x55,
0xe9, 0x63, 0x41, 0x84, 0x10, 0xf2, 0xc3, 0x97, 0x3a, 0xef, 0x7c, 0x64, 0x08, 0xf9, 0xaf, 0x55,
0x3e, 0x07, 0xc9, 0xd1, 0xf8, 0xc8, 0x19, 0x67, 0x72, 0x1c, 0x83, 0x62, 0x06, 0x67, 0x9e, 0xe9,
0x41, 0xb5, 0xd3, 0x01, 0x55, 0x55, 0x21, 0x2b, 0xf2, 0x43, 0xcb, 0x25, 0x30, 0xc3, 0xbf, 0xce,
0xb7, 0xd7, 0xc3, 0xb8, 0xfd, 0x60, 0x6d, 0xe5, 0x11, 0x10, 0x21, 0x44, 0x40, 0xfb, 0xe0, 0xb7,
0xe1, 0x3d, 0xf8, 0x3c, 0xe9, 0xfc, 0x6c, 0xb7, 0x66, 0xb2, 0x31, 0x4f, 0x1a, 0x51, 0x8e, 0xe4,
0x38, 0x8e, 0x0a, 0xab, 0x78, 0x65, 0xd0, 0x8f, 0x1a, 0x67, 0x25, 0x64, 0x45, 0x86, 0xb2, 0x3a,
0xa3, 0x36, 0xad, 0xfd, 0x55, 0xb2, 0x9a, 0xf3, 0x86, 0xa5, 0xf1, 0xfb, 0x1f, 0x7e, 0x0c, 0x22,
0x66, 0xb3, 0x1d, 0xfb, 0x8f, 0xbe, 0x8e, 0xc6, 0xae, 0x67, 0xd1, 0x79, 0xba, 0x0d, 0xbc, 0x0e,
0x9f, 0x56, 0xd6, 0xe4, 0x04, 0xfa, 0x98, 0x04, 0x5e, 0x3c, 0xe4, 0x46, 0x4f, 0xf2, 0xed, 0x5c,
0x43, 0x93, 0x41, 0x4c, 0x2f, 0xac, 0x24, 0x56, 0x6f, 0xde, 0xe8, 0x27, 0xa8, 0xac, 0xf5, 0xc2,
0xdb, 0xfb, 0x7d, 0xec, 0xef, 0x3b, 0x09, 0xff, 0x09, 0x37, 0x18, 0x06, 0xff, 0xab, 0xcc, 0x8b,
0x63, 0xda, 0x33, 0xc5, 0xab, 0xe4, 0x9b, 0xde, 0x85, 0x92, 0x75, 0xee, 0xd6, 0xf7, 0xda, 0x7e,
0xb5, 0x75, 0x8e, 0x41, 0x41, 0xca, 0x41, 0x96, 0x14, 0xc8, 0x45, 0x13, 0xfe, 0x4f, 0xda, 0x76,
0x77, 0x93, 0x8b, 0xce, 0xaf, 0xe0, 0x8b, 0x17, 0xb5, 0x5c, 0xfb, 0x79, 0xf5, 0x0a, 0x21, 0x84,
0xa3, 0x60, 0x78, 0x0f, 0x4a, 0x38, 0x0a, 0x83, 0xc7, 0x8a, 0xab, 0xef, 0x00, 0x15, 0x76, 0x20,
0x30, 0x00, 0x30, 0xec, 0x7f, 0x47, 0x79, 0x10, 0x03, 0x62, 0x77, 0xc0, 0xa6, 0xe6, 0xb2, 0x89,
0x0d, 0xf6, 0x5d, 0xc8, 0x4a, 0x16, 0x00, 0x61, 0x1d, 0x66, 0xa1, 0xbc, 0x4f, 0xa7, 0x05, 0xf4,
0xc5, 0xf5, 0x7a, 0xb9, 0xaa, 0x5d, 0x50, 0x4c, 0xf5, 0x40, 0xe4, 0xef, 0xc0, 0x46, 0x12, 0xa8,
0xaa, 0xc7, 0x9e, 0x9f, 0x32, 0x76, 0x1b, 0xb8, 0x77, 0x1d, 0x28, 0x12, 0xc0, 0xee, 0x05, 0x93,
0x5e, 0xd8, 0xd1, 0xb2, 0xab, 0x11, 0xac, 0xaf, 0x7e, 0xa0, 0x69, 0x52, 0x96, 0xea, 0xf5, 0xfa,
0x9a, 0x1a, 0x87, 0xc5, 0xdd, 0xd6, 0x6a, 0xd3, 0x33, 0x7c, 0x0c, 0x23, 0x8b, 0x61, 0xcc, 0x88,
0xad, 0x28, 0x98, 0x1b, 0x81, 0xe1, 0xf7, 0x01, 0x93, 0x08, 0x04, 0x07, 0x01, 0x96, 0x7b, 0x34,
0xb8, 0x56, 0x06, 0xee, 0x0d, 0x03, 0xeb, 0xa9, 0x87, 0xc1, 0x1d, 0x3e, 0xb8, 0x96, 0x87, 0xd0,
0x26, 0x8f, 0xe2, 0x40, 0xa7, 0xcd, 0x72, 0x69, 0x2e, 0xd1, 0x3b, 0x8f, 0x1c, 0x0b, 0x00, 0x54,
0x56, 0x14, 0xb6, 0xca, 0xe9, 0xd4, 0xb5, 0x1f, 0x68, 0x67, 0xa6, 0xee, 0x4f, 0xe1, 0x48, 0x8d,
0x80, 0xa7, 0xb9, 0x45, 0x0c, 0xcf, 0xdf, 0xc3, 0x8c, 0xbe, 0x05, 0x79, 0xab, 0x0f, 0x18, 0xfe,
0x33, 0x20, 0x1a, 0x80, 0xe0, 0x71, 0x80, 0x0a, 0x80, 0x2c, 0x01, 0x77, 0xff, 0x01, 0xe4, 0xf3,
0x40, 0x75, 0x00, 0xd4, 0xcc, 0xa3, 0x3e, 0x35, 0x82, 0x50, 0x45, 0x19, 0xee, 0x66, 0x23, 0xb6,
0x36, 0x0b, 0xe0, 0x28, 0x87, 0xba, 0xfa, 0x3a, 0x6d, 0x6d, 0x6d, 0xd5, 0xf0, 0xf1, 0x0f, 0x4b,
0x08, 0x21, 0x7d, 0x87, 0x8f, 0x7c, 0x35, 0x18, 0x0c, 0xbe, 0xdc, 0xda, 0xd6, 0x7a, 0x38, 0x1a,
0x9d, 0x61, 0xca, 0x6a, 0x19, 0x54, 0xa7, 0xc7, 0x70, 0x7c, 0x13, 0x51, 0xc1, 0x8b, 0x5c, 0x95,
0x1f, 0x48, 0x8e, 0x03, 0x0c, 0x00, 0x95, 0x00, 0xb5, 0x1d, 0xd0, 0xa7, 0xa6, 0xd0, 0x58, 0x98,
0xc6, 0x21, 0x97, 0x00, 0x1d, 0x53, 0x86, 0x5c, 0x92, 0xe0, 0xf3, 0xf9, 0x90, 0xcf, 0x17, 0x96,
0x27, 0x26, 0x6e, 0xff, 0x6d, 0x72, 0x32, 0xf2, 0xb3, 0xe9, 0xa9, 0xa9, 0xe9, 0x4f, 0xfc, 0xca,
0xfb, 0xfa, 0x0e, 0x7f, 0xc9, 0x1f, 0x08, 0xbc, 0xea, 0x0f, 0x04, 0xfa, 0xa7, 0xa7, 0xa3, 0xac,
0xaa, 0x2a, 0xd0, 0x19, 0x44, 0x5c, 0x9b, 0xcd, 0x20, 0xca, 0x35, 0x20, 0xeb, 0xea, 0x82, 0x79,
0xf1, 0x3a, 0xbc, 0xe5, 0x24, 0x0e, 0x7b, 0x2c, 0x28, 0xe6, 0xb6, 0xc1, 0xb2, 0x2c, 0x82, 0xc1,
0x10, 0xe2, 0xf1, 0x58, 0x34, 0x1c, 0x0e, 0xff, 0x65, 0x6c, 0xf4, 0xc6, 0x4f, 0xd3, 0xe9, 0xf4,
0xfa, 0x9e, 0xb6, 0xa0, 0x9e, 0xde, 0xde, 0x2f, 0x04, 0x02, 0xc1, 0xaf, 0x07, 0x83, 0xc1, 0x63,
0xb3, 0x33, 0xb3, 0x9c, 0x24, 0xcb, 0x30, 0x9a, 0xcc, 0x98, 0x88, 0xaf, 0xa0, 0xa3, 0x71, 0x1f,
0xd2, 0xa9, 0x35, 0x88, 0x46, 0x11, 0xc1, 0x50, 0x48, 0xbb, 0x33, 0x71, 0x7b, 0x7c, 0x32, 0x12,
0x79, 0xf7, 0xca, 0x95, 0x0f, 0xcf, 0x69, 0x9a, 0x26, 0x7d, 0xe2, 0x48, 0x7b, 0xd2, 0x72, 0xd2,
0x7d, 0xe8, 0xd0, 0xe9, 0x40, 0x20, 0x78, 0x26, 0x18, 0x0c, 0x1d, 0x9f, 0x8b, 0xc7, 0x85, 0xed,
0xec, 0x36, 0x6c, 0x36, 0x3b, 0x9a, 0x5b, 0x9a, 0x4b, 0x63, 0xa3, 0x63, 0xc3, 0x91, 0x48, 0xf8,
0xc2, 0x47, 0xd7, 0x47, 0x7e, 0xaf, 0x3d, 0x21, 0xd0, 0x9e, 0xf7, 0xba, 0xae, 0xae, 0xee, 0x13,
0xfe, 0x40, 0xe0, 0x5b, 0x0d, 0x1e, 0x4f, 0x6f, 0x3c, 0x16, 0x1b, 0x8a, 0x84, 0xc3, 0xe7, 0x6f,
0xdd, 0xba, 0x79, 0x79, 0xaf, 0xed, 0xf5, 0x2f, 0x8b, 0x1f, 0xa8, 0x3f, 0xea, 0xb6, 0xcb, 0x55,
0x00, 0x00, 0x00, 0x00, 0x49, 0x45, 0x4e, 0x44, 0xae, 0x42, 0x60, 0x82,
0xce, 0x00, 0x00, 0x05, 0x99, 0x49, 0x44, 0x41, 0x54, 0x48, 0x4b, 0xb5, 0x56, 0x7d, 0x4c, 0xd4,
0x75, 0x18, 0xff, 0xfd, 0xd3, 0xfa, 0xc3, 0x74, 0xad, 0x95, 0x9a, 0x73, 0xb3, 0x7f, 0x74, 0xfe,
0xe7, 0x8a, 0x5a, 0xd1, 0x62, 0x6a, 0x01, 0x13, 0x30, 0x04, 0x4e, 0xe9, 0x05, 0x50, 0xc0, 0xa6,
0x9b, 0x2b, 0xb7, 0x66, 0xea, 0xd2, 0x2c, 0xa0, 0x65, 0x89, 0x6f, 0x93, 0x2c, 0xc7, 0xc4, 0x86,
0xc3, 0x59, 0x2b, 0xdd, 0xb5, 0x98, 0xd9, 0x0d, 0x0b, 0xd3, 0xc8, 0x05, 0x1e, 0xc7, 0x1d, 0x1c,
0xc2, 0x01, 0x07, 0xf7, 0xc6, 0xf1, 0x72, 0xc0, 0xfd, 0xb8, 0x17, 0xde, 0xef, 0xe9, 0xf9, 0x3c,
0x70, 0x6f, 0x69, 0x6e, 0xfd, 0x11, 0xdb, 0x67, 0xbf, 0xdf, 0xdd, 0x7d, 0x9f, 0xe7, 0xf3, 0xbc,
0x7c, 0x9e, 0xe7, 0x8b, 0xa2, 0x28, 0xca, 0x4a, 0xc6, 0xf3, 0xff, 0x33, 0x96, 0x31, 0x94, 0xe4,
0xda, 0xda, 0xda, 0xbf, 0x4c, 0xa6, 0x56, 0xc7, 0x43, 0xd1, 0xda, 0xea, 0x68, 0x0d, 0xa3, 0xad,
0x4d, 0xd0, 0x06, 0x98, 0xcd, 0x02, 0xf3, 0x03, 0xd1, 0xee, 0xb8, 0x7c, 0xf9, 0x72, 0x3d, 0x73,
0xbc, 0x24, 0x44, 0xd6, 0xde, 0x5e, 0xd5, 0x66, 0x77, 0x10, 0xd0, 0x66, 0x6e, 0xa7, 0x93, 0xa7,
0x4e, 0xcb, 0x3b, 0x60, 0x77, 0x38, 0xe9, 0x7c, 0xd5, 0x05, 0x32, 0x9a, 0x5a, 0xc9, 0xd5, 0xef,
0xa6, 0x7e, 0xb7, 0x9b, 0xdc, 0x03, 0x03, 0x54, 0x73, 0xe9, 0x12, 0x0d, 0x0c, 0x0e, 0xd2, 0xe0,
0xd0, 0x90, 0x40, 0xdf, 0xdc, 0x4c, 0xd5, 0x17, 0x2f, 0xd2, 0xb0, 0xc7, 0x13, 0x81, 0x67, 0x64,
0x84, 0xba, 0xba, 0xba, 0xdc, 0x0f, 0x24, 0x02, 0x4a, 0x4a, 0x4a, 0xa9, 0xa4, 0xb4, 0x94, 0x1c,
0x4e, 0x17, 0x39, 0x5d, 0xfd, 0x54, 0x77, 0xe3, 0x57, 0x2a, 0x28, 0x28, 0x60, 0x52, 0x47, 0xc4,
0x79, 0x61, 0x61, 0x21, 0x0d, 0x0d, 0x0f, 0x8b, 0xc3, 0x66, 0x83, 0x81, 0xb6, 0xe5, 0xe6, 0x92,
0xa1, 0xa5, 0x85, 0x46, 0x46, 0x47, 0xa9, 0xc5, 0x68, 0xa4, 0x0f, 0x0f, 0x1d, 0xa2, 0x51, 0x7e,
0xef, 0xee, 0xee, 0xbe, 0x9f, 0xa8, 0xe9, 0xae, 0x3e, 0x92, 0x45, 0x69, 0x69, 0x19, 0x95, 0x95,
0x95, 0x45, 0x32, 0xa8, 0xaa, 0xaa, 0xa2, 0x8f, 0x8e, 0x1c, 0x89, 0x38, 0x07, 0x11, 0x22, 0x86,
0x63, 0x04, 0x61, 0x34, 0x99, 0x68, 0x74, 0x6c, 0x8c, 0x4c, 0xfc, 0x4c, 0x4e, 0x49, 0xa1, 0xe4,
0xe4, 0x64, 0x1a, 0xf3, 0x7a, 0x1f, 0x4c, 0xb4, 0x71, 0xe3, 0x46, 0x3a, 0x70, 0xf0, 0xa0, 0x64,
0x81, 0x32, 0x95, 0x95, 0x7d, 0x4a, 0x47, 0x8f, 0x7e, 0x2e, 0x19, 0x80, 0x60, 0xfb, 0x8e, 0x1d,
0xe2, 0x1c, 0x28, 0x2a, 0x2a, 0x12, 0xc7, 0x63, 0x0c, 0xbc, 0x7b, 0xd9, 0xa9, 0x57, 0x55, 0x29,
0x33, 0x33, 0x93, 0x12, 0x12, 0x12, 0x28, 0x3d, 0x3d, 0x9d, 0xd4, 0xf1, 0x71, 0xea, 0xe9, 0xe9,
0x89, 0x27, 0x42, 0x16, 0x69, 0x69, 0x69, 0x94, 0x94, 0x94, 0x44, 0x87, 0x0f, 0x1f, 0x96, 0x2c,
0x50, 0x26, 0x44, 0x1b, 0xc9, 0x82, 0x1d, 0x22, 0x03, 0x10, 0xc4, 0x3a, 0x2f, 0x2e, 0x2e, 0x16,
0xa7, 0xe3, 0x3e, 0x1f, 0xa5, 0x67, 0x64, 0x08, 0x51, 0x06, 0x3f, 0x7d, 0x7e, 0x3f, 0x59, 0xad,
0xd6, 0x28, 0x51, 0x6f, 0x5f, 0x9f, 0x8a, 0x7e, 0x80, 0x08, 0x87, 0x34, 0x9b, 0x36, 0x90, 0x55,
0x7b, 0x9a, 0x2c, 0x67, 0x0a, 0x49, 0x97, 0xfb, 0x24, 0xb5, 0xe4, 0x3d, 0x46, 0xe6, 0x7d, 0xcf,
0x52, 0xcd, 0x5b, 0x6b, 0xc9, 0x5e, 0xfb, 0x25, 0x79, 0x6c, 0x9d, 0x71, 0xce, 0xf1, 0x0e, 0xa7,
0x7e, 0x06, 0x08, 0xc2, 0x44, 0x81, 0x60, 0x90, 0x7a, 0x7b, 0x7b, 0xa3, 0x44, 0x7d, 0x7d, 0x36,
0xd5, 0xd5, 0xdf, 0x2f, 0x44, 0xef, 0xae, 0x7f, 0x86, 0xee, 0x68, 0x1e, 0x21, 0x83, 0x46, 0xa1,
0xae, 0xfc, 0x47, 0xc9, 0x59, 0xbc, 0x88, 0xdc, 0xef, 0x2c, 0x96, 0x27, 0x3e, 0xe3, 0xfb, 0x96,
0xfc, 0x25, 0xf4, 0xd9, 0x9b, 0x89, 0x5c, 0x62, 0x17, 0x39, 0x58, 0x20, 0x79, 0x79, 0x79, 0xd4,
0xcf, 0xf6, 0x41, 0x76, 0x1c, 0x4b, 0x34, 0x31, 0x31, 0x41, 0x9c, 0x44, 0x94, 0xc8, 0x66, 0xb3,
0xa9, 0xce, 0xee, 0x76, 0xfa, 0x36, 0x6b, 0xa9, 0x38, 0x82, 0xd3, 0xa9, 0xf7, 0x97, 0x11, 0xed,
0x7f, 0x9a, 0xe8, 0x03, 0x60, 0xf9, 0xfc, 0x93, 0x3f, 0xe3, 0x7b, 0xfc, 0x8e, 0x73, 0x8d, 0xfb,
0x12, 0xe9, 0xe6, 0xf5, 0x1f, 0xc5, 0x71, 0x7d, 0x7d, 0x3d, 0x4d, 0x4e, 0x4e, 0xc6, 0x11, 0x4d,
0x4d, 0x4d, 0x51, 0x5f, 0x1c, 0x91, 0xdd, 0xae, 0xb6, 0x7f, 0x92, 0x42, 0x2d, 0x5b, 0x15, 0xf2,
0xee, 0x79, 0x42, 0x9c, 0x4e, 0x1f, 0x5b, 0x4f, 0x5e, 0xdd, 0x59, 0x1a, 0x31, 0xd6, 0x53, 0xd6,
0x96, 0x4c, 0xf2, 0xb6, 0xdd, 0xa2, 0xc0, 0x6f, 0x95, 0x34, 0x75, 0x6c, 0x83, 0xfc, 0x8e, 0x73,
0x38, 0xdf, 0x7c, 0x30, 0x49, 0x1c, 0x37, 0x35, 0x35, 0x89, 0xe3, 0x58, 0xa2, 0x99, 0x99, 0x19,
0xb2, 0xdb, 0xed, 0x51, 0x22, 0xcb, 0x95, 0x13, 0x41, 0x44, 0x28, 0x24, 0x07, 0x56, 0xd2, 0xf8,
0x95, 0x23, 0xe4, 0x76, 0x39, 0x68, 0x90, 0xc5, 0x30, 0xcc, 0x42, 0xc8, 0xca, 0xca, 0x12, 0x75,
0x8d, 0x73, 0x4f, 0xea, 0x74, 0xbf, 0xd0, 0xcc, 0xb5, 0xa3, 0x72, 0x0e, 0xe7, 0x61, 0x67, 0xfe,
0xee, 0x18, 0x4d, 0x4f, 0x4f, 0x8b, 0xe3, 0xcd, 0x9b, 0x37, 0x0b, 0x11, 0x9e, 0xb3, 0xb3, 0xb3,
0x28, 0xed, 0x3c, 0x51, 0xe2, 0x72, 0x25, 0x97, 0x6b, 0x1e, 0x42, 0x39, 0x10, 0xa9, 0xef, 0xea,
0xc7, 0x34, 0xc0, 0x8a, 0x1b, 0x62, 0x49, 0x7b, 0x58, 0x69, 0x18, 0x3a, 0xa8, 0xcb, 0xc7, 0x4d,
0xaf, 0xa9, 0xa9, 0xa1, 0x86, 0x86, 0x06, 0x89, 0x7c, 0xee, 0xfa, 0x17, 0x72, 0x1e, 0x76, 0xa6,
0xed, 0x8f, 0xd3, 0x84, 0xc7, 0x29, 0x8e, 0x63, 0x89, 0xe6, 0xe6, 0xe6, 0xa2, 0x44, 0x67, 0x5e,
0x56, 0x4e, 0x22, 0x2a, 0xd4, 0x1e, 0xe5, 0x1a, 0x74, 0xbb, 0x24, 0x8b, 0x11, 0x9e, 0x15, 0x64,
0xa1, 0xb2, 0x7c, 0xa1, 0x26, 0x1e, 0x3c, 0x99, 0x33, 0x90, 0xc0, 0x61, 0x68, 0x76, 0x9a, 0xe8,
0x54, 0xb2, 0xd8, 0xc1, 0x7e, 0xb8, 0xee, 0xbc, 0x38, 0x8e, 0x25, 0x0a, 0x85, 0x42, 0xe4, 0x74,
0x3a, 0xe7, 0x89, 0xb4, 0xa9, 0x4a, 0x2d, 0xd4, 0x84, 0x46, 0x8f, 0xd7, 0x7d, 0x1d, 0x97, 0x05,
0x4a, 0x15, 0x08, 0x04, 0x44, 0x4d, 0x1a, 0x8d, 0x86, 0xb7, 0x45, 0xa9, 0x38, 0xc3, 0x1f, 0xc8,
0x66, 0x1b, 0xaa, 0xc5, 0x0e, 0xf6, 0xdd, 0x15, 0x45, 0xe2, 0xf8, 0x5f, 0x89, 0x6e, 0x65, 0x2a,
0x9d, 0xe1, 0xb2, 0xa9, 0xe6, 0xdb, 0x71, 0x59, 0x80, 0x00, 0x4a, 0xaa, 0xac, 0xac, 0xa4, 0x15,
0x2b, 0x56, 0xc8, 0x7a, 0x81, 0x31, 0x48, 0x90, 0xd9, 0x54, 0x4f, 0x53, 0xa4, 0x7c, 0xfa, 0x3d,
0x6b, 0xef, 0x23, 0x8a, 0xeb, 0xd1, 0xdd, 0x1c, 0x25, 0x80, 0x39, 0x81, 0x84, 0xb3, 0xb3, 0xb6,
0x50, 0x76, 0x76, 0xb6, 0x64, 0x81, 0x19, 0x80, 0xb3, 0xc6, 0xc6, 0x46, 0x5a, 0xb5, 0x6a, 0x15,
0x25, 0x26, 0x26, 0x4a, 0x36, 0x68, 0x38, 0xbe, 0xcf, 0xc9, 0xc9, 0xe1, 0xf3, 0x59, 0x62, 0x07,
0x7b, 0xc3, 0xdb, 0x8b, 0xee, 0x2b, 0x5d, 0x9c, 0xea, 0x62, 0x33, 0x0a, 0x74, 0xde, 0x89, 0x64,
0x01, 0x15, 0x21, 0xa2, 0xdd, 0xbb, 0x77, 0x4b, 0x36, 0xeb, 0xd6, 0xad, 0x13, 0x81, 0xe0, 0x37,
0x9c, 0x41, 0xc6, 0xfe, 0x8e, 0x3f, 0x23, 0x19, 0x75, 0xec, 0x4f, 0x88, 0x53, 0x1d, 0xe4, 0x8d,
0xb3, 0x91, 0xcd, 0x10, 0xdb, 0xa3, 0xe9, 0xdb, 0xdf, 0x48, 0xb4, 0x30, 0x08, 0xf7, 0x02, 0xce,
0x77, 0xee, 0xdc, 0x49, 0xab, 0x57, 0xaf, 0xa6, 0xd4, 0xd4, 0x54, 0x51, 0x24, 0x14, 0x88, 0x1e,
0x62, 0xae, 0xc2, 0x3d, 0xb2, 0x9d, 0xdb, 0x25, 0xc1, 0xc5, 0xce, 0x11, 0x82, 0x89, 0xec, 0xba,
0x58, 0xd5, 0x85, 0x4e, 0xbe, 0x46, 0xb3, 0xd3, 0x93, 0x52, 0xeb, 0x70, 0x2f, 0x60, 0x8c, 0xc8,
0x30, 0x53, 0xc7, 0x8f, 0x1f, 0x97, 0x75, 0xc3, 0x0d, 0xa6, 0x51, 0xcf, 0x10, 0xcd, 0x94, 0x6f,
0x88, 0xa8, 0xce, 0xf2, 0x7d, 0xb9, 0x94, 0x1b, 0x7b, 0x0f, 0x24, 0xe1, 0xa5, 0x1b, 0xb9, 0x26,
0xfe, 0x39, 0x47, 0xa4, 0x2b, 0x8f, 0xeb, 0x05, 0x8c, 0xd1, 0x33, 0x64, 0x01, 0x91, 0x20, 0x23,
0xcc, 0x52, 0x40, 0x5b, 0x12, 0x29, 0x9b, 0x21, 0x6f, 0x31, 0xed, 0xca, 0xd3, 0xc8, 0x58, 0xe0,
0x0c, 0x04, 0x85, 0xf1, 0x80, 0x82, 0x2d, 0x16, 0x4b, 0xcc, 0x35, 0xa1, 0x3d, 0x1d, 0xb7, 0x19,
0x30, 0x8c, 0x93, 0xc1, 0x79, 0xd5, 0x21, 0x7d, 0x08, 0x04, 0xd1, 0x41, 0xf6, 0x9e, 0xa1, 0x81,
0x79, 0x92, 0x98, 0xcd, 0x30, 0x50, 0x57, 0x45, 0x5a, 0xad, 0x96, 0xf6, 0xee, 0xdd, 0x2b, 0xce,
0x01, 0x04, 0x84, 0xa5, 0xcb, 0xff, 0x3b, 0x44, 0x89, 0xf8, 0xee, 0x51, 0x3b, 0xcb, 0x36, 0xc5,
0xed, 0xba, 0xb9, 0x13, 0xaf, 0xd2, 0xe4, 0xef, 0x55, 0xd2, 0x70, 0xa8, 0x11, 0xd2, 0xf7, 0xdd,
0x38, 0x27, 0xe5, 0x8a, 0xdd, 0x75, 0xd8, 0x91, 0xc8, 0x18, 0x99, 0x54, 0x54, 0x54, 0x50, 0x7e,
0x7e, 0x3e, 0xed, 0xe0, 0x0b, 0xb2, 0xba, 0xba, 0x9a, 0x7a, 0xac, 0x56, 0x8c, 0x44, 0x94, 0x88,
0xd9, 0xd5, 0x31, 0x77, 0x1f, 0xfd, 0xf1, 0x5e, 0xc2, 0x7f, 0xda, 0xde, 0xfa, 0x03, 0xaf, 0xd0,
0xd5, 0x4b, 0x17, 0xa4, 0xac, 0x28, 0x17, 0x32, 0x71, 0xf3, 0xd5, 0xcf, 0xb7, 0x81, 0x6c, 0x92,
0x7b, 0xf7, 0x3a, 0xc8, 0x60, 0x30, 0x44, 0x89, 0xf4, 0x7a, 0x7d, 0x07, 0x37, 0x5b, 0x65, 0x85,
0xa9, 0xb6, 0x9f, 0x2a, 0x82, 0x46, 0xee, 0xd9, 0xc3, 0xee, 0x23, 0x63, 0xc1, 0x92, 0x90, 0xe3,
0xda, 0x57, 0x13, 0x5c, 0x4a, 0x1f, 0xf7, 0xc2, 0xc7, 0xbd, 0xf1, 0xb1, 0xbd, 0x8f, 0x49, 0xfc,
0x2c, 0x14, 0x3f, 0x5f, 0x0d, 0x7e, 0xbe, 0xc2, 0xfd, 0x9d, 0x16, 0x8b, 0x5f, 0xa7, 0xd3, 0x99,
0xc2, 0x44, 0x6b, 0x18, 0x69, 0x0b, 0x48, 0x67, 0x64, 0xbc, 0xb0, 0x54, 0xc9, 0x3f, 0xc1, 0x82,
0xbc, 0x92, 0xa2, 0xfc, 0x7c, 0xf3, 0x75, 0xa5, 0xab, 0x29, 0x47, 0x09, 0xe2, 0xf9, 0x43, 0xb2,
0x72, 0xbd, 0xfc, 0x45, 0xe5, 0xec, 0x73, 0x4f, 0x29, 0x85, 0x7c, 0x2e, 0x9b, 0x91, 0xb3, 0x00,
0x0d, 0x63, 0xeb, 0x02, 0xb6, 0x2d, 0x20, 0x97, 0xf1, 0xc6, 0x02, 0xd6, 0xfc, 0x0d, 0xe7, 0x27,
0xfe, 0x32, 0x0b, 0xb0, 0x5c, 0x48, 0x00, 0x00, 0x00, 0x00, 0x49, 0x45, 0x4e, 0x44, 0xae, 0x42,
0x60, 0x82,
};
const BITMAP_OPAQUE gerber_recent_files_xpm[1] = {{ png, sizeof( png ), "gerber_recent_files_xpm" }};

View File

@ -8,108 +8,97 @@
static const unsigned char png[] = {
0x89, 0x50, 0x4e, 0x47, 0x0d, 0x0a, 0x1a, 0x0a, 0x00, 0x00, 0x00, 0x0d, 0x49, 0x48, 0x44, 0x52,
0x00, 0x00, 0x00, 0x1a, 0x00, 0x00, 0x00, 0x1a, 0x08, 0x06, 0x00, 0x00, 0x00, 0xa9, 0x4a, 0x4c,
0xce, 0x00, 0x00, 0x06, 0x3d, 0x49, 0x44, 0x41, 0x54, 0x48, 0xc7, 0x95, 0x95, 0x5b, 0x6c, 0x5c,
0x57, 0x15, 0x86, 0xbf, 0x7d, 0x2e, 0x73, 0xf7, 0xdc, 0xc7, 0x63, 0x4f, 0x6c, 0xc7, 0x8e, 0xc7,
0x26, 0x69, 0x94, 0xc8, 0xce, 0x45, 0x6d, 0xa2, 0xb6, 0x0a, 0x69, 0xa9, 0xd2, 0x50, 0x68, 0xa9,
0x10, 0x0f, 0x40, 0x44, 0x48, 0x51, 0x5f, 0x2a, 0x50, 0x8b, 0x92, 0x20, 0x21, 0x01, 0x85, 0x20,
0xae, 0x0d, 0x2d, 0x14, 0xa4, 0x4a, 0x14, 0x8a, 0x88, 0x04, 0x0f, 0x3c, 0x34, 0xa0, 0xa6, 0xa5,
0x4a, 0x1e, 0x48, 0xd2, 0x38, 0x24, 0x52, 0xa0, 0xbe, 0x94, 0xb8, 0x71, 0x6c, 0xc7, 0x63, 0x37,
0x8e, 0x9d, 0xf1, 0x6d, 0xe6, 0xcc, 0xe5, 0x9c, 0x33, 0xe7, 0x6c, 0x1e, 0x32, 0x51, 0xac, 0x92,
0x38, 0x61, 0x4b, 0x4b, 0xfb, 0x69, 0xe9, 0xdb, 0x7b, 0xfd, 0xff, 0x5a, 0x4b, 0x48, 0x29, 0xb9,
0xd7, 0xf3, 0xef, 0x3d, 0x42, 0x0d, 0x35, 0x26, 0xbf, 0x17, 0xea, 0xec, 0xd9, 0xa9, 0x37, 0xc4,
0xdb, 0xfc, 0x21, 0x3d, 0xad, 0x07, 0x74, 0x8f, 0x5d, 0xad, 0xd5, 0xaa, 0x25, 0x3b, 0x5f, 0xab,
0x54, 0x66, 0xcb, 0x93, 0xc3, 0xc3, 0x8b, 0xa3, 0x97, 0x9e, 0xeb, 0x3d, 0x22, 0xf3, 0xcb, 0x73,
0xc5, 0xbd, 0x82, 0x06, 0x9e, 0xd1, 0xbb, 0xa2, 0x5d, 0x1b, 0x8e, 0xa4, 0x37, 0x6d, 0xdd, 0xa2,
0x96, 0xc7, 0x55, 0xb7, 0x90, 0xc7, 0x98, 0x2f, 0x59, 0xc5, 0xb2, 0xb4, 0x82, 0x7e, 0xa1, 0x87,
0xa2, 0x5e, 0xaf, 0x16, 0x8a, 0x22, 0x1b, 0xda, 0x59, 0xf8, 0x68, 0x31, 0x37, 0x3f, 0x70, 0xf2,
0xd0, 0xda, 0x5f, 0x2e, 0xbd, 0xfe, 0x7f, 0x81, 0x2e, 0xbd, 0x10, 0xdf, 0x17, 0xdf, 0xfc, 0xa9,
0x43, 0xb1, 0x38, 0x99, 0xd2, 0x95, 0x41, 0x6b, 0x22, 0xef, 0x37, 0x8d, 0x50, 0x56, 0x37, 0x3b,
0x1e, 0xf1, 0xa9, 0xcd, 0xdd, 0xc8, 0xf9, 0x49, 0x94, 0xdc, 0xd9, 0x9a, 0x7f, 0xee, 0x83, 0x6a,
0x46, 0x9f, 0x26, 0xd5, 0xd9, 0x1a, 0x32, 0x3d, 0x1d, 0x95, 0xd9, 0x0b, 0xa7, 0xff, 0xde, 0xf1,
0xe2, 0x87, 0x4f, 0xdf, 0x13, 0x68, 0xf0, 0x6b, 0x9e, 0x35, 0x99, 0x4f, 0x3e, 0x75, 0x5a, 0x51,
0xe6, 0x33, 0xc6, 0x95, 0x5c, 0x31, 0xd7, 0xf0, 0x90, 0x98, 0x6e, 0xd9, 0x15, 0x6a, 0x6f, 0x5d,
0x4d, 0x24, 0x1a, 0xe6, 0xd4, 0x7b, 0x7d, 0x3c, 0xfc, 0xf0, 0x76, 0xa4, 0xeb, 0x62, 0x5a, 0x26,
0x0b, 0x1f, 0x9c, 0xaa, 0x25, 0x07, 0x5e, 0xab, 0x74, 0x74, 0xf8, 0x42, 0xa2, 0x79, 0x8b, 0x93,
0x3b, 0x7e, 0xf4, 0x07, 0xdd, 0x87, 0xaf, 0x1f, 0x52, 0xee, 0xa2, 0x89, 0x08, 0x67, 0xd7, 0xff,
0x31, 0x1a, 0xd7, 0x32, 0x7f, 0xc9, 0x6d, 0x74, 0x4e, 0x26, 0x9f, 0x0d, 0x4e, 0xa6, 0x1f, 0x09,
0x3d, 0xb0, 0xf5, 0x01, 0xb2, 0x9d, 0x5d, 0x08, 0xa1, 0x70, 0xfa, 0x74, 0x1f, 0x3e, 0x8f, 0x0f,
0x8f, 0xc7, 0x47, 0xc0, 0x1f, 0x24, 0xdd, 0xf3, 0xa8, 0x66, 0x3c, 0xf9, 0xdb, 0x86, 0xd1, 0x9c,
0x30, 0x54, 0x63, 0x44, 0x4b, 0x6c, 0xda, 0xf9, 0xdc, 0xd0, 0xb3, 0xbe, 0x4f, 0x68, 0x2b, 0x81,
0x82, 0x8d, 0x89, 0x6f, 0xa7, 0x7b, 0xb6, 0xde, 0x5f, 0xcd, 0xf5, 0x39, 0xdb, 0x76, 0x3e, 0xa1,
0xc4, 0x1a, 0xdb, 0x44, 0x30, 0x10, 0x44, 0x88, 0x3c, 0x43, 0xfd, 0xff, 0x20, 0x9b, 0xed, 0xc4,
0x2a, 0x8f, 0x10, 0xf0, 0x5c, 0xc7, 0x72, 0x33, 0xd4, 0x1c, 0x05, 0x21, 0x04, 0xe1, 0x48, 0x8c,
0xa5, 0x07, 0xbf, 0x15, 0x9c, 0xe9, 0xff, 0xb9, 0xd1, 0xbc, 0xb6, 0x29, 0x5d, 0xca, 0x6e, 0x78,
0xe3, 0xb6, 0xa5, 0xdb, 0xb7, 0xf7, 0xab, 0x3b, 0xd2, 0x29, 0xfb, 0xf1, 0x1f, 0x3d, 0x3f, 0xb8,
0xff, 0xec, 0x5b, 0x43, 0xca, 0xf6, 0xcf, 0xf6, 0x82, 0xde, 0x05, 0x42, 0x80, 0x74, 0x97, 0x7b,
0x09, 0xa8, 0xe7, 0xd7, 0x26, 0x98, 0x67, 0x3f, 0x86, 0xb3, 0x09, 0xd3, 0x32, 0xb1, 0x2c, 0x13,
0xe3, 0xf8, 0x4b, 0xe5, 0x9e, 0xd4, 0xd5, 0x40, 0x49, 0x36, 0x5d, 0x17, 0x52, 0x4a, 0x5e, 0xfa,
0xd9, 0x2f, 0x5e, 0x2c, 0x9b, 0xa5, 0x87, 0x9e, 0xd8, 0xfd, 0xe9, 0x9d, 0xfe, 0x60, 0x80, 0xbe,
0x33, 0x7d, 0x24, 0x62, 0x3e, 0x9e, 0xea, 0xdc, 0x03, 0x52, 0x82, 0x80, 0xf7, 0x2f, 0x4b, 0x16,
0xcb, 0x70, 0x6e, 0x30, 0x82, 0xa6, 0x2a, 0xa8, 0xaa, 0x4a, 0x6f, 0x97, 0xc9, 0xba, 0xc6, 0x22,
0x63, 0x39, 0x58, 0xdb, 0xad, 0x10, 0x5c, 0xb5, 0x9b, 0x99, 0x86, 0xdf, 0x60, 0x5a, 0x26, 0xa6,
0x59, 0xa5, 0x3c, 0x3d, 0xc2, 0x9a, 0x91, 0x5f, 0x99, 0xfe, 0xa6, 0xd5, 0xba, 0x9a, 0x48, 0x24,
0x9f, 0x54, 0x15, 0xf5, 0xb5, 0xb9, 0xfc, 0xf5, 0x8e, 0xa9, 0x5c, 0x8e, 0xb1, 0xd1, 0x11, 0x4e,
0x1c, 0x3f, 0xce, 0x60, 0xff, 0x00, 0x9f, 0x5f, 0x77, 0x09, 0x59, 0x02, 0x69, 0xc0, 0x9f, 0x8e,
0xc3, 0xf8, 0x65, 0xf8, 0xc3, 0x51, 0x8b, 0xf9, 0x99, 0x2a, 0xfd, 0x43, 0x65, 0xc2, 0x58, 0x74,
0x87, 0x61, 0x70, 0x08, 0xce, 0xff, 0x47, 0xb2, 0xb5, 0x71, 0x94, 0x52, 0xd3, 0xf3, 0x38, 0x4e,
0x0d, 0xc7, 0x75, 0x90, 0xde, 0x20, 0xda, 0xe8, 0xc9, 0x6a, 0xa4, 0xb1, 0xc1, 0xab, 0x1d, 0x7b,
0xfb, 0xed, 0x13, 0xc0, 0xf7, 0x67, 0x66, 0xae, 0x6d, 0xf3, 0x79, 0x7c, 0x8f, 0x69, 0x1e, 0x0d,
0xaf, 0xd7, 0xc7, 0xda, 0x6c, 0x3b, 0x63, 0xc3, 0xb7, 0x8a, 0xb4, 0x39, 0x02, 0xe5, 0x00, 0x5c,
0xe9, 0xaa, 0x57, 0x2c, 0x22, 0xf0, 0x3b, 0x92, 0x4a, 0x11, 0x5a, 0x9b, 0x61, 0x5d, 0x14, 0xc6,
0x3e, 0x04, 0xff, 0x46, 0x89, 0x94, 0xb7, 0xa2, 0x86, 0x2e, 0x85, 0x63, 0xde, 0xde, 0xde, 0xd9,
0xae, 0xae, 0xaf, 0x37, 0x78, 0x9c, 0xfd, 0x2f, 0x6c, 0x1f, 0x6f, 0x03, 0x98, 0x5c, 0x80, 0xd6,
0xd8, 0xca, 0xbd, 0x16, 0x8f, 0x6a, 0xbc, 0x35, 0xb9, 0x96, 0xf1, 0x52, 0x3b, 0xbd, 0x3d, 0x1b,
0xf9, 0xf2, 0x97, 0xbe, 0x80, 0x69, 0x96, 0x69, 0x3a, 0xff, 0x13, 0x23, 0xbd, 0x2a, 0x18, 0xba,
0x63, 0x1f, 0xfd, 0xee, 0x1b, 0x6b, 0x7c, 0x1b, 0x9a, 0x53, 0xa3, 0x91, 0x50, 0x35, 0x73, 0xfa,
0xa2, 0xe9, 0x54, 0x96, 0xa6, 0xd4, 0x7f, 0x5e, 0x91, 0x04, 0x75, 0x49, 0x7b, 0x02, 0x34, 0x55,
0xa2, 0xa9, 0x82, 0x29, 0x7d, 0x33, 0xf1, 0xec, 0x36, 0x1e, 0x7d, 0xfc, 0x69, 0x62, 0xb1, 0x08,
0x9a, 0xa6, 0x62, 0xd9, 0x16, 0x96, 0x6d, 0x62, 0x4d, 0x0f, 0xd3, 0x3d, 0xfb, 0xa6, 0xa5, 0x69,
0x8e, 0xb6, 0x62, 0xc3, 0x4e, 0xfd, 0xb4, 0xf7, 0x9d, 0xa6, 0xee, 0xd4, 0xae, 0xf1, 0x91, 0x62,
0xe1, 0xe0, 0xd9, 0x44, 0x38, 0x6b, 0x1c, 0x23, 0x15, 0x06, 0xaf, 0x06, 0x5e, 0x1d, 0x02, 0xc1,
0x00, 0x3b, 0xbe, 0x3b, 0x84, 0x94, 0xe0, 0xba, 0x0e, 0x8e, 0xe3, 0x60, 0xd7, 0xec, 0x1b, 0x61,
0x5b, 0x28, 0xef, 0xfd, 0xba, 0xb4, 0x7e, 0x35, 0xc1, 0xc2, 0xb5, 0xd9, 0xe9, 0x15, 0x1b, 0xb6,
0x7c, 0xed, 0xca, 0xbb, 0x96, 0x1b, 0xb0, 0x5a, 0x32, 0x6a, 0x68, 0x57, 0x4b, 0xb5, 0x9c, 0xd9,
0xf4, 0x19, 0x32, 0x31, 0xc8, 0x24, 0x04, 0xab, 0xe2, 0xd0, 0x92, 0x70, 0xa9, 0x56, 0x4b, 0x98,
0x66, 0xf5, 0x86, 0xd3, 0x2c, 0x13, 0xdb, 0xb6, 0xb0, 0x6d, 0x8b, 0xda, 0xcc, 0x88, 0xd3, 0x1a,
0x71, 0x84, 0xe2, 0x16, 0x30, 0xa6, 0xc6, 0x2f, 0xae, 0x08, 0xea, 0x7e, 0x79, 0xe1, 0x95, 0x99,
0xfe, 0x81, 0x53, 0x5a, 0x38, 0xac, 0x7c, 0x6e, 0xbd, 0xed, 0x6e, 0x7f, 0x70, 0x97, 0x1d, 0xdb,
0xb2, 0x97, 0xa6, 0xa8, 0xa4, 0x35, 0x0e, 0xd9, 0x44, 0x15, 0x7d, 0x69, 0x88, 0xaa, 0x55, 0xc5,
0xb4, 0xaa, 0x58, 0x75, 0x98, 0x55, 0x29, 0x92, 0xbc, 0xf8, 0xe7, 0x4a, 0x2c, 0x6a, 0x07, 0xe6,
0x26, 0xe7, 0x72, 0x85, 0x89, 0xf1, 0x7d, 0xda, 0xdd, 0x06, 0x6a, 0x21, 0x37, 0xf1, 0x95, 0x7c,
0x32, 0x79, 0x26, 0xd5, 0x1a, 0x69, 0x97, 0xd3, 0x47, 0x2b, 0xe5, 0xfc, 0x92, 0xdb, 0x9a, 0x89,
0x7a, 0x15, 0x73, 0x11, 0x4d, 0x07, 0xd7, 0xad, 0x60, 0x9a, 0x55, 0xa4, 0x74, 0x71, 0x5d, 0x17,
0xc6, 0xfa, 0xec, 0xcc, 0xfc, 0x59, 0xbb, 0x79, 0x4d, 0x24, 0x54, 0x29, 0xe6, 0xcd, 0xb9, 0xe1,
0xc1, 0x57, 0x36, 0xfe, 0xde, 0x9e, 0x58, 0x11, 0x24, 0x84, 0x10, 0x40, 0xe1, 0x5d, 0x86, 0x7f,
0x7c, 0x5f, 0x2d, 0xfb, 0x9d, 0x74, 0x47, 0xbc, 0x65, 0x5b, 0xa2, 0xd9, 0xcd, 0x8d, 0x5f, 0x20,
0xe2, 0x05, 0x45, 0x05, 0xf7, 0xda, 0x09, 0x6c, 0xc7, 0xc0, 0xf3, 0xd1, 0x85, 0x5a, 0x83, 0xb3,
0x64, 0x37, 0x37, 0x47, 0xd5, 0x50, 0x93, 0x13, 0x28, 0xcc, 0x4c, 0x16, 0x27, 0x06, 0x2f, 0xbd,
0xb3, 0xe9, 0xd5, 0xc2, 0x1b, 0xbc, 0x2a, 0xf4, 0x15, 0xcd, 0x20, 0x84, 0x50, 0x80, 0x20, 0x10,
0xdc, 0x73, 0x9f, 0x68, 0xff, 0xe6, 0x63, 0xe9, 0xc3, 0x1d, 0x3d, 0x9d, 0x5b, 0xca, 0x72, 0xd2,
0xe3, 0xab, 0xe5, 0x10, 0x02, 0xbc, 0x6d, 0xbb, 0x70, 0x0a, 0x51, 0xd7, 0x1b, 0xd0, 0x14, 0xc5,
0x29, 0x53, 0x2b, 0x2f, 0x90, 0xbb, 0x38, 0x35, 0x76, 0xae, 0x7f, 0xf2, 0xe5, 0x3d, 0x6f, 0x56,
0x8f, 0x02, 0x65, 0xc0, 0xb8, 0xeb, 0x9a, 0xa8, 0xc3, 0x02, 0xf5, 0xf0, 0xfd, 0xf5, 0x8b, 0xc1,
0xbd, 0xbd, 0x9b, 0x95, 0x67, 0xd2, 0xcd, 0xe5, 0x36, 0x21, 0x1c, 0xd4, 0x48, 0x96, 0x85, 0x89,
0x48, 0xa5, 0xb0, 0x60, 0xe4, 0x2b, 0x65, 0x7b, 0x76, 0x31, 0xbf, 0x38, 0x7a, 0xf0, 0x6f, 0xf3,
0x3f, 0x3c, 0x73, 0x95, 0x3c, 0x50, 0x01, 0xca, 0x52, 0x4a, 0xeb, 0xae, 0x1a, 0x49, 0x29, 0x5d,
0xc0, 0x70, 0xde, 0x3f, 0x50, 0x72, 0x82, 0xdd, 0x07, 0x6a, 0xf9, 0xf3, 0x01, 0x7f, 0x65, 0xa0,
0x4d, 0x2c, 0x9e, 0xbf, 0x31, 0x21, 0xac, 0xcb, 0xc4, 0x5a, 0x82, 0x6e, 0xd1, 0x6b, 0x1f, 0x5e,
0xbf, 0xcf, 0x3a, 0x02, 0xd8, 0x80, 0x09, 0xd8, 0x72, 0xd9, 0x2f, 0xee, 0x79, 0x95, 0x73, 0x72,
0xc7, 0xb1, 0x73, 0xff, 0x1a, 0xd9, 0x7d, 0x7f, 0xc7, 0x55, 0x50, 0xea, 0x63, 0xa8, 0x7e, 0x3b,
0x2e, 0x9c, 0xbb, 0x28, 0xd8, 0x7e, 0xc0, 0x15, 0x77, 0xac, 0xcc, 0xbd, 0x82, 0x3a, 0x5b, 0x53,
0xb3, 0xba, 0xae, 0xa7, 0xfc, 0x7e, 0x1f, 0x3e, 0xaf, 0x07, 0x55, 0x55, 0x91, 0x52, 0x62, 0xdb,
0x36, 0xd5, 0xaa, 0x49, 0xb1, 0x54, 0x62, 0x7c, 0x6a, 0xee, 0x8e, 0x20, 0x65, 0xb9, 0xc3, 0x84,
0x10, 0x9a, 0x10, 0xc2, 0x2b, 0x84, 0xf0, 0x09, 0x21, 0x02, 0xf5, 0xf0, 0x09, 0x21, 0x7c, 0x52,
0x0f, 0x13, 0x4e, 0xb5, 0x31, 0x35, 0x6b, 0xb0, 0x50, 0x51, 0x98, 0x5d, 0xb2, 0x99, 0x2f, 0x41,
0xc1, 0xd4, 0xc8, 0x17, 0x6b, 0x28, 0xbe, 0x18, 0xf5, 0xfc, 0xdb, 0xc2, 0xb4, 0x65, 0x82, 0x47,
0x81, 0x24, 0xa0, 0x2f, 0x7f, 0xc0, 0x4d, 0xa9, 0xa2, 0xb1, 0x98, 0xe6, 0xf7, 0xfb, 0x08, 0x04,
0x02, 0x24, 0x93, 0x49, 0xf2, 0xd7, 0x67, 0x49, 0xa6, 0x52, 0xb8, 0xae, 0xc4, 0x30, 0x8a, 0xc4,
0x62, 0x71, 0x60, 0x74, 0x35, 0x30, 0x2b, 0x84, 0x30, 0xe4, 0xc7, 0x4a, 0x75, 0xd3, 0x0c, 0x12,
0xa8, 0xd6, 0xad, 0x18, 0xaa, 0x83, 0x6e, 0x2a, 0x21, 0x00, 0x6a, 0x35, 0xfb, 0xa0, 0xeb, 0xba,
0x3d, 0x8a, 0xaa, 0xa0, 0xe9, 0x3a, 0x35, 0xc7, 0x91, 0x9a, 0xae, 0x03, 0x52, 0xba, 0xae, 0xeb,
0x08, 0x21, 0x2e, 0x01, 0x25, 0xc0, 0xba, 0xb5, 0x76, 0xef, 0xa0, 0x51, 0xfd, 0xdb, 0x6a, 0x3d,
0xb4, 0x8f, 0x01, 0xff, 0xc7, 0x90, 0x80, 0x0b, 0x38, 0x40, 0xad, 0x7e, 0xbb, 0xf2, 0x0e, 0xa2,
0xff, 0x17, 0x66, 0x9b, 0xf9, 0x0b, 0x88, 0x97, 0x4b, 0xdf, 0x00, 0x00, 0x00, 0x00, 0x49, 0x45,
0x4e, 0x44, 0xae, 0x42, 0x60, 0x82,
0xce, 0x00, 0x00, 0x05, 0x89, 0x49, 0x44, 0x41, 0x54, 0x48, 0xc7, 0xb5, 0x55, 0x6b, 0x4c, 0x93,
0x67, 0x14, 0xfe, 0xb6, 0x18, 0xcd, 0x74, 0x5b, 0xfc, 0xb1, 0x79, 0x61, 0xb0, 0x85, 0x65, 0x31,
0xfb, 0x65, 0xdc, 0x24, 0xc6, 0x98, 0x98, 0x08, 0xcc, 0x2d, 0x16, 0xa2, 0x20, 0xa0, 0x50, 0x6a,
0x26, 0x0e, 0x37, 0xb3, 0x64, 0x8b, 0xdb, 0x34, 0xb8, 0x65, 0x99, 0x61, 0x41, 0x49, 0xb6, 0x18,
0xa2, 0xc3, 0x4b, 0x30, 0x51, 0xb6, 0x20, 0xa2, 0x5b, 0xdc, 0x14, 0x61, 0xe0, 0x8c, 0x26, 0xee,
0xa2, 0xa0, 0xdc, 0x0a, 0x08, 0x42, 0xe9, 0xed, 0xeb, 0x85, 0x16, 0xe8, 0x85, 0x16, 0x5a, 0x28,
0xf0, 0xec, 0x3d, 0x07, 0xfa, 0xb5, 0x9d, 0x97, 0x65, 0x3f, 0xd6, 0xe4, 0x09, 0x50, 0xde, 0xf7,
0x3c, 0xe7, 0x39, 0xe7, 0x39, 0xe7, 0x95, 0x24, 0x49, 0x8a, 0x17, 0x48, 0xfa, 0x9f, 0xb1, 0x54,
0x40, 0x7a, 0xab, 0xb6, 0xb6, 0xb6, 0x49, 0xab, 0xed, 0x94, 0x9f, 0x88, 0xce, 0x4e, 0xb9, 0x33,
0x8c, 0xae, 0x2e, 0x46, 0x17, 0xa1, 0xbb, 0x9b, 0xd1, 0xfd, 0x48, 0xdc, 0x97, 0xab, 0xab, 0xab,
0x6f, 0x0a, 0x8e, 0xb5, 0x4c, 0xa4, 0x37, 0x18, 0xbc, 0x26, 0xb3, 0x8c, 0x47, 0xc1, 0x2c, 0x5b,
0x20, 0x5b, 0xac, 0xb0, 0x58, 0x6d, 0xb0, 0xda, 0xec, 0xb0, 0xd9, 0xed, 0xb0, 0x0f, 0x0e, 0xa2,
0xbc, 0xfc, 0x38, 0x06, 0x1d, 0x0e, 0x38, 0x9c, 0x4e, 0x86, 0x73, 0x68, 0x88, 0x31, 0x34, 0x3c,
0xac, 0x60, 0x78, 0x64, 0x04, 0xfd, 0xfd, 0xfd, 0xf6, 0x27, 0x12, 0x3d, 0x8e, 0x20, 0x1c, 0x7c,
0xc3, 0x86, 0x0d, 0x31, 0x81, 0x29, 0x28, 0x61, 0xc4, 0xe5, 0x52, 0xe0, 0x12, 0xd0, 0xe9, 0x74,
0x8f, 0x27, 0x0a, 0x93, 0x58, 0x6d, 0xb6, 0x87, 0x08, 0xda, 0x3b, 0x3a, 0x70, 0xbe, 0xa6, 0x06,
0x2b, 0x57, 0xae, 0xc4, 0x85, 0x8b, 0x17, 0x21, 0x4a, 0x3a, 0x1b, 0xd4, 0xed, 0x66, 0xb8, 0x09,
0x1e, 0x8f, 0x82, 0xc7, 0x12, 0xc9, 0x16, 0x4b, 0x94, 0x8a, 0x41, 0x41, 0x32, 0x4b, 0x70, 0xfb,
0xf6, 0x6d, 0xa4, 0xa7, 0xa7, 0x23, 0x3f, 0x3f, 0x1f, 0x87, 0x4b, 0x4b, 0x91, 0x94, 0x94, 0xc4,
0x3f, 0xd5, 0x6a, 0x35, 0xb6, 0x6c, 0xd9, 0x82, 0xb6, 0xb6, 0x36, 0x78, 0xbc, 0x5e, 0x78, 0xc3,
0x18, 0x1d, 0x65, 0x0c, 0x0c, 0x0c, 0xc4, 0x12, 0x45, 0x97, 0xea, 0x9f, 0x2a, 0x2a, 0x4e, 0x9f,
0x86, 0x2a, 0x2d, 0x0d, 0xcd, 0x77, 0xef, 0x2a, 0xd9, 0x27, 0x27, 0x27, 0xc3, 0x23, 0x32, 0xa6,
0xe0, 0xcd, 0xcd, 0xcd, 0xd8, 0xb8, 0x71, 0x23, 0xaa, 0xaa, 0xaa, 0x30, 0xea, 0xf3, 0xc1, 0x47,
0xf0, 0xfb, 0x19, 0x7a, 0xbd, 0x3e, 0x42, 0x64, 0x30, 0x1a, 0xbd, 0xd1, 0xa5, 0xb2, 0x74, 0x35,
0x43, 0xff, 0xe3, 0x37, 0x78, 0x70, 0x44, 0x8d, 0xd6, 0x3d, 0xaf, 0xe1, 0x4e, 0xd6, 0x3c, 0x74,
0xef, 0x5b, 0x0d, 0xdd, 0x89, 0xf7, 0x21, 0xd7, 0x9f, 0x82, 0xcb, 0x6a, 0x40, 0x45, 0x45, 0x05,
0x67, 0x1c, 0x0e, 0x4c, 0xfd, 0x49, 0x13, 0xc9, 0x08, 0xb7, 0x61, 0x6c, 0x6c, 0x6c, 0x16, 0xe3,
0xe3, 0x30, 0x18, 0x0c, 0x11, 0x22, 0xa3, 0xd1, 0xe4, 0x65, 0x12, 0x01, 0xdd, 0xb9, 0x62, 0xb4,
0xe7, 0x2e, 0x40, 0x5b, 0x96, 0x04, 0x9d, 0x66, 0x01, 0xac, 0xbb, 0x9e, 0x85, 0xbd, 0xf0, 0x39,
0xc8, 0x05, 0x8b, 0xd0, 0x97, 0x3f, 0x9f, 0xbf, 0xd7, 0xee, 0x5a, 0x0a, 0xfb, 0xad, 0x0b, 0x9c,
0xb1, 0x5f, 0x20, 0x1c, 0xb8, 0xbd, 0xbd, 0x1d, 0x59, 0x59, 0x59, 0x08, 0x04, 0x02, 0x0a, 0x84,
0x88, 0x08, 0x91, 0xc9, 0x64, 0xf2, 0xca, 0xf7, 0x5b, 0xd0, 0x5d, 0xb4, 0x96, 0x03, 0x51, 0xe0,
0xd0, 0xa7, 0xcb, 0x80, 0xfd, 0xcb, 0x81, 0x7d, 0xcb, 0xe6, 0xb0, 0x9c, 0xff, 0x0e, 0xee, 0x5d,
0x02, 0xf3, 0xce, 0x85, 0x7c, 0x6e, 0xe0, 0x48, 0x2e, 0xfc, 0x2e, 0x27, 0xc6, 0xe7, 0x82, 0x06,
0x83, 0x41, 0xe4, 0xe5, 0xe5, 0x09, 0x33, 0xc9, 0x98, 0x98, 0x98, 0x60, 0x18, 0x63, 0x88, 0x8c,
0x06, 0x6f, 0xd7, 0x67, 0x6f, 0xa2, 0x73, 0xdb, 0xd3, 0xf0, 0x7d, 0xf4, 0x02, 0x07, 0x0d, 0x96,
0x6d, 0x82, 0xfb, 0xda, 0x49, 0x18, 0x9b, 0xae, 0x41, 0xa3, 0xce, 0x83, 0x47, 0x7b, 0x03, 0xe3,
0xd7, 0x8f, 0x63, 0xf2, 0xf0, 0x5a, 0x26, 0x1c, 0xd9, 0xb3, 0x98, 0xc9, 0x0c, 0xdf, 0x15, 0x30,
0x41, 0x38, 0x70, 0xa9, 0x30, 0x48, 0x5d, 0x5d, 0x1d, 0x26, 0x27, 0x27, 0x11, 0x0a, 0x85, 0x60,
0x36, 0x9b, 0x23, 0x44, 0x0f, 0xce, 0x14, 0x05, 0xe8, 0x92, 0x5f, 0x90, 0xcc, 0x14, 0xbd, 0x0c,
0x4f, 0xed, 0xb7, 0xb0, 0x8b, 0x32, 0x3a, 0x84, 0x19, 0x84, 0x5a, 0x68, 0x34, 0x1a, 0x6e, 0x3c,
0x59, 0xf7, 0xc6, 0xb5, 0x06, 0x84, 0x7e, 0x2a, 0xe2, 0x64, 0xc2, 0x64, 0xae, 0x7b, 0x57, 0x71,
0xf6, 0xec, 0x59, 0xa4, 0xa6, 0xa6, 0xb2, 0x1b, 0x57, 0xad, 0x5a, 0xc5, 0xbf, 0x57, 0x56, 0x56,
0x42, 0x96, 0xe5, 0x59, 0xa2, 0xec, 0x57, 0xa5, 0x82, 0xb6, 0xed, 0xf3, 0x31, 0xb8, 0xfb, 0x79,
0xbe, 0xec, 0xf9, 0xf5, 0x28, 0x06, 0x85, 0xe3, 0x9c, 0xc2, 0x6d, 0xc3, 0x62, 0x10, 0x69, 0xe8,
0xc8, 0xae, 0xd4, 0xf0, 0xb2, 0xb2, 0x32, 0xf4, 0xf5, 0xf5, 0x71, 0xe6, 0xd3, 0x35, 0x7b, 0x59,
0x99, 0xf1, 0xdd, 0x67, 0xd0, 0xb5, 0x3b, 0x1e, 0x93, 0x3e, 0x37, 0xa6, 0xa6, 0xa6, 0x58, 0x51,
0x43, 0x43, 0x03, 0xa6, 0xa7, 0xa7, 0x19, 0x0a, 0xd1, 0xf7, 0xc9, 0xd2, 0x99, 0x8e, 0x9c, 0xa7,
0x30, 0x43, 0xe5, 0x3a, 0x96, 0xc1, 0x2a, 0x86, 0xc4, 0xc4, 0x8f, 0x08, 0x17, 0x91, 0x8a, 0x51,
0xe1, 0x2c, 0x6a, 0x78, 0x6b, 0x6b, 0x2b, 0x32, 0x33, 0x33, 0xb9, 0x24, 0x14, 0x00, 0x81, 0x51,
0xa0, 0x64, 0x35, 0xc6, 0x3e, 0x7e, 0x91, 0x55, 0xb9, 0xef, 0xd6, 0xf2, 0xf7, 0xd4, 0x23, 0xbb,
0x70, 0xee, 0xcc, 0xcc, 0x0c, 0xc3, 0x62, 0xb1, 0xcc, 0x12, 0x35, 0xaa, 0xa4, 0x3f, 0x28, 0x2b,
0x56, 0xf3, 0xe7, 0xc5, 0x87, 0x54, 0x90, 0x9b, 0x88, 0x8c, 0x4a, 0x71, 0x5a, 0xcc, 0x53, 0x38,
0x00, 0x65, 0x3f, 0x5d, 0x77, 0x48, 0xa8, 0x8a, 0x43, 0x4f, 0xee, 0x3c, 0xd8, 0x2f, 0x1c, 0x44,
0x87, 0xd8, 0x1a, 0xb9, 0xb9, 0xb9, 0xa0, 0xcf, 0x43, 0x44, 0x77, 0x32, 0x24, 0xa7, 0x83, 0xcb,
0xb6, 0x0c, 0x6e, 0x53, 0x0f, 0xf7, 0x21, 0xac, 0x62, 0x5c, 0xcc, 0x01, 0x35, 0xba, 0xa4, 0xa4,
0x04, 0x09, 0x09, 0x09, 0x5c, 0x4e, 0xca, 0x9a, 0x9a, 0xcc, 0xcd, 0x6f, 0xbd, 0xc2, 0x09, 0x1a,
0x44, 0xa2, 0xfd, 0x25, 0x2a, 0xa8, 0x54, 0x2a, 0x9a, 0x1b, 0xa5, 0x6c, 0x94, 0x8c, 0x52, 0x3a,
0x92, 0x3d, 0xfc, 0xc1, 0x62, 0x84, 0x0e, 0x24, 0x22, 0x25, 0x25, 0x05, 0x85, 0x85, 0x85, 0xac,
0x82, 0xec, 0x4a, 0xc1, 0xea, 0xeb, 0xeb, 0x11, 0x1f, 0x1f, 0x8f, 0x9c, 0x9c, 0x1c, 0xbe, 0x48,
0xa5, 0xa3, 0xff, 0xd3, 0xd9, 0xdd, 0x3b, 0x35, 0x4c, 0x64, 0x2e, 0x58, 0x88, 0xeb, 0x5b, 0x17,
0xe1, 0xf2, 0xe5, 0xcb, 0x7c, 0x86, 0x40, 0xc9, 0xc4, 0xb8, 0x2e, 0x5a, 0xd1, 0x98, 0x7d, 0x40,
0x51, 0x41, 0x01, 0xe9, 0x42, 0x46, 0x46, 0x06, 0xe2, 0xe2, 0xe2, 0xb0, 0x7e, 0xfd, 0x7a, 0xee,
0x19, 0x25, 0x40, 0x44, 0x5c, 0xd6, 0xe6, 0x4b, 0x8a, 0xa2, 0xce, 0x2f, 0x53, 0x94, 0xe0, 0x74,
0x97, 0x92, 0xa4, 0x38, 0xca, 0x66, 0x88, 0xee, 0xd1, 0x44, 0x6b, 0x2d, 0x1f, 0xa0, 0xc3, 0xdc,
0x70, 0xf1, 0x11, 0xef, 0x09, 0x76, 0xec, 0xd8, 0x81, 0xc4, 0xc4, 0x44, 0x64, 0x67, 0x67, 0xb3,
0x49, 0xa8, 0xb4, 0x4c, 0xfa, 0xf3, 0x41, 0xa5, 0x47, 0xd6, 0xf3, 0x5f, 0x31, 0x01, 0x05, 0xa7,
0x64, 0x29, 0x19, 0x7f, 0xf4, 0xae, 0x8b, 0x76, 0xdd, 0xcc, 0xa9, 0x6d, 0xac, 0x22, 0xba, 0xe1,
0x44, 0x4c, 0x2a, 0x68, 0x9e, 0x8a, 0x8b, 0x8b, 0xb9, 0xb4, 0xe4, 0x4c, 0x97, 0xcd, 0x84, 0xe9,
0xaf, 0xdf, 0x50, 0x5c, 0x37, 0x72, 0xe7, 0x97, 0x18, 0xb5, 0x64, 0x26, 0x4f, 0xf4, 0x33, 0x41,
0x73, 0xd4, 0x1e, 0x35, 0x47, 0xf8, 0xab, 0x32, 0xa6, 0xe1, 0x74, 0x99, 0x32, 0x0b, 0xab, 0x10,
0x35, 0x47, 0x53, 0x53, 0x13, 0x02, 0x3f, 0x7c, 0x18, 0x35, 0x47, 0x2f, 0x89, 0x55, 0xe4, 0xe0,
0x73, 0x44, 0x40, 0x86, 0x22, 0xe5, 0xe4, 0x60, 0x31, 0x77, 0x91, 0xcd, 0xa0, 0xab, 0xfc, 0x5c,
0xd9, 0x0c, 0x38, 0xf0, 0x0a, 0xa6, 0x6e, 0x9e, 0x44, 0x50, 0x10, 0x50, 0x09, 0x68, 0x26, 0xa8,
0x74, 0xca, 0x65, 0xbb, 0x05, 0x63, 0xd5, 0x9f, 0xc4, 0x6c, 0x86, 0xe1, 0xa6, 0x2b, 0x0a, 0x09,
0x8d, 0x06, 0x11, 0xd0, 0xd0, 0x5b, 0xac, 0x56, 0xda, 0xe6, 0x11, 0x22, 0xbb, 0xcd, 0xea, 0xed,
0xd9, 0x9f, 0x14, 0xb3, 0xeb, 0xa6, 0xcb, 0x37, 0x23, 0xf8, 0x7b, 0x25, 0x1c, 0x1d, 0xb7, 0xa0,
0xc9, 0x57, 0xf3, 0xae, 0xf3, 0x35, 0x1e, 0x43, 0xe8, 0xd0, 0x9a, 0xd8, 0x5d, 0x57, 0x5e, 0xc0,
0xe5, 0x0a, 0x93, 0xd0, 0xb0, 0xd3, 0x2b, 0x40, 0xca, 0x07, 0xf4, 0x7a, 0x68, 0xb5, 0xda, 0x08,
0x91, 0x60, 0xf7, 0xba, 0x8c, 0xf7, 0xd1, 0xfb, 0xc5, 0xba, 0xff, 0xb4, 0xbd, 0xf5, 0x65, 0x6a,
0xde, 0xde, 0xd4, 0x13, 0x52, 0x4c, 0x4a, 0xa8, 0x02, 0xd4, 0x4f, 0xd1, 0x1b, 0xf4, 0xf4, 0xf4,
0xd2, 0xcb, 0x1b, 0x21, 0x6a, 0x69, 0x69, 0xe9, 0x15, 0x0d, 0xf6, 0x3a, 0x1d, 0x83, 0x5e, 0xc3,
0xb9, 0x83, 0x81, 0x7f, 0x7d, 0x8f, 0x0a, 0x96, 0xcc, 0xd8, 0x6e, 0x54, 0x05, 0x84, 0x02, 0x9f,
0x28, 0xa7, 0x4f, 0xa8, 0xf0, 0x89, 0xfb, 0x3e, 0x41, 0xe2, 0x17, 0x9b, 0xc0, 0x2f, 0x9e, 0x06,
0xbf, 0x78, 0xc2, 0xfd, 0x0f, 0xfa, 0xfa, 0xfc, 0x8d, 0x8d, 0x8d, 0xda, 0x30, 0xd1, 0x0a, 0x81,
0x4d, 0x73, 0x50, 0x09, 0xa4, 0xbd, 0x93, 0x20, 0xbd, 0x77, 0x74, 0x9d, 0x74, 0xe2, 0xd2, 0xdb,
0xd2, 0x6f, 0xb7, 0x36, 0x4b, 0x86, 0x7b, 0x5b, 0xa5, 0xf1, 0x9b, 0xe9, 0x52, 0x6f, 0x4d, 0xaa,
0x74, 0xb5, 0x74, 0x8d, 0x74, 0xf4, 0xf5, 0xc5, 0x92, 0x46, 0x9c, 0xcb, 0x14, 0xd8, 0x3a, 0x87,
0x2c, 0x81, 0xec, 0x39, 0xe4, 0xcc, 0x61, 0x9b, 0xc0, 0xf6, 0x39, 0xac, 0xf8, 0x1b, 0xba, 0x8d,
0x77, 0xa5, 0xd0, 0x6c, 0x28, 0x60, 0x00, 0x00, 0x00, 0x00, 0x49, 0x45, 0x4e, 0x44, 0xae, 0x42,
0x60, 0x82,
};
const BITMAP_OPAQUE gerbview_open_recent_drill_files_xpm[1] = {{ png, sizeof( png ), "gerbview_open_recent_drill_files_xpm" }};

View File

@ -8,45 +8,55 @@
static const unsigned char png[] = {
0x89, 0x50, 0x4e, 0x47, 0x0d, 0x0a, 0x1a, 0x0a, 0x00, 0x00, 0x00, 0x0d, 0x49, 0x48, 0x44, 0x52,
0x00, 0x00, 0x00, 0x1a, 0x00, 0x00, 0x00, 0x1a, 0x08, 0x06, 0x00, 0x00, 0x00, 0xa9, 0x4a, 0x4c,
0xce, 0x00, 0x00, 0x02, 0x4e, 0x49, 0x44, 0x41, 0x54, 0x48, 0xc7, 0xbd, 0xd6, 0x4f, 0x88, 0x55,
0x75, 0x18, 0xc6, 0xf1, 0xcf, 0x55, 0xeb, 0x6a, 0xf9, 0x27, 0x66, 0x9c, 0x9a, 0x09, 0x44, 0x92,
0x30, 0x8b, 0x0c, 0x89, 0xa0, 0x86, 0x18, 0xa8, 0x5c, 0x84, 0x03, 0x2d, 0x1c, 0x45, 0x1c, 0x66,
0xae, 0xbf, 0x8b, 0xe3, 0xcc, 0xf8, 0x53, 0x46, 0x4d, 0x4b, 0x98, 0xa2, 0xa1, 0x36, 0x11, 0xb8,
0x8d, 0x88, 0x5a, 0x15, 0x84, 0x03, 0x53, 0x8b, 0x5c, 0x0c, 0x0c, 0x38, 0x1b, 0x97, 0xa1, 0x9b,
0x68, 0xe1, 0x26, 0x57, 0xe1, 0x4e, 0x33, 0x61, 0xa2, 0x91, 0xd1, 0xb7, 0x85, 0x47, 0xb8, 0xc8,
0x9d, 0xe9, 0x7a, 0xef, 0xa5, 0xc5, 0xc3, 0x81, 0xf3, 0x1c, 0xce, 0x97, 0xf7, 0xfd, 0xbd, 0xe7,
0x7d, 0x8e, 0x88, 0xf0, 0x7f, 0xe8, 0x3f, 0x1f, 0x18, 0x3f, 0xa4, 0x37, 0x57, 0x4d, 0xe7, 0xaa,
0xe9, 0x9c, 0x9c, 0xaf, 0x56, 0x3d, 0x85, 0x52, 0xdb, 0x41, 0xf9, 0x90, 0x1f, 0x72, 0x12, 0x39,
0x59, 0xca, 0x49, 0x0c, 0xef, 0xf7, 0x01, 0x9e, 0xc1, 0xaa, 0xb6, 0x81, 0x26, 0x86, 0x6c, 0xcc,
0xc9, 0xdf, 0x39, 0x89, 0xa1, 0x01, 0x3f, 0xe7, 0x24, 0x2a, 0xfb, 0x5d, 0xc3, 0x09, 0x3c, 0xfb,
0x28, 0x95, 0xad, 0x68, 0x1e, 0x4b, 0x46, 0x72, 0x12, 0x47, 0x93, 0x3f, 0x9e, 0xdb, 0xea, 0xe3,
0xa2, 0xb2, 0xd8, 0xd2, 0xe3, 0x73, 0xbc, 0x8d, 0xd5, 0x6d, 0x01, 0xe5, 0xe4, 0x52, 0x4e, 0x62,
0x6c, 0xd8, 0x95, 0xde, 0xd7, 0x7c, 0x3f, 0x56, 0xb1, 0x98, 0x93, 0xe8, 0x7f, 0xc7, 0x1c, 0xc6,
0x50, 0x6e, 0x19, 0x94, 0x0f, 0xdb, 0x96, 0x93, 0x7b, 0x0f, 0xaa, 0xa8, 0xd5, 0xc8, 0xa0, 0x1b,
0x38, 0x8d, 0xed, 0x8d, 0x9e, 0xd5, 0xf2, 0x6d, 0xab, 0xfa, 0x34, 0x27, 0x31, 0x5e, 0x71, 0xa1,
0xab, 0xd3, 0xe4, 0xe6, 0x0e, 0x9f, 0x75, 0x75, 0xfa, 0x68, 0x74, 0xd8, 0xed, 0x9c, 0xc4, 0xcb,
0x2f, 0xfa, 0x0a, 0xef, 0x35, 0xda, 0xbe, 0xfa, 0x37, 0x29, 0xe5, 0xe4, 0x5a, 0x4e, 0x62, 0xef,
0x1e, 0x53, 0x78, 0x1f, 0x23, 0xd8, 0x3d, 0xbc, 0xcf, 0xc5, 0x9c, 0xc4, 0x40, 0xbf, 0x5f, 0x30,
0x81, 0x0d, 0x4d, 0x83, 0x8e, 0x57, 0xbc, 0x9e, 0x93, 0x5b, 0x39, 0xf9, 0xb3, 0xe7, 0x69, 0xe3,
0x05, 0xa8, 0x17, 0x6b, 0x8e, 0x26, 0x43, 0x39, 0xb9, 0x75, 0x64, 0xc8, 0x8d, 0x72, 0xd9, 0x87,
0x78, 0xb5, 0x91, 0xf6, 0x2d, 0x6f, 0x50, 0x42, 0x67, 0x31, 0xca, 0x27, 0x6b, 0xc7, 0x19, 0xab,
0xd1, 0x87, 0x53, 0x38, 0x80, 0x35, 0xad, 0x82, 0x3a, 0xb0, 0x0b, 0xaf, 0xd4, 0x9e, 0xc5, 0x43,
0xde, 0xce, 0x96, 0x40, 0x35, 0x2f, 0x5c, 0x55, 0xaf, 0x35, 0x2b, 0x79, 0xcd, 0x80, 0xca, 0x58,
0xc0, 0x3f, 0x85, 0x7e, 0xad, 0xdd, 0x06, 0xa8, 0xb4, 0x6d, 0xd7, 0xe1, 0x77, 0x67, 0x84, 0x6f,
0x84, 0xed, 0xee, 0x62, 0x14, 0x3b, 0x0a, 0xef, 0x26, 0xa6, 0xb0, 0xb6, 0x1d, 0xa0, 0x59, 0xa3,
0xc2, 0xbc, 0x70, 0x4a, 0xe0, 0x2a, 0xfa, 0x51, 0xb2, 0xd5, 0x82, 0x4d, 0x02, 0xd3, 0x78, 0xa2,
0x55, 0xd0, 0xa0, 0x37, 0x0a, 0xd0, 0xbc, 0xf0, 0x89, 0xb0, 0xdb, 0x5f, 0x5e, 0x30, 0xa3, 0xcf,
0x92, 0xef, 0x84, 0x6e, 0x81, 0x19, 0x3c, 0xd9, 0x34, 0x28, 0x22, 0x28, 0x99, 0x73, 0xb6, 0x06,
0xf6, 0x40, 0x73, 0xc5, 0x75, 0x46, 0x78, 0x5e, 0xe0, 0x27, 0xac, 0x6f, 0x1e, 0x44, 0x8f, 0x92,
0x59, 0x15, 0x61, 0xba, 0x0e, 0x70, 0x5e, 0x98, 0x14, 0xb8, 0x8d, 0x63, 0xf5, 0x60, 0x8d, 0x07,
0xd7, 0xfd, 0x71, 0x1e, 0x53, 0x72, 0xd9, 0x4b, 0x6e, 0xea, 0x73, 0xc7, 0x44, 0x01, 0x39, 0x27,
0x3c, 0x66, 0x01, 0x17, 0xf1, 0x05, 0xde, 0x7d, 0x38, 0xab, 0x1e, 0x3d, 0xfb, 0xd9, 0x54, 0x0c,
0xc3, 0x69, 0x6f, 0xba, 0xeb, 0x4b, 0x61, 0x9d, 0x05, 0xcc, 0xe3, 0x6b, 0x0c, 0xd6, 0x8b, 0x8f,
0xe6, 0x7e, 0x34, 0xee, 0x57, 0x57, 0xb2, 0xcd, 0xa2, 0x8d, 0xae, 0xe3, 0x47, 0x7c, 0xbb, 0x1c,
0xa4, 0x69, 0x50, 0x0d, 0xf0, 0x37, 0xbc, 0x85, 0x73, 0x38, 0xb8, 0x52, 0x10, 0xb6, 0x0a, 0xea,
0xc6, 0x8e, 0x62, 0xb1, 0x96, 0x5b, 0xfa, 0x8e, 0x1a, 0x80, 0x75, 0xe0, 0xf1, 0x96, 0x37, 0x43,
0xbb, 0xf4, 0x2f, 0x1f, 0x40, 0x09, 0xe1, 0x51, 0x20, 0x95, 0x01, 0x00, 0x00, 0x00, 0x00, 0x49,
0x45, 0x4e, 0x44, 0xae, 0x42, 0x60, 0x82,
0xce, 0x00, 0x00, 0x02, 0xef, 0x49, 0x44, 0x41, 0x54, 0x48, 0xc7, 0xbd, 0x95, 0x5d, 0x48, 0x53,
0x61, 0x18, 0xc7, 0x9f, 0xb3, 0xed, 0x6c, 0xce, 0x2d, 0xb0, 0x05, 0x95, 0xd1, 0x46, 0xa6, 0xd0,
0x37, 0x7d, 0x58, 0xd8, 0x98, 0x93, 0x99, 0xa6, 0x91, 0xb4, 0x96, 0x6e, 0x2c, 0x53, 0xe7, 0xb1,
0xe5, 0x72, 0x11, 0x7d, 0x50, 0x18, 0x04, 0xe5, 0x2e, 0x8a, 0x90, 0xba, 0xe8, 0xa2, 0x88, 0xa0,
0x42, 0x2f, 0x8a, 0x6e, 0x0c, 0x84, 0x02, 0x6f, 0x02, 0x2f, 0xba, 0x89, 0x32, 0xa8, 0xbb, 0x10,
0xc2, 0x2e, 0x82, 0xf2, 0x4a, 0x6f, 0x8c, 0x42, 0x3d, 0xfd, 0x9f, 0xd3, 0x7b, 0xea, 0x24, 0x16,
0x9e, 0xe3, 0xe8, 0xc8, 0x8f, 0x73, 0xce, 0xe3, 0xcb, 0xf3, 0x3b, 0xcf, 0xf3, 0x7e, 0x8c, 0x54,
0x55, 0xa5, 0xff, 0xc1, 0xbc, 0xc1, 0x13, 0x0a, 0xad, 0xcc, 0x2a, 0x34, 0xa4, 0x93, 0x49, 0x51,
0x25, 0x11, 0x49, 0x79, 0x17, 0x75, 0xb5, 0xd3, 0xb9, 0x6c, 0x3b, 0xa9, 0xe0, 0x3b, 0xdf, 0x8f,
0x36, 0xd3, 0x13, 0x88, 0x02, 0xa0, 0x20, 0xdf, 0xa2, 0x77, 0x2c, 0x48, 0xc5, 0xa9, 0x8f, 0xef,
0xc7, 0xdb, 0xe8, 0x9b, 0xc7, 0x43, 0xdd, 0x10, 0xed, 0x04, 0xb6, 0xbc, 0x88, 0xba, 0x52, 0xb4,
0x5d, 0x54, 0xa3, 0xfa, 0x57, 0x51, 0xc7, 0xb1, 0x23, 0x34, 0xc1, 0xcf, 0xe1, 0x0a, 0x7a, 0x0c,
0x49, 0x0b, 0x90, 0xf3, 0x23, 0x52, 0xe8, 0xa6, 0x26, 0x4a, 0xd1, 0x64, 0x6d, 0x15, 0x0d, 0x28,
0x49, 0xfa, 0xc4, 0xef, 0xad, 0x71, 0x1a, 0x85, 0xe4, 0x0c, 0x28, 0xb6, 0x32, 0x5f, 0x7f, 0xbc,
0x64, 0x32, 0x24, 0x23, 0xe9, 0xb8, 0x5e, 0xd1, 0x1c, 0x66, 0x8b, 0x57, 0xd0, 0x15, 0x48, 0x22,
0xc0, 0xbe, 0x28, 0x11, 0x92, 0x45, 0x45, 0x35, 0x1f, 0x90, 0xac, 0x19, 0x9c, 0x07, 0x67, 0x93,
0x31, 0x1a, 0xe1, 0xf8, 0xbe, 0x6a, 0x1a, 0xc2, 0x7b, 0x27, 0x70, 0x2d, 0x4e, 0x94, 0xa2, 0x01,
0x4e, 0x98, 0x6e, 0xa6, 0x3e, 0x24, 0x3b, 0x0d, 0x4e, 0x82, 0xe0, 0xc1, 0x7a, 0xba, 0x2a, 0xe2,
0xe3, 0x2c, 0x06, 0xa5, 0x66, 0xdb, 0xf7, 0x7b, 0xef, 0x24, 0xc8, 0x8b, 0x64, 0xef, 0x21, 0x1b,
0xdb, 0x53, 0x49, 0x17, 0x44, 0xc2, 0x03, 0x3c, 0xf9, 0x1d, 0x87, 0xc9, 0x8f, 0x45, 0xf2, 0xb1,
0xb3, 0x85, 0x3e, 0x97, 0x96, 0xd0, 0x75, 0xc4, 0x1a, 0xcc, 0xb6, 0x8f, 0x2f, 0x89, 0xf7, 0x87,
0x01, 0x37, 0xe8, 0x00, 0xa7, 0xc0, 0x56, 0x7d, 0x39, 0x8b, 0x71, 0x6b, 0x45, 0x3c, 0x0b, 0x3c,
0x66, 0x45, 0x1b, 0x81, 0x6a, 0x60, 0x10, 0x6c, 0x00, 0xeb, 0xc5, 0x0a, 0x4b, 0x1b, 0x06, 0xcb,
0x60, 0x9d, 0xf8, 0x9f, 0xd7, 0xac, 0xc8, 0x09, 0xa6, 0xe9, 0x16, 0x24, 0x0f, 0x81, 0x8f, 0x26,
0xc4, 0x84, 0xfb, 0xc1, 0x72, 0x30, 0x0b, 0xb8, 0x95, 0x4e, 0x43, 0x65, 0xd6, 0x96, 0x37, 0xae,
0x51, 0xea, 0x81, 0xe4, 0x39, 0x68, 0xd3, 0xaa, 0x1a, 0x01, 0x15, 0x60, 0x35, 0x6d, 0xc1, 0x7b,
0xa1, 0x26, 0xbb, 0x67, 0x65, 0xb5, 0xcd, 0x15, 0x75, 0xd3, 0x21, 0x21, 0x62, 0x2e, 0x82, 0x06,
0x9a, 0xa4, 0x6d, 0x34, 0xac, 0x89, 0xef, 0x82, 0x65, 0x9a, 0xec, 0x81, 0xd5, 0xf3, 0x4e, 0x17,
0x39, 0xd0, 0xfd, 0xb7, 0xbf, 0xaa, 0x9a, 0x8f, 0x47, 0x20, 0xa0, 0x55, 0xdb, 0x6f, 0x45, 0x66,
0x9c, 0xac, 0x00, 0xd9, 0x91, 0xb2, 0x15, 0xc9, 0xfa, 0xff, 0x22, 0x6b, 0xd4, 0x44, 0x63, 0xa0,
0xd5, 0x6c, 0x1b, 0xe7, 0xae, 0x0c, 0x49, 0x6c, 0xd4, 0x97, 0x58, 0x0a, 0xe3, 0x98, 0x9f, 0xaf,
0x68, 0xea, 0x4f, 0x49, 0x5a, 0x93, 0xf0, 0x86, 0x7d, 0x0a, 0x2e, 0xf1, 0xd2, 0x5f, 0xf4, 0xcf,
0x04, 0xae, 0xa5, 0x60, 0x3f, 0xb8, 0x8c, 0x83, 0x48, 0xc5, 0xce, 0xe1, 0xe0, 0x17, 0xf0, 0x0c,
0xf4, 0x82, 0x2a, 0xcb, 0x27, 0xc3, 0x3c, 0x32, 0xae, 0xae, 0x04, 0x7f, 0x2a, 0x9e, 0x5e, 0xe1,
0x99, 0x7f, 0xfc, 0x6e, 0x58, 0x91, 0xfc, 0x53, 0x24, 0x64, 0x6b, 0x00, 0x1f, 0xa4, 0xb5, 0xe0,
0x9a, 0x55, 0xc9, 0x42, 0x44, 0x85, 0xe2, 0x48, 0x0a, 0x0b, 0x24, 0x59, 0x96, 0x77, 0x79, 0xbd,
0xde, 0x4d, 0x89, 0x44, 0xc2, 0x6e, 0x6c, 0xb5, 0xc3, 0xe1, 0xa8, 0x0f, 0x06, 0x83, 0x6e, 0x63,
0x47, 0x10, 0xab, 0xf6, 0xf9, 0x7c, 0xfe, 0x5c, 0x2e, 0x67, 0x5b, 0xe8, 0xf1, 0xe1, 0xe3, 0x3b,
0x24, 0xbc, 0x89, 0x55, 0x9b, 0xcd, 0x36, 0x53, 0x57, 0x57, 0x97, 0x8d, 0x44, 0x22, 0x0e, 0x8e,
0x4b, 0x92, 0xf4, 0x9a, 0xe3, 0x65, 0x65, 0x65, 0x6f, 0xa2, 0xd1, 0xe8, 0x12, 0x8e, 0xd9, 0xed,
0x76, 0x3e, 0x2f, 0x55, 0x97, 0xcb, 0x35, 0xd5, 0xd4, 0xd4, 0x54, 0x6f, 0xaa, 0x7c, 0x54, 0xb2,
0x19, 0x49, 0xa7, 0x9d, 0x4e, 0xe7, 0x6c, 0x2c, 0x16, 0x1b, 0x56, 0x14, 0xa5, 0x80, 0xbf, 0x16,
0xc9, 0x5e, 0x70, 0xd2, 0xf2, 0xf2, 0xf2, 0xa9, 0x64, 0x32, 0xb9, 0x9b, 0x63, 0x18, 0xd3, 0xc8,
0xc7, 0x57, 0x51, 0x51, 0xd1, 0x4c, 0x3c, 0x1e, 0xbf, 0x4f, 0x26, 0x0f, 0x46, 0x5b, 0x28, 0x14,
0x0a, 0xe3, 0xab, 0xef, 0xa0, 0x75, 0x7b, 0xf5, 0xf6, 0xe1, 0xee, 0xae, 0xa9, 0xa9, 0xe9, 0x45,
0xc2, 0x1e, 0x7e, 0xe6, 0x18, 0xcb, 0xc2, 0xe1, 0x70, 0x1c, 0x1f, 0x74, 0x1b, 0xf2, 0x1d, 0xe6,
0x27, 0x15, 0xb2, 0x4c, 0x26, 0x23, 0x73, 0x22, 0x63, 0x9c, 0xdb, 0xa8, 0xb7, 0x52, 0x87, 0xc7,
0xe8, 0x63, 0x7f, 0x00, 0x56, 0xb3, 0x98, 0x72, 0xf8, 0x9a, 0x02, 0x50, 0x00, 0x00, 0x00, 0x00,
0x49, 0x45, 0x4e, 0x44, 0xae, 0x42, 0x60, 0x82,
};
const BITMAP_OPAQUE gl_change_xpm[1] = {{ png, sizeof( png ), "gl_change_xpm" }};

View File

@ -8,107 +8,126 @@
static const unsigned char png[] = {
0x89, 0x50, 0x4e, 0x47, 0x0d, 0x0a, 0x1a, 0x0a, 0x00, 0x00, 0x00, 0x0d, 0x49, 0x48, 0x44, 0x52,
0x00, 0x00, 0x00, 0x1a, 0x00, 0x00, 0x00, 0x1a, 0x08, 0x06, 0x00, 0x00, 0x00, 0xa9, 0x4a, 0x4c,
0xce, 0x00, 0x00, 0x06, 0x2d, 0x49, 0x44, 0x41, 0x54, 0x48, 0xc7, 0xa5, 0x96, 0x6b, 0x4c, 0x93,
0x67, 0x14, 0xc7, 0x59, 0x20, 0xd1, 0xa9, 0x88, 0x0a, 0xca, 0x48, 0x36, 0x33, 0x92, 0x4d, 0x3e,
0xe8, 0x66, 0xe2, 0x27, 0x82, 0x97, 0xcc, 0x4b, 0xb2, 0x45, 0x97, 0xed, 0x03, 0xd3, 0x04, 0x36,
0x33, 0xc6, 0xdc, 0x82, 0x84, 0x2c, 0x2e, 0x93, 0x0c, 0x11, 0x66, 0x44, 0x40, 0x20, 0xce, 0x1b,
0x72, 0x13, 0x11, 0x01, 0x17, 0x51, 0x0a, 0x0a, 0x05, 0x4a, 0xe9, 0xfd, 0x7e, 0xf1, 0x2d, 0x05,
0x84, 0xb6, 0xb4, 0xa5, 0xb4, 0x7d, 0x2b, 0xb7, 0xb6, 0x5c, 0xe5, 0x2a, 0x70, 0x76, 0x9e, 0x4e,
0x10, 0x14, 0x33, 0x36, 0xdf, 0xe4, 0x49, 0xdf, 0xbe, 0x7d, 0x9e, 0xf3, 0x7b, 0xce, 0xff, 0xfc,
0xcf, 0xfb, 0xd4, 0x0b, 0x00, 0xbc, 0xc8, 0xc0, 0x2b, 0x30, 0x20, 0x20, 0x20, 0x1e, 0x3f, 0xb7,
0xcd, 0x3f, 0x7b, 0x9b, 0x81, 0xd7, 0x7b, 0x18, 0x2f, 0x26, 0x30, 0x30, 0xf0, 0xc0, 0x8b, 0xef,
0x5e, 0x1f, 0xe3, 0x08, 0xc6, 0xf1, 0x49, 0x58, 0x58, 0xd8, 0xcd, 0xd0, 0xd0, 0xd0, 0x5c, 0x9c,
0xf0, 0x07, 0x79, 0xf6, 0x3f, 0x01, 0x1f, 0x6d, 0xde, 0xbc, 0x39, 0x21, 0x28, 0x28, 0xa8, 0xe0,
0xd8, 0xb1, 0x63, 0x65, 0x1b, 0x37, 0x6e, 0xcc, 0x5a, 0xb3, 0x66, 0x4d, 0xb8, 0xd7, 0xba, 0x75,
0xeb, 0x6e, 0x6c, 0xdd, 0xba, 0xb5, 0x60, 0xd5, 0xaa, 0x55, 0xf7, 0x8f, 0x1c, 0x39, 0x22, 0xea,
0xee, 0xee, 0x66, 0xf2, 0x78, 0xbc, 0xb2, 0x1d, 0x3b, 0x76, 0xe4, 0xfa, 0xfb, 0xfb, 0x9f, 0xc1,
0x85, 0x1f, 0xac, 0x20, 0xf8, 0x3b, 0x38, 0x76, 0xe1, 0xfc, 0xf4, 0xed, 0xdb, 0xb7, 0xdf, 0xce,
0xcd, 0xcd, 0x65, 0xab, 0xd5, 0x6a, 0x6d, 0x4a, 0x4a, 0x8a, 0x29, 0x24, 0x24, 0x44, 0xba, 0x7a,
0xf5, 0xea, 0xdb, 0x5e, 0xeb, 0xd7, 0xaf, 0xcf, 0xe9, 0xe9, 0xe9, 0x29, 0x61, 0x30, 0x18, 0x8f,
0xe2, 0xe2, 0xe2, 0x0c, 0x02, 0x81, 0xc0, 0x94, 0x93, 0x93, 0x63, 0x53, 0xa9, 0x54, 0xda, 0xe2,
0xe2, 0x62, 0x56, 0x70, 0x70, 0x70, 0xfe, 0xa6, 0x4d, 0x9b, 0x8e, 0x92, 0x60, 0x6f, 0x80, 0xbc,
0xbf, 0x61, 0xc3, 0x86, 0xcb, 0xbb, 0x77, 0xef, 0x6e, 0x28, 0x2c, 0x2c, 0x6c, 0xc3, 0xf5, 0xc6,
0x8a, 0x8a, 0x0a, 0xab, 0x4e, 0xa7, 0xb3, 0x08, 0x85, 0x42, 0x33, 0xc2, 0x94, 0xf8, 0xfb, 0xcd,
0x05, 0x90, 0x58, 0x2c, 0x7e, 0x94, 0x9a, 0x9a, 0x6a, 0xea, 0xef, 0xef, 0xa7, 0x07, 0x06, 0x06,
0xac, 0xb5, 0xb5, 0xb5, 0x74, 0x4d, 0x4d, 0x8d, 0x85, 0xcb, 0xe5, 0x76, 0x84, 0x87, 0x87, 0xb3,
0x50, 0x82, 0x54, 0x0c, 0xea, 0xb7, 0x08, 0xe0, 0xed, 0xeb, 0xeb, 0x1b, 0x85, 0x32, 0xf1, 0xb3,
0xb2, 0xb2, 0x8c, 0x7a, 0xbd, 0xde, 0x88, 0x31, 0xec, 0x72, 0xb9, 0x9c, 0x7e, 0xf6, 0xec, 0x99,
0x65, 0x64, 0x64, 0xc4, 0xc6, 0xe1, 0x70, 0xba, 0x2e, 0x5c, 0xb8, 0xa0, 0x5c, 0xbb, 0x76, 0x6d,
0xe1, 0x02, 0x48, 0x26, 0x93, 0x3d, 0xc2, 0x05, 0x86, 0xb9, 0xb9, 0x39, 0xf3, 0xd0, 0xd0, 0x90,
0xad, 0xaf, 0xaf, 0xcf, 0x81, 0x8b, 0x69, 0x91, 0x48, 0x44, 0xb7, 0xb5, 0xb5, 0x19, 0x93, 0x92,
0x92, 0x0c, 0x38, 0xf7, 0x3e, 0x02, 0x7c, 0x71, 0xf8, 0xe0, 0x7d, 0xfe, 0xc1, 0x83, 0x07, 0xf5,
0x2d, 0x2d, 0x2d, 0x64, 0x73, 0x16, 0xcc, 0xc4, 0xd1, 0xdb, 0xdb, 0x6b, 0x1b, 0x1e, 0x1e, 0xb6,
0x8d, 0x8e, 0x8e, 0x5a, 0x49, 0x1c, 0x04, 0x9b, 0x71, 0xf3, 0x0a, 0x2c, 0x4b, 0xd1, 0x12, 0x50,
0x66, 0x66, 0x66, 0x87, 0xdb, 0xed, 0xb6, 0xcf, 0xcc, 0xcc, 0x74, 0xe2, 0xae, 0xcd, 0xe3, 0xe3,
0xe3, 0x5d, 0x56, 0xab, 0xd5, 0xc1, 0x62, 0xb1, 0x7a, 0x30, 0xcb, 0x4e, 0x94, 0xa1, 0xc3, 0xcf,
0xcf, 0xaf, 0x01, 0xa5, 0x60, 0x1f, 0x3f, 0x7e, 0x5c, 0x3f, 0x36, 0x36, 0x66, 0x6e, 0x6f, 0x6f,
0xb7, 0x49, 0x24, 0x92, 0xa7, 0x04, 0x30, 0xbf, 0x6e, 0x76, 0x76, 0xb6, 0x73, 0x70, 0x70, 0xd0,
0x8e, 0x19, 0x59, 0x08, 0xc8, 0xc7, 0xc7, 0xe7, 0x65, 0x8d, 0x30, 0xe5, 0x87, 0x08, 0x32, 0x90,
0x49, 0x58, 0xc8, 0x6e, 0xcc, 0x88, 0x26, 0x50, 0xdc, 0x59, 0x27, 0x06, 0xb1, 0xd6, 0xd5, 0xd5,
0xf5, 0x39, 0x1c, 0x0e, 0x6b, 0x44, 0x44, 0xc4, 0xc0, 0xa1, 0x43, 0x87, 0x9c, 0xb8, 0x89, 0x4e,
0x94, 0xb5, 0xdb, 0x64, 0x32, 0xd1, 0x64, 0x0d, 0x81, 0xb8, 0x5c, 0x2e, 0xda, 0xe9, 0x74, 0xd2,
0x58, 0xdf, 0x9e, 0xe9, 0xe9, 0x69, 0x0b, 0xaa, 0x61, 0x4e, 0x4f, 0x4f, 0x57, 0x78, 0x7b, 0x7b,
0x17, 0x2f, 0x80, 0x94, 0x4a, 0xa5, 0x07, 0xf4, 0x62, 0xb2, 0x55, 0x2a, 0x95, 0xd2, 0x5a, 0xad,
0xd6, 0x4e, 0xbe, 0x23, 0xd0, 0x81, 0xc1, 0xfa, 0x30, 0xbb, 0xc1, 0xf2, 0xf2, 0xf2, 0xb1, 0xa2,
0xa2, 0xa2, 0x51, 0x9b, 0xcd, 0xe6, 0xc6, 0x60, 0xfd, 0x64, 0xe0, 0x46, 0xdc, 0x58, 0x13, 0x97,
0xd9, 0x6c, 0x76, 0x23, 0xd8, 0x8d, 0x35, 0xea, 0xc7, 0x6c, 0x5d, 0x68, 0x88, 0xbe, 0xfa, 0xfa,
0x7a, 0x63, 0x42, 0x42, 0x82, 0x60, 0x01, 0x84, 0xbb, 0x78, 0x98, 0x91, 0x91, 0x41, 0x6a, 0xe4,
0x49, 0x9b, 0x98, 0x02, 0x83, 0xd1, 0x04, 0x88, 0x41, 0x68, 0x78, 0xcb, 0x6b, 0x01, 0x84, 0x72,
0x55, 0x11, 0x10, 0xd6, 0xc2, 0x3e, 0x35, 0x35, 0x65, 0x21, 0x5a, 0x93, 0x4f, 0x02, 0x6c, 0x6a,
0x6a, 0x72, 0x2e, 0x5e, 0x24, 0x57, 0x28, 0x80, 0xcb, 0xe7, 0x01, 0x87, 0xc7, 0x03, 0xb1, 0x54,
0x02, 0xb8, 0xb9, 0x65, 0x83, 0x1b, 0x3b, 0x6d, 0xa0, 0x6a, 0x6a, 0x5f, 0x0a, 0xa2, 0x28, 0xaa,
0x0a, 0xf5, 0xf4, 0x64, 0x84, 0xc6, 0x20, 0xda, 0x3f, 0x25, 0x90, 0x89, 0x89, 0x89, 0x2e, 0x94,
0x67, 0x49, 0x46, 0x93, 0x53, 0x53, 0x50, 0x5b, 0x5f, 0x07, 0x16, 0x8b, 0x05, 0x74, 0x7a, 0x1d,
0xc8, 0x14, 0xf2, 0xd7, 0x20, 0x54, 0x8b, 0x1e, 0x38, 0xb2, 0x16, 0xe0, 0x28, 0xda, 0x80, 0x27,
0xa1, 0x5e, 0x82, 0x34, 0x1a, 0x4d, 0x55, 0x5a, 0x5a, 0x9a, 0x81, 0x18, 0x80, 0x64, 0x85, 0x96,
0xb6, 0xa3, 0x3d, 0x49, 0xbd, 0xec, 0xf8, 0xac, 0xd7, 0x03, 0x98, 0x9c, 0x5c, 0x08, 0x84, 0x70,
0xc0, 0x86, 0x04, 0xac, 0x1b, 0xb0, 0x39, 0x8d, 0xaf, 0x40, 0x0c, 0x20, 0xa6, 0xf4, 0x20, 0xd1,
0x9a, 0x81, 0xaf, 0xd6, 0x01, 0x7f, 0x31, 0x08, 0xe5, 0xa9, 0x44, 0x2b, 0x1a, 0x88, 0x64, 0xcf,
0x9f, 0x3f, 0xf7, 0x38, 0x88, 0x38, 0x0f, 0xad, 0xeb, 0xc0, 0x60, 0xdd, 0x94, 0x46, 0xe3, 0x09,
0xd8, 0xef, 0xfc, 0x47, 0x45, 0x97, 0xdb, 0x0d, 0x4a, 0xb5, 0x0a, 0x70, 0x13, 0x28, 0x9f, 0x74,
0x09, 0x48, 0x24, 0xd3, 0x40, 0x9d, 0x90, 0x02, 0x26, 0x5f, 0x0d, 0xd5, 0x2c, 0x11, 0xcc, 0xcc,
0xcc, 0xbe, 0x04, 0x35, 0x37, 0x37, 0x57, 0x62, 0x9f, 0x18, 0xf0, 0xde, 0xd1, 0xd5, 0xd5, 0xe5,
0x20, 0x4d, 0x47, 0xa0, 0x24, 0x3b, 0xa3, 0xd1, 0xd8, 0xaf, 0x69, 0x6a, 0x82, 0x4e, 0x94, 0x4a,
0x82, 0x41, 0xa5, 0x32, 0x19, 0xf0, 0xf9, 0x7c, 0x8f, 0x74, 0x28, 0x31, 0xf0, 0xf0, 0x7e, 0x3e,
0xdb, 0x36, 0x83, 0x19, 0x38, 0x22, 0x15, 0x30, 0xd9, 0x62, 0x84, 0x08, 0xc1, 0xe9, 0x1a, 0x5c,
0x5a, 0x23, 0xec, 0x70, 0xc6, 0xf9, 0xf3, 0xe7, 0x0d, 0xc4, 0x00, 0x28, 0xa3, 0x1d, 0x5f, 0xac,
0xdd, 0xa4, 0x59, 0x49, 0x23, 0xe2, 0x3c, 0x1b, 0x5a, 0x16, 0x24, 0x32, 0x29, 0x20, 0xd8, 0x93,
0x05, 0x66, 0xec, 0x19, 0x3c, 0x1e, 0x1f, 0x28, 0x4a, 0x03, 0x8d, 0x98, 0xed, 0x13, 0x9d, 0x09,
0x65, 0x52, 0x41, 0x3d, 0x47, 0x02, 0xae, 0x81, 0xa1, 0xe5, 0x5d, 0x87, 0xaf, 0x9b, 0x8a, 0xe8,
0xe8, 0xe8, 0x0e, 0xf4, 0xbd, 0x1d, 0x01, 0x9e, 0xc6, 0x23, 0x7d, 0x84, 0x1b, 0x70, 0x60, 0xf0,
0x1e, 0x32, 0xd9, 0x4e, 0xd3, 0x9e, 0xc2, 0xb7, 0x3e, 0x79, 0x02, 0xaa, 0xc7, 0x6a, 0x78, 0xac,
0xa1, 0x40, 0x2e, 0x57, 0x62, 0x46, 0x62, 0x10, 0x4a, 0xd4, 0xc0, 0x11, 0xc8, 0x80, 0x23, 0x54,
0x2c, 0x64, 0xf1, 0x1a, 0x08, 0x03, 0x96, 0xe0, 0x7d, 0x09, 0xca, 0x51, 0x73, 0xe9, 0xd2, 0x25,
0xd9, 0x89, 0x13, 0x27, 0xda, 0xcf, 0x9e, 0x3d, 0xdb, 0x81, 0xbd, 0x45, 0x13, 0xf7, 0xa1, 0x23,
0x7b, 0x17, 0x2f, 0x1a, 0x19, 0x1d, 0xf5, 0x58, 0x9a, 0x64, 0x47, 0x64, 0xac, 0x66, 0xf2, 0x80,
0xcd, 0x97, 0x41, 0x03, 0x4f, 0x8a, 0x6e, 0x64, 0x2f, 0x6b, 0x77, 0x2f, 0x72, 0x04, 0x20, 0xec,
0xc6, 0x96, 0x2d, 0x5b, 0x0a, 0x22, 0x23, 0x23, 0x0b, 0x4a, 0x4b, 0x4b, 0x4b, 0xb0, 0x51, 0x3d,
0x6f, 0xf3, 0xd8, 0xd8, 0xd8, 0xd6, 0x73, 0xe7, 0xce, 0x75, 0xd0, 0x34, 0xdd, 0xf3, 0xea, 0xc2,
0x81, 0xe1, 0x09, 0x48, 0x29, 0x12, 0x43, 0x7c, 0x76, 0x23, 0x24, 0x5d, 0x7b, 0x08, 0x0d, 0x5c,
0x84, 0xb0, 0xa4, 0xd0, 0xda, 0x8e, 0xf2, 0x09, 0x04, 0xaf, 0x83, 0x16, 0xbd, 0xf6, 0x03, 0x70,
0xec, 0xc1, 0xc3, 0x2b, 0x6e, 0x1e, 0x1c, 0x13, 0x13, 0x53, 0x98, 0x97, 0x97, 0x57, 0x9f, 0x9c,
0x9c, 0x6c, 0x79, 0x15, 0xf2, 0xdb, 0x75, 0x2e, 0xc4, 0x5c, 0x95, 0x40, 0x74, 0x26, 0x17, 0xbe,
0x49, 0x64, 0x40, 0xd1, 0xbd, 0x5a, 0x6c, 0x62, 0xe2, 0x4c, 0x0d, 0x34, 0x69, 0x75, 0x20, 0x14,
0x8b, 0x97, 0x07, 0x2d, 0x73, 0xa0, 0xf9, 0xe3, 0x11, 0xfc, 0x25, 0x9e, 0xc0, 0x39, 0x58, 0xbb,
0xea, 0xf9, 0x05, 0x83, 0x23, 0x08, 0xb9, 0xc6, 0x81, 0x9f, 0x2f, 0x8b, 0xe1, 0xe4, 0x9f, 0x8d,
0x70, 0x20, 0xae, 0x0c, 0xc2, 0xcf, 0x30, 0x40, 0xd5, 0xdc, 0x81, 0xc1, 0x45, 0xc0, 0x62, 0x6b,
0xa0, 0x9e, 0xad, 0x05, 0xa5, 0xaa, 0x15, 0xa4, 0x72, 0xd9, 0xbf, 0x83, 0x16, 0x1f, 0x70, 0x51,
0x51, 0x51, 0x5f, 0x93, 0xb7, 0xf4, 0xad, 0x07, 0xdc, 0xf1, 0xd8, 0x4c, 0xe6, 0x5c, 0x7c, 0x81,
0x0a, 0x32, 0xee, 0xca, 0x61, 0xef, 0x8f, 0xd9, 0xf0, 0xd5, 0xef, 0x95, 0xb3, 0xe9, 0x77, 0x24,
0xa4, 0x15, 0x84, 0xd8, 0x16, 0x14, 0x97, 0xcf, 0x9f, 0x64, 0xd6, 0x69, 0xa0, 0xba, 0x56, 0x8b,
0xfd, 0x45, 0xcd, 0x60, 0x66, 0xe4, 0xe8, 0x10, 0xae, 0xf8, 0x4f, 0xc7, 0xce, 0x88, 0x9c, 0xd8,
0x93, 0x57, 0x84, 0xc3, 0xa5, 0x8d, 0x46, 0xc8, 0xba, 0x47, 0x41, 0xd8, 0xf7, 0x97, 0xe1, 0xf0,
0x69, 0xc6, 0xf4, 0xa7, 0x91, 0xf9, 0xd9, 0x8b, 0xe7, 0xa1, 0x89, 0x42, 0xeb, 0xd0, 0xb9, 0xd5,
0xb5, 0x14, 0x08, 0x84, 0x4a, 0xe0, 0x70, 0xb9, 0x43, 0xf1, 0x89, 0x89, 0xbb, 0x56, 0x0c, 0x3a,
0x9a, 0x58, 0xa9, 0xbe, 0x5a, 0xd5, 0x06, 0x71, 0xd7, 0x44, 0xb0, 0x27, 0x3a, 0x1b, 0xbe, 0x38,
0xcd, 0x98, 0xdb, 0xf9, 0x6d, 0xfe, 0x9d, 0xe5, 0xe6, 0x9e, 0x49, 0x4e, 0xde, 0x5b, 0xcd, 0xac,
0x71, 0x90, 0xa6, 0xc6, 0x33, 0x09, 0x2e, 0x66, 0x65, 0x5e, 0x59, 0x31, 0x68, 0xcf, 0x4f, 0x45,
0x79, 0xdf, 0xa5, 0xb1, 0xb1, 0x26, 0x25, 0xb0, 0xff, 0x97, 0x07, 0xb0, 0x2f, 0xf6, 0xee, 0xe3,
0x0f, 0x0f, 0x5f, 0xf4, 0x79, 0xd3, 0x7c, 0x84, 0xed, 0x2f, 0xbd, 0x5b, 0xa6, 0xbe, 0x55, 0x7c,
0x5b, 0x74, 0xea, 0xd4, 0xa9, 0xa0, 0x15, 0x83, 0x30, 0xe8, 0xbb, 0xa1, 0x3f, 0x14, 0xb0, 0x3e,
0xff, 0xb5, 0x7c, 0x78, 0x5f, 0xec, 0x5f, 0xda, 0x6d, 0xe1, 0xd7, 0x3f, 0xfb, 0x2f, 0xff, 0xf7,
0xfe, 0x06, 0x77, 0xb1, 0xb0, 0x77, 0x93, 0x1f, 0xed, 0x9e, 0x00, 0x00, 0x00, 0x00, 0x49, 0x45,
0x4e, 0x44, 0xae, 0x42, 0x60, 0x82,
0xce, 0x00, 0x00, 0x07, 0x5f, 0x49, 0x44, 0x41, 0x54, 0x48, 0xc7, 0xa5, 0x56, 0x7b, 0x50, 0x93,
0x57, 0x16, 0x07, 0x1f, 0xe3, 0x0b, 0x5d, 0xf1, 0xb9, 0xce, 0xac, 0x56, 0x76, 0xda, 0xe5, 0x0f,
0xed, 0xcc, 0xb6, 0xb3, 0x33, 0x75, 0xd0, 0x9d, 0x65, 0xeb, 0xee, 0x76, 0xb6, 0xb8, 0x9d, 0x6e,
0xa9, 0x3a, 0xd5, 0x65, 0xd7, 0xba, 0x74, 0xa5, 0x2c, 0x03, 0x16, 0xa9, 0x4b, 0x0b, 0x2a, 0x22,
0x20, 0x50, 0x75, 0x06, 0x25, 0x20, 0xaf, 0x60, 0x50, 0x1e, 0x91, 0x40, 0x42, 0x08, 0x24, 0x24,
0x24, 0x04, 0xf2, 0x20, 0xe1, 0x19, 0x28, 0x90, 0x40, 0x48, 0x48, 0xf2, 0x25, 0x01, 0x79, 0x89,
0xa8, 0xa4, 0xe4, 0x75, 0xf6, 0x5c, 0x2a, 0xb1, 0x9d, 0xd9, 0x32, 0x9d, 0x6e, 0x66, 0xce, 0xe4,
0xfb, 0xbe, 0x7b, 0xef, 0xf9, 0x9d, 0xf3, 0x3b, 0xbf, 0x73, 0xef, 0xf5, 0x03, 0x00, 0x3f, 0x62,
0xf8, 0xdb, 0xbd, 0x63, 0xc7, 0x8e, 0xcf, 0xf1, 0xff, 0x57, 0xcb, 0xdf, 0xfe, 0x1f, 0xc3, 0xdf,
0xcf, 0xd1, 0x5f, 0xd4, 0xee, 0xdd, 0xbb, 0xdf, 0x7e, 0xf1, 0xee, 0xf7, 0x1a, 0x5a, 0x10, 0xda,
0xeb, 0x21, 0x21, 0x21, 0x85, 0x87, 0x0e, 0x1d, 0xca, 0xc3, 0x09, 0x97, 0xc9, 0xb7, 0x9f, 0x08,
0xf0, 0xea, 0xce, 0x9d, 0x3b, 0x13, 0xf7, 0xec, 0xd9, 0x53, 0x70, 0xe2, 0xc4, 0x89, 0xfb, 0x81,
0x81, 0x81, 0xd9, 0x1b, 0x37, 0x6e, 0x0c, 0xf7, 0x0b, 0x08, 0x08, 0xc8, 0xdd, 0xb7, 0x6f, 0x5f,
0xc1, 0xba, 0x75, 0xeb, 0x98, 0x61, 0x61, 0x61, 0xad, 0x76, 0xbb, 0xbd, 0x5e, 0x2c, 0x16, 0xdf,
0x3f, 0x78, 0xf0, 0x60, 0xde, 0xf6, 0xed, 0xdb, 0xbf, 0xc0, 0x85, 0x7b, 0x7f, 0x84, 0x73, 0x7f,
0xb4, 0x37, 0x71, 0x7e, 0xc6, 0x81, 0x03, 0x07, 0xe8, 0x79, 0x79, 0x79, 0x4d, 0x1d, 0x1d, 0x1d,
0xbd, 0xa9, 0xa9, 0xa9, 0xfa, 0xe0, 0xe0, 0x60, 0xf9, 0xfa, 0xf5, 0xeb, 0xe9, 0x7e, 0x5b, 0xb6,
0x6c, 0xa1, 0x8d, 0x8f, 0x8f, 0x33, 0x58, 0x2c, 0x16, 0x27, 0x26, 0x26, 0x46, 0xd7, 0xd2, 0xd2,
0xa2, 0xa7, 0xd1, 0x68, 0x66, 0xb5, 0x5a, 0xdd, 0x5b, 0x5a, 0x5a, 0xca, 0x0f, 0x0a, 0x0a, 0xba,
0xbb, 0x6d, 0xdb, 0xb6, 0xe3, 0xc4, 0xd9, 0x0f, 0x80, 0xfc, 0x62, 0xeb, 0xd6, 0xad, 0xb7, 0x0e,
0x1f, 0x3e, 0x2c, 0x28, 0x2a, 0x2a, 0x1a, 0xc0, 0xf5, 0x23, 0xd5, 0xd5, 0xd5, 0xa6, 0xa1, 0xa1,
0x21, 0xa3, 0x54, 0x2a, 0x1d, 0x45, 0x30, 0x15, 0x8e, 0x17, 0xfa, 0x80, 0xda, 0xda, 0xda, 0x38,
0x69, 0x69, 0x69, 0xfa, 0xc9, 0xc9, 0x49, 0x6a, 0x76, 0x76, 0xd6, 0xc4, 0xe3, 0xf1, 0x28, 0x2e,
0x97, 0x6b, 0x6c, 0x6e, 0x6e, 0x1e, 0x0e, 0x0f, 0x0f, 0xe7, 0x23, 0x05, 0x69, 0xe8, 0xf4, 0x67,
0xdf, 0x01, 0x58, 0xbd, 0x79, 0xf3, 0xe6, 0x33, 0x48, 0x93, 0x24, 0x3b, 0x3b, 0x7b, 0x44, 0xab,
0xd5, 0x8e, 0xa0, 0x0f, 0x8b, 0x52, 0xa9, 0xa4, 0x9e, 0x3d, 0x7b, 0x66, 0x9c, 0x9f, 0x9f, 0x37,
0x8b, 0x44, 0xa2, 0xb1, 0x6b, 0xd7, 0xae, 0xa9, 0x36, 0x6d, 0xda, 0x54, 0xe4, 0x03, 0x52, 0x28,
0x14, 0x1c, 0x5c, 0xa0, 0xf3, 0x7a, 0xbd, 0xa3, 0x73, 0x73, 0x73, 0xe6, 0x47, 0x8f, 0x1e, 0x59,
0x71, 0x31, 0xd5, 0xda, 0xda, 0x4a, 0x0d, 0x0c, 0x0c, 0x8c, 0x24, 0x27, 0x27, 0xeb, 0x70, 0x2e,
0x13, 0x01, 0x36, 0xa3, 0xad, 0xc1, 0xe7, 0xbb, 0x47, 0x8f, 0x1e, 0xd5, 0xf6, 0xf5, 0xf5, 0x91,
0xe0, 0x8c, 0x98, 0x89, 0x75, 0x62, 0x62, 0xc2, 0xfc, 0xe4, 0xc9, 0x13, 0xf3, 0xd3, 0xa7, 0x4f,
0x4d, 0xc4, 0x0f, 0x02, 0x8f, 0x62, 0xf0, 0xed, 0x58, 0x96, 0x92, 0xef, 0x01, 0x65, 0x65, 0x65,
0x0d, 0xcf, 0xcc, 0xcc, 0x58, 0xdc, 0x6e, 0xb7, 0x01, 0xa3, 0x1e, 0x5d, 0x58, 0x58, 0x18, 0x33,
0x99, 0x4c, 0x56, 0x3e, 0x9f, 0x3f, 0x8e, 0x59, 0x1a, 0xae, 0x5e, 0xbd, 0x3a, 0x82, 0x34, 0x34,
0x11, 0x8b, 0x88, 0x88, 0xd0, 0x3e, 0x7f, 0xfe, 0x7c, 0x74, 0x70, 0x70, 0xd0, 0x2c, 0x93, 0xc9,
0x6c, 0x04, 0x60, 0x79, 0x9d, 0xc7, 0xe3, 0x31, 0x3c, 0x7e, 0xfc, 0xd8, 0x82, 0x19, 0x19, 0x09,
0xd0, 0x9a, 0x35, 0x6b, 0x5e, 0xd6, 0x08, 0x53, 0x66, 0x23, 0x90, 0x8e, 0x4c, 0xc2, 0x42, 0xda,
0x31, 0x23, 0x8a, 0x80, 0x62, 0x64, 0x06, 0x74, 0x62, 0x2a, 0xaf, 0xa8, 0x98, 0xad, 0xa8, 0xaa,
0x72, 0xb3, 0x39, 0x1c, 0xcf, 0x9d, 0xdc, 0x5c, 0xb7, 0x5c, 0xa9, 0x98, 0x44, 0x5a, 0xed, 0x7a,
0xbd, 0x9e, 0x22, 0x6b, 0x08, 0xc8, 0xf4, 0xf4, 0x34, 0x35, 0x35, 0x35, 0x45, 0x61, 0x7d, 0xc7,
0xe7, 0x9e, 0xcc, 0x9b, 0xe8, 0x0f, 0xd8, 0xcf, 0x33, 0xb3, 0x6f, 0x68, 0x56, 0xaf, 0x5e, 0x5d,
0xea, 0x03, 0x52, 0xa9, 0x54, 0x4b, 0x40, 0x2f, 0x26, 0x9b, 0xe4, 0x72, 0x39, 0xd5, 0xdb, 0xdb,
0x6b, 0x21, 0xef, 0xc4, 0x9c, 0x4e, 0xa7, 0xa1, 0xe4, 0x5e, 0xa9, 0xa3, 0xaf, 0xbf, 0x0f, 0x30,
0x4b, 0xc0, 0xc0, 0xbc, 0xad, 0xb2, 0xb6, 0x69, 0x87, 0xc3, 0x31, 0x46, 0x68, 0x46, 0xfa, 0x2c,
0xe8, 0x83, 0x22, 0x35, 0xd2, 0xe9, 0x0d, 0xb6, 0xea, 0x7a, 0xb1, 0x53, 0xda, 0x3d, 0x02, 0xf4,
0xca, 0x7a, 0xc7, 0x91, 0xd0, 0x3f, 0x36, 0xf9, 0x80, 0x30, 0x0a, 0x76, 0x66, 0x66, 0x26, 0xa9,
0xd1, 0x52, 0xda, 0x44, 0x14, 0x66, 0xb3, 0x99, 0x22, 0x80, 0xf8, 0x6e, 0x44, 0xfe, 0xad, 0x58,
0x64, 0xd3, 0xe5, 0xd4, 0x14, 0xe7, 0xd8, 0xd8, 0xd8, 0x12, 0x18, 0xb3, 0xba, 0x7a, 0x91, 0xd4,
0x53, 0xa7, 0xd3, 0x99, 0x11, 0x80, 0xd4, 0x88, 0x52, 0x75, 0xf6, 0xcf, 0xd4, 0x37, 0x2b, 0xdd,
0x8a, 0x3e, 0x23, 0xc8, 0x34, 0x06, 0x10, 0x77, 0x68, 0xe1, 0xc2, 0x97, 0xe9, 0x46, 0x1f, 0x10,
0xd2, 0x55, 0x4b, 0x80, 0xb0, 0x16, 0x96, 0xc5, 0xc5, 0x45, 0x23, 0xe1, 0x5a, 0xa6, 0x50, 0x4c,
0x8b, 0x25, 0x92, 0x59, 0x04, 0x1b, 0x47, 0xb9, 0x9a, 0x49, 0xf4, 0x5f, 0x26, 0x27, 0x2d, 0x10,
0x20, 0xec, 0x37, 0x10, 0x08, 0x85, 0x2e, 0x89, 0x44, 0x62, 0xc3, 0x31, 0x1b, 0xa1, 0x8c, 0x50,
0x28, 0x90, 0xa8, 0x1c, 0x2d, 0xe8, 0x5c, 0xa8, 0xec, 0x47, 0xeb, 0x03, 0x5a, 0x71, 0xd5, 0xb3,
0xc0, 0xc0, 0x6d, 0x2f, 0xc5, 0xd0, 0xd5, 0xd5, 0x55, 0x9b, 0x91, 0x91, 0xb1, 0x94, 0x11, 0x0a,
0x83, 0x70, 0x6f, 0x63, 0xd7, 0x71, 0x5c, 0xbd, 0x1a, 0x8d, 0x47, 0x24, 0x16, 0xcf, 0x0e, 0x69,
0x87, 0xc6, 0x1b, 0x1a, 0x1a, 0x26, 0x0b, 0xe9, 0x25, 0x6e, 0xcc, 0x10, 0xb0, 0x6e, 0xc0, 0xe5,
0xd5, 0xbb, 0x48, 0xf6, 0x24, 0x28, 0xa2, 0x34, 0xca, 0x66, 0xb7, 0xd5, 0xd4, 0x8b, 0xdd, 0x3c,
0xb1, 0x0a, 0xea, 0x84, 0x72, 0xa8, 0xa8, 0xe1, 0xbb, 0xd2, 0x33, 0xb2, 0x7b, 0xb1, 0x61, 0x5f,
0xf6, 0x51, 0x77, 0x77, 0x77, 0x6d, 0x7a, 0x7a, 0xba, 0x8e, 0x08, 0x80, 0x64, 0x85, 0x92, 0xb6,
0x94, 0x32, 0x18, 0x0e, 0x12, 0x79, 0x7f, 0x7f, 0xbf, 0xb7, 0x49, 0x24, 0x72, 0x8b, 0x5b, 0x24,
0x6e, 0xa4, 0x13, 0x8c, 0x46, 0x23, 0x90, 0xac, 0xb0, 0x46, 0x6e, 0x95, 0x5a, 0x35, 0x45, 0x84,
0x63, 0x1c, 0x33, 0x51, 0xe5, 0x0f, 0xeb, 0x9d, 0x42, 0x69, 0x3b, 0xd4, 0xf2, 0xc4, 0x2e, 0x36,
0xaf, 0xd9, 0xc1, 0x64, 0x71, 0x27, 0x31, 0x78, 0x39, 0xca, 0xbb, 0xd8, 0x07, 0xd4, 0xd3, 0xd3,
0x53, 0x83, 0x52, 0xd4, 0x91, 0xe8, 0x5c, 0x2e, 0xd7, 0x92, 0x82, 0x94, 0xed, 0xed, 0x53, 0x1d,
0x9d, 0x9d, 0x1e, 0x92, 0x01, 0x06, 0xe0, 0x33, 0x1c, 0x03, 0x26, 0xf3, 0x21, 0xc8, 0x15, 0x4a,
0x68, 0x91, 0x4a, 0xdd, 0x35, 0x6c, 0xce, 0x74, 0x45, 0x75, 0x83, 0xb3, 0x45, 0xde, 0x01, 0x35,
0x5c, 0x91, 0x6b, 0x7a, 0xe6, 0xdb, 0x2c, 0x51, 0x95, 0xa3, 0xd8, 0x9b, 0xf2, 0xb5, 0x6b, 0xd7,
0xbe, 0xa4, 0x4e, 0xa3, 0xd1, 0xd4, 0xe0, 0x76, 0xa1, 0xc3, 0x67, 0x2b, 0x46, 0x6b, 0x25, 0x54,
0x90, 0xc9, 0x22, 0x71, 0xf3, 0x63, 0x21, 0x66, 0x83, 0x0d, 0x05, 0xda, 0xe1, 0x61, 0x2f, 0x87,
0xcb, 0xf5, 0xe0, 0xb3, 0xb7, 0x8e, 0xdb, 0x00, 0x52, 0xa9, 0x1c, 0xba, 0xba, 0xfa, 0x01, 0x33,
0x01, 0x59, 0x7b, 0x37, 0x70, 0x05, 0x52, 0xa7, 0x7d, 0x7c, 0xc2, 0x8a, 0x3e, 0x28, 0x62, 0x8d,
0x8d, 0x8d, 0xc6, 0x1b, 0x37, 0x6e, 0xc8, 0xbe, 0x27, 0x6f, 0xec, 0x70, 0x16, 0x36, 0xa4, 0x8e,
0x08, 0x01, 0x69, 0xb4, 0xe0, 0xc6, 0x6a, 0x27, 0xcd, 0xba, 0xdc, 0x88, 0xea, 0x0e, 0xf5, 0x24,
0x87, 0xc3, 0x99, 0x8e, 0x8f, 0x8f, 0x9f, 0x4d, 0xbe, 0x7c, 0xe9, 0x1b, 0xbd, 0xc1, 0xe0, 0x65,
0x73, 0x04, 0xf0, 0x80, 0xc9, 0x03, 0xb9, 0xaa, 0x07, 0x98, 0x6c, 0xbe, 0xb7, 0x59, 0xd2, 0x32,
0x8d, 0xfb, 0x9b, 0x0d, 0xeb, 0x6d, 0x21, 0xac, 0x08, 0x04, 0x02, 0xc3, 0xcd, 0x9b, 0x37, 0x65,
0xfe, 0xfe, 0xfe, 0xf7, 0x7c, 0x40, 0xb8, 0xdd, 0x54, 0x9f, 0x3d, 0x7b, 0x76, 0x18, 0xa3, 0xb0,
0x20, 0xc0, 0x52, 0xe3, 0x91, 0x3e, 0xc2, 0x00, 0x48, 0x8f, 0x50, 0x28, 0xe3, 0x25, 0x3a, 0xce,
0x7f, 0x16, 0x3f, 0xfb, 0x87, 0x8f, 0xbe, 0x70, 0x9c, 0x4b, 0x61, 0x2c, 0x16, 0x57, 0xf0, 0x40,
0xa1, 0xee, 0x85, 0x87, 0xec, 0x26, 0x50, 0x77, 0x0e, 0x42, 0xa3, 0x80, 0xef, 0x1e, 0xd2, 0x6a,
0x27, 0x2c, 0x16, 0x0b, 0x25, 0x14, 0x0a, 0xa9, 0x2b, 0x57, 0xae, 0x8c, 0xe6, 0xe4, 0xe4, 0xb4,
0xae, 0x5a, 0xb5, 0xea, 0x5b, 0x20, 0x74, 0xc8, 0x40, 0x27, 0x0c, 0x94, 0x2a, 0x17, 0x53, 0x55,
0x44, 0x46, 0x46, 0x0e, 0x26, 0x25, 0x25, 0x0d, 0x63, 0x6f, 0x51, 0x44, 0x7d, 0xb8, 0xdf, 0x59,
0xc9, 0x46, 0xab, 0x1f, 0xb3, 0x59, 0xff, 0x74, 0x8e, 0xe6, 0x4e, 0xbb, 0xdf, 0x05, 0x17, 0x0b,
0x95, 0xf0, 0xe1, 0xc5, 0x72, 0x28, 0xa9, 0x6c, 0x80, 0x5a, 0x8e, 0x14, 0xa4, 0x6d, 0x1a, 0xe8,
0xe9, 0xd5, 0x43, 0x15, 0x93, 0xe9, 0x3c, 0x75, 0xfa, 0xb4, 0x31, 0x36, 0x36, 0xb6, 0x2b, 0x25,
0x25, 0x45, 0xc8, 0x60, 0x30, 0xca, 0x97, 0x80, 0xc8, 0x11, 0x80, 0x60, 0xb9, 0xbb, 0x76, 0xed,
0x2a, 0x38, 0x75, 0xea, 0x54, 0x41, 0x59, 0x59, 0x19, 0x03, 0x95, 0xb5, 0xb4, 0x9b, 0x47, 0x47,
0x47, 0xf7, 0x63, 0x54, 0xc3, 0x06, 0x83, 0x81, 0xaa, 0xa9, 0xe3, 0x4f, 0x9e, 0x4c, 0xac, 0x74,
0xfe, 0xfb, 0x8e, 0x02, 0x4e, 0xa6, 0x0a, 0xe1, 0xd8, 0x7f, 0xd8, 0xf0, 0xe1, 0xa5, 0x3a, 0xf8,
0x47, 0x62, 0xa1, 0xeb, 0xeb, 0x81, 0x01, 0x6f, 0x6d, 0x9d, 0x1c, 0x9a, 0x25, 0x1a, 0x50, 0x77,
0x0d, 0x43, 0x31, 0x9d, 0x3e, 0xbf, 0xef, 0x95, 0x57, 0x18, 0x78, 0x3e, 0xa5, 0xa3, 0xff, 0xf8,
0x0d, 0x1b, 0x36, 0x1c, 0xfb, 0xee, 0xb9, 0xb2, 0x03, 0xed, 0x08, 0x0e, 0xc6, 0x2c, 0x03, 0x47,
0x45, 0x45, 0x15, 0xe5, 0xe7, 0xe7, 0x37, 0x7e, 0xf4, 0xf7, 0xc8, 0xd1, 0x88, 0xcb, 0xac, 0xc5,
0xe8, 0xdb, 0x72, 0x88, 0xbd, 0x23, 0x83, 0x0f, 0x2e, 0xd0, 0xe1, 0xf7, 0x31, 0x65, 0x10, 0x9e,
0xc8, 0xf2, 0xfc, 0x2b, 0x21, 0xd3, 0x16, 0x13, 0x1b, 0x3b, 0xd3, 0xd9, 0xd9, 0xed, 0x61, 0xb1,
0x55, 0x20, 0x10, 0x69, 0x40, 0xa1, 0xd4, 0x42, 0x79, 0x65, 0xa5, 0x2e, 0x2a, 0x21, 0x61, 0x97,
0xcf, 0xff, 0x0a, 0xa7, 0xe6, 0x76, 0x3c, 0x82, 0x8f, 0xed, 0xfd, 0xcd, 0xf1, 0xd6, 0xf7, 0xe3,
0xef, 0xcd, 0x7f, 0x96, 0xa7, 0x82, 0x7c, 0xee, 0x00, 0x1c, 0x4f, 0x28, 0x81, 0xdf, 0x9d, 0xa3,
0xc3, 0x5f, 0x13, 0x6b, 0x3c, 0x6f, 0xbc, 0x1b, 0x37, 0x8b, 0x41, 0x35, 0xe3, 0x59, 0x15, 0x95,
0x9a, 0x9e, 0x5e, 0xac, 0xee, 0xec, 0x74, 0x54, 0xb1, 0xd4, 0xc0, 0xe3, 0x6b, 0xa0, 0x4d, 0x31,
0x08, 0xf7, 0xca, 0xca, 0x06, 0xcf, 0x9c, 0x3f, 0xbf, 0x75, 0x45, 0xa0, 0xfd, 0xef, 0x5e, 0x0f,
0x78, 0xf3, 0x6f, 0x79, 0x4d, 0x31, 0x39, 0x6d, 0x0b, 0x34, 0xee, 0x20, 0x54, 0x49, 0xf4, 0xf0,
0x5e, 0x7c, 0x29, 0xfc, 0xf6, 0x93, 0x42, 0xf8, 0x4b, 0xc2, 0x43, 0xef, 0xfe, 0x23, 0xff, 0x9c,
0xc1, 0x6b, 0x40, 0x2a, 0x06, 0xb4, 0x73, 0x79, 0xcd, 0xf5, 0xac, 0xac, 0x5c, 0x85, 0x52, 0x85,
0x8d, 0xda, 0x81, 0xbb, 0x46, 0x17, 0x74, 0xf7, 0xf4, 0x40, 0x5e, 0xe1, 0x5d, 0xf5, 0x8a, 0x40,
0xc1, 0x1f, 0xdc, 0x8a, 0x49, 0xa2, 0x77, 0x82, 0x44, 0x63, 0x07, 0x1a, 0xe7, 0x6b, 0x78, 0xe7,
0x7c, 0x05, 0x84, 0x9c, 0xa5, 0xc1, 0xb1, 0xcf, 0x59, 0x9e, 0x5f, 0x86, 0xc6, 0xd8, 0x11, 0x60,
0xff, 0xff, 0x5a, 0x77, 0x3d, 0x3b, 0xfb, 0xb6, 0x5c, 0xa1, 0x70, 0xa0, 0xb0, 0x00, 0xaf, 0x07,
0x80, 0x7d, 0xf8, 0x4d, 0x74, 0x5c, 0xdc, 0x91, 0x1f, 0x04, 0x7a, 0xf5, 0xbd, 0xaf, 0x0e, 0x7c,
0x9c, 0xc1, 0x9f, 0x8b, 0xfc, 0xaa, 0x05, 0xc2, 0x2e, 0xd6, 0x42, 0xc8, 0xc7, 0x34, 0xf8, 0xf3,
0x45, 0x0e, 0xfc, 0xfa, 0x74, 0xbe, 0x08, 0xb3, 0xf5, 0x5f, 0xe9, 0xb2, 0x92, 0x9e, 0x95, 0x95,
0xd3, 0x24, 0x14, 0x2e, 0xe0, 0xa9, 0x0b, 0x65, 0x0f, 0xee, 0x5b, 0x51, 0x54, 0x01, 0x2b, 0xde,
0x6e, 0xde, 0x3a, 0x53, 0x20, 0x3a, 0x9d, 0xc6, 0x87, 0xd0, 0x28, 0x3a, 0x84, 0xc6, 0xb1, 0x50,
0x00, 0x15, 0xb6, 0xa0, 0xb0, 0xcc, 0xbd, 0x3f, 0xe6, 0xda, 0x15, 0x77, 0x21, 0xee, 0x9d, 0xa4,
0x2b, 0x97, 0x6e, 0x9d, 0x8b, 0x8d, 0x7d, 0x6d, 0x45, 0xea, 0x5e, 0xd4, 0x69, 0xd3, 0xeb, 0x27,
0x6f, 0xb3, 0xde, 0x8e, 0x2e, 0x1b, 0x0b, 0xfd, 0xf4, 0x81, 0x31, 0x38, 0x3c, 0x27, 0xe2, 0xa7,
0x5e, 0x28, 0xff, 0x0b, 0x60, 0x1d, 0x12, 0xcb, 0x2e, 0xc3, 0x51, 0x7e, 0x00, 0x00, 0x00, 0x00,
0x49, 0x45, 0x4e, 0x44, 0xae, 0x42, 0x60, 0x82,
};
const BITMAP_OPAQUE library_table_xpm[1] = {{ png, sizeof( png ), "library_table_xpm" }};

View File

@ -0,0 +1,88 @@
/* Do not modify this file, it was automatically generated by the
* PNG2cpp CMake script, using a *.png file as input.
*/
#include <bitmaps.h>
static const unsigned char png[] = {
0x89, 0x50, 0x4e, 0x47, 0x0d, 0x0a, 0x1a, 0x0a, 0x00, 0x00, 0x00, 0x0d, 0x49, 0x48, 0x44, 0x52,
0x00, 0x00, 0x00, 0x1a, 0x00, 0x00, 0x00, 0x1a, 0x08, 0x06, 0x00, 0x00, 0x00, 0xa9, 0x4a, 0x4c,
0xce, 0x00, 0x00, 0x04, 0x74, 0x49, 0x44, 0x41, 0x54, 0x48, 0xc7, 0xa5, 0x96, 0xc9, 0x4f, 0x54,
0x79, 0x10, 0xc7, 0x5b, 0x83, 0x89, 0x89, 0x27, 0x33, 0x9e, 0x3c, 0xc9, 0xdd, 0xab, 0x81, 0x39,
0xc1, 0x1c, 0x8d, 0xf0, 0x0f, 0x68, 0xe2, 0x61, 0xe2, 0x1c, 0x8d, 0x89, 0x98, 0x78, 0x11, 0x48,
0xc0, 0x80, 0xcc, 0x0c, 0x08, 0x28, 0x04, 0xc4, 0xb0, 0x2a, 0x4b, 0x83, 0x44, 0x22, 0xcb, 0x98,
0x09, 0xcb, 0x00, 0x42, 0x06, 0xe6, 0x02, 0x63, 0xd8, 0xf7, 0x1d, 0x1a, 0x9a, 0x7d, 0xa7, 0xa9,
0xa9, 0xcf, 0x8f, 0xee, 0xe7, 0xa3, 0x97, 0xc4, 0x64, 0x2a, 0xa9, 0xf4, 0x7b, 0xfd, 0xde, 0xfb,
0x7d, 0x7e, 0x55, 0xf5, 0xad, 0x7a, 0xcf, 0xe1, 0x70, 0x38, 0x6e, 0xa8, 0x47, 0xa9, 0x47, 0xff,
0x0f, 0x8f, 0x54, 0xbf, 0xa2, 0x7e, 0x51, 0x44, 0x1c, 0xc1, 0x1c, 0x8b, 0x9a, 0x99, 0x99, 0x91,
0xc9, 0xc9, 0x49, 0x99, 0x9d, 0x9d, 0x95, 0xb9, 0xb9, 0x39, 0x99, 0x9f, 0x9f, 0x97, 0x85, 0x85,
0x05, 0xe3, 0x8b, 0x8b, 0x8b, 0xb2, 0xb4, 0xb4, 0x24, 0xcb, 0xcb, 0xcb, 0xc6, 0x57, 0x56, 0x56,
0xc4, 0xe5, 0x72, 0x19, 0x5f, 0x5d, 0x5d, 0x35, 0xde, 0xd1, 0xd1, 0xb1, 0x91, 0x94, 0x94, 0x54,
0xa9, 0x6b, 0xfd, 0xa8, 0x7e, 0x29, 0x14, 0x28, 0x1a, 0x48, 0x45, 0x45, 0x85, 0x4c, 0x4d, 0x4d,
0x59, 0x90, 0xee, 0xee, 0x6e, 0x19, 0x1d, 0x1d, 0xb5, 0x20, 0x6c, 0x42, 0x17, 0x3c, 0x07, 0xe8,
0xe9, 0xe9, 0x91, 0xb5, 0xb5, 0x35, 0x69, 0x69, 0x69, 0x91, 0xe9, 0xe9, 0x69, 0xe9, 0xeb, 0xeb,
0x73, 0x87, 0x87, 0x87, 0xff, 0x4c, 0x74, 0x41, 0x41, 0x2c, 0x62, 0x87, 0xe0, 0x40, 0x2a, 0x2b,
0x2b, 0x65, 0x6c, 0x6c, 0xcc, 0x8a, 0xa4, 0xb9, 0xb9, 0x59, 0x5a, 0x5b, 0x5b, 0x0d, 0x04, 0x40,
0x55, 0x55, 0x95, 0xb8, 0xdd, 0x6e, 0xe9, 0xed, 0xed, 0x95, 0xce, 0xce, 0x4e, 0xf3, 0xfc, 0xf8,
0xf8, 0xf8, 0x61, 0x4c, 0x4c, 0x4c, 0xa2, 0xae, 0xfb, 0x43, 0x00, 0x88, 0x74, 0xb1, 0x23, 0x00,
0x0d, 0x0d, 0x0d, 0x56, 0x24, 0x40, 0x80, 0xe9, 0xc3, 0x56, 0x24, 0x9c, 0x03, 0x01, 0x00, 0x68,
0x7d, 0x7d, 0xdd, 0x3c, 0xcb, 0xff, 0x5c, 0x27, 0xd5, 0x7a, 0xee, 0xf1, 0xc2, 0xae, 0x9c, 0x03,
0x71, 0xa3, 0xd3, 0xe9, 0x34, 0x0f, 0x14, 0x16, 0x16, 0x4a, 0x49, 0x49, 0x89, 0x15, 0x09, 0x10,
0x16, 0xf4, 0xa5, 0xcb, 0x17, 0x05, 0x00, 0x8e, 0x37, 0x36, 0x36, 0xcc, 0xe2, 0x39, 0x39, 0x39,
0xb2, 0xbd, 0xbd, 0x6d, 0xae, 0x71, 0x3e, 0x31, 0x31, 0x71, 0xe8, 0x4d, 0xe3, 0x25, 0x0b, 0x44,
0x24, 0x40, 0xb8, 0xa1, 0xb8, 0xb8, 0x58, 0xf2, 0xf3, 0xf3, 0x8d, 0x37, 0x35, 0x36, 0x4a, 0x59,
0x6e, 0xae, 0xbc, 0x88, 0x8f, 0x97, 0xf4, 0xa4, 0x24, 0x73, 0x9c, 0xf3, 0xfa, 0x35, 0xb5, 0xb0,
0x22, 0xda, 0xdc, 0xdc, 0x34, 0x69, 0x4d, 0x48, 0x48, 0x90, 0xc3, 0xc3, 0x43, 0x03, 0x63, 0x43,
0xa4, 0xb1, 0xbf, 0xbf, 0xdf, 0xed, 0x15, 0xc8, 0x45, 0x03, 0x02, 0x80, 0xf2, 0x48, 0x57, 0x41,
0x41, 0x81, 0xfc, 0x9a, 0x98, 0x28, 0x1f, 0x32, 0x32, 0x64, 0xac, 0xac, 0x4c, 0xb6, 0xb4, 0xd0,
0x1e, 0xbd, 0xee, 0xba, 0x76, 0x4d, 0xfe, 0xbd, 0x79, 0x53, 0x3e, 0xdf, 0xbe, 0x2d, 0xf9, 0x8f,
0x1f, 0x4b, 0x41, 0x66, 0xa6, 0x94, 0x71, 0x7d, 0x6b, 0xcb, 0x40, 0xe3, 0xe2, 0xe2, 0xcc, 0x26,
0xeb, 0xea, 0xea, 0xa4, 0xbc, 0xbc, 0xdc, 0x08, 0x84, 0xba, 0xa7, 0xa4, 0xa4, 0x54, 0x7a, 0xa5,
0xef, 0x88, 0x06, 0x52, 0x5d, 0x5d, 0x2d, 0x7f, 0x68, 0x04, 0x19, 0xcf, 0x9f, 0x8b, 0xeb, 0xd3,
0x27, 0x09, 0x30, 0x87, 0xe3, 0x9b, 0x5f, 0xb8, 0x20, 0xbd, 0x91, 0x91, 0x92, 0xfa, 0xec, 0x99,
0xfc, 0xa5, 0xe2, 0x20, 0x0a, 0x54, 0x4b, 0xed, 0xa8, 0x65, 0x5e, 0x5e, 0x1e, 0x00, 0xc9, 0xd4,
0xcd, 0x74, 0x75, 0x75, 0x6d, 0x28, 0x23, 0xc2, 0x80, 0x88, 0xe4, 0x73, 0x53, 0x93, 0x7c, 0x7c,
0xf5, 0x4a, 0x3c, 0x9a, 0xc6, 0xa0, 0x66, 0x07, 0x79, 0xdd, 0x7d, 0xf5, 0xaa, 0xe4, 0x69, 0x74,
0xed, 0x6d, 0x6d, 0x26, 0x8d, 0x7b, 0x7b, 0x7b, 0xc6, 0xa9, 0x31, 0xa9, 0xe7, 0x97, 0x74, 0x7a,
0x9b, 0xda, 0x11, 0x3d, 0x32, 0x32, 0x22, 0x59, 0xa9, 0xa9, 0xa1, 0x21, 0x21, 0x40, 0x3e, 0x18,
0xa9, 0xce, 0xd5, 0xfa, 0x51, 0x97, 0xfd, 0xfd, 0xfd, 0x73, 0xa0, 0xa3, 0xa3, 0xa3, 0x33, 0x50,
0x58, 0x58, 0xd8, 0x4f, 0xf9, 0x5a, 0x8f, 0xa0, 0xe9, 0x52, 0x3b, 0xfa, 0xfa, 0x55, 0x56, 0x6a,
0x6b, 0xa5, 0xe7, 0xd6, 0x2d, 0x59, 0xb8, 0x7e, 0x3d, 0x28, 0x8c, 0x34, 0x02, 0x1b, 0x1e, 0x1e,
0x96, 0x83, 0x83, 0x03, 0x0b, 0x54, 0x5a, 0x5a, 0x2a, 0xc7, 0xc7, 0xc7, 0x67, 0xa0, 0xd8, 0xd8,
0xd8, 0x27, 0x1f, 0xb3, 0xb3, 0x03, 0x09, 0x2a, 0xdb, 0xbf, 0x75, 0x97, 0xe9, 0xc9, 0xc9, 0x92,
0x9b, 0x9e, 0x2e, 0x15, 0x2a, 0x7b, 0x8e, 0x9d, 0xf7, 0xee, 0xc9, 0xc1, 0xe5, 0xcb, 0x01, 0x35,
0xcb, 0x7d, 0xf4, 0xc8, 0xa8, 0x91, 0x54, 0xd9, 0x41, 0x27, 0x27, 0x27, 0x67, 0xa0, 0x5f, 0x1e,
0x3c, 0x78, 0x8b, 0xba, 0xfc, 0xad, 0x5b, 0x65, 0x5c, 0xf5, 0xee, 0x9d, 0x91, 0x2a, 0x12, 0x46,
0x5d, 0xf4, 0x8e, 0xf3, 0xfd, 0x7b, 0xf9, 0x70, 0xff, 0x7e, 0x40, 0x54, 0x7f, 0xde, 0xb9, 0x23,
0xad, 0xaa, 0x34, 0x40, 0x00, 0x02, 0x40, 0xf1, 0x0f, 0x1f, 0xfe, 0x83, 0x84, 0xfd, 0xd3, 0xf5,
0x42, 0xfb, 0x02, 0x15, 0xf9, 0x20, 0x28, 0x6b, 0x67, 0x67, 0xc7, 0x34, 0x28, 0xca, 0xf4, 0x4f,
0x23, 0xd2, 0x2f, 0xd7, 0xc5, 0xa9, 0x89, 0x1d, 0xe4, 0xf1, 0x78, 0xce, 0x40, 0xc9, 0x4f, 0x9f,
0x6e, 0xd1, 0x27, 0x76, 0xa3, 0x26, 0x99, 0x2a, 0x0e, 0x7f, 0x08, 0xbe, 0xbb, 0xbb, 0x2b, 0x35,
0x9a, 0x01, 0x6a, 0x66, 0x07, 0xd1, 0x67, 0x19, 0x9a, 0x5a, 0x6a, 0x62, 0x07, 0x9d, 0x9e, 0x9e,
0x7e, 0x03, 0x71, 0x93, 0xfd, 0x21, 0x16, 0x01, 0x04, 0x84, 0xae, 0x6f, 0xd4, 0xfe, 0xf2, 0x8d,
0x20, 0x8e, 0x9d, 0x5a, 0x03, 0x36, 0x63, 0x37, 0x36, 0xcb, 0xf4, 0x20, 0x55, 0x76, 0xd0, 0x99,
0x60, 0xbd, 0xa9, 0x23, 0x6c, 0x3b, 0x88, 0xb4, 0x90, 0x3a, 0x6a, 0x32, 0x38, 0x38, 0x68, 0x1e,
0x1a, 0x1a, 0x1a, 0x32, 0xaa, 0xa2, 0x19, 0x7f, 0xd7, 0x05, 0x49, 0xaf, 0xdd, 0x48, 0x7f, 0x91,
0x8a, 0x8a, 0x54, 0x05, 0x05, 0x21, 0x06, 0x0a, 0xe9, 0x5f, 0xdc, 0xaa, 0xbb, 0x77, 0x4d, 0xe1,
0x19, 0x23, 0x8c, 0x25, 0x26, 0x3c, 0xaf, 0x93, 0xdf, 0xb4, 0xe3, 0x51, 0xa3, 0xbf, 0x8d, 0xea,
0xa2, 0xcc, 0xc6, 0x90, 0x20, 0xe4, 0xcd, 0xec, 0x42, 0xa2, 0x76, 0x10, 0x12, 0x46, 0x5d, 0x14,
0x3e, 0x3b, 0x2d, 0xcd, 0xd4, 0x85, 0x63, 0xd4, 0x88, 0xf4, 0xfd, 0xcd, 0xcc, 0x46, 0x9d, 0xf8,
0xd4, 0x24, 0x28, 0x88, 0x86, 0x7d, 0xf3, 0xf2, 0xa5, 0xf4, 0x44, 0x44, 0x04, 0x6d, 0x46, 0xd2,
0x48, 0xcd, 0xa8, 0x89, 0x7f, 0xba, 0x7c, 0x46, 0xb3, 0x23, 0x04, 0xa2, 0xc1, 0x82, 0x82, 0x7c,
0x43, 0x95, 0xce, 0x66, 0x9c, 0x84, 0x1a, 0x35, 0xa1, 0x8c, 0xb1, 0x95, 0xad, 0xc2, 0x61, 0xa8,
0x52, 0x53, 0xac, 0xbd, 0xbd, 0x5d, 0x8a, 0x8a, 0x8a, 0x02, 0x41, 0xa8, 0xab, 0x55, 0x5f, 0xd3,
0x0c, 0xc8, 0x90, 0xb0, 0x10, 0x90, 0xda, 0xac, 0x2c, 0xe9, 0xfe, 0xf2, 0xc5, 0x40, 0x6a, 0x6a,
0x6a, 0x2c, 0x58, 0x9b, 0x0e, 0x5a, 0x60, 0xe7, 0x40, 0xbc, 0x4f, 0xea, 0xeb, 0xeb, 0x0d, 0x2c,
0x4d, 0xd5, 0x66, 0xd2, 0xe8, 0x57, 0xb3, 0x60, 0xe9, 0x22, 0x92, 0x1a, 0x7d, 0x33, 0x33, 0x48,
0x31, 0x20, 0x03, 0x03, 0x03, 0xd6, 0x3d, 0xf4, 0xa1, 0x1d, 0x14, 0xe5, 0xeb, 0x78, 0x9a, 0x91,
0x09, 0xfc, 0x56, 0x77, 0xf9, 0x46, 0x5f, 0x64, 0xa8, 0x11, 0xe9, 0xd3, 0x67, 0xf4, 0x09, 0x12,
0x66, 0x5c, 0xd5, 0xa9, 0x8c, 0x0b, 0xf5, 0x95, 0x42, 0x5f, 0x7d, 0x8f, 0x79, 0xbf, 0x1b, 0x03,
0x3f, 0x20, 0x11, 0x08, 0x6a, 0x44, 0xfa, 0xf4, 0x19, 0x4d, 0x8d, 0x73, 0xcc, 0x7f, 0x5c, 0xe3,
0x9e, 0xef, 0xfc, 0xb8, 0x64, 0xed, 0x1b, 0xff, 0x01, 0xc2, 0xf6, 0x5d, 0x89, 0x10, 0x37, 0x07,
0x7a, 0x00, 0x00, 0x00, 0x00, 0x49, 0x45, 0x4e, 0x44, 0xae, 0x42, 0x60, 0x82,
};
const BITMAP_OPAQUE rescue_pcbnew_xpm[1] = {{ png, sizeof( png ), "rescue_pcbnew_xpm" }};
//EOF

View File

@ -0,0 +1,102 @@
/* Do not modify this file, it was automatically generated by the
* PNG2cpp CMake script, using a *.png file as input.
*/
#include <bitmaps.h>
static const unsigned char png[] = {
0x89, 0x50, 0x4e, 0x47, 0x0d, 0x0a, 0x1a, 0x0a, 0x00, 0x00, 0x00, 0x0d, 0x49, 0x48, 0x44, 0x52,
0x00, 0x00, 0x00, 0x1a, 0x00, 0x00, 0x00, 0x1a, 0x08, 0x06, 0x00, 0x00, 0x00, 0xa9, 0x4a, 0x4c,
0xce, 0x00, 0x00, 0x05, 0x4f, 0x49, 0x44, 0x41, 0x54, 0x48, 0xc7, 0xad, 0x96, 0x6b, 0x4c, 0x9b,
0x65, 0x14, 0xc7, 0x2b, 0x66, 0x26, 0x3a, 0x3f, 0x18, 0x17, 0xcd, 0x62, 0x9c, 0x0e, 0x8d, 0xcb,
0xe2, 0x34, 0x46, 0x67, 0xdc, 0x66, 0x1c, 0xb0, 0xa8, 0x5b, 0x54, 0x96, 0xcd, 0xa9, 0x91, 0xa8,
0x31, 0x66, 0x9f, 0x8c, 0xf1, 0xf2, 0x61, 0x9a, 0xf8, 0x45, 0x66, 0xe6, 0x5c, 0x4c, 0xfc, 0x32,
0x3f, 0xa0, 0x30, 0xee, 0x53, 0x36, 0xe8, 0xca, 0xb8, 0x0c, 0xe6, 0xd8, 0x05, 0xba, 0x76, 0x03,
0x06, 0x43, 0x46, 0x81, 0x16, 0x4a, 0x0b, 0xa5, 0x40, 0x29, 0x97, 0xb6, 0x50, 0x2e, 0x1d, 0xa3,
0xdd, 0xdf, 0xe7, 0x7f, 0xe8, 0x35, 0xc2, 0xfc, 0xa0, 0x4f, 0x72, 0xf2, 0xbe, 0xcf, 0xfb, 0xbe,
0xcf, 0xf3, 0x7b, 0xce, 0x39, 0xff, 0x73, 0x5a, 0x8d, 0x46, 0xa3, 0x59, 0xaf, 0x2c, 0x55, 0x59,
0xda, 0x7f, 0xb0, 0xad, 0xca, 0x56, 0x2b, 0x4b, 0x02, 0xa0, 0x59, 0xce, 0x38, 0x52, 0x9d, 0x4e,
0x27, 0x06, 0x06, 0x06, 0x30, 0x34, 0x34, 0x84, 0xe1, 0xe1, 0x61, 0x8c, 0x8c, 0x8c, 0xc0, 0xe5,
0x72, 0x89, 0x8d, 0x8e, 0x8e, 0xc2, 0xed, 0x76, 0x63, 0x6c, 0x6c, 0x4c, 0x6c, 0x7c, 0x7c, 0x1c,
0x13, 0x13, 0x13, 0x62, 0x93, 0x93, 0x93, 0x62, 0x46, 0xa3, 0x71, 0xea, 0xd0, 0xa1, 0x43, 0xa5,
0x6a, 0xaf, 0x6d, 0xca, 0x56, 0xad, 0x04, 0x4a, 0x23, 0xe4, 0xe4, 0xc9, 0x93, 0x70, 0x38, 0x1c,
0x51, 0x48, 0x53, 0x53, 0x13, 0xfa, 0xfa, 0xfa, 0xa2, 0x10, 0x1e, 0xc2, 0x68, 0x34, 0x24, 0x00,
0x5a, 0x5a, 0x5a, 0xe0, 0xf1, 0x78, 0x50, 0x5f, 0x5f, 0x8f, 0xc1, 0xc1, 0x41, 0x74, 0x74, 0x74,
0x78, 0x93, 0x93, 0x93, 0xf7, 0xd3, 0xbb, 0x65, 0x41, 0xdc, 0x24, 0x1e, 0x42, 0x23, 0xa4, 0xb4,
0xb4, 0x14, 0x36, 0x9b, 0x6d, 0xc9, 0x9b, 0xd1, 0x41, 0x18, 0x4a, 0x76, 0xa2, 0xa1, 0xa1, 0x41,
0x20, 0x04, 0x94, 0x95, 0x95, 0xc1, 0xeb, 0xf5, 0xa2, 0xb5, 0xb5, 0x15, 0x57, 0xae, 0x5c, 0x91,
0xf5, 0x76, 0xbb, 0x7d, 0x21, 0x3d, 0x3d, 0xfd, 0xa0, 0xda, 0x77, 0xcd, 0x3f, 0x40, 0x0c, 0x17,
0x4f, 0x44, 0x40, 0x6d, 0x6d, 0x6d, 0xd4, 0x13, 0x42, 0x08, 0xeb, 0xb3, 0xb4, 0xe0, 0x86, 0x6e,
0x0b, 0x5a, 0xff, 0x78, 0x5c, 0xe6, 0x84, 0x10, 0x40, 0x90, 0xcf, 0xe7, 0x93, 0xb5, 0x7c, 0xce,
0x03, 0x30, 0xd4, 0x6a, 0x1e, 0x0a, 0xc3, 0x56, 0x27, 0x80, 0xf8, 0xa1, 0x56, 0xab, 0x95, 0x05,
0x05, 0x05, 0x05, 0x28, 0x2e, 0x2e, 0x8e, 0x7a, 0xd2, 0x6b, 0x3a, 0x8f, 0x96, 0x92, 0x4d, 0xf0,
0xbb, 0x2a, 0xd0, 0x59, 0x95, 0x1a, 0xf5, 0x82, 0x00, 0xde, 0x4f, 0x4d, 0x4d, 0xc9, 0xe6, 0x59,
0x59, 0x59, 0x98, 0x99, 0x99, 0x91, 0x77, 0x9c, 0xf7, 0xf7, 0xf7, 0x2f, 0x84, 0xc3, 0xb8, 0x2a,
0x0a, 0xa2, 0x27, 0x84, 0xf0, 0x83, 0xa2, 0xa2, 0x22, 0xe4, 0xe4, 0xe4, 0xe0, 0xf8, 0xf1, 0xe3,
0x18, 0xec, 0xae, 0x42, 0xc7, 0xe9, 0xad, 0x98, 0x1b, 0xd7, 0x22, 0x38, 0xa3, 0x43, 0x67, 0x65,
0x4a, 0xd4, 0x8b, 0x08, 0x68, 0x7a, 0x7a, 0x5a, 0x04, 0x92, 0x99, 0x99, 0x89, 0x85, 0x85, 0x05,
0x81, 0xd1, 0x33, 0x86, 0xd1, 0x64, 0x32, 0x79, 0xc3, 0x02, 0x49, 0x12, 0x10, 0x01, 0x54, 0x1e,
0xc3, 0x15, 0x01, 0x95, 0xe7, 0x7f, 0x0a, 0x73, 0xed, 0x1b, 0x08, 0x4c, 0xea, 0x10, 0x9a, 0x29,
0x40, 0xd0, 0xaf, 0x85, 0xa9, 0x72, 0x3b, 0x2e, 0x14, 0xbd, 0x0e, 0x5b, 0xd3, 0x8f, 0x18, 0xb5,
0x5f, 0x12, 0x90, 0xdf, 0xef, 0x17, 0x2f, 0x0e, 0x1c, 0x38, 0x20, 0x6b, 0xab, 0xaa, 0xaa, 0x70,
0xe2, 0xc4, 0x09, 0x11, 0x08, 0xf3, 0x7e, 0xe4, 0xc8, 0x91, 0xd2, 0xb0, 0xf4, 0x35, 0x69, 0x84,
0x9c, 0x3a, 0x75, 0x4a, 0xa4, 0xcd, 0x8f, 0x2b, 0xb2, 0xf7, 0xc0, 0x7a, 0xe9, 0x63, 0x2c, 0xf8,
0x96, 0x20, 0x62, 0xfe, 0x02, 0xcc, 0x8f, 0xfd, 0x0e, 0xbf, 0xf3, 0x57, 0x4c, 0xf4, 0x1e, 0x56,
0xef, 0x33, 0x60, 0x2c, 0xde, 0x04, 0x97, 0xf5, 0x8c, 0x78, 0x41, 0xd5, 0x32, 0x77, 0x54, 0x65,
0x76, 0x76, 0x36, 0x01, 0x38, 0x7a, 0xf4, 0x28, 0x1a, 0x1b, 0x1b, 0xa7, 0x14, 0x63, 0x8b, 0x80,
0xe8, 0x09, 0x21, 0x63, 0x6e, 0x17, 0xce, 0xe5, 0xa5, 0xc0, 0x71, 0xed, 0x1b, 0x2c, 0x4e, 0x6b,
0x63, 0x10, 0x01, 0xe5, 0x22, 0x34, 0xfd, 0x0b, 0x42, 0x53, 0x3f, 0x21, 0xe4, 0xcb, 0x44, 0xd0,
0xfb, 0x1d, 0xa6, 0x1d, 0x87, 0xd1, 0x73, 0xee, 0x2d, 0xf4, 0x37, 0x1f, 0x14, 0xef, 0xe6, 0xe7,
0xe7, 0xc5, 0x98, 0x63, 0x46, 0x85, 0x57, 0x86, 0x33, 0x5c, 0xd4, 0x9a, 0x34, 0x26, 0x9d, 0x31,
0xed, 0xbe, 0xf4, 0xb9, 0x3a, 0xe9, 0x07, 0x08, 0x8c, 0x7e, 0x8d, 0xc0, 0xc8, 0xbb, 0x08, 0x0c,
0xef, 0xc6, 0xfc, 0xd0, 0x2e, 0xcc, 0x3b, 0xd3, 0x94, 0xed, 0x50, 0xf3, 0x74, 0xf5, 0x7c, 0x9f,
0xb2, 0xf7, 0xe4, 0xca, 0x77, 0xb3, 0xce, 0x0c, 0xf4, 0x5e, 0xd8, 0x83, 0xea, 0x63, 0x3b, 0x65,
0x8f, 0x40, 0x20, 0x90, 0x00, 0xba, 0x75, 0xeb, 0x56, 0x0c, 0xc4, 0x0f, 0xca, 0xcb, 0xcb, 0x31,
0xec, 0xb4, 0x42, 0x9f, 0xf7, 0x14, 0x06, 0x1a, 0x33, 0xe0, 0xb5, 0x3c, 0x04, 0x6f, 0xf7, 0xdd,
0x77, 0xb0, 0x7b, 0xe0, 0xeb, 0x59, 0x03, 0x9f, 0xe5, 0x01, 0x78, 0x7b, 0x36, 0x89, 0x68, 0xcc,
0x6d, 0xa7, 0x71, 0xf3, 0xe6, 0xcd, 0x28, 0x88, 0x82, 0x5a, 0x5c, 0x5c, 0x8c, 0x81, 0xa8, 0x1a,
0x2a, 0x8f, 0x6a, 0x29, 0x2e, 0xca, 0xc3, 0xf9, 0x63, 0xcf, 0xc0, 0x76, 0xf9, 0x1d, 0x78, 0xcc,
0x8f, 0xc0, 0xd3, 0xa5, 0x89, 0xda, 0x64, 0xf7, 0x06, 0xb5, 0xf9, 0xc3, 0xea, 0x3e, 0x29, 0xee,
0xf9, 0x5d, 0x72, 0x75, 0x77, 0xbc, 0xad, 0x6a, 0xed, 0x05, 0x09, 0x55, 0x3c, 0x28, 0x18, 0x0c,
0xc6, 0x40, 0x4c, 0x20, 0x95, 0xc7, 0x64, 0x2e, 0xa9, 0xee, 0x37, 0xd4, 0xe5, 0x6d, 0x83, 0xad,
0x7e, 0xaf, 0x82, 0x3d, 0xb9, 0xb4, 0xa1, 0x39, 0x19, 0x9d, 0xd5, 0xaf, 0x2a, 0x89, 0xbf, 0x02,
0xbb, 0xfe, 0x7d, 0x38, 0xaf, 0x65, 0x28, 0xf0, 0xba, 0x28, 0xd0, 0xdb, 0xf3, 0xa8, 0x02, 0x6d,
0xc6, 0x9c, 0xdf, 0x2d, 0x80, 0x65, 0x41, 0x84, 0x54, 0x54, 0x54, 0x48, 0x81, 0x46, 0xe4, 0xcd,
0x53, 0xf5, 0xea, 0x3f, 0x43, 0x4f, 0xdd, 0x2e, 0x4c, 0x9a, 0x9f, 0x85, 0xc7, 0xb2, 0x11, 0xed,
0x65, 0x4f, 0xc3, 0xef, 0x73, 0x61, 0xdc, 0xa1, 0x47, 0x6f, 0xfd, 0x7e, 0x58, 0x2f, 0xee, 0x56,
0xb0, 0x8d, 0x61, 0x58, 0x12, 0x6c, 0x0d, 0xfb, 0x30, 0xe9, 0xa8, 0x4b, 0x00, 0x85, 0x42, 0xa1,
0x18, 0x88, 0x9e, 0x10, 0xc2, 0x7a, 0x88, 0x4f, 0x24, 0x8b, 0xd1, 0xde, 0xfc, 0x3d, 0xba, 0xce,
0xa4, 0xc0, 0xdb, 0xf7, 0x91, 0x80, 0xe6, 0xe6, 0xe6, 0x44, 0x59, 0x4c, 0x7a, 0x9f, 0xe1, 0x4b,
0xe5, 0xd9, 0x87, 0x51, 0xaf, 0xec, 0x97, 0xf7, 0x62, 0xcc, 0x5a, 0x96, 0x00, 0xba, 0x7d, 0xfb,
0x76, 0x0c, 0x44, 0x00, 0x41, 0xac, 0xf6, 0x78, 0x10, 0x8b, 0x91, 0xf9, 0xbb, 0x50, 0xf6, 0x15,
0x4c, 0xa7, 0x37, 0xe3, 0x7a, 0xc9, 0x13, 0x38, 0x7b, 0xf6, 0xac, 0x7c, 0xc7, 0x35, 0x17, 0x75,
0xdf, 0xaa, 0x30, 0xee, 0x84, 0x47, 0x09, 0xc3, 0x6b, 0xbe, 0x17, 0xe6, 0x9a, 0x1d, 0x98, 0xf5,
0xf4, 0x24, 0x80, 0xb0, 0xd4, 0x7f, 0x62, 0xf2, 0xae, 0xac, 0xac, 0x94, 0x62, 0x8b, 0x07, 0xb1,
0x10, 0x2d, 0x16, 0x8b, 0xcc, 0x4d, 0xc6, 0x2c, 0x34, 0xe6, 0x3d, 0x28, 0xf7, 0x56, 0xab, 0x55,
0xec, 0xcf, 0x9c, 0x2d, 0x70, 0x5c, 0x7d, 0x53, 0xbc, 0x99, 0xe8, 0x7c, 0x5e, 0x35, 0xdd, 0xc7,
0x54, 0xa8, 0x82, 0x2b, 0x83, 0x78, 0x42, 0x42, 0x18, 0xaa, 0x78, 0xd0, 0xec, 0xec, 0xac, 0xfc,
0x0e, 0xe5, 0xe6, 0xe6, 0x4a, 0x41, 0x0f, 0x98, 0xeb, 0xe4, 0x7e, 0xa9, 0xe6, 0xbe, 0x40, 0x57,
0xed, 0x76, 0xe5, 0x0d, 0xcb, 0xe0, 0x3e, 0x74, 0xd7, 0xbc, 0x0c, 0x6b, 0xf3, 0xcf, 0x92, 0x93,
0x15, 0x41, 0xec, 0xc0, 0x94, 0xf6, 0x72, 0x20, 0xe6, 0x84, 0x55, 0xcf, 0x9c, 0xd0, 0xd8, 0xe5,
0x47, 0xba, 0x72, 0xd1, 0x55, 0xf5, 0x22, 0x26, 0xba, 0xd6, 0x2a, 0xd0, 0xfd, 0x18, 0x30, 0xa4,
0xc0, 0x50, 0xb8, 0x41, 0xbc, 0x61, 0x4e, 0x56, 0x04, 0x11, 0x52, 0x5d, 0x5d, 0x1d, 0x95, 0x77,
0x7e, 0x7e, 0xbe, 0x34, 0xc5, 0x48, 0xe2, 0xd9, 0x07, 0x09, 0x61, 0x31, 0xf2, 0xbe, 0xad, 0x64,
0x1d, 0xdc, 0x37, 0x9e, 0x53, 0xe1, 0x5a, 0xa7, 0x1a, 0xef, 0x4b, 0xca, 0x9b, 0xd7, 0x50, 0xae,
0x2d, 0x16, 0x08, 0xc7, 0x8a, 0x20, 0x26, 0x9d, 0x10, 0xe6, 0x84, 0xb1, 0x37, 0x9b, 0xcd, 0x51,
0x08, 0xfb, 0xa0, 0x4e, 0xa7, 0x13, 0x08, 0x8b, 0x91, 0xa0, 0xbe, 0x86, 0x4f, 0xd0, 0xa1, 0x7b,
0x06, 0xcd, 0x45, 0x6b, 0xe1, 0xbc, 0xfe, 0x83, 0x02, 0x84, 0xa4, 0xb3, 0x30, 0x05, 0x1c, 0x06,
0x83, 0x01, 0x85, 0x85, 0x85, 0xcb, 0x83, 0xa8, 0xa2, 0x48, 0xa8, 0xe2, 0x21, 0xdc, 0x98, 0x62,
0x21, 0x84, 0x7d, 0x8b, 0x73, 0xb6, 0x15, 0xff, 0xf8, 0x5f, 0x68, 0xba, 0xaa, 0x67, 0x77, 0x16,
0x4f, 0x08, 0xe1, 0x81, 0x22, 0x30, 0xbd, 0x5e, 0x2f, 0xb0, 0x04, 0x10, 0x21, 0x35, 0x35, 0x35,
0xf2, 0x6b, 0xd9, 0xde, 0xde, 0x2e, 0x79, 0xe0, 0x86, 0x5c, 0x18, 0x0f, 0x21, 0xa0, 0xb3, 0xb3,
0x53, 0xaa, 0x9d, 0x49, 0x27, 0xa0, 0xad, 0xad, 0x4d, 0xc2, 0xca, 0x41, 0x08, 0xa3, 0x11, 0x19,
0xcc, 0x79, 0x3c, 0x28, 0x95, 0x9e, 0x10, 0x12, 0x5f, 0x8c, 0x0c, 0x55, 0x24, 0x5c, 0x11, 0x08,
0x2d, 0x1e, 0x12, 0xc9, 0xc9, 0xbf, 0x8d, 0xf0, 0xff, 0xc6, 0xff, 0xe5, 0x0f, 0xe4, 0x9d, 0x8c,
0x7b, 0xaf, 0xff, 0x1b, 0x47, 0x57, 0x8d, 0x83, 0x7a, 0x4f, 0x71, 0x3e, 0x00, 0x00, 0x00, 0x00,
0x49, 0x45, 0x4e, 0x44, 0xae, 0x42, 0x60, 0x82,
};
const BITMAP_OPAQUE revert_pcbnew_xpm[1] = {{ png, sizeof( png ), "revert_pcbnew_xpm" }};
//EOF

View File

@ -8,68 +8,83 @@
static const unsigned char png[] = {
0x89, 0x50, 0x4e, 0x47, 0x0d, 0x0a, 0x1a, 0x0a, 0x00, 0x00, 0x00, 0x0d, 0x49, 0x48, 0x44, 0x52,
0x00, 0x00, 0x00, 0x1a, 0x00, 0x00, 0x00, 0x1a, 0x08, 0x06, 0x00, 0x00, 0x00, 0xa9, 0x4a, 0x4c,
0xce, 0x00, 0x00, 0x03, 0xbe, 0x49, 0x44, 0x41, 0x54, 0x48, 0xc7, 0xd5, 0x96, 0x59, 0x2c, 0x5c,
0x61, 0x14, 0xc7, 0xad, 0x89, 0x88, 0xd8, 0x63, 0x7d, 0x20, 0x21, 0x04, 0x89, 0xe0, 0xc9, 0x8b,
0x2d, 0xb1, 0x6f, 0xb1, 0x7b, 0x14, 0xf1, 0x40, 0x24, 0x76, 0x11, 0xbb, 0x17, 0x7d, 0xed, 0x53,
0x85, 0x07, 0x2f, 0x96, 0xa9, 0xce, 0xd0, 0x56, 0xe8, 0xa2, 0x55, 0x9e, 0x2c, 0xa9, 0x6a, 0x43,
0x44, 0x33, 0xcc, 0xd4, 0xe8, 0x24, 0x6a, 0xd0, 0x4c, 0x3b, 0x4c, 0xa7, 0xb6, 0xa9, 0x9e, 0xff,
0x1d, 0xdf, 0xcd, 0xa5, 0x57, 0x53, 0x1a, 0x4d, 0xfa, 0xf0, 0x9f, 0xef, 0x7c, 0x77, 0xee, 0x77,
0x7f, 0xe7, 0x9e, 0x73, 0xcf, 0xf9, 0x3e, 0xb3, 0xb3, 0xb3, 0x33, 0xb3, 0x7f, 0x21, 0xee, 0x27,
0x2f, 0x2f, 0xef, 0x4e, 0x7e, 0x7e, 0xfe, 0x46, 0x61, 0x61, 0xa1, 0xa2, 0xa0, 0xa0, 0x80, 0x17,
0x5d, 0xe3, 0x45, 0xf7, 0x70, 0xca, 0xcd, 0xcd, 0xe5, 0x95, 0x93, 0x93, 0xc3, 0x2b, 0x3b, 0x3b,
0x9b, 0x57, 0x56, 0x56, 0x16, 0xaf, 0xcc, 0xcc, 0x4c, 0x65, 0x7a, 0x7a, 0xfa, 0x3d, 0x0e, 0x54,
0x56, 0x56, 0xb6, 0x45, 0xe3, 0x26, 0x69, 0xed, 0x16, 0xa4, 0xaa, 0xaa, 0xaa, 0xda, 0xe4, 0x40,
0x75, 0x75, 0x75, 0x6a, 0x1a, 0xdf, 0xd4, 0xd7, 0xd7, 0x2f, 0xf8, 0xfa, 0xfa, 0x6a, 0x21, 0x1f,
0x1f, 0x1f, 0x2d, 0x5d, 0x5f, 0xa0, 0xeb, 0x7d, 0x4c, 0xad, 0xad, 0xad, 0xf3, 0xd3, 0xd3, 0xd3,
0x63, 0xb0, 0x2b, 0x2b, 0x2b, 0x17, 0x27, 0x26, 0x26, 0xc6, 0x85, 0xff, 0x37, 0x34, 0x34, 0xbc,
0x16, 0xce, 0xcf, 0x35, 0xd3, 0xd1, 0xd1, 0xb1, 0x71, 0x01, 0x24, 0xbc, 0xc1, 0x60, 0x30, 0x0c,
0x24, 0x26, 0x26, 0x2a, 0x93, 0x93, 0x93, 0x15, 0xb0, 0x71, 0x6d, 0x76, 0x76, 0x76, 0x14, 0x0e,
0x8c, 0x8d, 0x8d, 0x3d, 0x5d, 0x5c, 0x5c, 0x7c, 0x04, 0x87, 0x64, 0x32, 0xd9, 0x73, 0xb6, 0xc6,
0xcb, 0xcb, 0x4b, 0x27, 0x06, 0x6a, 0x6f, 0x6f, 0x37, 0x81, 0x6a, 0x6b, 0x6b, 0x7f, 0x01, 0x31,
0x95, 0x97, 0x97, 0xbf, 0x8d, 0x88, 0x88, 0xd8, 0x62, 0xf3, 0x95, 0x95, 0x95, 0x11, 0x00, 0x60,
0xcb, 0xe5, 0xf2, 0x61, 0xe1, 0xc3, 0xff, 0x0a, 0x04, 0xb1, 0x07, 0x8b, 0xcd, 0xff, 0x2f, 0x90,
0x5e, 0xaf, 0x1f, 0x3c, 0x38, 0x38, 0x18, 0xa4, 0xbc, 0x7c, 0xc1, 0xc8, 0x24, 0x9c, 0x7b, 0x7a,
0x7a, 0xea, 0x84, 0x36, 0xd6, 0x5c, 0x06, 0xb5, 0xb5, 0xb5, 0x89, 0x83, 0x06, 0x06, 0x06, 0x5e,
0xc2, 0x6b, 0x1b, 0x1b, 0x9b, 0x63, 0x5b, 0x5b, 0xdb, 0x23, 0x0b, 0x0b, 0x8b, 0x1f, 0x18, 0x99,
0x84, 0x73, 0x73, 0x73, 0xf3, 0x0b, 0x36, 0xad, 0x39, 0x09, 0x08, 0x08, 0xd8, 0x1b, 0x1d, 0x1d,
0x7d, 0xf6, 0x5b, 0x90, 0xd1, 0x68, 0xec, 0x83, 0x67, 0x3d, 0x3d, 0x3d, 0x53, 0x37, 0x09, 0x1d,
0xd6, 0x77, 0x76, 0x76, 0xce, 0xf8, 0xf9, 0xf9, 0x7d, 0x66, 0x20, 0x2a, 0x0b, 0x13, 0xa8, 0xa6,
0xa6, 0x86, 0x07, 0x29, 0x95, 0x4a, 0xa9, 0xbb, 0xbb, 0xfb, 0x3e, 0x5b, 0x8c, 0x90, 0xd8, 0xdb,
0xdb, 0x7f, 0x8f, 0x8a, 0x8a, 0x42, 0x41, 0xf7, 0x45, 0x46, 0x46, 0xaa, 0x9d, 0x9d, 0x9d, 0xbf,
0xc1, 0x2e, 0x2e, 0x2e, 0x5e, 0x76, 0x73, 0x73, 0x3b, 0x80, 0x5d, 0x54, 0x54, 0xc4, 0xd9, 0xa7,
0xa7, 0xa7, 0xfd, 0x80, 0xe1, 0xcd, 0xce, 0xc3, 0x28, 0x0e, 0x52, 0x28, 0x14, 0x32, 0xa1, 0x97,
0xcb, 0xcb, 0xcb, 0x23, 0x66, 0xd4, 0xa9, 0x20, 0x2c, 0x64, 0x36, 0x1c, 0xa2, 0x50, 0x71, 0xf6,
0xea, 0xea, 0xea, 0x30, 0x42, 0x07, 0x9b, 0x15, 0x34, 0xe6, 0x70, 0x12, 0xa0, 0x96, 0x96, 0x16,
0x13, 0xa8, 0xba, 0xba, 0xfa, 0x46, 0x20, 0x66, 0x2f, 0x2d, 0x2d, 0x3d, 0x64, 0xa0, 0xc9, 0xc9,
0xc9, 0xf1, 0x1b, 0x81, 0x10, 0x8a, 0x90, 0x90, 0x10, 0x0d, 0x42, 0x86, 0x79, 0x78, 0x78, 0xf8,
0x56, 0x60, 0x60, 0xe0, 0xee, 0xd1, 0xd1, 0x51, 0x3f, 0xf2, 0xe0, 0xe8, 0xe8, 0x68, 0xd8, 0xdd,
0xdd, 0xbd, 0x1f, 0x16, 0x16, 0xf6, 0x09, 0x21, 0x55, 0xab, 0xd5, 0x0f, 0xae, 0x04, 0x51, 0xd3,
0xbb, 0x12, 0x04, 0x1d, 0x1f, 0x1f, 0xf7, 0x8b, 0xd5, 0x17, 0x60, 0x80, 0x08, 0xcb, 0x81, 0xd9,
0xd7, 0x06, 0x69, 0xb5, 0x5a, 0x89, 0x87, 0x87, 0xc7, 0x3e, 0xda, 0x10, 0x80, 0x78, 0x8b, 0xa0,
0xa0, 0xa0, 0x1d, 0x24, 0x3c, 0x2d, 0x2d, 0x6d, 0x3d, 0x3a, 0x3a, 0x5a, 0x85, 0xfb, 0x68, 0x2b,
0x58, 0x0b, 0x0d, 0x0d, 0xdd, 0x66, 0x4e, 0x09, 0x41, 0xcd, 0xcd, 0xcd, 0x26, 0x10, 0x75, 0xe2,
0x2b, 0x41, 0x88, 0x3f, 0xcb, 0xc5, 0xf6, 0xf6, 0xf6, 0x90, 0x98, 0x8d, 0xfe, 0x67, 0x6d, 0x6d,
0x7d, 0x0a, 0x7b, 0x6e, 0x6e, 0xee, 0xf1, 0x1f, 0x81, 0x90, 0x64, 0xbc, 0x81, 0xb0, 0x89, 0xb2,
0x07, 0x6a, 0x34, 0x9a, 0x21, 0x31, 0x1b, 0xce, 0x58, 0x59, 0x59, 0x71, 0x20, 0x74, 0x78, 0xac,
0x43, 0xb1, 0xb3, 0xcf, 0x9b, 0x07, 0x55, 0x54, 0x54, 0xf0, 0x20, 0x24, 0x1f, 0xf5, 0x20, 0x6c,
0xff, 0xd8, 0x1a, 0x68, 0xb7, 0x94, 0xc3, 0x8e, 0x8b, 0x8b, 0xdb, 0xf0, 0xf7, 0xf7, 0xdf, 0x43,
0xe8, 0x82, 0x83, 0x83, 0x77, 0x1c, 0x1c, 0x1c, 0x0c, 0x3a, 0x9d, 0x6e, 0x30, 0x26, 0x26, 0x46,
0x05, 0x07, 0x7b, 0x7b, 0x7b, 0x5f, 0x75, 0x75, 0x75, 0x4d, 0x63, 0x0d, 0x2b, 0x58, 0x51, 0x10,
0xd4, 0xdd, 0xdd, 0x3d, 0x85, 0xa2, 0x75, 0x71, 0x71, 0xd1, 0xbb, 0xba, 0xba, 0xea, 0x2d, 0x2d,
0x2d, 0x8d, 0x18, 0x99, 0xe0, 0x39, 0xb3, 0xd1, 0x8e, 0x98, 0xed, 0xe4, 0xe4, 0x64, 0xc0, 0x1c,
0xeb, 0x24, 0x12, 0xc9, 0x0b, 0x06, 0x6a, 0x6a, 0x6a, 0x12, 0x07, 0xb1, 0x37, 0xa3, 0xfd, 0x46,
0x86, 0x5d, 0x17, 0x39, 0x43, 0xee, 0x98, 0x10, 0x26, 0x66, 0xe3, 0x93, 0x16, 0xfe, 0x27, 0x95,
0x4a, 0x27, 0x00, 0xb5, 0xb3, 0xb3, 0x3b, 0x2c, 0x29, 0x29, 0x59, 0x12, 0x05, 0x95, 0x96, 0x96,
0xbe, 0x63, 0x5b, 0x39, 0xe4, 0xed, 0xed, 0xfd, 0x95, 0x0e, 0x24, 0xef, 0x55, 0x2a, 0x95, 0x54,
0xe8, 0x44, 0x6a, 0x6a, 0xea, 0x3a, 0xb3, 0xd1, 0x9a, 0xe8, 0xf0, 0xb2, 0x7a, 0xb9, 0x04, 0x90,
0x1f, 0x96, 0xa3, 0xc6, 0xc6, 0x46, 0x13, 0x88, 0x76, 0x51, 0x80, 0x14, 0xa4, 0xb9, 0xeb, 0xea,
0xe4, 0xe4, 0x64, 0x9e, 0x3c, 0xdf, 0xa2, 0xfc, 0x1c, 0x52, 0x33, 0xe6, 0x45, 0xe7, 0x04, 0xd5,
0xf9, 0x3d, 0x72, 0x3a, 0x4b, 0x98, 0x40, 0x74, 0x24, 0xfa, 0x48, 0x23, 0x5a, 0xc7, 0x93, 0x5b,
0xd0, 0x38, 0x8e, 0x5c, 0x1c, 0x88, 0x0e, 0x20, 0x77, 0xa9, 0xf8, 0x54, 0x19, 0x19, 0x19, 0x38,
0x83, 0x71, 0xa2, 0x39, 0x2f, 0x0a, 0x15, 0xaf, 0x94, 0x94, 0x14, 0x5e, 0xb4, 0x8e, 0x57, 0x52,
0x52, 0x12, 0x2f, 0x1c, 0x6a, 0xa0, 0x84, 0x84, 0x04, 0x65, 0x7c, 0x7c, 0xfc, 0x87, 0xd8, 0xd8,
0xd8, 0xde, 0x9f, 0xec, 0xf5, 0x2a, 0x2c, 0x00, 0x7b, 0x99, 0x47, 0x00, 0x00, 0x00, 0x00, 0x49,
0x45, 0x4e, 0x44, 0xae, 0x42, 0x60, 0x82,
0xce, 0x00, 0x00, 0x04, 0xb4, 0x49, 0x44, 0x41, 0x54, 0x48, 0xc7, 0xc5, 0x96, 0x5b, 0x4c, 0x9b,
0x65, 0x18, 0xc7, 0xbf, 0x25, 0x8b, 0xc6, 0xc4, 0x64, 0x5b, 0xbc, 0xd2, 0x78, 0x67, 0x74, 0x5e,
0x79, 0x01, 0x44, 0xf4, 0x4e, 0x60, 0x5c, 0x08, 0x41, 0x46, 0x69, 0x39, 0xc8, 0x61, 0x4b, 0x05,
0x63, 0x41, 0x03, 0xce, 0xc1, 0xd8, 0x38, 0x1f, 0x06, 0xe5, 0x30, 0x40, 0x08, 0x2d, 0x85, 0x02,
0x1d, 0x65, 0x40, 0x70, 0x40, 0x0b, 0x14, 0x68, 0x39, 0x1f, 0x56, 0xce, 0xb0, 0xd2, 0x03, 0x63,
0x2b, 0x50, 0x2d, 0x22, 0xcc, 0x00, 0xa5, 0x1c, 0x36, 0xa9, 0xf6, 0xf1, 0x7d, 0x1a, 0xba, 0x90,
0xd2, 0x66, 0x98, 0x4c, 0xbd, 0xf8, 0xe7, 0xeb, 0xdb, 0xef, 0x7d, 0xfe, 0xbf, 0xef, 0x7d, 0xbe,
0xe7, 0x7d, 0xde, 0x8f, 0x02, 0x00, 0xea, 0xbf, 0x10, 0xf5, 0xbf, 0x81, 0x5c, 0x5d, 0x5d, 0xdf,
0x75, 0x76, 0x76, 0xd6, 0x11, 0xc1, 0x29, 0xa5, 0xc3, 0x98, 0x97, 0x82, 0xe6, 0x19, 0xd4, 0xa7,
0x9a, 0x00, 0xea, 0xb2, 0x9a, 0x4e, 0xf9, 0xca, 0x19, 0xd4, 0x1b, 0x2e, 0x2e, 0x2e, 0x41, 0x68,
0x40, 0xae, 0x53, 0xe4, 0x2a, 0x22, 0x7a, 0x7c, 0x34, 0xee, 0x45, 0x1d, 0x99, 0xe3, 0x7f, 0xa2,
0xa3, 0x39, 0x78, 0x2f, 0x08, 0x63, 0xd1, 0x03, 0xbd, 0xd0, 0xf3, 0x04, 0x48, 0xc5, 0xa0, 0xcc,
0x44, 0x60, 0x11, 0x9d, 0x0a, 0x3f, 0x06, 0x0a, 0xc2, 0x09, 0xe4, 0x37, 0x1b, 0xc7, 0x4e, 0x4e,
0x4e, 0x1f, 0xa1, 0x8e, 0x40, 0x6c, 0xbc, 0x77, 0x7c, 0x2e, 0xc6, 0xbe, 0xf0, 0x21, 0x9e, 0xf6,
0x40, 0xd6, 0x9b, 0xa0, 0x66, 0x50, 0x57, 0xed, 0x80, 0x32, 0xed, 0xa4, 0x2b, 0xd3, 0x16, 0x84,
0xb1, 0xc7, 0xbd, 0xec, 0x81, 0xb6, 0xad, 0x37, 0x71, 0xd9, 0x76, 0x40, 0xe7, 0x3c, 0x3c, 0x3c,
0x1a, 0x42, 0x42, 0x42, 0xc6, 0x62, 0x63, 0x63, 0x17, 0xb9, 0x5c, 0xee, 0xd3, 0xc2, 0xc2, 0xc2,
0xfa, 0xbc, 0xbc, 0x3c, 0x56, 0x70, 0x70, 0x70, 0xa2, 0x75, 0x2e, 0xc6, 0x1e, 0x03, 0x6d, 0x9f,
0x00, 0x61, 0x6e, 0xe7, 0x2e, 0x53, 0xe7, 0xa7, 0x19, 0xd4, 0x39, 0xdb, 0xa7, 0x24, 0x66, 0xaf,
0x97, 0x94, 0x94, 0xe4, 0x68, 0x34, 0x1a, 0xf3, 0xd6, 0xd6, 0x16, 0x18, 0x0c, 0x06, 0x58, 0x5d,
0x7b, 0x0a, 0x46, 0xa3, 0x11, 0xb6, 0xb7, 0xb7, 0x41, 0xab, 0xd5, 0x42, 0x52, 0x52, 0x12, 0x78,
0x79, 0x79, 0x45, 0x61, 0x2c, 0x7a, 0xa0, 0x17, 0x7a, 0x9e, 0x00, 0x2d, 0x04, 0x52, 0x1f, 0x68,
0x02, 0xa9, 0x4f, 0xd4, 0xfe, 0x94, 0xeb, 0xc0, 0x67, 0xd4, 0x59, 0x2b, 0xc8, 0xc7, 0xc7, 0xe7,
0xbb, 0xf6, 0xf6, 0xf6, 0x0d, 0x34, 0xef, 0x7e, 0xa0, 0x81, 0xb0, 0xac, 0xb6, 0x43, 0x5a, 0xb2,
0xc8, 0x48, 0x4b, 0x11, 0x6f, 0xf8, 0x25, 0xb6, 0x1a, 0x82, 0xd3, 0xc4, 0xcf, 0x44, 0x03, 0xf3,
0xb0, 0xbb, 0xbb, 0x0b, 0x32, 0x99, 0xcc, 0x54, 0xc0, 0xbe, 0xed, 0x8f, 0x1e, 0xe8, 0x85, 0x9e,
0xf6, 0x52, 0x67, 0x7a, 0xf1, 0x8e, 0xe8, 0x54, 0x08, 0x82, 0x88, 0x80, 0xcf, 0xe7, 0xff, 0xbc,
0xb3, 0x63, 0x84, 0x6b, 0x25, 0xd2, 0xbf, 0x02, 0xd2, 0x3b, 0xf4, 0xec, 0x66, 0xb5, 0xac, 0xac,
0x4b, 0xdb, 0xc3, 0x93, 0x2d, 0xf5, 0x95, 0x4a, 0x9e, 0xc8, 0xb2, 0x7e, 0x52, 0x75, 0xf9, 0xde,
0x6a, 0x5e, 0xfb, 0x9a, 0xdd, 0x06, 0x06, 0x32, 0x4f, 0x2c, 0x6a, 0x35, 0x4d, 0x85, 0x5e, 0xb0,
0xa6, 0xce, 0x74, 0xaa, 0x62, 0x08, 0x0f, 0x0f, 0x87, 0xcd, 0xcd, 0x4d, 0x28, 0xa8, 0x1b, 0x35,
0x5f, 0xc9, 0xef, 0x53, 0x72, 0xba, 0xb5, 0xbd, 0x08, 0xb0, 0x55, 0x96, 0x50, 0xae, 0xf0, 0x8b,
0xab, 0x81, 0x64, 0x5e, 0xdf, 0x9f, 0xb8, 0x32, 0x61, 0xee, 0x4d, 0x50, 0x32, 0xce, 0x38, 0x2c,
0x86, 0x7d, 0x2b, 0x48, 0x19, 0x40, 0x05, 0x20, 0x48, 0x2c, 0x16, 0xc3, 0xc2, 0xd2, 0x2a, 0x7c,
0x71, 0x4b, 0xbc, 0x55, 0xdc, 0xf1, 0x58, 0x6a, 0x0f, 0x62, 0x05, 0x85, 0x27, 0x55, 0xc1, 0xe7,
0x71, 0x4d, 0xbf, 0x4f, 0xab, 0x56, 0x60, 0x7c, 0x7c, 0x1c, 0xe4, 0x57, 0xde, 0x41, 0xaf, 0xfd,
0x13, 0x20, 0x0d, 0x8d, 0x7a, 0x7b, 0xde, 0x9f, 0xfa, 0x50, 0xc1, 0xa0, 0x2e, 0x92, 0xe1, 0x19,
0x6f, 0x6f, 0xef, 0x28, 0xa5, 0x52, 0x09, 0xb5, 0x92, 0x19, 0xb8, 0x5a, 0xd0, 0xaf, 0x70, 0x04,
0x41, 0x25, 0x54, 0x0c, 0xce, 0x20, 0x28, 0x20, 0xbd, 0x7d, 0xb1, 0xb4, 0x49, 0x6e, 0xd6, 0xeb,
0xf5, 0xc0, 0x4d, 0x8b, 0x4d, 0x43, 0xcf, 0x97, 0x82, 0x22, 0x23, 0x23, 0x0b, 0xd6, 0xd7, 0xd7,
0xe1, 0x87, 0xd2, 0x1e, 0xf8, 0x9e, 0x3f, 0x2d, 0x3b, 0x6e, 0x5c, 0xd5, 0xbb, 0x3c, 0x50, 0xdd,
0xb7, 0x62, 0x51, 0x09, 0x79, 0x4f, 0xac, 0x22, 0xe9, 0x04, 0x82, 0x22, 0xf2, 0xbb, 0x67, 0x22,
0x73, 0x25, 0xcf, 0xb0, 0x1a, 0x7f, 0xcc, 0x4e, 0x6d, 0xb1, 0x0b, 0xb2, 0x4d, 0x1d, 0x93, 0xc9,
0xcc, 0xd1, 0xe9, 0x74, 0x90, 0x2b, 0x1c, 0x81, 0x88, 0xe2, 0xd1, 0x61, 0x7e, 0xcf, 0x72, 0xbf,
0x70, 0x50, 0x37, 0xdc, 0x30, 0xf2, 0xcb, 0x68, 0xd3, 0x03, 0xbd, 0xfc, 0xfe, 0x98, 0x7e, 0x0c,
0xa1, 0xf1, 0xb5, 0x8a, 0x16, 0x2b, 0x28, 0x2c, 0x47, 0x32, 0x9f, 0xc8, 0x95, 0x99, 0x70, 0x0b,
0x34, 0xc6, 0xd1, 0xec, 0xa7, 0xce, 0xb6, 0x18, 0x3c, 0x3d, 0x3d, 0x23, 0xe5, 0x72, 0x39, 0x48,
0xc7, 0x16, 0x20, 0x30, 0xb3, 0x7b, 0x91, 0xdd, 0xb2, 0x20, 0x41, 0xe3, 0xda, 0x41, 0xdd, 0x10,
0x4f, 0xba, 0xd4, 0x97, 0xdd, 0xbc, 0xd0, 0x71, 0xad, 0xe6, 0xe1, 0x7d, 0x94, 0x15, 0xe4, 0x97,
0x2c, 0x5a, 0x6a, 0xe9, 0x57, 0xc2, 0xe2, 0xe2, 0x22, 0x74, 0x45, 0x7d, 0xec, 0xb0, 0x18, 0x4e,
0x94, 0x37, 0x8f, 0xc7, 0x03, 0xe3, 0xee, 0x1e, 0x30, 0x52, 0x44, 0xcf, 0x59, 0x9c, 0x09, 0x89,
0xd5, 0xd8, 0x56, 0x08, 0xfa, 0xf2, 0x66, 0x15, 0x78, 0xc5, 0x35, 0xed, 0x6d, 0x6d, 0xef, 0x40,
0x1b, 0x29, 0xa2, 0xc9, 0xd0, 0xb7, 0xec, 0x97, 0xb7, 0xbd, 0x0d, 0x4b, 0xa3, 0xd1, 0x60, 0x6e,
0x6e, 0x0e, 0x54, 0x4f, 0xf4, 0xe0, 0x7d, 0xa3, 0xc5, 0xc0, 0xe2, 0x8c, 0x77, 0xda, 0x03, 0x7d,
0x95, 0xd7, 0x35, 0xe3, 0xfe, 0xad, 0x00, 0x26, 0x95, 0x2b, 0x96, 0x2e, 0x51, 0x7a, 0x3b, 0x59,
0xea, 0x70, 0xc3, 0x3a, 0x6a, 0x41, 0x19, 0x19, 0x19, 0xe3, 0x58, 0x14, 0x9a, 0xa5, 0x5f, 0x81,
0x74, 0x81, 0xe7, 0xb4, 0xd4, 0xce, 0x47, 0xa1, 0xf9, 0x83, 0xa3, 0xdf, 0x94, 0x4d, 0x48, 0x42,
0xf3, 0x87, 0x86, 0x7d, 0x53, 0x3b, 0x95, 0xb4, 0xc4, 0xe6, 0x83, 0x87, 0x8f, 0xf4, 0x96, 0x96,
0xa4, 0x56, 0xab, 0xcd, 0xf5, 0xf5, 0xf5, 0x70, 0x87, 0x9d, 0xc5, 0xed, 0x62, 0xbe, 0xf7, 0xe6,
0xa9, 0x9b, 0xaa, 0xbb, 0xbb, 0x3b, 0xb3, 0xb8, 0xb8, 0xb8, 0x7f, 0x6a, 0x6a, 0x0a, 0x0e, 0x0e,
0x0e, 0x60, 0x6c, 0x7e, 0x05, 0x78, 0xad, 0x93, 0xe6, 0xeb, 0xa5, 0x3d, 0x26, 0x4e, 0xf3, 0x84,
0x79, 0x64, 0x56, 0x0b, 0x7b, 0xfb, 0xfb, 0xa0, 0x52, 0xa9, 0x40, 0xa1, 0x50, 0x00, 0x69, 0xb8,
0xf8, 0x70, 0xd0, 0xd0, 0xd0, 0x00, 0x35, 0x59, 0xb1, 0x26, 0xd2, 0x27, 0xcf, 0xff, 0xa3, 0x63,
0x82, 0x04, 0x84, 0x54, 0x57, 0x57, 0x1b, 0x87, 0x86, 0x86, 0x2c, 0x2f, 0x7b, 0x63, 0x63, 0x03,
0x96, 0x97, 0x97, 0x01, 0x0b, 0x46, 0x20, 0x10, 0x1c, 0x92, 0xed, 0x00, 0xf7, 0xee, 0xdd, 0x03,
0xd2, 0xd1, 0x81, 0xc5, 0x62, 0x41, 0x7c, 0x7c, 0x3c, 0x08, 0x85, 0x42, 0xe0, 0x70, 0x38, 0x6b,
0x24, 0xf6, 0xfd, 0x53, 0x1f, 0x7c, 0x47, 0xb0, 0xd7, 0x88, 0x9c, 0x88, 0x22, 0x88, 0x8a, 0x88,
0xae, 0x13, 0x79, 0xb8, 0xb9, 0xb9, 0x31, 0x71, 0x6e, 0x4c, 0x4c, 0xcc, 0xdd, 0xbb, 0x02, 0x81,
0xb9, 0xac, 0xac, 0x0c, 0xa2, 0xa3, 0xa3, 0x71, 0x8c, 0xbd, 0x12, 0x2a, 0x2b, 0x2b, 0xff, 0x20,
0xf3, 0x2e, 0x9d, 0xf6, 0x28, 0x77, 0xa8, 0xe3, 0x47, 0x79, 0x51, 0x76, 0x8a, 0x0f, 0x9f, 0x5f,
0x79, 0x48, 0x56, 0x6f, 0x49, 0x63, 0x54, 0x54, 0x14, 0x90, 0x23, 0x06, 0x57, 0x6d, 0x4e, 0x4f,
0x4f, 0x0f, 0x7b, 0xa5, 0x1f, 0x27, 0xe4, 0xe9, 0x2f, 0x96, 0x97, 0x97, 0xff, 0x56, 0x57, 0x57,
0x07, 0x09, 0x09, 0x09, 0x40, 0xc6, 0x96, 0x6a, 0x24, 0x69, 0xdc, 0x7f, 0xe5, 0x9f, 0x55, 0xc4,
0xfc, 0x02, 0x29, 0xa2, 0xd1, 0xc6, 0xc6, 0x46, 0x98, 0x9d, 0x9d, 0x85, 0xd5, 0xd5, 0x55, 0x4c,
0xa1, 0xe9, 0x5f, 0xf9, 0x86, 0x23, 0xb0, 0xb3, 0xa9, 0xa9, 0xa9, 0x77, 0x2a, 0x2a, 0x2a, 0x0e,
0xc9, 0xe6, 0x37, 0xd1, 0xe9, 0xf4, 0x1b, 0x7f, 0x03, 0xda, 0xeb, 0x59, 0xb9, 0x03, 0xd9, 0xb0,
0x63, 0x00, 0x00, 0x00, 0x00, 0x49, 0x45, 0x4e, 0x44, 0xae, 0x42, 0x60, 0x82,
};
const BITMAP_OPAQUE show_footprint_xpm[1] = {{ png, sizeof( png ), "show_footprint_xpm" }};

View File

@ -8,34 +8,38 @@
static const unsigned char png[] = {
0x89, 0x50, 0x4e, 0x47, 0x0d, 0x0a, 0x1a, 0x0a, 0x00, 0x00, 0x00, 0x0d, 0x49, 0x48, 0x44, 0x52,
0x00, 0x00, 0x00, 0x1a, 0x00, 0x00, 0x00, 0x1a, 0x08, 0x06, 0x00, 0x00, 0x00, 0xa9, 0x4a, 0x4c,
0xce, 0x00, 0x00, 0x01, 0xa6, 0x49, 0x44, 0x41, 0x54, 0x48, 0xc7, 0xbd, 0xd5, 0xbf, 0x4b, 0xc3,
0x50, 0x10, 0x07, 0xf0, 0x4b, 0xfa, 0xde, 0x8b, 0x4e, 0x16, 0x71, 0x12, 0x2b, 0x0e, 0x2e, 0xa5,
0x43, 0x71, 0x12, 0x1c, 0xc4, 0xa5, 0xe8, 0x22, 0x76, 0x71, 0xd0, 0xa1, 0xa3, 0x4b, 0x41, 0x6c,
0x5a, 0x7f, 0x80, 0x08, 0x2e, 0x82, 0xe0, 0xa2, 0x83, 0xae, 0x2a, 0x45, 0x11, 0x9c, 0x15, 0x5c,
0x0a, 0x8a, 0xe0, 0xe0, 0xa0, 0x50, 0xf0, 0x0f, 0x28, 0x2a, 0x16, 0xc4, 0x22, 0x0e, 0x6a, 0xa1,
0x3d, 0xbf, 0x95, 0x0e, 0x6a, 0x92, 0xa9, 0x87, 0x90, 0x6f, 0x08, 0x21, 0xe4, 0x93, 0xbb, 0xe4,
0x5d, 0x88, 0x99, 0xe9, 0x3f, 0x42, 0xd8, 0x1c, 0xa4, 0x4d, 0x28, 0xa1, 0x60, 0xc8, 0x98, 0x3c,
0xc2, 0x22, 0x71, 0x9c, 0x0b, 0xdc, 0xd2, 0x0e, 0xaa, 0x28, 0x8c, 0x8b, 0xee, 0x05, 0x31, 0xd7,
0x17, 0xca, 0x11, 0xed, 0xec, 0xda, 0x76, 0x59, 0x0c, 0x32, 0xe6, 0x1d, 0x89, 0x7a, 0xa0, 0x05,
0xa2, 0x6e, 0x60, 0x2f, 0x57, 0x4a, 0xb1, 0x20, 0x76, 0x8d, 0x5b, 0xab, 0xdf, 0xad, 0xc3, 0x0e,
0xd0, 0xf4, 0x32, 0x0e, 0x9f, 0xb5, 0x96, 0xc4, 0x56, 0x3c, 0x50, 0x13, 0x3b, 0xde, 0xb6, 0x2c,
0xae, 0xcb, 0x41, 0x55, 0xd6, 0x7a, 0xc0, 0x03, 0x65, 0x89, 0xba, 0xe6, 0x89, 0x9e, 0xce, 0x43,
0x21, 0xc9, 0xaa, 0x8a, 0xdf, 0xcb, 0xe7, 0x27, 0xd4, 0xac, 0x6a, 0x62, 0x09, 0xa7, 0xca, 0xb2,
0x2d, 0x5c, 0xf7, 0x40, 0x4d, 0x6c, 0x6f, 0x0b, 0x2d, 0xac, 0xc9, 0x41, 0x35, 0x56, 0x6a, 0xc8,
0x03, 0x2d, 0x12, 0x75, 0x00, 0x2b, 0xed, 0xdb, 0x36, 0x9f, 0xa0, 0x8d, 0xad, 0xe6, 0x46, 0xa9,
0x53, 0x60, 0x93, 0xbe, 0xe3, 0x02, 0xef, 0x2b, 0x01, 0xac, 0x8e, 0xb0, 0x40, 0x3e, 0xf0, 0xf0,
0xb1, 0xc0, 0x21, 0x88, 0x0b, 0xdc, 0x46, 0x1b, 0x85, 0x32, 0x4b, 0x59, 0x56, 0xc3, 0x19, 0x76,
0xc6, 0x64, 0x62, 0x62, 0x81, 0x43, 0xd5, 0x65, 0x27, 0xed, 0xb2, 0x61, 0xa1, 0x54, 0x5c, 0x6e,
0x8f, 0xf8, 0x42, 0x3d, 0xe3, 0x14, 0x4d, 0xbf, 0xe9, 0x4b, 0x39, 0x4c, 0x17, 0x30, 0xa9, 0x2d,
0x3f, 0x28, 0xd7, 0x9f, 0xb2, 0x38, 0xfd, 0x2a, 0x56, 0x15, 0xe2, 0xe4, 0xfc, 0x20, 0x0b, 0x29,
0x0c, 0xae, 0xd9, 0x82, 0x90, 0xf9, 0x44, 0x65, 0x71, 0xcf, 0xac, 0x03, 0x14, 0x41, 0x2a, 0xc9,
0x33, 0x25, 0x89, 0x15, 0x57, 0x19, 0x7f, 0xdd, 0xbf, 0xb3, 0x0e, 0xd0, 0x54, 0x1f, 0x96, 0xd5,
0xcc, 0xa3, 0x16, 0xc3, 0x32, 0xac, 0x37, 0x3d, 0x50, 0x13, 0x3b, 0x88, 0xe7, 0x2c, 0xce, 0xd4,
0xc4, 0xaa, 0xaa, 0x67, 0xd9, 0x49, 0xf8, 0x41, 0x61, 0xa4, 0x34, 0x7a, 0x18, 0x92, 0x6c, 0xe1,
0x43, 0x86, 0xa9, 0xd3, 0xf3, 0xbd, 0x03, 0x1a, 0xe9, 0x4d, 0x52, 0x2d, 0x75, 0xa7, 0x79, 0xae,
0x6a, 0x5a, 0x8e, 0x5b, 0x37, 0x55, 0x60, 0x79, 0xdf, 0x55, 0x0c, 0x6c, 0x03, 0x61, 0xa1, 0x94,
0x1a, 0x9d, 0x0a, 0x82, 0x0c, 0x72, 0x2b, 0x88, 0x1d, 0x7d, 0x01, 0xbf, 0xeb, 0x9b, 0xb8, 0x05,
0x3e, 0x9f, 0x36, 0x00, 0x00, 0x00, 0x00, 0x49, 0x45, 0x4e, 0x44, 0xae, 0x42, 0x60, 0x82,
0xce, 0x00, 0x00, 0x01, 0xdf, 0x49, 0x44, 0x41, 0x54, 0x48, 0xc7, 0xd5, 0x96, 0xcf, 0x4b, 0x42,
0x41, 0x10, 0xc7, 0xe7, 0xf9, 0x03, 0xd4, 0xa3, 0x27, 0x41, 0x0f, 0x5e, 0xf2, 0x20, 0x5e, 0x3c,
0x28, 0x88, 0xfd, 0x01, 0x0a, 0x56, 0x42, 0x1a, 0x24, 0xe4, 0xa5, 0x4e, 0x85, 0xa6, 0xd4, 0x45,
0x09, 0xd2, 0xcc, 0x8b, 0x50, 0x22, 0x84, 0x41, 0x04, 0x81, 0x87, 0xfc, 0x1b, 0xed, 0xb2, 0xcd,
0xac, 0x2b, 0xf8, 0x9e, 0x3b, 0xcf, 0x57, 0x9a, 0x10, 0x8f, 0x2f, 0x8f, 0xdd, 0x9d, 0x99, 0x0f,
0x3b, 0x3b, 0xfb, 0x03, 0xf2, 0xd3, 0xbc, 0xd8, 0x85, 0xe0, 0x5f, 0x82, 0xa2, 0xa3, 0xa8, 0x80,
0x0e, 0xe8, 0xb5, 0x2d, 0x48, 0xec, 0x25, 0xc6, 0x43, 0xb6, 0x05, 0x4a, 0xbc, 0x26, 0xec, 0x21,
0xdb, 0x00, 0x25, 0xdf, 0x92, 0xc2, 0xe8, 0x18, 0x7f, 0x0b, 0x4a, 0xbd, 0xa7, 0x84, 0xab, 0xeb,
0x5a, 0x0f, 0xd9, 0x04, 0x94, 0xf9, 0xc8, 0x08, 0xf7, 0x83, 0x5b, 0x1f, 0xb4, 0x86, 0x3a, 0xb4,
0xc8, 0x2e, 0x58, 0x6e, 0x9a, 0x93, 0xa9, 0x89, 0x0c, 0x23, 0x22, 0x38, 0x08, 0x0a, 0x7f, 0xdf,
0x2f, 0x67, 0xe0, 0x7b, 0xf4, 0x09, 0xa3, 0xcb, 0xa4, 0xab, 0x89, 0x3a, 0x72, 0x08, 0x22, 0x40,
0x7c, 0x1c, 0x17, 0x81, 0x7e, 0xc0, 0x59, 0x5a, 0x16, 0xba, 0x45, 0x15, 0x35, 0x10, 0x1d, 0x28,
0xf7, 0x99, 0x13, 0xa1, 0xa7, 0xd0, 0xcf, 0x00, 0x96, 0xd9, 0x78, 0x8e, 0x3d, 0x22, 0x3b, 0xce,
0xf2, 0x1b, 0x76, 0x23, 0x88, 0x92, 0xd1, 0x34, 0x44, 0x7a, 0x94, 0xb6, 0x3f, 0x19, 0x68, 0x3d,
0x56, 0x9c, 0xef, 0x51, 0x75, 0xd4, 0x19, 0xaa, 0xac, 0x52, 0x53, 0x56, 0xed, 0xba, 0x1a, 0xb7,
0xf8, 0x50, 0x1c, 0x5b, 0x50, 0x78, 0x18, 0x36, 0x3b, 0xb5, 0x50, 0x25, 0x26, 0xe7, 0x0b, 0x95,
0x94, 0xdd, 0x92, 0x1f, 0xc5, 0x61, 0x41, 0x54, 0x00, 0xde, 0x9e, 0xd7, 0x0c, 0xaa, 0xac, 0x81,
0x2c, 0x54, 0x31, 0x83, 0x28, 0x0e, 0xc5, 0x63, 0x41, 0x70, 0x07, 0x3a, 0xd0, 0x0c, 0x17, 0x78,
0x02, 0x07, 0x50, 0xc0, 0x6f, 0x0f, 0xd3, 0xe6, 0x97, 0x7f, 0x6a, 0x53, 0x3f, 0x8d, 0x5b, 0x40,
0x14, 0x87, 0x05, 0xc9, 0x46, 0x0d, 0xac, 0xa9, 0xfb, 0x82, 0x4b, 0xd8, 0x17, 0x42, 0x00, 0x27,
0x1a, 0x97, 0x76, 0x96, 0x0d, 0xcb, 0xa7, 0x0e, 0x2b, 0x0e, 0xaa, 0xda, 0x4a, 0x9a, 0xa1, 0x26,
0xa8, 0x02, 0xf4, 0x70, 0x26, 0xcf, 0x38, 0x23, 0xfa, 0x53, 0x7b, 0xde, 0x3f, 0x5b, 0xf1, 0xc1,
0x38, 0x14, 0x8f, 0x05, 0x79, 0x4f, 0x70, 0x8d, 0x1a, 0xb0, 0x51, 0x79, 0x93, 0x3f, 0xc5, 0x61,
0x41, 0xb2, 0xea, 0xae, 0xc3, 0xf3, 0xe3, 0xa3, 0xf1, 0x7b, 0x08, 0xf9, 0x53, 0x1c, 0xfb, 0x7d,
0x34, 0x48, 0xce, 0xab, 0x88, 0x60, 0xe7, 0xab, 0x65, 0xcb, 0xaa, 0xa5, 0xec, 0xd5, 0x19, 0x47,
0x71, 0x6c, 0x41, 0xf2, 0x64, 0xb8, 0x0a, 0x99, 0x4b, 0xb7, 0xaa, 0x4e, 0xe3, 0x1b, 0x54, 0x5b,
0x6d, 0xd0, 0xb6, 0x6a, 0xd7, 0xd4, 0xf8, 0x92, 0x3d, 0xf9, 0x5b, 0xd3, 0xa6, 0x7d, 0x33, 0x68,
0x61, 0x0e, 0xc5, 0x41, 0xd8, 0xc7, 0x09, 0x19, 0xc7, 0xbb, 0x78, 0x7a, 0x57, 0x02, 0x8e, 0x00,
0x64, 0x47, 0xf6, 0x1c, 0x64, 0xed, 0x2b, 0x88, 0x1c, 0x29, 0xdf, 0x91, 0x06, 0xde, 0x47, 0x17,
0x78, 0x1f, 0x9d, 0xe2, 0x7d, 0x54, 0x74, 0xc9, 0x3f, 0xb5, 0xa9, 0x9f, 0xc6, 0xed, 0x00, 0x3b,
0x7f, 0xd7, 0x7d, 0x03, 0x27, 0x0b, 0xd1, 0x6c, 0x6a, 0xc8, 0x74, 0xef, 0x00, 0x00, 0x00, 0x00,
0x49, 0x45, 0x4e, 0x44, 0xae, 0x42, 0x60, 0x82,
};
const BITMAP_OPAQUE use_3D_copper_thickness_xpm[1] = {{ png, sizeof( png ), "use_3D_copper_thickness_xpm" }};

View File

@ -8,100 +8,60 @@
static const unsigned char png[] = {
0x89, 0x50, 0x4e, 0x47, 0x0d, 0x0a, 0x1a, 0x0a, 0x00, 0x00, 0x00, 0x0d, 0x49, 0x48, 0x44, 0x52,
0x00, 0x00, 0x00, 0x1a, 0x00, 0x00, 0x00, 0x1a, 0x08, 0x06, 0x00, 0x00, 0x00, 0xa9, 0x4a, 0x4c,
0xce, 0x00, 0x00, 0x05, 0xc1, 0x49, 0x44, 0x41, 0x54, 0x48, 0xc7, 0xe5, 0x56, 0x7d, 0x34, 0x94,
0x59, 0x18, 0xbf, 0x49, 0x28, 0x1f, 0x51, 0xf2, 0x11, 0xa2, 0x95, 0x28, 0x99, 0xa4, 0x4f, 0x59,
0xa2, 0x28, 0xa7, 0x56, 0x6d, 0x5a, 0xac, 0xe4, 0x23, 0xec, 0x66, 0x4b, 0x6d, 0x8e, 0xce, 0x96,
0xd0, 0xce, 0xda, 0xea, 0xd8, 0x33, 0xd5, 0x98, 0x36, 0xd4, 0xe2, 0x11, 0x19, 0xb1, 0xf6, 0x58,
0x73, 0xb6, 0x91, 0x88, 0x5a, 0xad, 0x65, 0x7d, 0x34, 0x31, 0x31, 0x32, 0xc3, 0x8c, 0x6f, 0x4d,
0x44, 0xa2, 0x39, 0x76, 0x47, 0x77, 0xef, 0x3b, 0x67, 0x6b, 0xb5, 0x2b, 0xf5, 0xc7, 0x9e, 0xdd,
0x3f, 0xf6, 0x9e, 0xf3, 0x3b, 0xf7, 0xbd, 0xef, 0x79, 0xef, 0xf3, 0xfb, 0x3d, 0x1f, 0xf7, 0xb9,
0x2f, 0xc2, 0x18, 0xa3, 0x7f, 0x03, 0xe8, 0xff, 0x4d, 0xd4, 0xc6, 0xe1, 0xe8, 0xdf, 0xca, 0x4c,
0xdf, 0x9e, 0x92, 0x92, 0xb2, 0x84, 0xac, 0x95, 0xff, 0x51, 0x22, 0xa9, 0x54, 0xaa, 0x51, 0x57,
0x57, 0xb7, 0xa7, 0xb6, 0xb6, 0xf6, 0x74, 0x57, 0x22, 0xa3, 0x7e, 0x24, 0xee, 0x88, 0xfc, 0xc1,
0xe9, 0x18, 0x01, 0xe7, 0xeb, 0x84, 0x94, 0xd4, 0xd4, 0xd4, 0x45, 0xaf, 0xdb, 0xd7, 0x1f, 0x1e,
0x38, 0x4d, 0xfa, 0xc9, 0x1e, 0x8f, 0x87, 0x1f, 0xf9, 0xa6, 0xf4, 0x06, 0x7b, 0x7b, 0x4e, 0x45,
0x32, 0xad, 0xad, 0xad, 0xcd, 0xab, 0xbd, 0xbd, 0x3d, 0x41, 0x2a, 0xed, 0x83, 0xde, 0x1f, 0x4b,
0xb8, 0xcf, 0xe2, 0x22, 0x9f, 0x13, 0xe0, 0xd1, 0xcf, 0x0f, 0xe3, 0xa7, 0x31, 0x07, 0x71, 0xe7,
0xc9, 0xe3, 0x75, 0x7d, 0x47, 0xfc, 0xd5, 0x5f, 0x11, 0xb6, 0xcf, 0x6f, 0x7a, 0x5f, 0xe8, 0x87,
0x7e, 0x3d, 0x41, 0x5e, 0x8d, 0xdd, 0xfe, 0x3b, 0x71, 0xa7, 0xef, 0xf6, 0x9e, 0x0e, 0xef, 0x6d,
0xfb, 0x27, 0x25, 0xa9, 0xaa, 0xaa, 0xd2, 0xea, 0xe9, 0xe9, 0x39, 0x36, 0x3c, 0x32, 0x9c, 0x36,
0x3e, 0x3e, 0x0e, 0x43, 0x43, 0x43, 0x20, 0xe6, 0xd7, 0x67, 0x89, 0x2f, 0x25, 0xd4, 0x0c, 0x44,
0x1f, 0x1a, 0x19, 0x8c, 0xfc, 0x18, 0x3f, 0x3e, 0x1c, 0x82, 0x89, 0x6a, 0xfc, 0x70, 0xbf, 0xbf,
0xe8, 0x61, 0xa8, 0x2f, 0x8d, 0xda, 0xd7, 0x13, 0xb0, 0x6b, 0x55, 0x97, 0xdf, 0xfb, 0x2d, 0x1d,
0x3e, 0x1e, 0xb8, 0xfd, 0x83, 0xad, 0x58, 0xbc, 0x73, 0x4b, 0x66, 0x9b, 0xc7, 0x26, 0x9d, 0x49,
0x43, 0x27, 0x14, 0x0a, 0x55, 0xbb, 0xbb, 0xbb, 0xe9, 0xfd, 0xfd, 0xfd, 0x20, 0x93, 0xc9, 0x60,
0x78, 0x78, 0x18, 0x7a, 0x7b, 0x7b, 0x41, 0x20, 0x10, 0x40, 0x79, 0x79, 0x39, 0xe4, 0xe5, 0x64,
0x5f, 0x2e, 0x39, 0x71, 0xec, 0x76, 0x67, 0x98, 0xff, 0x28, 0x51, 0x8d, 0xbb, 0xfd, 0x3d, 0x29,
0xd5, 0x32, 0xa2, 0xfa, 0x94, 0xc4, 0xd3, 0xfd, 0x59, 0xdb, 0x0e, 0x37, 0xdc, 0xba, 0x6d, 0x63,
0xbf, 0xd0, 0x7d, 0x83, 0xc7, 0x94, 0x39, 0xe2, 0xf3, 0xf9, 0x91, 0xd5, 0xd5, 0xd5, 0x20, 0x6e,
0x6d, 0x05, 0x61, 0x4d, 0x0d, 0x88, 0x9b, 0x9b, 0xa1, 0xa5, 0xa5, 0x05, 0x6a, 0xc8, 0x73, 0x49,
0x49, 0x09, 0xb0, 0xd9, 0x6c, 0xc8, 0xcd, 0xcd, 0x05, 0xd1, 0xdd, 0xda, 0xac, 0xce, 0xe8, 0x48,
0x11, 0x51, 0x8d, 0xdb, 0x3c, 0x5c, 0xb1, 0x68, 0xab, 0x33, 0x16, 0x6e, 0x76, 0xc4, 0x0f, 0x36,
0xad, 0x7f, 0x22, 0xd8, 0xb0, 0xd6, 0x6e, 0xca, 0x62, 0x48, 0x4f, 0x4f, 0x37, 0xe3, 0xfa, 0x78,
0xa5, 0xb2, 0xb5, 0xb5, 0x21, 0x49, 0x49, 0x09, 0xe2, 0x11, 0x82, 0x68, 0x32, 0x47, 0xcd, 0x9d,
0x0b, 0x31, 0x4b, 0x97, 0xc2, 0x17, 0x2e, 0x2e, 0x90, 0xcb, 0x62, 0x41, 0x47, 0x47, 0x07, 0x50,
0x1e, 0x3f, 0x6a, 0x97, 0x64, 0xb6, 0xfa, 0xba, 0xf5, 0x37, 0xbb, 0xd8, 0xe3, 0x26, 0xa7, 0x35,
0xb8, 0x71, 0xbd, 0xdd, 0xf3, 0xfb, 0xeb, 0x96, 0xef, 0x7c, 0x63, 0xd5, 0x9d, 0xd9, 0xb7, 0xcf,
0xb3, 0x90, 0x18, 0xff, 0x81, 0x80, 0x4d, 0x90, 0x44, 0xa0, 0x20, 0x23, 0x88, 0x98, 0x35, 0x0b,
0x2e, 0x05, 0x06, 0xc2, 0xd0, 0xe0, 0x20, 0x8c, 0x8c, 0x8c, 0x28, 0xe6, 0xd6, 0x10, 0xef, 0xf6,
0xfb, 0xf6, 0x2b, 0x30, 0x7f, 0x35, 0x0d, 0xd7, 0xdb, 0x59, 0x63, 0x1e, 0xcd, 0x0a, 0xdf, 0xb5,
0x5e, 0x74, 0xef, 0x27, 0x4b, 0x4b, 0xcd, 0x29, 0x89, 0x82, 0x82, 0x82, 0x0c, 0xd8, 0xc4, 0xe0,
0x4b, 0x32, 0x4d, 0x4d, 0xc8, 0x70, 0x75, 0x85, 0x42, 0x06, 0x03, 0x24, 0x62, 0x31, 0x8c, 0x8d,
0x8d, 0x01, 0xf9, 0x0e, 0xe4, 0x72, 0x39, 0x88, 0xa3, 0x0f, 0xde, 0xbd, 0x67, 0xbb, 0x04, 0xf3,
0x6c, 0x16, 0xe3, 0xba, 0x25, 0xe6, 0xb8, 0x7e, 0x97, 0x7d, 0x7d, 0xd5, 0x62, 0xb3, 0xe7, 0x15,
0x8b, 0x4c, 0xf1, 0x1d, 0xf3, 0x05, 0x45, 0xb7, 0x9c, 0x91, 0xf2, 0x94, 0x39, 0xfa, 0xce, 0xc9,
0x89, 0x95, 0x63, 0x64, 0x04, 0x85, 0x74, 0x3a, 0xb4, 0x90, 0xfc, 0x0c, 0x12, 0xe5, 0x14, 0x01,
0x55, 0x7d, 0x14, 0x09, 0x26, 0xb3, 0x88, 0x75, 0xa0, 0xb8, 0xd6, 0xea, 0x1d, 0xfc, 0x8b, 0xe5,
0x42, 0x5c, 0x69, 0x61, 0x86, 0x1b, 0x83, 0xb6, 0x0b, 0x86, 0xaa, 0x3d, 0xe1, 0x96, 0x87, 0xeb,
0x85, 0x52, 0xd3, 0xf9, 0xb8, 0xd8, 0xc4, 0x10, 0x5f, 0x37, 0xd6, 0x3f, 0x34, 0x25, 0x51, 0x96,
0xad, 0xed, 0x81, 0xfc, 0x88, 0x08, 0x16, 0x15, 0x1e, 0x85, 0xe1, 0x09, 0x18, 0x1f, 0xe1, 0xc3,
0xe3, 0xb2, 0x0d, 0x19, 0x55, 0xcb, 0x4d, 0x9e, 0x12, 0xd5, 0xf8, 0xf6, 0x42, 0x63, 0x5c, 0x4e,
0x5b, 0x3c, 0x2a, 0x93, 0xdc, 0xbc, 0x32, 0xd6, 0x7a, 0x12, 0xda, 0xcb, 0x83, 0x93, 0x39, 0x26,
0x86, 0x31, 0x1c, 0x7d, 0x5d, 0xfc, 0xbd, 0xde, 0xdc, 0x81, 0x6f, 0xb5, 0xb4, 0xe6, 0xbc, 0x96,
0x88, 0x4d, 0xa3, 0x85, 0x9c, 0x73, 0x77, 0x0f, 0x14, 0x93, 0x50, 0xbd, 0xf4, 0x82, 0x22, 0x91,
0x49, 0x60, 0xbc, 0xc6, 0x06, 0xf8, 0x7e, 0x46, 0xbc, 0x17, 0xaa, 0x8b, 0x8c, 0x0d, 0xb0, 0x88,
0x19, 0x7a, 0x73, 0x7c, 0xa0, 0x04, 0xc6, 0xba, 0xae, 0xc0, 0x40, 0xe5, 0x7b, 0x50, 0xce, 0xbd,
0x10, 0x74, 0x75, 0xce, 0xec, 0x9f, 0xb3, 0xb5, 0xb5, 0x70, 0x96, 0xb6, 0x06, 0xeb, 0xb5, 0x44,
0xd9, 0xeb, 0xd6, 0x85, 0x46, 0x21, 0x64, 0x4f, 0x0e, 0x6d, 0x2c, 0x55, 0x59, 0x13, 0x3d, 0x1a,
0xbc, 0xe6, 0x97, 0x77, 0x7d, 0x81, 0xbe, 0xfc, 0x9a, 0xe1, 0x3c, 0xcc, 0x31, 0xd0, 0xc5, 0x85,
0x36, 0x86, 0x8f, 0x46, 0x1a, 0x8f, 0x82, 0xac, 0xe3, 0x32, 0xc8, 0xba, 0xd8, 0x30, 0xc0, 0x3b,
0x04, 0x4d, 0xdc, 0xad, 0xa9, 0xc9, 0xcb, 0x96, 0xbd, 0x9b, 0xa6, 0x3e, 0xf3, 0xd7, 0x94, 0x99,
0x6a, 0xbf, 0x25, 0xa9, 0xaa, 0x5a, 0x4e, 0x4a, 0x74, 0xd5, 0xc1, 0x21, 0x84, 0x54, 0xd9, 0xfa,
0x8c, 0x8c, 0x0c, 0x5a, 0x53, 0x53, 0x53, 0xda, 0xc4, 0x10, 0x3e, 0xe1, 0xdf, 0xc9, 0x29, 0x5a,
0xa6, 0x37, 0x90, 0xa7, 0xab, 0x83, 0x73, 0xe7, 0xcc, 0xc6, 0x25, 0xc1, 0xba, 0xa5, 0xd2, 0x8a,
0x1d, 0x30, 0xd4, 0x78, 0x02, 0x86, 0x85, 0x17, 0x60, 0x80, 0x4f, 0x07, 0x41, 0xf1, 0x5e, 0x48,
0x4e, 0x4e, 0xde, 0x92, 0xa8, 0xa2, 0x7c, 0xf2, 0xbc, 0xf2, 0x74, 0xcc, 0x54, 0x52, 0xca, 0x9c,
0xdc, 0xa3, 0xd5, 0xab, 0xf7, 0xc6, 0x22, 0xe4, 0x80, 0x10, 0x9a, 0x56, 0x56, 0x56, 0x16, 0x21,
0x91, 0x48, 0x5e, 0x09, 0xe1, 0xb3, 0x86, 0x2f, 0x33, 0xb9, 0x6b, 0x74, 0xda, 0x73, 0x16, 0x68,
0x3c, 0x11, 0xe7, 0x4d, 0x4f, 0xe7, 0xe5, 0x58, 0x41, 0x5f, 0xe5, 0x6e, 0xe8, 0xbf, 0x17, 0x03,
0x7d, 0x3c, 0x3a, 0xdc, 0x2e, 0xce, 0x01, 0x16, 0x8b, 0xe5, 0x42, 0x47, 0x48, 0xed, 0x0c, 0x42,
0xdd, 0x04, 0xb2, 0xaf, 0x10, 0xd2, 0xfc, 0x1b, 0xd1, 0x65, 0x6b, 0xeb, 0x00, 0x42, 0xe4, 0x48,
0x3d, 0x33, 0x99, 0x4c, 0x33, 0x12, 0xc2, 0x6f, 0x48, 0x07, 0xff, 0x33, 0x57, 0xf2, 0x51, 0x90,
0xd7, 0x39, 0xa7, 0x8b, 0x58, 0xfa, 0xf9, 0x5d, 0x05, 0xea, 0x50, 0x75, 0x49, 0x0d, 0x5a, 0xb9,
0xab, 0x40, 0x52, 0x1e, 0x00, 0x0d, 0x95, 0x8a, 0xae, 0xc1, 0xb0, 0xb6, 0xb6, 0x56, 0x51, 0x9c,
0x4b, 0x84, 0xfc, 0x18, 0x08, 0x6d, 0x9c, 0xd4, 0xa3, 0x33, 0xc6, 0xc6, 0x9e, 0x47, 0x10, 0x5a,
0xfb, 0x62, 0x9d, 0x9f, 0x9f, 0x1f, 0xc6, 0xe3, 0xf1, 0x14, 0x8d, 0xf5, 0x85, 0x67, 0x72, 0x69,
0x3e, 0x8c, 0xde, 0xb1, 0x80, 0x5e, 0xee, 0x3c, 0x68, 0xce, 0x9e, 0x01, 0x65, 0x69, 0xcb, 0x41,
0x50, 0x93, 0x07, 0x37, 0x6e, 0xdc, 0x48, 0x8c, 0x8d, 0x8d, 0xb5, 0x79, 0xab, 0xfb, 0x88, 0x0c,
0xa5, 0x89, 0x6b, 0x3a, 0x9d, 0xae, 0x5b, 0x50, 0x50, 0x90, 0x4c, 0x91, 0x0d, 0xfe, 0xd1, 0x15,
0x28, 0x8c, 0xf2, 0x3c, 0xa1, 0xaf, 0xc8, 0x04, 0x84, 0x65, 0xc1, 0xc0, 0x6f, 0xa8, 0x01, 0x12,
0xe6, 0xf3, 0x0c, 0x06, 0x63, 0xed, 0x5b, 0x5d, 0x7c, 0x64, 0xa8, 0xaa, 0x23, 0x64, 0xb0, 0x6b,
0xfe, 0xfc, 0x15, 0x9b, 0x4d, 0x4d, 0x17, 0x92, 0xb5, 0xe2, 0x74, 0x27, 0x25, 0x25, 0x05, 0x12,
0xcf, 0x14, 0x8d, 0x95, 0x2a, 0x7b, 0x0a, 0x12, 0x41, 0x21, 0x08, 0x79, 0x19, 0x8a, 0x77, 0x1c,
0x0e, 0x27, 0x2a, 0x2c, 0x2c, 0xcc, 0x68, 0xca, 0x1b, 0x96, 0x4a, 0xfa, 0x51, 0x84, 0x76, 0x70,
0xfd, 0xfc, 0x8e, 0x35, 0x30, 0x18, 0x67, 0x45, 0x4c, 0xe6, 0x45, 0x71, 0x42, 0x02, 0x08, 0xcf,
0x9e, 0x4d, 0xad, 0x3d, 0x7e, 0x3c, 0x29, 0xc5, 0xc8, 0x28, 0xf2, 0x53, 0x35, 0x35, 0xa7, 0xf8,
0xf8, 0xf8, 0x53, 0x54, 0xe7, 0x2e, 0x2d, 0x2d, 0x85, 0x8a, 0x8a, 0x0a, 0xca, 0x83, 0xd4, 0xbc,
0xbc, 0xbc, 0xa8, 0xb8, 0xb8, 0x38, 0x87, 0x95, 0x2b, 0x57, 0xce, 0x78, 0xe3, 0x55, 0x4e, 0xe5,
0xe3, 0x1a, 0x42, 0x69, 0xc5, 0xa4, 0xb7, 0x95, 0x90, 0x3e, 0x57, 0x69, 0x67, 0x07, 0x35, 0x6e,
0x6e, 0x50, 0xed, 0xe8, 0x08, 0x65, 0x26, 0x26, 0x69, 0x80, 0x50, 0xc2, 0x41, 0x84, 0x02, 0x54,
0x54, 0x54, 0xac, 0xbc, 0xc9, 0x08, 0x0f, 0x0f, 0x0f, 0xf1, 0xd9, 0xed, 0xe3, 0x65, 0x6c, 0x6c,
0xec, 0x4c, 0x44, 0xda, 0x12, 0xd0, 0x08, 0x96, 0x12, 0x98, 0x13, 0x18, 0x12, 0x68, 0xfc, 0x35,
0xfc, 0x2f, 0x43, 0x17, 0x43, 0x3e, 0x3a, 0x87, 0x90, 0xfb, 0x45, 0x1d, 0x9d, 0x3d, 0x89, 0xe6,
0xe6, 0x01, 0x4c, 0x0b, 0x0b, 0xdf, 0xcf, 0xf4, 0xf4, 0xdc, 0x3c, 0x88, 0xf1, 0x3f, 0x36, 0x92,
0x88, 0x92, 0x12, 0x45, 0x48, 0x6b, 0x02, 0xa8, 0xf7, 0xb3, 0x08, 0xd4, 0x08, 0x54, 0x26, 0x33,
0xfe, 0x9f, 0xfc, 0x6e, 0xfd, 0x0e, 0xb8, 0x1e, 0xa6, 0xd9, 0xe8, 0x0c, 0xc7, 0x31, 0x00, 0x00,
0x00, 0x00, 0x49, 0x45, 0x4e, 0x44, 0xae, 0x42, 0x60, 0x82,
0xce, 0x00, 0x00, 0x03, 0x45, 0x49, 0x44, 0x41, 0x54, 0x48, 0xc7, 0xb5, 0x96, 0x5d, 0x48, 0xd3,
0x51, 0x18, 0xc6, 0xa7, 0x2e, 0xc2, 0x0b, 0xa1, 0x84, 0x28, 0x90, 0xae, 0xc2, 0xab, 0xec, 0xba,
0xb0, 0xb0, 0x12, 0x94, 0x88, 0xd2, 0x4d, 0x47, 0x5a, 0xae, 0x0f, 0xba, 0xb0, 0x82, 0x72, 0x44,
0x86, 0x19, 0x89, 0xdb, 0x9c, 0x8b, 0x69, 0x89, 0x37, 0x25, 0x09, 0x7e, 0xb0, 0x44, 0x2d, 0xa2,
0xa0, 0x20, 0x56, 0x92, 0x65, 0xe5, 0xb4, 0x6d, 0x26, 0xf8, 0xd1, 0x34, 0x03, 0x4d, 0xcb, 0x95,
0x96, 0x52, 0xd6, 0x26, 0xdb, 0xdc, 0xdb, 0xf3, 0x8e, 0xfd, 0xe1, 0xaf, 0xad, 0x8f, 0x6d, 0x7a,
0xf1, 0xb0, 0xe3, 0x7b, 0xce, 0x79, 0x7e, 0x3b, 0xef, 0x7b, 0xce, 0x3b, 0x25, 0x1b, 0x0c, 0x1b,
0x28, 0xbd, 0x36, 0x7d, 0x45, 0xc5, 0x0c, 0x09, 0x0f, 0x6c, 0x36, 0xdb, 0x8a, 0x8a, 0x19, 0xff,
0x04, 0x75, 0x74, 0x77, 0x90, 0xa9, 0xd3, 0x44, 0x56, 0x9b, 0x75, 0xf9, 0x41, 0x75, 0x8f, 0xeb,
0x28, 0xad, 0x36, 0xcd, 0x87, 0x23, 0xcf, 0x4b, 0xd4, 0x12, 0x62, 0xad, 0xd2, 0xae, 0xf2, 0xa6,
0xd4, 0xa4, 0x78, 0x6f, 0x3c, 0xba, 0x11, 0x39, 0xc8, 0x6c, 0x31, 0x93, 0xd2, 0xa8, 0xa4, 0x28,
0x75, 0x94, 0x4f, 0xaa, 0x91, 0xb6, 0x03, 0x70, 0x0e, 0x4a, 0x81, 0xb6, 0x43, 0xc7, 0x00, 0x6b,
0xc3, 0xa7, 0x2f, 0xbf, 0x39, 0x3f, 0x32, 0x50, 0xf2, 0xf5, 0x64, 0x6f, 0x8c, 0x26, 0xe6, 0x07,
0xcc, 0x0e, 0x13, 0x51, 0x94, 0x56, 0xab, 0xdd, 0xaa, 0x56, 0xab, 0x4f, 0xb3, 0x78, 0xcc, 0x31,
0xcc, 0x29, 0xf9, 0x8b, 0x84, 0x02, 0x5b, 0x04, 0x2a, 0xb9, 0x5b, 0xc2, 0x27, 0x59, 0x80, 0xd1,
0xb6, 0xb2, 0xb2, 0xb2, 0x4d, 0x30, 0x7f, 0x06, 0xd1, 0x12, 0x3d, 0xe3, 0x39, 0xac, 0x39, 0xca,
0xb0, 0xe4, 0x6b, 0xc9, 0xbf, 0xdd, 0xb0, 0xea, 0x87, 0xd5, 0x7f, 0x06, 0x71, 0xc1, 0x63, 0xcb,
0x62, 0xbd, 0xd8, 0x5c, 0x6e, 0x30, 0x18, 0xe2, 0x60, 0x38, 0x16, 0x04, 0x22, 0x68, 0x8c, 0xd7,
0x00, 0xa6, 0x80, 0x5a, 0xa0, 0x56, 0x91, 0x5e, 0xc6, 0x95, 0xc7, 0xb9, 0x3b, 0x5f, 0x75, 0x06,
0x07, 0xd5, 0x98, 0x6a, 0xb8, 0xe0, 0x3e, 0x68, 0x0d, 0x8c, 0x2a, 0x45, 0xa6, 0x5e, 0xa8, 0x39,
0x20, 0xaf, 0x28, 0x5e, 0x89, 0x34, 0x4a, 0x96, 0x0a, 0xfb, 0xd7, 0x22, 0xf5, 0xae, 0xa2, 0x3b,
0x45, 0xc1, 0x41, 0xaa, 0x5b, 0x2a, 0x5a, 0xad, 0x5d, 0x3d, 0xce, 0x8b, 0x61, 0xd2, 0x27, 0x32,
0x3c, 0x2e, 0x98, 0xf0, 0xf8, 0x2f, 0xa7, 0x64, 0x3d, 0xe0, 0x75, 0xc8, 0x4a, 0xd5, 0x7a, 0xc3,
0x7a, 0xb7, 0xc5, 0x6a, 0xf9, 0x1d, 0x94, 0xd5, 0x90, 0x45, 0x52, 0xad, 0xd4, 0xc4, 0xc5, 0xc6,
0x86, 0x79, 0x61, 0xb3, 0x5e, 0xaf, 0x5f, 0x27, 0x80, 0x78, 0xfc, 0x0f, 0x90, 0x0f, 0x17, 0x66,
0x33, 0x4e, 0xb5, 0x91, 0x6b, 0xad, 0xbf, 0xaf, 0x5f, 0xb1, 0x13, 0xb1, 0x1a, 0x78, 0x2d, 0xd2,
0xd7, 0x94, 0x58, 0x95, 0xe8, 0x5e, 0xae, 0x1a, 0x1d, 0x21, 0x8f, 0x67, 0x17, 0xc6, 0x3b, 0x44,
0x71, 0xb7, 0x4e, 0xa7, 0x4b, 0x80, 0xcf, 0x96, 0x5d, 0xf5, 0x3b, 0xe9, 0x49, 0xdf, 0x93, 0xc8,
0x6e, 0x9d, 0xd3, 0xe9, 0x3c, 0xf9, 0xfd, 0xcc, 0xc9, 0x4f, 0xdf, 0xe5, 0xfb, 0x66, 0xc8, 0xe5,
0xda, 0x8d, 0x98, 0x59, 0x34, 0x7f, 0x85, 0x63, 0x9f, 0xb3, 0xf7, 0xce, 0x4f, 0x9c, 0xcd, 0xa7,
0xd1, 0xd1, 0xd1, 0xf0, 0xde, 0x91, 0xc3, 0xe1, 0x28, 0xfc, 0x52, 0x70, 0x62, 0xfa, 0x87, 0x44,
0x42, 0x2c, 0x67, 0x66, 0xe6, 0xe4, 0xf3, 0xf6, 0xf6, 0x4b, 0xc2, 0x1a, 0x63, 0x63, 0xe3, 0x4f,
0xa7, 0x4c, 0xe6, 0x10, 0xe6, 0x67, 0x8a, 0x0a, 0xa9, 0xe2, 0x69, 0x45, 0xe8, 0x9d, 0xe1, 0x62,
0xdb, 0x05, 0xdd, 0x88, 0x62, 0x0f, 0x7d, 0x85, 0x89, 0xa0, 0x39, 0xc0, 0x9a, 0x8c, 0xc6, 0xf1,
0xc6, 0xfa, 0x7a, 0x72, 0x28, 0x14, 0x8b, 0xe6, 0xc6, 0x73, 0x32, 0xe9, 0xfc, 0xfd, 0xc2, 0xf0,
0x7a, 0xdd, 0xd5, 0xb6, 0x4a, 0x9a, 0x56, 0x2a, 0xc9, 0x01, 0x23, 0x41, 0x53, 0x72, 0xf9, 0xec,
0x04, 0x20, 0xe2, 0xd8, 0xa4, 0x7c, 0xff, 0x4c, 0x6a, 0xc3, 0x4e, 0x5f, 0x52, 0x75, 0x52, 0xf8,
0xdd, 0x7b, 0xd8, 0x6e, 0xa7, 0x0f, 0x79, 0x07, 0xe9, 0x3d, 0x0c, 0x83, 0xe9, 0x23, 0xc0, 0xce,
0xb9, 0xd9, 0x54, 0xec, 0x1b, 0xf7, 0x7b, 0x44, 0xf2, 0x7b, 0xc4, 0xb0, 0xc1, 0x9c, 0x0c, 0x7a,
0x0b, 0x63, 0xb1, 0x46, 0x70, 0x32, 0x4e, 0x25, 0x52, 0x1e, 0x0d, 0xc8, 0xa9, 0xff, 0x02, 0xfd,
0x4d, 0x0c, 0x1a, 0x39, 0x94, 0x4b, 0x03, 0x30, 0x17, 0xcb, 0x0e, 0x10, 0xd7, 0x4b, 0xa3, 0xd1,
0xc8, 0x01, 0x89, 0x45, 0x33, 0x98, 0x0d, 0x1b, 0xe4, 0x87, 0xa0, 0x4e, 0x3d, 0x30, 0x0e, 0xa6,
0x7e, 0xc0, 0x5a, 0x9a, 0x9a, 0x06, 0x03, 0x3d, 0x30, 0x23, 0x2c, 0x10, 0x43, 0xec, 0x80, 0x74,
0xc1, 0x50, 0xd0, 0x0b, 0xdc, 0xc4, 0x01, 0x59, 0xc6, 0x94, 0x38, 0xd6, 0x0b, 0x98, 0xd5, 0x6c,
0x2e, 0xf0, 0xc3, 0x42, 0x05, 0x0d, 0x0f, 0x0d, 0xd1, 0x00, 0x20, 0x1d, 0x30, 0x12, 0xc4, 0x7f,
0xe7, 0xb6, 0x1e, 0xf0, 0xe4, 0xdd, 0xce, 0x35, 0x0d, 0xe2, 0xaa, 0x8b, 0xe7, 0x7a, 0xb3, 0xb3,
0x5d, 0xdc, 0x41, 0x42, 0x06, 0xf1, 0x4b, 0x7f, 0x53, 0x5c, 0x4c, 0x8f, 0x61, 0xc2, 0xea, 0x05,
0x64, 0x08, 0x27, 0x2c, 0xbd, 0x57, 0x4a, 0xd1, 0x9a, 0x68, 0x4f, 0xc7, 0xbb, 0x76, 0xc5, 0x6b,
0x99, 0x6c, 0x4a, 0x98, 0xef, 0x51, 0xa9, 0x16, 0xb8, 0x5d, 0x85, 0x95, 0x3a, 0x86, 0xf5, 0x03,
0x66, 0x0b, 0x40, 0x38, 0xd6, 0x65, 0xe9, 0xa2, 0xf8, 0xcb, 0xf1, 0x6e, 0xd4, 0xc3, 0xe0, 0x41,
0x0b, 0xea, 0xce, 0xca, 0xfa, 0x66, 0x51, 0xa9, 0x3c, 0x56, 0xab, 0xf5, 0xa6, 0x3f, 0x75, 0xe1,
0xfe, 0x03, 0xc9, 0x6d, 0x85, 0x5f, 0xbc, 0x38, 0x96, 0x50, 0x91, 0x40, 0x78, 0xe8, 0x73, 0x80,
0x49, 0x39, 0x5d, 0xfe, 0xc6, 0x1b, 0xe8, 0xfe, 0xbf, 0x00, 0x39, 0x54, 0xbd, 0x1d, 0xdf, 0x2e,
0xa4, 0x28, 0x00, 0x00, 0x00, 0x00, 0x49, 0x45, 0x4e, 0x44, 0xae, 0x42, 0x60, 0x82,
};
const BITMAP_OPAQUE zone_unfill_xpm[1] = {{ png, sizeof( png ), "zone_unfill_xpm" }};

View File

@ -0,0 +1,314 @@
/* Do not modify this file, it was automatically generated by the
* PNG2cpp CMake script, using a *.png file as input.
*/
#include <bitmaps.h>
static const unsigned char png[] = {
0x89, 0x50, 0x4e, 0x47, 0x0d, 0x0a, 0x1a, 0x0a, 0x00, 0x00, 0x00, 0x0d, 0x49, 0x48, 0x44, 0x52,
0x00, 0x00, 0x00, 0x30, 0x00, 0x00, 0x00, 0x30, 0x08, 0x06, 0x00, 0x00, 0x00, 0x57, 0x02, 0xf9,
0x87, 0x00, 0x00, 0x12, 0x8e, 0x49, 0x44, 0x41, 0x54, 0x68, 0xde, 0xc5, 0x5a, 0x07, 0x58, 0x54,
0xf7, 0xb2, 0x27, 0x5e, 0x2b, 0xd8, 0x22, 0x12, 0x63, 0x12, 0xbd, 0xa8, 0x58, 0x12, 0x8d, 0xfa,
0x24, 0x79, 0x1a, 0x35, 0x89, 0x46, 0x51, 0x31, 0xd8, 0xdb, 0xf5, 0x8a, 0x1d, 0xb1, 0xa2, 0x28,
0x46, 0x11, 0xa5, 0x08, 0x2a, 0x20, 0x2a, 0x08, 0x82, 0x48, 0x5f, 0x7a, 0x5f, 0x9a, 0x20, 0xa8,
0x14, 0x17, 0x64, 0xe9, 0x0a, 0x4a, 0x3d, 0x74, 0x64, 0x29, 0xa2, 0x22, 0x16, 0xc4, 0xdd, 0x9d,
0x3b, 0x73, 0xb2, 0x67, 0xb3, 0xa2, 0xe6, 0xdd, 0xdc, 0x98, 0x77, 0xf7, 0xfb, 0xe6, 0x3b, 0xb2,
0x7b, 0x76, 0xce, 0xfc, 0xa6, 0xfc, 0x66, 0xe6, 0xbf, 0x2a, 0x01, 0x80, 0x92, 0xa2, 0xe0, 0x6b,
0x40, 0x8f, 0x1e, 0x3d, 0xce, 0xe1, 0x75, 0x07, 0xca, 0xd0, 0xee, 0x9f, 0xff, 0xb7, 0x04, 0x5f,
0xe3, 0x51, 0x0e, 0xa2, 0x6d, 0x67, 0xf0, 0xda, 0x5b, 0xfe, 0xfe, 0x3b, 0x6e, 0xfc, 0x02, 0x85,
0x47, 0x82, 0x37, 0x7b, 0xe1, 0x75, 0x23, 0xca, 0xe0, 0xff, 0x92, 0xd1, 0x1f, 0xa1, 0x4c, 0x43,
0x31, 0xe5, 0x6c, 0x92, 0xc9, 0x30, 0x85, 0x7b, 0x94, 0x3e, 0x41, 0x19, 0x83, 0xf2, 0x37, 0xd9,
0x1b, 0xc3, 0xe9, 0xa6, 0x1d, 0x3b, 0x76, 0xf0, 0x56, 0xac, 0x58, 0xc1, 0x01, 0xf1, 0xc0, 0xeb,
0x5a, 0x14, 0x95, 0xff, 0x27, 0xc3, 0x7b, 0xa2, 0x7c, 0x8f, 0xcf, 0xb5, 0x91, 0x3d, 0xdf, 0x67,
0xfd, 0xfa, 0xf5, 0xbc, 0xc5, 0x8b, 0x17, 0x93, 0x3d, 0x01, 0x28, 0x5a, 0x28, 0x5b, 0x51, 0xe6,
0x29, 0xe1, 0x87, 0xce, 0xb2, 0x9b, 0xdc, 0xf1, 0xfa, 0x0b, 0x8a, 0x2e, 0x0a, 0xdf, 0xd6, 0xd6,
0xd6, 0x17, 0x95, 0xf1, 0x84, 0x42, 0x21, 0x6f, 0xce, 0x9c, 0x39, 0x3e, 0xb2, 0x7b, 0xae, 0xe0,
0x75, 0x19, 0x4a, 0xdf, 0xbf, 0xc8, 0xf0, 0xbe, 0x28, 0xda, 0xf8, 0x9c, 0x8b, 0xf4, 0x3c, 0x65,
0x65, 0x65, 0x1f, 0x03, 0x03, 0x03, 0xdf, 0x82, 0x82, 0x82, 0xc8, 0xd2, 0xd2, 0xd2, 0x64, 0x74,
0x68, 0x01, 0xbe, 0xcf, 0xa0, 0x04, 0xc9, 0x22, 0x71, 0x89, 0xbe, 0xe4, 0x8d, 0x37, 0xf2, 0x46,
0x8e, 0x1c, 0xc9, 0x85, 0x27, 0x98, 0x6e, 0xda, 0xb6, 0x6d, 0x5b, 0x79, 0x6e, 0x6e, 0x6e, 0x56,
0x43, 0x43, 0x43, 0x9c, 0x44, 0x22, 0xf1, 0x4d, 0x4c, 0x4c, 0xe4, 0x69, 0x6a, 0x6a, 0x72, 0x40,
0x08, 0xf4, 0x42, 0x94, 0x5e, 0x1f, 0xc8, 0xf0, 0x41, 0x28, 0xab, 0x51, 0xaf, 0x2b, 0xe9, 0xff,
0xf8, 0xe3, 0x8f, 0x79, 0x87, 0x0f, 0x1f, 0x8e, 0x49, 0x4d, 0x4d, 0xbd, 0x7d, 0xf3, 0xe6, 0xcd,
0xb2, 0xeb, 0xd7, 0xaf, 0x33, 0x24, 0xda, 0xda, 0xda, 0xcc, 0x80, 0x01, 0x03, 0x98, 0x7d, 0xfb,
0xf6, 0x05, 0xe2, 0x95, 0x6c, 0x75, 0xa4, 0x2f, 0x7b, 0x68, 0x68, 0x68, 0xf0, 0xc8, 0xdb, 0xd5,
0xd5, 0xd5, 0x3c, 0x07, 0x07, 0x87, 0xa0, 0xcf, 0x3e, 0xfb, 0x8c, 0xd9, 0xb9, 0x73, 0x27, 0xfb,
0xa5, 0xd8, 0xd8, 0xd8, 0x4a, 0x52, 0x72, 0xe7, 0xce, 0x9d, 0x8c, 0xd6, 0xd6, 0x56, 0x7e, 0x44,
0x44, 0x04, 0x6f, 0xdc, 0xb8, 0x71, 0x1c, 0x10, 0xf2, 0xd4, 0xd7, 0x7f, 0xd2, 0xe3, 0xba, 0xa8,
0xc7, 0x93, 0xf4, 0xa1, 0x13, 0xa3, 0x8e, 0x1d, 0x3b, 0x96, 0x7e, 0xed, 0xda, 0xb5, 0x52, 0xce,
0x68, 0x7c, 0x36, 0x53, 0x54, 0x54, 0xc4, 0x88, 0x44, 0x22, 0xc6, 0xca, 0xca, 0x8a, 0x99, 0x3f,
0x7f, 0x3e, 0xd3, 0xde, 0xde, 0xee, 0x4f, 0x20, 0xf1, 0x3b, 0xf6, 0x94, 0x42, 0x6e, 0xea, 0xea,
0xea, 0x2c, 0x00, 0x92, 0xe6, 0xe6, 0xe6, 0x40, 0xba, 0xc9, 0xc7, 0xc7, 0x87, 0x79, 0xf2, 0xe4,
0x09, 0x13, 0x15, 0x15, 0x55, 0x87, 0x61, 0x6c, 0xf1, 0xf6, 0xf6, 0xae, 0x25, 0x85, 0x69, 0x69,
0x69, 0xf7, 0x51, 0x61, 0xaa, 0xb3, 0xb3, 0x73, 0x08, 0x02, 0x25, 0x20, 0x24, 0x6b, 0x50, 0x7a,
0xfc, 0x41, 0xe3, 0xbf, 0xc6, 0x67, 0xdb, 0x53, 0x4e, 0x4f, 0x98, 0x30, 0x21, 0xc5, 0xcc, 0xcc,
0xac, 0x04, 0x0d, 0x67, 0x8d, 0x4e, 0x4e, 0x4e, 0x66, 0x72, 0x72, 0x72, 0x2a, 0x79, 0x3c, 0x5e,
0xa3, 0xab, 0xab, 0x6b, 0x33, 0x66, 0x00, 0x83, 0xdf, 0x61, 0x4e, 0x9f, 0x3e, 0xcd, 0x02, 0x78,
0xf1, 0xe2, 0x85, 0x9f, 0x8a, 0x8a, 0x0a, 0x01, 0xb0, 0x23, 0x45, 0x97, 0x47, 0x8c, 0x18, 0x21,
0x07, 0xf0, 0xe8, 0xd1, 0xa3, 0x00, 0xba, 0xc9, 0xc5, 0xc5, 0xa5, 0x5a, 0x2a, 0x95, 0x56, 0xd2,
0x17, 0x5f, 0xbd, 0x7a, 0x55, 0xe9, 0xef, 0xef, 0xff, 0xc0, 0xdc, 0xdc, 0xbc, 0x39, 0x34, 0x34,
0xb4, 0x9a, 0xf3, 0x0e, 0x86, 0x38, 0x13, 0x0b, 0x2b, 0x54, 0x16, 0x8d, 0x13, 0x78, 0xfd, 0xf8,
0xdf, 0x30, 0x5c, 0x19, 0x45, 0x8f, 0xf2, 0xb8, 0x6f, 0xdf, 0xbe, 0x69, 0xfb, 0xf7, 0xef, 0x2f,
0xc7, 0xf4, 0x64, 0x3d, 0x5d, 0x58, 0x58, 0xc8, 0x54, 0x56, 0x56, 0x56, 0x05, 0x06, 0x06, 0x8a,
0x3c, 0x3c, 0x3c, 0x9a, 0xea, 0xea, 0xea, 0xaa, 0xe9, 0xf9, 0x9c, 0x58, 0x58, 0x58, 0x54, 0x92,
0x6d, 0x62, 0xb1, 0xd8, 0xb7, 0x57, 0xaf, 0x5e, 0x04, 0xc0, 0x9a, 0x14, 0x5e, 0x1a, 0x3e, 0x7c,
0xb8, 0x1c, 0x40, 0x47, 0x47, 0x87, 0x3f, 0xdd, 0x64, 0x6f, 0x6f, 0x5f, 0xc3, 0x30, 0x4c, 0x13,
0x2a, 0x6c, 0xc2, 0x90, 0xd5, 0x92, 0x82, 0xe7, 0xcf, 0x9f, 0x13, 0x10, 0x91, 0x9b, 0x9b, 0x5b,
0xa3, 0x40, 0x20, 0x60, 0x41, 0xd0, 0xc3, 0x0d, 0x0d, 0x0d, 0x85, 0xa8, 0x30, 0x14, 0x41, 0xb8,
0xfc, 0x5e, 0x4a, 0xe1, 0x6b, 0x8a, 0x8c, 0x08, 0x04, 0x53, 0xa7, 0x4e, 0xad, 0xf0, 0xf5, 0xf5,
0x25, 0x27, 0x30, 0x98, 0xba, 0xe4, 0xd5, 0x4a, 0x4c, 0xcf, 0x46, 0x8c, 0x74, 0x13, 0xbe, 0xe4,
0x86, 0x3f, 0x7e, 0xfc, 0xb8, 0xee, 0x01, 0xbe, 0x1a, 0x1b, 0x1b, 0x1b, 0x4c, 0x4c, 0x4c, 0xaa,
0x16, 0x2c, 0x58, 0x40, 0xef, 0x73, 0xf5, 0x6a, 0x45, 0x4a, 0x1d, 0xd5, 0xd4, 0xd4, 0xe4, 0x00,
0x28, 0x3c, 0x04, 0xe0, 0xf2, 0xe5, 0xcb, 0xac, 0x02, 0x0c, 0x5f, 0x25, 0x2a, 0x6c, 0x28, 0x2f,
0x2f, 0x6f, 0xae, 0xad, 0xad, 0x6d, 0x44, 0xf4, 0x95, 0x15, 0x15, 0x15, 0x35, 0x8e, 0x8e, 0x8e,
0x2d, 0xf9, 0xf9, 0xf9, 0xd5, 0xe9, 0xe9, 0xe9, 0x2c, 0x90, 0x8b, 0x17, 0x2f, 0x32, 0x9f, 0x7c,
0xf2, 0x89, 0x10, 0x0d, 0x0c, 0x7e, 0x17, 0x08, 0x7c, 0xfd, 0x80, 0x72, 0x13, 0xbd, 0x5e, 0x81,
0x29, 0xc9, 0x1a, 0x8e, 0xfa, 0x48, 0x3f, 0x83, 0x7a, 0xea, 0x30, 0xe2, 0xa4, 0xbf, 0x86, 0x9e,
0x89, 0x59, 0x20, 0x37, 0x1a, 0x9d, 0x56, 0xc3, 0x81, 0x41, 0x00, 0xcc, 0xa2, 0x45, 0x8b, 0x2a,
0x30, 0x23, 0x38, 0x00, 0x16, 0xa4, 0xd8, 0x9e, 0x0a, 0x82, 0x03, 0xd0, 0xd5, 0xd5, 0xe5, 0x4b,
0x00, 0x9c, 0x9c, 0x9c, 0x18, 0xc5, 0xf0, 0xc9, 0x22, 0x50, 0x43, 0x40, 0x6a, 0x6a, 0x6a, 0x44,
0x08, 0xb4, 0x0a, 0x3d, 0xd8, 0x84, 0x79, 0xfb, 0x80, 0x0a, 0x2c, 0x23, 0x23, 0x83, 0xf1, 0xf3,
0xf3, 0x63, 0x86, 0x0e, 0x1d, 0x5a, 0xfe, 0xd1, 0x47, 0x1f, 0x25, 0xa0, 0x5e, 0x0d, 0x05, 0xe3,
0x97, 0xa0, 0xe4, 0xaa, 0xaa, 0xaa, 0xb2, 0xf7, 0xd4, 0xd7, 0xd7, 0x33, 0x98, 0x9e, 0x4c, 0x5b,
0x5b, 0x5b, 0xd5, 0x95, 0x2b, 0x57, 0x9a, 0x31, 0x7d, 0x1a, 0x28, 0x5d, 0xb1, 0xfe, 0x90, 0xf4,
0x1a, 0x1e, 0x28, 0x1a, 0xad, 0x28, 0x47, 0x8e, 0x1c, 0x61, 0x7e, 0xfe, 0xf9, 0xe7, 0xf2, 0xa7,
0x4f, 0x9f, 0x72, 0x00, 0x28, 0x6d, 0x95, 0xce, 0x13, 0x25, 0x71, 0x00, 0x48, 0x08, 0x00, 0xb2,
0x11, 0xf3, 0x2e, 0x25, 0x8a, 0x40, 0x28, 0x22, 0xe8, 0xc9, 0x07, 0xd6, 0xd6, 0xd6, 0xad, 0x08,
0xbc, 0x92, 0x80, 0x60, 0xe1, 0xb1, 0x54, 0x87, 0x20, 0x32, 0x51, 0xf7, 0x28, 0x14, 0x7d, 0x94,
0x92, 0x61, 0xc3, 0x86, 0x31, 0x57, 0xaf, 0x5e, 0x65, 0x3a, 0x3b, 0x3b, 0x59, 0x1d, 0x64, 0xf8,
0x84, 0x09, 0xc3, 0x5f, 0xeb, 0xe9, 0xad, 0x7b, 0x4a, 0x9e, 0x26, 0x41, 0x1d, 0x55, 0xef, 0x7b,
0x26, 0xc9, 0xa1, 0x43, 0x87, 0x98, 0xa5, 0x4b, 0x97, 0x96, 0x61, 0x84, 0x38, 0x00, 0xc6, 0x04,
0xe0, 0x2c, 0xf5, 0x01, 0x45, 0x00, 0x0b, 0x17, 0x2e, 0x64, 0xce, 0x9f, 0x3f, 0xcf, 0x60, 0xaa,
0x34, 0x93, 0xa1, 0x94, 0x42, 0x18, 0xb6, 0xaa, 0x77, 0x01, 0xd9, 0xbe, 0x7d, 0xc3, 0x8b, 0xde,
0xbd, 0x7b, 0xc0, 0xf4, 0xe9, 0x93, 0x3a, 0x91, 0x3d, 0x1a, 0xc8, 0x40, 0x2c, 0x42, 0xa6, 0x4f,
0x9f, 0x3e, 0x04, 0xa2, 0x1e, 0xf5, 0x57, 0x23, 0x3d, 0x32, 0x59, 0x59, 0x59, 0xec, 0x77, 0xa8,
0x30, 0xe7, 0xce, 0xfd, 0xe6, 0xe5, 0xf8, 0xf1, 0xca, 0xd2, 0x4d, 0x9b, 0x7a, 0x82, 0x9e, 0x9e,
0x6e, 0x07, 0x47, 0x16, 0xdd, 0xe5, 0xd9, 0xb3, 0x67, 0x35, 0x78, 0x7f, 0x23, 0xd9, 0x40, 0x91,
0xc1, 0x82, 0x67, 0x56, 0xae, 0x5c, 0x59, 0x82, 0x8e, 0xe2, 0x00, 0x1c, 0x26, 0x00, 0xd6, 0x54,
0xd1, 0x8a, 0x00, 0xb0, 0x61, 0x54, 0x9c, 0x3d, 0x7b, 0x96, 0x55, 0x42, 0xca, 0x31, 0xd4, 0xb5,
0x58, 0x68, 0x22, 0x52, 0x44, 0x9e, 0xa2, 0xba, 0xe0, 0x1e, 0x42, 0x69, 0xb4, 0x76, 0xed, 0x00,
0x69, 0x40, 0x40, 0x3f, 0x98, 0x38, 0x51, 0x59, 0x3a, 0x7d, 0xfa, 0x57, 0xaf, 0x82, 0x83, 0x83,
0x45, 0x18, 0xc1, 0x06, 0x04, 0xd0, 0x85, 0x75, 0xf1, 0x18, 0x89, 0x80, 0x79, 0xf9, 0xf2, 0x65,
0xa5, 0xb1, 0xf1, 0xc1, 0x47, 0x9f, 0x7e, 0xda, 0x4f, 0x7a, 0xf1, 0x62, 0x3f, 0x78, 0xfd, 0xba,
0x3f, 0x98, 0x9b, 0x2b, 0x4b, 0xb1, 0xe3, 0xb7, 0x72, 0xba, 0xe8, 0x59, 0xd8, 0x6b, 0xea, 0xe9,
0x39, 0x24, 0x54, 0x07, 0x98, 0xaa, 0xf2, 0x82, 0xde, 0xbd, 0x7b, 0x37, 0xb3, 0x66, 0xcd, 0x9a,
0x62, 0x04, 0xc5, 0x01, 0x30, 0x24, 0x00, 0xa7, 0xb1, 0xf0, 0xde, 0x00, 0xa0, 0xa3, 0xa3, 0x53,
0x7e, 0xe6, 0xcc, 0x19, 0xb9, 0x27, 0x82, 0x82, 0x82, 0x44, 0xc4, 0x0e, 0x88, 0xbc, 0x9a, 0x18,
0x89, 0x94, 0x13, 0x20, 0x34, 0xaa, 0x9a, 0x3c, 0xaa, 0xae, 0xde, 0x5f, 0x02, 0xd0, 0x1f, 0x48,
0x52, 0x52, 0xfa, 0x81, 0xb6, 0xf6, 0x60, 0x89, 0xba, 0xfa, 0x50, 0x49, 0xcf, 0x9e, 0x3d, 0xc4,
0x98, 0x8e, 0xed, 0xfe, 0xfe, 0xbe, 0x4d, 0xea, 0xea, 0xaa, 0xe2, 0x9d, 0x3b, 0x95, 0xa5, 0x6d,
0x6d, 0x2a, 0xc0, 0xdd, 0xbb, 0x79, 0xb3, 0xaa, 0x04, 0x69, 0x59, 0x44, 0x9e, 0x26, 0xb6, 0x23,
0xbd, 0xe8, 0xac, 0x3a, 0x02, 0x8b, 0xc4, 0xd0, 0x40, 0x69, 0x86, 0x0e, 0x93, 0x03, 0xd0, 0xd7,
0xd7, 0x67, 0xd6, 0xad, 0x5b, 0x77, 0x1f, 0xd9, 0x91, 0x03, 0x60, 0x40, 0x00, 0x2c, 0xe9, 0x0f,
0xf4, 0xaa, 0x1c, 0xc0, 0xb2, 0x65, 0xcb, 0xca, 0x4e, 0x9d, 0x3a, 0x45, 0x5e, 0x93, 0xf7, 0x02,
0x6c, 0x6a, 0x55, 0x21, 0x21, 0x21, 0x22, 0x6a, 0x2c, 0xa8, 0xa0, 0x06, 0x53, 0xa5, 0x9a, 0x40,
0x50, 0x9a, 0x8d, 0x1c, 0x39, 0x44, 0x2c, 0x12, 0xfd, 0x66, 0x18, 0x49, 0x49, 0x89, 0x32, 0xac,
0x5f, 0xdf, 0x13, 0x94, 0x95, 0x7b, 0xc0, 0xfc, 0xf9, 0x83, 0x25, 0xf7, 0xef, 0x2b, 0xbf, 0xf1,
0x39, 0xc9, 0x0f, 0x3f, 0x0c, 0x91, 0xf0, 0xf9, 0xfc, 0x36, 0x4a, 0x13, 0x4a, 0x51, 0xd4, 0x57,
0xe3, 0xe5, 0xe5, 0xd5, 0x44, 0xce, 0x22, 0xa6, 0x53, 0x8c, 0x0c, 0x45, 0x7d, 0xfb, 0xf6, 0xed,
0xcc, 0x86, 0x0d, 0x1b, 0x8a, 0x8a, 0x8b, 0x8b, 0x39, 0x00, 0xbb, 0x95, 0x64, 0x54, 0xc4, 0x23,
0x6a, 0xe2, 0x00, 0xe0, 0xd0, 0x54, 0x8a, 0x4d, 0x83, 0x79, 0xf8, 0xf0, 0xa1, 0x3c, 0x9c, 0x5c,
0x1d, 0x50, 0x53, 0xc3, 0xee, 0xcc, 0xf2, 0x35, 0x46, 0x83, 0xfe, 0xae, 0x5a, 0xb2, 0x64, 0x4e,
0x67, 0x78, 0x78, 0xdf, 0xb7, 0x0c, 0x24, 0x79, 0xf5, 0xaa, 0xff, 0x3b, 0xdf, 0x27, 0x51, 0x57,
0x1f, 0x20, 0xc1, 0x82, 0xac, 0x22, 0x2f, 0x53, 0xe3, 0x42, 0x30, 0x8d, 0xe4, 0x7d, 0x32, 0x98,
0xf8, 0x9f, 0xd8, 0x8e, 0x9e, 0x4d, 0xfd, 0x88, 0xa2, 0xb4, 0x69, 0xd3, 0x26, 0x06, 0xa5, 0x10,
0x87, 0x3b, 0x0e, 0x00, 0xed, 0x2c, 0xbf, 0xce, 0xda, 0x58, 0x90, 0x6f, 0x01, 0x50, 0x2c, 0x28,
0x4a, 0x1d, 0xae, 0x0e, 0x28, 0x4f, 0x89, 0x02, 0xe9, 0xa1, 0x14, 0x6a, 0x2c, 0xf8, 0x16, 0x43,
0xc3, 0xfe, 0xd2, 0xf7, 0x19, 0xda, 0xd5, 0x35, 0x08, 0xf2, 0x0b, 0xbe, 0x82, 0xe2, 0xd2, 0xb1,
0x50, 0x53, 0xab, 0x0e, 0xcf, 0x9e, 0xa9, 0x82, 0x44, 0xd2, 0x1f, 0x54, 0x55, 0xfb, 0x49, 0xc9,
0x11, 0x14, 0x59, 0x6a, 0x92, 0xc4, 0xff, 0x8a, 0xc4, 0x41, 0x51, 0x56, 0xb4, 0x61, 0xe3, 0xc6,
0x8d, 0xcc, 0xe6, 0xcd, 0x9b, 0x0b, 0x71, 0xcc, 0xe0, 0x00, 0xd0, 0x48, 0xad, 0x64, 0x42, 0x7f,
0xa0, 0x81, 0x8a, 0x29, 0x54, 0x6a, 0x69, 0x69, 0xf9, 0x5e, 0x3a, 0x23, 0x00, 0x65, 0x65, 0x65,
0x2c, 0x8d, 0xa2, 0x37, 0xea, 0x91, 0x9f, 0x1f, 0x69, 0x6a, 0x0e, 0x96, 0xbc, 0xcb, 0xf8, 0xce,
0x57, 0x83, 0xe1, 0xbc, 0xc3, 0x56, 0x48, 0xba, 0x1e, 0x0b, 0xd7, 0x6f, 0xc4, 0x00, 0x3f, 0xda,
0x17, 0x6c, 0xcf, 0x1d, 0x86, 0x6b, 0x49, 0x9a, 0x30, 0x7a, 0xb4, 0x2a, 0xa6, 0x9e, 0x48, 0xee,
0x98, 0x96, 0x96, 0x96, 0x7a, 0x45, 0x82, 0xe8, 0x2e, 0xfa, 0x3b, 0x77, 0xd7, 0x9e, 0x3e, 0xe7,
0xda, 0xc9, 0x8f, 0x49, 0x48, 0x94, 0x01, 0xd8, 0x28, 0x07, 0x40, 0xcd, 0x81, 0x03, 0x40, 0x5c,
0x4b, 0x35, 0x40, 0x05, 0x45, 0xa1, 0xfb, 0xbd, 0x7e, 0x40, 0x1e, 0xbb, 0x77, 0xef, 0x9e, 0x68,
0xd0, 0xa0, 0xde, 0xd2, 0x17, 0x2f, 0xde, 0x06, 0x20, 0x95, 0xf6, 0x87, 0x80, 0xe0, 0xe5, 0x90,
0x98, 0x14, 0x0d, 0x68, 0x2c, 0x20, 0x68, 0x40, 0x72, 0x81, 0xb0, 0x70, 0x5f, 0xd8, 0xb4, 0x45,
0x57, 0x8a, 0xe9, 0x21, 0xfa, 0x3d, 0xfe, 0xa7, 0x74, 0xa2, 0xe8, 0x57, 0x54, 0xd6, 0x36, 0x9e,
0x75, 0xf4, 0x16, 0x5f, 0x4d, 0xcb, 0x07, 0x17, 0xaf, 0xb0, 0x97, 0x3f, 0x2d, 0xd0, 0x11, 0xc8,
0x76, 0x97, 0xb7, 0x53, 0x88, 0x63, 0x21, 0x32, 0x90, 0xa8, 0x8c, 0x0b, 0xab, 0xac, 0x03, 0x57,
0x77, 0x7f, 0x08, 0x86, 0xb4, 0x61, 0xd8, 0xb0, 0xfe, 0xd2, 0xa6, 0x26, 0x95, 0xf7, 0xe6, 0x7b,
0x78, 0xa4, 0x0e, 0xc4, 0xc4, 0x05, 0xb3, 0xc6, 0xa3, 0xd1, 0xec, 0xd5, 0xcb, 0xc7, 0x0d, 0xb4,
0x16, 0xcc, 0xee, 0xc2, 0x0e, 0x2c, 0xd7, 0x49, 0x35, 0xa5, 0xf8, 0x4c, 0xca, 0xff, 0x0c, 0x61,
0x5e, 0x9b, 0x9b, 0x1f, 0x5f, 0x9c, 0x92, 0x5b, 0x0a, 0x82, 0x3b, 0x95, 0x90, 0x96, 0x5f, 0x01,
0x17, 0xdd, 0x82, 0x3a, 0xf5, 0xf6, 0x1c, 0x0e, 0x95, 0x17, 0x31, 0x7a, 0x41, 0x0e, 0x80, 0xda,
0x35, 0xf2, 0xb3, 0xdc, 0x40, 0x2a, 0x5a, 0x9a, 0x10, 0x29, 0xdc, 0x94, 0x36, 0x94, 0x3e, 0x94,
0xa3, 0x14, 0x6e, 0x7c, 0xd5, 0x8c, 0x1a, 0xa5, 0x26, 0x8e, 0x8f, 0x57, 0x7e, 0xaf, 0xf1, 0x9c,
0x44, 0xc7, 0x2e, 0xc4, 0xd4, 0xe1, 0x03, 0xb2, 0x0e, 0x0b, 0x82, 0xa9, 0x64, 0xc0, 0xd4, 0x62,
0x13, 0x8c, 0x1d, 0xfb, 0xa9, 0x18, 0x3b, 0x7a, 0x13, 0x47, 0xcf, 0x58, 0xc0, 0x35, 0xd8, 0x14,
0x1f, 0xe0, 0xc8, 0xde, 0x7c, 0x23, 0x55, 0xd8, 0xe6, 0x1b, 0x1a, 0x2f, 0xc9, 0xb8, 0x5b, 0xc9,
0x1a, 0xcf, 0xc9, 0x75, 0xe1, 0x7d, 0x38, 0x7d, 0xde, 0xed, 0xa1, 0x92, 0x6c, 0xa2, 0x7b, 0xab,
0x91, 0xd9, 0xd9, 0xd9, 0x31, 0x8a, 0x45, 0x44, 0x45, 0x4b, 0x93, 0x28, 0x15, 0x1d, 0x79, 0x0c,
0x69, 0xb5, 0x16, 0x07, 0xb9, 0xd6, 0xd1, 0xa3, 0x87, 0x89, 0xc3, 0xc3, 0x7f, 0xf3, 0xfc, 0x6b,
0xf1, 0xc0, 0xf7, 0x02, 0xe8, 0xe8, 0x50, 0x05, 0x4f, 0xef, 0xb3, 0x80, 0xac, 0x03, 0x55, 0x55,
0x55, 0x6c, 0x4a, 0x39, 0x38, 0x1d, 0x87, 0xb8, 0xb8, 0x81, 0x30, 0x62, 0xc4, 0x40, 0x49, 0x58,
0x58, 0x18, 0xeb, 0x28, 0x1c, 0x24, 0x9b, 0x71, 0x81, 0xaa, 0x2b, 0x2a, 0xae, 0x68, 0x0a, 0x8d,
0x49, 0x96, 0x64, 0xdd, 0xaf, 0x86, 0x5b, 0xe8, 0xf5, 0xb4, 0xbc, 0x72, 0x48, 0xcd, 0x2d, 0x43,
0x29, 0x05, 0x3b, 0x27, 0x9f, 0x97, 0xd3, 0xbe, 0x9d, 0x65, 0xc6, 0x36, 0xb2, 0xee, 0x9d, 0x98,
0x26, 0x3e, 0x1a, 0x25, 0xa8, 0x06, 0xc8, 0x2b, 0x14, 0x4e, 0x2a, 0x5c, 0xf2, 0x38, 0x51, 0x27,
0x75, 0x5f, 0x4f, 0x4f, 0xcf, 0xa6, 0x09, 0x13, 0x46, 0xbc, 0xe6, 0xf1, 0x54, 0xa4, 0xbf, 0x51,
0xe6, 0x60, 0x34, 0x68, 0x0b, 0x04, 0x86, 0x2c, 0x67, 0x73, 0xbf, 0x3b, 0x00, 0x89, 0x64, 0x00,
0x5c, 0x76, 0xb3, 0x02, 0xa4, 0x67, 0x16, 0x04, 0xea, 0x04, 0x57, 0xf7, 0x33, 0x78, 0xef, 0x00,
0xb8, 0x77, 0x4f, 0x19, 0xfe, 0xfe, 0xf7, 0x7e, 0x52, 0x1b, 0x9b, 0x53, 0xad, 0xdc, 0x18, 0x91,
0x94, 0x9c, 0xde, 0x9e, 0x78, 0x2b, 0x0f, 0x12, 0x33, 0xee, 0xc2, 0xb5, 0xf4, 0x3b, 0x90, 0x20,
0x28, 0x80, 0x24, 0xbc, 0x06, 0x44, 0x24, 0x76, 0xad, 0xfa, 0xc7, 0x96, 0x02, 0xd9, 0x5e, 0xa1,
0x64, 0x83, 0x23, 0xae, 0x8f, 0x22, 0x00, 0x9a, 0xb9, 0x15, 0x87, 0x39, 0xd9, 0x38, 0xc1, 0x52,
0x1c, 0x09, 0xa6, 0x40, 0xdd, 0xc4, 0x89, 0xea, 0x5d, 0x8e, 0x8e, 0x6f, 0xa6, 0xcd, 0x6d, 0xe1,
0x54, 0x10, 0xa4, 0xa7, 0x42, 0x66, 0x56, 0x2a, 0xf8, 0xf8, 0xae, 0x63, 0x0d, 0x56, 0xfc, 0xfc,
0x6a, 0x82, 0x16, 0xc4, 0x5d, 0x0d, 0x01, 0x24, 0x0c, 0x40, 0xca, 0x64, 0xaf, 0xce, 0xae, 0xa6,
0xf2, 0xcf, 0x9b, 0x9b, 0x55, 0xe0, 0xdb, 0x6f, 0x07, 0x48, 0xb7, 0x6e, 0xfd, 0xc7, 0x0b, 0x6a,
0x6e, 0xc9, 0x82, 0xec, 0xc7, 0x09, 0xc9, 0x42, 0x88, 0xbe, 0x71, 0x1b, 0xf8, 0x49, 0x19, 0x10,
0x45, 0x92, 0x28, 0x00, 0x17, 0xcf, 0x90, 0x56, 0x1c, 0x53, 0x78, 0xb2, 0x41, 0x51, 0xc9, 0x0e,
0xa7, 0x47, 0x9f, 0xee, 0xd3, 0x28, 0xce, 0xfb, 0xcc, 0xbb, 0x28, 0x8d, 0x3a, 0xf2, 0xb4, 0x69,
0xe3, 0xba, 0xac, 0xad, 0x55, 0xde, 0xe2, 0xfd, 0xaa, 0x2a, 0x75, 0x88, 0x4f, 0x08, 0x63, 0x0b,
0x34, 0x23, 0x23, 0x19, 0x9c, 0x2f, 0xeb, 0x42, 0x56, 0xf6, 0x64, 0x28, 0x2b, 0xd7, 0x80, 0xa0,
0x90, 0xa5, 0x6c, 0x11, 0x63, 0xed, 0xb0, 0x4c, 0x44, 0x75, 0x80, 0xa9, 0x08, 0xa7, 0x6d, 0x0f,
0x82, 0xb7, 0x77, 0x1f, 0xd8, 0xbb, 0xb7, 0xbf, 0xf4, 0xbb, 0xef, 0x06, 0x4b, 0xd4, 0xd4, 0x94,
0xa5, 0xb3, 0x67, 0x4f, 0xee, 0xac, 0xa9, 0x6b, 0x6c, 0xf0, 0x0e, 0x8c, 0x16, 0xdf, 0xcc, 0xc8,
0x85, 0x84, 0x94, 0x4c, 0x88, 0x4f, 0xbe, 0x0d, 0x71, 0xd7, 0xd3, 0xc1, 0xce, 0xd1, 0xeb, 0x75,
0x4e, 0x6e, 0x7e, 0xa8, 0x8c, 0x46, 0x77, 0xb1, 0xe3, 0xb4, 0xe2, 0x3e, 0x40, 0xeb, 0x1a, 0x01,
0xb8, 0x74, 0xe9, 0x12, 0x43, 0x0c, 0xc0, 0x0d, 0x70, 0xdc, 0x34, 0xea, 0xea, 0xea, 0xd2, 0xdc,
0xab, 0x57, 0x0f, 0xf8, 0xfe, 0x7b, 0x55, 0xf1, 0xea, 0xd5, 0x43, 0x24, 0x7b, 0xf7, 0x0e, 0x92,
0x5a, 0x5a, 0xf6, 0x03, 0x37, 0xb7, 0x3e, 0x10, 0x11, 0x31, 0x10, 0xdc, 0x3c, 0xec, 0xd8, 0xdc,
0x26, 0x10, 0xa5, 0x65, 0x65, 0x18, 0x91, 0x34, 0x88, 0xbf, 0x16, 0xc6, 0x02, 0xa2, 0xb4, 0xc1,
0x22, 0x65, 0xf3, 0x9f, 0x04, 0x27, 0x4c, 0xa4, 0xd3, 0x50, 0x30, 0x38, 0xb0, 0xeb, 0x15, 0x6e,
0x79, 0xcd, 0xb4, 0xd8, 0xe0, 0xf3, 0x99, 0x46, 0x51, 0x4b, 0xbd, 0x57, 0x40, 0x94, 0x18, 0x23,
0x00, 0x49, 0x68, 0xbc, 0x57, 0x00, 0x5f, 0xe2, 0xc6, 0x0b, 0xef, 0x3a, 0x6d, 0xe7, 0xfc, 0x62,
0xcb, 0xf6, 0x9d, 0x0d, 0x48, 0x22, 0x5c, 0x23, 0xdb, 0x43, 0x00, 0x2e, 0xe2, 0xc4, 0xf8, 0xd6,
0x42, 0x83, 0x1b, 0x92, 0xdc, 0xe3, 0x91, 0x91, 0x91, 0x44, 0x67, 0x22, 0x62, 0x1f, 0x5a, 0x3a,
0x30, 0x87, 0xab, 0x71, 0xb1, 0xa7, 0x25, 0xbf, 0x81, 0xea, 0xc1, 0xca, 0xca, 0xea, 0x91, 0xbe,
0xfe, 0xe6, 0xe7, 0xf3, 0xe6, 0xfd, 0x6f, 0xe7, 0x81, 0x43, 0xfb, 0xa5, 0x64, 0x3c, 0x36, 0x25,
0xd6, 0xc3, 0x24, 0xf4, 0x6f, 0xca, 0x77, 0xf2, 0x3e, 0x09, 0x01, 0xc4, 0xef, 0x43, 0x5e, 0x5e,
0x1e, 0x3c, 0x6c, 0x6b, 0x83, 0x88, 0xc8, 0x48, 0x49, 0x72, 0x4a, 0x0a, 0x9b, 0xfb, 0x4c, 0x55,
0x8d, 0xc8, 0x9d, 0x17, 0x2e, 0x49, 0x16, 0x64, 0xc1, 0x8d, 0xb4, 0x5f, 0x8d, 0xa7, 0x68, 0xd0,
0x67, 0x47, 0x8f, 0x1e, 0x65, 0x17, 0x1a, 0x04, 0xcf, 0x01, 0xd8, 0x47, 0x00, 0x9c, 0x3e, 0xff,
0xfc, 0x73, 0x39, 0x00, 0x9c, 0x45, 0xd8, 0x95, 0x12, 0x87, 0x36, 0x79, 0xda, 0xd0, 0x60, 0x45,
0x43, 0x1c, 0x02, 0x69, 0x44, 0xaf, 0xd5, 0x73, 0x3d, 0xa1, 0xfb, 0x8e, 0x40, 0x85, 0x8e, 0xd3,
0xe5, 0x13, 0x6b, 0x5b, 0x1b, 0xe9, 0x93, 0xf6, 0x27, 0x6c, 0x8e, 0x63, 0xd1, 0xbf, 0x21, 0xb8,
0x73, 0x03, 0x3a, 0x05, 0xce, 0x9c, 0xb1, 0x81, 0xcb, 0xae, 0xee, 0x10, 0x13, 0x1b, 0xcf, 0xde,
0xe7, 0x17, 0x18, 0x20, 0x89, 0x8c, 0x8a, 0xe9, 0x40, 0xe3, 0xc5, 0x82, 0xcc, 0x3c, 0xb8, 0x95,
0x99, 0x0b, 0xbc, 0xa0, 0x28, 0xc9, 0xfd, 0xd2, 0x8a, 0x46, 0xc5, 0x95, 0x72, 0xf1, 0xe2, 0xc5,
0xe5, 0x98, 0x82, 0x1c, 0x80, 0xfd, 0x04, 0xc0, 0x45, 0xf1, 0x58, 0x05, 0xab, 0xdf, 0x5f, 0x16,
0x81, 0x2a, 0x45, 0xf6, 0x21, 0x05, 0x68, 0x74, 0x0d, 0x8d, 0xb8, 0xf1, 0xf1, 0xf1, 0xb4, 0xf6,
0xb1, 0xd3, 0x28, 0xa5, 0x99, 0x22, 0x10, 0x2a, 0xf8, 0xfc, 0x82, 0x02, 0x91, 0xf9, 0x49, 0x0b,
0x28, 0x2e, 0xb9, 0x07, 0x48, 0xc5, 0x38, 0xfb, 0xbf, 0x06, 0x4c, 0x0d, 0x68, 0xc0, 0xc8, 0xa4,
0x09, 0x04, 0x38, 0x1b, 0x75, 0x81, 0xb7, 0x8f, 0x1f, 0xdc, 0xbd, 0x5b, 0x04, 0x81, 0x41, 0x11,
0x90, 0x9a, 0x9a, 0x01, 0x2d, 0x0f, 0xdb, 0xc0, 0xd1, 0xd5, 0x1f, 0xc8, 0xf8, 0x74, 0x61, 0x3e,
0x04, 0x47, 0x5e, 0x93, 0x30, 0x55, 0x75, 0x8d, 0x44, 0xe5, 0xd4, 0x73, 0xc8, 0x61, 0x27, 0x4e,
0x9c, 0x60, 0x77, 0x62, 0x74, 0xe2, 0x6f, 0xfb, 0x00, 0x9d, 0x12, 0x70, 0x07, 0x5b, 0x24, 0x74,
0x68, 0x44, 0x00, 0x68, 0xff, 0x2c, 0x2c, 0x2c, 0xa4, 0x05, 0xa3, 0x4e, 0xb1, 0x16, 0x08, 0x4c,
0x69, 0x69, 0x69, 0x2d, 0x35, 0x19, 0x1c, 0x6b, 0x6b, 0xe9, 0x01, 0x04, 0x94, 0x1e, 0xa0, 0x58,
0xf4, 0x3e, 0x3c, 0x5e, 0xcb, 0x3c, 0xad, 0x19, 0x38, 0x07, 0xed, 0x01, 0x47, 0xe7, 0x13, 0x70,
0xe1, 0xa2, 0x11, 0xfc, 0x73, 0xe3, 0x2a, 0xa9, 0xb7, 0x8f, 0x4f, 0x3b, 0x3f, 0x3a, 0x4a, 0xf2,
0xfc, 0xf9, 0x0b, 0x70, 0xf7, 0xf0, 0x83, 0xfb, 0xc5, 0x65, 0xe0, 0x17, 0x10, 0x09, 0x2e, 0x1e,
0x21, 0xac, 0xd7, 0x33, 0xb2, 0x0b, 0x20, 0x28, 0x32, 0x41, 0x22, 0xc8, 0xc8, 0x7a, 0xcc, 0x45,
0x1a, 0x9f, 0x5b, 0x9b, 0x99, 0x99, 0xc9, 0xe8, 0xe9, 0xe9, 0x31, 0xc4, 0x90, 0x0a, 0x1b, 0x99,
0x11, 0x45, 0xc0, 0xfd, 0xcb, 0x2f, 0xbf, 0x94, 0x03, 0xa0, 0xbd, 0x00, 0x57, 0xb7, 0x5c, 0x02,
0x41, 0x82, 0x83, 0x1d, 0x63, 0x66, 0x66, 0x46, 0x27, 0x74, 0x0c, 0xe6, 0x36, 0xbb, 0xcc, 0xd0,
0xf2, 0x41, 0x23, 0x05, 0x45, 0x82, 0xfa, 0x01, 0xf5, 0x06, 0xe2, 0x6d, 0x04, 0xd6, 0x42, 0x63,
0x00, 0x01, 0x40, 0xf0, 0xf5, 0x2a, 0x2a, 0x4a, 0x12, 0x6b, 0xeb, 0x5f, 0xc7, 0x6c, 0x3e, 0xbf,
0x2f, 0x2c, 0x5c, 0x38, 0xa3, 0xb3, 0xa4, 0xa4, 0xa4, 0x25, 0x3c, 0x32, 0xb2, 0xfd, 0x6a, 0x42,
0xbc, 0x84, 0xd2, 0xe9, 0x8a, 0x7b, 0x00, 0xb8, 0x7a, 0x87, 0x41, 0xda, 0xed, 0x5c, 0xb8, 0x9d,
0x7d, 0x07, 0xc2, 0xa2, 0x93, 0xc0, 0xde, 0xe9, 0xb2, 0x04, 0x9f, 0x47, 0x27, 0x15, 0xcc, 0xae,
0x5d, 0xbb, 0x18, 0x5a, 0x71, 0x39, 0x7b, 0x0c, 0x0c, 0x0c, 0xf2, 0xb0, 0xa6, 0x38, 0x00, 0x74,
0x96, 0xab, 0xe4, 0x35, 0x69, 0xd2, 0xa4, 0x37, 0x1a, 0x19, 0x09, 0x16, 0x4a, 0x88, 0x9f, 0x9f,
0x5f, 0x92, 0x91, 0x91, 0x51, 0x36, 0xcd, 0x46, 0x1c, 0x18, 0x5a, 0xda, 0x69, 0x86, 0xe7, 0x26,
0x48, 0xf4, 0x50, 0x3d, 0x1d, 0xb1, 0x50, 0x54, 0x64, 0x1d, 0xbb, 0x8e, 0xf6, 0x08, 0x02, 0x80,
0xba, 0xbb, 0x86, 0x0c, 0xe9, 0x29, 0x25, 0x7e, 0x9f, 0x35, 0x6b, 0x20, 0x2d, 0x2f, 0x2d, 0x74,
0x4f, 0xb2, 0xb0, 0xe4, 0x81, 0xe1, 0x71, 0xeb, 0x97, 0xb1, 0xf1, 0x09, 0x12, 0x4f, 0x7f, 0x3e,
0xa4, 0xa4, 0x67, 0x43, 0x66, 0xce, 0x1d, 0x4c, 0x9b, 0x04, 0x88, 0x4f, 0x4a, 0x07, 0xd4, 0x01,
0x16, 0x96, 0x27, 0x5f, 0x2f, 0xd2, 0xd6, 0xae, 0xa1, 0xc1, 0xf2, 0xe0, 0xc1, 0x83, 0x39, 0x38,
0xba, 0xdf, 0x10, 0x08, 0x04, 0x11, 0xd8, 0xa1, 0x7d, 0x71, 0xfc, 0xe6, 0x00, 0x1c, 0x55, 0x92,
0x9d, 0x4a, 0xf3, 0xe8, 0x98, 0x90, 0x8e, 0xaf, 0x4d, 0x4d, 0x4d, 0x79, 0x58, 0xac, 0x3c, 0x2a,
0x14, 0x45, 0x66, 0xba, 0x79, 0xf3, 0x66, 0xcc, 0x8e, 0x1d, 0x3b, 0x0a, 0x08, 0xc8, 0xf2, 0xe5,
0xcb, 0xd9, 0xe3, 0x11, 0xf4, 0x60, 0x25, 0x2d, 0xdb, 0xc4, 0x4e, 0xf8, 0x37, 0x5b, 0x1b, 0x5c,
0x0a, 0x21, 0xcb, 0xd4, 0x11, 0x00, 0x0d, 0x0d, 0xf5, 0x97, 0xb3, 0x67, 0xf7, 0x93, 0x4e, 0x9d,
0x3a, 0xaa, 0xab, 0xe5, 0xd1, 0xb3, 0xea, 0x15, 0x86, 0xee, 0x2f, 0xd7, 0x1d, 0x0d, 0x92, 0xe8,
0x9a, 0x47, 0x4a, 0xa6, 0x6f, 0x74, 0x82, 0x2b, 0x81, 0x89, 0x20, 0xcc, 0xbb, 0x0b, 0x21, 0xfc,
0x44, 0xb8, 0x99, 0x9a, 0x05, 0x3e, 0x7e, 0xd7, 0xe0, 0x6e, 0x21, 0x03, 0x22, 0x64, 0xab, 0x93,
0xa7, 0xac, 0x9e, 0xe1, 0x6e, 0x12, 0x3c, 0x79, 0xf2, 0x64, 0xde, 0xc0, 0x81, 0x03, 0x79, 0xdd,
0x7e, 0x23, 0x20, 0xd9, 0x46, 0x11, 0xd0, 0x94, 0x1d, 0x4f, 0x5c, 0xee, 0x7e, 0x83, 0x9a, 0x9a,
0x9a, 0xcf, 0xb6, 0x6d, 0xdb, 0x78, 0xd1, 0xd1, 0xd1, 0xc4, 0x4e, 0x2c, 0x18, 0x02, 0x82, 0xef,
0xdd, 0x21, 0x20, 0xa8, 0x9c, 0x3d, 0xc7, 0xa4, 0xc3, 0x2e, 0x8a, 0x48, 0x5c, 0x5c, 0x5c, 0x2b,
0xb1, 0x15, 0x6d, 0x55, 0x18, 0x01, 0x16, 0xc0, 0xcc, 0x99, 0x33, 0xdb, 0x35, 0x35, 0xc7, 0xbf,
0xba, 0xe0, 0x78, 0xb9, 0x65, 0xe6, 0x26, 0x47, 0xf1, 0x41, 0x27, 0x01, 0xb8, 0xc5, 0x97, 0x82,
0x7d, 0xf8, 0x5d, 0xd8, 0x63, 0x9f, 0x02, 0x3f, 0xe8, 0x5d, 0x81, 0x0b, 0xee, 0x7c, 0xc8, 0x10,
0x16, 0x80, 0x9b, 0x67, 0x2c, 0x94, 0x94, 0x55, 0x63, 0x17, 0xbf, 0x01, 0x45, 0xf7, 0xaa, 0xa8,
0xd9, 0x49, 0x0d, 0x0f, 0x1b, 0x3d, 0x51, 0x56, 0x56, 0xf6, 0xa5, 0xd3, 0x13, 0x99, 0x9d, 0xb4,
0x85, 0xad, 0x44, 0xf9, 0x91, 0x4e, 0xc7, 0xbb, 0x9f, 0x9e, 0xa9, 0xa1, 0x7c, 0x43, 0x47, 0xdd,
0x74, 0x64, 0xc1, 0x45, 0x87, 0x3b, 0xab, 0x5f, 0xb9, 0x72, 0x25, 0x2f, 0x20, 0x20, 0x80, 0x5d,
0x7e, 0x12, 0x13, 0x13, 0x63, 0x69, 0xc1, 0x26, 0x20, 0x36, 0x36, 0x36, 0x74, 0x34, 0xc8, 0xee,
0xd0, 0x42, 0xa1, 0xb0, 0x35, 0x38, 0x38, 0xb8, 0x45, 0x11, 0x40, 0x4b, 0x5b, 0x47, 0xf5, 0x0c,
0x5d, 0x07, 0xc9, 0x21, 0x97, 0x0c, 0xd8, 0x7e, 0x5e, 0x00, 0x1b, 0x4e, 0xdf, 0x80, 0x55, 0xe6,
0x09, 0xb0, 0xcc, 0x24, 0x06, 0xb6, 0x5a, 0x27, 0xc0, 0x94, 0x55, 0xd6, 0x92, 0xd4, 0xb4, 0x34,
0x49, 0x7d, 0x83, 0x08, 0xae, 0x78, 0x26, 0x60, 0x61, 0x57, 0x82, 0x27, 0x2f, 0x99, 0x05, 0x51,
0x5e, 0x51, 0x2e, 0x3e, 0x6e, 0x6e, 0x96, 0xbd, 0xc6, 0x62, 0x4d, 0xef, 0x77, 0x1e, 0x57, 0xfe,
0x1f, 0x07, 0xb1, 0xbd, 0xe8, 0x3c, 0x93, 0x42, 0x85, 0x60, 0x9c, 0x14, 0xc1, 0xec, 0xde, 0xbd,
0x9b, 0x87, 0xf9, 0xe8, 0x8f, 0x05, 0x7e, 0x9b, 0x40, 0xe8, 0xea, 0xea, 0xb2, 0xc7, 0xe0, 0x1c,
0x95, 0x72, 0x00, 0x66, 0xcc, 0x9e, 0xfb, 0x74, 0xfe, 0x2e, 0x8f, 0xae, 0x43, 0xce, 0xe9, 0xb0,
0xe3, 0x82, 0x00, 0xd6, 0x9f, 0xba, 0x01, 0x9b, 0x6d, 0xae, 0x83, 0xd6, 0x3e, 0x1f, 0xd0, 0x3a,
0x14, 0x06, 0xba, 0x96, 0xb1, 0x30, 0x46, 0xdb, 0xa2, 0x63, 0xe3, 0xe6, 0xcd, 0xd5, 0xe9, 0x19,
0x19, 0xaf, 0x19, 0xa6, 0x16, 0x5c, 0x3d, 0x92, 0xa0, 0xb0, 0xa8, 0x02, 0x3c, 0x78, 0xb7, 0xf0,
0x5a, 0x85, 0x52, 0xd4, 0x65, 0x7c, 0xe2, 0xf8, 0x4d, 0x5c, 0x73, 0x7b, 0xfc, 0x21, 0x00, 0xef,
0xf8, 0xbd, 0x4a, 0x03, 0x65, 0x9d, 0xc2, 0xaf, 0x3a, 0xb4, 0x7e, 0xf2, 0x70, 0x77, 0x88, 0xa3,
0x93, 0x0c, 0x62, 0x0b, 0xf4, 0x3e, 0x23, 0x63, 0xa1, 0xda, 0x1e, 0xbd, 0x94, 0xbb, 0xbe, 0x5a,
0x6e, 0x29, 0xa1, 0xb4, 0xd1, 0x47, 0xe3, 0xb7, 0xdb, 0xa5, 0x82, 0xb1, 0x5b, 0x3a, 0xcc, 0xd5,
0x73, 0x80, 0xd9, 0xdb, 0x2e, 0xc1, 0x22, 0xa3, 0x30, 0xd0, 0x39, 0x14, 0x24, 0xfe, 0x62, 0x8e,
0x11, 0x7f, 0xc4, 0x88, 0x11, 0xfd, 0x8e, 0x18, 0x1b, 0x27, 0x08, 0xb3, 0xb2, 0x5e, 0x95, 0x94,
0x56, 0x81, 0xab, 0x67, 0x32, 0xee, 0xd1, 0xa5, 0xe0, 0xee, 0x73, 0x1b, 0x01, 0x54, 0x82, 0x30,
0x3b, 0xbb, 0xf3, 0xe8, 0x09, 0x93, 0xd0, 0xff, 0x18, 0x40, 0x37, 0x30, 0xbd, 0x51, 0xe6, 0xd0,
0x24, 0xcb, 0x45, 0x65, 0xca, 0x94, 0x29, 0x41, 0x5a, 0x5a, 0x5a, 0xf9, 0xf3, 0xe6, 0xcd, 0x63,
0xcf, 0x55, 0xc3, 0xe2, 0x52, 0x45, 0x1a, 0xda, 0xa6, 0xd2, 0xfd, 0x4e, 0xa9, 0xb0, 0xd3, 0x3e,
0x1d, 0xcc, 0x7d, 0x72, 0xe0, 0x5c, 0x48, 0x1e, 0x6b, 0xfc, 0xac, 0xad, 0x8e, 0xa0, 0x75, 0x30,
0x14, 0xd6, 0x9a, 0xc6, 0xc0, 0xb8, 0x15, 0xe7, 0xcb, 0x34, 0xb4, 0x1d, 0xfb, 0x90, 0x5e, 0xf4,
0x70, 0xcf, 0x5f, 0x8c, 0x8d, 0x53, 0xb2, 0xb3, 0xb3, 0xbb, 0xee, 0x16, 0x96, 0x21, 0x88, 0x5b,
0x90, 0x93, 0x5b, 0x8c, 0x20, 0xb2, 0x59, 0x10, 0x98, 0x66, 0xcf, 0x7f, 0x39, 0x76, 0xd4, 0xf9,
0x4f, 0x03, 0xe8, 0x16, 0x95, 0x29, 0x2c, 0x9d, 0xfd, 0x0a, 0xc4, 0x77, 0xd0, 0xa0, 0xc1, 0xc2,
0x71, 0xdf, 0x6f, 0x79, 0x3c, 0x73, 0xcb, 0x25, 0xc9, 0x11, 0x77, 0x21, 0x98, 0x78, 0xe5, 0x80,
0x5b, 0x5c, 0x31, 0x78, 0x5e, 0xbd, 0x0f, 0x73, 0xb6, 0xd9, 0xc3, 0xcc, 0xcd, 0xf6, 0x30, 0xff,
0x40, 0x30, 0xac, 0x33, 0x8f, 0x85, 0x2f, 0x57, 0xd9, 0xd7, 0x7f, 0xa1, 0x73, 0xea, 0x73, 0x45,
0x9d, 0xfa, 0xfa, 0xfa, 0xbd, 0x8e, 0x1e, 0x3b, 0x96, 0x9e, 0x9d, 0x93, 0xf3, 0x9a, 0x8c, 0x77,
0xf5, 0xba, 0x8d, 0x63, 0x7a, 0x21, 0x82, 0xc9, 0x86, 0xe2, 0xe2, 0x0a, 0x1c, 0xc9, 0x13, 0x3a,
0x8c, 0x8e, 0x1e, 0x35, 0xfb, 0x20, 0x00, 0xba, 0x81, 0x19, 0xd9, 0x57, 0x4d, 0xc3, 0x64, 0x8c,
0xb6, 0xd9, 0xe3, 0x15, 0x47, 0x42, 0xc5, 0xa6, 0xbc, 0x7c, 0x70, 0xe0, 0x17, 0x41, 0x7c, 0x56,
0x1d, 0xf0, 0xae, 0x95, 0xc0, 0x9c, 0x1d, 0xce, 0xf0, 0xdd, 0xc6, 0x73, 0xf0, 0xd3, 0xfe, 0x20,
0x58, 0x6f, 0x11, 0x07, 0x13, 0x57, 0x3b, 0x34, 0x8d, 0x5a, 0x64, 0x3b, 0xfe, 0x5d, 0xba, 0xb0,
0x59, 0xf5, 0x39, 0x62, 0x72, 0x2c, 0x3b, 0x3b, 0x27, 0x5b, 0x7c, 0x3b, 0xb3, 0x10, 0x5c, 0xdc,
0x33, 0x71, 0xcc, 0xc8, 0xc4, 0xd1, 0xfc, 0x2e, 0x60, 0xef, 0x81, 0x90, 0xb0, 0xb0, 0xf6, 0x7d,
0x87, 0x0e, 0x2c, 0xfd, 0xb0, 0x00, 0xb0, 0xc0, 0xbe, 0x5a, 0xed, 0x50, 0xa7, 0x6f, 0x77, 0x03,
0x6c, 0x43, 0x8b, 0x80, 0x9f, 0x5e, 0x03, 0x05, 0xcc, 0x43, 0x70, 0x8d, 0xb9, 0x07, 0xf3, 0xf6,
0x78, 0xc0, 0x8c, 0x0d, 0x67, 0xe1, 0xc7, 0xbd, 0x7e, 0xac, 0xf1, 0x5f, 0xaf, 0x73, 0x6a, 0x55,
0xd7, 0xb6, 0x9d, 0xf1, 0x7b, 0xfa, 0x30, 0x12, 0xca, 0xc6, 0x27, 0x4c, 0xee, 0x60, 0x24, 0xc4,
0xc2, 0xac, 0x02, 0x48, 0xbd, 0x95, 0x03, 0x48, 0xe1, 0x10, 0x13, 0x13, 0x03, 0x05, 0x05, 0x05,
0x60, 0x71, 0xca, 0x8a, 0x61, 0x33, 0xe0, 0x43, 0x01, 0x18, 0xbd, 0xd8, 0xe6, 0x6b, 0xad, 0x7d,
0xbe, 0x6d, 0xce, 0x31, 0x25, 0x90, 0x55, 0xda, 0x02, 0x59, 0x25, 0xcd, 0x70, 0x00, 0x8b, 0x77,
0xa1, 0x61, 0x00, 0x4c, 0x5f, 0x6f, 0x0d, 0xb3, 0x77, 0x7a, 0x63, 0xda, 0xc4, 0xc1, 0xff, 0x6c,
0x70, 0x79, 0x38, 0x7a, 0xf1, 0x59, 0x9d, 0x7f, 0x47, 0xe7, 0x9e, 0x3d, 0x7b, 0xfa, 0x1f, 0x33,
0x3d, 0x7e, 0x2f, 0x2b, 0x3b, 0x5b, 0x8a, 0x75, 0x81, 0xfb, 0x46, 0x04, 0x60, 0xd3, 0x04, 0x1c,
0xe3, 0x21, 0x34, 0x2c, 0xec, 0xc9, 0xae, 0x7d, 0xfb, 0x66, 0x7d, 0x30, 0x00, 0x1a, 0xda, 0xb6,
0x5f, 0xcc, 0xdb, 0xc3, 0x6b, 0x36, 0xe7, 0xe5, 0x81, 0x6d, 0x70, 0x01, 0xcb, 0xf3, 0x3a, 0xc6,
0x51, 0x6c, 0xda, 0xcc, 0xda, 0xe1, 0x01, 0x3f, 0x1f, 0xe1, 0xc3, 0x4f, 0x7b, 0xfc, 0x1f, 0x8f,
0x59, 0x62, 0xb3, 0xf3, 0x8f, 0xe8, 0xc5, 0x48, 0x0c, 0x3a, 0x66, 0x6a, 0x5a, 0x8a, 0xec, 0x24,
0x25, 0xc3, 0xb1, 0xa9, 0xb2, 0x11, 0x38, 0xef, 0xe0, 0xd0, 0xa2, 0x6f, 0x60, 0x30, 0xe6, 0x83,
0xfe, 0x50, 0x3d, 0x61, 0xa5, 0x7d, 0xe9, 0x81, 0x4b, 0x02, 0x58, 0x7b, 0xf2, 0x1a, 0x1a, 0x1f,
0x0d, 0x3f, 0xea, 0xbb, 0xc1, 0xcc, 0xed, 0x57, 0xe0, 0x47, 0x83, 0x50, 0x58, 0x63, 0x76, 0x15,
0xc6, 0x2e, 0x3b, 0x9f, 0xf9, 0x9f, 0xe8, 0xdd, 0xbb, 0x77, 0xaf, 0xaa, 0x89, 0xa9, 0xe9, 0xfd,
0xd0, 0xf0, 0xf0, 0x8e, 0x94, 0xd4, 0x54, 0xec, 0xd8, 0x1e, 0x4f, 0x0c, 0x8d, 0x8c, 0xdc, 0x3f,
0x68, 0x0d, 0x90, 0x8c, 0x58, 0x6a, 0xfb, 0x8d, 0xe6, 0x06, 0xe7, 0x16, 0xaa, 0x03, 0xed, 0xc3,
0x11, 0xac, 0xf1, 0xb3, 0xf7, 0x86, 0xc0, 0x2a, 0x8b, 0x44, 0x98, 0x46, 0xa9, 0xa3, 0x73, 0x76,
0xec, 0x9f, 0xd1, 0xbf, 0xdb, 0xc0, 0x60, 0xfe, 0x81, 0x83, 0x07, 0xad, 0x30, 0x75, 0x7e, 0xfa,
0xe0, 0x2c, 0xc4, 0xc9, 0xa8, 0xa5, 0x67, 0xd7, 0x68, 0xea, 0x5e, 0x7a, 0xa8, 0x7b, 0x32, 0x16,
0x56, 0x9d, 0x88, 0x85, 0xb5, 0x96, 0x49, 0x30, 0x77, 0xaf, 0x7f, 0xbb, 0xc6, 0x92, 0x73, 0x27,
0xff, 0x92, 0xff, 0x9e, 0xf0, 0x57, 0x28, 0xd5, 0xd0, 0x39, 0xf3, 0xdd, 0x98, 0xa5, 0x76, 0x77,
0x27, 0xad, 0x71, 0x68, 0x9a, 0xb0, 0xf2, 0x42, 0xdd, 0x98, 0xa5, 0xe7, 0x4e, 0xfc, 0x55, 0xff,
0x31, 0xe4, 0x5f, 0x0c, 0x23, 0x04, 0xad, 0xd0, 0x8d, 0x5e, 0x79, 0x00, 0x00, 0x00, 0x00, 0x49,
0x45, 0x4e, 0x44, 0xae, 0x42, 0x60, 0x82,
};
const BITMAP_OPAQUE wizard_add_fplib_icon_xpm[1] = {{ png, sizeof( png ), "wizard_add_fplib_icon_xpm" }};
//EOF

View File

@ -1,6 +1,4 @@
<?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#"
@ -10,80 +8,14 @@
xmlns:xlink="http://www.w3.org/1999/xlink"
xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
width="26"
height="26"
id="svg3019"
width="26"
version="1.1"
inkscape:version="0.48.1 r9760"
id="svg2"
inkscape:version="0.48.4 r9939"
sodipodi:docname="auto_delete_track.svg">
<defs
id="defs3021">
<linearGradient
id="linearGradient3165">
<stop
style="stop-color:#f68273;stop-opacity:1;"
offset="0"
id="stop3167" />
<stop
id="stop3165"
offset="0.5"
style="stop-color:#cd2923;stop-opacity:1;" />
<stop
style="stop-color:#8c0000;stop-opacity:1"
offset="1"
id="stop3169" />
</linearGradient>
<linearGradient
inkscape:collect="always"
xlink:href="#linearGradient3165"
id="linearGradient3186"
x1="9.5"
y1="2.5"
x2="14.909858"
y2="21.491209"
gradientUnits="userSpaceOnUse"
gradientTransform="matrix(0.98251411,0,0,0.98913061,2.0822965,1025.7779)" />
<linearGradient
y2="21.491209"
x2="15.409858"
y1="2.5"
x1="10"
gradientTransform="matrix(0.98251411,0,0,0.98913061,1.5910398,1025.7779)"
gradientUnits="userSpaceOnUse"
id="linearGradient3017"
xlink:href="#linearGradient3165"
inkscape:collect="always" />
</defs>
<sodipodi:namedview
id="base"
pagecolor="#ffffff"
bordercolor="#666666"
borderopacity="1.0"
inkscape:pageopacity="0.0"
inkscape:pageshadow="2"
inkscape:zoom="22.4"
inkscape:cx="14.142857"
inkscape:cy="13.409153"
inkscape:document-units="px"
inkscape:current-layer="layer1"
showgrid="true"
inkscape:window-width="1600"
inkscape:window-height="876"
inkscape:window-x="0"
inkscape:window-y="24"
inkscape:window-maximized="1"
inkscape:snap-to-guides="false"
inkscape:snap-grids="false">
<inkscape:grid
type="xygrid"
id="grid3027"
empspacing="5"
visible="true"
enabled="true"
snapvisiblegridlinesonly="true" />
</sodipodi:namedview>
<metadata
id="metadata3024">
id="metadata40">
<rdf:RDF>
<cc:Work
rdf:about="">
@ -94,27 +26,123 @@
</cc:Work>
</rdf:RDF>
</metadata>
<sodipodi:namedview
pagecolor="#4a4a4a"
bordercolor="#666666"
borderopacity="1"
objecttolerance="10"
gridtolerance="10"
guidetolerance="10"
inkscape:pageopacity="0"
inkscape:pageshadow="2"
inkscape:window-width="1366"
inkscape:window-height="744"
id="namedview38"
showgrid="true"
inkscape:snap-to-guides="true"
inkscape:snap-grids="true"
inkscape:zoom="21.730769"
inkscape:cx="17.716814"
inkscape:cy="8.9044248"
inkscape:window-x="0"
inkscape:window-y="24"
inkscape:window-maximized="1"
inkscape:current-layer="svg2"
showguides="true"
inkscape:guide-bbox="true">
<inkscape:grid
type="xygrid"
id="grid3017"
empspacing="2"
visible="true"
enabled="true"
snapvisiblegridlinesonly="true"
spacingx="0.5px"
spacingy="0.5px" />
</sodipodi:namedview>
<defs
id="defs4">
<linearGradient
inkscape:collect="always"
id="linearGradient3761">
<stop
style="stop-color:#b40000;stop-opacity:1"
offset="0"
id="stop3763" />
<stop
style="stop-color:#fa0000;stop-opacity:1"
offset="1"
id="stop3765" />
</linearGradient>
<filter
id="c"
height="1.3651"
width="1.2097"
color-interpolation-filters="sRGB"
y="-0.18257"
x="-0.10484">
<feGaussianBlur
stdDeviation="1.5978799"
id="feGaussianBlur7" />
</filter>
<filter
id="d"
height="1.4696"
width="1.4809999"
color-interpolation-filters="sRGB"
y="-0.23481999"
x="-0.24049">
<feGaussianBlur
stdDeviation="1.5978799"
id="feGaussianBlur10" />
</filter>
<linearGradient
inkscape:collect="always"
xlink:href="#linearGradient3761"
id="linearGradient3767"
x1="13"
y1="12.5"
x2="13"
y2="1.5"
gradientUnits="userSpaceOnUse" />
<filter
inkscape:collect="always"
id="filter3766">
<feGaussianBlur
inkscape:collect="always"
stdDeviation="0.25"
id="feGaussianBlur3768" />
</filter>
</defs>
<path
sodipodi:nodetypes="cc"
inkscape:connector-curvature="0"
d="m 22.5,6.5 -19,0"
style="fill:none;stroke:#999999;stroke-width:3;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none"
id="path3758" />
<g
inkscape:label="Layer 1"
inkscape:groupmode="layer"
id="layer1"
transform="translate(0,-1026.3622)">
<path
inkscape:connector-curvature="0"
style="fill:url(#linearGradient3017);fill-opacity:1;fill-rule:evenodd;stroke:none"
d="m 20.692618,1048.2026 c 0,0 -5.214797,-13.2753 -18.291902,-17.5833 l 2.1195398,-3.139 c 12.9664562,4.2059 18.2602092,19.3933 18.2602092,19.3933 z"
id="path2205"
sodipodi:nodetypes="ccccc" />
<path
inkscape:connector-curvature="0"
style="fill:url(#linearGradient3186);fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:1;marker:none;visibility:visible;display:inline;overflow:visible;enable-background:accumulate"
d="m 3.9616888,1044.486 3.9097961,3.3086 c 5.8127561,-14.9521 16.3173761,-18.404 16.3173761,-18.404 l -1.918242,-1.1257 c 0,0 -11.228168,2.0235 -18.3089302,16.2211 z"
id="path2408"
sodipodi:nodetypes="ccccc" />
<path
style="fill:none;stroke:#b00000;stroke-width:2.1474092px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
d="m 1.9572536,1050.3623 22.0229904,-0.012"
id="path3763"
inkscape:connector-curvature="0" />
transform="matrix(1.6382539,0,0,1.5572263,1.2572207,0.36314149)"
id="g16">
<rect
height="16"
width="16"
y="0"
x="0"
id="rect18"
style="fill-opacity:0" />
</g>
<path
id="path2990"
style="fill:none;stroke:#008000;stroke-width:3;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none"
d="m 24.5,6.5 -2,0 0,11 -4.5,4 -10,0 -4.5,-4 0,-11 -2,0"
inkscape:connector-curvature="0"
sodipodi:nodetypes="cccccccc" />
<path
d="M 8,2 18,12 M 8,12 18,2"
style="fill:none;stroke:#ffffff;stroke-width:3;stroke-linecap:butt;stroke-linejoin:round;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none;opacity:0.50000000000000000;filter:url(#filter3766)"
id="path3786" />
<path
id="path3766"
style="fill:none;stroke:url(#linearGradient3767);stroke-width:3;stroke-linecap:butt;stroke-linejoin:round;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none"
d="M 8,2 18,12 M 8,12 18,2" />
</svg>

Before

Width:  |  Height:  |  Size: 3.9 KiB

After

Width:  |  Height:  |  Size: 4.4 KiB

View File

@ -5,13 +5,14 @@
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:xlink="http://www.w3.org/1999/xlink"
xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
height="48"
width="48"
version="1.1"
id="svg2"
inkscape:version="0.48.1 "
inkscape:version="0.48.4 r9939"
sodipodi:docname="change_entry_orient.svg">
<metadata
id="metadata53">
@ -21,7 +22,7 @@
<dc:format>image/svg+xml</dc:format>
<dc:type
rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
<dc:title></dc:title>
<dc:title />
</cc:Work>
</rdf:RDF>
</metadata>
@ -34,12 +35,12 @@
guidetolerance="10"
inkscape:pageopacity="0"
inkscape:pageshadow="2"
inkscape:window-width="1280"
inkscape:window-height="968"
inkscape:window-width="1920"
inkscape:window-height="1033"
id="namedview51"
showgrid="false"
inkscape:zoom="9.7321397"
inkscape:cx="8.2414503"
inkscape:cx="-8.507179"
inkscape:cy="26.142558"
inkscape:window-x="-4"
inkscape:window-y="-4"
@ -176,56 +177,137 @@
stdDeviation="0.77409508"
id="feGaussianBlur3842-2" />
</filter>
<linearGradient
inkscape:collect="always"
xlink:href="#a"
id="linearGradient5269"
gradientUnits="userSpaceOnUse"
gradientTransform="matrix(-0.22841461,-0.21205346,-0.25385384,0.25152007,67.875075,27.602468)"
x1="113.16"
y1="25.785999"
x2="39.268002"
y2="25.785999" />
<linearGradient
id="a">
<stop
stop-color="#0968ef"
offset="0"
id="stop5191" />
<stop
stop-color="#aecffc"
offset="1"
id="stop5193" />
</linearGradient>
<linearGradient
inkscape:collect="always"
xlink:href="#w"
id="linearGradient5262"
gradientUnits="userSpaceOnUse"
gradientTransform="matrix(0.14240515,0.2794743,0.32350927,-0.14654455,-14.926968,6.234846)"
x1="113.16"
y1="25.785999"
x2="39.268002"
y2="25.785999" />
<linearGradient
id="w"
y2="25.785999"
gradientUnits="userSpaceOnUse"
x2="39.268002"
gradientTransform="matrix(0.41788,0.8215,0.94932,-0.43076,-50.048,24.308)"
y1="25.785999"
x1="113.16">
<stop
stop-color="#0968ef"
offset="0"
id="stop5225" />
<stop
stop-color="#aecffc"
offset="1"
id="stop5227" />
</linearGradient>
<linearGradient
y2="25.785999"
x2="39.268002"
y1="25.785999"
x1="113.16"
gradientTransform="matrix(0.14240515,0.2794743,0.32350927,-0.14654455,-14.926968,6.234846)"
gradientUnits="userSpaceOnUse"
id="linearGradient5306"
xlink:href="#w"
inkscape:collect="always" />
<linearGradient
inkscape:collect="always"
xlink:href="#w"
id="linearGradient5356"
gradientUnits="userSpaceOnUse"
gradientTransform="matrix(0.1544415,0.28350851,0.35085289,-0.14865992,-18.171522,8.2663206)"
x1="113.16"
y1="25.785999"
x2="39.268002"
y2="25.785999" />
<linearGradient
inkscape:collect="always"
xlink:href="#a"
id="linearGradient5359"
gradientUnits="userSpaceOnUse"
gradientTransform="matrix(-0.24772065,-0.21511445,-0.27531005,0.25515076,71.629107,29.942384)"
x1="113.16"
y1="25.785999"
x2="39.268002"
y2="25.785999" />
</defs>
<g
id="g3890"
transform="translate(34.422029,34.730287)">
<g
id="g35-5"
transform="matrix(0,2.9379,-2.1996,0,8.491481,-32.124217)">
<rect
style="fill-opacity:0"
id="rect37-5"
x="0"
y="0"
width="16"
height="16" />
</g>
<path
transform="matrix(0,0.91790986,-0.91920821,0,11.841319,-33.997331)"
inkscape:connector-curvature="0"
id="path3800-8-1"
d="m 7.8690809,3.4934004 41.1855461,40.6965116 0,0"
style="opacity:0.26068373;fill:none;stroke:#37574d;stroke-width:6.38199997;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none;filter:url(#filter3840-8)" />
<path
inkscape:connector-curvature="0"
id="path3800-7"
d="m 8.5224219,-31.309913 -38.1711689,38.464589 0,0"
style="opacity:0.57692309;fill:none;stroke:#0539b2;stroke-width:5.9735837;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none" />
transform="matrix(0,2.9379,-2.1996,0,42.91351,2.60607)"
id="g35-5">
<rect
height="16"
width="16"
y="0"
x="0"
id="rect37-5"
style="fill-opacity:0" />
</g>
<path
style="opacity:0.26068373;fill:none;stroke:#37574d;stroke-width:6.38199997;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none;filter:url(#filter3840-8)"
d="m 7.8690809,3.4934004 41.1855461,40.6965116 0,0"
id="path3800-8-1"
inkscape:connector-curvature="0"
transform="matrix(0,0.91790986,-0.91920821,0,46.263348,0.732956)" />
<path
inkscape:connector-curvature="0"
style="fill:url(#linearGradient5359);fill-rule:evenodd"
id="path5239"
d="m 33.53467,10.33595 11.330688,0.476184 0.669278,2.389995 -3.8141,0.479704 c 9.277651,8.056611 5.785458,17.035015 0.276844,22.356277 l -3.757555,-2.906799 c 4.080201,-4.366342 7.546153,-8.910415 -0.636423,-16.015901 l -0.835036,4.213112 -2.792572,-0.726699 z" />
<path
style="opacity:0.52083333;fill:#000000;fill-opacity:1;stroke:#991d1d;stroke-width:5.9735837;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none"
d="M 42.327937,3.728631 4.156768,42.19322 l 0,0"
id="path3800-7"
inkscape:connector-curvature="0" />
<g
id="g3844">
<g
id="g35"
transform="matrix(2.9379,0,0,2.1996,2.1067,3.2221)">
<rect
id="rect37"
x="0"
y="0"
width="16"
height="16"
fill-opacity="0" />
</g>
<path
transform="matrix(0.91790986,0,0,0.91920821,0.23358571,-0.12773803)"
inkscape:connector-curvature="0"
id="path3800-8"
d="m 7.8690809,3.4934004 41.1855461,40.6965116 0,0"
style="opacity:0.26068373;fill:none;stroke:#37574d;stroke-width:6.38199997;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none;filter:url(#filter3840)" />
<path
inkscape:connector-curvature="0"
id="path3800"
d="m 2.9210036,3.1911591 38.4645894,38.1711689 0,0"
style="fill:none;stroke:#73ce06;stroke-width:5.9735837;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none" />
transform="matrix(2.9379,0,0,2.1996,2.8259663,3.3248523)"
id="g35">
<rect
style="fill-opacity:0"
height="16"
width="16"
y="0"
x="0"
id="rect37" />
</g>
<path
inkscape:connector-curvature="0"
style="fill:url(#linearGradient5356);fill-rule:evenodd"
id="path5249"
d="M 10.463058,39.219997 0.00384922,35.037945 0.24246703,32.574716 3.9974341,33.382448 C -1.7869153,22.76477 4.7456186,15.491215 11.84369,12.31378 l 2.471883,3.966358 C 8.9037643,19.032155 4.0038279,22.153579 9.1051871,31.51816 l 2.3112269,-3.677845 2.35687,1.602486 z" />
<path
style="opacity:0.26068373;fill:none;stroke:#37574d;stroke-width:6.38199997;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none;filter:url(#filter3840)"
d="m 7.8690809,3.4934004 41.1855461,40.6965116 0,0"
id="path3800-8"
inkscape:connector-curvature="0"
transform="matrix(0.91790986,0,0,0.91920821,0.952852,-0.0249857)" />
<path
style="fill:none;stroke:#01a706;stroke-width:5.9735837;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none"
d="M 3.6402699,3.2939114 42.104859,41.46508 l 0,0"
id="path3800"
inkscape:connector-curvature="0" />
</svg>

Before

Width:  |  Height:  |  Size: 6.3 KiB

After

Width:  |  Height:  |  Size: 9.3 KiB

View File

@ -0,0 +1,134 @@
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<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"
height="26"
width="26"
version="1.1"
id="svg2"
inkscape:version="0.48.4 r9939"
sodipodi:docname="contrast_mode.svg">
<metadata
id="metadata40">
<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 />
</cc:Work>
</rdf:RDF>
</metadata>
<sodipodi:namedview
pagecolor="#ffffff"
bordercolor="#666666"
borderopacity="1"
objecttolerance="10"
gridtolerance="10"
guidetolerance="10"
inkscape:pageopacity="0"
inkscape:pageshadow="2"
inkscape:window-width="1366"
inkscape:window-height="744"
id="namedview38"
showgrid="true"
inkscape:snap-to-guides="false"
inkscape:snap-grids="true"
inkscape:zoom="22.961538"
inkscape:cx="20.424858"
inkscape:cy="13.471585"
inkscape:window-x="0"
inkscape:window-y="24"
inkscape:window-maximized="1"
inkscape:current-layer="svg2"
showguides="true"
inkscape:guide-bbox="true">
<inkscape:grid
type="xygrid"
id="grid3017"
empspacing="2"
visible="true"
enabled="true"
snapvisiblegridlinesonly="true"
spacingx="0.5px"
spacingy="0.5px" />
</sodipodi:namedview>
<defs
id="defs4">
<filter
id="c"
height="1.3651"
width="1.2097"
color-interpolation-filters="sRGB"
y="-0.18257"
x="-0.10484">
<feGaussianBlur
stdDeviation="1.5978799"
id="feGaussianBlur7" />
</filter>
<filter
id="d"
height="1.4696"
width="1.4809999"
color-interpolation-filters="sRGB"
y="-0.23481999"
x="-0.24049">
<feGaussianBlur
stdDeviation="1.5978799"
id="feGaussianBlur10" />
</filter>
</defs>
<path
sodipodi:nodetypes="cc"
inkscape:connector-curvature="0"
id="path3960"
style="fill:none;stroke:#808080;stroke-width:3;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none"
d="m 17.5,8.5 6.5,0" />
<path
style="fill:#d40000;fill-opacity:1;stroke:none"
d="m 11,10 5.5,0 3,-3 -8.5,0 z"
id="path3958"
inkscape:connector-curvature="0"
sodipodi:nodetypes="ccccc" />
<path
d="M 11,8.5 9,3.5"
style="fill:none;stroke:#d40000;stroke-width:3;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none"
id="path3006"
inkscape:connector-curvature="0"
sodipodi:nodetypes="cc" />
<path
id="path2990"
style="fill:none;stroke:#008000;stroke-width:3;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none"
d="M 13.5,13.5 7,13.5 2.5,3.5 m 11,10 5.5,0 4.5,10"
inkscape:connector-curvature="0"
sodipodi:nodetypes="cccccc" />
<path
d="M 8.5,18.5 2,18.5"
style="fill:none;stroke:#d40000;stroke-width:3;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none"
id="path3962"
inkscape:connector-curvature="0"
sodipodi:nodetypes="cc" />
<path
sodipodi:nodetypes="ccccc"
inkscape:connector-curvature="0"
id="path3964"
d="m 15,17 -5.5,0 -3,3 8.5,0 z"
style="fill:#808080;fill-opacity:1;stroke:none" />
<path
sodipodi:nodetypes="cc"
inkscape:connector-curvature="0"
id="path3966"
style="fill:none;stroke:#808080;stroke-width:3;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none"
d="m 15,18.5 2,5" />
<path
style="fill:none;stroke:#999999;stroke-width:1.5;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none"
d="m 1.5,24.5 23,-23"
id="path4065"
inkscape:connector-curvature="0" />
</svg>

After

Width:  |  Height:  |  Size: 4.3 KiB

View File

@ -1,110 +1,153 @@
<svg xmlns="http://www.w3.org/2000/svg" height="48" width="48" version="1.0" xmlns:xlink="http://www.w3.org/1999/xlink">
<defs>
<linearGradient id="a">
<stop offset="0"/>
<stop stop-opacity="0" offset="1"/>
</linearGradient>
<linearGradient id="w">
<stop stop-color="#393a38" offset="0"/>
<stop stop-color="#393a38" stop-opacity="0" offset="1"/>
</linearGradient>
<linearGradient id="v">
<stop offset="0"/>
<stop stop-opacity=".68235" offset=".40659"/>
<stop stop-opacity=".48736" offset=".4533"/>
<stop stop-opacity=".36101" offset=".5"/>
<stop stop-opacity=".15162" offset=".70604"/>
<stop stop-opacity="0" offset="1"/>
</linearGradient>
<radialGradient id="aj" fx="95.481" gradientUnits="userSpaceOnUse" cy="121.47" cx="63.847" gradientTransform="matrix(1 0 0 .10227 0 109.05)" r="63.847">
<stop offset="0"/>
<stop stop-opacity="0" offset="1"/>
</radialGradient>
<linearGradient id="an" y2="73.415" xlink:href="#v" gradientUnits="userSpaceOnUse" x2="-123.67" y1="74.96" x1="-146.75"/>
<linearGradient id="z" y2="63.447" xlink:href="#v" gradientUnits="userSpaceOnUse" x2="-118.91" y1="64.065" x1="-82.51"/>
<linearGradient id="aa" y2="33.764" xlink:href="#a" gradientUnits="userSpaceOnUse" x2="-118.3" y1="78.294" x1="-113.64"/>
<radialGradient id="x" gradientUnits="userSpaceOnUse" cy="131.47" cx="29.962" gradientTransform="matrix(.27518 -.0064611 .0014253 .063649 3.1395 118.25)" r="27.02">
<stop stop-color="#fff" offset="0"/>
<stop stop-color="#fff" stop-opacity="0" offset="1"/>
</radialGradient>
<radialGradient id="y" xlink:href="#a" gradientUnits="userSpaceOnUse" cy="130.94" cx="27.566" gradientTransform="matrix(.38772 0 0 .1113 .048639 111.4)" r="27.02"/>
<linearGradient id="ab" y2="122.54" gradientUnits="userSpaceOnUse" x2="24.946" gradientTransform="matrix(.38772 0 0 .39701 .048639 77.543)" y1="111.04" x1="24.651">
<stop stop-color="#fff" offset="0"/>
<stop stop-color="#fff" stop-opacity="0" offset="1"/>
</linearGradient>
<linearGradient id="b" y2="135.74" xlink:href="#a" gradientUnits="userSpaceOnUse" x2="22.669" gradientTransform="matrix(.38772 0 0 .39701 .048639 77.543)" y1="104.75" x1="23.023"/>
<linearGradient id="ac" y2="59.811" gradientUnits="userSpaceOnUse" x2="41.438" gradientTransform="matrix(.38772 0 0 .39701 .048639 77.543)" y1="22.051" x1="78.569">
<stop offset="0"/>
<stop stop-opacity="0" offset="1"/>
</linearGradient>
<radialGradient id="ak" gradientUnits="userSpaceOnUse" cy="73.864" cx="-16.603" gradientTransform="matrix(.37328 .041247 .040871 2.7707 12.855 -94.521)" r="4.3906">
<stop stop-color="#fff" offset="0"/>
<stop stop-color="#fff" stop-opacity="0" offset="1"/>
</radialGradient>
<linearGradient id="ad" y2="85.424" gradientUnits="userSpaceOnUse" x2="74.325" gradientTransform="matrix(.38772 0 0 .39701 .048639 79.661)" y1="112.1" x1="98.67">
<stop stop-opacity=".44765" offset="0"/>
<stop stop-opacity=".13357" offset=".5"/>
<stop stop-opacity="0" offset="1"/>
</linearGradient>
<linearGradient id="ae" y2="88.409" xlink:href="#w" gradientUnits="userSpaceOnUse" x2="76.362" gradientTransform="matrix(.37328 .041247 .0060014 .40685 .50668 76.511)" y1="117.21" x1="95.847"/>
<linearGradient id="af" y2="58.653" xlink:href="#w" gradientUnits="userSpaceOnUse" x2="105.06" gradientTransform="matrix(.37328 .041247 .0060014 .40685 .50668 76.511)" y1="146.89" x1="87.068"/>
<radialGradient id="al" fx="115.73" fy="56.281" gradientUnits="userSpaceOnUse" cy="65.848" cx="104.66" gradientTransform="matrix(.17585 -.10373 .40016 .71126 -7.7874 67.902)" r="29.999">
<stop stop-color="#fff" offset="0"/>
<stop stop-color="#fff" stop-opacity="0" offset="1"/>
</radialGradient>
<linearGradient id="ag" y2="69.992" spreadMethod="reflect" gradientUnits="userSpaceOnUse" x2="79.544" gradientTransform="matrix(.37277 -.017336 -.0021394 .44507 3.1564 76.357)" y1="52.469" x1="106.27">
<stop stop-color="#9a7600" offset="0"/>
<stop stop-color="#e3ad00" offset=".09292"/>
<stop stop-color="#ffcd2c" offset=".50432"/>
<stop stop-color="#e3ad00" offset=".91571"/>
<stop stop-color="#b98d00" offset="1"/>
</linearGradient>
<linearGradient id="ah" y2="93.568" xlink:href="#a" gradientUnits="userSpaceOnUse" x2="-84.777" gradientTransform="matrix(.43793 .033657 .020585 .47905 58.22 73.393)" y1="116.56" x1="-116.79"/>
<radialGradient id="am" fx="70.964" fy="76.702" gradientUnits="userSpaceOnUse" cy="53.38" cx="70.624" gradientTransform="matrix(.43671 -.22947 .27399 .5313 -21.732 82.986)" r="53.565">
<stop stop-color="#fff" stop-opacity="0" offset="0"/>
<stop stop-color="#7f7f7f" stop-opacity="0" offset=".5"/>
<stop offset="1"/>
</radialGradient>
<linearGradient id="ai" y2="66.671" gradientUnits="userSpaceOnUse" x2="-27.89" gradientTransform="matrix(.43793 .033657 .020585 .47905 58.22 73.393)" y1="95.781" x1="-70.057">
<stop stop-color="#fff" offset="0"/>
<stop stop-color="#fff" offset=".42597"/>
<stop stop-color="#f1f1f1" offset=".58928"/>
<stop stop-color="#eaeaea" offset=".80220"/>
<stop stop-color="#dfdfdf" offset="1"/>
</linearGradient>
</defs>
<g transform="translate(0,-80)">
<rect opacity=".57787" height="0" width="1" y="77" x="116" fill="#fff"/>
<rect opacity=".57787" height="0" width="1" y="33.538" x="-141.37" fill="#fff"/>
<path opacity=".37705" d="m6.0093 127.44c2.655 0.022 4.8939-0.27986 5.4405-0.26605 3.616 0.0913 12.279-1.6267 8.8147-3.7388-3.7851-2.3074-14.189-2.2454-18.24-0.0206-4.4207 2.428 1.3297 4.0034 3.9843 4.0254z" fill-rule="evenodd" stroke="url(#y)" stroke-width=".84431" fill="url(#x)"/>
<path opacity=".36475" d="m127.69 121.47a63.847 6.5298 0 1 1 -127.69 0 63.847 6.5298 0 1 1 127.69 0z" transform="matrix(.38772 0 0 .39701 .048639 77.543)" fill="url(#aj)"/>
<path opacity=".25" stroke-linejoin="round" d="m33.424 83.207 13.734 25.039c1.8994 3.4628-2.2661 9.5271-9.3001 13.538-7.034 4.0106-14.282 4.4542-16.182 0.99147-1.899-3.47-11.834-21.58-13.734-25.044-1.8989-3.463 2.267-9.527 9.301-13.537 7.034-4.0106 14.282-4.4543 16.182-0.99147z" stroke-opacity=".33333" stroke-dashoffset="4" stroke="#000" stroke-linecap="round" stroke-width="1.1682" fill="none"/>
<path opacity=".3" stroke-linejoin="round" d="m33.424 83.207 13.734 25.039c1.8994 3.4628-2.2661 9.5271-9.3001 13.538-7.034 4.0106-14.282 4.4542-16.182 0.99147-1.899-3.47-11.834-21.58-13.734-25.044-1.8989-3.463 2.267-9.527 9.301-13.537 7.034-4.0106 14.282-4.4543 16.182-0.99147z" stroke-opacity=".33333" stroke-dashoffset="4" stroke="#000" stroke-linecap="round" stroke-width=".77878" fill="none"/>
<path fill="url(#ai)" d="m33.423 83.085 13.734 25.039c1.8994 3.4628-2.2661 9.5271-9.3001 13.538-7.034 4.0106-14.282 4.4542-16.182 0.99146-1.9-3.46-11.835-21.57-13.734-25.036-1.8994-3.4628 2.2661-9.5271 9.3001-13.538 7.034-4.0106 14.282-4.4542 16.182-0.99147z"/>
<path opacity=".40574" fill="url(#am)" d="m33.423 83.085 13.734 25.039c1.8994 3.4628-2.2661 9.5271-9.3001 13.538-7.034 4.0106-14.282 4.4542-16.182 0.99146-1.9-3.46-11.835-21.57-13.734-25.036-1.8994-3.4628 2.2661-9.5271 9.3001-13.538 7.034-4.0106 14.282-4.4542 16.182-0.99147z"/>
<path fill="url(#ah)" d="m33.423 83.085 13.734 25.039c1.8994 3.4628-2.2661 9.5271-9.3001 13.538-7.034 4.0106-14.282 4.4542-16.182 0.99146-1.9-3.46-11.835-21.57-13.734-25.036-1.8994-3.4628 2.2661-9.5271 9.3001-13.538 7.034-4.0106 14.282-4.4542 16.182-0.99147z"/>
<path opacity=".4" d="m-84.361 47.981a33.496 23.882 0 1 1 -66.993 0 33.496 23.882 0 1 1 66.993 0z" transform="matrix(.38042 -.21691 .14408 .26268 59.09 52.157)" fill="url(#an)"/>
<path opacity=".4" d="m-84.361 47.981a33.496 23.882 0 1 1 -66.993 0 33.496 23.882 0 1 1 66.993 0z" transform="matrix(.38042 -.21691 .14408 .26268 58.717 52.116)" fill="url(#z)"/>
<path opacity=".4" d="m-84.361 47.981a33.496 23.882 0 1 1 -66.993 0 33.496 23.882 0 1 1 66.993 0z" transform="matrix(.38042 -.21691 .14408 .26268 58.717 52.116)" fill="url(#aa)"/>
<path fill="#cacaca" d="m33.46 83.158c0.11622 0.21188 0.53583 0.96658 0.6211 1.122 1.8994 3.4628-2.2599 9.5246-9.2939 13.535-7.034 4.0106-14.276 4.4577-16.175 0.99497-0.10266-0.18716-0.59317-1.0869-0.74024-1.355 0.048724 0.54912 0.19007 1.0571 0.44752 1.5265 0.9842 1.7943 3.3607 2.5663 6.3496 2.383s6.6184-1.3189 10.182-3.3506c3.5633-2.0317 6.4077-4.5743 8.1257-7.0747 1.7179-2.5004 2.3032-4.968 1.319-6.7623-0.21456-0.39116-0.49658-0.72505-0.83492-1.0191z"/>
<path opacity=".4" fill="#babdb6" d="m29.794 81.293c-3.206-0.363-7.69 0.753-12.087 3.259-7.034 4.011-11.202 10.082-9.3031 13.544 0.1425 0.26 0.3224 0.489 0.5228 0.705-0.1043-0.137-0.2024-0.272-0.2861-0.425-1.8993-3.462 2.2691-9.533 9.3031-13.544 6.504-3.708 13.189-4.367 15.662-1.709-0.781-1.03-2.116-1.638-3.812-1.83z"/>
<path fill="url(#ag)" d="m23.108 104.54 9.6297 16.635c5.7579-2.6489 12.533-8.8374 13.632-12.946l-9.38-16.925c-1.1577 6.0247-8.2031 10.457-13.883 13.239z"/>
<path stroke-linejoin="round" d="m-84.361 47.981a33.496 23.882 0 1 1 -66.993 0 33.496 23.882 0 1 1 66.993 0z" stroke-dashoffset="4" transform="matrix(.37989 -.21697 .14389 .26266 58.645 52.107)" stroke="#fff" stroke-linecap="round" stroke-width="1.6127" fill="none"/>
<path fill="#b70000" d="m7.6345 95.042c-0.10733 0.92298 0.00976 1.7805 0.39891 2.5124 1.8376 3.456 8.6542 2.6038 15.641-1.0594 1.8682-0.97955 3.4115-2.1613 3.8182-2.5091-2.9119-1.8717-18.781-3.5503-19.858 1.0561z"/>
<path fill-opacity=".39431" d="m29.484 80.825c-0.62002-0.06894-1.2913-0.07484-2.0036-0.03099-2.8491 0.17541-6.3402 1.2615-9.7932 3.2336-3.453 1.9722-6.1928 4.4399-7.8303 6.827-0.35762 0.52132-0.65935 1.0438-0.90883 1.5497 0.2277-0.43679 0.50037-0.87218 0.8074-1.3198 1.6375-2.3871 4.3771-4.8676 7.8301-6.8397 3.453-1.9722 6.9442-3.0582 9.7932-3.2336 2.8491-0.17541 5.0442 0.5423 5.9486 2.1932 0.62176 1.135 0.56323 2.5799-0.06699 4.1434 0.71575-1.6489 0.8196-3.1722 0.1686-4.3606-0.67829-1.2382-2.0849-1.9554-3.945-2.1622zm4.0663 7.2276c-0.24118 0.46547-0.52931 0.93211-0.85275 1.4036-1.725 2.5146-4.5694 5.0704-8.1405 7.11-3.5712 2.0396-7.1976 3.1817-10.199 3.3665-3.0013 0.18478-5.3902-0.59455-6.3826-2.4062-0.6823-1.2455-0.61017-2.8146 0.061924-4.4866-0.76023 1.7588-0.87715 3.4012-0.16353 4.7039 0.99243 1.8116 3.3813 2.591 6.3826 2.4062 3.0013-0.18478 6.6277-1.3269 10.199-3.3665 3.5712-2.0396 6.4157-4.5827 8.1407-7.0973 0.37395-0.54512 0.69082-1.0974 0.95417-1.6336z"/>
<path fill-opacity=".39431" d="m29.69 80.732c-0.62002-0.06894-1.2915-0.08756-2.0038-0.04371-2.8491 0.17541-6.3402 1.2615-9.7932 3.2336-2.2089 1.2616-4.1189 2.7318-5.6439 4.2506 1.4707-1.4082 3.2758-2.7538 5.3342-3.9294 3.453-1.9722 6.9442-3.0582 9.7932-3.2336 2.8491-0.17541 5.088 0.55309 5.9375 2.2337 0.80802 1.5986 0.18108 3.884-1.4564 6.271-0.56859 0.82887-1.2068 1.5976-2.0239 2.4221 0.95625-0.92626 1.6916-1.8074 2.3336-2.7433 1.6375-2.3871 2.335-4.5686 1.4306-6.2195-0.678-1.237-2.047-2.034-3.908-2.241zm-18.094 7.3811c-0.94214 0.92708-1.7572 1.8759-2.4041 2.8189-1.725 2.5146-2.3245 4.9972-1.332 6.8088 0.99243 1.8116 3.3813 2.591 6.3826 2.4062 3.0013-0.18478 6.6394-1.3256 10.211-3.3652 2.3864-1.363 4.4379-2.9547 6.0578-4.6111-1.5681 1.5407-3.5161 3.0151-5.7481 4.2899-3.5712 2.0396-7.1974 3.1944-10.199 3.3792-3.002 0.19-5.3908-0.607-6.3832-2.419-0.9924-1.811-0.3929-4.294 1.332-6.808 0.5732-0.835 1.2762-1.674 2.0832-2.499z"/>
<path fill="url(#al)" d="m23.108 104.54 9.6297 16.635c5.7579-2.6489 12.533-8.8374 13.632-12.946l-9.38-16.93c-1.1577 6.0247-8.2031 10.457-13.883 13.239z"/>
<path opacity=".78279" fill="url(#af)" d="m46.585 107.4c0.11481 0.20932 0.52934 0.95488 0.61359 1.1085 1.8764 3.4209-2.2326 9.4093-9.1814 13.371-6.9489 3.9621-14.103 4.4038-15.98 0.98293-0.10142-0.18489-0.58599-1.0737-0.73128-1.3386 0.04813 0.54247 0.18777 1.0444 0.4421 1.508 0.97229 1.7726 3.32 2.5352 6.2728 2.3541 2.9527-0.18108 6.5383-1.3029 10.058-3.31 3.5202-2.0071 6.3302-4.5189 8.0273-6.9891s2.2753-4.9078 1.303-6.6804c-0.21196-0.38643-0.49057-0.71628-0.82482-1.0068z"/>
<path opacity=".78279" fill="url(#ae)" d="m46.412 107.2c0.11481 0.20932 0.52934 0.95488 0.61358 1.1085 1.8764 3.4209-2.2326 9.4093-9.1814 13.371-6.9489 3.9621-14.103 4.4038-15.98 0.98292-0.10142-0.18489-0.58599-1.0737-0.73128-1.3386 0.04813 0.54247 0.18777 1.0444 0.4421 1.508 0.97229 1.7726 3.32 2.5352 6.2728 2.3541 2.9527-0.18107 6.5383-1.3029 10.058-3.31 3.5202-2.0071 6.3302-4.5189 8.0273-6.9891s2.2753-4.9078 1.303-6.6804c-0.21196-0.38643-0.49057-0.71627-0.82481-1.0068z"/>
<path d="m6.0093 127.44c2.655 0.022 4.8939-0.27986 5.4405-0.26605 3.616 0.0913 12.279-1.6267 8.8147-3.7388-3.7851-2.3074-14.189-2.2454-18.24-0.0206-4.4207 2.428 1.3297 4.0034 3.9843 4.0254z" fill-rule="evenodd" stroke="#ae0000" stroke-width=".29507px" fill="#b90000"/>
<path opacity=".88525" d="m5.9894 127.59c2.655 0.0219 4.904-0.29498 5.4505-0.27623 3.6491 0.12518 12.595-1.6495 8.9242-3.973-3.7471-2.3715-14.288-2.3472-18.478-0.00019-4.401 2.4652 1.4491 4.2274 4.1036 4.2494z" stroke="url(#b)" stroke-width=".03021" fill="none"/>
<path opacity=".43852" fill="url(#ad)" d="m32.737 121.18c5.7579-2.6489 12.533-8.8374 13.632-12.946-6.7694-12.005-19.554 2.4904-13.632 12.946z"/>
<path d="m14 99.675c-2.2234-0.05445-3.0412 1.7745-3.184 3.5536-0.42678 5.3178 0.4632 9.0456 0.16561 13.3-0.06036 0.86297-1.5603 1.7306-1.7366-0.19189-0.40911-4.4614 0.28624-7.592-0.20289-13.754-0.162-2.03-0.7721-3.988-1.3073-6.315" fill-rule="evenodd" stroke="#000" stroke-width=".039234" fill="#b70000"/>
<path fill-rule="evenodd" fill="url(#ak)" d="m8.3586 98.041c0.42645 1.7177 0.83004 3.2679 0.95688 4.8658 0.48913 6.1622-0.20618 9.2954 0.20293 13.757 0.023488 0.25612 0.073383 0.46077 0.13732 0.62446 0.17107-0.17904 0.28884-0.40778 0.30502-0.63905 0.29759-4.2548-0.6222-7.9303-0.19542-13.248 0.11169-1.3917 0.58734-3.2122 1.8918-3.599-1.1037-0.58622-2.2392-1.1509-3.2985-1.7608z"/>
<path fill="url(#ac)" d="m7.6345 95.042c-0.10733 0.92298 0.00976 1.7805 0.39891 2.5124 1.8376 3.456 8.6542 2.6038 15.641-1.0594 1.8682-0.97955 3.4115-2.1613 3.8182-2.5091-2.9119-1.8717-18.781-3.5503-19.858 1.0561z"/>
<path opacity=".62705" d="m5.9894 127.59c2.655 0.0219 4.904-0.29498 5.4505-0.27623 3.6491 0.12518 12.566-1.6189 8.8943-3.9424-3.7471-2.3715-14.238-2.3421-18.429 0.005-4.401 2.4652 1.4292 4.1918 4.0837 4.2138z" stroke="url(#b)" stroke-width=".10868" fill="none"/>
<path opacity=".24590" d="m5.9894 127.59c2.655 0.0219 4.904-0.29498 5.4505-0.27623 3.6491 0.12518 12.498-1.5125 8.817-3.82-3.7355-2.3418-14.104-2.3114-18.309-0.002-4.4209 2.4278 1.387 4.0766 4.0416 4.0985z" stroke="url(#b)" stroke-width=".38331" fill="none"/>
<path opacity=".81967" fill="url(#ab)" d="m12.599 121.65c-3.0669-0.11835-6.3077 0.19446-8.6791 0.91147-1.2154 1.1351 3.318 2.24 6.6542 2.3243 3.7933 0.0958 8.0875-1.0156 7.3338-2.4969-1.5294-0.41634-3.3782-0.6644-5.309-0.73889z"/>
<path opacity=".70082" d="m6.0093 127.44c2.655 0.022 4.8939-0.27986 5.4405-0.26605 3.616 0.0913 12.279-1.6267 8.8147-3.7388-3.7851-2.3074-14.189-2.2454-18.24-0.0206-4.4207 2.428 1.3297 4.0034 3.9843 4.0254z" fill-rule="evenodd" stroke="url(#y)" stroke-width=".29507px" fill="url(#x)"/>
</g>
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<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"
height="26"
width="26"
version="1.1"
id="svg2"
inkscape:version="0.48.4 r9939"
sodipodi:docname="fill_zone.svg">
<metadata
id="metadata40">
<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></dc:title>
</cc:Work>
</rdf:RDF>
</metadata>
<sodipodi:namedview
pagecolor="#ffffff"
bordercolor="#666666"
borderopacity="1"
objecttolerance="10"
gridtolerance="10"
guidetolerance="10"
inkscape:pageopacity="0"
inkscape:pageshadow="2"
inkscape:window-width="1366"
inkscape:window-height="744"
id="namedview38"
showgrid="true"
inkscape:snap-to-guides="false"
inkscape:snap-grids="false"
inkscape:zoom="14.026081"
inkscape:cx="9.2631421"
inkscape:cy="10.152534"
inkscape:window-x="0"
inkscape:window-y="24"
inkscape:window-maximized="1"
inkscape:current-layer="svg2"
showguides="true"
inkscape:guide-bbox="true">
<inkscape:grid
type="xygrid"
id="grid3017"
empspacing="2"
visible="true"
enabled="true"
snapvisiblegridlinesonly="true"
spacingx="0.5px"
spacingy="0.5px" />
</sodipodi:namedview>
<defs
id="defs4">
<filter
id="c"
height="1.3651"
width="1.2097"
color-interpolation-filters="sRGB"
y="-0.18257"
x="-0.10484">
<feGaussianBlur
stdDeviation="1.5978799"
id="feGaussianBlur7" />
</filter>
<filter
id="d"
height="1.4696"
width="1.4809999"
color-interpolation-filters="sRGB"
y="-0.23481999"
x="-0.24049">
<feGaussianBlur
stdDeviation="1.5978799"
id="feGaussianBlur10" />
</filter>
</defs>
<g
transform="matrix(1.6382539,0,0,1.5572263,1.2572207,0.36314149)"
id="g16">
<rect
height="16"
width="16"
y="0"
x="0"
id="rect18"
style="fill-opacity:0" />
</g>
<path
style="fill:none;stroke:#808080;stroke-width:3;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none"
d="m 13,10.5 4.5,0 6,13"
id="path3765"
inkscape:connector-curvature="0"
sodipodi:nodetypes="ccc" />
<path
sodipodi:type="arc"
style="fill:none;stroke:#808080;stroke-width:3;stroke-miterlimit:4;stroke-dasharray:none"
id="path3815"
sodipodi:cx="9"
sodipodi:cy="10"
sodipodi:rx="3.5"
sodipodi:ry="3.5"
d="m 12.5,10 a 3.5,3.5 0 1 1 -7,0 3.5,3.5 0 1 1 7,0 z"
transform="translate(0,0.5)" />
<path
sodipodi:nodetypes="cccccsssccccc"
inkscape:connector-curvature="0"
id="path2991"
d="M 0,0 0,26 20.5,26 15,14 15.0625,14 C 13.8522,16.092433 11.591084,17.5 9,17.5 c -3.8659934,0 -7,-3.134007 -7,-7 0,-3.8659934 3.1340066,-7 7,-7 2.591084,0 4.8522,1.4075669 6.0625,3.5 L 20,7 26,20 26,0 z"
style="fill:#cccccc;fill-opacity:1;stroke:#008000;stroke-width:1.29999994999999990;stroke-linecap:butt;stroke-linejoin:round;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none" />
<path
style="fill:#49a749;fill-opacity:1;stroke:#008000;stroke-width:1.29999995;stroke-linecap:square;stroke-linejoin:round;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none"
d="m 0,20 0,6 20.5,0 -2.756725,-6"
id="rect3811"
inkscape:connector-curvature="0"
sodipodi:nodetypes="cccc" />
<path
style="fill:#8cabda;stroke:#162d50;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:round;stroke-opacity:1;fill-opacity:1;opacity:1"
d="m 18.5,22 -8,-7 9.5,-8 5.5,9 z"
id="path3766"
inkscape:connector-curvature="0"
sodipodi:nodetypes="ccccc" />
<path
sodipodi:type="arc"
style="fill:#87aade;fill-opacity:1;stroke:#162d50;stroke-width:1;stroke-linecap:square;stroke-linejoin:round;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none;stroke-dashoffset:0"
id="path3768"
sodipodi:cx="17"
sodipodi:cy="11"
sodipodi:rx="1.5"
sodipodi:ry="1.5"
d="m 18.5,11 a 1.5,1.5 0 1 1 -3,0 1.5,1.5 0 1 1 3,0 z"
transform="translate(1,2.5)" />
<path
style="fill:none;stroke:#162d50;stroke-width:1px;stroke-linecap:round;stroke-linejoin:miter;stroke-opacity:1"
d="M 18,13.5 24.5,8"
id="path3770"
inkscape:connector-curvature="0" />
<path
style="fill:#38b838;fill-opacity:1;stroke:#004000;stroke-width:0.50000000000000000;stroke-linecap:butt;stroke-linejoin:round;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none"
d="M 15.579758,9.7520686 9.9537234,14.550414 C 9.2746023,15.332679 10.596967,16.086351 11.134309,17.90331 11.968395,22.608486 10,24 10,24 10,24 8.8600467,20.596911 6.5082742,17.865307 5.240134,16.392352 4.0542798,12.949492 8.5,11 10.536421,10.107009 15.579758,9.7520686 15.579758,9.7520686 z"
id="path3772"
inkscape:connector-curvature="0"
sodipodi:nodetypes="ccccssc" />
</svg>

Before

Width:  |  Height:  |  Size: 15 KiB

After

Width:  |  Height:  |  Size: 5.4 KiB

View File

@ -1,149 +0,0 @@
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<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"
height="26"
width="26"
version="1.1"
viewBox="0 0 26 26"
id="svg2"
inkscape:version="0.48.3.1 r9886"
sodipodi:docname="gerber_open_dcode_file.svg">
<metadata
id="metadata41">
<rdf:RDF>
<cc:Work
rdf:about="">
<dc:format>image/svg+xml</dc:format>
<dc:type
rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
</cc:Work>
</rdf:RDF>
</metadata>
<sodipodi:namedview
pagecolor="#ffffff"
bordercolor="#666666"
borderopacity="1"
objecttolerance="10"
gridtolerance="10"
guidetolerance="10"
inkscape:pageopacity="0"
inkscape:pageshadow="2"
inkscape:window-width="1600"
inkscape:window-height="849"
id="namedview39"
showgrid="true"
inkscape:snap-grids="false"
inkscape:snap-to-guides="false"
inkscape:zoom="23.730769"
inkscape:cx="11.025982"
inkscape:cy="9.6288493"
inkscape:window-x="0"
inkscape:window-y="29"
inkscape:window-maximized="1"
inkscape:current-layer="svg2">
<inkscape:grid
type="xygrid"
id="grid2998"
empspacing="1"
visible="true"
enabled="true"
snapvisiblegridlinesonly="true" />
</sodipodi:namedview>
<defs
id="defs4">
<radialGradient
id="a"
gradientUnits="userSpaceOnUse"
cy="9.3410997"
cx="38.659"
r="8.3416996">
<stop
stop-color="#fff"
offset="0"
id="stop7" />
<stop
stop-color="#fefede"
stop-opacity=".91837"
offset=".25"
id="stop9" />
<stop
stop-color="#f5f328"
offset=".5"
id="stop11" />
<stop
stop-color="#f5f32d"
stop-opacity=".12234"
offset="1"
id="stop13" />
</radialGradient>
</defs>
<g
transform="matrix(0.5260448,0,0,0.50312091,-0.15999664,-0.35963976)"
id="g15"
style="stroke:#000000;stroke-width:0.75">
<polygon
points="49.423,27.934 25.213,42.458 1.018,26.902 25.224,12.379 "
id="polygon17"
style="fill:#bcbec0" />
<polygon
points="49.241,24.649 25.036,39.169 0.837,23.615 25.042,9.094 "
id="polygon19"
style="fill:#808284" />
<polygon
points="49.423,20.714 25.213,35.238 1.018,19.684 25.224,5.16 "
id="polygon21"
style="fill:#0071bc" />
<polygon
points="25.217,30.787 1.018,15.232 25.224,0.711 49.423,16.266 "
id="polygon23"
style="fill:#008fd4"
transform="matrix(1.0001441,0,0,0.98075002,-0.00363311,0.59636678)" />
</g>
<g
transform="matrix(0.52181772,0,0,0.61984761,3.0209882,-16.160143)"
id="g31">
<rect
height="15.76275"
width="44.454456"
y="52.359386"
x="-5.4629998"
id="rect33"
style="fill:#ffffff;fill-rule:evenodd" />
<g
transform="scale(0.87703798,1.1402015)"
style="font-size:61.8630867px;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#4d4d4d;font-family:Sans"
id="text35">
<path
d="m 5.9902763,58.527214 c -0.8031356,0.390408 -1.6369333,0.683213 -2.5013955,0.878417 -0.8644828,0.195203 -1.7568416,0.292805 -2.67707886,0.292805 -2.08031894,0 -3.72839394,-0.580033 -4.94423004,-1.740101 -1.2158414,-1.165642 -1.8237608,-2.744002 -1.8237599,-4.735083 -9e-7,-2.013379 0.619073,-3.597315 1.8572234,-4.751815 1.2381451,-1.154478 2.9336266,-1.731723 5.08644984,-1.731736 0.83100126,1.3e-5 1.62575826,0.07809 2.38427336,0.234245 0.764072,0.156175 1.4835362,0.387631 2.1583948,0.694367 l 0,2.585054 C 4.8329858,49.857392 4.1386192,49.561798 3.4470514,49.366585 2.7610404,49.171392 2.072251,49.07379 1.3806812,49.073779 c -1.28277386,1.1e-5 -2.27273432,0.359743 -2.9698843,1.079198 -0.6915833,0.713896 -1.0373723,1.73732 -1.0373681,3.070275 -4.2e-6,1.321812 0.3346303,2.342448 1.0039046,3.061909 0.66926382,0.719467 1.62018358,1.079199 2.8527621,1.079197 0.3346265,2e-6 0.6441634,-0.01952 0.9286117,-0.05856 0.2900076,-0.04462 0.5493494,-0.111543 0.7780261,-0.200781 l 0,-2.426103 -1.96597981,0 0,-2.158395 5.01952281,0 0,6.006696"
style="font-size:17.1333046px;font-weight:bold;letter-spacing:0.05271786px;fill:#4d4d4d"
id="path3001"
inkscape:connector-curvature="0" />
<path
d="m 8.8706587,46.96558 8.6921403,0 0,2.434468 -5.47128,0 0,2.325713 5.145011,0 0,2.434468 -5.145011,0 0,2.861128 5.655329,0 0,2.434469 -8.8761893,0 0,-12.490246"
style="font-size:17.1333046px;font-weight:bold;letter-spacing:0.05271786px;fill:#4d4d4d"
id="path3003"
inkscape:connector-curvature="0" />
<path
d="m 25.211729,52.503787 c 0.67484,7e-6 1.157271,-0.125481 1.447295,-0.376465 0.295587,-0.250968 0.443384,-0.663684 0.443392,-1.238148 -8e-6,-0.568871 -0.147805,-0.976009 -0.443392,-1.221418 C 26.369,49.422367 25.886569,49.299668 25.211729,49.299658 l -1.355271,0 0,3.204129 1.355271,0 m -1.355271,2.225321 0,4.726718 -3.220861,0 0,-12.490246 4.919132,0 c 1.64528,1.2e-5 2.849965,0.276086 3.614057,0.828221 0.769649,0.552159 1.154479,1.424997 1.15449,2.618518 -1.1e-5,0.825441 -0.200792,1.503076 -0.602343,2.032907 -0.395994,0.529845 -0.995548,0.920252 -1.798662,1.171222 0.440593,0.100396 0.833789,0.329063 1.179588,0.686001 0.351356,0.351371 0.705511,0.886787 1.062466,1.606247 l 1.748467,3.54713 -3.430008,0 -1.522588,-3.103738 C 26.65344,55.72744 26.341114,55.300781 26.023218,55.072109 25.710886,54.843447 25.292593,54.729113 24.768338,54.729108 l -0.91188,0"
style="font-size:17.1333046px;font-weight:bold;letter-spacing:0.05271786px;fill:#4d4d4d"
id="path3005"
inkscape:connector-curvature="0" />
<path
d="m 38.875718,51.801053 c 0.507522,8e-6 0.892352,-0.111537 1.15449,-0.334634 0.262123,-0.223082 0.393188,-0.552139 0.393196,-0.987173 -8e-6,-0.429439 -0.131073,-0.755708 -0.393196,-0.978807 -0.262138,-0.228657 -0.646968,-0.342991 -1.15449,-0.343001 l -1.781931,0 0,2.643615 1.781931,0 m 0.108756,5.462915 c 0.646953,2e-6 1.132173,-0.136641 1.455662,-0.409928 0.329049,-0.273282 0.493577,-0.685998 0.493586,-1.238149 -9e-6,-0.540989 -0.161749,-0.945339 -0.485221,-1.213052 -0.323488,-0.273279 -0.811496,-0.409922 -1.464027,-0.409927 l -1.890687,0 0,3.271056 1.890687,0 m 2.994982,-4.492473 c 0.691568,0.200787 1.226984,0.571674 1.606247,1.11266 0.379241,0.540999 0.568868,1.20469 0.56888,1.991078 -1.2e-5,1.204688 -0.407151,2.102624 -1.221418,2.69381 -0.814288,0.591189 -2.052435,0.886783 -3.714447,0.886783 l -5.345791,0 0,-12.490246 4.835473,0 c 1.734516,1.2e-5 2.989396,0.262143 3.764642,0.786392 0.780804,0.524272 1.171211,1.363647 1.171222,2.518127 -1.1e-5,0.607929 -0.142231,1.126612 -0.426659,1.556052 -0.28445,0.423878 -0.697166,0.738992 -1.238149,0.945344"
style="font-size:17.1333046px;font-weight:bold;letter-spacing:0.05271786px;fill:#4d4d4d"
id="path3007"
inkscape:connector-curvature="0" />
<path
d="m 47.152087,56.218234 3.011714,0 0,3.237592 -3.011714,0 0,-3.237592"
style="font-size:17.1333046px;font-weight:bold;letter-spacing:0.05271786px;fill:#4d4d4d"
id="path3009"
inkscape:connector-curvature="0" />
</g>
</g>
</svg>

Before

Width:  |  Height:  |  Size: 7.5 KiB

File diff suppressed because it is too large Load Diff

Before

Width:  |  Height:  |  Size: 10 KiB

After

Width:  |  Height:  |  Size: 50 KiB

File diff suppressed because it is too large Load Diff

Before

Width:  |  Height:  |  Size: 6.9 KiB

After

Width:  |  Height:  |  Size: 43 KiB

File diff suppressed because one or more lines are too long

Before

Width:  |  Height:  |  Size: 28 KiB

After

Width:  |  Height:  |  Size: 48 KiB

View File

@ -1,13 +1,142 @@
<svg xmlns="http://www.w3.org/2000/svg" height="48" width="48" version="1.1" viewBox="0 0 48 48">
<defs>
<filter id="a" color-interpolation-filters="sRGB">
<feGaussianBlur stdDeviation="0.56527242"/>
</filter>
</defs>
<path opacity=".45703" d="m12.092 7.6156-4.45 12.346h3.3375l1.1125-4.1154h4.45l1.1125 4.1154h3.3375l-4.45-12.346h-4.45zm2.225 2.0577 1.1125 4.1154h-2.225l1.112-4.1157z" fill-rule="evenodd" transform="matrix(1.3239,0,0,1.285,3.8128,-4.5683)" filter="url(#a)"/>
<path opacity=".45703" d="m19.879 28.193 0.08706-5.9593 8.8129 9.0458-8.9 9.2597v-6.1731c-7.7875 0-12.15-4.1154-12.15-12.346h6.5879c0 4.1154 2.225 6.1731 5.5625 6.1731z" fill-rule="evenodd" transform="matrix(1.0832,0,0,1.0385,9.1922,3.3883)" filter="url(#a)"/>
<path opacity=".45703" d="m20.992 29.222v-3.0866l5.5625 5.1443-5.5625 6.1731v-4.1154c-4.45 0-11.125-1.0289-11.125-9.2597h3.3375c0 4.1154 4.45 5.1443 7.7875 5.1443z" fill-rule="evenodd" transform="matrix(1.0832,0,0,1.0385,9.1922,3.3883)" filter="url(#a)"/>
<path fill-rule="evenodd" fill="#695f00" d="m16.191 2.502-5.891 15.865h4.4186l1.4729-5.2885h5.8915l1.4729 5.2885h4.4186l-5.896-15.862h-5.892zm2.9457 2.6442 1.4729 5.2885h-2.9457l1.4729-5.2885z"/>
<path fill-rule="evenodd" d="m27.756 30.471 0.09431-6.1885 9.5463 9.3938-9.6406 9.6159v-6.4106c-8.4355 0-13.162-4.2737-13.162-12.821h7.1362c0 4.2737 2.4102 6.4106 6.0254 6.4106z"/>
<path fill-rule="evenodd" fill="#00bd00" d="m28.961 31.539v-3.2053l6.0254 5.3422-6.0254 6.4106v-4.2737c-4.8203 0-12.051-1.0684-12.051-9.6159h3.6152c0 4.2737 4.8203 5.3422 8.4355 5.3422z"/>
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<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"
height="48"
width="48"
version="1.1"
viewBox="0 0 48 48"
id="svg2"
inkscape:version="0.48.4 r9939"
sodipodi:docname="gl_change.svg">
<metadata
id="metadata23">
<rdf:RDF>
<cc:Work
rdf:about="">
<dc:format>image/svg+xml</dc:format>
<dc:type
rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
</cc:Work>
</rdf:RDF>
</metadata>
<sodipodi:namedview
pagecolor="#ffffff"
bordercolor="#666666"
borderopacity="1"
objecttolerance="10"
gridtolerance="10"
guidetolerance="10"
inkscape:pageopacity="0"
inkscape:pageshadow="2"
inkscape:window-width="762"
inkscape:window-height="621"
id="namedview21"
showgrid="false"
inkscape:zoom="9.116047"
inkscape:cx="27.806067"
inkscape:cy="11.725721"
inkscape:window-x="243"
inkscape:window-y="42"
inkscape:window-maximized="0"
inkscape:current-layer="svg2" />
<defs
id="defs4">
<filter
id="a"
color-interpolation-filters="sRGB">
<feGaussianBlur
stdDeviation="0.56527242"
id="feGaussianBlur7" />
</filter>
<filter
inkscape:collect="always"
id="filter3774"
x="-0.070598749"
width="1.1411975"
y="-0.36210326"
height="1.7242065">
<feGaussianBlur
inkscape:collect="always"
stdDeviation="0.73080736"
id="feGaussianBlur3776" />
</filter>
</defs>
<g
id="g3005"
transform="translate(-5.112097,-0.13937584)">
<path
id="path9"
transform="matrix(1.3239,0,0,1.285,3.8128,-4.5683)"
d="m 12.092,7.6156 -4.45,12.346 h 3.3375 l 1.1125,-4.1154 h 4.45 l 1.1125,4.1154 h 3.3375 l -4.45,-12.346 h -4.45 z m 2.225,2.0577 1.1125,4.1154 h -2.225 l 1.112,-4.1157 z"
inkscape:connector-curvature="0"
style="opacity:0.45702999;fill-rule:evenodd;filter:url(#a)" />
<path
id="path15"
d="M 16.191,2.502 10.3,18.367 h 4.4186 l 1.4729,-5.2885 h 5.8915 l 1.4729,5.2885 h 4.4186 L 22.0785,2.505 h -5.892 z m 2.9457,2.6442 1.4729,5.2885 h -2.9457 l 1.4729,-5.2885 z"
inkscape:connector-curvature="0"
style="fill:#695f00;fill-rule:evenodd" />
</g>
<text
xml:space="preserve"
style="font-size:40px;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#555555;fill-opacity:1;stroke:none;font-family:Comic Sans MS;-inkscape-font-specification:Comic Sans MS;filter:url(#filter3774)"
x="20.436575"
y="44.546696"
id="text3038-1"
sodipodi:linespacing="125%"
transform="matrix(1,0,0,0.98603477,-0.54848331,-0.53478697)"
inkscape:transform-center-x="6.0333168"
inkscape:transform-center-y="6.3624068"><tspan
sodipodi:role="line"
id="tspan3040-7"
x="20.436575"
y="44.546696"
style="font-size:40px;fill:#555555;fill-opacity:1">...</tspan></text>
<text
xml:space="preserve"
style="font-size:39.71971512px;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Comic Sans MS;-inkscape-font-specification:Comic Sans MS"
x="18.517761"
y="42.993546"
id="text3038"
sodipodi:linespacing="125%"
transform="scale(1.0070566,0.99299284)"><tspan
sodipodi:role="line"
id="tspan3040"
x="18.517761"
y="42.993546"
style="font-size:39.71971512px">...</tspan></text>
<g
id="g3009"
transform="translate(-13.222666,-3.8370555)">
<path
id="path11"
transform="matrix(1.0832,0,0,1.0385,9.1922,3.3883)"
d="m 19.879,28.193 0.08706,-5.9593 8.8129,9.0458 -8.9,9.2597 v -6.1731 c -7.7875,0 -12.15,-4.1154 -12.15,-12.346 h 6.5879 c 0,4.1154 2.225,6.1731 5.5625,6.1731 z"
inkscape:connector-curvature="0"
style="opacity:0.45702999;fill-rule:evenodd;filter:url(#a)" />
<g
id="g3000">
<path
d="m 20.992,29.222 v -3.0866 l 5.5625,5.1443 -5.5625,6.1731 v -4.1154 c -4.45,0 -11.125,-1.0289 -11.125,-9.2597 h 3.3375 c 0,4.1154 4.45,5.1443 7.7875,5.1443 z"
transform="matrix(1.0832,0,0,1.0385,9.1922,3.3883)"
id="path13"
inkscape:connector-curvature="0"
style="opacity:0.45702999;fill-rule:evenodd;filter:url(#a)" />
<path
d="m 27.756,30.471 0.09431,-6.1885 9.5463,9.3938 -9.6406,9.6159 v -6.4106 c -8.4355,0 -13.162,-4.2737 -13.162,-12.821 h 7.1362 c 0,4.2737 2.4102,6.4106 6.0254,6.4106 z"
id="path17"
inkscape:connector-curvature="0"
style="fill-rule:evenodd" />
<path
d="m 28.961,31.539 v -3.2053 l 6.0254,5.3422 -6.0254,6.4106 v -4.2737 c -4.8203,0 -12.051,-1.0684 -12.051,-9.6159 h 3.6152 c 0,4.2737 4.8203,5.3422 8.4355,5.3422 z"
id="path19"
inkscape:connector-curvature="0"
style="fill:#00bd00;fill-rule:evenodd" />
</g>
</g>
</svg>

Before

Width:  |  Height:  |  Size: 1.5 KiB

After

Width:  |  Height:  |  Size: 5.4 KiB

View File

@ -14,7 +14,7 @@
width="26"
height="26"
id="svg2"
inkscape:version="0.48.3.1 r9886"
inkscape:version="0.48.4 r9939"
sodipodi:docname="library_table.svg">
<metadata
id="metadata166">
@ -37,15 +37,15 @@
guidetolerance="10"
inkscape:pageopacity="0"
inkscape:pageshadow="2"
inkscape:window-width="1600"
inkscape:window-height="849"
inkscape:window-width="1920"
inkscape:window-height="1033"
id="namedview164"
showgrid="true"
inkscape:zoom="13.906433"
inkscape:cx="-4.4802673"
inkscape:cy="18.405854"
inkscape:window-x="0"
inkscape:window-y="29"
inkscape:window-x="-4"
inkscape:window-y="-4"
inkscape:window-maximized="1"
inkscape:current-layer="svg2"
inkscape:snap-to-guides="false"
@ -554,16 +554,9 @@
id="path95"
inkscape:connector-curvature="0" />
</g>
<rect
style="fill:#ffffff;fill-opacity:1;stroke:none"
id="rect3143"
width="16.179562"
height="13.087469"
x="9.8515558"
y="8.6698914" />
<g
id="g4431"
transform="matrix(0.4598514,0,0,0.4598514,-17.774359,-2.6879261)">
transform="matrix(0.55787064,0,0,0.54301839,-27.23632,-8.0655491)">
<path
inkscape:connector-curvature="0"
style="color:#000000;fill:url(#linearGradient4444);stroke:#676b6a;stroke-width:0.8774851;stroke-opacity:1"

Before

Width:  |  Height:  |  Size: 24 KiB

After

Width:  |  Height:  |  Size: 23 KiB

View File

@ -0,0 +1,691 @@
<?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:xlink="http://www.w3.org/1999/xlink"
xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
width="26"
height="26"
id="svg2"
version="1.1"
inkscape:version="0.48.5 r10040"
sodipodi:docname="revert_pcbnew.svg">
<defs
id="defs4">
<linearGradient
id="linearGradient3775">
<stop
style="stop-color:#ffffff;stop-opacity:1;"
offset="0"
id="stop3777" />
<stop
style="stop-color:#e1e1e1;stop-opacity:1;"
offset="1"
id="stop3779" />
</linearGradient>
<linearGradient
id="linearGradient3767">
<stop
style="stop-color:#ffffff;stop-opacity:1;"
offset="0"
id="stop3769" />
<stop
style="stop-color:#dcdcdc;stop-opacity:1;"
offset="1"
id="stop3771" />
</linearGradient>
<linearGradient
inkscape:collect="always"
xlink:href="#linearGradient3775"
id="linearGradient3781"
x1="20"
y1="21"
x2="1"
y2="1"
gradientUnits="userSpaceOnUse" />
<filter
inkscape:collect="always"
id="filter3899">
<feGaussianBlur
inkscape:collect="always"
stdDeviation="0.375"
id="feGaussianBlur3901" />
</filter>
<filter
inkscape:collect="always"
id="filter3952"
x="-0.12"
width="1.24"
y="-0.12"
height="1.24">
<feGaussianBlur
inkscape:collect="always"
stdDeviation="0.35"
id="feGaussianBlur3954" />
</filter>
<radialGradient
inkscape:collect="always"
xlink:href="#linearGradient3767"
id="radialGradient3975"
cx="17.249992"
cy="6.4166613"
fx="17.249992"
fy="6.4166613"
r="3.5"
gradientUnits="userSpaceOnUse"
gradientTransform="matrix(0.85714311,-0.85714265,1.4285709,1.4285716,-4.9523675,12.619044)" />
<linearGradient
inkscape:collect="always"
xlink:href="#be-2-3"
id="linearGradient4120"
gradientUnits="userSpaceOnUse"
gradientTransform="matrix(0.64407,-0.64045,0.66092,0.65072,61.423,86.661)"
x1="23.576"
y1="25.357"
x2="23.576"
y2="31.211" />
<linearGradient
id="be-2-3"
y2="31.211"
gradientUnits="userSpaceOnUse"
x2="23.576"
gradientTransform="matrix(0.64407,-0.64045,0.66092,0.65072,61.423,86.661)"
y1="25.357"
x1="23.576">
<stop
offset="0"
id="stop180-9" />
<stop
stop-color="#c3c3c3"
offset=".13483"
id="stop182-1" />
<stop
stop-color="#8c8c8c"
offset=".20224"
id="stop184-9" />
<stop
stop-color="#fff"
offset=".26966"
id="stop186-6" />
<stop
stop-color="#757575"
offset=".4465"
id="stop188-5-9" />
<stop
stop-color="#7d7d7d"
offset=".57114"
id="stop190-8-3" />
<stop
stop-color="#b6b6b6"
offset=".72038"
id="stop192-3" />
<stop
offset="1"
id="stop194-8" />
</linearGradient>
<linearGradient
inkscape:collect="always"
xlink:href="#ar-2-5"
id="linearGradient4122"
gradientUnits="userSpaceOnUse"
gradientTransform="matrix(0.62586,-0.62234,0.77349,0.76155,59.298,83.616)"
x1="30.038"
y1="24.99"
x2="30.038"
y2="30" />
<linearGradient
id="ar-2-5">
<stop
stop-color="#3e3e3e"
offset="0"
id="stop166-8-6" />
<stop
stop-color="#828282"
offset=".5"
id="stop168-4-6" />
<stop
stop-color="#3c3c3c"
offset="1"
id="stop170-4" />
</linearGradient>
<linearGradient
inkscape:collect="always"
xlink:href="#aq-0"
id="linearGradient4124"
gradientUnits="userSpaceOnUse"
gradientTransform="matrix(0.62586,-0.62234,0.77349,0.76155,59.119,83.794)"
x1="30.038"
y1="24.99"
x2="30.038"
y2="30" />
<linearGradient
id="aq-0">
<stop
stop-color="#999"
offset="0"
id="stop173-4" />
<stop
stop-color="#fff"
offset=".5"
id="stop175-6" />
<stop
stop-color="#777"
offset="1"
id="stop177-2" />
</linearGradient>
<linearGradient
inkscape:collect="always"
xlink:href="#ar-2-5"
id="linearGradient4126"
gradientUnits="userSpaceOnUse"
gradientTransform="matrix(0.62586,-0.62234,0.77349,0.76155,59.921,82.996)"
x1="30.038"
y1="24.99"
x2="30.038"
y2="30" />
<linearGradient
id="linearGradient3332">
<stop
stop-color="#3e3e3e"
offset="0"
id="stop3334" />
<stop
stop-color="#828282"
offset=".5"
id="stop3336" />
<stop
stop-color="#3c3c3c"
offset="1"
id="stop3338" />
</linearGradient>
<linearGradient
inkscape:collect="always"
xlink:href="#aq-0"
id="linearGradient4128"
gradientUnits="userSpaceOnUse"
gradientTransform="matrix(0.62586,-0.62234,0.77349,0.76155,59.742,83.175)"
x1="30.038"
y1="24.99"
x2="30.038"
y2="30" />
<linearGradient
id="linearGradient3341">
<stop
stop-color="#999"
offset="0"
id="stop3343" />
<stop
stop-color="#fff"
offset=".5"
id="stop3345" />
<stop
stop-color="#777"
offset="1"
id="stop3347" />
</linearGradient>
<linearGradient
inkscape:collect="always"
xlink:href="#ar-2-5"
id="linearGradient4130"
gradientUnits="userSpaceOnUse"
gradientTransform="matrix(0.62586,-0.62234,0.77349,0.76155,60.547,82.374)"
x1="30.038"
y1="24.99"
x2="30.038"
y2="30" />
<linearGradient
id="linearGradient3350">
<stop
stop-color="#3e3e3e"
offset="0"
id="stop3352" />
<stop
stop-color="#828282"
offset=".5"
id="stop3354" />
<stop
stop-color="#3c3c3c"
offset="1"
id="stop3356" />
</linearGradient>
<linearGradient
inkscape:collect="always"
xlink:href="#aq-0"
id="linearGradient4132"
gradientUnits="userSpaceOnUse"
gradientTransform="matrix(0.62586,-0.62234,0.77349,0.76155,60.367,82.552)"
x1="30.038"
y1="24.99"
x2="30.038"
y2="30" />
<linearGradient
id="linearGradient3359">
<stop
stop-color="#999"
offset="0"
id="stop3361" />
<stop
stop-color="#fff"
offset=".5"
id="stop3363" />
<stop
stop-color="#777"
offset="1"
id="stop3365" />
</linearGradient>
<linearGradient
inkscape:collect="always"
xlink:href="#bl-2-6"
id="linearGradient4134"
gradientUnits="userSpaceOnUse"
gradientTransform="matrix(0.62586,-0.62234,0.77349,0.76155,59.06,83.852)"
x1="9"
y1="29.056999"
x2="9"
y2="26.030001" />
<linearGradient
id="bl-2-6"
y2="26.030001"
gradientUnits="userSpaceOnUse"
x2="9"
gradientTransform="matrix(0.62586,-0.62234,0.77349,0.76155,59.06,83.852)"
y1="29.056999"
x1="9">
<stop
stop-color="#e4db7b"
offset="0"
id="stop203-9-1" />
<stop
stop-color="#f4f0c8"
offset="1"
id="stop205-9-3" />
</linearGradient>
<linearGradient
inkscape:collect="always"
xlink:href="#bm-0-2"
id="linearGradient4136"
gradientUnits="userSpaceOnUse"
gradientTransform="matrix(0.52586,0,0,0.51993,81.027,79.545)"
x1="5.5179"
y1="37.372002"
x2="9.5221004"
y2="41.391998" />
<linearGradient
id="bm-0-2"
y2="41.391998"
gradientUnits="userSpaceOnUse"
x2="9.5221004"
gradientTransform="matrix(0.52586,0,0,0.51993,81.027,79.545)"
y1="37.372002"
x1="5.5179">
<stop
stop-color="#cbbd27"
offset="0"
id="stop208-1" />
<stop
stop-color="#9b901d"
offset="1"
id="stop210-5" />
</linearGradient>
<linearGradient
id="e"
y2="16.375"
gradientUnits="userSpaceOnUse"
x2="25.445999"
y1="20.688"
x1="25.445999">
<stop
stop-color="#edd400"
offset="0"
id="stop12" />
<stop
stop-color="#fce94f"
offset="1"
id="stop14" />
</linearGradient>
<linearGradient
id="f"
y2="55.692001"
gradientUnits="userSpaceOnUse"
x2="18.072001"
y1="29.705"
x1="21.677">
<stop
stop-color="#fff"
offset="0"
id="stop17" />
<stop
stop-color="#fff"
stop-opacity="0"
offset="1"
id="stop19" />
</linearGradient>
<linearGradient
y2="13.526"
x2="25.561001"
y1="8.7343998"
x1="15.457"
gradientTransform="matrix(0.7753852,0,0,0.7751684,-1.917914,1.3424252)"
gradientUnits="userSpaceOnUse"
id="linearGradient3041"
xlink:href="#g"
inkscape:collect="always" />
<linearGradient
id="g"
y2="13.526"
gradientUnits="userSpaceOnUse"
x2="25.561001"
gradientTransform="matrix(-1.4306,0,0,1.4302,50.646,2.3548)"
y1="8.7343998"
x1="15.457">
<stop
stop-color="#fff"
offset="0"
id="stop22" />
<stop
stop-color="#fff"
stop-opacity="0"
offset="1"
id="stop24" />
</linearGradient>
</defs>
<sodipodi:namedview
id="base"
pagecolor="#ffffff"
bordercolor="#666666"
borderopacity="1.0"
inkscape:pageopacity="0"
inkscape:pageshadow="2"
inkscape:zoom="15.365974"
inkscape:cx="6.1949095"
inkscape:cy="12.2384"
inkscape:document-units="px"
inkscape:current-layer="layer1"
showgrid="true"
inkscape:showpageshadow="false"
inkscape:window-width="1362"
inkscape:window-height="732"
inkscape:window-x="0"
inkscape:window-y="16"
inkscape:window-maximized="0">
<inkscape:grid
type="xygrid"
id="grid2985"
empspacing="2"
visible="true"
enabled="true"
snapvisiblegridlinesonly="true"
spacingx="0.5px"
spacingy="0.5px" />
</sodipodi:namedview>
<metadata
id="metadata7">
<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></dc:title>
</cc:Work>
</rdf:RDF>
</metadata>
<g
inkscape:label="Layer 1"
inkscape:groupmode="layer"
id="layer1"
transform="translate(0,-1026.3622)">
<path
sodipodi:nodetypes="cccccc"
inkscape:connector-curvature="0"
id="path3889"
d="m 0.5,0.5 17,0 c 3,1 7,5 8,8 l 0,17 -25,0 z"
style="opacity:0.5;fill:#000000;fill-opacity:1;stroke:none;filter:url(#filter3899)"
transform="translate(0,1026.3622)" />
<path
style="fill:url(#linearGradient3781);fill-opacity:1;stroke:none"
d="m 1,1 16,0 c 3,1 7,5 8,8 l 0,16 -24,0 z"
id="rect3761"
inkscape:connector-curvature="0"
sodipodi:nodetypes="cccccc"
transform="translate(0,1026.3622)" />
<path
sodipodi:type="arc"
style="opacity:0.3;fill:#000000;fill-opacity:1;stroke:none"
id="path3903"
sodipodi:cx="2.5"
sodipodi:cy="3.5"
sodipodi:rx="1"
sodipodi:ry="1"
d="m 3.5,3.5 c 0,0.5522847 -0.4477153,1 -1,1 -0.5522847,0 -1,-0.4477153 -1,-1 0,-0.5522847 0.4477153,-1 1,-1 0.5522847,0 1,0.4477153 1,1 z"
transform="matrix(0.75,0,0,0.75,0.625,1026.2372)" />
<path
transform="matrix(0.75,0,0,0.75,0.625,1029.2372)"
d="m 3.5,3.5 c 0,0.5522847 -0.4477153,1 -1,1 -0.5522847,0 -1,-0.4477153 -1,-1 0,-0.5522847 0.4477153,-1 1,-1 0.5522847,0 1,0.4477153 1,1 z"
sodipodi:ry="1"
sodipodi:rx="1"
sodipodi:cy="3.5"
sodipodi:cx="2.5"
id="path3906"
style="opacity:0.3;fill:#000000;fill-opacity:1;stroke:none"
sodipodi:type="arc" />
<path
transform="matrix(0.75,0,0,0.75,0.625,1032.2372)"
d="m 3.5,3.5 c 0,0.5522847 -0.4477153,1 -1,1 -0.5522847,0 -1,-0.4477153 -1,-1 0,-0.5522847 0.4477153,-1 1,-1 0.5522847,0 1,0.4477153 1,1 z"
sodipodi:ry="1"
sodipodi:rx="1"
sodipodi:cy="3.5"
sodipodi:cx="2.5"
id="path3908"
style="opacity:0.3;fill:#000000;fill-opacity:1;stroke:none"
sodipodi:type="arc" />
<path
sodipodi:type="arc"
style="opacity:0.3;fill:#000000;fill-opacity:1;stroke:none"
id="path3910"
sodipodi:cx="2.5"
sodipodi:cy="3.5"
sodipodi:rx="1"
sodipodi:ry="1"
d="m 3.5,3.5 c 0,0.5522847 -0.4477153,1 -1,1 -0.5522847,0 -1,-0.4477153 -1,-1 0,-0.5522847 0.4477153,-1 1,-1 0.5522847,0 1,0.4477153 1,1 z"
transform="matrix(0.75,0,0,0.75,0.625,1035.2372)" />
<path
transform="matrix(0.75,0,0,0.75,0.625,1038.2372)"
d="m 3.5,3.5 c 0,0.5522847 -0.4477153,1 -1,1 -0.5522847,0 -1,-0.4477153 -1,-1 0,-0.5522847 0.4477153,-1 1,-1 0.5522847,0 1,0.4477153 1,1 z"
sodipodi:ry="1"
sodipodi:rx="1"
sodipodi:cy="3.5"
sodipodi:cx="2.5"
id="path3912"
style="opacity:0.3;fill:#000000;fill-opacity:1;stroke:none"
sodipodi:type="arc" />
<path
sodipodi:type="arc"
style="opacity:0.3;fill:#000000;fill-opacity:1;stroke:none"
id="path3914"
sodipodi:cx="2.5"
sodipodi:cy="3.5"
sodipodi:rx="1"
sodipodi:ry="1"
d="m 3.5,3.5 c 0,0.5522847 -0.4477153,1 -1,1 -0.5522847,0 -1,-0.4477153 -1,-1 0,-0.5522847 0.4477153,-1 1,-1 0.5522847,0 1,0.4477153 1,1 z"
transform="matrix(0.75,0,0,0.75,0.625,1041.2372)" />
<path
sodipodi:type="arc"
style="opacity:0.3;fill:#000000;fill-opacity:1;stroke:none"
id="path3916"
sodipodi:cx="2.5"
sodipodi:cy="3.5"
sodipodi:rx="1"
sodipodi:ry="1"
d="m 3.5,3.5 c 0,0.5522847 -0.4477153,1 -1,1 -0.5522847,0 -1,-0.4477153 -1,-1 0,-0.5522847 0.4477153,-1 1,-1 0.5522847,0 1,0.4477153 1,1 z"
transform="matrix(0.75,0,0,0.75,0.625,1044.2372)" />
<path
transform="matrix(0.75,0,0,0.75,0.625,1047.2372)"
d="m 3.5,3.5 c 0,0.5522847 -0.4477153,1 -1,1 -0.5522847,0 -1,-0.4477153 -1,-1 0,-0.5522847 0.4477153,-1 1,-1 0.5522847,0 1,0.4477153 1,1 z"
sodipodi:ry="1"
sodipodi:rx="1"
sodipodi:cy="3.5"
sodipodi:cx="2.5"
id="path3918"
style="opacity:0.3;fill:#000000;fill-opacity:1;stroke:none"
sodipodi:type="arc" />
<path
inkscape:connector-curvature="0"
id="path307-5"
d="m 6.5,1028.8622 3,3 0,5"
display="block"
style="color:#000000;fill:none;stroke:#999999;stroke-width:0.80000001;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;display:block"
sodipodi:nodetypes="ccc" />
<path
inkscape:connector-curvature="0"
id="path309-3"
d="m 12.5,1036.8622 0,-6.5 -1.5,-1.5"
display="block"
style="color:#000000;fill:none;stroke:#999999;stroke-width:0.80000001;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;display:block"
sodipodi:nodetypes="ccc" />
<path
inkscape:connector-curvature="0"
id="path311-3"
d="m 15.5,1036.8622 0,-8"
display="block"
style="color:#000000;fill:none;stroke:#999999;stroke-width:0.80000001;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;display:block"
sodipodi:nodetypes="cc" />
<path
inkscape:connector-curvature="0"
id="path313-8"
d="m 18.5,1036.8622 0,-6.5 1,-1"
display="block"
style="color:#000000;fill:none;stroke:#999999;stroke-width:0.80000001;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;display:block"
sodipodi:nodetypes="ccc" />
<path
inkscape:connector-curvature="0"
id="path331-1"
d="m 9.5,1045.3622 0,2.5 -2,2 -3,0"
display="block"
style="color:#000000;fill:none;stroke:#999999;stroke-width:0.80000001;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;display:block"
sodipodi:nodetypes="cccc" />
<path
inkscape:connector-curvature="0"
id="path333-9"
d="m 12.5,1045.3622 0,4.5"
display="block"
style="color:#000000;fill:none;stroke:#999999;stroke-width:0.80000001;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;display:block"
sodipodi:nodetypes="cc" />
<path
sodipodi:nodetypes="ccc"
inkscape:connector-curvature="0"
id="path335-0"
d="m 15.5,1045.3622 0,3 1.5,1.5"
display="block"
style="color:#000000;fill:none;stroke:#999999;stroke-width:0.80000001;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;display:block" />
<path
inkscape:connector-curvature="0"
id="path337-9"
d="m 18.5,1045.3622 0,2.5 2,2"
display="block"
style="color:#000000;fill:none;stroke:#999999;stroke-width:0.80000001;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;display:block"
sodipodi:nodetypes="ccc" />
<path
inkscape:connector-curvature="0"
id="path339-8"
d="m 4.5,1030.8622 2,2 0,13.5 -1,1 -1,0 z"
display="block"
style="color:#000000;fill:#999999;stroke:#999999;stroke-width:0.80000001;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;display:block"
sodipodi:nodetypes="cccccc" />
<path
inkscape:connector-curvature="0"
id="path341-8"
d="m 23.5,1049.3622 -2,-2 0,-14.5 2,1 z"
display="block"
style="color:#000000;fill:#999999;stroke:#999999;stroke-width:0.80000001;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;display:block"
sodipodi:nodetypes="ccccc" />
<path
inkscape:connector-curvature="0"
id="path315-3"
display="block"
d="m 9.5,1037.0562 0,1.306"
style="color:#000000;fill:none;stroke:#999999;stroke-width:1.60000002;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none;display:block"
sodipodi:nodetypes="cc" />
<path
inkscape:connector-curvature="0"
id="path317-7"
display="block"
d="m 12.5,1037.0562 0,1.306"
style="color:#000000;fill:none;stroke:#999999;stroke-width:1.60000002;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;display:block"
sodipodi:nodetypes="cc" />
<path
inkscape:connector-curvature="0"
id="path319-9"
display="block"
d="m 15.5,1037.0562 0,1.306"
style="color:#000000;fill:none;stroke:#999999;stroke-width:1.60000002;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;display:block"
sodipodi:nodetypes="cc" />
<path
inkscape:connector-curvature="0"
id="path321-3"
display="block"
d="m 18.5,1037.0562 0,1.306"
style="color:#000000;fill:none;stroke:#999999;stroke-width:1.60000002;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;display:block"
sodipodi:nodetypes="cc" />
<path
inkscape:connector-curvature="0"
id="path323-7"
display="block"
d="m 18.5,1043.3622 0,1.306"
style="color:#000000;fill:none;stroke:#999999;stroke-width:1.60000002;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;display:block"
sodipodi:nodetypes="cc" />
<path
inkscape:connector-curvature="0"
id="path325-8"
display="block"
d="m 15.5,1043.3622 0,1.306"
style="color:#000000;fill:none;stroke:#999999;stroke-width:1.60000002;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;display:block"
sodipodi:nodetypes="cc" />
<path
inkscape:connector-curvature="0"
id="path327-7"
display="block"
d="m 12.5,1043.3622 0,1.306"
style="color:#000000;fill:none;stroke:#999999;stroke-width:1.60000002;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;display:block"
sodipodi:nodetypes="cc" />
<path
inkscape:connector-curvature="0"
id="path329-4"
display="block"
d="m 9.5,1043.3622 0,1.306"
style="color:#000000;fill:none;stroke:#999999;stroke-width:1.60000002;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;display:block"
sodipodi:nodetypes="cc" />
<path
sodipodi:nodetypes="cccc"
transform="translate(0,1026.3622)"
inkscape:connector-curvature="0"
id="path3783"
d="m 17,1 c 1,0.5 7.5,7 8,8 C 23,8 20,8 18,8 18,6 18,3 17,1 z"
style="opacity:0.5;fill:#373737;fill-opacity:1;stroke:none;filter:url(#filter3952)" />
<path
style="fill:#ff0000;fill-rule:evenodd;stroke:#808080;stroke-width:1;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;stroke-miterlimit:4;stroke-dasharray:none"
d="M 10 6.53125 C 4.7678286 6.53125 0.53125 10.767829 0.53125 16 C 0.53125 21.232171 4.7678286 25.46875 10 25.46875 C 15.232171 25.46875 19.46875 21.232171 19.46875 16 C 19.46875 10.767829 15.232171 6.53125 10 6.53125 z M 10 12 C 12.209125 12 14 13.790875 14 16 C 14 18.209125 12.209125 20 10 20 C 7.7908754 20 6 18.209125 6 16 C 6 13.790875 7.7908754 12 10 12 z "
transform="translate(0,1026.3622)"
id="path3131" />
<path
style="fill:url(#radialGradient3975);fill-opacity:1;stroke:none"
d="m 17,1 c 3,1 7,5 8,8 C 23.5,8 22,7 19,7 19,4 18,2.5 17,1 z"
id="path3765"
inkscape:connector-curvature="0"
transform="translate(0,1026.3622)"
sodipodi:nodetypes="cccc" />
<path
style="fill:#ffffff;fill-opacity:1;stroke:none"
d="m 10,25 c 4.970563,0 9,-4.029437 9,-9 l -4.5,0 c 0,2.485281 -2.014719,4.5 -4.5,4.5 z M 5.5,16 c 0,-2.485281 2.0147186,-4.5 4.5,-4.5 L 10,7 C 5.0294373,7 1,11.029437 1,16 z"
transform="translate(0,1026.3622)"
id="path3907"
inkscape:connector-curvature="0"
sodipodi:nodetypes="cccccccccc" />
</g>
</svg>

After

Width:  |  Height:  |  Size: 23 KiB

View File

@ -0,0 +1,730 @@
<?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:xlink="http://www.w3.org/1999/xlink"
xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
width="26"
height="26"
id="svg2"
version="1.1"
inkscape:version="0.48.5 r10040"
sodipodi:docname="revert_pcbnew.svg">
<defs
id="defs4">
<linearGradient
id="linearGradient3775">
<stop
style="stop-color:#ffffff;stop-opacity:1;"
offset="0"
id="stop3777" />
<stop
style="stop-color:#e1e1e1;stop-opacity:1;"
offset="1"
id="stop3779" />
</linearGradient>
<linearGradient
id="linearGradient3767">
<stop
style="stop-color:#ffffff;stop-opacity:1;"
offset="0"
id="stop3769" />
<stop
style="stop-color:#dcdcdc;stop-opacity:1;"
offset="1"
id="stop3771" />
</linearGradient>
<linearGradient
inkscape:collect="always"
xlink:href="#linearGradient3775"
id="linearGradient3781"
x1="20"
y1="21"
x2="1"
y2="1"
gradientUnits="userSpaceOnUse" />
<filter
inkscape:collect="always"
id="filter3899">
<feGaussianBlur
inkscape:collect="always"
stdDeviation="0.375"
id="feGaussianBlur3901" />
</filter>
<filter
inkscape:collect="always"
id="filter3952"
x="-0.12"
width="1.24"
y="-0.12"
height="1.24">
<feGaussianBlur
inkscape:collect="always"
stdDeviation="0.35"
id="feGaussianBlur3954" />
</filter>
<radialGradient
inkscape:collect="always"
xlink:href="#linearGradient3767"
id="radialGradient3975"
cx="17.249992"
cy="6.4166613"
fx="17.249992"
fy="6.4166613"
r="3.5"
gradientUnits="userSpaceOnUse"
gradientTransform="matrix(0.85714311,-0.85714265,1.4285709,1.4285716,-4.9523675,12.619044)" />
<linearGradient
inkscape:collect="always"
xlink:href="#be-2-3"
id="linearGradient4120"
gradientUnits="userSpaceOnUse"
gradientTransform="matrix(0.64407,-0.64045,0.66092,0.65072,61.423,86.661)"
x1="23.576"
y1="25.357"
x2="23.576"
y2="31.211" />
<linearGradient
id="be-2-3"
y2="31.211"
gradientUnits="userSpaceOnUse"
x2="23.576"
gradientTransform="matrix(0.64407,-0.64045,0.66092,0.65072,61.423,86.661)"
y1="25.357"
x1="23.576">
<stop
offset="0"
id="stop180-9" />
<stop
stop-color="#c3c3c3"
offset=".13483"
id="stop182-1" />
<stop
stop-color="#8c8c8c"
offset=".20224"
id="stop184-9" />
<stop
stop-color="#fff"
offset=".26966"
id="stop186-6" />
<stop
stop-color="#757575"
offset=".4465"
id="stop188-5-9" />
<stop
stop-color="#7d7d7d"
offset=".57114"
id="stop190-8-3" />
<stop
stop-color="#b6b6b6"
offset=".72038"
id="stop192-3" />
<stop
offset="1"
id="stop194-8" />
</linearGradient>
<linearGradient
inkscape:collect="always"
xlink:href="#ar-2-5"
id="linearGradient4122"
gradientUnits="userSpaceOnUse"
gradientTransform="matrix(0.62586,-0.62234,0.77349,0.76155,59.298,83.616)"
x1="30.038"
y1="24.99"
x2="30.038"
y2="30" />
<linearGradient
id="ar-2-5">
<stop
stop-color="#3e3e3e"
offset="0"
id="stop166-8-6" />
<stop
stop-color="#828282"
offset=".5"
id="stop168-4-6" />
<stop
stop-color="#3c3c3c"
offset="1"
id="stop170-4" />
</linearGradient>
<linearGradient
inkscape:collect="always"
xlink:href="#aq-0"
id="linearGradient4124"
gradientUnits="userSpaceOnUse"
gradientTransform="matrix(0.62586,-0.62234,0.77349,0.76155,59.119,83.794)"
x1="30.038"
y1="24.99"
x2="30.038"
y2="30" />
<linearGradient
id="aq-0">
<stop
stop-color="#999"
offset="0"
id="stop173-4" />
<stop
stop-color="#fff"
offset=".5"
id="stop175-6" />
<stop
stop-color="#777"
offset="1"
id="stop177-2" />
</linearGradient>
<linearGradient
inkscape:collect="always"
xlink:href="#ar-2-5"
id="linearGradient4126"
gradientUnits="userSpaceOnUse"
gradientTransform="matrix(0.62586,-0.62234,0.77349,0.76155,59.921,82.996)"
x1="30.038"
y1="24.99"
x2="30.038"
y2="30" />
<linearGradient
id="linearGradient3332">
<stop
stop-color="#3e3e3e"
offset="0"
id="stop3334" />
<stop
stop-color="#828282"
offset=".5"
id="stop3336" />
<stop
stop-color="#3c3c3c"
offset="1"
id="stop3338" />
</linearGradient>
<linearGradient
inkscape:collect="always"
xlink:href="#aq-0"
id="linearGradient4128"
gradientUnits="userSpaceOnUse"
gradientTransform="matrix(0.62586,-0.62234,0.77349,0.76155,59.742,83.175)"
x1="30.038"
y1="24.99"
x2="30.038"
y2="30" />
<linearGradient
id="linearGradient3341">
<stop
stop-color="#999"
offset="0"
id="stop3343" />
<stop
stop-color="#fff"
offset=".5"
id="stop3345" />
<stop
stop-color="#777"
offset="1"
id="stop3347" />
</linearGradient>
<linearGradient
inkscape:collect="always"
xlink:href="#ar-2-5"
id="linearGradient4130"
gradientUnits="userSpaceOnUse"
gradientTransform="matrix(0.62586,-0.62234,0.77349,0.76155,60.547,82.374)"
x1="30.038"
y1="24.99"
x2="30.038"
y2="30" />
<linearGradient
id="linearGradient3350">
<stop
stop-color="#3e3e3e"
offset="0"
id="stop3352" />
<stop
stop-color="#828282"
offset=".5"
id="stop3354" />
<stop
stop-color="#3c3c3c"
offset="1"
id="stop3356" />
</linearGradient>
<linearGradient
inkscape:collect="always"
xlink:href="#aq-0"
id="linearGradient4132"
gradientUnits="userSpaceOnUse"
gradientTransform="matrix(0.62586,-0.62234,0.77349,0.76155,60.367,82.552)"
x1="30.038"
y1="24.99"
x2="30.038"
y2="30" />
<linearGradient
id="linearGradient3359">
<stop
stop-color="#999"
offset="0"
id="stop3361" />
<stop
stop-color="#fff"
offset=".5"
id="stop3363" />
<stop
stop-color="#777"
offset="1"
id="stop3365" />
</linearGradient>
<linearGradient
inkscape:collect="always"
xlink:href="#bl-2-6"
id="linearGradient4134"
gradientUnits="userSpaceOnUse"
gradientTransform="matrix(0.62586,-0.62234,0.77349,0.76155,59.06,83.852)"
x1="9"
y1="29.056999"
x2="9"
y2="26.030001" />
<linearGradient
id="bl-2-6"
y2="26.030001"
gradientUnits="userSpaceOnUse"
x2="9"
gradientTransform="matrix(0.62586,-0.62234,0.77349,0.76155,59.06,83.852)"
y1="29.056999"
x1="9">
<stop
stop-color="#e4db7b"
offset="0"
id="stop203-9-1" />
<stop
stop-color="#f4f0c8"
offset="1"
id="stop205-9-3" />
</linearGradient>
<linearGradient
inkscape:collect="always"
xlink:href="#bm-0-2"
id="linearGradient4136"
gradientUnits="userSpaceOnUse"
gradientTransform="matrix(0.52586,0,0,0.51993,81.027,79.545)"
x1="5.5179"
y1="37.372002"
x2="9.5221004"
y2="41.391998" />
<linearGradient
id="bm-0-2"
y2="41.391998"
gradientUnits="userSpaceOnUse"
x2="9.5221004"
gradientTransform="matrix(0.52586,0,0,0.51993,81.027,79.545)"
y1="37.372002"
x1="5.5179">
<stop
stop-color="#cbbd27"
offset="0"
id="stop208-1" />
<stop
stop-color="#9b901d"
offset="1"
id="stop210-5" />
</linearGradient>
<linearGradient
inkscape:collect="always"
xlink:href="#e"
id="linearGradient3005"
gradientUnits="userSpaceOnUse"
x1="25.445999"
y1="20.688"
x2="25.445999"
y2="16.375"
gradientTransform="matrix(-0.542,0,0,0.542,25.532218,0.06612362)" />
<linearGradient
id="e"
y2="16.375"
gradientUnits="userSpaceOnUse"
x2="25.445999"
y1="20.688"
x1="25.445999">
<stop
stop-color="#edd400"
offset="0"
id="stop12" />
<stop
stop-color="#fce94f"
offset="1"
id="stop14" />
</linearGradient>
<linearGradient
inkscape:collect="always"
xlink:href="#f"
id="linearGradient3002"
gradientUnits="userSpaceOnUse"
x1="21.677"
y1="29.705"
x2="18.072001"
y2="55.692001"
gradientTransform="matrix(-0.542,0,0,0.542,25.532218,0.06612362)" />
<linearGradient
id="f"
y2="55.692001"
gradientUnits="userSpaceOnUse"
x2="18.072001"
y1="29.705"
x1="21.677">
<stop
stop-color="#fff"
offset="0"
id="stop17" />
<stop
stop-color="#fff"
stop-opacity="0"
offset="1"
id="stop19" />
</linearGradient>
<linearGradient
y2="13.526"
x2="25.561001"
y1="8.7343998"
x1="15.457"
gradientTransform="matrix(0.7753852,0,0,0.7751684,-1.917914,1.3424252)"
gradientUnits="userSpaceOnUse"
id="linearGradient3041"
xlink:href="#g"
inkscape:collect="always" />
<linearGradient
id="g"
y2="13.526"
gradientUnits="userSpaceOnUse"
x2="25.561001"
gradientTransform="matrix(-1.4306,0,0,1.4302,50.646,2.3548)"
y1="8.7343998"
x1="15.457">
<stop
stop-color="#fff"
offset="0"
id="stop22" />
<stop
stop-color="#fff"
stop-opacity="0"
offset="1"
id="stop24" />
</linearGradient>
<linearGradient
y2="13.526"
x2="25.561001"
y1="8.7343998"
x1="15.457"
gradientTransform="matrix(0.7753852,0,0,0.7751684,-1.917914,1.3424252)"
gradientUnits="userSpaceOnUse"
id="linearGradient3097"
xlink:href="#g"
inkscape:collect="always" />
</defs>
<sodipodi:namedview
id="base"
pagecolor="#ffffff"
bordercolor="#666666"
borderopacity="1.0"
inkscape:pageopacity="0"
inkscape:pageshadow="2"
inkscape:zoom="15.365974"
inkscape:cx="1.3063586"
inkscape:cy="10.023132"
inkscape:document-units="px"
inkscape:current-layer="g3010"
showgrid="true"
inkscape:showpageshadow="false"
inkscape:window-width="1362"
inkscape:window-height="732"
inkscape:window-x="0"
inkscape:window-y="16"
inkscape:window-maximized="0">
<inkscape:grid
type="xygrid"
id="grid2985"
empspacing="2"
visible="true"
enabled="true"
snapvisiblegridlinesonly="true"
spacingx="0.5px"
spacingy="0.5px" />
</sodipodi:namedview>
<metadata
id="metadata7">
<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 />
</cc:Work>
</rdf:RDF>
</metadata>
<g
inkscape:label="Layer 1"
inkscape:groupmode="layer"
id="layer1"
transform="translate(0,-1026.3622)">
<path
sodipodi:nodetypes="cccccc"
inkscape:connector-curvature="0"
id="path3889"
d="m 0.5,0.5 17,0 c 3,1 7,5 8,8 l 0,17 -25,0 z"
style="opacity:0.5;fill:#000000;fill-opacity:1;stroke:none;filter:url(#filter3899)"
transform="translate(0,1026.3622)" />
<path
style="fill:url(#linearGradient3781);fill-opacity:1;stroke:none"
d="m 1,1 16,0 c 3,1 7,5 8,8 l 0,16 -24,0 z"
id="rect3761"
inkscape:connector-curvature="0"
sodipodi:nodetypes="cccccc"
transform="translate(0,1026.3622)" />
<path
sodipodi:type="arc"
style="opacity:0.3;fill:#000000;fill-opacity:1;stroke:none"
id="path3903"
sodipodi:cx="2.5"
sodipodi:cy="3.5"
sodipodi:rx="1"
sodipodi:ry="1"
d="m 3.5,3.5 c 0,0.5522847 -0.4477153,1 -1,1 -0.5522847,0 -1,-0.4477153 -1,-1 0,-0.5522847 0.4477153,-1 1,-1 0.5522847,0 1,0.4477153 1,1 z"
transform="matrix(0.75,0,0,0.75,0.625,1026.2372)" />
<path
transform="matrix(0.75,0,0,0.75,0.625,1029.2372)"
d="m 3.5,3.5 c 0,0.5522847 -0.4477153,1 -1,1 -0.5522847,0 -1,-0.4477153 -1,-1 0,-0.5522847 0.4477153,-1 1,-1 0.5522847,0 1,0.4477153 1,1 z"
sodipodi:ry="1"
sodipodi:rx="1"
sodipodi:cy="3.5"
sodipodi:cx="2.5"
id="path3906"
style="opacity:0.3;fill:#000000;fill-opacity:1;stroke:none"
sodipodi:type="arc" />
<path
transform="matrix(0.75,0,0,0.75,0.625,1032.2372)"
d="m 3.5,3.5 c 0,0.5522847 -0.4477153,1 -1,1 -0.5522847,0 -1,-0.4477153 -1,-1 0,-0.5522847 0.4477153,-1 1,-1 0.5522847,0 1,0.4477153 1,1 z"
sodipodi:ry="1"
sodipodi:rx="1"
sodipodi:cy="3.5"
sodipodi:cx="2.5"
id="path3908"
style="opacity:0.3;fill:#000000;fill-opacity:1;stroke:none"
sodipodi:type="arc" />
<path
sodipodi:type="arc"
style="opacity:0.3;fill:#000000;fill-opacity:1;stroke:none"
id="path3910"
sodipodi:cx="2.5"
sodipodi:cy="3.5"
sodipodi:rx="1"
sodipodi:ry="1"
d="m 3.5,3.5 c 0,0.5522847 -0.4477153,1 -1,1 -0.5522847,0 -1,-0.4477153 -1,-1 0,-0.5522847 0.4477153,-1 1,-1 0.5522847,0 1,0.4477153 1,1 z"
transform="matrix(0.75,0,0,0.75,0.625,1035.2372)" />
<path
transform="matrix(0.75,0,0,0.75,0.625,1038.2372)"
d="m 3.5,3.5 c 0,0.5522847 -0.4477153,1 -1,1 -0.5522847,0 -1,-0.4477153 -1,-1 0,-0.5522847 0.4477153,-1 1,-1 0.5522847,0 1,0.4477153 1,1 z"
sodipodi:ry="1"
sodipodi:rx="1"
sodipodi:cy="3.5"
sodipodi:cx="2.5"
id="path3912"
style="opacity:0.3;fill:#000000;fill-opacity:1;stroke:none"
sodipodi:type="arc" />
<path
sodipodi:type="arc"
style="opacity:0.3;fill:#000000;fill-opacity:1;stroke:none"
id="path3914"
sodipodi:cx="2.5"
sodipodi:cy="3.5"
sodipodi:rx="1"
sodipodi:ry="1"
d="m 3.5,3.5 c 0,0.5522847 -0.4477153,1 -1,1 -0.5522847,0 -1,-0.4477153 -1,-1 0,-0.5522847 0.4477153,-1 1,-1 0.5522847,0 1,0.4477153 1,1 z"
transform="matrix(0.75,0,0,0.75,0.625,1041.2372)" />
<path
sodipodi:type="arc"
style="opacity:0.3;fill:#000000;fill-opacity:1;stroke:none"
id="path3916"
sodipodi:cx="2.5"
sodipodi:cy="3.5"
sodipodi:rx="1"
sodipodi:ry="1"
d="m 3.5,3.5 c 0,0.5522847 -0.4477153,1 -1,1 -0.5522847,0 -1,-0.4477153 -1,-1 0,-0.5522847 0.4477153,-1 1,-1 0.5522847,0 1,0.4477153 1,1 z"
transform="matrix(0.75,0,0,0.75,0.625,1044.2372)" />
<path
transform="matrix(0.75,0,0,0.75,0.625,1047.2372)"
d="m 3.5,3.5 c 0,0.5522847 -0.4477153,1 -1,1 -0.5522847,0 -1,-0.4477153 -1,-1 0,-0.5522847 0.4477153,-1 1,-1 0.5522847,0 1,0.4477153 1,1 z"
sodipodi:ry="1"
sodipodi:rx="1"
sodipodi:cy="3.5"
sodipodi:cx="2.5"
id="path3918"
style="opacity:0.3;fill:#000000;fill-opacity:1;stroke:none"
sodipodi:type="arc" />
<path
inkscape:connector-curvature="0"
id="path307-5"
d="m 6.5,1028.8622 3,3 0,5"
display="block"
style="color:#000000;fill:none;stroke:#999999;stroke-width:0.80000001;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;display:block"
sodipodi:nodetypes="ccc" />
<path
inkscape:connector-curvature="0"
id="path309-3"
d="m 12.5,1036.8622 0,-6.5 -1.5,-1.5"
display="block"
style="color:#000000;fill:none;stroke:#999999;stroke-width:0.80000001;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;display:block"
sodipodi:nodetypes="ccc" />
<path
inkscape:connector-curvature="0"
id="path311-3"
d="m 15.5,1036.8622 0,-8"
display="block"
style="color:#000000;fill:none;stroke:#999999;stroke-width:0.80000001;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;display:block"
sodipodi:nodetypes="cc" />
<path
inkscape:connector-curvature="0"
id="path313-8"
d="m 18.5,1036.8622 0,-6.5 1,-1"
display="block"
style="color:#000000;fill:none;stroke:#999999;stroke-width:0.80000001;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;display:block"
sodipodi:nodetypes="ccc" />
<path
inkscape:connector-curvature="0"
id="path331-1"
d="m 9.5,1045.3622 0,2.5 -2,2 -3,0"
display="block"
style="color:#000000;fill:none;stroke:#999999;stroke-width:0.80000001;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;display:block"
sodipodi:nodetypes="cccc" />
<path
inkscape:connector-curvature="0"
id="path333-9"
d="m 12.5,1045.3622 0,4.5"
display="block"
style="color:#000000;fill:none;stroke:#999999;stroke-width:0.80000001;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;display:block"
sodipodi:nodetypes="cc" />
<path
sodipodi:nodetypes="ccc"
inkscape:connector-curvature="0"
id="path335-0"
d="m 15.5,1045.3622 0,3 1.5,1.5"
display="block"
style="color:#000000;fill:none;stroke:#999999;stroke-width:0.80000001;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;display:block" />
<path
inkscape:connector-curvature="0"
id="path337-9"
d="m 18.5,1045.3622 0,2.5 2,2"
display="block"
style="color:#000000;fill:none;stroke:#999999;stroke-width:0.80000001;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;display:block"
sodipodi:nodetypes="ccc" />
<path
inkscape:connector-curvature="0"
id="path339-8"
d="m 4.5,1030.8622 2,2 0,13.5 -1,1 -1,0 z"
display="block"
style="color:#000000;fill:#999999;stroke:#999999;stroke-width:0.80000001;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;display:block"
sodipodi:nodetypes="cccccc" />
<path
inkscape:connector-curvature="0"
id="path341-8"
d="m 23.5,1049.3622 -2,-2 0,-14.5 2,1 z"
display="block"
style="color:#000000;fill:#999999;stroke:#999999;stroke-width:0.80000001;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;display:block"
sodipodi:nodetypes="ccccc" />
<path
inkscape:connector-curvature="0"
id="path315-3"
display="block"
d="m 9.5,1037.0562 0,1.306"
style="color:#000000;fill:none;stroke:#999999;stroke-width:1.60000002;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none;display:block"
sodipodi:nodetypes="cc" />
<path
inkscape:connector-curvature="0"
id="path317-7"
display="block"
d="m 12.5,1037.0562 0,1.306"
style="color:#000000;fill:none;stroke:#999999;stroke-width:1.60000002;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;display:block"
sodipodi:nodetypes="cc" />
<path
inkscape:connector-curvature="0"
id="path319-9"
display="block"
d="m 15.5,1037.0562 0,1.306"
style="color:#000000;fill:none;stroke:#999999;stroke-width:1.60000002;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;display:block"
sodipodi:nodetypes="cc" />
<path
inkscape:connector-curvature="0"
id="path321-3"
display="block"
d="m 18.5,1037.0562 0,1.306"
style="color:#000000;fill:none;stroke:#999999;stroke-width:1.60000002;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;display:block"
sodipodi:nodetypes="cc" />
<path
inkscape:connector-curvature="0"
id="path323-7"
display="block"
d="m 18.5,1043.3622 0,1.306"
style="color:#000000;fill:none;stroke:#999999;stroke-width:1.60000002;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;display:block"
sodipodi:nodetypes="cc" />
<path
inkscape:connector-curvature="0"
id="path325-8"
display="block"
d="m 15.5,1043.3622 0,1.306"
style="color:#000000;fill:none;stroke:#999999;stroke-width:1.60000002;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;display:block"
sodipodi:nodetypes="cc" />
<path
inkscape:connector-curvature="0"
id="path327-7"
display="block"
d="m 12.5,1043.3622 0,1.306"
style="color:#000000;fill:none;stroke:#999999;stroke-width:1.60000002;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;display:block"
sodipodi:nodetypes="cc" />
<path
inkscape:connector-curvature="0"
id="path329-4"
display="block"
d="m 9.5,1043.3622 0,1.306"
style="color:#000000;fill:none;stroke:#999999;stroke-width:1.60000002;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;display:block"
sodipodi:nodetypes="cc" />
<path
sodipodi:nodetypes="cccc"
transform="translate(0,1026.3622)"
inkscape:connector-curvature="0"
id="path3783"
d="m 17,1 c 1,0.5 7.5,7 8,8 C 23,8 20,8 18,8 18,6 18,3 17,1 z"
style="opacity:0.5;fill:#373737;fill-opacity:1;stroke:none;filter:url(#filter3952)" />
<path
style="fill:url(#radialGradient3975);fill-opacity:1;stroke:none"
d="m 17,1 c 3,1 7,5 8,8 C 23.5,8 22,7 19,7 19,4 18,2.5 17,1 z"
id="path3765"
inkscape:connector-curvature="0"
transform="translate(0,1026.3622)"
sodipodi:nodetypes="cccc" />
<g
transform="matrix(0.86215706,0,0,0.86215706,1.7806504,1028.212)"
id="g3010">
<path
style="color:#000000;fill:url(#linearGradient3005);stroke:#c49600;stroke-width:1.15988147;display:block;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
d="M 16.087868,22.77213 C 25.37829,17.649688 20.147123,6.7918016 11.211494,6.8768956 v -4.372043 l -8.714276,7.6194364 8.714276,7.991248 v -4.731118 c 5.54737,-0.225017 7.990164,3.938714 3.128587,7.242746 -1.391369,0.945681 -0.427519,3.344519 1.748058,2.144965 z"
display="block"
id="path30"
inkscape:connector-curvature="0" />
<path
style="opacity:0.61798;color:#000000;fill:none;stroke:url(#linearGradient3002);stroke-width:0.542;display:block"
d="m 10.660822,3.6907486 v 3.18425 c 0.0046,0.2974225 0.244578,0.537431 0.542,0.542 4.24386,-0.040108 7.578786,2.537644 8.757094,5.6573964 1.178091,3.119752 0.313005,6.770122 -4.150094,9.230802 -0.460798,0.254073 -0.794464,0.279525 -1.01625,0.237125 -0.221776,-0.0424 -0.361845,-0.161007 -0.457312,-0.321813 -0.190942,-0.321606 -0.162698,-0.817011 0.304875,-1.134839 1.277602,-0.868393 2.118623,-1.816242 2.540625,-2.794661 0.421984,-0.978418 0.400982,-1.990386 -0.01694,-2.8455 -0.835818,-1.710172 -3.064468,-2.726585 -5.978802,-2.608375 -0.290794,0.01343 -0.520867,0.25093 -0.525063,0.542 v 3.489125 L 3.3103535,10.126321 10.660957,3.6906131 z"
display="block"
id="path32"
inkscape:connector-curvature="0" />
<path
d="m 2.952498,10.150034 c 10.0541,-1.6964604 15.66109,1.1653 17.77489,5.656312 0.0833,-6.8525064 -7.025946,-8.8454404 -9.80478,-8.6351444 l 0.0087,-4.068794 -7.978782,7.0476264 z"
id="path34"
inkscape:connector-curvature="0"
style="opacity:0.45;fill:url(#linearGradient3097);fill-rule:evenodd" />
</g>
</g>
</svg>

After

Width:  |  Height:  |  Size: 25 KiB

View File

@ -11,17 +11,19 @@
height="26"
width="26"
version="1.1"
viewBox="0 0 26 26"
id="svg2"
inkscape:version="0.48.3.1 r9886"
sodipodi:docname="show_footprint.svg">
sodipodi:docname="export_footprint_names.svg">
<metadata
id="metadata158">
id="metadata100">
<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></dc:title>
</cc:Work>
</rdf:RDF>
</metadata>
@ -34,194 +36,753 @@
guidetolerance="10"
inkscape:pageopacity="0"
inkscape:pageshadow="2"
inkscape:window-width="1600"
inkscape:window-height="849"
id="namedview156"
inkscape:window-width="1301"
inkscape:window-height="744"
id="namedview98"
showgrid="true"
inkscape:snap-grids="false"
inkscape:snap-to-guides="false"
inkscape:zoom="19.666667"
inkscape:cx="11.617573"
inkscape:cy="10.745084"
inkscape:window-x="0"
inkscape:window-y="29"
inkscape:zoom="16.23626"
inkscape:cx="6.1241663"
inkscape:cy="13.89032"
inkscape:window-x="65"
inkscape:window-y="24"
inkscape:window-maximized="1"
inkscape:current-layer="svg2">
inkscape:current-layer="svg2"
showguides="true"
inkscape:guide-bbox="true">
<inkscape:grid
type="xygrid"
id="grid3100"
empspacing="1"
id="grid3020"
empspacing="2"
visible="true"
enabled="true"
snapvisiblegridlinesonly="true" />
snapvisiblegridlinesonly="true"
spacingx="0.5px"
spacingy="0.5px" />
</sodipodi:namedview>
<defs
id="defs4">
<linearGradient
id="y"
y2="4.2192998"
id="linearGradient4067"
y2="39.685001"
gradientUnits="userSpaceOnUse"
x2="7.5955"
gradientTransform="matrix(0.3852,0,0,0.33692,-30.53,-1.1934)"
y1="43.993999"
x1="40.751999">
x2="34.534"
gradientTransform="matrix(1.2419,0,0,1.2419,36.866,-2.4533)"
y1="12.285"
x1="14.463">
<stop
stop-color="#333"
stop-color="#c9c9c9"
offset="0"
id="stop78" />
id="stop4069" />
<stop
stop-color="#474747"
stop-color="#f8f8f8"
offset="0.44999999"
id="stop4071" />
<stop
stop-color="#e2e2e2"
offset="0.66666645"
id="stop4073" />
<stop
stop-color="#b0b0b0"
offset="0.95000005"
id="stop4075" />
<stop
stop-color="#c9c9c9"
offset="1"
id="stop80" />
id="stop4077" />
</linearGradient>
<linearGradient
x1="14.463"
y1="12.285"
gradientTransform="matrix(1.2419,0,0,1.2419,36.866,-2.4533)"
x2="34.534"
gradientUnits="userSpaceOnUse"
y2="39.685001"
id="linearGradient4053">
<stop
id="stop4055"
offset="0"
stop-color="#c9c9c9" />
<stop
id="stop4057"
offset="0.34999999"
stop-color="#f8f8f8" />
<stop
id="stop4059"
offset="0.59999996"
stop-color="#e2e2e2" />
<stop
id="stop4061"
offset="0.84999996"
stop-color="#b0b0b0" />
<stop
id="stop4063"
offset="1"
stop-color="#c9c9c9" />
</linearGradient>
<inkscape:perspective
sodipodi:type="inkscape:persp3d"
inkscape:vp_x="0 : 24 : 1"
inkscape:vp_y="0 : 1000 : 0"
inkscape:vp_z="48 : 24 : 1"
inkscape:persp3d-origin="24 : 16 : 1"
id="perspective102" />
<linearGradient
id="h"
y2="14.691"
gradientUnits="userSpaceOnUse"
x2="30.431999"
gradientTransform="translate(6.3922,12.185)"
y1="12.338"
x1="28.079">
<stop
stop-color="#fcaf3e"
offset="0"
id="stop7" />
<stop
stop-color="#ce5c00"
offset="1"
id="stop9" />
</linearGradient>
<linearGradient
id="i"
y2="22.118999"
gradientUnits="userSpaceOnUse"
x2="22.809999"
gradientTransform="translate(6.3922,12.185)"
y1="21.481001"
x1="23.448">
<stop
stop-color="#ce5c00"
offset="0"
id="stop12" />
<stop
stop-color="#ce5c00"
offset="1"
id="stop14" />
</linearGradient>
<linearGradient
id="j"
y2="32.714001"
gradientUnits="userSpaceOnUse"
x2="25.485001"
y1="34.389999"
x1="26.379">
<stop
stop-color="#e9b96e"
offset="0"
id="stop17" />
<stop
stop-color="#fff"
offset="1"
id="stop19" />
</linearGradient>
<radialGradient
id="l"
gradientUnits="userSpaceOnUse"
cy="128"
cx="-138.84"
gradientTransform="matrix(0.35473,-0.34328,0.35696,0.34544,130.15,-71.026)"
r="9.1267004">
<stop
stop-color="#f9a9a9"
offset="0"
id="stop22" />
<stop
stop-color="#ab5f5f"
offset="1"
id="stop24" />
</radialGradient>
<linearGradient
id="k"
y2="134.25"
gradientUnits="userSpaceOnUse"
x2="-158.75"
gradientTransform="matrix(0.20949,-0.20274,0.20949,0.20274,129.28,-31.999)"
y1="115.94"
x1="-158.75">
<stop
stop-color="#ddd"
offset="0"
id="stop27" />
<stop
stop-color="#fff"
offset=".34468"
id="stop29" />
<stop
stop-color="#737373"
offset=".72695"
id="stop31" />
<stop
stop-color="#bbb"
offset="1"
id="stop33" />
</linearGradient>
<linearGradient
id="g"
y2="-20.465"
gradientUnits="userSpaceOnUse"
x2="253.64999"
gradientTransform="matrix(0.076209,0,0,0.0837,-38.77,12.013)"
y1="-3.7385001"
x1="-15.36">
<stop
stop-color="#faff00"
offset="0"
id="stop36" />
<stop
stop-color="#0bae09"
offset="1"
id="stop38" />
</linearGradient>
<radialGradient
id="e"
gradientUnits="userSpaceOnUse"
cy="20.493999"
cx="35.292999"
gradientTransform="matrix(0,-0.84302,1.0202,0,-4.8963249,41.059418)"
r="16.955999">
<stop
stop-color="#73d216"
offset="0"
id="stop12-7" />
<stop
stop-color="#4e9a06"
offset="1"
id="stop14-2" />
</radialGradient>
<radialGradient
id="f"
gradientUnits="userSpaceOnUse"
cy="1.535"
cx="15.987"
gradientTransform="matrix(0,-2.0467,-1.5576,0,38.613235,65.406418)"
r="17.171">
<stop
stop-color="#fff"
offset="0"
id="stop17-4" />
<stop
stop-color="#fff"
stop-opacity="0"
offset="1"
id="stop19-5" />
</radialGradient>
<linearGradient
inkscape:collect="always"
xlink:href="#ad"
id="linearGradient3095"
gradientUnits="userSpaceOnUse"
gradientTransform="matrix(0.41988578,0,0,0.39843199,7.8528064,8.6668249)"
x1="14.463"
y1="12.285"
x2="34.534"
y2="39.685001" />
<linearGradient
id="ad"
y2="39.685001"
gradientUnits="userSpaceOnUse"
x2="34.534"
gradientTransform="matrix(1.2419,0,0,1.2419,36.866,-2.4533)"
y1="12.285"
x1="14.463">
<stop
stop-color="#c9c9c9"
offset="0"
id="stop34" />
<stop
stop-color="#f8f8f8"
offset=".25"
id="stop36-5" />
<stop
stop-color="#e2e2e2"
offset=".5"
id="stop38-6" />
<stop
stop-color="#b0b0b0"
offset=".75"
id="stop40" />
<stop
stop-color="#c9c9c9"
offset="1"
id="stop42" />
</linearGradient>
<linearGradient
id="linearGradient4134"
y2="28"
gradientUnits="userSpaceOnUse"
x2="-5"
gradientTransform="matrix(-1.2091711,0,0,1.1263729,4.7731704,-27.330323)"
y1="30.486"
x1="-5">
<stop
id="stop53-3"
stop-color="#d8cb00"
offset="0" />
<stop
id="stop55-5"
stop-color="#fff119"
offset="1" />
</linearGradient>
<linearGradient
y2="12.805"
x2="10"
y1="44.015999"
x1="10"
gradientTransform="matrix(0.60606203,0,0,0.60307714,-0.18961248,-2.9899238)"
gradientUnits="userSpaceOnUse"
id="linearGradient3074"
xlink:href="#linearGradient3125"
inkscape:collect="always" />
<linearGradient
id="linearGradient3125"
y2="12.805"
gradientUnits="userSpaceOnUse"
y1="44.015999"
gradientTransform="matrix(0.60606203,0,0,0.60307714,-0.18961248,-2.9899238)"
x2="10"
x1="10">
<stop
id="stop58-0"
stop-color="#fff"
offset="0" />
<stop
id="stop60-2"
stop-color="#fff"
stop-opacity="0"
offset="1" />
</linearGradient>
<linearGradient
id="linearGradient4134-6"
y2="28"
gradientUnits="userSpaceOnUse"
x2="-5"
gradientTransform="matrix(1.2091711,0,0,1.2246864,11.81803,-14.894446)"
y1="30.486"
x1="-5">
<stop
id="stop53-3-8"
stop-color="#d8cb00"
offset="0" />
<stop
id="stop55-5-7"
stop-color="#fff119"
offset="1" />
</linearGradient>
<linearGradient
y2="12.805"
x2="10"
y1="44.015999"
x1="10"
gradientTransform="matrix(0.60606203,0,0,0.60307714,-0.18961248,-2.9899238)"
gradientUnits="userSpaceOnUse"
id="linearGradient3074-6"
xlink:href="#linearGradient3125-5"
inkscape:collect="always" />
<linearGradient
id="linearGradient3125-5"
y2="12.805"
gradientUnits="userSpaceOnUse"
y1="44.015999"
gradientTransform="matrix(0.60606203,0,0,0.60307714,-0.18961248,-2.9899238)"
x2="10"
x1="10">
<stop
id="stop58-0-3"
stop-color="#fff"
offset="0" />
<stop
id="stop60-2-9"
stop-color="#fff"
stop-opacity="0"
offset="1" />
</linearGradient>
<linearGradient
id="linearGradient4134-3"
y2="28"
gradientUnits="userSpaceOnUse"
x2="-5"
gradientTransform="matrix(1.2091711,0,0,1.2246864,11.81803,-14.894446)"
y1="30.486"
x1="-5">
<stop
id="stop53-3-5"
stop-color="#d8cb00"
offset="0" />
<stop
id="stop55-5-70"
stop-color="#fff119"
offset="1" />
</linearGradient>
<linearGradient
y2="12.805"
x2="10"
y1="44.015999"
x1="10"
gradientTransform="matrix(0.60606203,0,0,0.60307714,-0.18961248,-2.9899238)"
gradientUnits="userSpaceOnUse"
id="linearGradient3074-8"
xlink:href="#linearGradient3125-2"
inkscape:collect="always" />
<linearGradient
id="linearGradient3125-2"
y2="12.805"
gradientUnits="userSpaceOnUse"
y1="44.015999"
gradientTransform="matrix(0.60606203,0,0,0.60307714,-0.18961248,-2.9899238)"
x2="10"
x1="10">
<stop
id="stop58-0-2"
stop-color="#fff"
offset="0" />
<stop
id="stop60-2-94"
stop-color="#fff"
stop-opacity="0"
offset="1" />
</linearGradient>
<linearGradient
id="linearGradient4134-7"
y2="28"
gradientUnits="userSpaceOnUse"
x2="-5"
gradientTransform="matrix(1.2091711,0,0,1.2246864,11.81803,-23.190448)"
y1="30.486"
x1="-5">
<stop
id="stop53-3-0"
stop-color="#d8cb00"
offset="0" />
<stop
id="stop55-5-2"
stop-color="#fff119"
offset="1" />
</linearGradient>
<linearGradient
id="linearGradient3125-9"
y2="12.805"
gradientUnits="userSpaceOnUse"
y1="44.015999"
gradientTransform="matrix(0.60606203,0,0,0.60307714,-0.18961248,-2.9899238)"
x2="10"
x1="10">
<stop
id="stop58-0-9"
stop-color="#fff"
offset="0" />
<stop
id="stop60-2-7"
stop-color="#fff"
stop-opacity="0"
offset="1" />
</linearGradient>
<radialGradient
inkscape:collect="always"
xlink:href="#linearGradient4477"
id="radialGradient3982"
gradientUnits="userSpaceOnUse"
gradientTransform="matrix(1,0,0,0.237968,3.0753835,42.63217)"
cx="24.130018"
cy="37.967922"
fx="24.130018"
fy="37.967922"
r="16.528622" />
<linearGradient
id="linearGradient4477"
inkscape:collect="always">
<stop
id="stop4479"
offset="0"
style="stop-color:#000000;stop-opacity:1;" />
<stop
id="stop4481"
offset="1"
style="stop-color:#000000;stop-opacity:0;" />
</linearGradient>
<linearGradient
gradientTransform="translate(4.44833,20.822935)"
inkscape:collect="always"
xlink:href="#linearGradient2846"
id="linearGradient3984"
gradientUnits="userSpaceOnUse"
x1="27.366341"
y1="26.580296"
x2="31.335964"
y2="30.557772" />
<linearGradient
id="linearGradient2846">
<stop
style="stop-color:#8a8a8a;stop-opacity:1.0000000;"
offset="0.0000000"
id="stop2848" />
<stop
style="stop-color:#484848;stop-opacity:1.0000000;"
offset="1.0000000"
id="stop2850" />
</linearGradient>
<linearGradient
inkscape:collect="always"
xlink:href="#y"
id="linearGradient3122"
xlink:href="#linearGradient4440"
id="linearGradient3986"
gradientUnits="userSpaceOnUse"
gradientTransform="matrix(0.69580589,0,0,0.58926423,-3.2039216,-0.69208954)"
x1="40.751999"
y1="43.993999"
x2="7.5955"
y2="4.2192998" />
gradientTransform="matrix(1.334593,0,0,1.291292,-2.525512,13.362277)"
x1="30.65625"
y1="34"
x2="33.21875"
y2="31.0625" />
<linearGradient
id="linearGradient4440">
<stop
id="stop4442"
offset="0"
style="stop-color:#7d7d7d;stop-opacity:1;" />
<stop
style="stop-color:#b1b1b1;stop-opacity:1.0000000;"
offset="0.50000000"
id="stop4448" />
<stop
id="stop4444"
offset="1.0000000"
style="stop-color:#686868;stop-opacity:1.0000000;" />
</linearGradient>
<linearGradient
gradientTransform="translate(3.5708248,16.715274)"
inkscape:collect="always"
xlink:href="#linearGradient2366"
id="linearGradient3988"
gradientUnits="userSpaceOnUse"
x1="18.292673"
y1="13.602121"
x2="17.500893"
y2="25.743469" />
<linearGradient
id="linearGradient2366">
<stop
style="stop-color:#ffffff;stop-opacity:1;"
offset="0"
id="stop2368" />
<stop
id="stop2374"
offset="0.50000000"
style="stop-color:#ffffff;stop-opacity:0.21904762;" />
<stop
style="stop-color:#ffffff;stop-opacity:1.0000000;"
offset="1.0000000"
id="stop2370" />
</linearGradient>
<radialGradient
gradientTransform="translate(3.1805273,14.888264)"
inkscape:collect="always"
xlink:href="#linearGradient4454"
id="radialGradient3990"
gradientUnits="userSpaceOnUse"
cx="18.240929"
cy="21.817987"
fx="18.240929"
fy="21.817987"
r="8.3085051" />
<linearGradient
id="linearGradient4454">
<stop
id="stop4456"
offset="0.0000000"
style="stop-color:#729fcf;stop-opacity:0.20784314;" />
<stop
id="stop4458"
offset="1.0000000"
style="stop-color:#729fcf;stop-opacity:0.67619050;" />
</linearGradient>
<radialGradient
r="6.65625"
fy="13.078408"
fx="15.414371"
cy="13.078408"
cx="15.414371"
gradientTransform="matrix(2.592963,0,0,2.252104,-20.61142,1.8819351)"
gradientUnits="userSpaceOnUse"
id="radialGradient3195"
xlink:href="#linearGradient4467"
inkscape:collect="always" />
<linearGradient
id="linearGradient4467">
<stop
id="stop4469"
offset="0"
style="stop-color:#ffffff;stop-opacity:1;" />
<stop
id="stop4471"
offset="1.0000000"
style="stop-color:#ffffff;stop-opacity:0.24761905;" />
</linearGradient>
<radialGradient
r="6.65625"
fy="13.078408"
fx="15.414371"
cy="13.078408"
cx="15.414371"
gradientTransform="matrix(2.592963,0,0,2.252104,-20.61142,1.8819351)"
gradientUnits="userSpaceOnUse"
id="radialGradient3142"
xlink:href="#linearGradient4467"
inkscape:collect="always" />
</defs>
<rect
style="color:#000000;fill:#ffffff;fill-opacity:0.63253;stroke:url(#linearGradient3122);stroke-width:0.76774317;stroke-linecap:round;stroke-linejoin:round;display:block"
ry="0.67709774"
height="24.1131"
width="24.266504"
display="block"
y="1.4567257"
x="1.3914318"
id="rect88" />
<rect
style="opacity:0.79120998;color:#000000;fill:none;stroke:#ffffff;stroke-width:0.74820143;stroke-linecap:round;stroke-linejoin:round;display:block"
display="block"
rx="0.10328796"
ry="0.082065053"
height="21.443624"
width="22.713037"
y="2.4372671"
x="2.1771638"
id="rect90" />
<path
style="color:#000000;fill:none;stroke:#000000;stroke-width:0.81658787;stroke-linecap:round;stroke-linejoin:round;display:block"
d="m 3.4808938,3.5334838 3.3773681,0.024215 2.6808345,2.2386304 0,5.9695238"
display="block"
id="path92"
inkscape:connector-curvature="0"
sodipodi:nodetypes="cccc" />
<path
style="color:#000000;fill:none;stroke:#000000;stroke-width:0.8243643;stroke-linecap:round;stroke-linejoin:round;display:block"
d="m 13.469406,11.812887 0,-6.4432079 -1.971962,-1.8569444"
display="block"
id="path94"
inkscape:connector-curvature="0"
sodipodi:nodetypes="ccc" />
<path
style="color:#000000;fill:none;stroke:#000000;stroke-width:0.8243643;stroke-linecap:round;stroke-linejoin:round;display:block"
d="m 16.488522,11.812887 0,-6.4432079 -2.022809,-1.9077918"
display="block"
id="path96"
inkscape:connector-curvature="0"
sodipodi:nodetypes="ccc" />
<path
style="color:#000000;fill:none;stroke:#000000;stroke-width:0.8243643;stroke-linecap:round;stroke-linejoin:round;display:block"
d="m 19.45679,11.76204 0,-8.2493053"
display="block"
id="path98"
inkscape:connector-curvature="0"
sodipodi:nodetypes="cc" />
<path
style="color:#000000;fill:none;stroke:#000000;stroke-width:0.8243643;stroke-linecap:round;stroke-linejoin:round;display:block"
d="m 9.484192,19.467958 0,2.111182 -1.8400477,0.949793 -4.2490086,0"
display="block"
id="path116"
inkscape:connector-curvature="0"
sodipodi:nodetypes="cccc" />
<path
style="color:#000000;fill:none;stroke:#000000;stroke-width:0.96492356;stroke-linecap:round;stroke-linejoin:round;display:block"
d="m 13.520255,19.6205 0,3.010162"
display="block"
id="path118"
inkscape:connector-curvature="0"
sodipodi:nodetypes="cc" />
<path
style="color:#000000;fill:none;stroke:#000000;stroke-width:0.86784858;stroke-linecap:round;stroke-linejoin:round;display:block"
d="m 16.561109,19.540547 0,2.695264 1.524093,1.237481 4.419784,0.05085"
display="block"
id="path120"
inkscape:connector-curvature="0"
sodipodi:nodetypes="cccc" />
<path
style="color:#000000;fill:none;stroke:#000000;stroke-width:0.94453454;stroke-linecap:round;stroke-linejoin:round;display:block"
d="m 19.72026,19.680585 1.932505,1.846573 1.881658,0.05085"
display="block"
id="path122"
inkscape:connector-curvature="0"
sodipodi:nodetypes="ccc" />
<rect
style="color:#000000;fill:none;stroke:#000000;stroke-width:0.95956588;stroke-linecap:round;stroke-linejoin:round;display:block"
display="block"
ry="1.7392251"
height="11.148678"
width="17.178366"
y="9.4560843"
x="5.372745"
id="rect126" />
<g
id="g3156">
id="g4506"
transform="matrix(0,1.1,-1.1,0,25.3,-1.3000017)">
<rect
y="8"
x="3.7692325"
height="10.000002"
width="18.461538"
id="rect3926"
style="fill:none;stroke:#333333;stroke-width:1.53846145;stroke-linecap:square;stroke-linejoin:round;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none" />
<path
sodipodi:nodetypes="cccc"
inkscape:connector-curvature="0"
id="path100"
display="block"
d="m 9.9418144,12.04985 v 1.899629"
style="color:#000000;fill:none;stroke:#000000;stroke-width:2.12384057;stroke-linecap:round;stroke-linejoin:round;display:block" />
<path
inkscape:connector-curvature="0"
id="path100-6"
display="block"
d="m 13.016949,12.084083 v 1.899629"
style="color:#000000;fill:none;stroke:#000000;stroke-width:2.12384057;stroke-linecap:round;stroke-linejoin:round;display:block" />
<path
inkscape:connector-curvature="0"
id="path100-0"
display="block"
d="m 16.067797,12.236626 v 1.899629"
style="color:#000000;fill:none;stroke:#000000;stroke-width:2.12384057;stroke-linecap:round;stroke-linejoin:round;display:block" />
<path
inkscape:connector-curvature="0"
id="path100-7"
display="block"
d="m 19.118644,12.185778 v 1.899629"
style="color:#000000;fill:none;stroke:#000000;stroke-width:2.12384057;stroke-linecap:round;stroke-linejoin:round;display:block" />
id="path3928"
d="m 3.7692326,11.461538 2.6923073,0 0,3.076924 -2.6923073,0"
style="fill:none;stroke:#333333;stroke-width:1.53846145;stroke-linecap:butt;stroke-linejoin:round;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none" />
<rect
ry="0.38461539"
rx="0.38461533"
y="3"
x="4.5384631"
height="3.0769231"
width="3.0769227"
id="rect3820"
style="fill:#d45500;fill-opacity:1;stroke:none" />
<rect
style="fill:#d45500;fill-opacity:1;stroke:none"
id="rect3822"
width="3.0769227"
height="3.0769231"
x="18.384615"
y="3"
rx="0.38461533"
ry="0.38461539" />
<rect
ry="0.38461539"
rx="0.38461533"
y="3"
x="13.769231"
height="3.0769231"
width="3.0769227"
id="rect3824"
style="fill:#d45500;fill-opacity:1;stroke:none" />
<rect
style="fill:#d45500;fill-opacity:1;stroke:none"
id="rect3826"
width="3.0769227"
height="3.0769231"
x="9.1538467"
y="3"
rx="0.38461533"
ry="0.38461539" />
<rect
style="fill:#d45500;fill-opacity:1;stroke:none"
id="rect3828"
width="3.0769227"
height="3.0769231"
x="4.5384631"
y="19.923077"
rx="0.38461533"
ry="0.38461539" />
<rect
ry="0.38461539"
rx="0.38461533"
y="19.923077"
x="18.384615"
height="3.0769231"
width="3.0769227"
id="rect3830"
style="fill:#d45500;fill-opacity:1;stroke:none" />
<rect
style="fill:#d45500;fill-opacity:1;stroke:none"
id="rect3832"
width="3.0769227"
height="3.0769231"
x="13.769231"
y="19.923077"
rx="0.38461533"
ry="0.38461539" />
<rect
ry="0.38461539"
rx="0.38461533"
y="19.923077"
x="9.1538467"
height="3.0769231"
width="3.0769227"
id="rect3834"
style="fill:#d45500;fill-opacity:1;stroke:none" />
</g>
<g
transform="translate(-0.01435138,4.9076261)"
id="g3156-3">
id="g4574"
transform="matrix(1.1081499,0,0,1.134214,25.574397,-4.3265444)" />
<g
style="display:inline"
id="g1772"
transform="matrix(0.49956072,0,0,0.47473268,3.3475304,5.4235762)">
<path
sodipodi:type="arc"
style="opacity:0.17112301;color:#000000;fill:url(#radialGradient3982);fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:1;marker:none;visibility:visible;display:inline;overflow:visible"
id="path4475"
sodipodi:cx="24.130018"
sodipodi:cy="37.967922"
sodipodi:rx="16.528622"
sodipodi:ry="3.9332814"
d="m 40.65864,37.967922 c 0,2.172292 -7.400116,3.933282 -16.528622,3.933282 -9.128505,0 -16.5286214,-1.76099 -16.5286214,-3.933282 0,-2.172291 7.4001164,-3.933281 16.5286214,-3.933281 9.128506,0 16.528622,1.76099 16.528622,3.933281 z"
transform="matrix(1.446431,0,0,1.51999,-10.97453,-17.75168)" />
<path
inkscape:connector-curvature="0"
id="path100-9"
display="block"
d="m 9.9418144,12.04985 v 1.899629"
style="color:#000000;fill:none;stroke:#000000;stroke-width:2.12384057;stroke-linecap:round;stroke-linejoin:round;display:block" />
sodipodi:nodetypes="csscccscccscczzzz"
id="path2844"
d="m 18.627569,3.1435548 c -8.13913,0 -14.7448008,6.6056711 -14.7448008,14.7448012 0,8.13913 6.6056708,14.744802 14.7448008,14.744802 3.479555,0 6.551001,-1.384393 9.073723,-3.402647 -0.205377,1.006881 -0.07803,2.035368 0.756144,2.759925 l 10.964084,9.52741 c 1.233416,1.071329 3.087462,0.93096 4.15879,-0.302457 1.071328,-1.233418 0.930959,-3.087462 -0.302457,-4.15879 L 32.313769,27.529188 c -0.671527,-0.583279 -1.492878,-0.755969 -2.306238,-0.642722 1.9867,-2.512422 3.364839,-5.548803 3.364839,-8.99811 0,-8.1391301 -6.605671,-14.7448012 -14.744801,-14.7448012 z m -0.07562,1.2261833 c 7.639459,0 13.291775,4.7889505 13.291775,13.2917749 0,8.675113 -5.81669,13.291775 -13.291775,13.291775 -7.302949,0 -13.2917734,-5.478092 -13.2917734,-13.291775 0,-7.9841069 5.8246384,-13.291775 13.2917734,-13.2917749 z"
style="color:#000000;fill:#dcdcdc;fill-opacity:1;fill-rule:evenodd;stroke:url(#linearGradient3984);stroke-width:2.79820228;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:10;stroke-opacity:1;stroke-dasharray:none;stroke-dashoffset:0;marker:none;visibility:visible;display:inline;overflow:visible" />
<path
inkscape:connector-curvature="0"
id="path100-6-4"
display="block"
d="m 13.016949,12.084083 v 1.899629"
style="color:#000000;fill:none;stroke:#000000;stroke-width:2.12384057;stroke-linecap:round;stroke-linejoin:round;display:block" />
style="color:#000000;fill:#dcdcdc;fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:1.00000036;marker:none;visibility:visible;display:inline;overflow:visible"
d="m 18.602905,3.0803551 c -8.16544,0 -14.7924642,6.627024 -14.7924642,14.7924639 0,8.16544 6.6270242,14.792464 14.7924642,14.792464 3.490803,0 6.572177,-1.388867 9.103055,-3.413645 -0.206041,1.010136 -0.07829,2.041947 0.758587,2.768846 l 10.999526,9.558207 c 1.237403,1.074792 3.097442,0.93397 4.172233,-0.303435 1.074791,-1.237404 0.933968,-3.097442 -0.303435,-4.172233 L 32.333346,27.544815 c -0.673698,-0.585164 -1.497704,-0.758413 -2.313693,-0.644799 1.993122,-2.520544 3.375716,-5.56674 3.375716,-9.027197 0,-8.1654399 -6.627024,-14.7924639 -14.792464,-14.7924639 z m -0.07586,3.1860692 c 6.281108,2e-7 11.378818,5.0977107 11.378818,11.3788187 0,6.281108 -5.09771,11.378818 -11.378818,11.378818 -6.281108,0 -11.3788184,-5.09771 -11.3788184,-11.378818 2e-7,-6.281108 5.0977104,-11.3788187 11.3788184,-11.3788187 z"
id="path4430" />
<path
inkscape:connector-curvature="0"
id="path100-0-3"
display="block"
d="m 16.067797,12.236626 v 1.899629"
style="color:#000000;fill:none;stroke:#000000;stroke-width:2.12384057;stroke-linecap:round;stroke-linejoin:round;display:block" />
style="color:#000000;fill:url(#linearGradient3986);fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:1;marker:none;visibility:visible;display:inline;overflow:visible"
d="m 39.507004,41.57769 c -0.478672,-2.273187 1.39733,-4.811422 3.584053,-4.788375 0,0 -10.760367,-9.258111 -10.760367,-9.258111 -2.944791,-0.05671 -4.269502,2.272616 -3.776814,4.599922 l 10.953128,9.446564 z"
id="path4438"
sodipodi:nodetypes="ccccc" />
<path
sodipodi:type="arc"
style="color:#000000;fill:none;stroke:url(#linearGradient3988);stroke-width:1.12310493;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:10;stroke-opacity:1;stroke-dasharray:none;stroke-dashoffset:0;marker:none;visibility:visible;display:inline;overflow:visible"
id="path4450"
sodipodi:cx="17.500893"
sodipodi:cy="18.920233"
sodipodi:rx="11.048544"
sodipodi:ry="11.048544"
d="m 28.549437,18.920233 c 0,6.101942 -4.946602,11.048544 -11.048544,11.048544 -6.101943,0 -11.0485443,-4.946602 -11.0485443,-11.048544 0,-6.101943 4.9466013,-11.0485442 11.0485443,-11.0485442 6.101942,0 11.048544,4.9466012 11.048544,11.0485442 z"
transform="matrix(1.245743,0,0,1.245743,-3.425346,-6.177033)" />
<rect
style="opacity:0.43315507;color:#000000;fill:none;stroke:#ffffff;stroke-width:1.39914393;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:10;stroke-opacity:1;stroke-dasharray:none;stroke-dashoffset:0;marker:none;visibility:visible;display:inline;overflow:visible"
id="rect4495"
width="19.048439"
height="4.4404783"
x="40.373337"
y="0.14086054"
rx="3.2112026"
ry="2.837393"
transform="matrix(0.752986,0.658037,-0.648902,0.760872,0,0)" />
<path
sodipodi:type="arc"
style="color:#000000;fill:url(#radialGradient3990);fill-opacity:1;fill-rule:evenodd;stroke:#3063a3;stroke-width:1.00034833;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:10;stroke-opacity:1;stroke-dashoffset:0;marker:none;visibility:visible"
id="path4452"
sodipodi:cx="17.589281"
sodipodi:cy="18.478292"
sodipodi:rx="8.3085051"
sodipodi:ry="8.3085051"
d="m 25.897786,18.478292 c 0,4.588661 -3.719844,8.308506 -8.308505,8.308506 -4.588661,0 -8.308505,-3.719845 -8.308505,-8.308506 0,-4.58866 3.719844,-8.308505 8.308505,-8.308505 4.588661,0 8.308505,3.719845 8.308505,8.308505 z"
transform="matrix(1.398614,0,0,1.398614,-6.224338,-8.298958)" />
<path
inkscape:connector-curvature="0"
id="path100-7-2"
display="block"
d="m 19.118644,12.185778 v 1.899629"
style="color:#000000;fill:none;stroke:#000000;stroke-width:2.12384057;stroke-linecap:round;stroke-linejoin:round;display:block" />
style="opacity:0.83422457;color:#000000;fill:url(#radialGradient3142);fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:1;marker:none;visibility:visible;display:inline;overflow:visible"
d="m 18.156915,7.3966938 c -5.20759,0 -9.4245469,4.2169572 -9.4245469,9.4245472 0,1.503975 0.4203072,2.887773 1.0471719,4.149903 1.25238,0.461613 2.582757,0.775683 3.994767,0.775683 6.170955,0 11.099282,-4.861637 11.480106,-10.937129 C 23.523449,8.7641668 21.044374,7.3966938 18.156915,7.3966938 z"
id="path4462" />
</g>
</svg>

Before

Width:  |  Height:  |  Size: 8.1 KiB

After

Width:  |  Height:  |  Size: 25 KiB

View File

@ -1,4 +1,6 @@
<?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#"
@ -7,103 +9,112 @@
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"
height="26"
width="26"
version="1.1"
height="26"
id="svg2"
inkscape:version="0.48.1 "
sodipodi:docname="3d_use_copper_thickness.svg">
version="1.1"
inkscape:version="0.48.4 r9939"
sodipodi:docname="Новый документ 1">
<defs
id="defs4" />
<sodipodi:namedview
id="base"
pagecolor="#ffffff"
bordercolor="#666666"
borderopacity="1.0"
inkscape:pageopacity="0.0"
inkscape:pageshadow="2"
inkscape:zoom="15.365974"
inkscape:cx="7.7906124"
inkscape:cy="9.6975944"
inkscape:document-units="px"
inkscape:current-layer="layer1"
showgrid="true"
inkscape:showpageshadow="false"
inkscape:window-width="1366"
inkscape:window-height="744"
inkscape:window-x="0"
inkscape:window-y="24"
inkscape:window-maximized="1">
<inkscape:grid
type="xygrid"
id="grid2985"
empspacing="2"
visible="true"
enabled="true"
snapvisiblegridlinesonly="true" />
</sodipodi:namedview>
<metadata
id="metadata26">
id="metadata7">
<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 />
<dc:title></dc:title>
</cc:Work>
</rdf:RDF>
</metadata>
<sodipodi:namedview
pagecolor="#ffffff"
bordercolor="#666666"
borderopacity="1"
objecttolerance="10"
gridtolerance="10"
guidetolerance="10"
inkscape:pageopacity="0"
inkscape:pageshadow="2"
inkscape:window-width="1280"
inkscape:window-height="968"
id="namedview24"
showgrid="false"
inkscape:zoom="32.120513"
inkscape:cx="12.060967"
inkscape:cy="11.98812"
inkscape:window-x="-4"
inkscape:window-y="-4"
inkscape:window-maximized="1"
inkscape:current-layer="svg2"
showguides="true"
inkscape:guide-bbox="true"
showborder="true">
<sodipodi:guide
orientation="0,1"
position="45.626168,30.620228"
id="guide3799" />
</sodipodi:namedview>
<defs
id="defs4">
<filter
id="c"
height="1.212"
width="1.059"
color-interpolation-filters="sRGB"
y="-0.10598"
x="-0.029501">
<feGaussianBlur
stdDeviation="0.52522041"
id="feGaussianBlur7" />
</filter>
<filter
id="d"
height="1.212"
width="1.059"
color-interpolation-filters="sRGB"
y="-0.10598"
x="-0.029501">
<feGaussianBlur
stdDeviation="0.52522041"
id="feGaussianBlur10" />
</filter>
</defs>
<g
id="g3879"
transform="matrix(1.079734,0,0,0.8805836,0.04176086,4.8713303)">
inkscape:label="Layer 1"
inkscape:groupmode="layer"
id="layer1"
transform="translate(0,-1026.3622)">
<path
style="fill:#1c4d00;fill-opacity:1;stroke:#000000;stroke-width:0;stroke-miterlimit:4;stroke-dasharray:none"
inkscape:connector-curvature="0"
id="path22-1-0"
d="M 0.00743077,13.573317 H 18.058057 l 6.017018,10.471372 H 6.0244485 L 0.00816177,13.573317 z" />
style="fill:#49a749;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;fill-opacity:1"
d="M 0 0 L 0 26 L 26 26 L 26 0 L 0 0 z M 12.5 14 C 16.642136 14 20 15.790861 20 18 C 20 20.209139 16.642136 22 12.5 22 C 8.3578644 22 5 20.209139 5 18 C 5 15.790861 8.3578644 14 12.5 14 z "
transform="translate(0,1026.3622)"
id="path3777" />
<path
style="fill:#72ff06;fill-opacity:1;stroke:#000000;stroke-width:0;stroke-miterlimit:4;stroke-dasharray:none"
inkscape:connector-curvature="0"
id="path22-9"
d="M -0.01750581,11.199955 H 18.033121 l 6.017018,10.471372 H 5.999512 L -0.01677418,11.199955 z" />
</g>
<g
id="g3873"
transform="matrix(1.0749484,0,0,0.90644265,-0.0011,1.998042)">
sodipodi:type="arc"
style="fill:none;stroke:#004e00;stroke-width:4;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none"
id="path3815"
sodipodi:cx="9"
sodipodi:cy="10"
sodipodi:rx="7.5"
sodipodi:ry="5"
d="m 16.5,10 a 7.5,5 0 1 1 -15,0 7.5,5 0 1 1 15,0 z"
transform="translate(3.5,1034.3622)" />
<rect
style="fill:#004e00;fill-opacity:1;stroke:none"
id="rect3764"
width="2.0000002"
height="2.9994934"
x="3"
y="1041.3622"
rx="0"
ry="0" />
<rect
ry="0"
rx="0"
y="1041.3622"
x="20"
height="2.9992831"
width="2.0000036"
id="rect3766"
style="fill:#004e00;fill-opacity:1;stroke:none" />
<path
style="fill:#740000;fill-opacity:1;stroke:#000000;stroke-width:0;stroke-miterlimit:4;stroke-dasharray:none"
style="fill:none;stroke:#004e00;stroke-width:5;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none"
d="m 15.5,1040.3622 6,-6.5 4.5,0"
id="path3775"
inkscape:connector-curvature="0"
id="path22-1"
d="M 0.03961332,2.3524334 H 18.09024 L 24.107258,12.823805 H 6.056631 L 0.04034432,2.3524334 z" />
sodipodi:nodetypes="ccc" />
<path
style="fill:#ff0606;stroke:#000000;stroke-width:0;stroke-miterlimit:4;stroke-dasharray:none"
transform="translate(3.5,1031.3622)"
d="m 16.5,10 a 7.5,5 0 1 1 -15,0 7.5,5 0 1 1 15,0 z"
sodipodi:ry="5"
sodipodi:rx="7.5"
sodipodi:cy="10"
sodipodi:cx="9"
id="path3762"
style="fill:none;stroke:#008000;stroke-width:4;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none"
sodipodi:type="arc" />
<path
sodipodi:nodetypes="ccc"
inkscape:connector-curvature="0"
id="path22"
d="M 0.01467674,-0.02092885 H 18.065304 L 24.082322,10.450443 H 6.0316946 L 0.01540837,-0.02092885 z" />
id="path3002"
d="m 15,1037.3622 6,-6.5 5,0"
style="fill:none;stroke:#008000;stroke-width:5;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none" />
</g>
</svg>

Before

Width:  |  Height:  |  Size: 3.4 KiB

After

Width:  |  Height:  |  Size: 3.9 KiB

View File

@ -0,0 +1,715 @@
<?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:xlink="http://www.w3.org/1999/xlink"
xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
version="1.0"
width="48"
height="48"
id="svg2"
inkscape:version="0.48.4 r9939"
sodipodi:docname="wizard_add_fplib.svg">
<metadata
id="metadata166">
<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 />
</cc:Work>
</rdf:RDF>
</metadata>
<sodipodi:namedview
pagecolor="#ffffff"
bordercolor="#666666"
borderopacity="1"
objecttolerance="10"
gridtolerance="10"
guidetolerance="10"
inkscape:pageopacity="0"
inkscape:pageshadow="2"
inkscape:window-width="1920"
inkscape:window-height="1033"
id="namedview164"
showgrid="true"
inkscape:zoom="16.9375"
inkscape:cx="24"
inkscape:cy="19.720279"
inkscape:window-x="-4"
inkscape:window-y="-4"
inkscape:window-maximized="1"
inkscape:current-layer="svg2"
inkscape:snap-to-guides="false"
inkscape:snap-grids="false"
showborder="true">
<inkscape:grid
type="xygrid"
id="grid3041"
empspacing="1"
visible="true"
enabled="true"
snapvisiblegridlinesonly="true" />
</sodipodi:namedview>
<defs
id="defs4">
<clipPath
id="ba">
<path
style="fill:#ffffff"
d="m 0,96 v 60 H 96 V 96 H 0 z m 68,20 c 9.9411,0 18,8.0589 18,18 0,9.9411 -8.0589,18 -18,18 -9.9411,0 -18,-8.0589 -18,-18 0,-9.9411 8.0589,-18 18,-18 z"
id="path125"
inkscape:connector-curvature="0" />
</clipPath>
<linearGradient
id="bl"
y2="5.9782"
gradientUnits="userSpaceOnUse"
x2="69"
gradientTransform="matrix(-0.2255,-0.071329,0.05452,-0.20327,7.6326,90.834)"
y1="122"
x1="69">
<stop
stop-color="#1e71ac"
offset="0"
id="stop128" />
<stop
stop-color="#81c1e9"
offset="1"
id="stop130" />
</linearGradient>
<linearGradient
id="bm"
y2="67.706001"
xlink:href="#a"
gradientUnits="userSpaceOnUse"
x2="118.33"
gradientTransform="matrix(0.39018,0.62586,-0.63862,0.30043,3.5817,-20.909)"
y1="87.488998"
x1="120.65" />
<linearGradient
id="a">
<stop
offset="0"
id="stop15" />
<stop
stop-opacity="0"
offset="1"
id="stop17" />
</linearGradient>
<linearGradient
id="bn"
y2="5.9782"
gradientUnits="userSpaceOnUse"
x2="69"
gradientTransform="matrix(-0.2255,-0.071329,0.05452,-0.20327,7.6018,90.825)"
y1="122"
x1="69">
<stop
stop-color="#cd2323"
offset="0"
id="stop134" />
<stop
stop-color="#ef7474"
offset="1"
id="stop136" />
</linearGradient>
<linearGradient
id="ao"
y2="67.706001"
xlink:href="#a"
gradientUnits="userSpaceOnUse"
x2="118.33"
y1="87.488998"
x1="120.65" />
<clipPath
id="aq">
<path
style="fill:url(#linearGradient4033)"
d="m 118,56 c -9.9411,0 -18,8.0589 -18,18 0,9.9411 8.0589,18 18,18 9.7305,0 17.637,-7.7253 17.969,-17.375 v -1.25 C 135.639,63.725 127.729,56 117.999,56 z m -6,10.75 c 5.9493,0.05747 10.832,4.9413 11.031,10.875 l 3.75,0.03125 -6,8.7188 -6.1562,-8.8125 3.9688,0.03125 c -0.25101,-4.9057 -4.4893,-9.9506 -11.719,-9.625 1.5223,-0.80073 3.2718,-1.2367 5.125,-1.2188 z"
id="path122"
inkscape:connector-curvature="0" />
</clipPath>
<linearGradient
id="bo"
y2="5.1837001"
xlink:href="#an"
gradientUnits="userSpaceOnUse"
x2="84.360001"
gradientTransform="matrix(0.21868,0.069171,-0.053262,0.19858,-13.124,56.327)"
y1="79.417"
x1="84.360001" />
<linearGradient
id="an">
<stop
stop-color="#fff"
offset="0"
id="stop65" />
<stop
stop-color="#fff"
stop-opacity=".49804"
offset=".43290"
id="stop67" />
<stop
stop-color="#fff"
stop-opacity="0"
offset="1"
id="stop69" />
</linearGradient>
<linearGradient
id="bp"
y2="67.706001"
xlink:href="#a"
gradientUnits="userSpaceOnUse"
x2="118.33"
gradientTransform="matrix(-0.39018,-0.62586,0.63862,-0.30043,-9.9736,166.82)"
y1="87.488998"
x1="120.65" />
<linearGradient
y2="67.706001"
x2="118.33"
y1="87.488998"
x1="120.65"
gradientUnits="userSpaceOnUse"
id="linearGradient3263"
xlink:href="#a"
inkscape:collect="always" />
<linearGradient
y2="5.1837001"
x2="84.360001"
y1="79.417"
x1="84.360001"
gradientTransform="matrix(-0.21868,-0.069171,0.053262,-0.19858,6.7324,89.587)"
gradientUnits="userSpaceOnUse"
id="linearGradient3265"
xlink:href="#an"
inkscape:collect="always" />
<linearGradient
inkscape:collect="always"
xlink:href="#i"
id="linearGradient4444"
gradientUnits="userSpaceOnUse"
gradientTransform="matrix(0.771702,0,0,0.7696371,58.469287,27.525353)"
x1="19.648001"
y1="42.254002"
x2="20.631001"
y2="6.7758002" />
<linearGradient
id="i"
y2="6.7758002"
gradientUnits="userSpaceOnUse"
x2="20.631001"
gradientTransform="matrix(0.87827,0,0,0.87827,56.157,5.6701)"
y1="42.254002"
x1="19.648001">
<stop
stop-color="#b6b6b6"
offset="0"
id="stop3120" />
<stop
stop-color="#f2f2f2"
offset=".5"
id="stop3122" />
<stop
stop-color="#fafafa"
offset=".67613"
id="stop3124" />
<stop
stop-color="#d8d8d8"
offset=".84052"
id="stop3126" />
<stop
stop-color="#f2f2f2"
offset=".875"
id="stop3128" />
<stop
stop-color="#dbdbdb"
offset="1"
id="stop3130" />
</linearGradient>
<linearGradient
inkscape:collect="always"
xlink:href="#j"
id="linearGradient4446"
gradientUnits="userSpaceOnUse"
gradientTransform="matrix(0.77064365,0,0,0.77069683,60.490409,-22.581269)"
x1="50.153"
y1="-3.6324"
x2="25.291"
y2="-4.3003001" />
<linearGradient
id="j"
y2="-4.3003001"
gradientUnits="userSpaceOnUse"
x2="25.291"
gradientTransform="matrix(0.87827,0,0,0.87827,43.255,-36.26)"
y1="-3.6324"
x1="50.153">
<stop
stop-color="#fff"
offset="0"
id="stop3133"
style="stop-color:#4754ba;stop-opacity:1;" />
<stop
offset="1"
id="stop3135" />
</linearGradient>
<linearGradient
inkscape:collect="always"
xlink:href="#k"
id="linearGradient4448"
gradientUnits="userSpaceOnUse"
gradientTransform="matrix(0.771702,0,0,0.7696371,58.741672,28.069542)"
x1="38.228001"
y1="13.603"
x2="37.535"
y2="6.6286001" />
<linearGradient
id="k"
y2="6.6286001"
gradientUnits="userSpaceOnUse"
x2="37.535"
gradientTransform="matrix(0.87827,0,0,0.87827,56.467,6.2911)"
y1="13.603"
x1="38.228001">
<stop
stop-color="#98a0a9"
offset="0"
id="stop3138" />
<stop
stop-color="#c3d0dd"
offset="1"
id="stop3140" />
</linearGradient>
<linearGradient
inkscape:collect="always"
xlink:href="#l"
id="linearGradient4450"
gradientUnits="userSpaceOnUse"
gradientTransform="matrix(0.87866146,0,0,0.87631036,56.240123,23.172115)"
x1="31.177"
y1="19.822001"
x2="40.859001"
y2="9.6569004" />
<linearGradient
id="l"
y2="9.6569004"
gradientUnits="userSpaceOnUse"
x2="40.859001"
gradientTransform="translate(53.62,0.70241)"
y1="19.822001"
x1="31.177">
<stop
stop-color="#fff"
offset="0"
id="stop3143" />
<stop
stop-color="#fff"
stop-opacity="0"
offset="1"
id="stop3145" />
</linearGradient>
<linearGradient
inkscape:collect="always"
xlink:href="#m"
id="linearGradient4452"
gradientUnits="userSpaceOnUse"
gradientTransform="matrix(0.771702,0,0,0.7696371,58.469287,27.525353)"
x1="9.7503004"
y1="32.284"
x2="16.915001"
y2="39.443001" />
<linearGradient
id="m"
y2="39.443001"
gradientUnits="userSpaceOnUse"
x2="16.915001"
gradientTransform="matrix(0.87827,0,0,0.87827,56.157,5.6701)"
y1="32.284"
x1="9.7503004">
<stop
stop-color="#3465a4"
offset="0"
id="stop3148" />
<stop
stop-color="#9fbce1"
offset="0"
id="stop3150" />
<stop
stop-color="#6b95ca"
offset="0"
id="stop3152" />
<stop
stop-color="#3d6aa5"
offset=".75"
id="stop3154" />
<stop
stop-color="#386eb4"
offset="1"
id="stop3156" />
</linearGradient>
<linearGradient
inkscape:collect="always"
xlink:href="#n"
id="linearGradient4454"
gradientUnits="userSpaceOnUse"
gradientTransform="matrix(0.88507569,-0.02310392,0.02316591,0.88270743,57.63983,23.24151)"
x1="12.005"
y1="35.688"
x2="10.651"
y2="33.195" />
<linearGradient
id="n"
y2="33.195"
gradientUnits="userSpaceOnUse"
x2="10.651"
gradientTransform="matrix(1.0073,-0.026365,0.026365,1.0073,55.213,0.7816)"
y1="35.688"
x1="12.005">
<stop
stop-color="#fff"
offset="0"
id="stop3159" />
<stop
stop-color="#fff"
stop-opacity="0"
offset="1"
id="stop3161" />
</linearGradient>
<linearGradient
inkscape:collect="always"
xlink:href="#o"
id="linearGradient4456"
gradientUnits="userSpaceOnUse"
gradientTransform="matrix(0.77155263,-0.0151812,0.01522193,0.76948813,58.140667,26.736849)"
x1="14.018"
y1="36.943001"
x2="15.416"
y2="38.268002" />
<linearGradient
id="o"
y2="38.268002"
gradientUnits="userSpaceOnUse"
x2="15.416"
gradientTransform="matrix(0.8781,-0.017324,0.017324,0.8781,55.783,4.7703)"
y1="36.943001"
x1="14.018">
<stop
offset="0"
id="stop3164" />
<stop
stop-opacity="0"
offset="1"
id="stop3166" />
</linearGradient>
<linearGradient
y2="38.268002"
x2="15.416"
y1="36.943001"
x1="14.018"
gradientTransform="matrix(0.77155263,-0.0151812,0.01522193,0.76948813,58.140667,26.736849)"
gradientUnits="userSpaceOnUse"
id="linearGradient3113"
xlink:href="#o"
inkscape:collect="always" />
<linearGradient
inkscape:collect="always"
xlink:href="#i"
id="linearGradient3123"
gradientUnits="userSpaceOnUse"
gradientTransform="matrix(0.771702,0,0,0.7696371,58.469287,27.525353)"
x1="19.648001"
y1="42.254002"
x2="20.631001"
y2="6.7758002" />
<linearGradient
inkscape:collect="always"
xlink:href="#j"
id="linearGradient3125"
gradientUnits="userSpaceOnUse"
gradientTransform="matrix(0.77064365,0,0,0.77069683,60.490409,-22.581269)"
x1="50.153"
y1="-3.6324"
x2="25.291"
y2="-4.3003001" />
<linearGradient
inkscape:collect="always"
xlink:href="#k"
id="linearGradient3127"
gradientUnits="userSpaceOnUse"
gradientTransform="matrix(0.771702,0,0,0.7696371,58.741672,28.069542)"
x1="38.228001"
y1="13.603"
x2="37.535"
y2="6.6286001" />
<linearGradient
inkscape:collect="always"
xlink:href="#l"
id="linearGradient3129"
gradientUnits="userSpaceOnUse"
gradientTransform="matrix(0.87866146,0,0,0.87631036,56.240123,23.172115)"
x1="31.177"
y1="19.822001"
x2="40.859001"
y2="9.6569004" />
<linearGradient
inkscape:collect="always"
xlink:href="#m"
id="linearGradient3131"
gradientUnits="userSpaceOnUse"
gradientTransform="matrix(0.771702,0,0,0.7696371,58.469287,27.525353)"
x1="9.7503004"
y1="32.284"
x2="16.915001"
y2="39.443001" />
<linearGradient
inkscape:collect="always"
xlink:href="#n"
id="linearGradient3133"
gradientUnits="userSpaceOnUse"
gradientTransform="matrix(0.88507569,-0.02310392,0.02316591,0.88270743,57.63983,23.24151)"
x1="12.005"
y1="35.688"
x2="10.651"
y2="33.195" />
<linearGradient
inkscape:collect="always"
xlink:href="#o"
id="linearGradient3135"
gradientUnits="userSpaceOnUse"
gradientTransform="matrix(0.77155263,-0.0151812,0.01522193,0.76948813,58.140667,26.736849)"
x1="14.018"
y1="36.943001"
x2="15.416"
y2="38.268002" />
</defs>
<g
id="g3081"
transform="matrix(1.8441031,0,0,1.8687807,-0.23506133,-41.362158)">
<g
transform="matrix(0.67065061,0,0,0.63959329,-0.72214704,21.74289)"
id="g2983">
<path
inkscape:connector-curvature="0"
id="path37"
d="M 20.333126,12.035343 C 18.444903,8.7606248 7.1884028,4.4572113 2.002648,3.5893247 2.2763155,13.787163 2.2815758,19.371068 1.9989109,28.797982 8.7625485,29.718551 15.3015,32.559393 20.481394,35.368247 c 0,1.371479 -0.147987,-22.510084 -0.147987,-23.332904 z"
style="opacity:0.62891002;fill:#ffffff;fill-rule:evenodd;stroke:#000000;stroke-width:1.49013674;stroke-linejoin:round" />
<path
inkscape:connector-curvature="0"
id="path39"
d="M 20.333126,11.970474 C 25.181266,7.2735751 31.736244,5.3619712 39.289996,3.2656597 38.720347,14.174674 39.085048,19.823107 39.145718,28.603715 c -6.837879,0.0801 -13.928975,3.438089 -18.664576,6.764191 0,-0.05087 -0.147988,-22.574613 -0.147988,-23.397432 z"
style="opacity:0.62891002;fill:#ffffff;fill-rule:evenodd;stroke:#000000;stroke-width:1.49013674;stroke-linejoin:round" />
<path
inkscape:connector-curvature="0"
id="path49"
d="m 36.25809,7.3432246 c 0,0 -7.632679,1.948204 -13.700376,6.5238304"
style="opacity:0.62891002;fill:none;stroke:#000000;stroke-width:0.29802737" />
<path
inkscape:connector-curvature="0"
id="path51"
d="m 35.804819,10.900809 c 0,0 -7.023496,1.140338 -13.24437,5.519376"
style="opacity:0.62891002;fill:none;stroke:#000000;stroke-width:0.45657057" />
<path
inkscape:connector-curvature="0"
id="path53"
d="m 35.56254,14.052787 c 0,0 -6.549106,1.123473 -13.002872,5.151669"
style="opacity:0.62891002;fill:none;stroke:#000000;stroke-width:0.45657057" />
<path
inkscape:connector-curvature="0"
id="path55"
d="m 35.566457,17.2611 c 0,0 -6.346312,0.591814 -13.006399,4.875119"
style="opacity:0.62891002;fill:none;stroke:#000000;stroke-width:0.45657057" />
<path
inkscape:connector-curvature="0"
id="path57"
d="m 35.480491,19.937482 c -0.07397,0.01638 -5.754704,1.122073 -12.920433,5.032513"
style="opacity:0.62891002;fill:none;stroke:#000000;stroke-width:0.45657057" />
<path
inkscape:connector-curvature="0"
id="path59"
d="m 35.800902,22.548312 c -0.07397,0.01638 -6.168897,1.212856 -13.241234,5.294723"
style="opacity:0.62891002;fill:none;stroke:#000000;stroke-width:0.45657057" />
<path
inkscape:connector-curvature="0"
id="path61"
d="m 35.898595,25.338215 c 0,0 -6.670244,1.368338 -13.339709,5.367787"
style="opacity:0.62891002;fill:none;stroke:#000000;stroke-width:0.45657057" />
<path
inkscape:connector-curvature="0"
id="path63"
d="M 20.385488,11.950671 C 24.65765,6.7675925 30.434622,4.1994401 37.091192,1.3458617 36.589184,12.311893 36.9106,17.923793 36.964002,26.698257 c -6.025886,0.765461 -12.274893,4.834149 -16.448193,8.634823 0,-0.05086 -0.130412,-22.559589 -0.130412,-23.38275 z"
style="opacity:0.62891002;fill:#ffffff;fill-rule:evenodd;stroke:#000000;stroke-width:1.39885914;stroke-linejoin:round" />
<path
inkscape:connector-curvature="0"
id="path65"
d="m 34.421527,5.7269479 c 0,0 -6.726511,2.7132211 -12.07326,7.8970171"
style="opacity:0.62891002;fill:none;stroke:#000000;stroke-width:0.45657057" />
<path
inkscape:connector-curvature="0"
id="path67"
d="m 33.808038,12.506501 c 0,0 -5.771109,1.779851 -11.458599,6.454864"
style="opacity:0.62891002;fill:none;stroke:#000000;stroke-width:0.45657057" />
<path
inkscape:connector-curvature="0"
id="path69"
d="m 33.733798,18.399732 c -0.06521,0.0238 -5.071265,1.698866 -11.385922,6.327515"
style="opacity:0.62891002;fill:none;stroke:#000000;stroke-width:0.45657057" />
<path
inkscape:connector-curvature="0"
id="path71"
d="m 34.105021,23.7583 c 0,0 -5.878183,2.03687 -11.755582,6.704783"
style="opacity:0.62891002;fill:none;stroke:#000000;stroke-width:0.45657057" />
<path
inkscape:connector-curvature="0"
id="path73"
d="m 6.5280219,7.278355 c 0,0 6.7331581,1.948204 12.0853761,6.523831"
style="opacity:0.62891002;fill:none;stroke:#000000;stroke-width:0.45657057" />
<path
inkscape:connector-curvature="0"
id="path75"
d="m 6.9301115,10.83628 c 0,0 6.1954755,1.140339 11.6828965,5.519377"
style="opacity:0.62891002;fill:none;stroke:#000000;stroke-width:0.45657057" />
<path
inkscape:connector-curvature="0"
id="path77"
d="m 7.1434661,13.988259 c 0,0 5.7769719,1.123473 11.4699319,5.151669"
style="opacity:0.62891002;fill:none;stroke:#000000;stroke-width:0.45657057" />
<path
inkscape:connector-curvature="0"
id="path79"
d="m 7.1399494,17.196572 c 0,0 5.5980056,0.591815 11.4730586,4.875118"
style="opacity:0.62891002;fill:none;stroke:#000000;stroke-width:0.45657057" />
<path
inkscape:connector-curvature="0"
id="path81"
d="m 7.2161475,19.872953 c 0.06527,0.01638 5.0763425,1.122074 11.3972505,5.032514"
style="opacity:0.62891002;fill:none;stroke:#000000;stroke-width:0.45657057" />
<path
inkscape:connector-curvature="0"
id="path83"
d="m 6.9328473,22.483442 c 0.06527,0.01638 5.4417017,1.212856 11.6805507,5.294723"
style="opacity:0.62891002;fill:none;stroke:#000000;stroke-width:0.45657057" />
<path
inkscape:connector-curvature="0"
id="path85"
d="m 6.846099,25.273585 c 0,0 5.88365,1.368339 11.767299,5.367786"
style="opacity:0.62891002;fill:none;stroke:#000000;stroke-width:0.45657057" />
<path
inkscape:connector-curvature="0"
id="path87"
d="M 20.53085,11.886143 C 16.762376,6.7030643 11.666495,4.134912 5.794568,1.2813335 6.2373751,12.247364 5.9538765,17.859266 5.9067195,26.633729 c 5.3154875,0.765427 10.8279155,4.834149 14.5092515,8.634824 0,-0.05087 0.115038,-22.55959 0.115038,-23.382751 z"
style="opacity:0.62891002;fill:#ffffff;fill-rule:evenodd;stroke:#000000;stroke-width:1.3138274;stroke-linejoin:round" />
<path
inkscape:connector-curvature="0"
id="path89"
d="m 8.1500592,5.6624197 c 0,0 5.9332768,2.7132213 10.6501218,7.8970173"
style="opacity:0.62891002;fill:none;stroke:#000000;stroke-width:0.45657057" />
<path
inkscape:connector-curvature="0"
id="path91"
d="m 8.6920411,12.441973 c 0,0 5.0908019,1.779851 10.1077489,6.454864"
style="opacity:0.62891002;fill:none;stroke:#000000;stroke-width:0.45657057" />
<path
inkscape:connector-curvature="0"
id="path93"
d="m 8.7565163,18.335203 c 0.057513,0.0238 4.4734027,1.698866 10.0436647,6.327515"
style="opacity:0.62891002;fill:none;stroke:#000000;stroke-width:0.45657057" />
<path
inkscape:connector-curvature="0"
id="path95"
d="m 8.4302331,23.693771 c 0,0 5.1849739,2.036871 10.3699479,6.704783"
style="opacity:0.62891002;fill:none;stroke:#000000;stroke-width:0.45657057" />
</g>
<path
transform="matrix(0.50801926,0,0,0.48580948,5.5625851,26.972236)"
inkscape:transform-center-y="0.54370049"
inkscape:transform-center-x="-0.11555406"
d="m 16.807071,28.248623 -4.548546,-8.111888 -9.26102,-0.851769 6.3092852,-6.832635 -2.0517319,-9.0709646 8.4478987,3.8890862 7.99298,-4.7543951 -1.088197,9.2362235 6.991665,6.132586 -9.120441,1.819214 z"
inkscape:randomized="0"
inkscape:rounded="0"
inkscape:flatsided="false"
sodipodi:arg2="2.1465318"
sodipodi:arg1="1.5182133"
sodipodi:r2="7.0024018"
sodipodi:r1="14.004804"
sodipodi:cy="14.263176"
sodipodi:cx="16.070995"
sodipodi:sides="5"
id="path3036"
style="fill:#ffff0c;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:round;stroke-opacity:1"
sodipodi:type="star" />
<g
transform="matrix(0.4598514,0,0,0.4598514,-17.558632,18.880619)"
id="g4431">
<path
id="path3174"
d="m 71.973435,41.763556 16.688417,17.028463 c 0.675242,0.769637 2.814792,1.364503 4.244374,0 1.380465,-1.31762 1.061072,-3.174784 -0.289387,-4.521586 L 76.604112,37.145576 c 1.976989,-5.47694 -2.024348,-10.077569 -7.186484,-9.09172 l -1.10931,1.010123 3.472646,3.270916 0.192928,2.886128 -2.592755,2.36043 -3.098511,-0.340131 -3.183303,-2.982347 -1.115988,1.099682 c -0.519078,4.943529 4.663672,9.361623 9.990381,6.404251 z"
style="color:#000000;fill:url(#linearGradient3123);stroke:#676b6a;stroke-width:0.8774851;stroke-opacity:1"
inkscape:connector-curvature="0" />
<path
sodipodi:nodetypes="cccccscccccccccc"
id="path3176"
d="m 72.158832,40.646261 16.872936,17.550744 c 0.522725,0.595794 2.178993,1.056304 3.285667,0 1.068716,-1.020026 0.821417,-2.4577 -0.224023,-3.500334 L 75.846082,37.501709 c 1.067774,-4.614639 -0.66655,-7.506665 -3.699649,-8.380002 -0.710766,-0.204655 -1.492852,-0.298456 -2.326914,-0.277594 l -0.237353,0.239566 3.16573,2.836003 0.114375,3.664554 -3.175395,2.89051 -3.727545,-0.401534 -2.791156,-2.621482 -0.309851,0.376866 c -0.274582,5.230521 5.704006,7.61058 9.300631,4.817341 z"
style="opacity:0.42613998;color:#000000;fill:none;stroke:#ffffff;stroke-width:0.8774851"
inkscape:connector-curvature="0" />
<rect
id="rect3178"
x="80.546432"
y="-26.326511"
width="20.416656"
height="1.8037362"
ry="0.77561975"
rx="0.77556622"
transform="matrix(0.69889898,0.7152204,-0.71708981,0.69698078,0,0)"
style="opacity:0.55416667;color:#000000;fill:none;stroke:url(#linearGradient3125);stroke-width:0.87700158;stroke-miterlimit:4;stroke-dasharray:none" />
<path
id="path3180"
d="M 76.008248,49.571482 C 76.741052,48.94492 87.680387,37.785984 87.680387,37.785984 l 2.700918,-0.192412 4.244374,-5.868475 -3.535998,-3.141748 -5.498399,4.714024 v 2.693691 L 74.401528,47.583773 c -0.530545,0.529125 0.931557,2.564523 1.606808,1.987297 z"
style="color:#000000;fill:url(#linearGradient3127);stroke:#878f9d;stroke-width:0.8774851"
inkscape:connector-curvature="0" />
<path
id="path3182"
d="M 75.923897,48.660119 C 76.491512,48.173767 87.367584,37.066533 87.367584,37.066533 l 2.573248,-0.217325 3.702591,-4.961757 -2.539068,-2.233715 -4.812077,4.133994 0.136421,2.498361 -11.137913,11.647917 c -0.41167,0.410569 0.108919,1.173555 0.632865,0.725682 z"
style="opacity:0.53977003;color:#000000;fill:none;stroke:url(#linearGradient3129);stroke-width:0.8774851"
inkscape:connector-curvature="0" />
<path
id="path3184"
d="m 63.677992,61.389403 c 1.156846,1.28397 4.370198,1.864964 5.795124,-0.622101 0.62131,-1.084347 1.839829,-4.121113 7.276283,-9.000584 0.913017,-0.818623 1.880248,-2.691237 1.060281,-3.701447 l -2.122143,-2.116465 c -0.868162,-0.962014 -3.281274,-0.513299 -4.271349,0.833266 -2.951248,4.027698 -7.772727,7.233854 -8.860422,7.621096 -2.080583,0.741078 -1.84642,3.799769 -0.469926,5.254795 l 1.591607,1.731677 z"
style="color:#000000;fill:url(#linearGradient3131);stroke:#204a87;stroke-width:0.8774851"
inkscape:connector-curvature="0" />
<path
id="path3186"
d="m 91.748745,56.482963 a 1.0610902,1.058251 0 0 1 -2.12218,0 1.0610902,1.058251 0 1 1 2.12218,0 z"
style="color:#000000;fill:#ffffff;stroke:#a1a1a1;stroke-width:0.87748355"
inkscape:connector-curvature="0" />
<path
id="path3188"
d="m 74.702337,47.14006 a 0.8867466,0.88437388 0 1 1 -1.773444,0 0.8867466,0.88437388 0 1 1 1.773444,0 z"
style="opacity:0.60227003;color:#000000;fill:#ffffff"
inkscape:connector-curvature="0" />
<path
id="path3190"
d="m 72.65264,49.13245 c 0,0 -6.299915,6.396715 -9.251426,7.481062"
style="color:#000000;fill:none;stroke:url(#linearGradient3133);stroke-width:2.01338983;stroke-linecap:round;stroke-linejoin:round"
inkscape:connector-curvature="0" />
<path
id="path3192"
d="m 63.977616,60.403554 c 1.266414,1.529688 4.041403,1.893882 4.912771,-0.324752 0.598641,-1.524342 2.929106,-4.964999 7.202916,-8.800785 0.717787,-0.643544 1.478172,-2.115676 0.833559,-2.909788 l -1.668314,-1.663851 c -0.682492,-0.756299 -2.579574,-0.403523 -3.357805,0.65506 -2.320018,3.166284 -7.453949,7.308078 -8.69497,7.716438 -1.921457,0.632355 -1.561381,2.822859 -0.479257,3.966619 l 1.251214,1.361348 z"
style="opacity:0.19886002;color:#000000;fill:none;stroke:#ffffff;stroke-width:0.8774851"
inkscape:connector-curvature="0" />
<path
id="path3194"
d="m 74.537369,50.566094 c 0,0 -6.434262,5.798896 -7.832213,9.516731"
style="opacity:0.27841001;color:#000000;fill:none;stroke:url(#linearGradient3135);stroke-width:2.01338983;stroke-linecap:round;stroke-linejoin:round"
inkscape:connector-curvature="0" />
</g>
</g>
</svg>

After

Width:  |  Height:  |  Size: 27 KiB

View File

@ -8,14 +8,14 @@
xmlns:xlink="http://www.w3.org/1999/xlink"
xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
height="48"
width="48"
version="1.0"
height="26"
width="26"
version="1.1"
id="svg2"
inkscape:version="0.48.2 r9819"
inkscape:version="0.48.4 r9939"
sodipodi:docname="zone_unfill.svg">
<metadata
id="metadata171">
id="metadata40">
<rdf:RDF>
<cc:Work
rdf:about="">
@ -35,612 +35,120 @@
guidetolerance="10"
inkscape:pageopacity="0"
inkscape:pageshadow="2"
inkscape:window-width="1280"
inkscape:window-height="969"
id="namedview169"
showgrid="false"
inkscape:zoom="1.4206261"
inkscape:cx="86.045324"
inkscape:cy="47.445301"
inkscape:window-width="1366"
inkscape:window-height="744"
id="namedview38"
showgrid="true"
inkscape:snap-to-guides="false"
inkscape:snap-grids="true"
inkscape:zoom="19.835874"
inkscape:cx="14.723806"
inkscape:cy="12.329295"
inkscape:window-x="0"
inkscape:window-y="26"
inkscape:window-y="24"
inkscape:window-maximized="1"
inkscape:current-layer="svg2" />
inkscape:current-layer="svg2"
showguides="true"
inkscape:guide-bbox="true">
<inkscape:grid
type="xygrid"
id="grid3017"
empspacing="2"
visible="true"
enabled="true"
snapvisiblegridlinesonly="true"
spacingx="0.5px"
spacingy="0.5px" />
</sodipodi:namedview>
<defs
id="defs4">
<linearGradient
id="a">
<stop
offset="0"
id="stop7" />
<stop
stop-opacity="0"
offset="1"
id="stop9" />
</linearGradient>
<linearGradient
id="w">
<stop
stop-color="#393a38"
offset="0"
id="stop12" />
<stop
stop-color="#393a38"
stop-opacity="0"
offset="1"
id="stop14" />
</linearGradient>
<linearGradient
id="v">
<stop
offset="0"
id="stop17" />
<stop
stop-opacity=".68235"
offset=".40659"
id="stop19" />
<stop
stop-opacity=".48736"
offset=".4533"
id="stop21" />
<stop
stop-opacity=".36101"
offset=".5"
id="stop23" />
<stop
stop-opacity=".15162"
offset=".70604"
id="stop25" />
<stop
stop-opacity="0"
offset="1"
id="stop27" />
</linearGradient>
<radialGradient
id="aj"
fx="95.481"
gradientUnits="userSpaceOnUse"
cy="121.47"
cx="63.847"
gradientTransform="matrix(1,0,0,0.10227,0,109.05)"
r="63.847">
<stop
offset="0"
id="stop30" />
<stop
stop-opacity="0"
offset="1"
id="stop32" />
</radialGradient>
<linearGradient
id="an"
y2="73.415"
xlink:href="#v"
gradientUnits="userSpaceOnUse"
x2="-123.67"
y1="74.96"
x1="-146.75" />
<linearGradient
id="z"
y2="63.447"
xlink:href="#v"
gradientUnits="userSpaceOnUse"
x2="-118.91"
y1="64.065"
x1="-82.51" />
<linearGradient
id="aa"
y2="33.764"
xlink:href="#a"
gradientUnits="userSpaceOnUse"
x2="-118.3"
y1="78.294"
x1="-113.64" />
<radialGradient
id="x"
gradientUnits="userSpaceOnUse"
cy="131.47"
cx="29.962"
gradientTransform="matrix(.27518 -.0064611 .0014253 .063649 3.1395 118.25)"
r="27.02">
<stop
stop-color="#fff"
offset="0"
id="stop38" />
<stop
stop-color="#fff"
stop-opacity="0"
offset="1"
id="stop40" />
</radialGradient>
<radialGradient
id="y"
xlink:href="#a"
gradientUnits="userSpaceOnUse"
cy="130.94"
cx="27.566"
gradientTransform="matrix(0.38772,0,0,0.1113,0.048639,111.4)"
r="27.02" />
<linearGradient
id="ab"
y2="122.54"
gradientUnits="userSpaceOnUse"
x2="24.946"
gradientTransform="matrix(0.38772,0,0,0.39701,0.048639,77.543)"
y1="111.04"
x1="24.651">
<stop
stop-color="#fff"
offset="0"
id="stop44" />
<stop
stop-color="#fff"
stop-opacity="0"
offset="1"
id="stop46" />
</linearGradient>
<linearGradient
id="b"
y2="135.74"
xlink:href="#a"
gradientUnits="userSpaceOnUse"
x2="22.669"
gradientTransform="matrix(0.38772,0,0,0.39701,0.048639,77.543)"
y1="104.75"
x1="23.023" />
<linearGradient
id="ac"
y2="59.811"
gradientUnits="userSpaceOnUse"
x2="41.438"
gradientTransform="matrix(0.38772,0,0,0.39701,0.048639,77.543)"
y1="22.051"
x1="78.569">
<stop
offset="0"
id="stop50" />
<stop
stop-opacity="0"
offset="1"
id="stop52" />
</linearGradient>
<radialGradient
id="ak"
gradientUnits="userSpaceOnUse"
cy="73.864"
cx="-16.603"
gradientTransform="matrix(0.37328,0.041247,0.040871,2.7707,12.855,-94.521)"
r="4.3906">
<stop
stop-color="#fff"
offset="0"
id="stop55" />
<stop
stop-color="#fff"
stop-opacity="0"
offset="1"
id="stop57" />
</radialGradient>
<linearGradient
id="ad"
y2="85.424"
gradientUnits="userSpaceOnUse"
x2="74.325"
gradientTransform="matrix(0.38772,0,0,0.39701,0.048639,79.661)"
y1="112.1"
x1="98.67">
<stop
stop-opacity=".44765"
offset="0"
id="stop60" />
<stop
stop-opacity=".13357"
offset=".5"
id="stop62" />
<stop
stop-opacity="0"
offset="1"
id="stop64" />
</linearGradient>
<linearGradient
id="ae"
y2="88.409"
xlink:href="#w"
gradientUnits="userSpaceOnUse"
x2="76.362"
gradientTransform="matrix(0.37328,0.041247,0.0060014,0.40685,0.50668,76.511)"
y1="117.21"
x1="95.847" />
<linearGradient
id="af"
y2="58.653"
xlink:href="#w"
gradientUnits="userSpaceOnUse"
x2="105.06"
gradientTransform="matrix(0.37328,0.041247,0.0060014,0.40685,0.50668,76.511)"
y1="146.89"
x1="87.068" />
<radialGradient
id="al"
fx="115.73"
fy="56.281"
gradientUnits="userSpaceOnUse"
cy="65.848"
cx="104.66"
gradientTransform="matrix(0.17585,-0.10373,0.40016,0.71126,-7.7874,67.902)"
r="29.999">
<stop
stop-color="#fff"
offset="0"
id="stop69" />
<stop
stop-color="#fff"
stop-opacity="0"
offset="1"
id="stop71" />
</radialGradient>
<linearGradient
id="ag"
y2="69.992"
spreadMethod="reflect"
gradientUnits="userSpaceOnUse"
x2="79.544"
gradientTransform="matrix(0.37277,-0.017336,-0.0021394,0.44507,3.1564,76.357)"
y1="52.469"
x1="106.27">
<stop
stop-color="#9a7600"
offset="0"
id="stop74" />
<stop
stop-color="#e3ad00"
offset=".09292"
id="stop76" />
<stop
stop-color="#ffcd2c"
offset=".50432"
id="stop78" />
<stop
stop-color="#e3ad00"
offset=".91571"
id="stop80" />
<stop
stop-color="#b98d00"
offset="1"
id="stop82" />
</linearGradient>
<linearGradient
id="ah"
y2="93.568"
xlink:href="#a"
gradientUnits="userSpaceOnUse"
x2="-84.777"
gradientTransform="matrix(0.43793,0.033657,0.020585,0.47905,58.22,73.393)"
y1="116.56"
x1="-116.79" />
<radialGradient
id="am"
fx="70.964"
fy="76.702"
gradientUnits="userSpaceOnUse"
cy="53.38"
cx="70.624"
gradientTransform="matrix(0.43671,-0.22947,0.27399,0.5313,-21.732,82.986)"
r="53.565">
<stop
stop-color="#fff"
stop-opacity="0"
offset="0"
id="stop86" />
<stop
stop-color="#7f7f7f"
stop-opacity="0"
offset=".5"
id="stop88" />
<stop
offset="1"
id="stop90" />
</radialGradient>
<linearGradient
id="ai"
y2="66.671"
gradientUnits="userSpaceOnUse"
x2="-27.89"
gradientTransform="matrix(0.43793,0.033657,0.020585,0.47905,58.22,73.393)"
y1="95.781"
x1="-70.057">
<stop
stop-color="#fff"
offset="0"
id="stop93" />
<stop
stop-color="#fff"
offset=".42597"
id="stop95" />
<stop
stop-color="#f1f1f1"
offset=".58928"
id="stop97" />
<stop
stop-color="#eaeaea"
offset=".80220"
id="stop99" />
<stop
stop-color="#dfdfdf"
offset="1"
id="stop101" />
</linearGradient>
<linearGradient
id="linearGradient3165">
<stop
style="stop-color:#f68273;stop-opacity:1;"
offset="0"
id="stop3167" />
<stop
id="stop3165"
offset="0.5"
style="stop-color:#cd2923;stop-opacity:1;" />
<stop
style="stop-color:#8c0000;stop-opacity:1"
offset="1"
id="stop3169" />
</linearGradient>
<radialGradient
inkscape:collect="always"
xlink:href="#x"
id="radialGradient3133"
gradientUnits="userSpaceOnUse"
gradientTransform="matrix(0.27518,-0.0064611,0.0014253,0.063649,3.1395,118.25)"
cx="29.962"
cy="131.47"
r="27.02" />
<radialGradient
inkscape:collect="always"
xlink:href="#a"
id="radialGradient3135"
gradientUnits="userSpaceOnUse"
gradientTransform="matrix(0.38772,0,0,0.1113,0.048639,111.4)"
cx="27.566"
cy="130.94"
r="27.02" />
<filter
id="c"
height="1.3651"
width="1.2097"
color-interpolation-filters="sRGB"
y="-0.18257"
x="-0.10484">
<feGaussianBlur
stdDeviation="1.5978799"
id="feGaussianBlur7" />
</filter>
<filter
id="d"
height="1.4696"
width="1.4809999"
color-interpolation-filters="sRGB"
y="-0.23481999"
x="-0.24049">
<feGaussianBlur
stdDeviation="1.5978799"
id="feGaussianBlur10" />
</filter>
<linearGradient
inkscape:collect="always"
xlink:href="#a"
id="linearGradient3137"
gradientUnits="userSpaceOnUse"
gradientTransform="matrix(0.38772,0,0,0.39701,0.048639,77.543)"
x1="23.023"
y1="104.75"
x2="22.669"
y2="135.74" />
id="linearGradient3761-8">
<stop
style="stop-color:#b40000;stop-opacity:1"
offset="0"
id="stop3763-5" />
<stop
style="stop-color:#fa0000;stop-opacity:1"
offset="1"
id="stop3765-5" />
</linearGradient>
<linearGradient
inkscape:collect="always"
xlink:href="#a"
id="linearGradient3139"
xlink:href="#linearGradient3761-8"
id="linearGradient3030"
gradientUnits="userSpaceOnUse"
gradientTransform="matrix(0.38772,0,0,0.39701,0.048639,77.543)"
x1="23.023"
y1="104.75"
x2="22.669"
y2="135.74" />
<radialGradient
inkscape:collect="always"
xlink:href="#x"
id="radialGradient3141"
gradientUnits="userSpaceOnUse"
gradientTransform="matrix(0.27518,-0.0064611,0.0014253,0.063649,3.1395,118.25)"
cx="29.962"
cy="131.47"
r="27.02" />
<linearGradient
inkscape:collect="always"
xlink:href="#linearGradient3165"
id="linearGradient3147"
gradientUnits="userSpaceOnUse"
gradientTransform="matrix(1.0243903,0,0,1.0355608,-35.845375,-31.825111)"
x1="10"
y1="2.5"
x2="15.409858"
y2="21.491209" />
<linearGradient
inkscape:collect="always"
xlink:href="#linearGradient3165"
id="linearGradient3149"
gradientUnits="userSpaceOnUse"
gradientTransform="matrix(1.0243903,0,0,1.0355608,-35.33318,-31.825111)"
x1="9.5"
y1="2.5"
x2="14.909858"
y2="21.491209" />
gradientTransform="translate(6,12)"
x1="13"
y1="12.5"
x2="13"
y2="1.5" />
</defs>
<g
transform="matrix(0.8137128,0,0,0.8137128,0.86800034,-58.573032)"
id="g103"
style="opacity:0.61728396">
transform="matrix(1.6382539,0,0,1.5572263,1.2572207,0.36314149)"
id="g16">
<rect
height="0"
width="1"
y="77"
x="116"
id="rect105"
style="opacity:0.57787003;fill:#ffffff" />
<rect
height="0"
width="1"
y="33.537998"
x="-141.37"
id="rect107"
style="opacity:0.57787003;fill:#ffffff" />
<path
d="m 6.0093,127.44 c 2.655,0.022 4.8939,-0.27986 5.4405,-0.26605 3.616,0.0913 12.279,-1.6267 8.8147,-3.7388 -3.7851,-2.3074 -14.189,-2.2454 -18.24,-0.0206 -4.4207,2.428 1.3297,4.0034 3.9843,4.0254 z"
id="path109"
style="opacity:0.37705;fill:url(#radialGradient3133);fill-rule:evenodd;stroke:url(#radialGradient3135);stroke-width:0.84430999"
inkscape:connector-curvature="0" />
<path
d="m 127.69,121.47 a 63.847,6.5298 0 1 1 -127.69,0 63.847,6.5298 0 1 1 127.69,0 z"
transform="matrix(0.38772,0,0,0.39701,0.048639,77.543)"
id="path111"
style="opacity:0.36474998;fill:url(#aj)"
inkscape:connector-curvature="0" />
<path
d="m 33.424,83.207 13.734,25.039 c 1.8994,3.4628 -2.2661,9.5271 -9.3001,13.538 -7.034,4.0106 -14.282,4.4542 -16.182,0.99147 -1.899,-3.47 -11.834,-21.58 -13.734,-25.044 -1.8989,-3.463 2.267,-9.527 9.301,-13.537 7.034,-4.0106 14.282,-4.4543 16.182,-0.99147 z"
id="path113"
inkscape:connector-curvature="0"
style="opacity:0.25;fill:none;stroke:#000000;stroke-width:1.16820002;stroke-linecap:round;stroke-linejoin:round;stroke-opacity:0.33332998;stroke-dashoffset:4" />
<path
d="m 33.424,83.207 13.734,25.039 c 1.8994,3.4628 -2.2661,9.5271 -9.3001,13.538 -7.034,4.0106 -14.282,4.4542 -16.182,0.99147 -1.899,-3.47 -11.834,-21.58 -13.734,-25.044 -1.8989,-3.463 2.267,-9.527 9.301,-13.537 7.034,-4.0106 14.282,-4.4543 16.182,-0.99147 z"
id="path115"
inkscape:connector-curvature="0"
style="opacity:0.3;fill:none;stroke:#000000;stroke-width:0.77877998;stroke-linecap:round;stroke-linejoin:round;stroke-opacity:0.33332998;stroke-dashoffset:4" />
<path
d="m 33.423,83.085 13.734,25.039 c 1.8994,3.4628 -2.2661,9.5271 -9.3001,13.538 -7.034,4.0106 -14.282,4.4542 -16.182,0.99146 -1.9,-3.46 -11.835,-21.57 -13.734,-25.036 -1.8994,-3.4628 2.2661,-9.5271 9.3001,-13.538 7.034,-4.0106 14.282,-4.4542 16.182,-0.99147 z"
id="path117"
style="fill:url(#ai)"
inkscape:connector-curvature="0" />
<path
d="m 33.423,83.085 13.734,25.039 c 1.8994,3.4628 -2.2661,9.5271 -9.3001,13.538 -7.034,4.0106 -14.282,4.4542 -16.182,0.99146 -1.9,-3.46 -11.835,-21.57 -13.734,-25.036 -1.8994,-3.4628 2.2661,-9.5271 9.3001,-13.538 7.034,-4.0106 14.282,-4.4542 16.182,-0.99147 z"
id="path119"
style="opacity:0.40574;fill:url(#am)"
inkscape:connector-curvature="0" />
<path
d="m 33.423,83.085 13.734,25.039 c 1.8994,3.4628 -2.2661,9.5271 -9.3001,13.538 -7.034,4.0106 -14.282,4.4542 -16.182,0.99146 -1.9,-3.46 -11.835,-21.57 -13.734,-25.036 -1.8994,-3.4628 2.2661,-9.5271 9.3001,-13.538 7.034,-4.0106 14.282,-4.4542 16.182,-0.99147 z"
id="path121"
style="fill:url(#ah)"
inkscape:connector-curvature="0" />
<path
d="m -84.361,47.981 a 33.4965,23.882356 0 1 1 -66.993,0 33.4965,23.882356 0 1 1 66.993,0 z"
transform="matrix(0.38042,-0.21691,0.14408,0.26268,59.09,52.157)"
id="path123"
style="opacity:0.4;fill:url(#an)"
inkscape:connector-curvature="0" />
<path
d="m -84.361,47.981 a 33.4965,23.882356 0 1 1 -66.993,0 33.4965,23.882356 0 1 1 66.993,0 z"
transform="matrix(0.38042,-0.21691,0.14408,0.26268,58.717,52.116)"
id="path125"
style="opacity:0.4;fill:url(#z)"
inkscape:connector-curvature="0" />
<path
d="m -84.361,47.981 a 33.4965,23.882356 0 1 1 -66.993,0 33.4965,23.882356 0 1 1 66.993,0 z"
transform="matrix(0.38042,-0.21691,0.14408,0.26268,58.717,52.116)"
id="path127"
style="opacity:0.4;fill:url(#aa)"
inkscape:connector-curvature="0" />
<path
d="m 33.46,83.158 c 0.11622,0.21188 0.53583,0.96658 0.6211,1.122 1.8994,3.4628 -2.2599,9.5246 -9.2939,13.535 -7.034,4.0106 -14.276,4.4577 -16.175,0.99497 -0.10266,-0.18716 -0.59317,-1.0869 -0.74024,-1.355 0.048724,0.54912 0.19007,1.0571 0.44752,1.5265 0.9842,1.7943 3.3607,2.5663 6.3496,2.383 2.9889,-0.1833 6.6184,-1.3189 10.182,-3.3506 3.5633,-2.0317 6.4077,-4.5743 8.1257,-7.0747 1.7179,-2.5004 2.3032,-4.968 1.319,-6.7623 -0.21456,-0.39116 -0.49658,-0.72505 -0.83492,-1.0191 z"
id="path129"
inkscape:connector-curvature="0"
style="fill:#cacaca" />
<path
d="m 29.794,81.293 c -3.206,-0.363 -7.69,0.753 -12.087,3.259 -7.034,4.011 -11.202,10.082 -9.3031,13.544 0.1425,0.26 0.3224,0.489 0.5228,0.705 -0.1043,-0.137 -0.2024,-0.272 -0.2861,-0.425 -1.8993,-3.462 2.2691,-9.533 9.3031,-13.544 6.504,-3.708 13.189,-4.367 15.662,-1.709 -0.781,-1.03 -2.116,-1.638 -3.812,-1.83 z"
id="path131"
inkscape:connector-curvature="0"
style="opacity:0.4;fill:#babdb6" />
<path
d="m 23.108,104.54 9.6297,16.635 c 5.7579,-2.6489 12.533,-8.8374 13.632,-12.946 l -9.38,-16.925 c -1.1577,6.0247 -8.2031,10.457 -13.883,13.239 z"
id="path133"
style="fill:url(#ag)"
inkscape:connector-curvature="0" />
<path
d="m -84.361,47.981 a 33.4965,23.882356 0 1 1 -66.993,0 33.4965,23.882356 0 1 1 66.993,0 z"
transform="matrix(0.37989,-0.21697,0.14389,0.26266,58.645,52.107)"
id="path135"
inkscape:connector-curvature="0"
style="fill:none;stroke:#ffffff;stroke-width:1.61269999;stroke-linecap:round;stroke-linejoin:round;stroke-dashoffset:4" />
<path
d="m 7.6345,95.042 c -0.10733,0.92298 0.00976,1.7805 0.39891,2.5124 1.8376,3.456 8.6542,2.6038 15.641,-1.0594 1.8682,-0.97955 3.4115,-2.1613 3.8182,-2.5091 -2.9119,-1.8717 -18.781,-3.5503 -19.858,1.0561 z"
id="path137"
inkscape:connector-curvature="0"
style="fill:#b70000" />
<path
d="m 29.484,80.825 c -0.62002,-0.06894 -1.2913,-0.07484 -2.0036,-0.03099 -2.8491,0.17541 -6.3402,1.2615 -9.7932,3.2336 -3.453,1.9722 -6.1928,4.4399 -7.8303,6.827 -0.35762,0.52132 -0.65935,1.0438 -0.90883,1.5497 0.2277,-0.43679 0.50037,-0.87218 0.8074,-1.3198 1.6375,-2.3871 4.3771,-4.8676 7.8301,-6.8397 3.453,-1.9722 6.9442,-3.0582 9.7932,-3.2336 2.8491,-0.17541 5.0442,0.5423 5.9486,2.1932 0.62176,1.135 0.56323,2.5799 -0.06699,4.1434 0.71575,-1.6489 0.8196,-3.1722 0.1686,-4.3606 -0.67829,-1.2382 -2.0849,-1.9554 -3.945,-2.1622 z m 4.0663,7.2276 c -0.24118,0.46547 -0.52931,0.93211 -0.85275,1.4036 -1.725,2.5146 -4.5694,5.0704 -8.1405,7.11 -3.5712,2.0396 -7.1976,3.1817 -10.199,3.3665 -3.0013,0.18478 -5.3902,-0.59455 -6.3826,-2.4062 -0.6823,-1.2455 -0.61017,-2.8146 0.061924,-4.4866 -0.76023,1.7588 -0.87715,3.4012 -0.16353,4.7039 0.99243,1.8116 3.3813,2.591 6.3826,2.4062 3.0013,-0.18478 6.6277,-1.3269 10.199,-3.3665 3.5712,-2.0396 6.4157,-4.5827 8.1407,-7.0973 0.37395,-0.54512 0.69082,-1.0974 0.95417,-1.6336 z"
id="path139"
inkscape:connector-curvature="0"
style="fill-opacity:0.39431003" />
<path
d="m 29.69,80.732 c -0.62002,-0.06894 -1.2915,-0.08756 -2.0038,-0.04371 -2.8491,0.17541 -6.3402,1.2615 -9.7932,3.2336 -2.2089,1.2616 -4.1189,2.7318 -5.6439,4.2506 1.4707,-1.4082 3.2758,-2.7538 5.3342,-3.9294 3.453,-1.9722 6.9442,-3.0582 9.7932,-3.2336 2.8491,-0.17541 5.088,0.55309 5.9375,2.2337 0.80802,1.5986 0.18108,3.884 -1.4564,6.271 -0.56859,0.82887 -1.2068,1.5976 -2.0239,2.4221 0.95625,-0.92626 1.6916,-1.8074 2.3336,-2.7433 1.6375,-2.3871 2.335,-4.5686 1.4306,-6.2195 -0.678,-1.237 -2.047,-2.034 -3.908,-2.241 z m -18.094,7.3811 c -0.94214,0.92708 -1.7572,1.8759 -2.4041,2.8189 -1.725,2.5146 -2.3245,4.9972 -1.332,6.8088 0.99243,1.8116 3.3813,2.591 6.3826,2.4062 3.0013,-0.18478 6.6394,-1.3256 10.211,-3.3652 2.3864,-1.363 4.4379,-2.9547 6.0578,-4.6111 -1.5681,1.5407 -3.5161,3.0151 -5.7481,4.2899 -3.5712,2.0396 -7.1974,3.1944 -10.199,3.3792 -3.002,0.19 -5.3908,-0.607 -6.3832,-2.419 -0.9924,-1.811 -0.3929,-4.294 1.332,-6.808 0.5732,-0.835 1.2762,-1.674 2.0832,-2.499 z"
id="path141"
inkscape:connector-curvature="0"
style="fill-opacity:0.39431003" />
<path
d="m 23.108,104.54 9.6297,16.635 c 5.7579,-2.6489 12.533,-8.8374 13.632,-12.946 l -9.38,-16.93 c -1.1577,6.0247 -8.2031,10.457 -13.883,13.239 z"
id="path143"
style="fill:url(#al)"
inkscape:connector-curvature="0" />
<path
d="m 46.585,107.4 c 0.11481,0.20932 0.52934,0.95488 0.61359,1.1085 1.8764,3.4209 -2.2326,9.4093 -9.1814,13.371 -6.9489,3.9621 -14.103,4.4038 -15.98,0.98293 -0.10142,-0.18489 -0.58599,-1.0737 -0.73128,-1.3386 0.04813,0.54247 0.18777,1.0444 0.4421,1.508 0.97229,1.7726 3.32,2.5352 6.2728,2.3541 2.9527,-0.18108 6.5383,-1.3029 10.058,-3.31 3.5202,-2.0071 6.3302,-4.5189 8.0273,-6.9891 1.6971,-2.4702 2.2753,-4.9078 1.303,-6.6804 -0.21196,-0.38643 -0.49057,-0.71628 -0.82482,-1.0068 z"
id="path145"
style="opacity:0.78279;fill:url(#af)"
inkscape:connector-curvature="0" />
<path
d="m 46.412,107.2 c 0.11481,0.20932 0.52934,0.95488 0.61358,1.1085 1.8764,3.4209 -2.2326,9.4093 -9.1814,13.371 -6.9489,3.9621 -14.103,4.4038 -15.98,0.98292 -0.10142,-0.18489 -0.58599,-1.0737 -0.73128,-1.3386 0.04813,0.54247 0.18777,1.0444 0.4421,1.508 0.97229,1.7726 3.32,2.5352 6.2728,2.3541 2.9527,-0.18107 6.5383,-1.3029 10.058,-3.31 3.5202,-2.0071 6.3302,-4.5189 8.0273,-6.9891 1.6971,-2.4702 2.2753,-4.9078 1.303,-6.6804 -0.21196,-0.38643 -0.49057,-0.71627 -0.82481,-1.0068 z"
id="path147"
style="opacity:0.78279;fill:url(#ae)"
inkscape:connector-curvature="0" />
<path
d="m 6.0093,127.44 c 2.655,0.022 4.8939,-0.27986 5.4405,-0.26605 3.616,0.0913 12.279,-1.6267 8.8147,-3.7388 -3.7851,-2.3074 -14.189,-2.2454 -18.24,-0.0206 -4.4207,2.428 1.3297,4.0034 3.9843,4.0254 z"
id="path149"
inkscape:connector-curvature="0"
style="fill:#b90000;fill-rule:evenodd;stroke:#ae0000;stroke-width:0.29506999px" />
<path
d="m 5.9894,127.59 c 2.655,0.0219 4.904,-0.29498 5.4505,-0.27623 3.6491,0.12518 12.595,-1.6495 8.9242,-3.973 -3.7471,-2.3715 -14.288,-2.3472 -18.478,-1.9e-4 -4.401,2.4652 1.4491,4.2274 4.1036,4.2494 z"
id="path151"
style="opacity:0.88524996;fill:none;stroke:url(#linearGradient3137);stroke-width:0.03021"
inkscape:connector-curvature="0" />
<path
d="m 32.737,121.18 c 5.7579,-2.6489 12.533,-8.8374 13.632,-12.946 -6.7694,-12.005 -19.554,2.4904 -13.632,12.946 z"
id="path153"
style="opacity:0.43852001;fill:url(#ad)"
inkscape:connector-curvature="0" />
<path
d="m 14,99.675 c -2.2234,-0.05445 -3.0412,1.7745 -3.184,3.5536 -0.42678,5.3178 0.4632,9.0456 0.16561,13.3 -0.06036,0.86297 -1.5603,1.7306 -1.7366,-0.19189 -0.40911,-4.4614 0.28624,-7.592 -0.20289,-13.754 -0.162,-2.03 -0.7721,-3.988 -1.3073,-6.315"
id="path155"
inkscape:connector-curvature="0"
style="fill:#b70000;fill-rule:evenodd;stroke:#000000;stroke-width:0.039234" />
<path
d="m 8.3586,98.041 c 0.42645,1.7177 0.83004,3.2679 0.95688,4.8658 0.48913,6.1622 -0.20618,9.2954 0.20293,13.757 0.023488,0.25612 0.073383,0.46077 0.13732,0.62446 0.17107,-0.17904 0.28884,-0.40778 0.30502,-0.63905 0.29759,-4.2548 -0.6222,-7.9303 -0.19542,-13.248 0.11169,-1.3917 0.58734,-3.2122 1.8918,-3.599 -1.1037,-0.58622 -2.2392,-1.1509 -3.2985,-1.7608 z"
id="path157"
style="fill:url(#ak);fill-rule:evenodd"
inkscape:connector-curvature="0" />
<path
d="m 7.6345,95.042 c -0.10733,0.92298 0.00976,1.7805 0.39891,2.5124 1.8376,3.456 8.6542,2.6038 15.641,-1.0594 1.8682,-0.97955 3.4115,-2.1613 3.8182,-2.5091 -2.9119,-1.8717 -18.781,-3.5503 -19.858,1.0561 z"
id="path159"
style="fill:url(#ac)"
inkscape:connector-curvature="0" />
<path
d="m 5.9894,127.59 c 2.655,0.0219 4.904,-0.29498 5.4505,-0.27623 3.6491,0.12518 12.566,-1.6189 8.8943,-3.9424 -3.7471,-2.3715 -14.238,-2.3421 -18.429,0.005 -4.401,2.4652 1.4292,4.1918 4.0837,4.2138 z"
id="path161"
style="opacity:0.62705;fill:none;stroke:url(#linearGradient3139);stroke-width:0.10868"
inkscape:connector-curvature="0" />
<path
d="m 5.9894,127.59 c 2.655,0.0219 4.904,-0.29498 5.4505,-0.27623 3.6491,0.12518 12.498,-1.5125 8.817,-3.82 -3.7355,-2.3418 -14.104,-2.3114 -18.309,-0.002 -4.4209,2.4278 1.387,4.0766 4.0416,4.0985 z"
id="path163"
style="opacity:0.24589999;fill:none;stroke:url(#b);stroke-width:0.38330999"
inkscape:connector-curvature="0" />
<path
d="m 12.599,121.65 c -3.0669,-0.11835 -6.3077,0.19446 -8.6791,0.91147 -1.2154,1.1351 3.318,2.24 6.6542,2.3243 3.7933,0.0958 8.0875,-1.0156 7.3338,-2.4969 -1.5294,-0.41634 -3.3782,-0.6644 -5.309,-0.73889 z"
id="path165"
style="opacity:0.81967002;fill:url(#ab)"
inkscape:connector-curvature="0" />
<path
d="m 6.0093,127.44 c 2.655,0.022 4.8939,-0.27986 5.4405,-0.26605 3.616,0.0913 12.279,-1.6267 8.8147,-3.7388 -3.7851,-2.3074 -14.189,-2.2454 -18.24,-0.0206 -4.4207,2.428 1.3297,4.0034 3.9843,4.0254 z"
id="path167"
style="opacity:0.70082003;fill:url(#radialGradient3141);fill-rule:evenodd;stroke:url(#y);stroke-width:0.29506999px"
inkscape:connector-curvature="0" />
</g>
<g
id="g3143"
transform="matrix(1.2815648,0,0,1.2815648,64.140807,45.362525)">
<path
sodipodi:nodetypes="ccccc"
id="path2205"
d="m -15.929658,-8.3478112 c 0,0 -5.437059,-13.8983998 -19.071531,-18.4086998 l 2.209878,-3.2863 c 13.519108,4.4033 19.038487,20.3035998 19.038487,20.3035998 z"
style="fill:url(#linearGradient3147);fill-opacity:1;fill-rule:evenodd;stroke:none"
inkscape:connector-curvature="0" />
<path
sodipodi:nodetypes="ccccc"
id="path2408"
d="m -33.373685,-12.238811 4.076437,3.4638998 C -23.236742,-24.428911 -12.2844,-28.042811 -12.2844,-28.042811 l -2,-1.1786 c 0,0 -11.706729,2.1185 -19.089285,16.9826 z"
style="fill:url(#linearGradient3149);fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:1;marker:none;visibility:visible;display:inline;overflow:visible;enable-background:accumulate"
inkscape:connector-curvature="0" />
height="16"
width="16"
y="0"
x="0"
id="rect18"
style="fill-opacity:0" />
</g>
<path
style="fill:none;stroke:#808080;stroke-width:3;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none"
d="m 13,10.5 4.5,0 6,13"
id="path3765"
inkscape:connector-curvature="0"
sodipodi:nodetypes="ccc" />
<path
sodipodi:type="arc"
style="fill:none;stroke:#808080;stroke-width:3;stroke-miterlimit:4;stroke-dasharray:none"
id="path3815"
sodipodi:cx="9"
sodipodi:cy="10"
sodipodi:rx="3.5"
sodipodi:ry="3.5"
d="m 12.5,10 a 3.5,3.5 0 1 1 -7,0 3.5,3.5 0 1 1 7,0 z"
transform="translate(0,0.5)" />
<path
sodipodi:nodetypes="cccccsssccccc"
inkscape:connector-curvature="0"
id="path2991"
d="M 0,0 0,26 20.5,26 15,14 15.0625,14 C 13.8522,16.092433 11.591084,17.5 9,17.5 c -3.8659934,0 -7,-3.134007 -7,-7 0,-3.8659934 3.1340066,-7 7,-7 2.591084,0 4.8522,1.4075669 6.0625,3.5 L 20,7 26,20 26,0 z"
style="fill:#cccccc;fill-opacity:1;stroke:#008000;stroke-width:1.29999994999999990;stroke-linecap:butt;stroke-linejoin:round;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none" />
<path
inkscape:connector-curvature="0"
d="m 13.5,13.5 11,11 m -11,0 11,-11"
style="opacity:0.75;fill:none;stroke:#ffffff;stroke-width:4;stroke-linecap:butt;stroke-linejoin:round;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none"
id="path3786"
sodipodi:nodetypes="cccc" />
<path
inkscape:connector-curvature="0"
id="path3766-9"
style="fill:none;stroke:url(#linearGradient3030);stroke-width:3;stroke-linecap:butt;stroke-linejoin:round;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none"
d="M 14,14 24,24 M 14,24 24,14" />
</svg>

Before

Width:  |  Height:  |  Size: 26 KiB

After

Width:  |  Height:  |  Size: 4.8 KiB

View File

@ -200,6 +200,7 @@ set( COMMON_SRCS
systemdirsappend.cpp
trigo.cpp
utf8.cpp
validators.cpp
wildcards_and_files_ext.cpp
worksheet.cpp
wxwineda.cpp

View File

@ -165,6 +165,51 @@ bool BASE_SCREEN::SetPreviousZoom()
return false;
}
/* Build the list of human readable grid list.
* The list shows the grid size both in mils or mm.
* aMmFirst = true to have mm first and mils after
* false to have mils first and mm after
*/
int BASE_SCREEN::BuildGridsChoiceList( wxArrayString& aGridsList, bool aMmFirst) const
{
wxString msg;
wxRealPoint curr_grid_size = GetGridSize();
int idx = -1;
int idx_usergrid = -1;
for( size_t i = 0; i < GetGridCount(); i++ )
{
const GRID_TYPE& grid = m_grids[i];
double gridValueMils = To_User_Unit( INCHES, grid.m_Size.x ) * 1000;
double gridValue_mm = To_User_Unit( MILLIMETRES, grid.m_Size.x );
if( grid.m_Id == ID_POPUP_GRID_USER )
{
msg = _( "User Grid" );
idx_usergrid = i;
}
else
{
if( aMmFirst )
msg.Printf( _( "Grid: %.4f mm (%.2f mils)" ),
gridValue_mm, gridValueMils );
else
msg.Printf( _( "Grid: %.2f mils (%.4f mm)" ),
gridValueMils, gridValue_mm );
}
aGridsList.Add( msg );
if( curr_grid_size == grid.m_Size )
idx = i;
}
if( idx < 0 )
idx = idx_usergrid;
return idx;
}
void BASE_SCREEN::SetGridList( GRIDS& gridlist )
{

View File

@ -83,7 +83,7 @@ std::string Double2Str( double aValue )
len = sprintf( buf, "%.16g", aValue );
}
return std::string( buf, len );;
return std::string( buf, len );
}

View File

@ -1,9 +1,9 @@
/*
* This program source code file is part of KiCad, a free EDA CAD application.
*
* Copyright (C) 2013 Jean-Pierre Charras, jp.charras at wanadoo.fr
* Copyright (C) 2015 Jean-Pierre Charras, jp.charras at wanadoo.fr
* Copyright (C) 2013 Wayne Stambaugh <stambaughw@verizon.net>
* Copyright (C) 1992-2013 KiCad Developers, see AUTHORS.txt for contributors.
* Copyright (C) 1992-2015 KiCad Developers, see AUTHORS.txt for contributors.
*
* This program is free software; you can redistribute it and/or
* modify it under the terms of the GNU General Public License
@ -629,6 +629,13 @@ void EDA_BASE_FRAME::CopyVersionInfoToClipboard( wxCommandEvent& event )
tmp << wxT( "OFF\n" );
#endif
tmp << wxT( " KICAD_USE_WEBKIT=" );
#ifdef KICAD_USE_WEBKIT
tmp << wxT( "ON\n" );
#else
tmp << wxT( "OFF\n" );
#endif
wxMessageBox( tmp, _("Version Information (copied to the clipboard)") );
wxTheClipboard->SetData( new wxTextDataObject( tmp ) );

View File

@ -1,8 +1,8 @@
/*
* This program source code file is part of KiCad, a free EDA CAD application.
*
* Copyright (C) 2014 Jean-Pierre Charras, jp.charras at wanadoo.fr
* Copyright (C) 2014 KiCad Developers, see CHANGELOG.TXT for contributors.
* Copyright (C) 2015 Jean-Pierre Charras, jp.charras at wanadoo.fr
* Copyright (C) 2015 KiCad Developers, see CHANGELOG.TXT for contributors.
*
* This program is free software; you can redistribute it and/or
* modify it under the terms of the GNU General Public License
@ -30,7 +30,7 @@
#endif
#ifndef KICAD_BUILD_VERSION
# define KICAD_BUILD_VERSION "(2014-jul-16 BZR unknown)"
# define KICAD_BUILD_VERSION "(after 2015-jan-16 BZR unknown)"
#endif
/**

View File

@ -197,7 +197,7 @@ bool BITMAP_BASE::LoadData( LINE_READER& aLine, wxString& aErrorMsg )
}
EDA_RECT BITMAP_BASE::GetBoundingBox() const
const EDA_RECT BITMAP_BASE::GetBoundingBox() const
{
EDA_RECT rect;

View File

@ -24,6 +24,7 @@
#include <common.h>
#include <class_page_info.h>
#include <macros.h>

View File

@ -1,9 +1,9 @@
/*
* This program source code file is part of KiCad, a free EDA CAD application.
*
* Copyright (C) 2014 Jean-Pierre Charras, jp.charras at wanadoo.fr
* Copyright (C) 2008-2011 Wayne Stambaugh <stambaughw@verizon.net>
* Copyright (C) 1992-2011 KiCad Developers, see AUTHORS.txt for contributors.
* Copyright (C) 2014-2015 Jean-Pierre Charras, jp.charras at wanadoo.fr
* Copyright (C) 2008-2015 Wayne Stambaugh <stambaughw@verizon.net>
* Copyright (C) 1992-2015 KiCad Developers, see AUTHORS.txt for contributors.
*
* This program is free software; you can redistribute it and/or
* modify it under the terms of the GNU General Public License
@ -212,29 +212,26 @@ void AddUnitSymbol( wxStaticText& Stext, EDA_UNITS_T aUnit )
}
wxArrayString* wxStringSplit( wxString aString, wxChar aSplitter )
void wxStringSplit( const wxString& aText, wxArrayString& aStrings, wxChar aSplitter )
{
wxArrayString* list = new wxArrayString();
wxString tmp;
while( 1 )
for( unsigned ii = 0; ii < aText.Length(); ii++ )
{
int index = aString.Find( aSplitter );
if( aText[ii] == aSplitter )
{
aStrings.Add( tmp );
tmp.Clear();
}
if( index == wxNOT_FOUND )
break;
wxString tmp;
tmp = aString.Mid( 0, index );
aString = aString.Mid( index + 1, aString.size() - index );
list->Add( tmp );
else
tmp << aText[ii];
}
if( !aString.IsEmpty() )
if( !tmp.IsEmpty() )
{
list->Add( aString );
aStrings.Add( tmp );
}
return list;
}
@ -271,9 +268,9 @@ double RoundTo0( double x, double precision )
int remainder = ix % 10; // remainder is in precision mm
if ( remainder <= 2 )
if( remainder <= 2 )
ix -= remainder; // truncate to the near number
else if (remainder >= 8 )
else if( remainder >= 8 )
ix += 10 - remainder; // round to near number
if ( x < 0 )
@ -305,6 +302,46 @@ wxConfigBase* GetNewConfig( const wxString& aProgName )
return cfg;
}
wxString GetKicadLockFilePath()
{
wxFileName lockpath;
lockpath.AssignDir( wxGetHomeDir() ); // Default wx behavior
#if defined( __WXMAC__ )
// In OSX use the standard per user cache directory
lockpath.AppendDir( wxT( "Library" ) );
lockpath.AppendDir( wxT( "Caches" ) );
lockpath.AppendDir( wxT( "kicad" ) );
#elif defined( __UNIX__ )
wxString envstr;
// Try first the standard XDG_RUNTIME_DIR, falling back to XDG_CACHE_HOME
if( wxGetEnv( wxT( "XDG_RUNTIME_DIR" ), &envstr ) && !envstr.IsEmpty() )
{
lockpath.AssignDir( envstr );
}
else if( wxGetEnv( wxT( "XDG_CACHE_HOME" ), &envstr ) && !envstr.IsEmpty() )
{
lockpath.AssignDir( envstr );
}
else
{
// If all fails, just use ~/.cache
lockpath.AppendDir( wxT( ".cache" ) );
}
lockpath.AppendDir( wxT( "kicad" ) );
#endif
#if defined( __WXMAC__ ) || defined( __UNIX__ )
if( !lockpath.DirExists() )
{
// Lockfiles should be only readable by the user
lockpath.Mkdir( 0700, wxPATH_MKDIR_FULL );
}
#endif
return lockpath.GetPath();
}
wxString GetKicadConfigPath()
{
@ -346,6 +383,19 @@ wxString GetKicadConfigPath()
}
#include <ki_mutex.h>
const wxString ExpandEnvVarSubstitutions( const wxString& aString )
{
// wxGetenv( wchar_t* ) is not re-entrant on linux.
// Put a lock on multithreaded use of wxGetenv( wchar_t* ), called from wxEpandEnvVars(),
static MUTEX getenv_mutex;
MUTLOCK lock( getenv_mutex );
// We reserve the right to do this another way, by providing our own member
// function.
return wxExpandEnvVars( aString );
}
bool EnsureFileDirectoryExists( wxFileName* aTargetFullFileName,
const wxString& aBaseFilename,

View File

@ -490,6 +490,7 @@ void PARAM_CFG_LIBNAME_LIST::ReadParam( wxConfigBase* aConfig ) const
id_lib << indexlib;
indexlib++;
libname = aConfig->Read( id_lib, wxT( "" ) );
if( libname.IsEmpty() )
break;
// file names are stored using Unix notation

View File

@ -411,14 +411,14 @@ public:
// wxModalEventLoop depends on this (so we can't just use ON_BLOCK_EXIT or
// something similar here)
#if wxUSE_EXCEPTIONS
for ( ;; )
for( ; ; )
{
try
{
#endif // wxUSE_EXCEPTIONS
// this is the event loop itself
for ( ;; )
for( ; ; )
{
// generate and process idle events for as long as we don't
// have anything else to do
@ -446,7 +446,7 @@ public:
// handlers endlessly generate new events but they shouldn't do
// this in a well-behaved program and we shouldn't just discard the
// events we already have, they might be important.
for ( ;; )
for( ; ; )
{
bool hasMoreEvents = false;
if ( wxTheApp && wxTheApp->HasPendingEvents() )

View File

@ -151,24 +151,33 @@ void HOTKEY_LIST_CTRL::OnChar( wxKeyEvent& aEvent )
DeselectRow( m_curEditingRow );
m_curEditingRow = -1;
break;
default:
if( key >= 'a' && key <= 'z' ) // convert to uppercase
key = key + ('A' - 'a');
// Remap Ctrl A (=1+GR_KB_CTRL) to Ctrl Z(=26+GR_KB_CTRL)
// to GR_KB_CTRL+'A' .. GR_KB_CTRL+'Z'
if( aEvent.ControlDown() && key >= WXK_CONTROL_A && key <= WXK_CONTROL_Z )
key += 'A' - 1;
/* Disallow shift for keys that have two keycodes on them (e.g. number and
* punctuation keys) leaving only the "letter keys" of A-Z.
* Then, you can have, e.g. Ctrl-5 and Ctrl-% (GB layout)
* and Ctrl-( and Ctrl-5 (FR layout).
* Otherwise, you'd have to have to say Ctrl-Shift-5 on a FR layout
*/
bool keyIsLetter = key >= 'A' && key <= 'Z';
if( aEvent.ShiftDown() && ( keyIsLetter || key > 256 ) )
key |= GR_KB_SHIFT;
if( aEvent.ControlDown() )
key |= GR_KB_CTRL;
if( aEvent.AltDown() )
key |= GR_KB_ALT;
if( aEvent.ShiftDown() && (key > 256) )
key |= GR_KB_SHIFT;
// Remap Ctrl A (=1+GR_KB_CTRL) to Ctrl Z(=26+GR_KB_CTRL)
// to GR_KB_CTRL+'A' .. GR_KB_CTRL+'Z'
if( (key > GR_KB_CTRL) && (key <= GR_KB_CTRL+26) )
key += ('A' - 1);
if( key >= 'a' && key <= 'z' ) // convert to uppercase
key = key + ('A' - 'a');
// See if this key code is handled in hotkeys names list
bool exists;
KeyNameFromKeyCode( key, &exists );

View File

@ -41,7 +41,7 @@ DIALOG_IMAGE_EDITOR::DIALOG_IMAGE_EDITOR( wxWindow* aParent, BITMAP_BASE* aItem
m_buttonUndoLast->Enable( false );
wxString msg;
msg.Printf( wxT("%f"), m_workingImage->m_Scale );
m_textCtrlScale->SetValue( msg );;
m_textCtrlScale->SetValue( msg );
GetSizer()->SetSizeHints( this );
Layout();

View File

@ -1,5 +1,5 @@
///////////////////////////////////////////////////////////////////////////
// C++ code generated with wxFormBuilder (version Nov 5 2013)
// C++ code generated with wxFormBuilder (version Jun 5 2014)
// http://www.wxformbuilder.org/
//
// PLEASE DO "NOT" EDIT THIS FILE!
@ -11,7 +11,7 @@
EDA_LIST_DIALOG_BASE::EDA_LIST_DIALOG_BASE( wxWindow* parent, wxWindowID id, const wxString& title, const wxPoint& pos, const wxSize& size, long style ) : DIALOG_SHIM( parent, id, title, pos, size, style )
{
this->SetSizeHints( wxDefaultSize, wxDefaultSize );
this->SetSizeHints( wxSize( 400,400 ), wxDefaultSize );
wxBoxSizer* bSizerMain;
bSizerMain = new wxBoxSizer( wxVERTICAL );
@ -55,7 +55,6 @@ EDA_LIST_DIALOG_BASE::EDA_LIST_DIALOG_BASE( wxWindow* parent, wxWindowID id, con
this->SetSizer( bSizerMain );
this->Layout();
bSizerMain->Fit( this );
this->Centre( wxBOTH );

View File

@ -1,6 +1,6 @@
<?xml version="1.0" encoding="UTF-8" standalone="yes" ?>
<wxFormBuilder_Project>
<FileVersion major="1" minor="11" />
<FileVersion major="1" minor="13" />
<object class="Project" expanded="1">
<property name="class_decoration"></property>
<property name="code_generation">C++</property>
@ -41,10 +41,10 @@
<property name="hidden">0</property>
<property name="id">wxID_ANY</property>
<property name="maximum_size"></property>
<property name="minimum_size"></property>
<property name="minimum_size">400,400</property>
<property name="name">EDA_LIST_DIALOG_BASE</property>
<property name="pos"></property>
<property name="size">-1,-1</property>
<property name="size">400,400</property>
<property name="style">wxDEFAULT_DIALOG_STYLE|wxRESIZE_BORDER</property>
<property name="subclass">DIALOG_SHIM; dialog_shim.h</property>
<property name="title"></property>

View File

@ -1,5 +1,5 @@
///////////////////////////////////////////////////////////////////////////
// C++ code generated with wxFormBuilder (version Nov 5 2013)
// C++ code generated with wxFormBuilder (version Jun 5 2014)
// http://www.wxformbuilder.org/
//
// PLEASE DO "NOT" EDIT THIS FILE!
@ -58,7 +58,7 @@ class EDA_LIST_DIALOG_BASE : public DIALOG_SHIM
public:
EDA_LIST_DIALOG_BASE( wxWindow* parent, wxWindowID id = wxID_ANY, const wxString& title = wxEmptyString, const wxPoint& pos = wxDefaultPosition, const wxSize& size = wxSize( -1,-1 ), long style = wxDEFAULT_DIALOG_STYLE|wxRESIZE_BORDER );
EDA_LIST_DIALOG_BASE( wxWindow* parent, wxWindowID id = wxID_ANY, const wxString& title = wxEmptyString, const wxPoint& pos = wxDefaultPosition, const wxSize& size = wxSize( 400,400 ), long style = wxDEFAULT_DIALOG_STYLE|wxRESIZE_BORDER );
~EDA_LIST_DIALOG_BASE();
};

View File

@ -85,16 +85,18 @@ void EDA_DRAW_FRAME::Process_PageSettings( wxCommandEvent& event )
}
DIALOG_PAGES_SETTINGS::DIALOG_PAGES_SETTINGS( EDA_DRAW_FRAME* parent ) :
DIALOG_PAGES_SETTINGS::DIALOG_PAGES_SETTINGS( EDA_DRAW_FRAME* parent ) :
DIALOG_PAGES_SETTINGS_BASE( parent ),
m_initialized( false )
{
m_parent = parent;
m_screen = m_parent->GetScreen();
m_projectPath = Prj().GetProjectPath();
m_page_bitmap = NULL;
m_tb = m_parent->GetTitleBlock();
m_customFmt = false;
m_localPrjConfigChanged = false;
m_pagelayout = NULL;
initDialog();
@ -105,8 +107,8 @@ DIALOG_PAGES_SETTINGS::DIALOG_PAGES_SETTINGS( EDA_DRAW_FRAME* parent ) :
DIALOG_PAGES_SETTINGS::~DIALOG_PAGES_SETTINGS()
{
if( m_page_bitmap )
delete m_page_bitmap;
delete m_page_bitmap;
delete m_pagelayout;
}
@ -225,7 +227,7 @@ void DIALOG_PAGES_SETTINGS::OnOkClick( wxCommandEvent& event )
m_screen->SetModify();
m_parent->GetCanvas()->Refresh();
if( m_localPrjConfigChanged )
if( LocalPrjConfigChanged() )
m_parent->SaveProjectSettings( true );
EndModal( true );
@ -409,9 +411,12 @@ bool DIALOG_PAGES_SETTINGS::SavePageSettings()
if( fileName != BASE_SCREEN::m_PageLayoutDescrFileName )
{
if( !fileName.IsEmpty() )
wxString fullFileName =
WORKSHEET_LAYOUT::MakeFullFileName( fileName, m_projectPath );
if( !fullFileName.IsEmpty() )
{
wxString fullFileName = WORKSHEET_LAYOUT::MakeFullFileName( fileName );
if( !wxFileExists( fullFileName ) )
{
wxString msg;
@ -424,7 +429,7 @@ bool DIALOG_PAGES_SETTINGS::SavePageSettings()
BASE_SCREEN::m_PageLayoutDescrFileName = fileName;
WORKSHEET_LAYOUT& pglayout = WORKSHEET_LAYOUT::GetTheInstance();
pglayout.SetPageLayout( fileName );
pglayout.SetPageLayout( fullFileName );
m_localPrjConfigChanged = true;
}
@ -663,6 +668,7 @@ void DIALOG_PAGES_SETTINGS::UpdatePageLayoutExample()
wxString emptyString;
GRResetPenAndBrush( &memDC );
WORKSHEET_LAYOUT::SetAltInstance( m_pagelayout );
DrawPageLayout( &memDC, NULL, pageDUMMY,
emptyString, emptyString,
m_tb, m_screen->m_NumberOfScreens,
@ -670,6 +676,7 @@ void DIALOG_PAGES_SETTINGS::UpdatePageLayoutExample()
memDC.SelectObject( wxNullBitmap );
m_PageLayoutExampleBitmap->SetBitmap( *m_page_bitmap );
WORKSHEET_LAYOUT::SetAltInstance( NULL );
// Refresh the dialog.
Layout();
@ -782,11 +789,9 @@ void DIALOG_PAGES_SETTINGS::GetCustomSizeMilsFromDialog()
// Called on .kicad_wks file description selection change
void DIALOG_PAGES_SETTINGS::OnWksFileSelection( wxCommandEvent& event )
{
wxString pro_dir = wxPathOnly( Prj().GetProjectFullName() );
// Display a file picker dialog
wxFileDialog fileDialog( this, _( "Select Page Layout Descr File" ),
pro_dir, GetWksFileName(),
m_projectPath, GetWksFileName(),
PageLayoutDescrFileWildcard,
wxFD_DEFAULT_STYLE | wxFD_FILE_MUST_EXIST );
@ -796,24 +801,30 @@ void DIALOG_PAGES_SETTINGS::OnWksFileSelection( wxCommandEvent& event )
wxString fileName = fileDialog.GetPath();
// Try to remove the path, if the path is the current working dir,
// or the dir of kicad.pro (template)
wxString shortFileName = WORKSHEET_LAYOUT::MakeShortFileName( fileName );
wxFileName fn = shortFileName;
// or the dir of kicad.pro (template), and use a relative path
wxString shortFileName = WORKSHEET_LAYOUT::MakeShortFileName( fileName, m_projectPath );
// For Win/Linux/macOS compatibility, a relative path is a good idea
if( fn.IsAbsolute() && fileName != GetWksFileName() )
if( shortFileName != GetWksFileName() && shortFileName != fileName )
{
fn.MakeRelativeTo( pro_dir );
wxString msg = wxString::Format( _(
"The page layout descr filename has changed.\n"
"Do you want to use the relative path:\n"
"'%s'" ),
GetChars( fn.GetFullPath() )
);
if( IsOK( this, msg ) )
shortFileName = fn.GetFullPath();
"'%s'\n"
"instead of\n"
"'%s'" ), GetChars( shortFileName ), GetChars( fileName ) );
if( !IsOK( this, msg ) )
shortFileName = fileName;
}
SetWksFileName( shortFileName );
if( m_pagelayout == NULL )
m_pagelayout = new WORKSHEET_LAYOUT;
m_pagelayout->SetPageLayout( fileName );
GetPageLayoutInfoFromDialog();
UpdatePageLayoutExample();
}

View File

@ -37,6 +37,7 @@ class DIALOG_PAGES_SETTINGS: public DIALOG_PAGES_SETTINGS_BASE
private:
EDA_DRAW_FRAME* m_parent;
BASE_SCREEN* m_screen;
wxString m_projectPath; // the curr project path
wxArrayString m_pageFmt; /// list of page sizes (not translated)
bool m_initialized;
bool m_localPrjConfigChanged; /// the page layuout filename was changed
@ -45,6 +46,8 @@ private:
PAGE_INFO m_pageInfo; /// Temporary page info.
bool m_customFmt; /// true if the page selection is custom
TITLE_BLOCK m_tb; /// Temporary title block (basic inscriptions).
WORKSHEET_LAYOUT *m_pagelayout; // the alternate and temporary page layout shown by the dialog
// when the initial one is replaced by a new one
public:
DIALOG_PAGES_SETTINGS( EDA_DRAW_FRAME* parent );

View File

@ -47,6 +47,27 @@ EDA_LIST_DIALOG::EDA_LIST_DIALOG( EDA_DRAW_FRAME* aParent, const wxString& aTitl
m_cb_data = aCallBackFunctionData;
m_itemsListCp = &aItemList;
initDialog( aItemHeaders, aSelection );
// DIALOG_SHIM needs a unique hash_key because classname is not sufficient
// because so many dialogs share this same class, with different numbers of
// columns, different column names, and column widths.
m_hash_key = TO_UTF8( aTitle );
m_filterBox->SetFocus();
// this line fixes an issue on Linux Ubuntu using Unity (dialog not shown),
// and works fine on all systems
GetSizer()->Fit( this );
Centre();
}
void EDA_LIST_DIALOG::initDialog( const wxArrayString& aItemHeaders,
const wxString& aSelection)
{
for( unsigned i = 0; i < aItemHeaders.Count(); i++ )
{
wxListItem column;
@ -57,7 +78,7 @@ EDA_LIST_DIALOG::EDA_LIST_DIALOG( EDA_DRAW_FRAME* aParent, const wxString& aTitl
m_listBox->InsertColumn( i, column );
}
InsertItems( aItemList, 0 );
InsertItems( *m_itemsListCp, 0 );
if( m_cb_func == NULL )
{
@ -112,14 +133,11 @@ EDA_LIST_DIALOG::EDA_LIST_DIALOG( EDA_DRAW_FRAME* aParent, const wxString& aTitl
}
#endif
Fit();
Centre();
if( !!aSelection )
{
for( unsigned row = 0; row < aItemList.size(); ++row )
for( unsigned row = 0; row < m_itemsListCp->size(); ++row )
{
if( aItemList[row][0] == aSelection )
if( (*m_itemsListCp)[row][0] == aSelection )
{
m_listBox->SetItemState( row, wxLIST_STATE_SELECTED, wxLIST_STATE_SELECTED );
m_listBox->EnsureVisible( row );
@ -127,13 +145,6 @@ EDA_LIST_DIALOG::EDA_LIST_DIALOG( EDA_DRAW_FRAME* aParent, const wxString& aTitl
}
}
}
// DIALOG_SHIM needs a unique hash_key because classname is not sufficient
// because so many dialogs share this same class, with different numbers of
// columns, different column names, and column widths.
m_hash_key = TO_UTF8( aTitle );
m_filterBox->SetFocus();
}

View File

@ -128,6 +128,7 @@ EDA_DRAW_FRAME::EDA_DRAW_FRAME( KIWAY* aKiway, wxWindow* aParent,
m_snapToGrid = true;
m_MsgFrameHeight = EDA_MSG_PANEL::GetRequiredHeight();
m_movingCursorWithKeyboard = false;
m_zoomLevelCoeff = 1.0;
m_auimgr.SetFlags(wxAUI_MGR_DEFAULT|wxAUI_MGR_LIVE_RESIZE);
@ -613,16 +614,7 @@ bool EDA_DRAW_FRAME::HandleBlockEnd( wxDC* DC )
void EDA_DRAW_FRAME::UpdateStatusBar()
{
wxString Line;
BASE_SCREEN* screen = GetScreen();
if( !screen )
return;
// Display Zoom level: zoom = zoom_coeff/ZoomScalar
Line.Printf( wxT( "Z %g" ), screen->GetZoom() );
SetStatusText( Line, 1 );
SetStatusText( GetZoomLevelIndicator(), 1 );
// Absolute and relative cursor positions are handled by overloading this function and
// handling the internal to user units conversion at the appropriate level.
@ -631,6 +623,22 @@ void EDA_DRAW_FRAME::UpdateStatusBar()
DisplayUnitsMsg();
}
const wxString EDA_DRAW_FRAME::GetZoomLevelIndicator() const
{
BASE_SCREEN* screen = GetScreen();
wxString Line;
if( screen )
{
// returns a human readable value which can be displayed as zoom
// level indicator in dialogs.
double level = m_zoomLevelCoeff / (double)screen->GetZoom();
Line.Printf( wxT( "Z %.2f" ), level );
}
return Line;
}
void EDA_DRAW_FRAME::LoadSettings( wxConfigBase* aCfg )
{

View File

@ -172,6 +172,12 @@ EDA_DRAW_FRAME* EDA_DRAW_PANEL::GetParent() const
}
void* EDA_DRAW_PANEL::GetDisplayOptions()
{
return GetParent()->GetDisplayOptions();
}
BASE_SCREEN* EDA_DRAW_PANEL::GetScreen()
{
EDA_DRAW_FRAME* parentFrame = GetParent();
@ -1366,20 +1372,31 @@ void EDA_DRAW_PANEL::OnKeyEvent( wxKeyEvent& event )
break;
}
if( event.ControlDown() )
localkey |= GR_KB_CTRL;
if( event.AltDown() )
localkey |= GR_KB_ALT;
if( event.ShiftDown() && (event.GetKeyCode() > 256) )
localkey |= GR_KB_SHIFT;
/* Normalize keys code to easily handle keys from Ctrl+A to Ctrl+Z
* They have an ascii code from 1 to 27 remapped
* to GR_KB_CTRL + 'A' to GR_KB_CTRL + 'Z'
*/
if( (localkey > GR_KB_CTRL) && (localkey <= GR_KB_CTRL+26) )
if( event.ControlDown() && localkey >= WXK_CONTROL_A && localkey <= WXK_CONTROL_Z )
localkey += 'A' - 1;
/* Disallow shift for keys that have two keycodes on them (e.g. number and
* punctuation keys) leaving only the "letter keys" of A-Z.
* Then, you can have, e.g. Ctrl-5 and Ctrl-% (GB layout)
* and Ctrl-( and Ctrl-5 (FR layout).
* Otherwise, you'd have to have to say Ctrl-Shift-5 on a FR layout
*/
bool keyIsLetter = ( localkey >= 'A' && localkey <= 'Z' ) ||
( localkey >= 'a' && localkey <= 'z' );
if( event.ShiftDown() && ( keyIsLetter || localkey > 256 ) )
localkey |= GR_KB_SHIFT;
if( event.ControlDown() )
localkey |= GR_KB_CTRL;
if( event.AltDown() )
localkey |= GR_KB_ALT;
INSTALL_UNBUFFERED_DC( DC, this );
// Some key commands use the current mouse position: refresh it.

View File

@ -636,6 +636,7 @@ void PLOTTER::Text( const wxPoint& aPos,
{
// EDA_TEXT needs for calculations of the position of every
// line according to orientation and justifications
wxArrayString strings;
EDA_TEXT* multilineText = new EDA_TEXT( aText );
multilineText->SetSize( aSize );
multilineText->SetTextPosition( aPos );
@ -646,15 +647,15 @@ void PLOTTER::Text( const wxPoint& aPos,
multilineText->SetMultilineAllowed( aMultilineAllowed );
std::vector<wxPoint> positions;
wxArrayString* list = wxStringSplit( aText, '\n' );
positions.reserve( list->Count() );
wxStringSplit( aText, strings, '\n' );
positions.reserve( strings.Count() );
multilineText->GetPositionsOfLinesOfMultilineText(
positions, list->Count() );
positions, strings.Count() );
for( unsigned ii = 0; ii < list->Count(); ii++ )
for( unsigned ii = 0; ii < strings.Count(); ii++ )
{
wxString& txt = list->Item( ii );
wxString& txt = strings.Item( ii );
DrawGraphicText( NULL, NULL, positions[ii], aColor, txt,
aOrient, aSize,
aH_justify, aV_justify,
@ -663,8 +664,8 @@ void PLOTTER::Text( const wxPoint& aPos,
NULL,
this );
}
delete multilineText;
delete list;
}
else
{

View File

@ -148,6 +148,30 @@ void DSNLEXER::SetSpecctraMode( bool aMode )
}
}
bool DSNLEXER::SyncLineReaderWith( DSNLEXER& aLexer )
{
// Synchronize the pointers handling the data read by the LINE_READER
// only if aLexer shares the same LINE_READER, because only in this case
// the char buffer is be common
if( reader != aLexer.reader )
return false;
// We can synchronize the pointers which handle the data currently read
start = aLexer.start;
next = aLexer.next;
limit = aLexer.limit;
// Sync these parameters is not mandatory, but could help
// for instance in debug
curText = aLexer.curText;
curOffset = aLexer.curOffset;
return true;
}
void DSNLEXER::PushReader( LINE_READER* aLineReader )
{
readerStack.push_back( aLineReader );

View File

@ -120,23 +120,23 @@ EDA_RECT EDA_TEXT::GetTextBox( int aLine, int aThickness, bool aInvertY ) const
{
EDA_RECT rect;
wxPoint pos;
wxArrayString* list = NULL;
wxArrayString strings;
wxString text = GetShownText();
int thickness = ( aThickness < 0 ) ? m_Thickness : aThickness;
int linecount = 1;
if( m_MultilineAllowed )
{
list = wxStringSplit( text, '\n' );
wxStringSplit( text, strings, '\n' );
if ( list->GetCount() ) // GetCount() == 0 for void strings
if ( strings.GetCount() ) // GetCount() == 0 for void strings
{
if( aLine >= 0 && (aLine < (int)list->GetCount()) )
text = list->Item( aLine );
if( aLine >= 0 && (aLine < (int)strings.GetCount()) )
text = strings.Item( aLine );
else
text = list->Item( 0 );
text = strings.Item( 0 );
linecount = list->GetCount();
linecount = strings.GetCount();
}
}
@ -157,19 +157,17 @@ EDA_RECT EDA_TEXT::GetTextBox( int aLine, int aThickness, bool aInvertY ) const
rect.Move( wxPoint( 0, -extra_dy / 2 ) ); // move origin by the half extra interval
// for multiline texts and aLine < 0, merge all rectangles
if( m_MultilineAllowed && list && aLine < 0 )
if( m_MultilineAllowed && aLine < 0 )
{
for( unsigned ii = 1; ii < list->GetCount(); ii++ )
for( unsigned ii = 1; ii < strings.GetCount(); ii++ )
{
text = list->Item( ii );
text = strings.Item( ii );
dx = LenSize( text );
textsize.x = std::max( textsize.x, dx );
textsize.y += dy;
}
}
delete list;
rect.SetSize( textsize );
/* Now, calculate the rect origin, according to text justification
@ -272,19 +270,18 @@ void EDA_TEXT::Draw( EDA_RECT* aClipBox, wxDC* aDC, const wxPoint& aOffset,
if( m_MultilineAllowed )
{
std::vector<wxPoint> positions;
wxArrayString* list = wxStringSplit( GetShownText(), '\n' );
positions.reserve( list->Count() );
wxArrayString strings;
wxStringSplit( GetShownText(), strings, '\n' );
positions.reserve( strings.Count() );
GetPositionsOfLinesOfMultilineText(positions, list->Count() );
GetPositionsOfLinesOfMultilineText(positions, strings.Count() );
for( unsigned ii = 0; ii < list->Count(); ii++ )
for( unsigned ii = 0; ii < strings.Count(); ii++ )
{
wxString& txt = list->Item( ii );
wxString& txt = strings.Item( ii );
drawOneLineOfText( aClipBox, aDC, aOffset, aColor,
aDrawMode, aFillMode, txt, positions[ii] );
}
delete (list);
}
else
drawOneLineOfText( aClipBox, aDC, aOffset, aColor,
@ -489,22 +486,21 @@ void EDA_TEXT::TransformTextShapeToSegmentList( std::vector<wxPoint>& aCornerBuf
if( IsMultilineAllowed() )
{
wxArrayString* list = wxStringSplit( GetShownText(), '\n' );
wxArrayString strings_list;
wxStringSplit( GetShownText(), strings_list, wxChar('\n') );
std::vector<wxPoint> positions;
positions.reserve( list->Count() );
GetPositionsOfLinesOfMultilineText( positions, list->Count() );
positions.reserve( strings_list.Count() );
GetPositionsOfLinesOfMultilineText( positions,strings_list.Count() );
for( unsigned ii = 0; ii < list->Count(); ii++ )
for( unsigned ii = 0; ii < strings_list.Count(); ii++ )
{
wxString txt = list->Item( ii );
wxString txt = strings_list.Item( ii );
DrawGraphicText( NULL, NULL, positions[ii], color,
txt, GetOrientation(), size,
GetHorizJustify(), GetVertJustify(),
GetThickness(), IsItalic(),
true, addTextSegmToBuffer );
}
delete list;
}
else
{

View File

@ -101,7 +101,7 @@ void FOOTPRINT_INFO::load()
std::auto_ptr<MODULE> m( fptable->FootprintLoad( m_nickname, m_fpname ) );
m_pad_count = m->GetPadCount( MODULE::DO_NOT_INCLUDE_NPTH );
m_pad_count = m->GetPadCount( DO_NOT_INCLUDE_NPTH );
m_keywords = m->GetKeywords();
m_doc = m->GetDescription();
@ -275,6 +275,9 @@ bool FOOTPRINT_LIST::ReadFootprintFiles( FP_LIB_TABLE* aTable, const wxString* a
FOOTPRINT_INFO* FOOTPRINT_LIST::GetModuleInfo( const wxString& aFootprintName )
{
if( aFootprintName.IsEmpty() )
return NULL;
BOOST_FOREACH( FOOTPRINT_INFO& fp, m_list )
{
FPID fpid;

View File

@ -639,6 +639,9 @@ const FP_LIB_TABLE::ROW* FP_LIB_TABLE::FindRow( const wxString& aNickname )
const wxString FP_LIB_TABLE::ExpandSubstitutions( const wxString& aString )
{
// Duplicate code: the same is now in common.cpp, due to the fact it is used
// in many other places than FP_LIB_TABLE
#if 0
static MUTEX getenv_mutex;
MUTLOCK lock( getenv_mutex );
@ -646,6 +649,9 @@ const wxString FP_LIB_TABLE::ExpandSubstitutions( const wxString& aString )
// We reserve the right to do this another way, by providing our own member
// function.
return wxExpandEnvVars( aString );
#else
return ExpandEnvVarSubstitutions( aString );
#endif
}

View File

@ -171,7 +171,7 @@ static inline bool Collide( const SHAPE_CIRCLE& aA, const SHAPE_LINE_CHAIN& aB,
static inline bool Collide( const SHAPE_CIRCLE& aA, const SHAPE_SEGMENT& aSeg, int aClearance,
bool aNeedMTV, VECTOR2I& aMTV )
{
bool col = aA.Collide( aSeg.GetSeg(), aClearance + aSeg.GetWidth() / 2);
bool col = aA.Collide( aSeg.GetSeg(), aClearance + aSeg.GetWidth() / 2);
if( col && aNeedMTV )
{
@ -210,134 +210,134 @@ static inline bool Collide( const SHAPE_RECT& aA, const SHAPE_LINE_CHAIN& aB, in
static inline bool Collide( const SHAPE_RECT& aA, const SHAPE_SEGMENT& aSeg, int aClearance,
bool aNeedMTV, VECTOR2I& aMTV )
{
return aA.Collide( aSeg.GetSeg(), aClearance + aSeg.GetWidth() / 2 );
return aA.Collide( aSeg.GetSeg(), aClearance + aSeg.GetWidth() / 2 );
}
static inline bool Collide( const SHAPE_SEGMENT& aA, const SHAPE_SEGMENT& aB, int aClearance,
bool aNeedMTV, VECTOR2I& aMTV )
{
return aA.Collide( aB.GetSeg(), aClearance + aB.GetWidth() / 2 );
return aA.Collide( aB.GetSeg(), aClearance + aB.GetWidth() / 2 );
}
static inline bool Collide( const SHAPE_LINE_CHAIN& aA, const SHAPE_SEGMENT& aB, int aClearance,
bool aNeedMTV, VECTOR2I& aMTV )
{
if( aA.Collide( aB.GetSeg(), aClearance + aB.GetWidth() / 2 ) )
return true;
if( aA.Collide( aB.GetSeg(), aClearance + aB.GetWidth() / 2 ) )
return true;
return false;
return false;
}
template<class ShapeAType, class ShapeBType>
template<class ShapeAType, class ShapeBType>
inline bool CollCase( const SHAPE* aA, const SHAPE* aB, int aClearance, bool aNeedMTV, VECTOR2I& aMTV )
{
return Collide (*static_cast<const ShapeAType*>( aA ),
*static_cast<const ShapeBType*>( aB ),
aClearance, aNeedMTV, aMTV);
return Collide (*static_cast<const ShapeAType*>( aA ),
*static_cast<const ShapeBType*>( aB ),
aClearance, aNeedMTV, aMTV);
}
template<class ShapeAType, class ShapeBType>
template<class ShapeAType, class ShapeBType>
inline bool CollCaseReversed ( const SHAPE* aA, const SHAPE* aB, int aClearance, bool aNeedMTV, VECTOR2I& aMTV )
{
bool rv = Collide (*static_cast<const ShapeBType*>( aB ),
*static_cast<const ShapeAType*>( aA ),
aClearance, aNeedMTV, aMTV);
if(rv && aNeedMTV)
if(rv && aNeedMTV)
aMTV = -aMTV;
return rv;
}
bool CollideShapes( const SHAPE* aA, const SHAPE* aB, int aClearance, bool aNeedMTV, VECTOR2I& aMTV )
{
switch( aA->Type() )
{
case SH_RECT:
switch( aB->Type() )
{
case SH_CIRCLE:
return CollCase<SHAPE_RECT, SHAPE_CIRCLE>( aA, aB, aClearance, aNeedMTV, aMTV );
{
switch( aA->Type() )
{
case SH_RECT:
switch( aB->Type() )
{
case SH_CIRCLE:
return CollCase<SHAPE_RECT, SHAPE_CIRCLE>( aA, aB, aClearance, aNeedMTV, aMTV );
case SH_LINE_CHAIN:
return CollCase<SHAPE_RECT, SHAPE_LINE_CHAIN>( aA, aB, aClearance, aNeedMTV, aMTV );
case SH_LINE_CHAIN:
return CollCase<SHAPE_RECT, SHAPE_LINE_CHAIN>( aA, aB, aClearance, aNeedMTV, aMTV );
case SH_SEGMENT:
return CollCase<SHAPE_RECT, SHAPE_SEGMENT>( aA, aB, aClearance, aNeedMTV, aMTV );
case SH_SEGMENT:
return CollCase<SHAPE_RECT, SHAPE_SEGMENT>( aA, aB, aClearance, aNeedMTV, aMTV );
default:
break;
}
case SH_CIRCLE:
switch( aB->Type() )
{
case SH_RECT:
return CollCaseReversed<SHAPE_CIRCLE, SHAPE_RECT>( aA, aB, aClearance, aNeedMTV, aMTV );
case SH_CIRCLE:
return CollCase<SHAPE_CIRCLE, SHAPE_CIRCLE>( aA, aB, aClearance, aNeedMTV, aMTV );
case SH_LINE_CHAIN:
return CollCase<SHAPE_CIRCLE, SHAPE_LINE_CHAIN>( aA, aB, aClearance, aNeedMTV, aMTV );
case SH_SEGMENT:
return CollCase<SHAPE_CIRCLE, SHAPE_SEGMENT>( aA, aB, aClearance, aNeedMTV, aMTV );
default:
break;
}
break;
}
case SH_LINE_CHAIN:
switch( aB->Type() )
{
case SH_RECT:
return CollCase<SHAPE_RECT, SHAPE_LINE_CHAIN>( aB, aA, aClearance, aNeedMTV, aMTV );
case SH_CIRCLE:
switch( aB->Type() )
{
case SH_RECT:
return CollCaseReversed<SHAPE_CIRCLE, SHAPE_RECT>( aA, aB, aClearance, aNeedMTV, aMTV );
case SH_CIRCLE:
return CollCase<SHAPE_CIRCLE, SHAPE_LINE_CHAIN>( aB, aA, aClearance, aNeedMTV, aMTV );
case SH_CIRCLE:
return CollCase<SHAPE_CIRCLE, SHAPE_CIRCLE>( aA, aB, aClearance, aNeedMTV, aMTV );
case SH_LINE_CHAIN:
return CollCase<SHAPE_LINE_CHAIN, SHAPE_LINE_CHAIN>( aA, aB, aClearance, aNeedMTV, aMTV );
case SH_LINE_CHAIN:
return CollCase<SHAPE_CIRCLE, SHAPE_LINE_CHAIN>( aA, aB, aClearance, aNeedMTV, aMTV );
case SH_SEGMENT:
return CollCase<SHAPE_LINE_CHAIN, SHAPE_SEGMENT>( aA, aB, aClearance, aNeedMTV, aMTV );
case SH_SEGMENT:
return CollCase<SHAPE_CIRCLE, SHAPE_SEGMENT>( aA, aB, aClearance, aNeedMTV, aMTV );
default:
break;
}
default:
break;
}
case SH_SEGMENT:
switch( aB->Type() )
{
case SH_RECT:
return CollCase<SHAPE_RECT, SHAPE_SEGMENT>( aB, aA, aClearance, aNeedMTV, aMTV );
case SH_LINE_CHAIN:
switch( aB->Type() )
{
case SH_RECT:
return CollCase<SHAPE_RECT, SHAPE_LINE_CHAIN>( aB, aA, aClearance, aNeedMTV, aMTV );
case SH_CIRCLE:
case SH_CIRCLE:
return CollCase<SHAPE_CIRCLE, SHAPE_LINE_CHAIN>( aB, aA, aClearance, aNeedMTV, aMTV );
case SH_LINE_CHAIN:
return CollCase<SHAPE_LINE_CHAIN, SHAPE_LINE_CHAIN>( aA, aB, aClearance, aNeedMTV, aMTV );
case SH_SEGMENT:
return CollCase<SHAPE_LINE_CHAIN, SHAPE_SEGMENT>( aA, aB, aClearance, aNeedMTV, aMTV );
default:
break;
}
case SH_SEGMENT:
switch( aB->Type() )
{
case SH_RECT:
return CollCase<SHAPE_RECT, SHAPE_SEGMENT>( aB, aA, aClearance, aNeedMTV, aMTV );
case SH_CIRCLE:
return CollCaseReversed<SHAPE_SEGMENT, SHAPE_CIRCLE>( aA, aB, aClearance, aNeedMTV, aMTV );
case SH_LINE_CHAIN:
return CollCase<SHAPE_LINE_CHAIN, SHAPE_SEGMENT>( aB, aA, aClearance, aNeedMTV, aMTV );
case SH_LINE_CHAIN:
return CollCase<SHAPE_LINE_CHAIN, SHAPE_SEGMENT>( aB, aA, aClearance, aNeedMTV, aMTV );
case SH_SEGMENT:
return CollCase<SHAPE_SEGMENT, SHAPE_SEGMENT>( aA, aB, aClearance, aNeedMTV, aMTV );
case SH_SEGMENT:
return CollCase<SHAPE_SEGMENT, SHAPE_SEGMENT>( aA, aB, aClearance, aNeedMTV, aMTV );
default:
break;
}
default:
break;
}
default:
break;
}
default:
break;
}
bool unsupported_collision = true;
bool unsupported_collision = true;
(void) unsupported_collision; // make gcc quiet
assert( unsupported_collision == false );
assert( unsupported_collision == false );
return false;
return false;
}

View File

@ -548,6 +548,9 @@ int EDA_BASE_FRAME::ReadHotkeyConfigFile( const wxString& aFilename,
{
wxFile cfgfile( aFilename );
if( !cfgfile.IsOpened() ) // There is a problem to open file
return 0;
// get length
cfgfile.SeekEnd();
wxFileOffset size = cfgfile.Tell();

View File

@ -51,23 +51,20 @@ void HTML_MESSAGE_BOX::ListClear()
void HTML_MESSAGE_BOX::ListSet( const wxString& aList )
{
// wxArrayString* wxStringSplit( wxString txt, wxChar splitter );
wxArrayString* strings_list = wxStringSplit( aList, wxChar( '\n' ) );
wxArrayString strings_list;
wxStringSplit( aList, strings_list, wxChar( '\n' ) );
wxString msg = wxT( "<ul>" );
for ( unsigned ii = 0; ii < strings_list->GetCount(); ii++ )
for ( unsigned ii = 0; ii < strings_list.GetCount(); ii++ )
{
msg += wxT( "<li>" );
msg += strings_list->Item( ii ) + wxT( "</li>" );
msg += strings_list.Item( ii ) + wxT( "</li>" );
}
msg += wxT( "</ul>" );
m_htmlWindow->AppendToPage( msg );
delete strings_list;
}

View File

@ -96,7 +96,10 @@ bool KIWAY_PLAYER::ShowModal( wxString* aResult, wxWindow* aResultantFocusWindow
m_modal_resultant_parent = aResultantFocusWindow;
Raise(); // Needed on Ubuntu-14/Unity to display the frame
Show( true );
SetFocus();
{

View File

@ -1,8 +1,8 @@
/*
* This program source code file is part of KiCad, a free EDA CAD application.
*
* Copyright (C) 2014 SoftPLC Corporation, Dick Hollenbeck <dick@softplc.com>
* Copyright (C) 2014 KiCad Developers, see CHANGELOG.TXT for contributors.
* Copyright (C) 2014-2015 SoftPLC Corporation, Dick Hollenbeck <dick@softplc.com>
* Copyright (C) 2014-2015 KiCad Developers, see CHANGELOG.TXT for contributors.
*
* This program is free software; you can redistribute it and/or
* modify it under the terms of the GNU General Public License
@ -24,6 +24,7 @@
#include <wx/filename.h>
#include <wx/snglinst.h>
#include <common.h>
wxSingleInstanceChecker* LockFile( const wxString& aFileName )
@ -41,7 +42,8 @@ wxSingleInstanceChecker* LockFile( const wxString& aFileName )
// We can have filenames coming from Windows, so also convert Windows separator
lockFileName.Replace( wxT( "\\" ), wxT( "_" ) );
wxSingleInstanceChecker* p = new wxSingleInstanceChecker( lockFileName );
wxSingleInstanceChecker* p = new wxSingleInstanceChecker( lockFileName,
GetKicadLockFilePath() );
if( p->IsAnotherRunning() )
{

View File

@ -36,3 +36,5 @@ tstamps
uri
value
version
aliases
alias

View File

@ -60,7 +60,8 @@
// The layout shape used in the application
// It is accessible by WORKSHEET_LAYOUT::GetTheInstance()
WORKSHEET_LAYOUT wksTheInstance;
static WORKSHEET_LAYOUT wksTheInstance;
static WORKSHEET_LAYOUT* wksAltInstance;
WORKSHEET_LAYOUT::WORKSHEET_LAYOUT()
{
@ -71,6 +72,28 @@ WORKSHEET_LAYOUT::WORKSHEET_LAYOUT()
m_bottomMargin = 10.0; // the bottom page margin in mm
}
/* static function: returns the instance of WORKSHEET_LAYOUT
* used in the application
*/
WORKSHEET_LAYOUT& WORKSHEET_LAYOUT::GetTheInstance()
{
if( wksAltInstance )
return *wksAltInstance;
else
return wksTheInstance;
}
/**
* static function: Set an alternate instance of WORKSHEET_LAYOUT
* mainly used in page setting dialog
* @param aLayout = the alternate page layout.
* if null, restore the basic page layout
*/
void WORKSHEET_LAYOUT::SetAltInstance( WORKSHEET_LAYOUT* aLayout )
{
wksAltInstance = aLayout;
}
void WORKSHEET_LAYOUT::SetLeftMargin( double aMargin )
{
@ -163,10 +186,22 @@ WORKSHEET_DATAITEM* WORKSHEET_LAYOUT::GetItem( unsigned aIdx ) const
}
const wxString WORKSHEET_LAYOUT::MakeShortFileName( const wxString& aFullFileName )
const wxString WORKSHEET_LAYOUT::MakeShortFileName( const wxString& aFullFileName,
const wxString& aProjectPath )
{
wxFileName fn = aFullFileName;
wxString shortFileName = aFullFileName;
wxFileName fn = aFullFileName;
if( fn.IsRelative() )
return shortFileName;
if( ! aProjectPath.IsEmpty() && aFullFileName.StartsWith( aProjectPath ) )
{
fn.MakeRelativeTo( aProjectPath );
shortFileName = fn.GetFullPath();
return shortFileName;
}
wxString fileName = Kiface().KifaceSearch().FindValidPath( fn.GetFullName() );
if( !fileName.IsEmpty() )
@ -180,17 +215,34 @@ const wxString WORKSHEET_LAYOUT::MakeShortFileName( const wxString& aFullFileNam
}
const wxString WORKSHEET_LAYOUT::MakeFullFileName( const wxString& aShortFileName )
const wxString WORKSHEET_LAYOUT::MakeFullFileName( const wxString& aShortFileName,
const wxString& aProjectPath )
{
wxFileName fn = aShortFileName;
wxString fullFileName = aShortFileName;
wxString fullFileName = ExpandEnvVarSubstitutions( aShortFileName );
if( fn.GetPath().IsEmpty() && !fn.GetFullName().IsEmpty() )
if( fullFileName.IsEmpty() )
return fullFileName;
wxFileName fn = fullFileName;
if( fn.IsAbsolute() )
return fullFileName;
// the path is not absolute: search it in project path, and then in
// kicad valid paths
if( !aProjectPath.IsEmpty() )
{
wxString name = Kiface().KifaceSearch().FindValidPath( fn.GetFullName() );
if( !name.IsEmpty() )
fullFileName = name;
fn.MakeAbsolute( aProjectPath );
if( wxFileExists( fn.GetFullPath() ) )
return fn.GetFullPath();
}
fn = fullFileName;
wxString name = Kiface().KifaceSearch().FindValidPath( fn.GetFullName() );
if( !name.IsEmpty() )
fullFileName = name;
return fullFileName;
}

View File

@ -773,9 +773,9 @@ void WORKSHEET_LAYOUT::SetPageLayout( const char* aPageLayout, bool Append )
#include <wx/file.h>
// SetLayout() try to load a custom layout file,
// currently defined by the environment variable KICAD_WKSFILE
// (a *.kicad_wks file).
// SetLayout() try to load the aFullFileName custom layout file,
// if aFullFileName is empty, try the filename defined by the
// environment variable KICAD_WKSFILE (a *.kicad_wks filename).
// if does not exists, loads the default page layout.
void WORKSHEET_LAYOUT::SetPageLayout( const wxString& aFullFileName, bool Append )
{
@ -783,8 +783,6 @@ void WORKSHEET_LAYOUT::SetPageLayout( const wxString& aFullFileName, bool Append
if( !Append )
{
fullFileName = MakeFullFileName( aFullFileName );
if( fullFileName.IsEmpty() )
wxGetEnv( wxT( "KICAD_WKSFILE" ), &fullFileName );
@ -816,17 +814,19 @@ void WORKSHEET_LAYOUT::SetPageLayout( const wxString& aFullFileName, bool Append
if( wksFile.Read( buffer, filelen ) != filelen )
wxLogMessage( _("The file <%s> was not fully read"),
fullFileName.GetData() );
fullFileName.GetData() );
else
{
buffer[filelen]=0;
if( ! Append )
ClearList();
PAGE_LAYOUT_READER_PARSER lp_parser( buffer, fullFileName );
PAGE_LAYOUT_READER_PARSER pl_parser( buffer, fullFileName );
try
{
lp_parser.Parse( this );
pl_parser.Parse( this );
}
catch( const IO_ERROR& ioe )
{

View File

@ -56,6 +56,7 @@
#include <fctsys.h>
#include <drawtxt.h>
#include <class_page_info.h>
#include <worksheet.h>
#include <class_title_block.h>
#include <worksheet_shape_builder.h>

View File

@ -77,6 +77,7 @@ bool Set3DShapesDefaultPath( const wxString& aKiSys3Dmod, const PGM_BASE* aProce
// Attempt to determine where the 3D shape libraries were installed using the
// legacy path:
// on Unix: /usr/local/kicad/share/modules/packages3d
// oor /usr/local/kicad/share/kicad/modules/packages3d
// or /usr/share/kicad/modules/packages3d
// On Windows: bin../share/modules/packages3d
wxString relpath( wxT( "modules/" ) );
@ -112,6 +113,16 @@ bool Set3DShapesDefaultPath( const wxString& aKiSys3Dmod, const PGM_BASE* aProce
return true;
}
path.Empty();
wxGetEnv( wxT("HOME"), &path );
path += wxT("/kicad/share/kicad/") + relpath;
if( wxFileName::DirExists( path ) )
{
wxSetEnv( aKiSys3Dmod, path );
return true;
}
// Try the standard install path:
path = wxT("/usr/local/kicad/share/") + relpath;
@ -121,6 +132,14 @@ bool Set3DShapesDefaultPath( const wxString& aKiSys3Dmod, const PGM_BASE* aProce
return true;
}
// Try the new standard install path:
path = wxT("/usr/local/kicad/share/kicad/") + relpath;
if( wxFileName::DirExists( path ) )
{
wxSetEnv( aKiSys3Dmod, path );
return true;
}
// Try the official distrib standard install path:
path = wxT("/usr/share/kicad/") + relpath;

View File

@ -1,9 +1,9 @@
/*
* This program source code file is part of KiCad, a free EDA CAD application.
*
* Copyright (C) 2004 Jean-Pierre Charras, jaen-pierre.charras@gipsa-lab.inpg.com
* Copyright (C) 2008-2011 Wayne Stambaugh <stambaughw@verizon.net>
* Copyright (C) 1992-2011 KiCad Developers, see AUTHORS.txt for contributors.
* Copyright (C) 2004-2015 Jean-Pierre Charras, jaen-pierre.charras@gipsa-lab.inpg.com
* Copyright (C) 2008-2015 Wayne Stambaugh <stambaughw@verizon.net>
* Copyright (C) 1992-2015 KiCad Developers, see AUTHORS.txt for contributors.
*
* This program is free software; you can redistribute it and/or
* modify it under the terms of the GNU General Public License
@ -353,7 +353,7 @@ bool PGM_BASE::initPgm()
wxInitAllImageHandlers();
m_pgm_checker = new wxSingleInstanceChecker( pgm_name.GetName().Lower() + wxT( "-" ) + wxGetUserId() );
m_pgm_checker = new wxSingleInstanceChecker( pgm_name.GetName().Lower() + wxT( "-" ) + wxGetUserId(), GetKicadLockFilePath() );
if( m_pgm_checker->IsAnotherRunning() )
{

View File

@ -331,8 +331,14 @@ bool PROJECT::ConfigLoad( const SEARCH_STACK& aSList, const wxString& aGroupNam
m_pro_date_and_time = timestamp;
// We do not want expansion of env var values when reading our project config file
bool state = cfg.get()->IsExpandingEnvVars();
cfg.get()->SetExpandEnvVars( false );
wxConfigLoadParams( cfg.get(), aParams, aGroupName );
cfg.get()->SetExpandEnvVars( state );
return true;
}

View File

@ -125,7 +125,7 @@ struct APP_SINGLE_TOP : public wxApp
{
wxLogError( wxT( "Unhandled exception class: %s what: %s" ),
GetChars( FROM_UTF8( typeid(e).name() )),
GetChars( FROM_UTF8( e.what() ) ) );;
GetChars( FROM_UTF8( e.what() ) ) );
}
catch( const IO_ERROR& ioe )
{
@ -158,7 +158,7 @@ struct APP_SINGLE_TOP : public wxApp
{
wxLogError( wxT( "Unhandled exception class: %s what: %s" ),
GetChars( FROM_UTF8( typeid(e).name() )),
GetChars( FROM_UTF8( e.what() ) ) );;
GetChars( FROM_UTF8( e.what() ) ) );
}
catch( const IO_ERROR& ioe )
{

View File

@ -292,21 +292,19 @@ void TOOL_MANAGER::UnregisterAction( TOOL_ACTION* aAction )
}
bool TOOL_MANAGER::RunAction( const std::string& aActionName, bool aNow )
bool TOOL_MANAGER::RunAction( const std::string& aActionName, bool aNow, void* aParam )
{
TOOL_ACTION* action = m_actionMgr->FindAction( aActionName );
if( action )
{
TOOL_EVENT event = action->MakeEvent();
event.SetParameter( aParam );
if( aNow )
{
TOOL_EVENT event = action->MakeEvent();
ProcessEvent( event );
}
else
{
PostEvent( action->MakeEvent() );
}
PostEvent( event );
return true;
}
@ -315,17 +313,15 @@ bool TOOL_MANAGER::RunAction( const std::string& aActionName, bool aNow )
}
void TOOL_MANAGER::RunAction( const TOOL_ACTION& aAction, bool aNow )
void TOOL_MANAGER::RunAction( const TOOL_ACTION& aAction, bool aNow, void* aParam )
{
TOOL_EVENT event = aAction.MakeEvent();
event.SetParameter( aParam );
if( aNow )
{
TOOL_EVENT event = aAction.MakeEvent();
ProcessEvent( event );
}
else
{
PostEvent( aAction.MakeEvent() );
}
PostEvent( event );
}
@ -415,6 +411,9 @@ TOOL_BASE* TOOL_MANAGER::FindTool( const std::string& aName ) const
void TOOL_MANAGER::ResetTools( TOOL_BASE::RESET_REASON aReason )
{
TOOL_EVENT evt( TC_COMMAND, TA_ACTIVATE, "" ); // deactivate the active tool
ProcessEvent( evt );
BOOST_FOREACH( TOOL_BASE* tool, m_toolState | boost::adaptors::map_keys )
tool->Reset( aReason );
}

View File

@ -35,14 +35,40 @@ FILE_NAME_CHAR_VALIDATOR::FILE_NAME_CHAR_VALIDATOR( wxString* aValue ) :
wxTextValidator( wxFILTER_EXCLUDE_CHAR_LIST, aValue )
{
// The Windows (DOS) file system forbidden characters already include the forbidden
// file name characters for both Posix and OSX systems. The characters \/*?|"<> are
// file name characters for both Posix and OSX systems. The characters \/:*?|"<> are
// illegal and filtered by the validator.
wxString illegalChars = GetIllegalFileNameWxChars();
wxString illegalChars = wxFileName::GetForbiddenChars( wxPATH_DOS );
wxTextValidator nameValidator( wxFILTER_EXCLUDE_CHAR_LIST );
wxArrayString illegalCharList;
for( unsigned i = 0; i < illegalChars.size(); i++ )
illegalCharList.Add( wxString( illegalChars[i] ) );
SetExcludes( illegalCharList );
}
FILE_NAME_WITH_PATH_CHAR_VALIDATOR::FILE_NAME_WITH_PATH_CHAR_VALIDATOR( wxString* aValue ) :
wxTextValidator( wxFILTER_EXCLUDE_CHAR_LIST, aValue )
{
// The Windows (DOS) file system forbidden characters already include the forbidden
// file name characters for both Posix and OSX systems. The characters *?|"<> are
// illegal and filtered by the validator, but /\: are valid (\ and : only on Windows.
wxString illegalChars = wxFileName::GetForbiddenChars(wxPATH_DOS );
wxTextValidator nameValidator( wxFILTER_EXCLUDE_CHAR_LIST );
wxArrayString illegalCharList;
for( unsigned i = 0; i < illegalChars.size(); i++ )
{
if( illegalChars[i] == '/' )
continue;
#if defined (__WINDOWS__)
if( illegalChars[i] == '\\' || illegalChars[i] == ':' )
continue;
#endif
illegalCharList.Add( wxString( illegalChars[i] ) );
}
SetExcludes( illegalCharList );
}

View File

@ -33,6 +33,7 @@
#include <painter.h>
#include <layers_id_colors_and_visibility.h>
#include <boost/foreach.hpp>
#include <class_page_info.h>
using namespace KIGFX;

View File

@ -251,7 +251,7 @@ void EDA_DRAW_FRAME::AddMenuZoomAndGrid( wxMenu* MasterMenu )
// Populate zoom submenu.
for( int i = 0; i < maxZoomIds; i++ )
{
msg.Printf( wxT( "%g" ), screen->m_ZoomList[i] );
msg.Printf( wxT( "%.2f" ), m_zoomLevelCoeff / screen->m_ZoomList[i] );
zoom_choice->Append( ID_POPUP_ZOOM_LEVEL_START + i, _( "Zoom: " ) + msg,
wxEmptyString, wxITEM_CHECK );
@ -266,43 +266,16 @@ void EDA_DRAW_FRAME::AddMenuZoomAndGrid( wxMenu* MasterMenu )
AddMenuItem( MasterMenu, gridMenu, ID_POPUP_GRID_SELECT,
_( "Grid Select" ), KiBitmap( grid_select_xpm ) );
GRID_TYPE tmp;
wxRealPoint grid = screen->GetGridSize();
wxArrayString gridsList;
int icurr = screen->BuildGridsChoiceList( gridsList, g_UserUnit != INCHES );
for( size_t i = 0; i < screen->GetGridCount(); i++ )
for( unsigned i = 0; i < gridsList.GetCount(); i++ )
{
tmp = screen->GetGrid( i );
double gridValueInch = To_User_Unit( INCHES, tmp.m_Size.x );
double gridValue_mm = To_User_Unit( MILLIMETRES, tmp.m_Size.x );
GRID_TYPE& grid = screen->GetGrid( i );
gridMenu->Append( grid.m_Id, gridsList[i], wxEmptyString, true );
if( tmp.m_Id == ID_POPUP_GRID_USER )
{
msg = _( "User Grid" );
}
else
{
switch( g_UserUnit )
{
case INCHES:
msg.Printf( wxT( "%.1f mils, (%.4f mm)" ),
gridValueInch * 1000, gridValue_mm );
break;
case MILLIMETRES:
msg.Printf( wxT( "%.4f mm, (%.1f mils)" ),
gridValue_mm, gridValueInch * 1000 );
break;
case UNSCALED_UNITS:
msg = wxT( "???" );
break;
}
}
gridMenu->Append( tmp.m_Id, msg, wxEmptyString, true );
if( grid == tmp.m_Size )
gridMenu->Check( tmp.m_Id, true );
if( (int)i == icurr )
gridMenu->Check( grid.m_Id, true );
}
}

View File

@ -8,6 +8,11 @@ endif()
add_definitions( -DCVPCB )
if( KICAD_USE_WEBKIT AND BUILD_GITHUB_PLUGIN )
set( WEBVIEWER_WXLIB "webviewer" )
endif()
include_directories( BEFORE ${INC_BEFORE} )
include_directories(
./dialogs
@ -25,10 +30,15 @@ set( CVPCB_DIALOGS
dialogs/fp_conflict_assignment_selector.cpp
dialogs/dialog_display_options.cpp
dialogs/dialog_display_options_base.cpp
dialogs/dialog_config_equfiles_base.cpp
dialogs/dialog_config_equfiles.cpp
../pcbnew/dialogs/dialog_fp_lib_table.cpp
../pcbnew/dialogs/dialog_fp_lib_table_base.cpp
../pcbnew/dialogs/dialog_fp_plugin_options.cpp
../pcbnew/dialogs/dialog_fp_plugin_options_base.cpp
../pcbnew/dialogs/wizard_add_fplib_base.cpp
../pcbnew/dialogs/wizard_add_fplib.cpp
../pcbnew/dialogs/dialog_select_dirlist_base.cpp
)
set( CVPCB_SRCS
@ -75,9 +85,11 @@ add_executable( cvpcb WIN32 MACOSX_BUNDLE
../common/pgm_base.cpp
${CVPCB_RESOURCES}
)
set_source_files_properties( ../common/single_top.cpp PROPERTIES
COMPILE_DEFINITIONS "TOP_FRAME=FRAME_CVPCB;PGM_DATA_FILE_EXT=\"net\";BUILD_KIWAY_DLL"
)
target_link_libraries( cvpcb
#singletop # replaces common, giving us restrictive control and link warnings.
# There's way too much crap coming in from common yet.
@ -107,6 +119,7 @@ target_link_libraries( cvpcb_kiface
pcbcommon
pcad2kicadpcb
common
${WEBVIEWER_WXLIB} # before bitmaps, because it uses some bitmaps defined in bitmaps
bitmaps
polygon
gal

View File

@ -1,7 +1,7 @@
/*
* This program source code file is part of KiCad, a free EDA CAD application.
*
* Copyright (C) 1992-2012 KiCad Developers, see AUTHORS.txt for contributors.
* Copyright (C) 1992-2015 KiCad Developers, see AUTHORS.txt for contributors.
*
* This program is free software; you can redistribute it and/or
* modify it under the terms of the GNU General Public License
@ -25,13 +25,16 @@
* @file autosel.cpp
*/
// Routines for automatic selection of modules.
// This file handle automatic selection of footprints, from .equ files which give
// a footprint FPID associated to a component value.
// Thse assiciations have this form:
// 'FT232BL' 'QFP:LQFP-32_7x7mm_Pitch0.8mm'
#include <fctsys.h>
#include <common.h>
#include <kiface_i.h>
#include <project.h>
#include <confirm.h>
#include <gestfich.h>
#include <pgm_base.h>
#include <kicad_string.h>
@ -40,24 +43,10 @@
#include <cvpcb.h>
#include <cvpcb_mainframe.h>
#include <cvstruct.h>
#include <autosel.h>
#define QUOTE '\''
#define FMT_TITLE_LIB_LOAD_ERROR _( "Library Load Error" )
class FOOTPRINT_ALIAS
{
public:
int m_Type;
wxString m_Name;
wxString m_FootprintName;
FOOTPRINT_ALIAS() { m_Type = 0; }
};
typedef boost::ptr_vector< FOOTPRINT_ALIAS > FOOTPRINT_ALIAS_LIST;
/*
* read the string between quotes and put it in aTarget
@ -82,45 +71,48 @@ wxString GetQuotedText( wxString & text )
}
void CVPCB_MAINFRAME::AssocieModule( wxCommandEvent& event )
// A sort compare function, used to sort a FOOTPRINT_EQUIVALENCE_LIST by cmp values
// (m_ComponentValue member)
bool sortListbyCmpValue( const FOOTPRINT_EQUIVALENCE& ref, const FOOTPRINT_EQUIVALENCE& test )
{
FOOTPRINT_ALIAS_LIST aliases;
FOOTPRINT_ALIAS* alias;
COMPONENT* component;
wxFileName fn;
wxString msg, tmp;
char Line[1024];
FILE* file;
size_t ii;
return ref.m_ComponentValue.Cmp( test.m_ComponentValue ) >= 0;
}
SEARCH_STACK& search = Kiface().KifaceSearch();
// read the .equ files and populate the list of equvalents
int CVPCB_MAINFRAME::buildEquivalenceList( FOOTPRINT_EQUIVALENCE_LIST& aList, wxString * aErrorMessages )
{
char Line[1024];
int error_count = 0;
FILE* file;
wxFileName fn;
wxString tmp, error_msg;
if( m_netlist.IsEmpty() )
return;
SEARCH_STACK& search = Kiface().KifaceSearch();
// Find equivalents in all available files.
for( ii = 0; ii < m_AliasLibNames.GetCount(); ii++ )
// Find equivalences in all available files, and populates the
// equiv_List with all equivalences found in .equ files
for( unsigned ii = 0; ii < m_EquFilesNames.GetCount(); ii++ )
{
fn = m_AliasLibNames[ii];
if( !fn.HasExt() )
{
fn.SetExt( FootprintAliasFileExtension );
// above fails if filename has more than one point
}
else
{
fn.SetExt( fn.GetExt() + wxT( "." ) + FootprintAliasFileExtension );
}
fn = wxExpandEnvVars( m_EquFilesNames[ii] );
tmp = search.FindValidPath( fn.GetFullPath() );
if( !tmp )
{
msg.Printf( _( "Footprint alias library file '%s' could not be found in the "
"default search paths." ),
GetChars( fn.GetFullName() ) );
wxMessageBox( msg, FMT_TITLE_LIB_LOAD_ERROR, wxOK | wxICON_ERROR );
error_count++;
if( aErrorMessages )
{
error_msg.Printf( _( "Equ file '%s' could not be found in the "
"default search paths." ),
GetChars( fn.GetFullName() ) );
if( ! aErrorMessages->IsEmpty() )
*aErrorMessages << wxT("\n\n");
*aErrorMessages += error_msg;
}
continue;
}
@ -128,8 +120,18 @@ void CVPCB_MAINFRAME::AssocieModule( wxCommandEvent& event )
if( file == NULL )
{
msg.Printf( _( "Error opening alias library '%s'." ), GetChars( tmp ) );
wxMessageBox( msg, FMT_TITLE_LIB_LOAD_ERROR, wxOK | wxICON_ERROR );
error_count++;
if( aErrorMessages )
{
error_msg.Printf( _( "Error opening equ file '%s'." ), GetChars( tmp ) );
if( ! aErrorMessages->IsEmpty() )
*aErrorMessages << wxT("\n\n");
*aErrorMessages += error_msg;
}
continue;
}
@ -150,21 +152,46 @@ void CVPCB_MAINFRAME::AssocieModule( wxCommandEvent& event )
value.Replace( wxT( " " ), wxT( "_" ) );
alias = new FOOTPRINT_ALIAS();
alias->m_Name = value;
alias->m_FootprintName = footprint;
aliases.push_back( alias );
FOOTPRINT_EQUIVALENCE* equivItem = new FOOTPRINT_EQUIVALENCE();
equivItem->m_ComponentValue = value;
equivItem->m_FootprintFPID = footprint;
aList.push_back( equivItem );
}
fclose( file );
}
// Display the number of footprint aliases.
msg.Printf( _( "%d footprint aliases found." ), aliases.size() );
return error_count;
}
void CVPCB_MAINFRAME::AutomaticFootprintMatching( wxCommandEvent& event )
{
FOOTPRINT_EQUIVALENCE_LIST equiv_List;
COMPONENT* component;
wxString msg, error_msg;
size_t ii;
if( m_netlist.IsEmpty() )
return;
if( buildEquivalenceList( equiv_List, &error_msg ) )
wxMessageBox( error_msg, _( "Equ files Load Error" ), wxOK | wxICON_WARNING, this );
// Sort the association list by component value.
// When sorted, find duplicate definitions (i.e. 2 or more items
// having the same component value) is more easy.
std::sort( equiv_List.begin(), equiv_List.end(), sortListbyCmpValue );
// Display the number of footprint/component equivalences.
msg.Printf( _( "%d footprint/cmp equivalences found." ), equiv_List.size() );
SetStatusText( msg, 0 );
// Now, associe each free component with a footprint, when the association
// is found in list
m_skipComponentSelect = true;
ii = 0;
error_msg.Empty();
for( unsigned kk = 0; kk < m_netlist.GetCount(); kk++ )
{
@ -173,19 +200,44 @@ void CVPCB_MAINFRAME::AssocieModule( wxCommandEvent& event )
bool found = false;
m_compListBox->SetSelection( ii++, true );
if( !component->GetFPID().empty() )
if( !component->GetFPID().empty() ) // the component has already a footprint
continue;
BOOST_FOREACH( FOOTPRINT_ALIAS& alias, aliases )
// Here a first attempt is made. We can have multiple equivItem of the same value.
// When happens, using the footprint filter of components can remove the ambiguity by
// filtering equivItem so one can use multiple equiv_List (for polar and
// nonpolar caps for example)
for( unsigned idx = 0; idx < equiv_List.size(); idx++ )
{
FOOTPRINT_EQUIVALENCE& equivItem = equiv_List[idx];
if( alias.m_Name.CmpNoCase( component->GetValue() ) != 0 )
if( equivItem.m_ComponentValue.CmpNoCase( component->GetValue() ) != 0 )
continue;
// filter alias so one can use multiple aliases (for polar and
// nonpolar caps for example)
const FOOTPRINT_INFO *module = m_footprints.GetModuleInfo( alias.m_FootprintName );
const FOOTPRINT_INFO *module = m_footprints.GetModuleInfo( equivItem.m_FootprintFPID );
bool equ_is_unique = true;
unsigned next = idx+1;
unsigned previous = idx-1;
if( next < equiv_List.size() &&
equivItem.m_ComponentValue == equiv_List[next].m_ComponentValue )
equ_is_unique = false;
if( previous >= 0 &&
equivItem.m_ComponentValue == equiv_List[previous].m_ComponentValue )
equ_is_unique = false;
// If the equivalence is unique, no ambiguity: use the association
if( module && equ_is_unique )
{
SetNewPkg( equivItem.m_FootprintFPID );
found = true;
break;
}
// The equivalence is not unique: use the footprint filter to try to remove
// ambiguity
if( module )
{
size_t filtercount = component->GetFootprintFilters().GetCount();
@ -201,31 +253,38 @@ void CVPCB_MAINFRAME::AssocieModule( wxCommandEvent& event )
msg.Printf( _( "Component %s: footprint %s not found in any of the project "
"footprint libraries." ),
GetChars( component->GetReference() ),
GetChars( alias.m_FootprintName ) );
wxMessageBox( msg, _( "CvPcb Error" ), wxOK | wxICON_ERROR, this );
GetChars( equivItem.m_FootprintFPID ) );
if( ! error_msg.IsEmpty() )
error_msg << wxT("\n\n");
error_msg += msg;
}
if( found )
{
SetNewPkg( alias.m_FootprintName );
SetNewPkg( equivItem.m_FootprintFPID );
break;
}
}
if( found )
continue;
// obviously the last chance: there's only one filter matching one footprint
if( !found && 1 == component->GetFootprintFilters().GetCount() )
if( 1 == component->GetFootprintFilters().GetCount() )
{
// we do not need to analyse wildcards: single footprint do not
// contain them and if there are wildcards it just will not match any
const FOOTPRINT_INFO* module = m_footprints.GetModuleInfo( component->GetFootprintFilters()[0] );
if( module )
{
SetNewPkg( component->GetFootprintFilters()[0] );
}
}
}
if( !error_msg.IsEmpty() )
wxMessageBox( error_msg, _( "CvPcb Warning" ), wxOK | wxICON_WARNING, this );
m_skipComponentSelect = false;
}

45
cvpcb/autosel.h Normal file
View File

@ -0,0 +1,45 @@
/*
* This program source code file is part of KiCad, a free EDA CAD application.
*
* Copyright (C) 1992-2015 KiCad Developers, see AUTHORS.txt for contributors.
*
* This program is free software; you can redistribute it and/or
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with this program; if not, you may find one here:
* http://www.gnu.org/licenses/old-licenses/gpl-2.0.html
* or you may search the http://www.gnu.org website for the version 2 license,
* or you may write to the Free Software Foundation, Inc.,
* 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA
*/
#ifndef AUTOSEL_H
#define AUTOSEL_H
// A helper class to handle info read in .equ files, which gives a footprint FPID
// corresponding to a component value.
// Each line is something like:
// 'FT232BL' 'QFP:LQFP-32_7x7mm_Pitch0.8mm'
//
class FOOTPRINT_EQUIVALENCE
{
public:
wxString m_ComponentValue; // The value of a component
wxString m_FootprintFPID; // the footprint FPID corresponding to this value
FOOTPRINT_EQUIVALENCE() {}
};
typedef boost::ptr_vector< FOOTPRINT_EQUIVALENCE > FOOTPRINT_EQUIVALENCE_LIST;
#endif // ifndef AUTOSEL_H

View File

@ -1,7 +1,7 @@
/*
* This program source code file is part of KiCad, a free EDA CAD application.
*
* Copyright (C) 2007 Jean-Pierre Charras, jean-pierre.charras
* Copyright (C) 2015 Jean-Pierre Charras, jp.charras at wanadoo.fr
* Copyright (C) 1992-2011 KiCad Developers, see AUTHORS.txt for contributors.
*
* This program is free software; you can redistribute it and/or
@ -50,7 +50,7 @@ PARAM_CFG_ARRAY& CVPCB_MAINFRAME::GetProjectFileParameters()
m_projectFileParams.push_back( new PARAM_CFG_BASE( GROUP_PCB_LIBS, PARAM_COMMAND_ERASE ) );
m_projectFileParams.push_back( new PARAM_CFG_LIBNAME_LIST(
wxT( "EquName" ), &m_AliasLibNames, GROUP_CVP_EQU ) );
wxT( "EquName" ), &m_EquFilesNames, GROUP_CVP_EQU ) );
m_projectFileParams.push_back( new PARAM_CFG_WXSTRING(
wxT( "NetIExt" ), &m_NetlistFileExtension ) );
@ -64,9 +64,8 @@ void CVPCB_MAINFRAME::LoadProjectFile()
PROJECT& prj = Prj();
m_ModuleLibNames.Clear();
m_AliasLibNames.Clear();
m_EquFilesNames.Clear();
// was: Pgm().ReadProjectConfig( fn.GetFullPath(), GROUP, GetProjectFileParameters(), false );
prj.ConfigLoad( Kiface().KifaceSearch(), GROUP_CVP, GetProjectFileParameters() );
if( m_NetlistFileExtension.IsEmpty() )
@ -77,26 +76,14 @@ void CVPCB_MAINFRAME::LoadProjectFile()
void CVPCB_MAINFRAME::SaveProjectFile( wxCommandEvent& aEvent )
{
PROJECT& prj = Prj();
wxFileName fn = prj.AbsolutePath( m_NetlistFileName.GetFullPath() );
fn.SetExt( ProjectFileExtension );
if( aEvent.GetId() == ID_SAVE_PROJECT_AS || !m_NetlistFileName.IsOk() )
{
wxFileDialog dlg( this, _( "Save Project File" ), fn.GetPath(),
wxEmptyString, ProjectFileWildcard, wxFD_SAVE );
if( dlg.ShowModal() == wxID_CANCEL )
return;
fn = dlg.GetPath();
if( !fn.HasExt() )
fn.SetExt( ProjectFileExtension );
}
SetTitle( wxString::Format( _( "Project file: '%s'" ), GetChars( prj.GetProjectFullName() ) ) );
wxFileName fn = prj.GetProjectFullName();
if( !IsWritable( fn ) )
{
wxMessageBox( _( "Project file '%s' is not writable" ), fn.GetFullPath() );
return;
}
wxString pro_name = fn.GetFullPath();

View File

@ -53,9 +53,6 @@
#include <3d_viewer.h>
DISPLAY_OPTIONS DisplayOpt; // General display options
BEGIN_EVENT_TABLE( DISPLAY_FOOTPRINTS_FRAME, PCB_BASE_FRAME )
EVT_CLOSE( DISPLAY_FOOTPRINTS_FRAME::OnCloseWindow )
EVT_SIZE( DISPLAY_FOOTPRINTS_FRAME::OnSize )
@ -100,10 +97,11 @@ DISPLAY_FOOTPRINTS_FRAME::DISPLAY_FOOTPRINTS_FRAME( KIWAY* aKiway, CVPCB_MAINFRA
GetScreen()->SetGrid( ID_POPUP_GRID_LEVEL_1000 + m_LastGridSizeId );
// Initialize some display options
DisplayOpt.DisplayPadIsol = false; // Pad clearance has no meaning here
DISPLAY_OPTIONS* displ_opts = (DISPLAY_OPTIONS*)GetDisplayOptions();
displ_opts->m_DisplayPadIsol = false; // Pad clearance has no meaning here
// Track and via clearance has no meaning here.
DisplayOpt.ShowTrackClearanceMode = DO_NOT_SHOW_CLEARANCE;
displ_opts->m_ShowTrackClearanceMode = DO_NOT_SHOW_CLEARANCE;
SetSize( m_FramePos.x, m_FramePos.y, m_FrameSize.x, m_FrameSize.y );
ReCreateHToolbar();
@ -248,34 +246,36 @@ void DISPLAY_FOOTPRINTS_FRAME::ReCreateHToolbar()
void DISPLAY_FOOTPRINTS_FRAME::OnUpdateTextDrawMode( wxUpdateUIEvent& aEvent )
{
wxString msgTextsFill[3] = { _( "Show texts in line mode" ),
_( "Show texts in filled mode" ),
DISPLAY_OPTIONS* displ_opts = (DISPLAY_OPTIONS*)GetDisplayOptions();
wxString msgTextsFill[2] = { _( "Show texts in filled mode" ),
_( "Show texts in sketch mode" ) };
unsigned i = m_DisplayModText + 1;
unsigned i = displ_opts->m_DisplayModText + 1;
if ( i > 2 )
i = 0;
i = 1;
aEvent.Check( m_DisplayModText == 0 );
m_optionsToolBar->SetToolShortHelp( ID_TB_OPTIONS_SHOW_MODULE_TEXT_SKETCH, msgTextsFill[i] );
aEvent.Check( displ_opts->m_DisplayModText == 1 );
m_optionsToolBar->SetToolShortHelp( ID_TB_OPTIONS_SHOW_MODULE_TEXT_SKETCH, msgTextsFill[i-1] );
}
void DISPLAY_FOOTPRINTS_FRAME::OnUpdateLineDrawMode( wxUpdateUIEvent& aEvent )
{
wxString msgEdgesFill[3] = { _( "Show outlines in line mode" ),
_( "Show outlines in filled mode" ),
DISPLAY_OPTIONS* displ_opts = (DISPLAY_OPTIONS*)GetDisplayOptions();
wxString msgEdgesFill[3] = { _( "Show outlines in filled mode" ),
_( "Show outlines in sketch mode" ) };
int i = m_DisplayModEdge + 1;
int i = displ_opts->m_DisplayModEdge + 1;
if ( i > 2 )
i = 0;
i = 1;
aEvent.Check( m_DisplayModEdge == 0 );
m_optionsToolBar->SetToolShortHelp( ID_TB_OPTIONS_SHOW_MODULE_EDGE_SKETCH, msgEdgesFill[i] );
aEvent.Check( displ_opts->m_DisplayModEdge == 2 );
m_optionsToolBar->SetToolShortHelp( ID_TB_OPTIONS_SHOW_MODULE_EDGE_SKETCH, msgEdgesFill[i-1] );
}
@ -298,23 +298,24 @@ bool DISPLAY_FOOTPRINTS_FRAME::OnRightClick( const wxPoint& MousePos, wxMenu* Po
void DISPLAY_FOOTPRINTS_FRAME::OnSelectOptionToolbar( wxCommandEvent& event )
{
int id = event.GetId();
DISPLAY_OPTIONS* displ_opts = (DISPLAY_OPTIONS*)GetDisplayOptions();
switch( id )
{
case ID_TB_OPTIONS_SHOW_MODULE_TEXT_SKETCH:
m_DisplayModText++;
displ_opts->m_DisplayModText++;
if( m_DisplayModText > 2 )
m_DisplayModText = 0;
if( displ_opts->m_DisplayModText > 2 )
displ_opts->m_DisplayModText = 0;
m_canvas->Refresh( );
break;
case ID_TB_OPTIONS_SHOW_MODULE_EDGE_SKETCH:
m_DisplayModEdge++;
displ_opts->m_DisplayModEdge++;
if( m_DisplayModEdge > 2 )
m_DisplayModEdge = 0;
if( displ_opts->m_DisplayModEdge > 2 )
displ_opts->m_DisplayModEdge = 0;
m_canvas->Refresh();
break;

View File

@ -1,7 +1,7 @@
/*
* This program source code file is part of KiCad, a free EDA CAD application.
*
* Copyright (C) 2009 Jean-Pierre Charras, jean-pierre.charras
* Copyright (C) 2015 Jean-Pierre Charras, jean-pierre.charras
* Copyright (C) 2011 Wayne Stambaugh <stambaughw@verizon.net>
* Copyright (C) 1992-2011 KiCad Developers, see AUTHORS.txt for contributors.
*
@ -69,8 +69,8 @@ BEGIN_EVENT_TABLE( CVPCB_MAINFRAME, EDA_BASE_FRAME )
EVT_MENU( wxID_HELP, CVPCB_MAINFRAME::GetKicadHelp )
EVT_MENU( wxID_ABOUT, CVPCB_MAINFRAME::GetKicadAbout )
EVT_MENU( ID_SAVE_PROJECT, CVPCB_MAINFRAME::SaveProjectFile )
EVT_MENU( ID_SAVE_PROJECT_AS, CVPCB_MAINFRAME::SaveProjectFile )
EVT_MENU( ID_CVPCB_CONFIG_KEEP_OPEN_ON_SAVE, CVPCB_MAINFRAME::OnKeepOpenOnSave )
EVT_MENU( ID_CVPCB_EQUFILES_LIST_EDIT, CVPCB_MAINFRAME::OnEditEquFilesList )
// Toolbar events
EVT_TOOL( ID_CVPCB_QUIT, CVPCB_MAINFRAME::OnQuit )
@ -80,7 +80,7 @@ BEGIN_EVENT_TABLE( CVPCB_MAINFRAME, EDA_BASE_FRAME )
EVT_TOOL( ID_CVPCB_GOTO_FIRSTNA, CVPCB_MAINFRAME::ToFirstNA )
EVT_TOOL( ID_CVPCB_GOTO_PREVIOUSNA, CVPCB_MAINFRAME::ToPreviousNA )
EVT_TOOL( ID_CVPCB_DEL_ASSOCIATIONS, CVPCB_MAINFRAME::DelAssociations )
EVT_TOOL( ID_CVPCB_AUTO_ASSOCIE, CVPCB_MAINFRAME::AssocieModule )
EVT_TOOL( ID_CVPCB_AUTO_ASSOCIE, CVPCB_MAINFRAME::AutomaticFootprintMatching )
EVT_TOOL( ID_PCB_DISPLAY_FOOTPRINT_DOC, CVPCB_MAINFRAME::DisplayDocFile )
EVT_TOOL( ID_CVPCB_FOOTPRINT_DISPLAY_FILTERED_LIST,
CVPCB_MAINFRAME::OnSelectFilteringFootprint )
@ -160,6 +160,7 @@ CVPCB_MAINFRAME::CVPCB_MAINFRAME( KIWAY* aKiway, wxWindow* aParent ) :
m_auimgr.SetManagedWindow( this );
UpdateTitle();
EDA_PANEINFO horiz;
horiz.HorizontalToolbarPane();
@ -369,10 +370,12 @@ void CVPCB_MAINFRAME::ToPreviousNA( wxCommandEvent& event )
void CVPCB_MAINFRAME::SaveQuitCvpcb( wxCommandEvent& aEvent )
{
if( aEvent.GetId() == wxID_SAVEAS )
m_NetlistFileName.Clear();
wxString fullFilename;
if( SaveCmpLinkFile( m_NetlistFileName.GetFullPath() ) > 0 )
if( aEvent.GetId() != wxID_SAVEAS )
fullFilename = m_NetlistFileName.GetFullPath();
if( SaveCmpLinkFile( fullFilename ) > 0 )
{
m_modified = false;
@ -438,25 +441,40 @@ void CVPCB_MAINFRAME::LoadNetList( wxCommandEvent& event )
bool CVPCB_MAINFRAME::OpenProjectFiles( const std::vector<wxString>& aFileSet, int aCtl )
{
if( aFileSet.size() == 1 )
if( aFileSet.size() != 1 ) // Unexpected comand
return false;
m_NetlistFileName = aFileSet[0];
if( Kiface().IsSingle() )
{
m_NetlistFileName = aFileSet[0];
ReadNetListAndLinkFiles();
// PROJECT::SetProjectFullName() is an impactful function. It should only be
// called under carefully considered circumstances.
UpdateTitle();
// Resize the components list box. This is needed in case the
// contents have shrunk compared to the previous netlist.
m_compListBox->UpdateWidth();
// OSX need it since some objects are "rebuild" just make aware AUI
// Fixes #1258081
m_auimgr.Update();
return true;
// The calling code should know not to ask me here to change projects unless
// it knows what consequences that will have on other KIFACEs running and using
// this same PROJECT. It can be very harmful if that calling code is stupid.
//
// In Cvpcb, we call SetProjectFullName only in Single mode, i.e. it is not
// called from a project
wxFileName pro = m_NetlistFileName;
pro.SetExt( ProjectFileExtension );
Prj().SetProjectFullName( pro.GetFullPath() );
}
return false;
ReadNetListAndLinkFiles();
UpdateTitle();
// Resize the components list box. This is needed in case the
// contents have shrunk compared to the previous netlist.
m_compListBox->UpdateWidth();
// OSX need it since some objects are "rebuild" just make aware AUI
// Fixes #1258081
m_auimgr.Update();
return true;
}
@ -669,32 +687,33 @@ void CVPCB_MAINFRAME::DisplayStatus()
}
msg.Empty();
wxString filters;
if( m_footprintListBox )
{
if( m_mainToolBar->GetToolToggled( ID_CVPCB_FOOTPRINT_DISPLAY_FILTERED_LIST ) )
msg = _( "key words" );
filters = _( "key words" );
if( m_mainToolBar->GetToolToggled( ID_CVPCB_FOOTPRINT_DISPLAY_PIN_FILTERED_LIST ) )
{
if( !msg.IsEmpty() )
msg += wxT( ", " );
if( !filters.IsEmpty() )
filters += wxT( "+" );
msg += _( "pin count" );
filters += _( "pin count" );
}
if( m_mainToolBar->GetToolToggled( ID_CVPCB_FOOTPRINT_DISPLAY_BY_LIBRARY_LIST ) )
{
if( !msg.IsEmpty() )
msg += wxT( ", " );
if( !filters.IsEmpty() )
filters += wxT( "+" );
msg += _( "library" );
filters += _( "library" );
}
if( msg.IsEmpty() )
if( filters.IsEmpty() )
msg = _( "No filtering" );
else
msg = _( "Filtered by " ) + msg;
msg.Printf( _( "Filtered by %s" ), GetChars( filters ) );
msg << wxT( ": " ) << m_footprintListBox->GetCount();
@ -729,18 +748,21 @@ bool CVPCB_MAINFRAME::LoadFootprintFiles()
void CVPCB_MAINFRAME::UpdateTitle()
{
wxString title = wxString::Format( wxT( "Cvpcb %s " ), GetChars( GetBuildVersion() ) );
PROJECT& prj = Prj();
wxFileName fn = prj.GetProjectFullName();
if( m_NetlistFileName.IsOk() && m_NetlistFileName.FileExists() )
if( fn.IsOk() && !prj.GetProjectFullName().IsEmpty() && fn.FileExists() )
{
title += m_NetlistFileName.GetFullPath();
title += wxString::Format( _("Project: '%s' (netlist: '%s')"),
GetChars( fn.GetFullPath() ),
GetChars( m_NetlistFileName.GetFullName() )
);
if( !m_NetlistFileName.IsFileWritable() )
if( !fn.IsFileWritable() )
title += _( " [Read Only]" );
}
else
{
title += _( "[no file]" );
}
title += _( "[no project]" );
SetTitle( title );
}

View File

@ -51,10 +51,10 @@
COLORS_DESIGN_SETTINGS g_ColorsSettings;
// Constant string definitions for CvPcb
const wxString FootprintAliasFileExtension( wxT( "equ" ) );
const wxString EquFileExtension( wxT( "equ" ) );
// Wildcard for schematic retroannotation (import footprint names in schematic):
const wxString FootprintAliasFileWildcard( _( "KiCad footprint alias files (*.equ)|*.equ" ) );
const wxString EquFilesWildcard( _( "Component/footprint equ files (*.equ)|*.equ" ) );
#if 0 // add this logic to OpenProjectFiles()

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