Imported Upstream version 4.2.0.179

Former-commit-id: 0a113cb3a6feb7873f632839b1307cc6033cd595
This commit is contained in:
Xamarin Public Jenkins 2015-08-26 07:17:56 -04:00 committed by Jo Shields
parent 183bba2c9a
commit 6992685b86
7507 changed files with 90259 additions and 657307 deletions

View File

@ -1,3 +0,0 @@
Miguel de Icaza (miguel@ximian.com)
Paolo Molaro (lupus@ximian.com)
Dietmar Maurer (dietmar@ximian.com)

View File

@ -8,8 +8,8 @@ For comments, corrections and updates, please contact mono@xamarin.com
Parts of Mono are dual licensed, they are available to the
public in GPL or LGPL forms, but we also offer those pieces
under commercial terms from Xamarin for the cases wher the GPL
and the LGPL are not suitable.
under commercial terms from Xamarin for the cases where the
GPL and the LGPL are not suitable.
We have tried to pick the licenses that will maximize adoption
of Mono, so we tend to use the MIT X11 or LGPL liceses.

View File

@ -10,19 +10,11 @@ SUBDIRS = po $(libgc_dir) eglib mono $(ikvm_native_dir) support data runtime scr
## 'tools' is not normally built
DIST_SUBDIRS = m4 po $(libgc_dir) eglib mono ikvm-native support data runtime scripts man samples tools msvc docs
else
if ONLY_MONOTOUCH
SUBDIRS = $(MONOTOUCH_SUBDIRS) runtime
else
if ONLY_XAMMAC
SUBDIRS = $(libgc_dir) eglib/src mono runtime
else
SUBDIRS = po $(libgc_dir) eglib mono $(ikvm_native_dir) support data runtime scripts man samples msvc $(docs_dir)
# Keep in sync with SUBDIRS
## 'tools' is not normally built
DIST_SUBDIRS = m4 po $(libgc_dir) eglib mono ikvm-native support data runtime scripts man samples tools msvc docs
endif
endif
endif
all: update_submodules
@ -36,11 +28,9 @@ EXTRA_DIST= \
README.md \
LICENSE \
autogen.sh \
build-mingw32.sh \
mkinstalldirs \
mono-uninstalled.pc.in \
winconfig.h \
mono-core.spec \
external
DISTCHECK_CONFIGURE_FLAGS = EXTERNAL_MCS=false EXTERNAL_RUNTIME=false

View File

@ -83,9 +83,9 @@ subdir = .
DIST_COMMON = $(srcdir)/Makefile.in $(srcdir)/Makefile.am \
$(top_srcdir)/configure $(am__configure_deps) \
$(srcdir)/config.h.in mkinstalldirs \
$(srcdir)/mono-core.spec.in $(srcdir)/mono-uninstalled.pc.in \
AUTHORS COPYING.LIB ChangeLog NEWS compile config.guess \
config.rpath config.sub depcomp install-sh missing ltmain.sh
$(srcdir)/mono-uninstalled.pc.in COPYING.LIB ChangeLog NEWS \
compile config.guess config.rpath config.sub install-sh \
missing ltmain.sh
ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
am__aclocal_m4_deps = $(top_srcdir)/m4/iconv.m4 \
$(top_srcdir)/m4/lib-ld.m4 $(top_srcdir)/m4/lib-link.m4 \
@ -101,7 +101,7 @@ am__CONFIG_DISTCLEAN_FILES = config.status config.cache config.log \
configure.lineno config.status.lineno
mkinstalldirs = $(SHELL) $(top_srcdir)/mkinstalldirs
CONFIG_HEADER = config.h
CONFIG_CLEAN_FILES = mono-core.spec mono-uninstalled.pc
CONFIG_CLEAN_FILES = mono-uninstalled.pc
CONFIG_CLEAN_VPATH_FILES =
AM_V_P = $(am__v_P_@AM_V@)
am__v_P_ = $(am__v_P_@AM_DEFAULT_V@)
@ -413,12 +413,10 @@ top_srcdir = @top_srcdir@
ACLOCAL_AMFLAGS = -I m4
AM_CFLAGS = $(WERROR_CFLAGS)
MONOTOUCH_SUBDIRS = $(libgc_dir) eglib/src mono
@CROSS_COMPILING_FALSE@@ONLY_MONOTOUCH_FALSE@@ONLY_XAMMAC_FALSE@SUBDIRS = po $(libgc_dir) eglib mono $(ikvm_native_dir) support data runtime scripts man samples msvc $(docs_dir)
@CROSS_COMPILING_FALSE@@ONLY_MONOTOUCH_FALSE@@ONLY_XAMMAC_TRUE@SUBDIRS = $(libgc_dir) eglib/src mono runtime
@CROSS_COMPILING_FALSE@@ONLY_MONOTOUCH_TRUE@SUBDIRS = $(MONOTOUCH_SUBDIRS) runtime
@CROSS_COMPILING_FALSE@SUBDIRS = po $(libgc_dir) eglib mono $(ikvm_native_dir) support data runtime scripts man samples msvc $(docs_dir)
@CROSS_COMPILING_TRUE@SUBDIRS = po $(libgc_dir) eglib mono $(ikvm_native_dir) support data runtime scripts man samples msvc $(docs_dir)
# Keep in sync with SUBDIRS
@CROSS_COMPILING_FALSE@@ONLY_MONOTOUCH_FALSE@@ONLY_XAMMAC_FALSE@DIST_SUBDIRS = m4 po $(libgc_dir) eglib mono ikvm-native support data runtime scripts man samples tools msvc docs
@CROSS_COMPILING_FALSE@DIST_SUBDIRS = m4 po $(libgc_dir) eglib mono ikvm-native support data runtime scripts man samples tools msvc docs
# Keep in sync with SUBDIRS
@CROSS_COMPILING_TRUE@DIST_SUBDIRS = m4 po $(libgc_dir) eglib mono ikvm-native support data runtime scripts man samples tools msvc docs
SUBMODULE_ERROR = 'Could not recursively update all git submodules. You may experience compilation problems if some submodules are out of date'
@ -426,11 +424,9 @@ EXTRA_DIST = \
README.md \
LICENSE \
autogen.sh \
build-mingw32.sh \
mkinstalldirs \
mono-uninstalled.pc.in \
winconfig.h \
mono-core.spec \
external
DISTCHECK_CONFIGURE_FLAGS = EXTERNAL_MCS=false EXTERNAL_RUNTIME=false
@ -498,8 +494,6 @@ $(srcdir)/config.h.in: @MAINTAINER_MODE_TRUE@ $(am__configure_deps)
distclean-hdr:
-rm -f config.h stamp-h1
mono-core.spec: $(top_builddir)/config.status $(srcdir)/mono-core.spec.in
cd $(top_builddir) && $(SHELL) ./config.status $@
mono-uninstalled.pc: $(top_builddir)/config.status $(srcdir)/mono-uninstalled.pc.in
cd $(top_builddir) && $(SHELL) ./config.status $@

7
NEWS
View File

@ -1,8 +1,3 @@
Release notes for Mono are hosted on the web, please see:
http://www.go-mono.com/archive/VERSION
Where version is the version of this Mono package, for example:
http://www.go-mono.com/archive/1.1.9
http://www.mono-project.com/docs/about-mono/releases/

138
README.md
View File

@ -1,5 +1,9 @@
Mono is a software platform designed to allow developers to easily create cross platform applications.
It is an open source implementation of Microsoft's .NET Framework based on the ECMA standards for C# and the Common Language Runtime.
Mono is a software platform designed to allow developers to easily
create cross platform applications. It is an open source
implementation of Microsoft's .NET Framework based on the ECMA
standards for C# and the Common Language Runtime.
[![Gitter](https://badges.gitter.im/Join%20Chat.svg)](https://gitter.im/mono/mono?utm_source=badge&utm_medium=badge&utm_campaign=pr-badge&utm_content=badge)
1. [Compilation and Installation](#compilation-and-installation)
2. [Using Mono](#using-mono)
@ -7,23 +11,34 @@ It is an open source implementation of Microsoft's .NET Framework based on the E
4. [Contributing to Mono](#contributing-to-mono)
5. [Reporting bugs](#reporting-bugs)
6. [Configuration Options](#configuration-options)
7. [Working with Submodules](#working-with-submodules)
**Build Status**
| debian-amd64 | debian-i386 | debian-ppc64el | centos-s390x | windows-amd64 |
|:-----------------------:|:----------------------:|:-------------------------:|:-----------------------:|:-------------------------:|
| [![debian-amd64][1]][2] | [![debian-i386][3]][4] | [![debian-ppc64el][5]][6] | [![centos-s390x][7]][8] | [![windows-amd64][9]][10] |
Officially supported architectures:
| debian-amd64 | debian-i386 | debian-armel | debian-armhf | windows-amd64 |
|-------------------------|------------------------|-------------------------|-------------------------|---------------------------|
| [![debian-amd64][1]][2] | [![debian-i386][3]][4] | [![debian-armel][5]][6] | [![debian-armhf][7]][8] | [![windows-amd64][9]][10] |
Community supported architectures:
| centos-s390x |
|---------------------------|
| [![centos-s390x][11]][12] |
[1]: http://jenkins.mono-project.com/job/test-mono-mainline/label=debian-amd64/badge/icon
[2]: http://jenkins.mono-project.com/job/test-mono-mainline/label=debian-amd64/
[3]: http://jenkins.mono-project.com/job/test-mono-mainline/label=debian-i386/badge/icon
[4]: http://jenkins.mono-project.com/job/test-mono-mainline/label=debian-i386/
[5]: http://jenkins.mono-project.com/job/test-mono-mainline-communityarchitectures/label=debian-ppc64el/badge/icon
[6]: http://jenkins.mono-project.com/job/test-mono-mainline-communityarchitectures/label=debian-ppc64el/
[7]: http://jenkins.mono-project.com/job/test-mono-mainline-communityarchitectures/label=centos-s390x/badge/icon
[8]: http://jenkins.mono-project.com/job/test-mono-mainline-communityarchitectures/label=centos-s390x/
[5]: http://jenkins.mono-project.com/job/test-mono-mainline/label=debian-armel/badge/icon
[6]: http://jenkins.mono-project.com/job/test-mono-mainline/label=debian-armel/
[7]: http://jenkins.mono-project.com/job/test-mono-mainline/label=debian-armhf/badge/icon
[8]: http://jenkins.mono-project.com/job/test-mono-mainline/label=debian-armhf/
[9]: https://ci.appveyor.com/api/projects/status/1e61ebdfpbiei58v/branch/master?svg=true
[10]: https://ci.appveyor.com/project/ajlennon/mono-817/branch/master
[11]: http://jenkins.mono-project.com/job/test-mono-mainline-communityarchitectures/label=nealef-s390x-1/badge/icon
[12]: http://jenkins.mono-project.com/job/test-mono-mainline-communityarchitectures/label=nealef-s390x-1/
Compilation and Installation
============================
@ -55,7 +70,7 @@ which contains just enough to run the 'mcs' compiler. You do this with:
This will download and place the files appropriately so that you can then
just run:
make EXTERNAL_MCS=${PWD}/mcs/class/lib/monolite/basic.exe
make
The build will then use the files downloaded by `make get-monolite-latest`.
@ -130,54 +145,50 @@ runtime as an embedded library.
* `scripts/` - Scripts used to invoke Mono and the corresponding program.
* `../olive/` - Incubation code from [Olive](https://github.com/mono/olive).
* If the directory ../olive is present (as an
independent checkout) from the Mono module, that
directory is automatically configured to share the
same prefix than this module gets.
Contributing to Mono
====================
Before submitting changes to Mono, please review the [contribution guidelines](http://www.mono-project.com/community/contributing/).
Please pay particular attention to the [Important Rules](http://www.mono-project.com/community/contributing/#important-rules) section.
Before submitting changes to Mono, please review the [contribution
guidelines](http://www.mono-project.com/community/contributing/).
Please pay particular attention to the [Important
Rules](http://www.mono-project.com/community/contributing/#important-rules)
section.
Reporting bugs
==============
To submit bug reports, please use [Xamarin's Bugzilla](https://bugzilla.xamarin.com/)
To submit bug reports, please use [Xamarin's
Bugzilla](https://bugzilla.xamarin.com/)
Please use the search facility to ensure the same bug hasn't already
been submitted and follow our [guidelines](http://www.mono-project.com/community/bugs/make-a-good-bug-report/)
been submitted and follow our
[guidelines](http://www.mono-project.com/community/bugs/make-a-good-bug-report/)
on how to make a good bug report.
Configuration Options
=====================
The following are the configuration options that someone
building Mono might want to use:
The following are the configuration options that someone building Mono
might want to use:
* `--with-sgen=yes,no` - Generational GC support: Used to enable or disable the
compilation of a Mono runtime with the SGen garbage collector.
* `--with-sgen=yes,no` - Generational GC support: Used to enable or
disable the compilation of a Mono runtime with the SGen garbage
collector.
* On platforms that support it, after building Mono, you will have
both a `mono` binary and a `mono-sgen` binary. `mono` uses Boehm, while
`mono-sgen` uses the Simple Generational GC.
both a `mono` binary and a `mono-sgen` binary. `mono` uses Boehm,
while `mono-sgen` uses the Simple Generational GC.
* `--with-gc=[included, boehm, none]` - Selects the default Boehm garbage
collector engine to use.
* `--with-gc=[included, boehm, none]` - Selects the default Boehm
garbage collector engine to use.
* *included*: (*slighty modified Boehm GC*)
This is the default value for the Boehm GC, and it's
the most feature complete, it will allow Mono
to use typed allocations and support the debugger.
* *included*: (*slighty modified Boehm GC*) This is the default
value for the Boehm GC, and it's the most feature complete, it will
allow Mono to use typed allocations and support the debugger.
* *boehm*:
This is used to use a system-install Boehm GC,
it is useful to test new features available in
Boehm GC, but we do not recommend that people
use this, as it disables a few features.
* *boehm*: This is used to use a system-install Boehm GC, it is
useful to test new features available in Boehm GC, but we do not
recommend that people use this, as it disables a few features.
* *none*:
Disables the inclusion of a garbage collector.
@ -436,3 +447,54 @@ http://code.google.com/p/nativeclient/
* Currently this is used with Mono's AOT engine as
Native Client does not support JIT engines yet.
Working With Submodules
=======================
Mono references several external git submodules, for example
a fork of Microsoft's reference source code that has been altered
to be suitable for use with the Mono runtime.
This section describes how to use it.
An initial clone should be done recursively so all submodules will also be
cloned in a single pass:
$ git clone --recursive git@github.com:mono/mono
Once cloned, submodules can be updated to pull down the latest changes.
This can also be done after an initial non-recursive clone:
$ git submodule update --init --recursive
To pull external changes into a submodule:
$ cd <submodule>
$ git pull origin <branch>
$ cd <top-level>
$ git add <submodule>
$ git commit
By default, submodules are detached because they point to a specific commit.
Use `git checkout` to move back to a branch before making changes:
$ cd <submodule>
$ git checkout <branch>
# work as normal; the submodule is a normal repo
$ git commit/push new changes to the repo (submodule)
$ cd <top-level>
$ git add <submodule> # this will record the new commits to the submodule
$ git commit
To switch the repo of a submodule (this should not be a common or normal thing
to do at all), first edit `.gitmodules` to point to the new location, then:
$ git submodule sync -- <path of the submodule>
$ git submodule update --recursive
$ git checkout <desired new hash or branch>
The desired output diff is a change in `.gitmodules` to reflect the
change in the remote URL, and a change in /<submodule> where you see
the desired change in the commit hash.

View File

@ -1,227 +0,0 @@
#!/bin/bash -e
CURDIR="`pwd`"
MINGW=i386-mingw32msvc
CROSS_DIR=/opt/cross/$MINGW
EXTRA_CROSS_DIR=
INSTALL_DESTDIR="$CURDIR/mono-win32"
PROFILES="default net_2_0 net_3_5 net_4_0 net_4_5 moonlight"
TEMPORARY_PKG_CONFIG_DIR=/tmp/$RANDOM-pkg-config-$RANDOM
ORIGINAL_PATH="$PATH"
export CPPFLAGS_FOR_EGLIB CFLAGS_FOR_EGLIB CPPFLAGS_FOR_LIBGC CFLAGS_FOR_LIBGC
function cleanup ()
{
if [ -d "$TEMPORARY_PKG_CONFIG_DIR" ]; then
rm -rf "$TEMPORARY_PKG_CONFIG_DIR"
fi
}
function check_pkg_config_dir ()
{
local DIR="$1"
local DIR_PREFIX="$2"
if [ ! -d "$DIR" ]; then
return
fi
install -d -m 755 "$TEMPORARY_PKG_CONFIG_DIR"
for pc in "$DIR"/*.pc; do
if [ -f $pc ]; then
pcname="`basename $pc`"
sed -e "s;^prefix=.*;prefix=$DIR_PREFIX;g" < $pc > "$TEMPORARY_PKG_CONFIG_DIR"/$pcname
fi;
done
if [ -z "$CROSS_PKG_CONFIG_DIR" ]; then
CROSS_PKG_CONFIG_DIR="$TEMPORARY_PKG_CONFIG_DIR"
fi
}
function show_build_info ()
{
cat <<EOF
Installation prefix: $MONO_PREFIX
CPPFLAGS: ${CPPFLAGS:=not set}
LDFLAGS: ${LDFLAGS:=not set}
MONO_PATH: ${MONO_PATH:=not set}
EOF
}
function setup ()
{
local pcname
CROSS_BIN_DIR="$CROSS_DIR/bin"
CROSS_DLL_DIR="$CROSS_DIR/bin"
PATH=$CROSS_BIN_DIR:$PATH
MONO_VERSION=`grep AC_INIT configure.ac | cut -d ',' -f 2|tr -d '\[ \]'`
if [ -d ./.git ]; then
MONO_GIT_COMMIT="`git log -1 --format=format:%t`"
MONO_GIT_BRANCH="`git branch|grep '\*'|cut -d ' ' -f 2|tr -d '\)'|tr -d '\('`"
MONO_RELEASE="$MONO_VERSION-$MONO_GIT_BRANCH-$MONO_GIT_COMMIT"
else
MONO_RELEASE="$MONO_VERSION"
fi
MONO_PREFIX="$MONO_PREFIX/mono-$MONO_RELEASE"
NOCONFIGURE=yes
export NOCONFIGURE
check_pkg_config_dir "$CROSS_DIR/lib/pkgconfig" "$CROSS_DIR"
if [ -n "$EXTRA_CROSS_DIR" -a -d "$EXTRA_CROSS_DIR" ]; then
if [ -d "$EXTRA_CROSS_DIR/bin" ]; then
PATH="$EXTRA_CROSS_DIR/bin":$PATH
fi
check_pkg_config_dir "$EXTRA_CROSS_DIR/lib/pkgconfig" "$EXTRA_CROSS_DIR"
if [ -d "$EXTRA_CROSS_DIR/include" ]; then
if [ -z "$CPPFLAGS" ]; then
CPPFLAGS="-I \"$EXTRA_CROSS_DIR/include\""
else
CPPFLAGS="-I \"$EXTRA_CROSS_DIR/include\" $CFLAGS"
fi
fi
if [ -d "$EXTRA_CROSS_DIR/lib" ]; then
if [ -z "$LDFLAGS" ]; then
LDFLAGS="-I \"$EXTRA_CROSS_DIR/lib\""
else
LDFLAGS="-I \"$EXTRA_CROSS_DIR/lib\" $LDFLAGS"
fi
fi
if [ -d "$EXTRA_CROSS_DIR/share/aclocal" ]; then
if [ -z "$MONO_PATH" ]; then
MONO_PATH="\"$EXTRA_CROSS_DIR\""
else
MONO_PATH="\"$EXTRA_CROSS_DIR\":$MONO_PATH"
fi
fi
fi
export PATH MONO_PATH CPPFLAGS
show_build_info
}
function build ()
{
if [ -f ./Makefile ]; then
make distclean
fi
if [ -d ./autom4te.cache ]; then
rm -rf ./autom4te.cache
fi
if [ -f ./config.status ]; then
for f in `find -name config.status -type f`; do
rm $f
done
fi
./autogen.sh
BUILD="`./config.guess`"
if [ ! -d "$CURDIR/build-cross-windows" ]; then
mkdir "$CURDIR/build-cross-windows"
fi
cd "$CURDIR/build-cross-windows"
rm -rf *
../configure --prefix=$MONO_PREFIX --with-crosspkgdir=$CROSS_PKG_CONFIG_DIR --build=$BUILD --target=$MINGW --host=$MINGW --enable-parallel-mark --program-transform-name="" --with-tls=none --disable-mcs-build --disable-embed-check --enable-win32-dllmain=yes --with-libgc-threads=win32 --with-profile4=yes
make
cd "$CURDIR"
if [ ! -d "$CURDIR/build-cross-windows-mcs" ]; then
mkdir "$CURDIR/build-cross-windows-mcs"
fi
rm -rf autom4te.cache
unset PATH
PATH="$ORIGINAL_PATH"
export PATH
cd "$CURDIR/build-cross-windows-mcs"
rm -rf *
../configure --prefix=$MONO_PREFIX --enable-parallel-mark
make
}
function doinstall ()
{
if [ -d "$INSTALL_DIR" ]; then
rm -rf "$INSTALL_DIR"
fi
cd "$CURDIR/build-cross-windows"
make DESTDIR="$INSTALL_DESTDIR" USE_BATCH_FILES=yes install
if test -d $CURDIR/mcs; then
mcsdir=$CURDIR/mcs
else
mcsdir=$CURDIR/../mcs
fi
cd "$mcsdir/mcs"
for p in $PROFILES; do
make DESTDIR="$INSTALL_DESTDIR" PROFILE=$p install || echo "mcs profile $p installation failed"
done
cd "$mcsdir/class"
for p in $PROFILES; do
make DESTDIR="$INSTALL_DESTDIR" PROFILE=$p install || echo "class library profile $p installation failed"
done
cd "$mcsdir/tools"
for p in $PROFILES; do
make DESTDIR="$INSTALL_DESTDIR" PROFILE=$p install || echo "tools profile $p installation failed"
done
cd "$CURDIR/mono-win32"
rm -f "$CURDIR/mono-win32-$MONO_RELEASE".zip
zip -9r "$CURDIR/mono-win32-$MONO_RELEASE".zip .
}
function usage ()
{
cat <<EOF
Usage: build-mingw32.sh [OPTIONS]
where OPTIONS are:
-d DIR Sets the location of directory where MINGW is installed [$CROSS_DIR]
-e DIR Sets the location of directory where additional cross develoment packages are installed [${EXTRA_CROSS_DIR:=none}]
-m MINGW Sets the MINGW target name to be passed to configure [$MINGW]
-p PREFIX Prefix at which Mono is to be installed. Build will append the 'mono-X.Y' string to that path
EOF
exit 1
}
trap cleanup 0
pushd . > /dev/null
while getopts "d:m:e:p:" opt; do
case "$opt" in
d) CROSS_DIR="$OPTARG" ;;
m) MINGW="$OPTARG" ;;
e) EXTRA_CROSS_DIR="$OPTARG" ;;
p) MONO_PREFIX="$OPTARG" ;;
*) usage ;;
esac
done
setup
build
doinstall
show_build_info
popd > /dev/null

View File

@ -121,7 +121,7 @@
/* Extension module enabled */
#undef ENABLE_EXTENSION_MODULE
/* Gsharing */
/* Gsharedvt */
#undef ENABLE_GSHAREDVT
/* Icall export enabled */
@ -181,6 +181,9 @@
/* Define to 1 if you have the <CommonCrypto/CommonDigest.h> header file. */
#undef HAVE_COMMONCRYPTO_COMMONDIGEST_H
/* Define to 1 if you have the <complex.h> header file. */
#undef HAVE_COMPLEX_H
/* Define to 1 if you have the `confstr' function. */
#undef HAVE_CONFSTR
@ -287,15 +290,6 @@
/* Define to 1 if you have the `futimes' function. */
#undef HAVE_FUTIMES
/* GC requires thread registration */
#undef HAVE_GC_ALLOW_REGISTER_THREADS
/* Define to 1 if you have the <gc/gc.h> header file. */
#undef HAVE_GC_GC_H
/* Define to 1 if you have the <gc.h> header file. */
#undef HAVE_GC_H
/* Have getaddrinfo */
#undef HAVE_GETADDRINFO
@ -380,7 +374,7 @@
/* Have inet_ntop */
#undef HAVE_INET_NTOP
/* Define to 1 if you have the `inet_pton' function. */
/* Have inet_pton */
#undef HAVE_INET_PTON
/* Define to 1 if you have the <inttypes.h> header file. */
@ -521,6 +515,9 @@
/* Define to 1 if you have the `posix_madvise' function. */
#undef HAVE_POSIX_MADVISE
/* Define to 1 if you have the `prctl' function. */
#undef HAVE_PRCTL
/* Define to 1 if you have the `preadv' function. */
#undef HAVE_PREADV
@ -755,6 +752,9 @@
/* Define to 1 if you have the <syslog.h> header file. */
#undef HAVE_SYSLOG_H
/* Define to 1 if you have the `system' function. */
#undef HAVE_SYSTEM
/* Define to 1 if you have the <sys/auxv.h> header file. */
#undef HAVE_SYS_AUXV_H
@ -794,6 +794,9 @@
/* Define to 1 if you have the <sys/poll.h> header file. */
#undef HAVE_SYS_POLL_H
/* Define to 1 if you have the <sys/prctl.h> header file. */
#undef HAVE_SYS_PRCTL_H
/* Define to 1 if you have the <sys/resource.h> header file. */
#undef HAVE_SYS_RESOURCE_H
@ -942,9 +945,6 @@
*/
#undef LT_OBJDIR
/* Cross-compiling using MinGW */
#undef MINGW_CROSS_COMPILE
/* Enable the allocation and indexing of arrays greater than Int32.MaxValue */
#undef MONO_BIG_ARRAYS
@ -1059,6 +1059,9 @@
/* ... */
#undef TARGET_PS3
/* ... */
#undef TARGET_PS4
/* ... */
#undef TARGET_S390X
@ -1068,7 +1071,7 @@
/* ... */
#undef TARGET_SPARC64
/* Target OS is Win32/MinGW */
/* Target Platform is Win32 */
#undef TARGET_WIN32
/* ... */
@ -1077,6 +1080,9 @@
/* ... */
#undef TARGET_XBOX360
/* Enable cooperative stop-the-world garbage collection. */
#undef USE_COOP_GC
/* ... */
#undef USE_GCC_ATOMIC_OPS

View File

@ -1 +1 @@
94ef65996a186293ae651e688580672f8de4b880
2c2c33e9b3b238b9af81df41107a0b6b0127ed10

View File

@ -1 +1 @@
6e1f9bd8a55b889798c88191650b5752d2b58e3b
fa754128cfe42ebd98f8fc68209473d8cc272fc0

View File

@ -31,7 +31,7 @@ class StringPrinter:
while i < len:
val = (chars.cast(gdb.lookup_type ("gint64")) + (i * 2)).cast(gdb.lookup_type ("gunichar2").pointer ()).dereference ()
if val >= 256:
c = "\u%X".format (val)
c = unichr (val)
else:
c = chr (val)
res.append (c)

View File

@ -21,21 +21,8 @@ provider mono {
probe gc__requested (int generation, uintptr_t requested_size, int wait_to_finish);
probe gc__checkpoint__1 (int generation);
probe gc__checkpoint__2 (int generation);
probe gc__checkpoint__3 (int generation);
probe gc__checkpoint__4 (int generation);
probe gc__checkpoint__5 (int generation);
probe gc__checkpoint__6 (int generation);
probe gc__checkpoint__7 (int generation);
probe gc__checkpoint__8 (int generation);
probe gc__checkpoint__9 (int generation);
probe gc__concurrent__start__begin (int generation);
probe gc__concurrent__start__end (int generation, long long num_major_objects_marked);
probe gc__concurrent__update__finish__begin (int generation, long long num_major_objects_marked);
probe gc__concurrent__update__end (int generation, long long num_major_objects_marked);
probe gc__concurrent__finish__end (int generation, long long num_major_objects_marked);
probe gc__sweep__begin (int generation, int full_sweep);
probe gc__sweep__end (int generation, int full_sweep);
@ -45,19 +32,12 @@ provider mono {
probe gc__world__restart__begin (int generation);
probe gc__world__restart__end (int generation);
probe gc__heap__alloc (uintptr_t addr, uintptr_t len);
probe gc__heap__free (uintptr_t addr, uintptr_t len);
probe gc__locked ();
probe gc__unlocked ();
probe gc__nursery__tlab__alloc (uintptr_t addr, uintptr_t len);
probe gc__nursery__obj__alloc (uintptr_t addr, uintptr_t size, char *ns_name, char *class_name);
probe gc__major__obj__alloc__large (uintptr_t addr, uintptr_t size, char *ns_name, char *class_name);
probe gc__major__obj__alloc__pinned (uintptr_t addr, uintptr_t size, char *ns_name, char *class_name);
probe gc__major__obj__alloc__degraded (uintptr_t addr, uintptr_t size, char *ns_name, char *class_name);
probe gc__major__obj__alloc__mature (uintptr_t addr, uintptr_t size, char *ns_name, char *class_name);
/* Can be nursery->nursery, nursery->major or major->major */
probe gc__obj__moved (uintptr_t dest, uintptr_t src, int dest_gen, int src_gen, uintptr_t size, char *ns_name, char *class_name);
@ -70,13 +50,10 @@ provider mono {
probe gc__finalize__enqueue (uintptr_t addr, uintptr_t size, char *ns_name, char *class_name, int generation, int is_critical);
probe gc__finalize__invoke (uintptr_t addr, uintptr_t size, char *ns_name, char *class_name);
probe gc__weak__update (uintptr_t ref_addr, uintptr_t old_addr, uintptr_t new_addr, uintptr_t size, char *ns_name, char *class_name, int track);
probe gc__weak__update (uintptr_t ref_addr, uintptr_t new_addr, uintptr_t size, char *ns_name, char *class_name, int track);
probe gc__global__remset__add (uintptr_t ref_addr, uintptr_t obj_addr, uintptr_t size, char *ns_name, char *class_name);
probe gc__obj__cemented (uintptr_t addr, uintptr_t size, char *ns_name, char *class_name);
probe gc__internal__alloc (uintptr_t addr, uintptr_t size, int type);
probe gc__internal__dealloc (uintptr_t add, uintptr_t size, int type);
};
#pragma D attributes Evolving/Evolving/Common provider mono provider

View File

@ -13,11 +13,14 @@
<section name="startup" type="System.Configuration.IgnoreSection, System.Configuration, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" allowLocation="false"/>
<section name="system.codedom" type="System.CodeDom.Compiler.CodeDomConfigurationHandler, System, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" />
<section name="system.data" type="System.Data.Common.DbProviderFactoriesConfigurationHandler, System.Data, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" />
<section name="system.diagnostics" type="System.Diagnostics.DiagnosticsConfigurationHandler, System, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" />
<section name="system.diagnostics" type="System.Diagnostics.SystemDiagnosticsSection, System, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" />
<section name="system.runtime.remoting" type="System.Configuration.IgnoreSection, System.Configuration, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" allowLocation="false"/>
<section name="system.windows.forms" type="System.Windows.Forms.WindowsFormsSection, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" />
<section name="windows" type="System.Configuration.IgnoreSection, System.Configuration, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" allowLocation="false" />
<section name="strongNames" type="System.Configuration.IgnoreSection, System.Configuration, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" allowLocation="false"/>
<sectionGroup name="system.runtime.serialization" type="System.Runtime.Serialization.Configuration.SerializationSectionGroup, System.Runtime.Serialization, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<section name="dataContractSerializer" type="System.Runtime.Serialization.Configuration.DataContractSerializerSection, System.Runtime.Serialization, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089"/>
</sectionGroup>
<sectionGroup name="system.web" type="System.Web.Configuration.SystemWebSectionGroup, System.Web, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
<section name="anonymousIdentification" type="System.Web.Configuration.AnonymousIdentificationSection, System.Web, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" allowDefinition="MachineToApplication"/>
<section name="authentication" type="System.Web.Configuration.AuthenticationSection, System.Web, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" allowDefinition="MachineToApplication"/>

View File

@ -14,7 +14,6 @@ ASSEMBLED_DOCS = \
EXTRA_DIST = \
abc-removal.txt \
api-style.css \
assembly-bundle \
check-exports \
check-coverage \
convert.cs \
@ -23,7 +22,6 @@ EXTRA_DIST = \
docs.make \
documented \
embedded-api \
exceptions \
exdoc \
file-share-modes \
gc-issues \
@ -35,33 +33,25 @@ EXTRA_DIST = \
jit-imt \
jit-thoughts \
jit-trampolines \
local-regalloc.txt \
magic.diff \
mini-doc.txt \
mono-api-metadata.html \
mono-file-formats.config\
mono-file-formats.source\
mono_handle_d \
mono-tools.config \
mono-tools.source \
monoapi.source \
new-regalloc \
object-layout \
opcode-decomp.txt \
precise-gc \
produce-lists \
public \
public-api \
README \
release-notes-1.0.html \
remoting \
ssapre.txt \
stack-alignment \
stack-overflow.txt \
threading \
toc.xml \
TODO \
tree-mover.txt \
unmanaged-calls
dist-hook:

View File

@ -370,7 +370,6 @@ ASSEMBLED_DOCS = \
EXTRA_DIST = \
abc-removal.txt \
api-style.css \
assembly-bundle \
check-exports \
check-coverage \
convert.cs \
@ -379,7 +378,6 @@ EXTRA_DIST = \
docs.make \
documented \
embedded-api \
exceptions \
exdoc \
file-share-modes \
gc-issues \
@ -391,33 +389,25 @@ EXTRA_DIST = \
jit-imt \
jit-thoughts \
jit-trampolines \
local-regalloc.txt \
magic.diff \
mini-doc.txt \
mono-api-metadata.html \
mono-file-formats.config\
mono-file-formats.source\
mono_handle_d \
mono-tools.config \
mono-tools.source \
monoapi.source \
new-regalloc \
object-layout \
opcode-decomp.txt \
precise-gc \
produce-lists \
public \
public-api \
README \
release-notes-1.0.html \
remoting \
ssapre.txt \
stack-alignment \
stack-overflow.txt \
threading \
toc.xml \
TODO \
tree-mover.txt \
unmanaged-calls
TOOL_MAKE = $(MAKE) -f $(srcdir)/docs.make topdir=$(srcdir)/../mcs srcdir=$(srcdir)

View File

@ -1,57 +0,0 @@
HOWTO bundle assemblies inside the mono runtime.
Paolo Molaro (lupus@ximian.com)
* Intent
Bundling assemblies inside the mono runtime may be useful for a number
of reasons:
* creating a standalone complete runtime that can be more easily
distributed
* having an application run against a known set of assemblies
that has been tested
Of course, there are drawbacks, too: if there has been fixes
to the assemblies, replacing them means recompiling the
runtime as well and if there are other mono apps, unless they
use the same mono binary, there will be less opportunities for
the operating system to optimize memory usage. So use this
feature only when really needed.
* Creating the Bundle
To bundle a set of assemblies, you need to create a file that
lists the assembly names and the relative files. Empty lines
and lines starting with # are ignored:
== cut cut ==
# Sample bundle template
mscorlib: /path/to/mscorlib/assembly.dll
myapp: /path/to/myapp.exe
== cut cut ==
Next you need to build the mono runtime using a special configure option:
./configure --with-bundle=/path/to/bundle/template
The path to the template should be an absolute path.
The script metadata/make-bundle.pl will take the specifie
assemblies and embed them inside the runtime where the loading
routines can find them before searching for them on disk.
* Open Issues
There are still two issues to solve:
* config files: sometimes they are needed but they are
not yet bundled inside the library ()
* building with the included libgc makes it not
possible to build a mono binary statically linked to
libmono: this needs to be fixed to make bundles
really useful.

View File

@ -292,7 +292,6 @@ mono_free_method
mono_free_verify_list
mono_gc_collect
mono_gc_collection_count
mono_gc_enable_events
mono_gc_get_generation
mono_gc_get_heap_size
mono_gc_get_used_size
@ -301,9 +300,7 @@ mono_gchandle_get_target
mono_gchandle_new
mono_gchandle_new_weakref
mono_gc_invoke_finalizers
mono_gc_is_finalizer_thread
mono_gc_max_generation
mono_gc_out_of_memory
mono_gc_wbarrier_arrayref_copy
mono_gc_wbarrier_generic_nostore
mono_gc_wbarrier_generic_store
@ -604,7 +601,6 @@ mono_object_get_class
mono_object_get_domain
mono_object_get_size
mono_object_get_virtual_method
mono_object_is_alive
mono_object_isinst
mono_object_isinst_mbyref
mono_object_new

View File

@ -476,33 +476,6 @@ mono_loader_lock (void)
<div class="prototype">Prototype: mono_gc_enable</div>
<p />
</div> <a name="api:mono_gc_is_finalizer_thread"></a>
<div class="api">
<div class="api-entry">mono_gc_is_finalizer_thread</div>
<div class="prototype">gboolean
mono_gc_is_finalizer_thread (MonoThread *thread)
</div>
<p />
<b>Parameters</b>
<blockquote><dt><i>thread:</i></dt><dd> the thread to test.</dd></blockquote>
<b>Remarks</b>
<p />
In Mono objects are finalized asynchronously on a separate thread.
This routine tests whether the <i>thread</i> argument represents the
finalization thread.
<p />
Returns true if <i>thread</i> is the finalization thread.
</div> <a name="api:mono_gc_out_of_memory"></a>
<div class="api">
<div class="api-entry">mono_gc_out_of_memory</div>
<div class="prototype">Prototype: mono_gc_out_of_memory</div>
<p />
</div> <a name="api:mono_gc_start_world"></a>
<div class="api">
<div class="api-entry">mono_gc_start_world</div>
@ -524,13 +497,6 @@ mono_gc_is_finalizer_thread (MonoThread *thread)
<div class="prototype">Prototype: mono_gc_alloc_fixed</div>
<p />
</div> <a name="api:mono_gc_enable_events"></a>
<div class="api">
<div class="api-entry">mono_gc_enable_events</div>
<div class="prototype">Prototype: mono_gc_enable_events</div>
<p />
</div> <a name="api:mono_gc_free_fixed"></a>
<div class="api">
<div class="api-entry">mono_gc_free_fixed</div>

View File

@ -111,7 +111,7 @@ mono_print_method_from_ip (void *ip)
This prints the name of the method at address <i>ip</i> in the standard
output. Unlike mono_pmip which returns a string, this routine
prints the value on the standard output.
prints the value on the standard output.
</div> <a name="api:mono_print_thread_dump"></a>
<div class="api">

View File

@ -108,7 +108,6 @@ MonoObject* <a href="#api:mono_object_isinst">mono_object_isinst</a>
gpointer <a href="#api:mono_object_unbox">mono_object_unbox</a> (MonoObject *obj);
MonoObject* <a href="#api:mono_object_castclass_mbyref">mono_object_castclass_mbyref</a> (MonoObject *obj,
MonoClass *klass);
<a href="#api:mono_object_is_alive"></a>
guint <a href="#api:mono_object_get_size">mono_object_get_size</a> (MonoObject* o);
MonoObject* <a href="#api:mono_value_box">mono_value_box</a> (MonoDomain *domain,
MonoClass *class,
@ -423,13 +422,6 @@ mono_object_castclass_mbyref (MonoObject *obj, MonoClass *klass)
<blockquote> <i>obj</i> if <i>obj</i> is derived from <i>klass</i>, throws an exception otherwise
</blockquote>
</div> <a name="api:mono_object_is_alive"></a>
<div class="api">
<div class="api-entry">mono_object_is_alive</div>
<div class="prototype">Prototype: mono_object_is_alive</div>
<p />
</div> <a name="api:mono_object_get_size"></a>
<div class="api">
<div class="api-entry">mono_object_get_size</div>

View File

@ -269,12 +269,9 @@ mono_gc_weak_link_get
mono_gc_weak_link_remove
mono_gc_disable
mono_gc_enable
mono_gc_is_finalizer_thread
mono_gc_out_of_memory
mono_gc_start_world
mono_gc_stop_world
mono_gc_alloc_fixed
mono_gc_enable_events
mono_gc_free_fixed
mono_gc_make_descr_from_bitmap
mono_gc_base_init
@ -526,7 +523,6 @@ mono_object_isinst
mono_object_register_finalizer
mono_object_unbox
mono_object_castclass_mbyref
mono_object_is_alive
mono_object_get_size
mono_value_box
mono_value_copy

View File

@ -1,110 +0,0 @@
Exception Implementation in the Mono Runtime
Dietmar Maurer (dietmar@ximian.com)
(C) 2001 Ximian, Inc.
Exception implementation (jit):
===============================
Stack unwinding:
================
We record the code address (start_address, size) of all methods. That way it is
possible to map an instruction pointer (IP) to the method information needed
for unwinding the stack:
We also save a Last Managed Frame (LMF) structure at each call from managed to
unmanaged code. That way we can recover from exceptions inside unmanaged code.
void handle_exception ((struct sigcontext *ctx, gpointer obj)
{
if (ctx->bp < mono_end_of_stack) {
/* unhandled exception */
abort ();
}
info = mono_jit_info_table_find (mono_jit_info_table, ctx->ip);
if (info) { // we are inside managed code
if (ch = find_catch_handler ())
execute_catch_handler (ch, ctx, obj);
execute_all_finally_handler ();
// restore register, including IP and Frame pointer
ctx = restore_caller_saved_registers_from_ctx (ji, ctx);
// continue unwinding
handle_exception (ctx, obj);
} else {
lmf = get_last_managed_frame ();
// restore register, including IP and Frame pointer
ctx = restore_caller_saved_registers_from_lmf (ji, lmf);
// continue unwinding
handle_exception (ctx, obj);
}
}
Code generation:
================
leave: is simply translated into a branch to the target. If the leave
instruction is inside a finally block (but not inside another handler)
we call the finally handler before we branch to the target.
finally/endfinally, filter/endfilter: is translated into subroutine ending with
a "return" statement. The subroutine does not save EBP, because we need access
to the local variables of the enclosing method. Its is possible that
instructions inside those handlers modify the stack pointer, thus we save the
stack pointer at the start of the handler, and restore it at the end. We have
to use a "call" instruction to execute such finally handlers. This makes it
also possible to execute them inside the stack unwinding code. The exception
object for filters is passed in a local variable (cfg->exvar).
throw: we first save all regs into a sigcontext struct and then call the stack
unwinding code.
catch handler: catch hanlders are always called from the stack unwinding
code. The exception object is passed in a local variable (cfg->exvar).
gcc support for Exceptions
==========================
gcc supports exceptions in files compiled with the -fexception option. gcc
generates DWARF exceptions tables in that case, so it is possible to unwind the
stack. The method to read those exception tables is contained in libgcc.a, and
in newer versions of glibc (glibc 2.2.5 for example), and it is called
__frame_state_for(). Another usable glibc function is backtrace_symbols() which
returns the function name corresponding to a code address.
We dynamically check if those features are available using g_module_symbol(),
and we use them only when available. If not available we use the LMF as
fallback.
Using gcc exception information prevents us from saving the LMF at each native
call, so this is a way to speed up native calls. This is especially valuable
for internal calls, because we can make sure that all internal calls are
compiled with -fexceptions (we compile the whole mono runtime with that
option).
All native function are able to call function without exception tables, and so
we are unable to restore all caller saved registers if an exception is raised
in such function. Well, its possible if the previous function already saves all
registers. So we only omit the the LMF if a function has an exception table
able to restore all caller saved registers.
One problem is that gcc almost never saves all caller saved registers, because
it is just unnecessary in normal situations. But there is a trick forcing gcc
to save all register, we just need to call __builtin_unwind_init() at the
beginning of a function. That way gcc generates code to save all caller saved
register on the stack.

View File

@ -1,208 +0,0 @@
* Proposal for the local register allocator
The local register allocator deals with allocating registers
for temporaries inside a single basic block, while the global
register allocator is concerned with method-wide allocation of
variables.
The global register allocator uses callee-saved register for it's
purpouse so that there is no need to save and restore these registers
at call sites.
There are a number of issues the local allocator needs to deal with:
*) some instructions expect operands in specific registers (for example
the shl instruction on x86, or the call instruction with thiscall
convention, or the equivalent call instructions on other architectures,
such as the need to put output registers in %oX on sparc)
*) some instructions deliver results only in specific registers (for example
the div instruction on x86, or the call instructionson on almost all
the architectures).
*) it needs to know what registers may be clobbered by an instruction
(such as in a method call)
*) it should avoid excessive reloads or stores to improve performance
While which specific instructions have limitations is architecture-dependent,
the problem shold be solved in an arch-independent way to reduce code duplication.
The register allocator will be 'driven' by the arch-dependent code, but it's
implementation should be arch-independent.
To improve the current local register allocator, we need to
keep more state in it than the current setup that only keeps busy/free info.
Possible state information is:
free: the resgister is free to use and it doesn't contain useful info
freeable: the register contains data loaded from a local (there is
also info about _which_ local it contains) as a result from previous
instructions (like, there was a store from the register to the local)
moveable: it contains live data that is needed in a following instruction, but
the contents may be moved to a different register
busy: the register contains live data and it is placed there because
the following instructions need it exactly in that register
allocated: the register is used by the global allocator
The local register allocator will have the following interfaces:
int get_register ();
Searches for a register in the free state. If it doesn't find it,
searches for a freeable register. Sets the status to moveable.
Looking for a 'free' register before a freeable one should allow for
removing a few redundant loads (though I'm still unsure if such
things should be delegated entirely to the peephole pass).
int get_register_force (int reg);
Returns 'reg' if it is free or freeable. If it is moveable, it moves it
to another free or freeable register.
Sets the status of 'reg' to busy.
void set_register_freeable (int reg);
Sets the status of 'reg' to freeable.
void set_register_free (int reg);
Sets the status of 'reg' to free.
void will_clobber (int reg);
Spills the register to the stack. Sets the status to freeable.
After the clobbering has occurred, set the status to free.
void register_unspill (int reg);
Un-spills register reg and sets the status to moveable.
FIXME: how is the 'local' information represented? Maybe a MonoInst* pointer.
Note: the register allocator will insert instructions in the basic block
during it's operation.
* Examples
Given the tree (on x86 the right argument to shl needs to be in ecx):
store (local1, shl (local1, call (some_arg)))
At the start of the basic block, the registers are set to the free state.
The sequence of instructions may be:
instruction register status -> [%eax %ecx %edx]
start free free free
eax = load local1 mov free free
/* call clobbers eax, ecx, edx */
spill eax free free free
call mov free free
/* now eax contains the right operand of the shl */
mov %eax -> %ecx free busy free
un-spill mov busy free
shl %cl, %eax mov free free
The resulting x86 code is:
mov $fffc(%ebp), %eax
mov %eax, $fff0(%ebp)
push some_arg
call func
mov %eax, %ecx
mov $fff0(%ebp), %eax
shl %cl, %eax
Note that since shl could operate directly on memory, we could have:
push some_arg
call func
mov %eax, %ecx
shl %cl, $fffc(%ebp)
The above example with loading the operand in a register is just to complicate
the example and show that the algorithm should be able to handle it.
Let's take another example with the this-call call convention (the first argument
is passed in %ecx).
In this case, will_clobber() will be called only on %eax and %edx, while %ecx
will be allocated with get_register_force ().
Note: when a register is allocated with get_register_force(), it should be set
to a different state as soon as possible.
store (local1, shl (local1, this-call (local1)))
instruction register status -> [%eax %ecx %edx]
start free free free
eax = load local1 mov free free
/* force load in %ecx */
ecx = load local1 mov busy free
spill eax free busy free
call mov free free
/* now eax contains the right operand of the shl */
mov %eax -> %ecx free busy free
un-spill mov busy free
shl %cl, %eax mov free free
What happens when a register that we need to allocate with get_register_force ()
contains an operand for the next instruction?
instruction register status -> [%eax %ecx %edx]
eax = load local0 mov free free
ecx = load local1 mov mov free
get_register_force (ecx) here.
We have two options:
mov %ecx, %edx
or:
spill %ecx
The first option is way better (and allows the peephole pass to
just load the value in %edx directly, instead of loading first to %ecx).
This doesn't work, though, if the instruction clobbers the %edx register
(like in a this-call). So, we first need to clobber the registers
(so the state of %ecx changes to freebale and there is no issue
with get_register_force ()).
What if an instruction both clobbers a register and requires it as
an operand? Lets' take the x86 idiv instruction as an example: it
requires the dividend in edx:eax and returns the result in eax,
with the modulus in edx.
store (local1, div (local1, local2))
instruction register status -> [%eax %ecx %edx]
eax = load local0 mov free free
will_clobber eax, edx free mov free
force mov %ecx, %eax busy free free
set %edx busy free busy
idiv mov free free
Note: edx is set to free after idiv, because the modulus is not needed
(if it was a rem, eax would have been freed).
If we load the divisor before will_clobber(), we'll have to spill
eax and reload it later. If we load it just after the idiv, there is no issue.
In any case, the algorithm should give the correct results and allow the operation.
Working recursively on the isntructions there shouldn't be huge issues
with this algorithm (though, of course, it's not optimal and it may
introduce excessive spills or register moves). The advantage over the current
local reg allocator is that:
1) the number of spills/moves would be smaller anyway
2) a separate peephole pass could be able to eliminate reg moves
3) we'll be able to remove the 'forced' spills we currently do with
the return value of method calls
* Issues
How to best integrate such a reg allocator with the burg stuff.
Think about a call os sparc with two arguments: they got into %o0 and %o1
and each of them sets the register as busy. But what if the values to put there
are themselves the result of a call? %o0 is no problem, but for all the
next argument n the above algorithm would spill all the 0...n-1 registers...
* Papers
More complex solutions to the local register allocator problem:
http://dimacs.rutgers.edu/TechnicalReports/abstracts/1997/97-33.html
Combining register allocation and instruction scheduling:
http://citeseer.nj.nec.com/motwani95combining.html
More on LRA euristics:
http://citeseer.nj.nec.com/liberatore97hardness.html
Linear-time optimal code scheduling for delayedload architectures
http://www.cs.wisc.edu/~fischer/cs701.f01/inst.sched.ps.gz
Precise Register Allocation for Irregular Architectures
http://citeseer.nj.nec.com/kong98precise.html
Allocate registers first to subtrees that need more of them.
http://www.upb.de/cs/ag-kastens/compii/folien/comment401-409.2.pdf

View File

@ -1,15 +0,0 @@
This is a patch that can be applied to the magic file used by file(1) to
recognize mono assemblies.
Apply it to the magic file (usually in /usr/share/file/magic or
/usr/share/misc/magic) and recompile it with file -C.
--- magic.old 2006-03-24 21:12:25.000000000 +0100
+++ magic 2006-03-24 21:12:17.000000000 +0100
@@ -7205,6 +7205,7 @@
>>>>(0x3c.l+4) leshort 0x290 PA-RISC
>>>>(0x3c.l+22) leshort&0x0100 >0 32-bit
>>>>(0x3c.l+22) leshort&0x1000 >0 system file
+>>>>(0x3c.l+232) lelong >0 Mono/.Net assembly
>>>>(0x3c.l+0xf8) string UPX0 \b, UPX compressed
>>>>(0x3c.l+0xf8) search/0x140 PEC2 \b, PECompact2 compressed

View File

@ -1,98 +0,0 @@
=pod
=head1 Internal design document for the mono_handle_d
This document is designed to hold the design of the mono_handle_d and
not as an api reference.
=head2 Primary goal and purpose
The mono_handle_d is a process which takes care of the (de)allocation
of scratch shared memory and handles (of files, threads, mutexes,
sockets etc. see L<WapiHandleType>) and refcounts of the
filehandles. It is designed to be run by a user and to be fast, thus
minimal error checking on input is done and will most likely crash if
given a faulty package. No effort has been, or should be, made to have
the daemon talking to machine of different endianness/size of int.
=head2 How to start the daemon
To start the daemon you either run the mono_handle_d executable or try
to attach to the shared memory segment via L<_wapi_shm_attach> which
will start a daemon if one does not exist.
=head1 Internal details
The daemon works by opening a socket and listening to clients. These
clients send packages over the socket complying to L<struct
WapiHandleRequest>.
=head2 Possible requests
=over
=item WapiHandleRequest_New
Find a handle in the shared memory segment that is free and allocate
it to the specified type. To destroy use
L</WapiHandleRequest_Close>. A L<WapiHandleResponse> with
.type=WapiHandleResponseType_New will be sent back with .u.new.handle
set to the handle that was allocated. .u.new.type is the type that was
requested.
=item WapiHandleRequestType_Open
Increase the ref count of an already created handle. A
L<WapiHandleResponse> with .type=WapiHandleResponseType_Open will be sent
back with .u.new.handle set to the handle, .u.new.type is set to the
type of handle this is.
=item WapiHandleRequestType_Close
Decrease the ref count of an already created handle. A
L<WapiHandleResponse> with .type=WapiHandleResponseType_Close will be
sent back with .u.close.destroy set to TRUE if ref count for this
client reached 0.
=item WapiHandleRequestType_Scratch
Allocate a shared memory area of size .u.scratch.length in bytes. A
L<WapiHandleResponse> with .type=WapiHandleResponseType_Scratch will be
sent back with .u.scratch.idx set to the index into the shared
memory's scratch area where to memory begins. (works just like
malloc(3))
=item WapiHandleRequestType_Scratch
Deallocate a shared memory area, this must have been allocated before
deallocating. A L<WapiHandleResponse> with
.type=WapiHandleResponseType_ScratchFree will be sent back (works just
like free(3))
=back
=head1 Why a daemon
From an email:
Dennis: I just have one question about the daemon... Why does it
exist? Isn't it better performancewise to just protect the shared area
with a mutex when allocation a new handle/shared mem segment or
changing refcnt? It will however be a less resilient to clients that
crash (the deamon cleans up ref'd handles if socket closes)
Dick: It's precisely because with a mutex the shared memory segment
can be left in a locked state. Also, it's not so easy to clean up
shared memory without it (you can't just mark it deleted when creating
it, because you can't attach any more readers to the same segment
after that). I did some minimal performance testing, and I don't
think the daemon is particularly slow.
=head1 Authors
Documentaion: Dennis Haney
Implementation: Dick Porter
=cut

View File

@ -1,68 +0,0 @@
We need to switch to a new register allocator.
The current one is split in a global and a local register allocator.
The global one can assign only callee-saves registers and happens
on the tree-based internal representation: it assigns local variables
to hardware registers.
The local one happens on the linear representation on a per basic
block basis and assigns hard registers to virtual registers (which
hold temporary values during expression executions) and it deals also
with the platform-specific issues (fixed registers, call conventions).
Moving to a different register will help solve some of the performance
issues introduced by the above split, make the register more easily
portable and solve some of the issues generated by dealing with trees.
The general design ideas are below.
The new allocator should have a global view of all the method, so it can be
able to assign variables also to some of the volatile registers if possible,
even across basic blocks (this would improve performance).
The allocator would be driven by per-arch declarative data, so porting
should be easier: an architecture needs to specify register classes,
call convention and instructions requirements (similar to the gcc code).
The allocator should operate on the linear representation, this way it's
easier and faster to track usages more correctly. We need to assign virtual
registers on a per-method basis instead of per basic block. We can assign
virtual registers to variables, too. Note that since we fix the stack offset
of local vars only after this step (which happens after the burg rules are run),
some of the burg rules that try to optimize the code won't apply anymore:
the peephole code may need to be enhanced to do the optimizations instead.
We need to handle floating point registers in the global allocator, too.
The new allocator also needs to keep track precisely of which registers
contain references or managed pointers to allow us to move to a precise GC.
It may be worth to use a single increasing set of integers for the virtual
registers, with the class of the register stored separately (unless the
current local allocator which keeps interger and fp registers separate).
Since this is a large task, we need to do it in steps as much as possible.
The first is to run the register allocator _after_ the burg rules: this
requires a rewrite of the liveness code, too, to use linear indexes instead
of basic-block/tree number combinations. This can be done by:
*) allocating virtual regs to all the locals that can be register allocated
*) running the burg rules (some may require adjustments): the local virtual
registers are assigned starting from global-virt-regs+1, instead of the current
hardware-regs+1, so we can tell apart global and local virt regs.
*) running the liveness/whatever code is needed to allocate the global registers
*) allocate the rest of the local variables to stack slots
*) continue with the current local allocator
This work could take 2-3 weeks.
The next step is to define the kind of declarative data an architecture needs
and assigning virtual regs to all the registers and making the allocator
assign from the volatile registers, too.
Note that some of the code that is currently emitted in the arch-specific
code, will need to be emitted as instructions that the reg allocator
can inspect: think of a method that returns the first argument which is
received in a register: the current code copies it to either a local slot or
to a global reg in the prolog an copies it back to the return register
int he basic block, but since neither the regallocator nor the peephole code
knows about the prolog code, the first store cannot be optimized away.
The gcc code has some example of how to specify register classes in a
declarative way.

View File

@ -1,113 +0,0 @@
* How to handle complex IL opcodes in an arch-independent way
Many IL opcodes are very simple: add, ldind etc.
Such opcodes can be implemented with a single cpu instruction
in most architectures (on some, a group of IL instructions
can be converted to a single cpu op).
There are many IL opcodes, though, that are more complex, but
can be expressed as a series of trees or a single tree of
simple operations. Such simple operations are architecture-independent.
It makes sense to decompose such complex IL instructions in their
simpler equivalent so that we gain in several ways:
*) porting effort is easier, because only the simple instructions
need to be implemented in arch-specific code
*) we could apply BURG rules to the trees and do pattern matching
on them to optimize the expressions according to the host cpu
The issue is: where do we do such conversion from coarse opcodes to
simple expressions?
* Doing the conversion in method_to_ir ()
Some of these conversions can certainly be done in method_to_ir (),
but it's not always easy to decide which are better done there and
which in a different pass.
For example, let's take ldlen: in the mono implementation, ldlen
can be simply implemented with a load from a fixed position in the
array object:
len = [reg + maxlen_offset]
However, ldlen carries also semantics information: the result is the
length of the array, and since in the CLR arrays are of fixed size,
this information can be useful to later do bounds check removal.
If we convert this opcode in method_to_ir () we lost some useful
information for further optimizations.
In some other ways, decomposing an opcode in method_to_ir() may
allow for better optimizations later on (need to come up with an
example here ...).
* Doing the conversion in inssel.brg
Some conversion may be done inside the burg rules: this has the
disadvantage that the instruction selector is not run again on
the resulting expression tree and we could miss some optimization
(this is what effectively happens with the coarse opcodes in the old
jit). This may also interfere with an efficient local register allocator.
It may be possible to add an extension in monoburg that allows a rule
such as:
recheck: LDLEN (reg) {
create an expression tree representing LDLEN
and return it
}
When the monoburg label process gets back a recheck, it will run
the labeling again on the resulting expression tree.
If this is possible at all (and in an efficient way) is a
question for dietmar:-)
It should be noted, though, that this may not always work, since
some complex IL opcodes may require a series of expression trees
and handling such cases in monoburg could become quite hairy.
For example, think of opcode that need to do multiple actions on the
same object: this basically means a DUP...
On the other end, if a complex opcode needs a DUP, monoburg doesn't
actually need to create trees if it emits the instructions in
the correct sequence and maintains the right values in the registers
(usually the values that need a DUP are not changed...). How
this integrates with the current register allocator is not clear, since
that assigns registers based on the rule, but the instructions emitted
by the rules may be different (this already happens with the current JIT
where a MULT is replaced with lea etc...).
* Doing it in a separate pass.
Doing the conversion in a separate pass over the instructions
is another alternative. This can be done right after method_to_ir ()
or after the SSA pass (since the IR after the SSA pass should look
almost like the IR we get back from method_to_ir ()).
This has the following advantages:
*) monoburg will handle only the simple opcodes (makes porting easier)
*) the instruction selection will be run on all the additional trees
*) it's easier to support coarse opcodes that produce multiple expression
trees (and apply the monoburg selector on all of them)
*) the SSA optimizer will see the original opcodes and will be able to use
the semantic info associated with them
The disadvantage is that this is a separate pass on the code and
it takes time (how much has not been measured yet, though).
With this approach, we may also be able to have C implementations
of some of the opcodes: this pass would insert a function call to
the C implementation (for example in the cases when first porting
to a new arch and implemenating some stuff may be too hard in asm).
* Extended basic blocks
IL code needs a lot of checks, bounds checks, overflow checks,
type checks and so on. This potentially increases by a lot
the number of basic blocks in a control flow graph. However,
all such blocks end up with a throw opcode that gives control to the
exception handling mechanism.
After method_to_ir () a MonoBasicBlock can be considered a sort
of extended basic block where the additional exits don't point
to basic blocks in the same procedure (at least when the method
doesn't have exception tables).
We need to make sure the passes following method_to_ir () can cope
with such kinds of extended basic blocks (especially the passes
that we need to apply to all the methods: as a start, we could
skip SSA optimizations for methods with exception clauses...)

View File

@ -292,7 +292,6 @@ mono_free_method
mono_free_verify_list
mono_gc_collect
mono_gc_collection_count
mono_gc_enable_events
mono_gc_get_generation
mono_gc_get_heap_size
mono_gc_get_used_size
@ -301,9 +300,7 @@ mono_gchandle_get_target
mono_gchandle_new
mono_gchandle_new_weakref
mono_gc_invoke_finalizers
mono_gc_is_finalizer_thread
mono_gc_max_generation
mono_gc_out_of_memory
mono_gc_wbarrier_arrayref_copy
mono_gc_wbarrier_generic_nostore
mono_gc_wbarrier_generic_store
@ -604,7 +601,6 @@ mono_object_get_class
mono_object_get_domain
mono_object_get_size
mono_object_get_virtual_method
mono_object_is_alive
mono_object_isinst
mono_object_isinst_mbyref
mono_object_new

View File

@ -1,16 +0,0 @@
<h1>Mono 1.0 Release Notes</h1>
<h2>What does Mono Include</h2>
<h2>Missing functionality</h2>
<p>COM support.
<p>EnterpriseServices are non-existant.
<p>Windows.Forms is only available as a preview, it is not
completed nor stable.
<h3>Assembly: System.Drawing</h3>
<p>System.Drawing.Printing is not supported.

View File

@ -93,12 +93,9 @@
<h4><a name="api:mono_gc_disable">mono_gc_disable</a></h4>
<h4><a name="api:mono_gc_enable">mono_gc_enable</a></h4>
<h4><a name="api:mono_gc_is_finalizer_thread">mono_gc_is_finalizer_thread</a></h4>
<h4><a name="api:mono_gc_out_of_memory">mono_gc_out_of_memory</a></h4>
<h4><a name="api:mono_gc_start_world">mono_gc_start_world</a></h4>
<h4><a name="api:mono_gc_stop_world">mono_gc_stop_world</a></h4>
<h4><a name="api:mono_gc_alloc_fixed">mono_gc_alloc_fixed</a></h4>
<h4><a name="api:mono_gc_enable_events">mono_gc_enable_events</a></h4>
<h4><a name="api:mono_gc_free_fixed">mono_gc_free_fixed</a></h4>
<h4><a name="api:mono_gc_make_descr_from_bitmap">mono_gc_make_descr_from_bitmap</a></h4>

View File

@ -93,7 +93,6 @@ result = mono_object_new (mono_domain_get (), version_class);
<h4><a name="api:mono_object_isinst">mono_object_isinst</a></h4>
<h4><a name="api:mono_object_unbox">mono_object_unbox</a></h4>
<h4><a name="api:mono_object_castclass_mbyref">mono_object_castclass_mbyref</a></h4>
<h4><a name="api:mono_object_is_alive">mono_object_is_alive</a></h4>
<h4><a name="api:mono_object_get_size">mono_object_get_size</a></h4>
<a name="valuetypes"></a>

View File

@ -1,33 +0,0 @@
Size and alignment requirements of stack values
===============================================
P ... System.IntPtr
I1 ... System.Int8
I2 ... System.Int16
I4 ... System.Int32
I8 ... System.Int64
F ... System.Single
D ... System.Double
LD ... native long double
-----------------------------------------------------------
ARCH | P | I1 | I2 | I4 | I8 | F | D | LD |
-----------------------------------------------------------
X86 | 4/4 | 4/4 | 4/4 | 4/4 | 8/4 | 4/4 | 8/4 |12/4 |
-----------------------------------------------------------
X86/W32 | 4/4 | 4/4 | 4/4 | 4/4 | 8/4 | 4/4 | 8/4 |12/4 |
-----------------------------------------------------------
ARM | 4/4 | 4/4 | 4/4 | 4/4 | 8/4 | 4/4 | 8/4 | 8/4 |
-----------------------------------------------------------
M68K | 4/4 | 4/4 | 4/4 | 4/4 | 8/4 | 4/4 | 8/4 |12/4 |
-----------------------------------------------------------
ALPHA | 8/8 | 8/8 | 8/8 | 8/8 | 8/8 | 8/8 | 8/8 | 8/8 |
-----------------------------------------------------------
SPARC | 4/4 | 4/4 | 4/4 | 4/4 | 8/8 | 4/4 | 8/8 |16/8 |
-----------------------------------------------------------
SPARC64 | 8/8 | 8/8 | 8/8 | 8/8 | 8/8 | 8/8 | 8/8 |16/16|
-----------------------------------------------------------
MIPS | 4/4 | 4/4 | 4/4 | 4/4 | ?/? | 4/4 | 8/8 | 8/8 |
-----------------------------------------------------------
| | | | | | | | |
-----------------------------------------------------------

View File

@ -1,261 +0,0 @@
Purpose
Especially when inlining is active, it can happen that temporary
variables add pressure to the register allocator, producing bad
code.
The idea is that some of these temporaries can be totally eliminated
my moving the MonoInst tree that defines them directly to the use
point in the code (so the name "tree mover").
Please note that this is *not* an optimization: it is mostly a
workaround to issues we have in the regalloc.
Actually, with the new linear IR this will not be possible at all
(there will be no more trees in the code!).
Anyway, this workaround turns out to be useful in the current state
of things...
-----------------------------------------------------------------------
Base logic
If a local is defined by a value which is a proper expression (a tree
of MonoInst, not just another local or a constant), and this definition
is used only once, the tree can be moved directly to the use location,
and the definition eliminated.
Of course, none of the variables used in the tree must be defined in
the code path between the definition and the use, and the tree must be
free of side effects.
We do not handle the cases when the tree is just a local or a constant
because they are handled by copyprop and consprop, respectively.
To make things simpler, we restrict the tree move to the case when:
- the definition and the use are in the same BB, and
- the use is followed by another definition in the same BB (it is not
possible that the 1st value is used again), or alternatively there
is no BB in the whole CFG that contains a use of this local before a
definition (so, again, there is no code path that can lead to a
subsequent use).
To handle this, we maintain an ACT array (Available Copy Tree, similar
to the ACP), where we store the "state" of every local.
Ideally, every local can be in the following state:
[E] Undefined (by a tree, it could be in the ACP but we don't care).
[D] Defined (by a tree), and waiting for a use.
[U] Used, with a tree definition available in the same BB, but still
without a definition following the use (always in the same BB).
Of course state [E] (empty) is the initial one.
Besides, there are two sort of "meta states", or flags:
[W] Still waiting for a use or definition in this BB (we have seen no
occurrence of the local yet).
[X] Used without being previously defined in the same BB (note that if
there is a definition that precedes the use in the same BB, even if
the definition is not a tree or is not available because of side
effects or because the tree value has changed the local is not in
state [X]).
Also note that state [X] is a sort of "global" condition, which if set
in one BB will stay valid for the whole CFG, even if the local will
otherwise change state. The idea of flagging a local as [X] is that if
there is a definition/use pair that reaches the end of a BB, it could
be that there is a CFG path that then leads to the BB flagging it as
[X] (which contains a use), so the tree cannot be moved.
So state [X] will always be set, and never examined in all the state
transitions we will describe.
In practice, we use flag [W] to set state [X]: if, when traversing a
BB, we find a use for a local in state [W], then that local is flagged
[X].
For each BB, we initialize all states to [E] and [W], and then we
traverse the code one inst at a time, and update the variable states
in the ACT in the following ways:
[Definition]
- Flag [W] is cleared.
- All "affected trees" are killed (go from state [D] to [E]).
The "affected trees" are the trees which contain (use) the defined
local, and the rationale is that the tree value changed, so the
tree is no longer available.
- If the local was in state [U], *that* tree move is marked "safe"
(because *this* definition makes us sure that the previous tree
cannot be used again in any way).
The idea is that "safe" moves can happen even if the local is
flagged [X], because the second definition "covers" the use.
The tree move is then saved in the "todo" list (and the affecting
nodes are cleared).
- If the local was defined by a tree, it goes to state [D], the tree
is recorded, and all the locals used in it are marked as "affecting
this tree" (of course these markers are lists, because each local
could affect more than one tree).
[IndirectDefinition]
- All potentially affected trees (in state [D]) are killed.
[Use]
- If the local is still [W], it is flagged [X] (the [W] goes away).
- If the local is in state [D], it goes to state [U].
The tree move must not yet be recorded in the "todo" list, it still
stays in the ACT slot belonging to this local.
Anyway, the "affecting" nodes are updated, because now a definition
of a local used in this tree will affect only "indirect" (or also
"propagated") moves, but not *this* move (see below).
- If the local is in state [U], then the tree cannot be moved (it is
used two times): the move is canceled, and the state goes [E].
- If the local is in state [E], the use is ignored.
[IndirectUse]
- All potentially affected trees (in state [D] or [U]) are killed.
[SideEffect]
- Tree is marked as "unmovable".
Then, at the end of the BB, for each ACT slot:
- If state is [U], the tree move is recorded in the "todo" list, but
flagged "unsafe".
- Anyway, state goes to [E], the [W] flag is set, and all "affecting"
lists are cleared (we get ready to traverse the next BB).
Finally, when all BBs has been scanned, we traverse the "todo" list,
moving all "safe" entries, and moving "unsafe" ones only if their ACT
slot is not flagged [X].
So far, so good.
But there are two issues that make things harder :-(
The first is the concept of "indirect tree move".
It can happen that a tree is scheduled for moving, and its destination
is a use that is located in a second tree, which could also be moved.
The main issue is that a definition of a variable of the 1st tree on
the path between the definition and the use of the 2nd one must prevent
the move.
But which move? The 1st or the 2nd?
Well, any of the two!
The point is, the 2nd move must be prevented *only* if the 1st one
happens: if it is aborted (for an [X] flag or any other reason), the
2nd move is OK, and vice versa...
We must handle this in the following way:
- The ACT must still remember if a slot is scheduled for moving in
this BB, and if it is, all the locals used in the tree.
We say that the slot is in state [M].
Note that [M] is (like [X] and [W]) a sort of "meta state": a local
is flagged [M] when it goes to state [U], and the flag is cleared
when the tree move is cancelled
- A tree that uses a local whose slot is in state [M] is also using all
the locals used by the tree in state [M], but the use is "indirect".
These use nodes are also included in the "affecting" lists.
- The definition of a variable used in an "indirect" way has the
effect of "linking" the two involved tree moves, saying that only one
of the two can happen in practice, but not both.
- When the 2nd tree is scheduled for moving, the 1st one is *still* in
state [M], because a third move could "carry it forward", and all the
*three* moves should be mutually exclusive (to be safe!).
The second tricky complication is the "tree forwarding" that can happen
when copyprop is involved.
It is conceptually similar to the "indirect tree move".
Only, the 2nd tree is not really a tree, it is just the local defined
in the 1st tree move.
It can happen that copyprop will propagate the definition.
We cannot make treeprop do the same job of copyprop, because copyprop
has less constraints, and is therefore more powerful in its scope.
The main issue is that treeprop cannot propagate a tree to *two* uses,
while copyprop is perfectly capable of propagating one definition to
two (or more) different places.
So we must let copyprop do its job otherwise we'll miss optimizations,
but we must also make it play safe with treeprop.
Let's clarify with an example:
a = v1 + v2; //a is defined by a tree, state [D], uses v2 and v2
b = a; //a is used, state [U] with move scheduled, and
//b is defined by a, ACP[b] is a, and b is in state [DC]
c = b + v3; // b is used, goes to state [U]
The real trouble is that copyprop happens *immediately*, while treeprop
is deferred to the end of the CFG traversal.
So, in the 3rd statement, the "b" is immediately turned into an "a" by
copyprop, regardless of what treeprop will do.
Anyway, if we are careful, this is not so bad.
First of all, we must "accept" the fact that in the 3rd statement the
"b" is in fact an "a", as treeprop must happen *after* copyprop.
The real problem is that "a" is used twice: in the 2nd and 3rd lines.
In our usual setup, the 2nd line would set it to [U], and the 3rd line
would kill the move (and set "a" to [E]).
I have tried to play tricks, and reason as of copyprop didn't happen,
but everything becomes really messy.
Instead, we should note that the 2nd line is very likely to be dead.
At least in this BB, copyprop will turn all "b"s into "a"s as long as
it can, and when it cannot, it will be because either "a" or "b" have
been redefined, which would be after the tree move anyway.
So, the reasoning gets different: let's pretend that "b" will be dead.
This will make the "a" use in the 2nd statement useless, so there we
can "reset" "a" to [D], but also take note that if "b" will end up
not being dead, the tree move associated to this [D] must be aborted.
We can detect this in the following way:
- Either "b" is used before being defined in this BB, or
- It will be flagged "unsafe".
Both things are very easy to check.
The only quirk is that the "affecting" lists must not be cleared when
a slot goes to state [U], because a "propagation" could put it back
to state [D] (where those lists are needed, because it can be killed
by a definition to a used slot).
-----------------------------------------------------------------------
Implementation notes
All the implementation runs inside the existing mono_local_cprop
function, and a separate memory pool is used to hold the temporary
data.
A struct, MonoTreeMover, contains the pointers to the pool, the ACT,
the list of scheduled moves and auxiliary things.
This struct is allocated if the tree move pass is requested, and is
then passed along to all the involved functions, which are therefore
aware of the tree mover state.
The ACT is an array of slots, obviously one per local.
Each slot is of type MonoTreeMoverActSlot, and contains the used and
affected locals, a pointer to the pending tree move and the "waiting"
and "unsafe" flags.
The "affecting" lists a built from "dependency nodes", of type
MonoTreeMoverDependencyNode.
Each of the nodes contains the used and affected local, and is in
two lists: the locals used by a slot, and the locals affected by a
slot (obviously a different one).
So, each node means: "variable x is used in tree t, so a definition
of x affects tree t".
The "affecting" lists are doubly linked, to allow for O(1) deletion.
The "used" lists are simply linked, but when they are mantained there
is always a pointer to the last element to allow for O(1) list moving.
When a used list is dismissed (which happens often, any time a node is
killed), its nodes are unlinked from their respective affecting lists
and are then put in a "free" list in the MonoTreeMover to be reused.
Each tree move is represented by a struct (MonoTreeMoverTreeMove),
which contains:
- the definition and use points,
- the "affected" moves (recall the concept of "indirect tree move"),
- the "must be dead" slots (recall "tree forwarding"). and
- a few utility flags.
The tree moves stays in the relevant ACT slot until it is ready to be
scheduled for moving, at which point it is put in a list in the
MonoTreeMover.
The tree moves structs are reused when they are killed, so there is
also a "free" list for them in the MonoTreeMover.
The tree mover code has been added to all the relevant functions that
participate in consprop and copyprop, particularly:
- mono_cprop_copy_values takes care of variable uses (transitions from
states [D] to [U] and [U] to [E] because of killing),
- mono_cprop_invalidate_values takes care of side effects (indirect
accesses, calls...),
- mono_local_cprop_bb sets up and cleans the traversals for each BB,
and for each MonoInst it takes care of variable definitions.
To each of them has been added a MonoTreeMover parameter, which is not
NULL if the tree mover is running.
After mono_local_cprop_bb has run for all BBs, the MonoTreeMover has
the list of all the pending moves, which must be walked to actually
perform the moves (when possible, because "unsafe" flags, "affected"
moves and "must be dead" slots can still have their effects, which
must be handled now because they are fully known only at the end of
the CFG traversal).

View File

@ -93,24 +93,29 @@ get_pw_data (void)
pthread_mutex_unlock (&pw_lock);
return;
}
home_dir = g_getenv ("HOME");
user_name = g_getenv ("USER");
#ifdef HAVE_GETPWUID_R
if (getpwuid_r (getuid (), &pw, buf, 4096, &result) == 0) {
home_dir = g_strdup (pw.pw_dir);
user_name = g_strdup (pw.pw_name);
if (home_dir == NULL || user_name == NULL) {
if (getpwuid_r (getuid (), &pw, buf, 4096, &result) == 0) {
if (home_dir == NULL)
home_dir = g_strdup (pw.pw_dir);
if (user_name == NULL)
user_name = g_strdup (pw.pw_name);
}
}
#endif
if (home_dir == NULL)
home_dir = g_getenv ("HOME");
if (user_name == NULL) {
user_name = g_getenv ("USER");
if (user_name == NULL)
user_name = "somebody";
}
if (user_name == NULL)
user_name = "somebody";
if (home_dir == NULL)
home_dir = "/";
pthread_mutex_unlock (&pw_lock);
}
/* Give preference to /etc/passwd than HOME */
const gchar *
g_get_home_dir (void)
{

View File

@ -1,17 +0,0 @@
# This is the git pattern ignore file for the project.
# Git can be used with svn http://code.google.com/p/msysgit/
bin
Bin
obj
*.user
*.suo
*.bak
*.vs10x
*.VisualState.xml
*.userprefs
*.pidb
test-results
build/artifacts
build/bin
_ReSharper*
*.orig

View File

@ -1,10 +0,0 @@
The snowball stemmers in contrib/Snowball.Net/Snowball.Net/SF/Snowball
were developed by Martin Porter and Richard Boulton.
The full snowball package is available from http://snowball.tartarus.org/
Apache Lucene.Net is a port of Jakarta Lucene to C#.
The port from Java to C# of version 1.4.0, 1.4.3, 1.9, 1.9.1, 2.0 and 2.1 were done
primary by George Aroush. To contact George Aroush please visit http://www.aroush.net/.
Much thanks to George

View File

@ -1 +0,0 @@
c0daf5afda647e912fcb3fee849f83bd5df94c39

View File

@ -1,271 +0,0 @@
Apache License
Version 2.0, January 2004
http://www.apache.org/licenses/
TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION
1. Definitions.
"License" shall mean the terms and conditions for use, reproduction,
and distribution as defined by Sections 1 through 9 of this document.
"Licensor" shall mean the copyright owner or entity authorized by
the copyright owner that is granting the License.
"Legal Entity" shall mean the union of the acting entity and all
other entities that control, are controlled by, or are under common
control with that entity. For the purposes of this definition,
"control" means (i) the power, direct or indirect, to cause the
direction or management of such entity, whether by contract or
otherwise, or (ii) ownership of fifty percent (50%) or more of the
outstanding shares, or (iii) beneficial ownership of such entity.
"You" (or "Your") shall mean an individual or Legal Entity
exercising permissions granted by this License.
"Source" form shall mean the preferred form for making modifications,
including but not limited to software source code, documentation
source, and configuration files.
"Object" form shall mean any form resulting from mechanical
transformation or translation of a Source form, including but
not limited to compiled object code, generated documentation,
and conversions to other media types.
"Work" shall mean the work of authorship, whether in Source or
Object form, made available under the License, as indicated by a
copyright notice that is included in or attached to the work
(an example is provided in the Appendix below).
"Derivative Works" shall mean any work, whether in Source or Object
form, that is based on (or derived from) the Work and for which the
editorial revisions, annotations, elaborations, or other modifications
represent, as a whole, an original work of authorship. For the purposes
of this License, Derivative Works shall not include works that remain
separable from, or merely link (or bind by name) to the interfaces of,
the Work and Derivative Works thereof.
"Contribution" shall mean any work of authorship, including
the original version of the Work and any modifications or additions
to that Work or Derivative Works thereof, that is intentionally
submitted to Licensor for inclusion in the Work by the copyright owner
or by an individual or Legal Entity authorized to submit on behalf of
the copyright owner. For the purposes of this definition, "submitted"
means any form of electronic, verbal, or written communication sent
to the Licensor or its representatives, including but not limited to
communication on electronic mailing lists, source code control systems,
and issue tracking systems that are managed by, or on behalf of, the
Licensor for the purpose of discussing and improving the Work, but
excluding communication that is conspicuously marked or otherwise
designated in writing by the copyright owner as "Not a Contribution."
"Contributor" shall mean Licensor and any individual or Legal Entity
on behalf of whom a Contribution has been received by Licensor and
subsequently incorporated within the Work.
2. Grant of Copyright License. Subject to the terms and conditions of
this License, each Contributor hereby grants to You a perpetual,
worldwide, non-exclusive, no-charge, royalty-free, irrevocable
copyright license to reproduce, prepare Derivative Works of,
publicly display, publicly perform, sublicense, and distribute the
Work and such Derivative Works in Source or Object form.
3. Grant of Patent License. Subject to the terms and conditions of
this License, each Contributor hereby grants to You a perpetual,
worldwide, non-exclusive, no-charge, royalty-free, irrevocable
(except as stated in this section) patent license to make, have made,
use, offer to sell, sell, import, and otherwise transfer the Work,
where such license applies only to those patent claims licensable
by such Contributor that are necessarily infringed by their
Contribution(s) alone or by combination of their Contribution(s)
with the Work to which such Contribution(s) was submitted. If You
institute patent litigation against any entity (including a
cross-claim or counterclaim in a lawsuit) alleging that the Work
or a Contribution incorporated within the Work constitutes direct
or contributory patent infringement, then any patent licenses
granted to You under this License for that Work shall terminate
as of the date such litigation is filed.
4. Redistribution. You may reproduce and distribute copies of the
Work or Derivative Works thereof in any medium, with or without
modifications, and in Source or Object form, provided that You
meet the following conditions:
(a) You must give any other recipients of the Work or
Derivative Works a copy of this License; and
(b) You must cause any modified files to carry prominent notices
stating that You changed the files; and
(c) You must retain, in the Source form of any Derivative Works
that You distribute, all copyright, patent, trademark, and
attribution notices from the Source form of the Work,
excluding those notices that do not pertain to any part of
the Derivative Works; and
(d) If the Work includes a "NOTICE" text file as part of its
distribution, then any Derivative Works that You distribute must
include a readable copy of the attribution notices contained
within such NOTICE file, excluding those notices that do not
pertain to any part of the Derivative Works, in at least one
of the following places: within a NOTICE text file distributed
as part of the Derivative Works; within the Source form or
documentation, if provided along with the Derivative Works; or,
within a display generated by the Derivative Works, if and
wherever such third-party notices normally appear. The contents
of the NOTICE file are for informational purposes only and
do not modify the License. You may add Your own attribution
notices within Derivative Works that You distribute, alongside
or as an addendum to the NOTICE text from the Work, provided
that such additional attribution notices cannot be construed
as modifying the License.
You may add Your own copyright statement to Your modifications and
may provide additional or different license terms and conditions
for use, reproduction, or distribution of Your modifications, or
for any such Derivative Works as a whole, provided Your use,
reproduction, and distribution of the Work otherwise complies with
the conditions stated in this License.
5. Submission of Contributions. Unless You explicitly state otherwise,
any Contribution intentionally submitted for inclusion in the Work
by You to the Licensor shall be under the terms and conditions of
this License, without any additional terms or conditions.
Notwithstanding the above, nothing herein shall supersede or modify
the terms of any separate license agreement you may have executed
with Licensor regarding such Contributions.
6. Trademarks. This License does not grant permission to use the trade
names, trademarks, service marks, or product names of the Licensor,
except as required for reasonable and customary use in describing the
origin of the Work and reproducing the content of the NOTICE file.
7. Disclaimer of Warranty. Unless required by applicable law or
agreed to in writing, Licensor provides the Work (and each
Contributor provides its Contributions) on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
implied, including, without limitation, any warranties or conditions
of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A
PARTICULAR PURPOSE. You are solely responsible for determining the
appropriateness of using or redistributing the Work and assume any
risks associated with Your exercise of permissions under this License.
8. Limitation of Liability. In no event and under no legal theory,
whether in tort (including negligence), contract, or otherwise,
unless required by applicable law (such as deliberate and grossly
negligent acts) or agreed to in writing, shall any Contributor be
liable to You for damages, including any direct, indirect, special,
incidental, or consequential damages of any character arising as a
result of this License or out of the use or inability to use the
Work (including but not limited to damages for loss of goodwill,
work stoppage, computer failure or malfunction, or any and all
other commercial damages or losses), even if such Contributor
has been advised of the possibility of such damages.
9. Accepting Warranty or Additional Liability. While redistributing
the Work or Derivative Works thereof, You may choose to offer,
and charge a fee for, acceptance of support, warranty, indemnity,
or other liability obligations and/or rights consistent with this
License. However, in accepting such obligations, You may act only
on Your own behalf and on Your sole responsibility, not on behalf
of any other Contributor, and only if You agree to indemnify,
defend, and hold each Contributor harmless for any liability
incurred by, or claims asserted against, such Contributor by reason
of your accepting any such warranty or additional liability.
END OF TERMS AND CONDITIONS
APPENDIX: How to apply the Apache License to your work.
To apply the Apache License to your work, attach the following
boilerplate notice, with the fields enclosed by brackets "[]"
replaced with your own identifying information. (Don't include
the brackets!) The text should be enclosed in the appropriate
comment syntax for the file format. We also recommend that a
file or class name and description of purpose be included on the
same "printed page" as the copyright notice for easier
identification within third-party archives.
Copyright [yyyy] [name of copyright owner]
Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License.
You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.
Some code in src/Lucene.Net/Util/UnicodeUtil.cs was derived from unicode
conversion examples available at http://www.unicode.org/Public/PROGRAMS/CVTUTF.
Here is the copyright from those sources:
/*
* Copyright 2001-2004 Unicode, Inc.
*
* Disclaimer
*
* This source code is provided as is by Unicode, Inc. No claims are
* made as to fitness for any particular purpose. No warranties of any
* kind are expressed or implied. The recipient agrees to determine
* applicability of information provided. If this file has been
* purchased on magnetic or optical media from Unicode, Inc., the
* sole remedy for any claim will be exchange of defective media
* within 90 days of receipt.
*
* Limitations on Rights to Redistribute This Code
*
* Unicode, Inc. hereby grants the right to freely use the information
* supplied in this file in the creation of products supporting the
* Unicode Standard, and to make copies of this file in any form
* for internal or external distribution as long as this notice
* remains attached.
*/
Some code in src/Lucene.Net/Util/ArrayUtil.cs was derived from Python 2.4.2
sources available at http://www.python.org.
Full license is here:
http://www.python.org/download/releases/2.4.2/license/
The following license applies to the Snowball's Portuguese, Hungarian, Romanian, Turkish stemmers:
Copyright (c) 2001, Dr Martin Porter
Copyright (c) 2002, Richard Boulton
All rights reserved.
Redistribution and use in source and binary forms, with or without
modification, are permitted provided that the following conditions are met:
* Redistributions of source code must retain the above copyright notice,
* this list of conditions and the following disclaimer.
* Redistributions in binary form must reproduce the above copyright
* notice, this list of conditions and the following disclaimer in the
* documentation and/or other materials provided with the distribution.
* Neither the name of the copyright holders nor the names of its contributors
* may be used to endorse or promote products derived from this software
* without specific prior written permission.
THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE
FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR
SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER
CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.

View File

@ -1,6 +0,0 @@
Apache Lucene.Net
Copyright 2006-2012 The Apache Software Foundation
This product includes software developed by
The Apache Software Foundation (http://www.apache.org/).

View File

@ -1,61 +0,0 @@
Apache Lucene.Net README file
INTRODUCTION
-------------
Apache Lucene.Net is a C# full-text search engine. Apache Lucene.Net is not a complete application,
but rather a code library and API that can easily be used to add search capabilities to applications.
Apache Lucene.Net is compiled against Microsoft .NET Framework 4.0
The Apache Lucene.Net web site is at:
http://lucenenet.apache.org
Please join the Apache Lucene.Net-User mailing list by sending a message to:
user-subscribe@lucenenet.apache.org
FILES
---------------
build/scripts
Build scripts
build/*
Visual Studio solution files
src/Contrib
Contributed code whihc extends and enhances Apahce Lucene.Net, but is not part of the core library
src/core
The Lucene source code.
src/Demo
Some example code.
test/*
nUnit tests for Lucene.Net and Contrib projects
DOCUMENTATION
---------------------
MSDN style API documentation for Apache Lucene.Net exists. Those can be found at this site:
http://lucenenet.apache.org/docs/3.0.3/Index.html
or
http://lucenenet.apache.org/docs/3.0.3/Lucene.Net.chm
ADDITIONAL LIBRARIES
-----------------------------
There are a number of additional libraries that various parts of Lucene.Net may depend. These are not
included in the source distribution
These libraries can be found at:
https://svn.apache.org/repos/asf/lucene.net/tags/Lucene.Net_3_0_3_RC1/lib/
Libraries:
- Gallio 3.2.750
- ICSharpCode
- Nuget
- NUnit.org
- Spatial4n
- StyleCop 4.5

View File

@ -1 +0,0 @@
40e9c69dcc94cc12c5560419cc83e8bcb3b81e6b

View File

@ -1 +0,0 @@
67fd98292ca8f5ad49414ae37c537bb4524aff6b

View File

@ -1 +0,0 @@
c60a324123eaaeab58c400c139bcabbc6d0d2a9f

Binary file not shown.

Before

Width:  |  Height:  |  Size: 98 KiB

View File

@ -1 +0,0 @@
4f446f2fe625b2834884b1aadc5eede9826edb1d

View File

@ -1 +0,0 @@
c1e23562f4b0cd4d4f2e0f89a42b567b99077077

Binary file not shown.

Before

Width:  |  Height:  |  Size: 18 KiB

View File

@ -1,147 +0,0 @@
<?xml version="1.0" encoding="utf-8"?>
<!--
Licensed to the Apache Software Foundation (ASF) under one
or more contributor license agreements. See the NOTICE file
distributed with this work for additional information
regarding copyright ownership. The ASF licenses this file
to you under the Apache License, Version 2.0 (the
"License"); you may not use this file except in compliance
with the License. You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing,
software distributed under the License is distributed on an
"AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
KIND, either express or implied. See the License for the
specific language governing permissions and limitations
under the License.
-->
<!-- Generator: Adobe Illustrator 15.0.0, SVG Export Plug-In . SVG Version: 6.00 Build 0) -->
<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">
<svg version="1.1" id="Layer_1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px"
width="400px" height="225px" viewBox="0 0 400 225" enable-background="new 0 0 400 225" xml:space="preserve">
<g>
<g>
<path fill="#0664A8" d="M19.201,93.378c40.755-52.022,118.686-54.243,175.942-31.797c27.455,7.102,42.811,22.703,78.815,25.313
c29.399,2.131,50.561-19.043,38.928-36.51c-36.214-54.375-133.032,44.034-146.493,60.642
c-24.863,30.839-37.016,74.246-83.422,80.305c-50.033,6.535-91.53-49.554-44.014-85.466
C104.402,56.561,168,126.555,242.026,147.01c41.102,11.358,108.157,14.52,126.272-43.366
c45.88,56.087-31.81,135.46-113.409,106.002c-53.86-19.444-129.578-91.782-176.904-85.983
c-20.251,2.481-26.038,35.527-3.661,35.997c21.425,6.579,46.703-26.739,61.514-38.886c35.555-29.677,57.158-70.843,97.562-96.563
c41.967-26.704,121.813-19.71,120.64,32.617c-1.671,74.42-78.625,71.495-124.438,51.517
C160.863,78.368,87.246,36.789,19.201,93.378C21.038,91.034,19.201,93.378,19.201,93.378z"/>
<path fill="none" d="M38.958,105.865c-6.95,2.038-11.34,7.178-13.373,13.638C28.861,114.763,33.264,110.169,38.958,105.865z"/>
<path fill="none" d="M229.602,108.345c-13.998-6.105-28.203-12.692-42.519-18.832c-3.843,3.638-7.305,7.065-10.289,10.125
c66.607,23.429,161.796,38.456,170.191-10.861c0-0.001,0-0.003,0-0.005C326.718,129.726,267.504,124.872,229.602,108.345z"/>
<path fill="none" d="M19.401,93.123c-0.036,0.048-0.076,0.095-0.114,0.149c-0.015,0.018-0.025,0.028-0.036,0.043
c-0.02,0.023-0.03,0.04-0.051,0.064c0.071-0.089,0.144-0.175,0.215-0.265C19.411,93.117,19.406,93.12,19.401,93.123z"/>
<path fill="none" d="M122.129,133.75c-0.083-0.037-0.165-0.075-0.246-0.112c0.072,0.045,0.146,0.093,0.219,0.139
C122.112,133.769,122.119,133.759,122.129,133.75z"/>
<path fill="none" d="M121.883,133.638c-16.059-7.344-31.028-11.552-43.897-9.976c-20.251,2.481-26.038,35.527-3.661,35.997
c2.358,0.724,4.764,0.965,7.198,0.803c10.149-4.047,19.231-9.035,27.854-14.764c4.442-3.827,8.728-7.979,12.726-11.922
C122.029,133.73,121.955,133.683,121.883,133.638z"/>
<path fill="none" d="M109.376,145.698c-8.623,5.729-17.705,10.717-27.854,14.764C90.759,159.848,100.393,153.442,109.376,145.698z
"/>
<path fill="none" d="M298.431,37.441c-14.271-6.742-32.433-2.387-50.735,6.95C263.59,36.181,281.882,34.425,298.431,37.441z"/>
<path fill="none" d="M244.938,45.833c0.913-0.48,1.824-0.96,2.752-1.439C246.774,44.861,245.855,45.339,244.938,45.833z"/>
<path fill="none" d="M142.239,146.969c33.791,22.672,68.454,47.608,97.682,56.265c-29.781-14.464-64.237-40.014-96.342-58.331
C143.133,145.593,142.687,146.282,142.239,146.969z"/>
<path fill="none" d="M273.958,86.895c29.399,2.131,50.561-19.043,38.928-36.51c-4.107-6.168-8.997-10.365-14.455-12.943
c-16.549-3.016-34.841-1.26-50.735,6.95c-0.001,0-0.004,0.002-0.005,0.002c-0.928,0.479-1.839,0.959-2.752,1.439
c-11.124,5.966-22.225,13.655-32.468,21.698C230.698,75.141,246.188,84.881,273.958,86.895z"/>
<path fill="#0664A8" d="M155.343,108.483c3.121,1.511,6.251,3.062,9.396,4.64c0.545-0.704,1.095-1.405,1.654-2.097
c1.916-2.364,5.523-6.387,10.401-11.389c-2.624-0.923-5.205-1.86-7.737-2.805C164.284,100.792,159.735,104.684,155.343,108.483z"
/>
<path fill="#0664A8" d="M124.349,134.784c6.273,2.972,12.703,6.393,19.229,10.118c6.88-10.683,13.434-21.808,21.16-31.779
c-3.144-1.578-6.275-3.129-9.396-4.64C144.414,117.94,134.45,126.826,124.349,134.784z"/>
<path fill="#0664A8" d="M109.376,145.698c5.005-3.323,9.859-6.896,14.673-10.682c-0.65-0.417-1.299-0.829-1.947-1.24
C118.104,137.72,113.818,141.871,109.376,145.698z"/>
<path fill="#0664A8" d="M122.103,133.776c0.648,0.411,1.297,0.823,1.947,1.24c0.101-0.078,0.2-0.155,0.299-0.232
c-0.744-0.352-1.482-0.695-2.22-1.034C122.119,133.759,122.112,133.769,122.103,133.776z"/>
<path fill="#0664A8" d="M19.251,93.314c0.01-0.015,0.021-0.025,0.036-0.043C19.274,93.287,19.265,93.299,19.251,93.314z"/>
<path fill="#0664A8" d="M19.612,92.855c0.065-0.085,0.133-0.168,0.19-0.244C19.75,92.677,19.687,92.759,19.612,92.855z"/>
<path fill="#0664A8" d="M19.201,93.378c0.021-0.024,0.031-0.041,0.051-0.064C19.221,93.352,19.201,93.378,19.201,93.378z"/>
<path fill="#0664A8" d="M19.802,92.611c0.097-0.125,0.159-0.203,0.187-0.239C19.956,92.417,19.889,92.501,19.802,92.611z"/>
<path fill="#0664A8" d="M19.201,93.378c0.363-0.301,0.727-0.584,1.09-0.879c-0.292,0.203-0.583,0.409-0.875,0.614
C19.345,93.203,19.272,93.29,19.201,93.378z"/>
<path fill="#0664A8" d="M19.401,93.123c-0.043,0.056-0.083,0.107-0.114,0.149C19.325,93.218,19.365,93.17,19.401,93.123
C19.401,93.123,19.402,93.123,19.401,93.123z"/>
<path fill="#0664A8" d="M19.989,92.372C20.019,92.334,20.021,92.332,19.989,92.372L19.989,92.372z"/>
<path fill="#0664A8" d="M19.612,92.855c-0.074,0.095-0.146,0.187-0.211,0.268c0.001,0,0,0,0,0
C19.479,93.023,19.55,92.934,19.612,92.855z"/>
<path fill="#0664A8" d="M121.883,133.638c0.081,0.037,0.163,0.075,0.246,0.112c5.127-5.055,9.787-9.759,13.71-12.977
c5.413-4.518,10.5-9.306,15.382-14.262c-38.332-18.115-74.998-28.721-112.263-0.646C61.148,99.356,90.559,113.817,121.883,133.638
z"/>
<polygon fill="#0664A8" points="247.691,44.391 247.69,44.393 247.695,44.391 "/>
<path fill="#0664A8" d="M109.376,145.698c-8.983,7.744-18.617,14.149-27.854,14.764c-2.563,1.021-5.189,1.985-7.897,2.885
c-36.356,12.065-54.642-22.861-48.041-43.844c-24.064,34.818,13.347,77.58,57.386,71.828
c29.662-3.872,45.332-23.005,59.268-44.362c-6.103-4.095-12.178-8.114-18.189-11.952
C119.235,138.802,114.382,142.375,109.376,145.698z"/>
<linearGradient id="SVGID_1_" gradientUnits="userSpaceOnUse" x1="40.1006" y1="162.9033" x2="73.1082" y2="126.8949">
<stop offset="0" style="stop-color:#02364F"/>
<stop offset="1" style="stop-color:#0664A8"/>
</linearGradient>
<path fill="url(#SVGID_1_)" d="M73.625,163.347c2.708-0.899,5.334-1.863,7.897-2.885c-2.434,0.162-4.84-0.079-7.198-0.803
c-22.377-0.47-16.59-33.516,3.661-35.997c12.869-1.576,27.839,2.632,43.897,9.976c-31.324-19.82-60.735-34.281-82.926-27.772
c-5.693,4.304-10.097,8.898-13.373,13.638C18.984,140.485,37.269,175.412,73.625,163.347z"/>
<path fill="#0664A8" d="M169.057,96.832c-2.195-0.823-4.352-1.651-6.467-2.485c-3.696,4.133-7.466,8.203-11.369,12.165
c1.372,0.648,2.746,1.307,4.123,1.972C159.735,104.684,164.284,100.792,169.057,96.832z"/>
<path fill="#0664A8" d="M135.839,120.773c-3.923,3.218-8.583,7.922-13.71,12.977c0.738,0.339,1.477,0.683,2.22,1.034
c10.101-7.958,20.064-16.844,30.994-26.301c-1.376-0.666-2.75-1.324-4.123-1.972C146.339,111.468,141.252,116.255,135.839,120.773
z"/>
<linearGradient id="SVGID_2_" gradientUnits="userSpaceOnUse" x1="239.9209" y1="159.8223" x2="381.9678" y2="159.8223">
<stop offset="0" style="stop-color:#02364F"/>
<stop offset="1" style="stop-color:#0664A8"/>
</linearGradient>
<path fill="url(#SVGID_2_)" d="M368.299,103.644c-17.4,69.327-75.393,115.286-128.378,99.59l0,0
c5.14,2.498,10.144,4.67,14.969,6.412C336.489,239.104,414.179,159.73,368.299,103.644z"/>
<path fill="#0664A8" d="M124.349,134.784c-0.1,0.077-0.199,0.154-0.299,0.232c6.011,3.838,12.086,7.857,18.189,11.952
c0.448-0.687,0.895-1.376,1.34-2.066C137.052,141.177,130.622,137.756,124.349,134.784z"/>
<path fill="#0664A8" d="M368.299,103.644c-18.115,57.886-85.171,54.725-126.272,43.366c-26.947-7.445-52.512-21.455-77.288-33.886
c-7.727,9.971-14.28,21.096-21.16,31.779c32.105,18.317,66.561,43.867,96.342,58.331l0,0
C292.906,218.93,350.898,172.971,368.299,103.644z"/>
<path fill="#0664A8" d="M181.217,87.028c-3-1.255-6.004-2.483-9.013-3.68c-3.173,3.693-6.366,7.368-9.614,10.999
c2.115,0.834,4.272,1.663,6.467,2.485C172.949,93.604,176.984,90.333,181.217,87.028z"/>
<path fill="#0664A8" d="M187.083,89.513c-1.954-0.838-3.91-1.667-5.866-2.485c-4.233,3.305-8.268,6.576-12.16,9.804
c2.532,0.945,5.114,1.882,7.737,2.805C179.777,96.578,183.239,93.151,187.083,89.513z"/>
<path fill="#0664A8" d="M212.471,67.531c-0.87-0.363-1.744-0.72-2.628-1.072c-10.552,6.924-19.987,13.815-28.626,20.569
c1.956,0.818,3.912,1.647,5.866,2.485C194.384,82.597,203.063,74.916,212.471,67.531z"/>
<path fill="#0664A8" d="M172.204,83.348c6.6-7.676,13.13-15.409,19.943-22.911C135.294,39.267,59.519,42.251,19.416,93.113
c0.292-0.206,0.583-0.411,0.875-0.614C69.368,52.469,121.309,63.104,172.204,83.348z"/>
<path fill="#0664A8" d="M244.938,45.833c-13.017,6.838-24.613,13.748-35.096,20.626c0.884,0.352,1.758,0.709,2.628,1.072
C222.714,59.488,233.814,51.799,244.938,45.833z"/>
<path fill="#0664A8" d="M181.217,87.028c8.639-6.753,18.074-13.645,28.626-20.569c-4.609-1.837-9.43-3.515-14.7-4.878
c-0.992-0.39-1.992-0.77-2.996-1.144c-6.813,7.502-13.344,15.234-19.943,22.911C175.213,84.544,178.217,85.773,181.217,87.028z"/>
<linearGradient id="SVGID_3_" gradientUnits="userSpaceOnUse" x1="332.5723" y1="25.5942" x2="292.0625" y2="66.104">
<stop offset="0" style="stop-color:#02364F"/>
<stop offset="1" style="stop-color:#0664A8"/>
</linearGradient>
<path fill="url(#SVGID_3_)" d="M298.431,37.441c5.458,2.579,10.348,6.775,14.455,12.943c11.633,17.467-9.528,38.642-38.928,36.51
c-27.771-2.013-43.26-11.753-61.487-19.364c-9.407,7.385-18.086,15.066-25.388,21.982c14.316,6.14,28.521,12.727,42.519,18.832
c37.902,16.527,97.116,21.381,117.384-19.573C351.38,62.932,327.618,42.759,298.431,37.441z"/>
<path fill="#0664A8" d="M209.843,66.459c10.482-6.878,22.079-13.788,35.096-20.626c0.917-0.493,1.836-0.972,2.752-1.439
c0.001,0,0.001,0,0.001-0.002c0.003,0,0.003,0,0.004,0c18.303-9.337,36.464-13.691,50.735-6.95
c29.188,5.318,52.949,25.491,48.555,51.331c4.23-8.549,6.767-19.092,7.055-31.944c1.174-52.327-78.673-59.321-120.64-32.617
c-16.03,10.204-29.097,22.842-41.253,36.227c1.004,0.374,2.004,0.753,2.996,1.144C200.413,62.944,205.233,64.622,209.843,66.459z"
/>
</g>
<radialGradient id="SVGID_4_" cx="210.7598" cy="99.1973" r="170.6484" gradientUnits="userSpaceOnUse">
<stop offset="0" style="stop-color:#F7F18E"/>
<stop offset="1" style="stop-color:#B3D335;stop-opacity:0"/>
</radialGradient>
<path opacity="0.58" fill="url(#SVGID_4_)" d="M165.655,113.583c-0.304-0.152-0.607-0.304-0.911-0.456
c0.546-0.705,1.09-1.409,1.648-2.101c0.9-1.112,2.186-2.599,3.79-4.373c0.424-0.654,1.963-1.379,2.498-1.957
c44.374-48.015,81.031-73.458,113.379-70.525c46.401,4.208,58.978,31.81,61.661,53.028c3.782-8.261,6.049-18.292,6.319-30.372
c1.174-52.327-78.673-59.321-120.64-32.617c-16.03,10.204-29.097,22.843-41.253,36.228c-0.422-0.158-3.258,2.788-3.684,2.632
c-10.324,13.27-17.945,23.038-25.843,31.243c-3.707,4.144-7.487,8.227-11.401,12.2c-0.164-0.077-0.329-0.155-0.493-0.233
c-9.45,9.209-19.857,18.632-30.2,26.738c0.532,0.239,1.067,0.486,1.602,0.731c-14.225,14.024-32.053,30.746-47.803,25.909
c-3.617-0.075-6.487-1.011-8.69-2.522c-10.949,0.304-15.695-1.318-11.195,8.682c5.524,12.278,11.256,21.03,17.626,25.963
c3.567,0.167,7.212,0.033,10.906-0.45c16.031-2.092,27.972-8.646,37.763-17.596c5.919-6.378,12.306-14.142,19.233-23.344
c1.218-1.813,2.421-3.644,3.611-5.491c0.108,0.063,0.218,0.126,0.327,0.188C150.64,135.892,157.868,125.408,165.655,113.583
C165.351,113.431,157.868,125.408,165.655,113.583z"/>
</g>
</svg>

Before

Width:  |  Height:  |  Size: 12 KiB

View File

@ -1 +0,0 @@
6bd2db8fe38fcdb84bee4df77770c3f7f35915b1

Binary file not shown.

Before

Width:  |  Height:  |  Size: 2.0 KiB

View File

@ -1 +0,0 @@
a0ba56e6245d37c9bf43fd82e6b2a92dfaff1264

Binary file not shown.

Before

Width:  |  Height:  |  Size: 3.0 KiB

View File

@ -1 +0,0 @@
a7e57eb5276d63915973b5f3422b9fe010bcca60

Binary file not shown.

Before

Width:  |  Height:  |  Size: 4.5 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 8.1 KiB

View File

@ -1,262 +0,0 @@
<?xml version="1.0" encoding="utf-8"?>
<!--
Licensed to the Apache Software Foundation (ASF) under one
or more contributor license agreements. See the NOTICE file
distributed with this work for additional information
regarding copyright ownership. The ASF licenses this file
to you under the Apache License, Version 2.0 (the
"License"); you may not use this file except in compliance
with the License. You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing,
software distributed under the License is distributed on an
"AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
KIND, either express or implied. See the License for the
specific language governing permissions and limitations
under the License.
-->
<!-- Generator: Adobe Illustrator 15.0.0, SVG Export Plug-In . SVG Version: 6.00 Build 0) -->
<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">
<svg version="1.1" id="Color" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px"
width="440px" height="80px" viewBox="0 0 440 80" enable-background="new 0 0 440 80" xml:space="preserve">
<g>
<path fill="#0664A8" d="M342.927,53.062c-0.063-0.432-0.116-0.856-0.162-1.272c-0.046-0.417-0.069-0.841-0.069-1.273
c0-0.432,0.023-0.871,0.069-1.319c0.046-0.446,0.1-0.887,0.162-1.319c0.432-0.061,0.856-0.107,1.272-0.139
c0.417-0.03,0.841-0.046,1.273-0.046c0.432,0,0.863,0.016,1.296,0.046c0.432,0.031,0.863,0.078,1.296,0.139
c0.062,0.433,0.115,0.864,0.162,1.297c0.046,0.432,0.069,0.864,0.069,1.296c0,0.433-0.023,0.864-0.069,1.296
c-0.047,0.433-0.101,0.864-0.162,1.296c-0.433,0.062-0.856,0.107-1.272,0.139c-0.417,0.03-0.842,0.047-1.273,0.047
c-0.433,0-0.864-0.017-1.296-0.047C343.79,53.169,343.358,53.123,342.927,53.062z"/>
<path fill="#0664A8" d="M354.776,29.316c0.339-0.062,0.671-0.107,0.995-0.139c0.324-0.03,0.655-0.046,0.995-0.046
c0.339,0,0.655,0.016,0.949,0.046c0.292,0.031,0.608,0.077,0.948,0.139c0.093,0.463,0.186,1.088,0.278,1.875
c0.092,0.786,0.139,1.442,0.139,1.967c0.308-0.524,0.701-1.049,1.18-1.573s1.026-0.995,1.644-1.412s1.326-0.756,2.129-1.019
c0.803-0.262,1.682-0.394,2.639-0.394c2.715,0,4.721,0.78,6.018,2.338c1.296,1.559,1.943,3.865,1.943,6.92v15.043
c-0.34,0.062-0.725,0.107-1.157,0.139c-0.432,0.03-0.817,0.047-1.157,0.047s-0.717-0.017-1.134-0.047
c-0.416-0.031-0.795-0.077-1.134-0.139V39.269c0-2.191-0.34-3.803-1.019-4.837s-1.759-1.551-3.24-1.551
c-0.864,0-1.682,0.154-2.453,0.463s-1.45,0.786-2.036,1.435c-0.587,0.648-1.058,1.489-1.412,2.522
c-0.354,1.034-0.532,2.276-0.532,3.727v12.034c-0.34,0.062-0.718,0.107-1.134,0.139c-0.417,0.03-0.795,0.047-1.134,0.047
c-0.34,0-0.726-0.017-1.157-0.047c-0.433-0.031-0.818-0.077-1.157-0.139V29.316z"/>
<path fill="#0664A8" d="M384.954,42.323c0.062,2.592,0.732,4.489,2.014,5.693c1.28,1.203,3.171,1.805,5.67,1.805
c2.19,0,4.273-0.386,6.249-1.157c0.246,0.463,0.447,1.026,0.602,1.689c0.154,0.664,0.247,1.319,0.277,1.968
c-1.018,0.433-2.137,0.756-3.355,0.972c-1.22,0.216-2.568,0.324-4.05,0.324c-2.16,0-4.012-0.301-5.555-0.902
c-1.543-0.603-2.816-1.45-3.818-2.546c-1.003-1.096-1.736-2.392-2.199-3.889c-0.463-1.496-0.694-3.14-0.694-4.93
c0-1.759,0.224-3.401,0.672-4.929c0.446-1.528,1.134-2.854,2.06-3.981c0.926-1.126,2.09-2.021,3.494-2.685
c1.404-0.663,3.063-0.995,4.977-0.995c1.635,0,3.069,0.278,4.305,0.833c1.233,0.556,2.268,1.319,3.101,2.292
c0.833,0.972,1.466,2.129,1.898,3.471c0.432,1.343,0.647,2.801,0.647,4.375c0,0.432-0.016,0.887-0.046,1.365
c-0.031,0.479-0.063,0.887-0.093,1.227H384.954z M396.711,38.897c0-0.863-0.115-1.689-0.347-2.476
c-0.231-0.787-0.571-1.474-1.019-2.061c-0.447-0.585-1.019-1.057-1.713-1.411s-1.52-0.532-2.477-0.532
c-1.882,0-3.325,0.571-4.327,1.712c-1.003,1.143-1.613,2.731-1.828,4.768H396.711z"/>
<path fill="#0664A8" d="M408.144,32.973h-3.61l-0.185-0.647l7.961-8.887h0.37v5.878h6.018c0.123,0.525,0.186,1.111,0.186,1.759
c0,0.34-0.017,0.664-0.047,0.973c-0.031,0.309-0.077,0.617-0.139,0.925h-6.018v10.832c0,1.296,0.054,2.33,0.162,3.101
c0.108,0.771,0.293,1.365,0.556,1.782c0.262,0.417,0.617,0.694,1.064,0.833s1.011,0.208,1.689,0.208
c0.524,0,1.019-0.038,1.481-0.115s0.879-0.162,1.25-0.255c0.215,0.618,0.347,1.25,0.393,1.897c0.047,0.648,0.07,1.22,0.07,1.713
c-0.618,0.154-1.266,0.27-1.944,0.348c-0.68,0.076-1.404,0.115-2.176,0.115c-2.222,0-3.957-0.539-5.207-1.62
c-1.25-1.079-1.875-2.869-1.875-5.369V32.973z"/>
</g>
<g>
<g>
<path d="M124.313,7.984c1.131-0.167,2.158-0.293,3.08-0.377s1.739-0.126,2.452-0.126c0.754,0,1.604,0.042,2.546,0.126
c0.943,0.084,1.959,0.21,3.05,0.377v35.207h14.522c0.209,1.048,0.346,1.959,0.408,2.734c0.063,0.776,0.095,1.478,0.095,2.106
c0,0.713-0.031,1.457-0.095,2.231c-0.063,0.776-0.199,1.708-0.408,2.798h-25.65V7.984z"/>
<path d="M170.963,53.753c-3.395,0-6.214-0.462-8.456-1.383c-2.242-0.922-4.014-2.253-5.313-3.992s-2.211-3.845-2.734-6.318
c-0.524-2.473-0.786-5.26-0.786-8.361V7.984c1.215-0.167,2.264-0.283,3.144-0.346s1.718-0.095,2.515-0.095
c0.712,0,1.498,0.032,2.357,0.095s1.896,0.179,3.112,0.346v24.394c0,2.096,0.084,3.877,0.252,5.344
c0.167,1.468,0.471,2.662,0.911,3.583c0.44,0.923,1.058,1.583,1.854,1.98c0.796,0.399,1.844,0.598,3.144,0.598
c1.299,0,2.357-0.198,3.175-0.598c0.817-0.397,1.446-1.058,1.887-1.98c0.439-0.921,0.732-2.115,0.88-3.583
c0.146-1.467,0.22-3.248,0.22-5.344V7.984c1.258-0.167,2.315-0.283,3.175-0.346c0.858-0.063,1.645-0.095,2.357-0.095
c0.755,0,1.572,0.032,2.452,0.095s1.928,0.179,3.144,0.346v25.714c0,3.102-0.263,5.889-0.786,8.361
c-0.524,2.474-1.436,4.579-2.734,6.318c-1.3,1.739-3.071,3.07-5.313,3.992C177.176,53.291,174.358,53.753,170.963,53.753z"/>
<path d="M206.105,30.555c0,8.886,3.73,13.328,11.19,13.328c1.342,0,2.609-0.126,3.804-0.377c1.195-0.252,2.65-0.67,4.37-1.258
c1.383,3.018,2.304,6.12,2.766,9.305c-1.216,0.462-2.348,0.839-3.395,1.132c-1.048,0.293-2.055,0.513-3.018,0.66
c-0.965,0.146-1.918,0.251-2.861,0.314c-0.942,0.063-1.917,0.094-2.923,0.094c-3.563,0-6.695-0.576-9.399-1.729
c-2.703-1.152-4.966-2.756-6.789-4.81c-1.823-2.053-3.197-4.505-4.118-7.355c-0.923-2.851-1.384-5.951-1.384-9.305
c0-3.353,0.481-6.465,1.446-9.336c0.964-2.871,2.357-5.354,4.181-7.45s4.076-3.73,6.759-4.904c2.682-1.173,5.721-1.76,9.116-1.76
c2.012,0,3.918,0.147,5.721,0.439c1.802,0.294,3.813,0.881,6.035,1.761c-0.084,1.719-0.398,3.385-0.942,4.998
c-0.545,1.614-1.111,3.028-1.697,4.243c-0.839-0.292-1.604-0.544-2.295-0.754c-0.691-0.209-1.352-0.377-1.98-0.503
s-1.258-0.22-1.886-0.283c-0.629-0.063-1.3-0.094-2.013-0.094c-3.395,0-6.025,1.143-7.89,3.426
C207.038,22.623,206.105,26.027,206.105,30.555z"/>
<path d="M257.658,29.485c0,1.468-0.188,3.103-0.565,4.904h-12.134v8.927h15.779c0.378,1.761,0.566,3.354,0.566,4.778
c0,1.551-0.188,3.206-0.566,4.967h-26.907V7.858h26.53c0.167,0.923,0.293,1.782,0.377,2.578c0.084,0.797,0.126,1.551,0.126,2.263
c0,1.384-0.168,3.04-0.503,4.967h-15.402v6.916h12.134C257.47,26.427,257.658,28.062,257.658,29.485z"/>
<path d="M266.962,7.984c0.921-0.167,1.76-0.293,2.515-0.377c0.754-0.084,1.487-0.126,2.2-0.126c0.755,0,1.54,0.053,2.357,0.157
c0.817,0.105,1.519,0.22,2.106,0.346l14.586,24.645V7.984c1.089-0.167,2.074-0.293,2.954-0.377
c0.881-0.084,1.676-0.126,2.39-0.126c0.712,0,1.467,0.042,2.263,0.126s1.635,0.21,2.515,0.377l-0.063,44.889
c-0.419,0.126-1.027,0.251-1.823,0.377c-0.797,0.126-1.656,0.188-2.577,0.188c-1.049,0-1.991-0.073-2.829-0.22
c-0.839-0.147-1.446-0.262-1.823-0.346l-14.648-24.52v24.52c-1.846,0.377-3.521,0.565-5.03,0.565s-3.206-0.188-5.092-0.565V7.984z
"/>
<path d="M332.22,29.485c0,1.468-0.188,3.103-0.565,4.904h-12.134v8.927H335.3c0.378,1.761,0.566,3.354,0.566,4.778
c0,1.551-0.188,3.206-0.566,4.967h-26.907V7.858h26.53c0.167,0.923,0.293,1.782,0.377,2.578c0.084,0.797,0.126,1.551,0.126,2.263
c0,1.384-0.168,3.04-0.503,4.967h-15.402v6.916h12.134C332.031,26.427,332.22,28.062,332.22,29.485z"/>
</g>
</g>
<g opacity="0.6">
<g>
<path d="M143.061,71.519l1.113-0.667c0.783,1.441,1.688,2.163,2.715,2.163c0.439,0,0.852-0.103,1.237-0.308
c0.386-0.204,0.68-0.479,0.882-0.823c0.201-0.344,0.303-0.709,0.303-1.095c0-0.439-0.148-0.87-0.445-1.291
c-0.41-0.582-1.157-1.282-2.243-2.102c-1.093-0.824-1.772-1.421-2.039-1.789c-0.463-0.617-0.694-1.285-0.694-2.003
c0-0.569,0.137-1.089,0.409-1.558c0.273-0.469,0.657-0.839,1.153-1.108c0.495-0.271,1.034-0.405,1.615-0.405
c0.617,0,1.194,0.153,1.731,0.459s1.105,0.867,1.705,1.687l-1.068,0.811c-0.492-0.653-0.912-1.083-1.26-1.291
c-0.347-0.208-0.726-0.312-1.135-0.312c-0.528,0-0.96,0.16-1.295,0.48c-0.336,0.32-0.503,0.715-0.503,1.184
c0,0.285,0.059,0.562,0.178,0.828c0.118,0.268,0.335,0.558,0.649,0.873c0.173,0.166,0.736,0.602,1.691,1.309
c1.134,0.836,1.911,1.581,2.333,2.234c0.421,0.652,0.632,1.309,0.632,1.967c0,0.95-0.36,1.775-1.082,2.476
c-0.721,0.7-1.598,1.05-2.63,1.05c-0.796,0-1.517-0.212-2.164-0.637C144.203,73.227,143.606,72.516,143.061,71.519z"/>
<path d="M155.326,60.862h7.505v1.282h-6.196v4.104h6.143v1.281h-6.143v5.146h6.143v1.282h-7.451V60.862z"/>
<path d="M172.267,60.862l6.106,13.096h-1.413l-2.06-4.309h-5.642l-2.04,4.309h-1.46l6.187-13.096H172.267z M172.101,63.645
l-2.244,4.74h4.478L172.101,63.645z"/>
<path d="M182.297,60.862h2.608c1.454,0,2.438,0.06,2.955,0.179c0.777,0.179,1.41,0.56,1.896,1.146
c0.486,0.585,0.729,1.306,0.729,2.161c0,0.714-0.167,1.34-0.503,1.881c-0.335,0.541-0.814,0.949-1.438,1.226
s-1.483,0.418-2.581,0.424l4.709,6.08h-1.619l-4.71-6.08h-0.739v6.08h-1.309V60.862z M183.605,62.145v4.451l2.256,0.018
c0.874,0,1.521-0.083,1.939-0.249s0.746-0.432,0.98-0.797c0.235-0.364,0.353-0.772,0.353-1.224c0-0.439-0.119-0.839-0.356-1.197
c-0.238-0.359-0.55-0.616-0.937-0.771s-1.028-0.231-1.926-0.231H183.605z"/>
<path d="M207.312,63.293l-1.033,0.792c-0.569-0.741-1.254-1.304-2.052-1.687s-1.675-0.574-2.631-0.574
c-1.044,0-2.012,0.251-2.902,0.752c-0.89,0.502-1.58,1.175-2.069,2.021c-0.489,0.847-0.734,1.798-0.734,2.854
c0,1.597,0.547,2.929,1.643,3.997c1.095,1.068,2.476,1.603,4.144,1.603c1.834,0,3.368-0.718,4.603-2.154l1.033,0.783
c-0.653,0.831-1.468,1.474-2.444,1.928c-0.976,0.454-2.066,0.681-3.271,0.681c-2.291,0-4.098-0.763-5.421-2.288
c-1.11-1.287-1.665-2.843-1.665-4.664c0-1.917,0.672-3.53,2.017-4.839c1.344-1.309,3.028-1.963,5.052-1.963
c1.223,0,2.326,0.242,3.312,0.726S206.682,62.421,207.312,63.293z"/>
<path d="M211.743,60.862h1.309v5.493h6.667v-5.493h1.31v13.096h-1.31v-6.32h-6.667v6.32h-1.309V60.862z"/>
<path d="M232.918,60.862h7.505v1.282h-6.196v4.104h6.143v1.281h-6.143v5.146h6.143v1.282h-7.451V60.862z"/>
<path d="M244.516,73.958V60.862h0.285l8.715,10.038V60.862h1.291v13.096h-0.294l-8.644-9.916v9.916H244.516z"/>
<path d="M272.449,63.062l-1.015,0.962c-0.729-0.719-1.529-1.263-2.399-1.634c-0.869-0.371-1.717-0.557-2.541-0.557
c-1.027,0-2.005,0.252-2.934,0.757c-0.929,0.504-1.648,1.188-2.159,2.052c-0.51,0.863-0.766,1.776-0.766,2.737
c0,0.985,0.265,1.922,0.793,2.809c0.528,0.888,1.258,1.585,2.189,2.093c0.932,0.507,1.953,0.761,3.063,0.761
c1.348,0,2.487-0.38,3.419-1.14s1.483-1.745,1.655-2.955h-4.175v-1.265h5.645c-0.013,2.024-0.613,3.631-1.803,4.821
c-1.19,1.189-2.782,1.784-4.776,1.784c-2.422,0-4.339-0.824-5.751-2.475c-1.086-1.27-1.629-2.739-1.629-4.406
c0-1.241,0.312-2.396,0.935-3.464c0.623-1.067,1.478-1.903,2.563-2.506c1.086-0.602,2.314-0.903,3.686-0.903
c1.11,0,2.154,0.2,3.134,0.601C270.563,61.535,271.518,62.178,272.449,63.062z"/>
<path d="M277.353,60.862h1.309v13.096h-1.309V60.862z"/>
<path d="M283.494,73.958V60.862h0.285l8.715,10.038V60.862h1.291v13.096h-0.294l-8.644-9.916v9.916H283.494z"/>
<path d="M298.804,60.862h7.505v1.282h-6.196v4.104h6.143v1.281h-6.143v5.146h6.143v1.282h-7.451V60.862z"/>
<path d="M317.265,60.862h1.309v11.832h5.038v1.264h-6.347V60.862z"/>
<path d="M327.321,60.862h1.309v13.096h-1.309V60.862z"/>
<path d="M333.489,60.862h2.582c1.038,0,1.837,0.124,2.395,0.37s0.999,0.624,1.322,1.135s0.485,1.077,0.485,1.7
c0,0.582-0.142,1.111-0.426,1.589c-0.283,0.479-0.7,0.865-1.249,1.162c0.681,0.231,1.204,0.503,1.571,0.814
c0.366,0.312,0.652,0.688,0.856,1.131s0.306,0.921,0.306,1.438c0,1.051-0.384,1.939-1.152,2.666
c-0.769,0.728-1.8,1.091-3.094,1.091h-3.597V60.862z M334.771,62.145v4.193h0.749c0.91,0,1.579-0.085,2.008-0.254
c0.428-0.169,0.767-0.437,1.017-0.802c0.25-0.364,0.375-0.77,0.375-1.215c0-0.6-0.21-1.069-0.629-1.411
c-0.419-0.341-1.087-0.512-2.003-0.512H334.771z M334.771,67.655v5.021h1.623c0.957,0,1.658-0.093,2.104-0.28
c0.446-0.187,0.804-0.479,1.074-0.877s0.406-0.828,0.406-1.291c0-0.581-0.19-1.089-0.57-1.521
c-0.381-0.434-0.903-0.73-1.568-0.891c-0.446-0.106-1.223-0.16-2.329-0.16H334.771z"/>
<path d="M345.817,60.862h2.608c1.454,0,2.438,0.06,2.955,0.179c0.777,0.179,1.41,0.56,1.896,1.146
c0.486,0.585,0.729,1.306,0.729,2.161c0,0.714-0.167,1.34-0.503,1.881c-0.335,0.541-0.814,0.949-1.438,1.226
s-1.483,0.418-2.581,0.424l4.709,6.08h-1.619l-4.71-6.08h-0.739v6.08h-1.309V60.862z M347.126,62.145v4.451l2.256,0.018
c0.874,0,1.521-0.083,1.939-0.249s0.746-0.432,0.98-0.797c0.235-0.364,0.353-0.772,0.353-1.224c0-0.439-0.119-0.839-0.356-1.197
c-0.238-0.359-0.55-0.616-0.937-0.771s-1.028-0.231-1.926-0.231H347.126z"/>
<path d="M363.986,60.862l6.106,13.096h-1.413l-2.06-4.309h-5.642l-2.04,4.309h-1.46l6.187-13.096H363.986z M363.82,63.645
l-2.244,4.74h4.478L363.82,63.645z"/>
<path d="M374.017,60.862h2.608c1.454,0,2.438,0.06,2.955,0.179c0.777,0.179,1.41,0.56,1.896,1.146
c0.486,0.585,0.729,1.306,0.729,2.161c0,0.714-0.167,1.34-0.503,1.881c-0.335,0.541-0.814,0.949-1.438,1.226
s-1.483,0.418-2.581,0.424l4.709,6.08h-1.619l-4.71-6.08h-0.739v6.08h-1.309V60.862z M375.325,62.145v4.451l2.256,0.018
c0.874,0,1.521-0.083,1.939-0.249s0.746-0.432,0.98-0.797c0.235-0.364,0.353-0.772,0.353-1.224c0-0.439-0.119-0.839-0.356-1.197
c-0.238-0.359-0.55-0.616-0.937-0.771s-1.028-0.231-1.926-0.231H375.325z"/>
<path d="M385.801,60.862h1.506l3.351,5.401l3.299-5.401h1.513l-4.148,6.837v6.259h-1.291v-6.259L385.801,60.862z"/>
</g>
</g>
<polygon fill="none" stroke="#FFFFFF" stroke-width="4" stroke-miterlimit="10" points="97.088,33.683 97.088,33.683 97.088,33.683
"/>
<g>
<path fill="#0664A8" d="M7.543,28.791c10.422-13.303,30.352-13.869,44.994-8.13c7.021,1.816,10.947,5.806,20.154,6.474
c7.519,0.545,12.931-4.87,9.955-9.338c-9.261-13.904-34.021,11.262-37.462,15.51c-6.358,7.887-9.467,18.986-21.334,20.536
C11.056,55.514,0.442,41.17,12.595,31.985c16.735-12.608,33.001,5.292,51.931,10.523c10.511,2.903,27.66,3.712,32.292-11.092
c11.733,14.346-8.135,34.643-29.003,27.11c-13.773-4.975-33.137-23.473-45.238-21.991c-5.18,0.636-6.658,9.087-0.937,9.206
c5.479,1.682,11.943-6.838,15.73-9.943c9.093-7.59,14.618-18.118,24.95-24.695c10.731-6.828,31.151-5.039,30.852,8.341
C92.744,38.477,73.064,37.729,61.349,32.62C43.77,24.954,24.943,14.32,7.543,28.791C8.014,28.193,7.543,28.791,7.543,28.791z"/>
<path fill="none" d="M12.595,31.985c-1.777,0.521-2.899,1.835-3.419,3.489C10.013,34.262,11.139,33.086,12.595,31.985z"/>
<path fill="none" d="M61.349,32.62c-3.581-1.562-7.213-3.246-10.874-4.817c-0.981,0.931-1.867,1.808-2.631,2.59
c17.033,5.991,41.377,9.836,43.522-2.777c0-0.001,0-0.001,0-0.001C86.184,38.087,71.041,36.847,61.349,32.62z"/>
<path fill="none" d="M7.594,28.728c-0.009,0.012-0.02,0.023-0.029,0.038c-0.004,0.003-0.005,0.008-0.01,0.012
c-0.004,0.006-0.007,0.008-0.012,0.014c0.018-0.022,0.036-0.043,0.054-0.065C7.597,28.726,7.596,28.727,7.594,28.728z"/>
<path fill="none" d="M33.864,39.116c-0.021-0.008-0.042-0.02-0.063-0.029c0.02,0.014,0.038,0.025,0.058,0.036
C33.86,39.122,33.861,39.119,33.864,39.116z"/>
<path fill="none" d="M33.801,39.087c-4.105-1.877-7.934-2.952-11.225-2.551c-5.18,0.636-6.658,9.087-0.937,9.206
c0.603,0.188,1.217,0.247,1.84,0.206c2.596-1.035,4.919-2.312,7.124-3.775c1.135-0.979,2.231-2.041,3.255-3.05
C33.839,39.112,33.82,39.101,33.801,39.087z"/>
<path fill="none" d="M30.604,42.173c-2.205,1.464-4.528,2.74-7.124,3.775C25.842,45.791,28.306,44.152,30.604,42.173z"/>
<path fill="none" d="M78.95,14.487c-3.649-1.725-8.294-0.611-12.975,1.778C70.04,14.166,74.719,13.716,78.95,14.487z"/>
<path fill="none" d="M65.271,16.634c0.233-0.122,0.467-0.245,0.704-0.367C65.74,16.385,65.505,16.509,65.271,16.634z"/>
<path fill="none" d="M39.008,42.497c8.642,5.798,17.505,12.175,24.979,14.39c-7.616-3.699-16.427-10.234-24.638-14.918
C39.236,42.146,39.122,42.321,39.008,42.497z"/>
<path fill="none" d="M72.691,27.135c7.519,0.545,12.931-4.87,9.955-9.338c-1.051-1.576-2.301-2.65-3.696-3.31
c-4.231-0.771-8.91-0.321-12.975,1.778c0,0-0.001,0-0.001,0.001c-0.237,0.122-0.471,0.245-0.704,0.367
c-2.844,1.525-5.684,3.492-8.304,5.548C61.629,24.129,65.591,26.618,72.691,27.135z"/>
<path fill="#0664A8" d="M42.358,32.654c0.798,0.388,1.6,0.783,2.403,1.188c0.14-0.18,0.279-0.358,0.423-0.535
c0.489-0.606,1.412-1.634,2.659-2.914c-0.672-0.236-1.331-0.476-1.978-0.717C44.645,30.688,43.482,31.685,42.358,32.654z"/>
<path fill="#0664A8" d="M34.432,39.381c1.604,0.761,3.249,1.636,4.918,2.588c1.759-2.731,3.436-5.576,5.412-8.127
c-0.804-0.404-1.605-0.8-2.403-1.188C39.564,35.073,37.015,37.346,34.432,39.381z"/>
<path fill="#0664A8" d="M30.604,42.173c1.279-0.85,2.521-1.764,3.753-2.732c-0.167-0.106-0.333-0.212-0.498-0.317
C32.835,40.132,31.738,41.193,30.604,42.173z"/>
<path fill="#0664A8" d="M33.858,39.123c0.165,0.105,0.331,0.211,0.498,0.317c0.025-0.021,0.05-0.039,0.075-0.06
c-0.189-0.09-0.378-0.177-0.567-0.265C33.861,39.119,33.86,39.122,33.858,39.123z"/>
<path fill="#0664A8" d="M7.555,28.777c0.005-0.004,0.006-0.009,0.01-0.012C7.562,28.769,7.56,28.771,7.555,28.777z"/>
<path fill="#0664A8" d="M7.647,28.658c0.018-0.021,0.033-0.042,0.049-0.063C7.683,28.613,7.667,28.634,7.647,28.658z"/>
<path fill="#0664A8" d="M7.543,28.791c0.005-0.006,0.008-0.008,0.012-0.014C7.548,28.785,7.543,28.791,7.543,28.791z"/>
<path fill="#0664A8" d="M7.696,28.596c0.025-0.032,0.04-0.052,0.049-0.061C7.735,28.547,7.719,28.568,7.696,28.596z"/>
<path fill="#0664A8" d="M7.543,28.791c0.093-0.075,0.186-0.147,0.278-0.225c-0.074,0.054-0.149,0.105-0.225,0.159
C7.579,28.748,7.561,28.769,7.543,28.791z"/>
<path fill="#0664A8" d="M7.594,28.728c-0.011,0.013-0.021,0.027-0.029,0.038C7.574,28.751,7.585,28.739,7.594,28.728L7.594,28.728z
"/>
<path fill="#0664A8" d="M7.745,28.535C7.752,28.526,7.753,28.524,7.745,28.535L7.745,28.535z"/>
<path fill="#0664A8" d="M7.647,28.658c-0.019,0.025-0.037,0.048-0.054,0.069l0,0C7.614,28.701,7.632,28.678,7.647,28.658z"/>
<path fill="#0664A8" d="M33.801,39.087c0.021,0.01,0.043,0.021,0.063,0.029c1.311-1.29,2.502-2.494,3.506-3.317
c1.385-1.155,2.686-2.381,3.934-3.647c-9.803-4.634-19.179-7.345-28.709-0.166C18.27,30.32,25.791,34.02,33.801,39.087z"/>
<polygon fill="#0664A8" points="65.975,16.266 65.975,16.267 65.975,16.266 "/>
<path fill="#0664A8" d="M30.604,42.173c-2.298,1.979-4.762,3.618-7.124,3.775c-0.653,0.262-1.326,0.508-2.019,0.737
c-9.298,3.087-13.974-5.845-12.285-11.211c-6.154,8.903,3.412,19.838,14.675,18.368c7.585-0.991,11.593-5.884,15.157-11.346
c-1.561-1.046-3.115-2.075-4.651-3.057C33.124,40.409,31.883,41.323,30.604,42.173z"/>
<linearGradient id="SVGID_1_" gradientUnits="userSpaceOnUse" x1="12.8867" y1="46.5723" x2="21.3283" y2="37.3633">
<stop offset="0" style="stop-color:#02364F"/>
<stop offset="1" style="stop-color:#0664A8"/>
</linearGradient>
<path fill="url(#SVGID_1_)" d="M21.461,46.686c0.692-0.229,1.365-0.476,2.019-0.737c-0.623,0.041-1.237-0.019-1.84-0.206
c-5.722-0.119-4.243-8.57,0.937-9.206c3.291-0.401,7.119,0.674,11.225,2.551c-8.01-5.067-15.531-8.767-21.206-7.102
c-1.456,1.101-2.582,2.276-3.419,3.489C7.487,40.841,12.163,49.772,21.461,46.686z"/>
<path fill="#0664A8" d="M45.866,29.676c-0.562-0.21-1.114-0.423-1.655-0.636c-0.944,1.058-1.908,2.097-2.907,3.111
c0.352,0.166,0.702,0.334,1.055,0.503C43.482,31.685,44.645,30.688,45.866,29.676z"/>
<path fill="#0664A8" d="M37.37,35.799c-1.004,0.823-2.195,2.027-3.506,3.317c0.189,0.088,0.378,0.175,0.567,0.265
c2.583-2.035,5.133-4.308,7.927-6.727c-0.353-0.169-0.703-0.337-1.055-0.503C40.056,33.418,38.755,34.644,37.37,35.799z"/>
<linearGradient id="SVGID_2_" gradientUnits="userSpaceOnUse" x1="63.9873" y1="45.7852" x2="100.313" y2="45.7852">
<stop offset="0" style="stop-color:#02364F"/>
<stop offset="1" style="stop-color:#0664A8"/>
</linearGradient>
<path fill="url(#SVGID_2_)" d="M96.817,31.417c-4.449,17.729-19.28,29.483-32.83,25.47l0,0c1.314,0.638,2.595,1.193,3.827,1.641
C88.683,66.06,108.551,45.763,96.817,31.417z"/>
<path fill="#0664A8" d="M34.432,39.381c-0.025,0.021-0.05,0.039-0.075,0.06c1.536,0.981,3.091,2.011,4.651,3.057
c0.114-0.176,0.229-0.352,0.342-0.528C37.681,41.017,36.036,40.142,34.432,39.381z"/>
<path fill="#0664A8" d="M96.817,31.417c-4.632,14.804-21.781,13.995-32.292,11.092c-6.892-1.904-13.428-5.488-19.764-8.667
c-1.977,2.551-3.653,5.396-5.412,8.127c8.211,4.684,17.021,11.219,24.638,14.918l0,0C77.537,60.9,92.368,49.146,96.817,31.417z"/>
<path fill="#0664A8" d="M48.975,27.167c-0.768-0.319-1.535-0.633-2.305-0.938c-0.811,0.943-1.627,1.883-2.459,2.812
c0.541,0.213,1.094,0.426,1.655,0.636C46.86,28.851,47.893,28.013,48.975,27.167z"/>
<path fill="#0664A8" d="M50.475,27.803c-0.499-0.213-0.999-0.424-1.5-0.636c-1.082,0.846-2.114,1.684-3.108,2.509
c0.646,0.241,1.306,0.48,1.978,0.717C48.607,29.61,49.493,28.733,50.475,27.803z"/>
<path fill="#0664A8" d="M56.967,22.182c-0.222-0.092-0.445-0.184-0.671-0.273c-2.698,1.771-5.111,3.533-7.321,5.259
c0.501,0.212,1.001,0.423,1.5,0.636C52.342,26.034,54.563,24.072,56.967,22.182z"/>
<path fill="#0664A8" d="M46.67,26.229c1.688-1.965,3.358-3.941,5.101-5.861c-14.54-5.413-33.918-4.649-44.174,8.358
c0.075-0.054,0.15-0.105,0.225-0.159C20.371,18.33,33.654,21.05,46.67,26.229z"/>
<path fill="#0664A8" d="M65.271,16.634c-3.329,1.749-6.294,3.516-8.975,5.274c0.226,0.09,0.449,0.182,0.671,0.273
C59.587,20.126,62.427,18.159,65.271,16.634z"/>
<path fill="#0664A8" d="M48.975,27.167c2.21-1.726,4.623-3.488,7.321-5.259c-1.18-0.469-2.412-0.898-3.759-1.247
c-0.254-0.101-0.511-0.196-0.767-0.294c-1.742,1.92-3.413,3.896-5.101,5.861C47.439,26.534,48.207,26.848,48.975,27.167z"/>
<linearGradient id="SVGID_3_" gradientUnits="userSpaceOnUse" x1="87.6807" y1="11.457" x2="77.3212" y2="21.8165">
<stop offset="0" style="stop-color:#02364F"/>
<stop offset="1" style="stop-color:#0664A8"/>
</linearGradient>
<path fill="url(#SVGID_3_)" d="M78.95,14.487c1.396,0.659,2.646,1.733,3.696,3.31c2.976,4.468-2.437,9.883-9.955,9.338
c-7.101-0.517-11.063-3.006-15.725-4.953c-2.404,1.891-4.625,3.853-6.492,5.621c3.661,1.571,7.293,3.256,10.874,4.817
c9.692,4.227,24.835,5.467,30.018-5.006C92.491,21.006,86.414,15.848,78.95,14.487z"/>
<path fill="#0664A8" d="M56.296,21.908c2.681-1.759,5.646-3.525,8.975-5.274c0.234-0.125,0.47-0.249,0.704-0.367
c0-0.001,0-0.001,0-0.001h0.001c4.681-2.39,9.325-3.503,12.975-1.778c7.464,1.36,13.541,6.519,12.416,13.127
c1.083-2.187,1.73-4.883,1.806-8.17c0.3-13.38-20.12-15.169-30.852-8.341c-4.1,2.61-7.441,5.842-10.55,9.264
c0.256,0.098,0.513,0.193,0.767,0.294C53.884,21.01,55.116,21.439,56.296,21.908z"/>
</g>
<g opacity="0.6">
<g>
<path fill="#A09F9F" d="M424.885,27.024v4.638h-0.722v-4.638h-1.682v-0.65h4.161v0.65H424.885z"/>
<path fill="#A09F9F" d="M431.969,31.662l-0.628-3.396l-1.155,3.469h-0.181l-1.188-3.469l-0.613,3.396h-0.686l0.989-5.288h0.328
l1.26,3.858l1.162-3.858h0.325l1.071,5.288H431.969z"/>
</g>
</g>
</svg>

Before

Width:  |  Height:  |  Size: 23 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 5.8 KiB

View File

@ -1,169 +0,0 @@
<?xml version="1.0" encoding="utf-8"?>
<!--
Licensed to the Apache Software Foundation (ASF) under one
or more contributor license agreements. See the NOTICE file
distributed with this work for additional information
regarding copyright ownership. The ASF licenses this file
to you under the Apache License, Version 2.0 (the
"License"); you may not use this file except in compliance
with the License. You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing,
software distributed under the License is distributed on an
"AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
KIND, either express or implied. See the License for the
specific language governing permissions and limitations
under the License.
-->
<!-- Generator: Adobe Illustrator 15.0.0, SVG Export Plug-In . SVG Version: 6.00 Build 0) -->
<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">
<svg version="1.1" id="Grayscale" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px"
width="440px" height="80px" viewBox="0 0 440 80" enable-background="new 0 0 440 80" display="none" xml:space="preserve">
<g display="inline">
<path fill="#454545" d="M347.927,52.98c-0.063-0.432-0.116-0.856-0.162-1.272c-0.046-0.417-0.069-0.841-0.069-1.273
c0-0.432,0.023-0.871,0.069-1.319c0.046-0.446,0.1-0.887,0.162-1.319c0.432-0.061,0.856-0.107,1.272-0.139
c0.417-0.03,0.841-0.046,1.273-0.046c0.432,0,0.863,0.016,1.296,0.046c0.432,0.031,0.863,0.078,1.296,0.139
c0.062,0.433,0.115,0.864,0.162,1.297c0.046,0.432,0.069,0.864,0.069,1.296c0,0.433-0.023,0.864-0.069,1.296
c-0.047,0.433-0.101,0.864-0.162,1.296c-0.433,0.062-0.856,0.107-1.272,0.139c-0.417,0.03-0.842,0.047-1.273,0.047
c-0.433,0-0.864-0.017-1.296-0.047C348.79,53.088,348.358,53.042,347.927,52.98z"/>
<path fill="#454545" d="M359.776,29.235c0.339-0.062,0.671-0.107,0.995-0.139c0.324-0.03,0.655-0.047,0.995-0.047
c0.339,0,0.655,0.017,0.949,0.047c0.292,0.031,0.608,0.077,0.948,0.139c0.093,0.463,0.186,1.088,0.278,1.875
c0.092,0.786,0.139,1.442,0.139,1.967c0.308-0.524,0.701-1.049,1.18-1.573s1.026-0.995,1.644-1.412s1.326-0.756,2.129-1.019
c0.803-0.262,1.682-0.394,2.639-0.394c2.715,0,4.721,0.78,6.018,2.338c1.296,1.559,1.943,3.865,1.943,6.92V52.98
c-0.34,0.062-0.725,0.107-1.157,0.139c-0.432,0.03-0.817,0.047-1.157,0.047s-0.717-0.017-1.134-0.047
c-0.416-0.031-0.795-0.077-1.134-0.139V39.188c0-2.191-0.34-3.803-1.019-4.837s-1.759-1.551-3.24-1.551
c-0.864,0-1.682,0.154-2.453,0.463s-1.45,0.786-2.036,1.435c-0.587,0.648-1.058,1.489-1.412,2.522
c-0.354,1.034-0.532,2.276-0.532,3.727V52.98c-0.34,0.062-0.718,0.107-1.134,0.139c-0.417,0.03-0.795,0.047-1.134,0.047
c-0.34,0-0.726-0.017-1.157-0.047c-0.433-0.031-0.818-0.077-1.157-0.139V29.235z"/>
<path fill="#454545" d="M389.954,42.242c0.062,2.592,0.732,4.489,2.014,5.693c1.28,1.203,3.171,1.805,5.67,1.805
c2.19,0,4.273-0.386,6.249-1.157c0.246,0.463,0.447,1.026,0.602,1.689c0.154,0.664,0.247,1.319,0.277,1.968
c-1.018,0.433-2.137,0.756-3.355,0.972c-1.22,0.216-2.568,0.324-4.05,0.324c-2.16,0-4.012-0.301-5.555-0.902
c-1.543-0.603-2.816-1.45-3.818-2.546c-1.003-1.096-1.736-2.392-2.199-3.889c-0.463-1.496-0.694-3.14-0.694-4.93
c0-1.759,0.224-3.401,0.672-4.929c0.446-1.528,1.134-2.854,2.06-3.981c0.926-1.126,2.09-2.021,3.494-2.685
c1.404-0.663,3.063-0.995,4.977-0.995c1.635,0,3.069,0.278,4.305,0.833c1.233,0.556,2.268,1.319,3.101,2.292
c0.833,0.972,1.466,2.129,1.898,3.471c0.432,1.343,0.647,2.801,0.647,4.375c0,0.432-0.016,0.887-0.046,1.365
c-0.031,0.479-0.063,0.887-0.093,1.227H389.954z M401.711,38.816c0-0.863-0.115-1.689-0.347-2.476
c-0.231-0.787-0.571-1.474-1.019-2.061c-0.447-0.585-1.019-1.057-1.713-1.411s-1.52-0.532-2.477-0.532
c-1.882,0-3.325,0.571-4.327,1.712c-1.003,1.143-1.613,2.731-1.828,4.768H401.711z"/>
<path fill="#454545" d="M413.144,32.892h-3.61l-0.185-0.647l7.961-8.887h0.37v5.878h6.018c0.123,0.525,0.186,1.111,0.186,1.759
c0,0.34-0.017,0.664-0.047,0.973c-0.031,0.309-0.077,0.617-0.139,0.925h-6.018v10.832c0,1.296,0.054,2.33,0.162,3.101
c0.108,0.771,0.293,1.365,0.556,1.782c0.262,0.417,0.617,0.694,1.064,0.833s1.011,0.208,1.689,0.208
c0.524,0,1.019-0.038,1.481-0.115s0.879-0.162,1.25-0.255c0.215,0.618,0.347,1.25,0.393,1.897c0.047,0.648,0.07,1.22,0.07,1.713
c-0.618,0.154-1.266,0.27-1.944,0.348c-0.68,0.076-1.404,0.115-2.176,0.115c-2.222,0-3.957-0.539-5.207-1.62
c-1.25-1.079-1.875-2.869-1.875-5.369V32.892z"/>
</g>
<g display="inline">
<path fill="#454545" d="M129.313,7.903c1.131-0.167,2.158-0.293,3.08-0.377s1.739-0.126,2.452-0.126
c0.754,0,1.604,0.042,2.546,0.126c0.943,0.084,1.959,0.21,3.05,0.377V43.11h14.522c0.209,1.048,0.346,1.959,0.408,2.734
c0.063,0.776,0.095,1.478,0.095,2.106c0,0.713-0.031,1.457-0.095,2.231c-0.063,0.776-0.199,1.708-0.408,2.798h-25.65V7.903z"/>
<path fill="#454545" d="M175.963,53.672c-3.395,0-6.214-0.462-8.456-1.383c-2.242-0.922-4.014-2.253-5.313-3.992
s-2.211-3.845-2.734-6.318c-0.524-2.473-0.786-5.26-0.786-8.361V7.903c1.215-0.167,2.264-0.283,3.144-0.346
s1.718-0.095,2.515-0.095c0.712,0,1.498,0.032,2.357,0.095s1.896,0.179,3.112,0.346v24.394c0,2.096,0.084,3.877,0.252,5.344
c0.167,1.468,0.471,2.662,0.911,3.583c0.44,0.923,1.058,1.583,1.854,1.98c0.796,0.399,1.844,0.598,3.144,0.598
c1.299,0,2.357-0.198,3.175-0.598c0.817-0.397,1.446-1.058,1.887-1.98c0.439-0.921,0.732-2.115,0.88-3.583
c0.146-1.467,0.22-3.248,0.22-5.344V7.903c1.258-0.167,2.315-0.283,3.175-0.346c0.858-0.063,1.645-0.095,2.357-0.095
c0.755,0,1.572,0.032,2.452,0.095s1.928,0.179,3.144,0.346v25.714c0,3.102-0.263,5.889-0.786,8.361
c-0.524,2.474-1.436,4.579-2.734,6.318c-1.3,1.739-3.071,3.07-5.313,3.992C182.176,53.21,179.358,53.672,175.963,53.672z"/>
<path fill="#454545" d="M211.105,30.474c0,8.886,3.73,13.328,11.19,13.328c1.342,0,2.609-0.126,3.804-0.377
c1.195-0.252,2.65-0.67,4.37-1.258c1.383,3.018,2.304,6.12,2.766,9.305c-1.216,0.462-2.348,0.839-3.395,1.132
c-1.048,0.293-2.055,0.513-3.018,0.66c-0.965,0.146-1.918,0.251-2.861,0.314c-0.942,0.063-1.917,0.094-2.923,0.094
c-3.563,0-6.695-0.576-9.399-1.729c-2.703-1.152-4.966-2.756-6.789-4.81c-1.823-2.053-3.197-4.505-4.118-7.355
c-0.923-2.851-1.384-5.951-1.384-9.305c0-3.353,0.481-6.465,1.446-9.336c0.964-2.871,2.357-5.354,4.181-7.45
s4.076-3.73,6.759-4.904c2.682-1.173,5.721-1.76,9.116-1.76c2.012,0,3.918,0.147,5.721,0.439c1.802,0.294,3.813,0.881,6.035,1.761
c-0.084,1.719-0.398,3.385-0.942,4.998c-0.545,1.614-1.111,3.028-1.697,4.243c-0.839-0.292-1.604-0.544-2.295-0.754
c-0.691-0.209-1.352-0.377-1.98-0.503s-1.258-0.22-1.886-0.283c-0.629-0.063-1.3-0.094-2.013-0.094
c-3.395,0-6.025,1.143-7.89,3.426C212.038,22.542,211.105,25.946,211.105,30.474z"/>
<path fill="#454545" d="M262.658,29.404c0,1.468-0.188,3.103-0.565,4.904h-12.134v8.927h15.779
c0.378,1.761,0.566,3.354,0.566,4.778c0,1.551-0.188,3.206-0.566,4.967h-26.907V7.777h26.53c0.167,0.923,0.293,1.782,0.377,2.578
c0.084,0.797,0.126,1.551,0.126,2.263c0,1.384-0.168,3.04-0.503,4.967h-15.402v6.916h12.134
C262.47,26.346,262.658,27.98,262.658,29.404z"/>
<path fill="#454545" d="M271.962,7.903c0.921-0.167,1.76-0.293,2.515-0.377c0.754-0.084,1.487-0.126,2.2-0.126
c0.755,0,1.54,0.053,2.357,0.157c0.817,0.105,1.519,0.22,2.106,0.346l14.586,24.645V7.903c1.089-0.167,2.074-0.293,2.954-0.377
c0.881-0.084,1.676-0.126,2.39-0.126c0.712,0,1.467,0.042,2.263,0.126s1.635,0.21,2.515,0.377l-0.063,44.889
c-0.419,0.126-1.027,0.251-1.823,0.377c-0.797,0.126-1.656,0.188-2.577,0.188c-1.049,0-1.991-0.073-2.829-0.22
c-0.839-0.147-1.446-0.262-1.823-0.346l-14.648-24.52v24.52c-1.846,0.377-3.521,0.565-5.03,0.565s-3.206-0.188-5.092-0.565V7.903z"
/>
<path fill="#454545" d="M337.22,29.404c0,1.468-0.188,3.103-0.565,4.904h-12.134v8.927H340.3c0.378,1.761,0.566,3.354,0.566,4.778
c0,1.551-0.188,3.206-0.566,4.967h-26.907V7.777h26.53c0.167,0.923,0.293,1.782,0.377,2.578c0.084,0.797,0.126,1.551,0.126,2.263
c0,1.384-0.168,3.04-0.503,4.967h-15.402v6.916h12.134C337.031,26.346,337.22,27.98,337.22,29.404z"/>
</g>
<g display="inline">
<path fill="#454545" d="M148.06,71.438l1.113-0.667c0.783,1.441,1.688,2.163,2.715,2.163c0.439,0,0.852-0.103,1.237-0.308
c0.386-0.204,0.68-0.479,0.882-0.823c0.201-0.344,0.303-0.709,0.303-1.095c0-0.439-0.148-0.87-0.445-1.291
c-0.41-0.582-1.157-1.282-2.243-2.102c-1.093-0.824-1.772-1.421-2.039-1.789c-0.463-0.617-0.694-1.285-0.694-2.003
c0-0.569,0.137-1.089,0.409-1.558c0.273-0.469,0.657-0.839,1.153-1.108c0.495-0.271,1.034-0.405,1.615-0.405
c0.617,0,1.194,0.153,1.731,0.459s1.105,0.867,1.705,1.687l-1.068,0.811c-0.492-0.653-0.912-1.083-1.26-1.291
c-0.347-0.208-0.726-0.312-1.135-0.312c-0.528,0-0.96,0.16-1.295,0.48c-0.336,0.32-0.503,0.715-0.503,1.184
c0,0.285,0.059,0.562,0.178,0.828c0.118,0.268,0.335,0.558,0.649,0.873c0.173,0.166,0.736,0.602,1.691,1.309
c1.134,0.836,1.911,1.581,2.333,2.234c0.421,0.652,0.632,1.309,0.632,1.967c0,0.95-0.36,1.775-1.082,2.476
c-0.721,0.7-1.598,1.05-2.63,1.05c-0.796,0-1.517-0.212-2.164-0.637C149.202,73.146,148.605,72.435,148.06,71.438z"/>
<path fill="#454545" d="M160.325,60.781h7.505v1.282h-6.196v4.104h6.143v1.281h-6.143v5.146h6.143v1.282h-7.451V60.781z"/>
<path fill="#454545" d="M177.266,60.781l6.106,13.096h-1.413l-2.06-4.309h-5.642l-2.04,4.309h-1.46l6.187-13.096H177.266z
M177.1,63.563l-2.244,4.74h4.478L177.1,63.563z"/>
<path fill="#454545" d="M187.296,60.781h2.608c1.454,0,2.438,0.06,2.955,0.179c0.777,0.179,1.41,0.56,1.896,1.146
c0.486,0.585,0.729,1.306,0.729,2.161c0,0.714-0.167,1.34-0.503,1.881c-0.335,0.541-0.814,0.949-1.438,1.226
s-1.483,0.418-2.581,0.424l4.709,6.08h-1.619l-4.71-6.08h-0.739v6.08h-1.309V60.781z M188.604,62.063v4.451l2.256,0.018
c0.874,0,1.521-0.083,1.939-0.249s0.746-0.432,0.98-0.797c0.235-0.364,0.353-0.772,0.353-1.224c0-0.439-0.119-0.839-0.356-1.197
c-0.238-0.359-0.55-0.616-0.937-0.771s-1.028-0.231-1.926-0.231H188.604z"/>
<path fill="#454545" d="M212.311,63.212l-1.033,0.792c-0.569-0.741-1.254-1.304-2.052-1.687s-1.675-0.574-2.631-0.574
c-1.044,0-2.012,0.251-2.902,0.752c-0.89,0.502-1.58,1.175-2.069,2.021c-0.489,0.847-0.734,1.798-0.734,2.854
c0,1.597,0.547,2.929,1.643,3.997c1.095,1.068,2.476,1.603,4.144,1.603c1.834,0,3.368-0.718,4.603-2.154l1.033,0.783
c-0.653,0.831-1.468,1.474-2.444,1.928c-0.976,0.454-2.066,0.681-3.271,0.681c-2.291,0-4.098-0.763-5.421-2.288
c-1.11-1.287-1.665-2.843-1.665-4.664c0-1.917,0.672-3.53,2.017-4.839c1.344-1.309,3.028-1.963,5.052-1.963
c1.223,0,2.326,0.242,3.312,0.726S211.681,62.34,212.311,63.212z"/>
<path fill="#454545" d="M216.742,60.781h1.309v5.493h6.668v-5.493h1.309v13.096h-1.309v-6.32h-6.668v6.32h-1.309V60.781z"/>
<path fill="#454545" d="M237.917,60.781h7.505v1.282h-6.196v4.104h6.143v1.281h-6.143v5.146h6.143v1.282h-7.451V60.781z"/>
<path fill="#454545" d="M249.515,73.877V60.781h0.285l8.715,10.038V60.781h1.291v13.096h-0.294l-8.644-9.916v9.916H249.515z"/>
<path fill="#454545" d="M277.448,62.98l-1.015,0.962c-0.729-0.719-1.529-1.263-2.399-1.634c-0.869-0.371-1.717-0.557-2.541-0.557
c-1.027,0-2.005,0.252-2.934,0.757c-0.929,0.504-1.648,1.188-2.159,2.052c-0.51,0.863-0.766,1.776-0.766,2.737
c0,0.985,0.265,1.922,0.793,2.809c0.528,0.888,1.258,1.585,2.189,2.093c0.932,0.507,1.953,0.761,3.063,0.761
c1.348,0,2.487-0.38,3.419-1.14s1.483-1.745,1.655-2.955h-4.175v-1.265h5.645c-0.013,2.024-0.613,3.631-1.803,4.821
c-1.19,1.189-2.782,1.784-4.776,1.784c-2.422,0-4.339-0.824-5.751-2.475c-1.086-1.27-1.629-2.739-1.629-4.406
c0-1.241,0.312-2.396,0.935-3.464c0.623-1.067,1.478-1.903,2.563-2.506c1.086-0.602,2.314-0.903,3.686-0.903
c1.11,0,2.154,0.2,3.134,0.601C275.562,61.454,276.517,62.097,277.448,62.98z"/>
<path fill="#454545" d="M282.352,60.781h1.309v13.096h-1.309V60.781z"/>
<path fill="#454545" d="M288.493,73.877V60.781h0.285l8.715,10.038V60.781h1.291v13.096h-0.294l-8.644-9.916v9.916H288.493z"/>
<path fill="#454545" d="M303.803,60.781h7.505v1.282h-6.196v4.104h6.143v1.281h-6.143v5.146h6.143v1.282h-7.451V60.781z"/>
<path fill="#454545" d="M322.264,60.781h1.309v11.832h5.038v1.264h-6.347V60.781z"/>
<path fill="#454545" d="M332.32,60.781h1.309v13.096h-1.309V60.781z"/>
<path fill="#454545" d="M338.488,60.781h2.582c1.038,0,1.837,0.124,2.395,0.37s0.999,0.624,1.322,1.135s0.485,1.077,0.485,1.7
c0,0.582-0.142,1.111-0.426,1.589c-0.283,0.479-0.7,0.865-1.249,1.162c0.681,0.231,1.204,0.503,1.571,0.814
c0.366,0.312,0.652,0.688,0.856,1.131s0.306,0.921,0.306,1.438c0,1.051-0.384,1.939-1.152,2.666
c-0.769,0.728-1.8,1.091-3.094,1.091h-3.597V60.781z M339.771,62.063v4.193h0.749c0.91,0,1.579-0.085,2.008-0.254
c0.428-0.169,0.767-0.437,1.017-0.802c0.25-0.364,0.375-0.77,0.375-1.215c0-0.6-0.21-1.069-0.629-1.411
c-0.419-0.341-1.087-0.512-2.003-0.512H339.771z M339.771,67.574v5.021h1.623c0.957,0,1.658-0.093,2.104-0.28
c0.446-0.187,0.804-0.479,1.074-0.877s0.406-0.828,0.406-1.291c0-0.581-0.19-1.089-0.57-1.521c-0.381-0.434-0.903-0.73-1.568-0.891
c-0.446-0.106-1.223-0.16-2.329-0.16H339.771z"/>
<path fill="#454545" d="M350.816,60.781h2.608c1.454,0,2.438,0.06,2.955,0.179c0.777,0.179,1.41,0.56,1.896,1.146
c0.486,0.585,0.729,1.306,0.729,2.161c0,0.714-0.167,1.34-0.503,1.881c-0.335,0.541-0.814,0.949-1.438,1.226
s-1.483,0.418-2.581,0.424l4.709,6.08h-1.619l-4.71-6.08h-0.739v6.08h-1.309V60.781z M352.125,62.063v4.451l2.256,0.018
c0.874,0,1.521-0.083,1.939-0.249s0.746-0.432,0.98-0.797c0.235-0.364,0.353-0.772,0.353-1.224c0-0.439-0.119-0.839-0.356-1.197
c-0.238-0.359-0.55-0.616-0.937-0.771s-1.028-0.231-1.926-0.231H352.125z"/>
<path fill="#454545" d="M368.985,60.781l6.106,13.096h-1.413l-2.06-4.309h-5.642l-2.04,4.309h-1.46l6.187-13.096H368.985z
M368.819,63.563l-2.244,4.74h4.478L368.819,63.563z"/>
<path fill="#454545" d="M379.016,60.781h2.608c1.454,0,2.438,0.06,2.955,0.179c0.777,0.179,1.41,0.56,1.896,1.146
c0.486,0.585,0.729,1.306,0.729,2.161c0,0.714-0.167,1.34-0.503,1.881c-0.335,0.541-0.814,0.949-1.438,1.226
s-1.483,0.418-2.581,0.424l4.709,6.08h-1.619l-4.71-6.08h-0.739v6.08h-1.309V60.781z M380.324,62.063v4.451l2.256,0.018
c0.874,0,1.521-0.083,1.939-0.249s0.746-0.432,0.98-0.797c0.235-0.364,0.353-0.772,0.353-1.224c0-0.439-0.119-0.839-0.356-1.197
c-0.238-0.359-0.55-0.616-0.937-0.771s-1.028-0.231-1.926-0.231H380.324z"/>
<path fill="#454545" d="M390.8,60.781h1.506l3.351,5.401l3.299-5.401h1.513l-4.148,6.837v6.259h-1.291v-6.259L390.8,60.781z"/>
</g>
<polygon display="inline" fill="#454545" points="102.088,33.602 102.088,33.602 102.088,33.602 "/>
<g display="inline">
<path fill="#454545" d="M429.885,23.81v4.638h-0.722V23.81h-1.682v-0.65h4.161v0.65H429.885z"/>
<path fill="#454545" d="M436.969,28.447l-0.628-3.396l-1.155,3.469h-0.181l-1.188-3.469l-0.613,3.396h-0.686l0.989-5.288h0.328
l1.26,3.858l1.162-3.858h0.325l1.071,5.288H436.969z"/>
</g>
<path display="inline" fill="#454545" d="M12.543,28.71c10.422-13.303,30.352-13.869,44.994-8.13
c7.021,1.816,10.947,5.806,20.154,6.474c7.519,0.545,12.931-4.87,9.955-9.338c-9.261-13.904-34.021,11.262-37.462,15.51
c-6.358,7.887-9.467,18.986-21.334,20.536C16.056,55.433,5.442,41.089,17.595,31.904c16.735-12.608,33.001,5.291,51.931,10.523
c10.511,2.903,27.66,3.712,32.292-11.092c11.733,14.346-8.135,34.643-29.003,27.11c-13.773-4.975-33.137-23.473-45.238-21.991
c-5.18,0.636-6.658,9.087-0.937,9.206c5.479,1.682,11.943-6.838,15.73-9.943c9.093-7.59,14.618-18.118,24.95-24.695
c10.731-6.828,31.151-5.04,30.852,8.341c-0.428,19.032-20.107,18.284-31.823,13.176C48.77,24.873,29.943,14.239,12.543,28.71
C13.014,28.113,12.543,28.71,12.543,28.71z"/>
</svg>

Before

Width:  |  Height:  |  Size: 15 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 5.1 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 5.3 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 12 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 12 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 1.1 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 1.1 KiB

View File

@ -1 +0,0 @@
1b519a257237cc5a7876a18e4d84da345db9736d

Binary file not shown.

Before

Width:  |  Height:  |  Size: 22 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 25 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 2.4 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 2.5 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 98 KiB

View File

@ -1 +0,0 @@
e1051362ee5f7f32e03e5d7c08dcfcc48a135a53

Binary file not shown.

Before

Width:  |  Height:  |  Size: 8.5 KiB

View File

@ -1,263 +0,0 @@
<?xml version="1.0" encoding="utf-8"?>
<!--
Licensed to the Apache Software Foundation (ASF) under one
or more contributor license agreements. See the NOTICE file
distributed with this work for additional information
regarding copyright ownership. The ASF licenses this file
to you under the Apache License, Version 2.0 (the
"License"); you may not use this file except in compliance
with the License. You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing,
software distributed under the License is distributed on an
"AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
KIND, either express or implied. See the License for the
specific language governing permissions and limitations
under the License.
-->
<!-- Generator: Adobe Illustrator 15.0.0, SVG Export Plug-In . SVG Version: 6.00 Build 0) -->
<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">
<svg version="1.1" id="Reverse_Color" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px"
y="0px" width="440px" height="80px" viewBox="0 0 440 80" enable-background="new 0 0 440 80" xml:space="preserve">
<g>
<path fill="#0664A8" d="M348.927,53.062c-0.063-0.432-0.116-0.856-0.162-1.272c-0.046-0.417-0.069-0.841-0.069-1.273
c0-0.432,0.023-0.871,0.069-1.319c0.046-0.446,0.1-0.887,0.162-1.319c0.432-0.061,0.856-0.107,1.272-0.139
c0.417-0.03,0.841-0.046,1.273-0.046c0.432,0,0.863,0.016,1.296,0.046c0.432,0.031,0.863,0.078,1.296,0.139
c0.062,0.433,0.115,0.864,0.162,1.297c0.046,0.432,0.069,0.864,0.069,1.296c0,0.433-0.023,0.864-0.069,1.296
c-0.047,0.433-0.101,0.864-0.162,1.296c-0.433,0.062-0.856,0.107-1.272,0.139c-0.417,0.03-0.842,0.047-1.273,0.047
c-0.433,0-0.864-0.017-1.296-0.047C349.79,53.169,349.358,53.123,348.927,53.062z"/>
<path fill="#0664A8" d="M360.776,29.316c0.339-0.062,0.671-0.107,0.995-0.139c0.324-0.03,0.655-0.046,0.995-0.046
c0.339,0,0.655,0.016,0.949,0.046c0.292,0.031,0.608,0.077,0.948,0.139c0.093,0.463,0.186,1.088,0.278,1.875
c0.092,0.786,0.139,1.442,0.139,1.967c0.308-0.524,0.701-1.049,1.18-1.573s1.026-0.995,1.644-1.412s1.326-0.756,2.129-1.019
c0.803-0.262,1.682-0.394,2.639-0.394c2.715,0,4.721,0.78,6.018,2.338c1.296,1.559,1.943,3.865,1.943,6.92v15.043
c-0.34,0.062-0.725,0.107-1.157,0.139c-0.432,0.03-0.817,0.047-1.157,0.047s-0.717-0.017-1.134-0.047
c-0.416-0.031-0.795-0.077-1.134-0.139V39.269c0-2.191-0.34-3.803-1.019-4.837s-1.759-1.551-3.24-1.551
c-0.864,0-1.682,0.154-2.453,0.463s-1.45,0.786-2.036,1.435c-0.587,0.648-1.058,1.489-1.412,2.522
c-0.354,1.034-0.532,2.276-0.532,3.727v12.034c-0.34,0.062-0.718,0.107-1.134,0.139c-0.417,0.03-0.795,0.047-1.134,0.047
c-0.34,0-0.726-0.017-1.157-0.047c-0.433-0.031-0.818-0.077-1.157-0.139V29.316z"/>
<path fill="#0664A8" d="M390.954,42.323c0.062,2.592,0.732,4.489,2.014,5.693c1.28,1.203,3.171,1.805,5.67,1.805
c2.19,0,4.273-0.386,6.249-1.157c0.246,0.463,0.447,1.026,0.602,1.689c0.154,0.664,0.247,1.319,0.277,1.968
c-1.018,0.433-2.137,0.756-3.355,0.972c-1.22,0.216-2.568,0.324-4.05,0.324c-2.16,0-4.012-0.301-5.555-0.902
c-1.543-0.603-2.816-1.45-3.818-2.546c-1.003-1.096-1.736-2.392-2.199-3.889c-0.463-1.496-0.694-3.14-0.694-4.93
c0-1.759,0.224-3.401,0.672-4.929c0.446-1.528,1.134-2.854,2.06-3.981c0.926-1.126,2.09-2.021,3.494-2.685
c1.404-0.663,3.063-0.995,4.977-0.995c1.635,0,3.069,0.278,4.305,0.833c1.233,0.556,2.268,1.319,3.101,2.292
c0.833,0.972,1.466,2.129,1.898,3.471c0.432,1.343,0.647,2.801,0.647,4.375c0,0.432-0.016,0.887-0.046,1.365
c-0.031,0.479-0.063,0.887-0.093,1.227H390.954z M402.711,38.897c0-0.863-0.115-1.689-0.347-2.476
c-0.231-0.787-0.571-1.474-1.019-2.061c-0.447-0.585-1.019-1.057-1.713-1.411s-1.52-0.532-2.477-0.532
c-1.882,0-3.325,0.571-4.327,1.712c-1.003,1.143-1.613,2.731-1.828,4.768H402.711z"/>
<path fill="#0664A8" d="M414.144,32.973h-3.61l-0.185-0.647l7.961-8.887h0.37v5.878h6.018c0.123,0.525,0.186,1.111,0.186,1.759
c0,0.34-0.017,0.664-0.047,0.973c-0.031,0.309-0.077,0.617-0.139,0.925h-6.018v10.832c0,1.296,0.054,2.33,0.162,3.101
c0.108,0.771,0.293,1.365,0.556,1.782c0.262,0.417,0.617,0.694,1.064,0.833s1.011,0.208,1.689,0.208
c0.524,0,1.019-0.038,1.481-0.115s0.879-0.162,1.25-0.255c0.215,0.618,0.347,1.25,0.393,1.897c0.047,0.648,0.07,1.22,0.07,1.713
c-0.618,0.154-1.266,0.27-1.944,0.348c-0.68,0.076-1.404,0.115-2.176,0.115c-2.222,0-3.957-0.539-5.207-1.62
c-1.25-1.079-1.875-2.869-1.875-5.369V32.973z"/>
</g>
<g>
<path fill="#FFFFFF" d="M130.313,7.984c1.131-0.167,2.158-0.293,3.08-0.377s1.739-0.126,2.452-0.126
c0.754,0,1.604,0.042,2.546,0.126c0.943,0.084,1.959,0.21,3.05,0.377v35.207h14.522c0.209,1.048,0.346,1.959,0.408,2.734
c0.063,0.776,0.095,1.478,0.095,2.106c0,0.713-0.031,1.457-0.095,2.231c-0.063,0.776-0.199,1.708-0.408,2.798h-25.65V7.984z"/>
<path fill="#FFFFFF" d="M176.963,53.753c-3.395,0-6.214-0.462-8.456-1.383c-2.242-0.922-4.014-2.253-5.313-3.992
s-2.211-3.845-2.734-6.318c-0.524-2.473-0.786-5.26-0.786-8.361V7.984c1.215-0.167,2.264-0.283,3.144-0.346
s1.718-0.095,2.515-0.095c0.712,0,1.498,0.032,2.357,0.095s1.896,0.179,3.112,0.346v24.394c0,2.096,0.084,3.877,0.252,5.344
c0.167,1.468,0.471,2.662,0.911,3.583c0.44,0.923,1.058,1.583,1.854,1.98c0.796,0.399,1.844,0.598,3.144,0.598
c1.299,0,2.357-0.198,3.175-0.598c0.817-0.397,1.446-1.058,1.887-1.98c0.439-0.921,0.732-2.115,0.88-3.583
c0.146-1.467,0.22-3.248,0.22-5.344V7.984c1.258-0.167,2.315-0.283,3.175-0.346c0.858-0.063,1.645-0.095,2.357-0.095
c0.755,0,1.572,0.032,2.452,0.095s1.928,0.179,3.144,0.346v25.714c0,3.102-0.263,5.889-0.786,8.361
c-0.524,2.474-1.436,4.579-2.734,6.318c-1.3,1.739-3.071,3.07-5.313,3.992C183.176,53.291,180.358,53.753,176.963,53.753z"/>
<path fill="#FFFFFF" d="M212.105,30.555c0,8.886,3.73,13.328,11.19,13.328c1.342,0,2.609-0.126,3.804-0.377
c1.195-0.252,2.65-0.67,4.37-1.258c1.383,3.018,2.304,6.12,2.766,9.305c-1.216,0.462-2.348,0.839-3.395,1.132
c-1.048,0.293-2.055,0.513-3.018,0.66c-0.965,0.146-1.918,0.251-2.861,0.314c-0.942,0.063-1.917,0.094-2.923,0.094
c-3.563,0-6.695-0.576-9.399-1.729c-2.703-1.152-4.966-2.756-6.789-4.81c-1.823-2.053-3.197-4.505-4.118-7.355
c-0.923-2.851-1.384-5.951-1.384-9.305c0-3.353,0.481-6.465,1.446-9.336c0.964-2.871,2.357-5.354,4.181-7.45
s4.076-3.73,6.759-4.904c2.682-1.173,5.721-1.76,9.116-1.76c2.012,0,3.918,0.147,5.721,0.439c1.802,0.294,3.813,0.881,6.035,1.761
c-0.084,1.719-0.398,3.385-0.942,4.998c-0.545,1.614-1.111,3.028-1.697,4.243c-0.839-0.292-1.604-0.544-2.295-0.754
c-0.691-0.209-1.352-0.377-1.98-0.503s-1.258-0.22-1.886-0.283c-0.629-0.063-1.3-0.094-2.013-0.094
c-3.395,0-6.025,1.143-7.89,3.426C213.038,22.623,212.105,26.027,212.105,30.555z"/>
<path fill="#FFFFFF" d="M263.658,29.485c0,1.468-0.188,3.103-0.565,4.904h-12.134v8.927h15.779
c0.378,1.761,0.566,3.354,0.566,4.778c0,1.551-0.188,3.206-0.566,4.967h-26.907V7.858h26.53c0.167,0.923,0.293,1.782,0.377,2.578
c0.084,0.797,0.126,1.551,0.126,2.263c0,1.384-0.168,3.04-0.503,4.967h-15.402v6.916h12.134
C263.47,26.427,263.658,28.062,263.658,29.485z"/>
<path fill="#FFFFFF" d="M272.962,7.984c0.921-0.167,1.76-0.293,2.515-0.377c0.754-0.084,1.487-0.126,2.2-0.126
c0.755,0,1.54,0.053,2.357,0.157c0.817,0.105,1.519,0.22,2.106,0.346l14.586,24.645V7.984c1.089-0.167,2.074-0.293,2.954-0.377
c0.881-0.084,1.676-0.126,2.39-0.126c0.712,0,1.467,0.042,2.263,0.126s1.635,0.21,2.515,0.377l-0.063,44.889
c-0.419,0.126-1.027,0.251-1.823,0.377c-0.797,0.126-1.656,0.188-2.577,0.188c-1.049,0-1.991-0.073-2.829-0.22
c-0.839-0.147-1.446-0.262-1.823-0.346l-14.648-24.52v24.52c-1.846,0.377-3.521,0.565-5.03,0.565s-3.206-0.188-5.092-0.565V7.984z"
/>
<path fill="#FFFFFF" d="M338.22,29.485c0,1.468-0.188,3.103-0.565,4.904h-12.134v8.927H341.3c0.378,1.761,0.566,3.354,0.566,4.778
c0,1.551-0.188,3.206-0.566,4.967h-26.907V7.858h26.53c0.167,0.923,0.293,1.782,0.377,2.578c0.084,0.797,0.126,1.551,0.126,2.263
c0,1.384-0.168,3.04-0.503,4.967h-15.402v6.916h12.134C338.031,26.427,338.22,28.062,338.22,29.485z"/>
</g>
<g opacity="0.6">
<g>
<path fill="#FFFFFF" d="M149.061,71.519l1.113-0.667c0.783,1.441,1.688,2.163,2.715,2.163c0.439,0,0.852-0.103,1.237-0.308
c0.386-0.204,0.68-0.479,0.882-0.823c0.201-0.344,0.303-0.709,0.303-1.095c0-0.439-0.148-0.87-0.445-1.291
c-0.41-0.582-1.157-1.282-2.243-2.102c-1.093-0.824-1.772-1.421-2.039-1.789c-0.463-0.617-0.694-1.285-0.694-2.003
c0-0.569,0.137-1.089,0.409-1.558c0.273-0.469,0.657-0.839,1.153-1.108c0.495-0.271,1.034-0.405,1.615-0.405
c0.617,0,1.194,0.153,1.731,0.459s1.105,0.867,1.705,1.687l-1.068,0.811c-0.492-0.653-0.912-1.083-1.26-1.291
c-0.347-0.208-0.726-0.312-1.135-0.312c-0.528,0-0.96,0.16-1.295,0.48c-0.336,0.32-0.503,0.715-0.503,1.184
c0,0.285,0.059,0.562,0.178,0.828c0.118,0.268,0.335,0.558,0.649,0.873c0.173,0.166,0.736,0.602,1.691,1.309
c1.134,0.836,1.911,1.581,2.333,2.234c0.421,0.652,0.632,1.309,0.632,1.967c0,0.95-0.36,1.775-1.082,2.476
c-0.721,0.7-1.598,1.05-2.63,1.05c-0.796,0-1.517-0.212-2.164-0.637C150.203,73.227,149.606,72.516,149.061,71.519z"/>
<path fill="#FFFFFF" d="M161.326,60.862h7.505v1.282h-6.196v4.104h6.143v1.281h-6.143v5.146h6.143v1.282h-7.451V60.862z"/>
<path fill="#FFFFFF" d="M178.267,60.862l6.106,13.096h-1.413l-2.06-4.309h-5.642l-2.04,4.309h-1.46l6.187-13.096H178.267z
M178.101,63.645l-2.244,4.74h4.478L178.101,63.645z"/>
<path fill="#FFFFFF" d="M188.297,60.862h2.608c1.454,0,2.438,0.06,2.955,0.179c0.777,0.179,1.41,0.56,1.896,1.146
c0.486,0.585,0.729,1.306,0.729,2.161c0,0.714-0.167,1.34-0.503,1.881c-0.335,0.541-0.814,0.949-1.438,1.226
s-1.483,0.418-2.581,0.424l4.709,6.08h-1.619l-4.71-6.08h-0.739v6.08h-1.309V60.862z M189.605,62.145v4.451l2.256,0.018
c0.874,0,1.521-0.083,1.939-0.249s0.746-0.432,0.98-0.797c0.235-0.364,0.353-0.772,0.353-1.224c0-0.439-0.119-0.839-0.356-1.197
c-0.238-0.359-0.55-0.616-0.937-0.771s-1.028-0.231-1.926-0.231H189.605z"/>
<path fill="#FFFFFF" d="M213.312,63.293l-1.033,0.792c-0.569-0.741-1.254-1.304-2.052-1.687s-1.675-0.574-2.631-0.574
c-1.044,0-2.012,0.251-2.902,0.752c-0.89,0.502-1.58,1.175-2.069,2.021c-0.489,0.847-0.734,1.798-0.734,2.854
c0,1.597,0.547,2.929,1.643,3.997c1.095,1.068,2.476,1.603,4.144,1.603c1.834,0,3.368-0.718,4.603-2.154l1.033,0.783
c-0.653,0.831-1.468,1.474-2.444,1.928c-0.976,0.454-2.066,0.681-3.271,0.681c-2.291,0-4.098-0.763-5.421-2.288
c-1.11-1.287-1.665-2.843-1.665-4.664c0-1.917,0.672-3.53,2.017-4.839c1.344-1.309,3.028-1.963,5.052-1.963
c1.223,0,2.326,0.242,3.312,0.726S212.682,62.421,213.312,63.293z"/>
<path fill="#FFFFFF" d="M217.743,60.862h1.309v5.493h6.667v-5.493h1.31v13.096h-1.31v-6.32h-6.667v6.32h-1.309V60.862z"/>
<path fill="#FFFFFF" d="M238.918,60.862h7.505v1.282h-6.196v4.104h6.143v1.281h-6.143v5.146h6.143v1.282h-7.451V60.862z"/>
<path fill="#FFFFFF" d="M250.516,73.958V60.862h0.285l8.715,10.038V60.862h1.291v13.096h-0.294l-8.644-9.916v9.916H250.516z"/>
<path fill="#FFFFFF" d="M278.449,63.062l-1.015,0.962c-0.729-0.719-1.529-1.263-2.399-1.634c-0.869-0.371-1.717-0.557-2.541-0.557
c-1.027,0-2.005,0.252-2.934,0.757c-0.929,0.504-1.648,1.188-2.159,2.052c-0.51,0.863-0.766,1.776-0.766,2.737
c0,0.985,0.265,1.922,0.793,2.809c0.528,0.888,1.258,1.585,2.189,2.093c0.932,0.507,1.953,0.761,3.063,0.761
c1.348,0,2.487-0.38,3.419-1.14s1.483-1.745,1.655-2.955h-4.175v-1.265h5.645c-0.013,2.024-0.613,3.631-1.803,4.821
c-1.19,1.189-2.782,1.784-4.776,1.784c-2.422,0-4.339-0.824-5.751-2.475c-1.086-1.27-1.629-2.739-1.629-4.406
c0-1.241,0.312-2.396,0.935-3.464c0.623-1.067,1.478-1.903,2.563-2.506c1.086-0.602,2.314-0.903,3.686-0.903
c1.11,0,2.154,0.2,3.134,0.601C276.563,61.535,277.518,62.178,278.449,63.062z"/>
<path fill="#FFFFFF" d="M283.353,60.862h1.309v13.096h-1.309V60.862z"/>
<path fill="#FFFFFF" d="M289.494,73.958V60.862h0.285l8.715,10.038V60.862h1.291v13.096h-0.294l-8.644-9.916v9.916H289.494z"/>
<path fill="#FFFFFF" d="M304.804,60.862h7.505v1.282h-6.196v4.104h6.143v1.281h-6.143v5.146h6.143v1.282h-7.451V60.862z"/>
<path fill="#FFFFFF" d="M323.265,60.862h1.309v11.832h5.038v1.264h-6.347V60.862z"/>
<path fill="#FFFFFF" d="M333.321,60.862h1.309v13.096h-1.309V60.862z"/>
<path fill="#FFFFFF" d="M339.489,60.862h2.582c1.038,0,1.837,0.124,2.395,0.37s0.999,0.624,1.322,1.135s0.485,1.077,0.485,1.7
c0,0.582-0.142,1.111-0.426,1.589c-0.283,0.479-0.7,0.865-1.249,1.162c0.681,0.231,1.204,0.503,1.571,0.814
c0.366,0.312,0.652,0.688,0.856,1.131s0.306,0.921,0.306,1.438c0,1.051-0.384,1.939-1.152,2.666
c-0.769,0.728-1.8,1.091-3.094,1.091h-3.597V60.862z M340.771,62.145v4.193h0.749c0.91,0,1.579-0.085,2.008-0.254
c0.428-0.169,0.767-0.437,1.017-0.802c0.25-0.364,0.375-0.77,0.375-1.215c0-0.6-0.21-1.069-0.629-1.411
c-0.419-0.341-1.087-0.512-2.003-0.512H340.771z M340.771,67.655v5.021h1.623c0.957,0,1.658-0.093,2.104-0.28
c0.446-0.187,0.804-0.479,1.074-0.877s0.406-0.828,0.406-1.291c0-0.581-0.19-1.089-0.57-1.521
c-0.381-0.434-0.903-0.73-1.568-0.891c-0.446-0.106-1.223-0.16-2.329-0.16H340.771z"/>
<path fill="#FFFFFF" d="M351.817,60.862h2.608c1.454,0,2.438,0.06,2.955,0.179c0.777,0.179,1.41,0.56,1.896,1.146
c0.486,0.585,0.729,1.306,0.729,2.161c0,0.714-0.167,1.34-0.503,1.881c-0.335,0.541-0.814,0.949-1.438,1.226
s-1.483,0.418-2.581,0.424l4.709,6.08h-1.619l-4.71-6.08h-0.739v6.08h-1.309V60.862z M353.126,62.145v4.451l2.256,0.018
c0.874,0,1.521-0.083,1.939-0.249s0.746-0.432,0.98-0.797c0.235-0.364,0.353-0.772,0.353-1.224c0-0.439-0.119-0.839-0.356-1.197
c-0.238-0.359-0.55-0.616-0.937-0.771s-1.028-0.231-1.926-0.231H353.126z"/>
<path fill="#FFFFFF" d="M369.986,60.862l6.106,13.096h-1.413l-2.06-4.309h-5.642l-2.04,4.309h-1.46l6.187-13.096H369.986z
M369.82,63.645l-2.244,4.74h4.478L369.82,63.645z"/>
<path fill="#FFFFFF" d="M380.017,60.862h2.608c1.454,0,2.438,0.06,2.955,0.179c0.777,0.179,1.41,0.56,1.896,1.146
c0.486,0.585,0.729,1.306,0.729,2.161c0,0.714-0.167,1.34-0.503,1.881c-0.335,0.541-0.814,0.949-1.438,1.226
s-1.483,0.418-2.581,0.424l4.709,6.08h-1.619l-4.71-6.08h-0.739v6.08h-1.309V60.862z M381.325,62.145v4.451l2.256,0.018
c0.874,0,1.521-0.083,1.939-0.249s0.746-0.432,0.98-0.797c0.235-0.364,0.353-0.772,0.353-1.224c0-0.439-0.119-0.839-0.356-1.197
c-0.238-0.359-0.55-0.616-0.937-0.771s-1.028-0.231-1.926-0.231H381.325z"/>
<path fill="#FFFFFF" d="M391.801,60.862h1.506l3.351,5.401l3.299-5.401h1.513l-4.148,6.837v6.259h-1.291v-6.259L391.801,60.862z"
/>
</g>
</g>
<polygon fill="none" stroke="#FFFFFF" stroke-width="4" stroke-miterlimit="10" points="103.088,33.683 103.088,33.683
103.088,33.683 "/>
<g>
<path fill="#0664A8" d="M13.543,28.791c10.422-13.303,30.352-13.869,44.994-8.13c7.021,1.816,10.947,5.806,20.154,6.474
c7.519,0.545,12.931-4.87,9.955-9.338c-9.261-13.904-34.021,11.262-37.462,15.51c-6.358,7.887-9.467,18.986-21.334,20.536
C17.056,55.514,6.442,41.17,18.595,31.985c16.735-12.608,33.001,5.292,51.931,10.523c10.511,2.903,27.66,3.712,32.292-11.092
c11.733,14.346-8.135,34.643-29.003,27.11c-13.773-4.975-33.137-23.473-45.238-21.991c-5.18,0.636-6.658,9.087-0.937,9.206
c5.479,1.682,11.943-6.838,15.73-9.943c9.093-7.59,14.618-18.118,24.95-24.695c10.731-6.828,31.151-5.039,30.852,8.341
C98.744,38.477,79.064,37.729,67.349,32.62C49.77,24.954,30.943,14.32,13.543,28.791C14.014,28.193,13.543,28.791,13.543,28.791z"
/>
<path fill="none" d="M18.595,31.985c-1.777,0.521-2.899,1.835-3.419,3.489C16.013,34.262,17.139,33.086,18.595,31.985z"/>
<path fill="none" d="M67.349,32.62c-3.581-1.562-7.213-3.246-10.874-4.817c-0.981,0.931-1.867,1.808-2.631,2.59
c17.033,5.991,41.377,9.836,43.522-2.777c0-0.001,0-0.001,0-0.001C92.184,38.087,77.041,36.847,67.349,32.62z"/>
<path fill="none" d="M13.594,28.728c-0.009,0.012-0.02,0.023-0.029,0.038c-0.004,0.003-0.005,0.008-0.01,0.012
c-0.004,0.006-0.007,0.008-0.012,0.014c0.018-0.022,0.036-0.043,0.054-0.065C13.597,28.726,13.596,28.727,13.594,28.728z"/>
<path fill="none" d="M39.864,39.116c-0.021-0.008-0.042-0.02-0.063-0.029c0.02,0.014,0.038,0.025,0.058,0.036
C39.86,39.122,39.861,39.119,39.864,39.116z"/>
<path fill="none" d="M39.801,39.087c-4.105-1.877-7.934-2.952-11.225-2.551c-5.18,0.636-6.658,9.087-0.937,9.206
c0.603,0.188,1.217,0.247,1.84,0.206c2.596-1.035,4.919-2.312,7.124-3.775c1.135-0.979,2.231-2.041,3.255-3.05
C39.839,39.112,39.82,39.101,39.801,39.087z"/>
<path fill="none" d="M36.604,42.173c-2.205,1.464-4.528,2.74-7.124,3.775C31.842,45.791,34.306,44.152,36.604,42.173z"/>
<path fill="none" d="M84.95,14.487c-3.649-1.725-8.294-0.611-12.975,1.778C76.04,14.166,80.719,13.716,84.95,14.487z"/>
<path fill="none" d="M71.271,16.634c0.233-0.122,0.467-0.245,0.704-0.367C71.74,16.385,71.505,16.509,71.271,16.634z"/>
<path fill="none" d="M45.008,42.497c8.642,5.798,17.505,12.175,24.979,14.39c-7.616-3.699-16.427-10.234-24.638-14.918
C45.236,42.146,45.122,42.321,45.008,42.497z"/>
<path fill="none" d="M78.691,27.135c7.519,0.545,12.931-4.87,9.955-9.338c-1.051-1.576-2.301-2.65-3.696-3.31
c-4.231-0.771-8.91-0.321-12.975,1.778c0,0-0.001,0-0.001,0.001c-0.237,0.122-0.471,0.245-0.704,0.367
c-2.844,1.525-5.684,3.492-8.304,5.548C67.629,24.129,71.591,26.618,78.691,27.135z"/>
<path fill="#0664A8" d="M48.358,32.654c0.798,0.388,1.6,0.783,2.403,1.188c0.14-0.18,0.279-0.358,0.423-0.535
c0.489-0.606,1.412-1.634,2.659-2.914c-0.672-0.236-1.331-0.476-1.978-0.717C50.645,30.688,49.482,31.685,48.358,32.654z"/>
<path fill="#0664A8" d="M40.432,39.381c1.604,0.761,3.249,1.636,4.918,2.588c1.759-2.731,3.436-5.576,5.412-8.127
c-0.804-0.404-1.605-0.8-2.403-1.188C45.564,35.073,43.015,37.346,40.432,39.381z"/>
<path fill="#0664A8" d="M36.604,42.173c1.279-0.85,2.521-1.764,3.753-2.732c-0.167-0.106-0.333-0.212-0.498-0.317
C38.835,40.132,37.738,41.193,36.604,42.173z"/>
<path fill="#0664A8" d="M39.858,39.123c0.165,0.105,0.331,0.211,0.498,0.317c0.025-0.021,0.05-0.039,0.075-0.06
c-0.189-0.09-0.378-0.177-0.567-0.265C39.861,39.119,39.86,39.122,39.858,39.123z"/>
<path fill="#0664A8" d="M13.555,28.777c0.005-0.004,0.006-0.009,0.01-0.012C13.562,28.769,13.56,28.771,13.555,28.777z"/>
<path fill="#0664A8" d="M13.647,28.658c0.018-0.021,0.033-0.042,0.049-0.063C13.683,28.613,13.667,28.634,13.647,28.658z"/>
<path fill="#0664A8" d="M13.543,28.791c0.005-0.006,0.008-0.008,0.012-0.014C13.548,28.785,13.543,28.791,13.543,28.791z"/>
<path fill="#0664A8" d="M13.696,28.596c0.025-0.032,0.04-0.052,0.049-0.061C13.735,28.547,13.719,28.568,13.696,28.596z"/>
<path fill="#0664A8" d="M13.543,28.791c0.093-0.075,0.186-0.147,0.278-0.225c-0.074,0.054-0.149,0.105-0.225,0.159
C13.579,28.748,13.561,28.769,13.543,28.791z"/>
<path fill="#0664A8" d="M13.594,28.728c-0.011,0.013-0.021,0.027-0.029,0.038C13.574,28.751,13.585,28.739,13.594,28.728
L13.594,28.728z"/>
<path fill="#0664A8" d="M13.745,28.535C13.752,28.526,13.753,28.524,13.745,28.535L13.745,28.535z"/>
<path fill="#0664A8" d="M13.647,28.658c-0.019,0.025-0.037,0.048-0.054,0.069l0,0C13.614,28.701,13.632,28.678,13.647,28.658z"/>
<path fill="#0664A8" d="M39.801,39.087c0.021,0.01,0.043,0.021,0.063,0.029c1.311-1.29,2.502-2.494,3.506-3.317
c1.385-1.155,2.686-2.381,3.934-3.647c-9.803-4.634-19.179-7.345-28.709-0.166C24.27,30.32,31.791,34.02,39.801,39.087z"/>
<polygon fill="#0664A8" points="71.975,16.266 71.975,16.267 71.975,16.266 "/>
<path fill="#0664A8" d="M36.604,42.173c-2.298,1.979-4.762,3.618-7.124,3.775c-0.653,0.262-1.326,0.508-2.019,0.737
c-9.298,3.087-13.974-5.845-12.285-11.211c-6.154,8.903,3.412,19.838,14.675,18.368c7.585-0.991,11.593-5.884,15.157-11.346
c-1.561-1.046-3.115-2.075-4.651-3.057C39.124,40.409,37.883,41.323,36.604,42.173z"/>
<linearGradient id="SVGID_1_" gradientUnits="userSpaceOnUse" x1="18.8867" y1="46.5723" x2="27.3283" y2="37.3633">
<stop offset="0" style="stop-color:#02364F"/>
<stop offset="1" style="stop-color:#0664A8"/>
</linearGradient>
<path fill="url(#SVGID_1_)" d="M27.461,46.686c0.692-0.229,1.365-0.476,2.019-0.737c-0.623,0.041-1.237-0.019-1.84-0.206
c-5.722-0.119-4.243-8.57,0.937-9.206c3.291-0.401,7.119,0.674,11.225,2.551c-8.01-5.067-15.531-8.767-21.206-7.102
c-1.456,1.101-2.582,2.276-3.419,3.489C13.487,40.841,18.163,49.772,27.461,46.686z"/>
<path fill="#0664A8" d="M51.866,29.676c-0.562-0.21-1.114-0.423-1.655-0.636c-0.944,1.058-1.908,2.097-2.907,3.111
c0.352,0.166,0.702,0.334,1.055,0.503C49.482,31.685,50.645,30.688,51.866,29.676z"/>
<path fill="#0664A8" d="M43.37,35.799c-1.004,0.823-2.195,2.027-3.506,3.317c0.189,0.088,0.378,0.175,0.567,0.265
c2.583-2.035,5.133-4.308,7.927-6.727c-0.353-0.169-0.703-0.337-1.055-0.503C46.056,33.418,44.755,34.644,43.37,35.799z"/>
<linearGradient id="SVGID_2_" gradientUnits="userSpaceOnUse" x1="69.9873" y1="45.7852" x2="106.313" y2="45.7852">
<stop offset="0" style="stop-color:#02364F"/>
<stop offset="1" style="stop-color:#0664A8"/>
</linearGradient>
<path fill="url(#SVGID_2_)" d="M102.817,31.417c-4.449,17.729-19.28,29.483-32.83,25.47l0,0c1.314,0.638,2.595,1.193,3.827,1.641
C94.683,66.06,114.551,45.763,102.817,31.417z"/>
<path fill="#0664A8" d="M40.432,39.381c-0.025,0.021-0.05,0.039-0.075,0.06c1.536,0.981,3.091,2.011,4.651,3.057
c0.114-0.176,0.229-0.352,0.342-0.528C43.681,41.017,42.036,40.142,40.432,39.381z"/>
<path fill="#0664A8" d="M102.817,31.417c-4.632,14.804-21.781,13.995-32.292,11.092c-6.892-1.904-13.428-5.488-19.764-8.667
c-1.977,2.551-3.653,5.396-5.412,8.127c8.211,4.684,17.021,11.219,24.638,14.918l0,0C83.537,60.9,98.368,49.146,102.817,31.417z"/>
<path fill="#0664A8" d="M54.975,27.167c-0.768-0.319-1.535-0.633-2.305-0.938c-0.811,0.943-1.627,1.883-2.459,2.812
c0.541,0.213,1.094,0.426,1.655,0.636C52.86,28.851,53.893,28.013,54.975,27.167z"/>
<path fill="#0664A8" d="M56.475,27.803c-0.499-0.213-0.999-0.424-1.5-0.636c-1.082,0.846-2.114,1.684-3.108,2.509
c0.646,0.241,1.306,0.48,1.978,0.717C54.607,29.61,55.493,28.733,56.475,27.803z"/>
<path fill="#0664A8" d="M62.967,22.182c-0.222-0.092-0.445-0.184-0.671-0.273c-2.698,1.771-5.111,3.533-7.321,5.259
c0.501,0.212,1.001,0.423,1.5,0.636C58.342,26.034,60.563,24.072,62.967,22.182z"/>
<path fill="#0664A8" d="M52.67,26.229c1.688-1.965,3.358-3.941,5.101-5.861c-14.54-5.413-33.918-4.649-44.174,8.358
c0.075-0.054,0.15-0.105,0.225-0.159C26.371,18.33,39.654,21.05,52.67,26.229z"/>
<path fill="#0664A8" d="M71.271,16.634c-3.329,1.749-6.294,3.516-8.975,5.274c0.226,0.09,0.449,0.182,0.671,0.273
C65.587,20.126,68.427,18.159,71.271,16.634z"/>
<path fill="#0664A8" d="M54.975,27.167c2.21-1.726,4.623-3.488,7.321-5.259c-1.18-0.469-2.412-0.898-3.759-1.247
c-0.254-0.101-0.511-0.196-0.767-0.294c-1.742,1.92-3.413,3.896-5.101,5.861C53.439,26.534,54.207,26.848,54.975,27.167z"/>
<linearGradient id="SVGID_3_" gradientUnits="userSpaceOnUse" x1="93.6816" y1="11.458" x2="83.3222" y2="21.8175">
<stop offset="0" style="stop-color:#02364F"/>
<stop offset="1" style="stop-color:#0664A8"/>
</linearGradient>
<path fill="url(#SVGID_3_)" d="M84.95,14.487c1.396,0.659,2.646,1.733,3.696,3.31c2.976,4.468-2.437,9.883-9.955,9.338
c-7.101-0.517-11.063-3.006-15.725-4.953c-2.404,1.891-4.625,3.853-6.492,5.621c3.661,1.571,7.293,3.256,10.874,4.817
c9.692,4.227,24.835,5.467,30.018-5.006C98.491,21.006,92.414,15.848,84.95,14.487z"/>
<path fill="#0664A8" d="M62.296,21.908c2.681-1.759,5.646-3.525,8.975-5.274c0.234-0.125,0.47-0.249,0.704-0.367
c0-0.001,0-0.001,0-0.001h0.001c4.681-2.39,9.325-3.503,12.975-1.778c7.464,1.36,13.541,6.519,12.416,13.127
c1.083-2.187,1.73-4.883,1.806-8.17c0.3-13.38-20.12-15.169-30.852-8.341c-4.1,2.61-7.441,5.842-10.55,9.264
c0.256,0.098,0.513,0.193,0.767,0.294C59.884,21.01,61.116,21.439,62.296,21.908z"/>
</g>
<g opacity="0.6">
<g>
<path fill="#A09F9F" d="M430.885,27.024v4.638h-0.722v-4.638h-1.682v-0.65h4.161v0.65H430.885z"/>
<path fill="#A09F9F" d="M437.969,31.662l-0.628-3.396l-1.155,3.469h-0.181l-1.188-3.469l-0.613,3.396h-0.686l0.989-5.288h0.328
l1.26,3.858l1.162-3.858h0.325l1.071,5.288H437.969z"/>
</g>
</g>
</svg>

Before

Width:  |  Height:  |  Size: 23 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 5.9 KiB

View File

@ -1,173 +0,0 @@
<?xml version="1.0" encoding="utf-8"?>
<!--
Licensed to the Apache Software Foundation (ASF) under one
or more contributor license agreements. See the NOTICE file
distributed with this work for additional information
regarding copyright ownership. The ASF licenses this file
to you under the Apache License, Version 2.0 (the
"License"); you may not use this file except in compliance
with the License. You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing,
software distributed under the License is distributed on an
"AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
KIND, either express or implied. See the License for the
specific language governing permissions and limitations
under the License.
-->
<!-- Generator: Adobe Illustrator 15.0.0, SVG Export Plug-In . SVG Version: 6.00 Build 0) -->
<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">
<svg version="1.1" id="Reverse_Grayscale" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px"
y="0px" width="440px" height="80px" viewBox="0 0 440 80" enable-background="new 0 0 440 80" xml:space="preserve">
<g>
<path fill="#FFFFFF" d="M347.927,52.611c-0.063-0.432-0.116-0.856-0.162-1.272c-0.046-0.417-0.069-0.841-0.069-1.273
c0-0.432,0.023-0.871,0.069-1.319c0.046-0.446,0.1-0.887,0.162-1.319c0.432-0.061,0.856-0.107,1.272-0.139
c0.417-0.03,0.841-0.046,1.273-0.046c0.432,0,0.863,0.016,1.296,0.046c0.432,0.031,0.863,0.078,1.296,0.139
c0.062,0.433,0.115,0.864,0.162,1.297c0.046,0.432,0.069,0.864,0.069,1.296c0,0.433-0.023,0.864-0.069,1.296
c-0.047,0.433-0.101,0.864-0.162,1.296c-0.433,0.062-0.856,0.107-1.272,0.139c-0.417,0.03-0.842,0.047-1.273,0.047
c-0.433,0-0.864-0.017-1.296-0.047C348.79,52.719,348.358,52.673,347.927,52.611z"/>
<path fill="#FFFFFF" d="M359.776,28.866c0.339-0.062,0.671-0.107,0.995-0.139c0.324-0.03,0.655-0.047,0.995-0.047
c0.339,0,0.655,0.017,0.949,0.047c0.292,0.031,0.608,0.077,0.948,0.139c0.093,0.463,0.186,1.088,0.278,1.875
c0.092,0.786,0.139,1.442,0.139,1.967c0.308-0.524,0.701-1.049,1.18-1.573s1.026-0.995,1.644-1.412s1.326-0.756,2.129-1.019
c0.803-0.262,1.682-0.394,2.639-0.394c2.715,0,4.721,0.78,6.018,2.338c1.296,1.559,1.943,3.865,1.943,6.92v15.043
c-0.34,0.062-0.725,0.107-1.157,0.139c-0.432,0.03-0.817,0.047-1.157,0.047s-0.717-0.017-1.134-0.047
c-0.416-0.031-0.795-0.077-1.134-0.139V38.818c0-2.191-0.34-3.803-1.019-4.837s-1.759-1.551-3.24-1.551
c-0.864,0-1.682,0.154-2.453,0.463s-1.45,0.786-2.036,1.435c-0.587,0.648-1.058,1.489-1.412,2.522
c-0.354,1.034-0.532,2.276-0.532,3.727v12.034c-0.34,0.062-0.718,0.107-1.134,0.139c-0.417,0.03-0.795,0.047-1.134,0.047
c-0.34,0-0.726-0.017-1.157-0.047c-0.433-0.031-0.818-0.077-1.157-0.139V28.866z"/>
<path fill="#FFFFFF" d="M389.954,41.873c0.062,2.592,0.732,4.489,2.014,5.693c1.28,1.203,3.171,1.805,5.67,1.805
c2.19,0,4.273-0.386,6.249-1.157c0.246,0.463,0.447,1.026,0.602,1.689c0.154,0.664,0.247,1.319,0.277,1.968
c-1.018,0.433-2.137,0.756-3.355,0.972c-1.22,0.216-2.568,0.324-4.05,0.324c-2.16,0-4.012-0.301-5.555-0.902
c-1.543-0.603-2.816-1.45-3.818-2.546c-1.003-1.096-1.736-2.392-2.199-3.889c-0.463-1.496-0.694-3.14-0.694-4.93
c0-1.759,0.224-3.401,0.672-4.929c0.446-1.528,1.134-2.854,2.06-3.981c0.926-1.126,2.09-2.021,3.494-2.685
c1.404-0.663,3.063-0.995,4.977-0.995c1.635,0,3.069,0.278,4.305,0.833c1.233,0.556,2.268,1.319,3.101,2.292
c0.833,0.972,1.466,2.129,1.898,3.471c0.432,1.343,0.647,2.801,0.647,4.375c0,0.432-0.016,0.887-0.046,1.365
c-0.031,0.479-0.063,0.887-0.093,1.227H389.954z M401.711,38.447c0-0.863-0.115-1.689-0.347-2.476
c-0.231-0.787-0.571-1.474-1.019-2.061c-0.447-0.585-1.019-1.057-1.713-1.411s-1.52-0.532-2.477-0.532
c-1.882,0-3.325,0.571-4.327,1.712c-1.003,1.143-1.613,2.731-1.828,4.768H401.711z"/>
<path fill="#FFFFFF" d="M413.144,32.522h-3.61l-0.185-0.647l7.961-8.887h0.37v5.878h6.018c0.123,0.525,0.186,1.111,0.186,1.759
c0,0.34-0.017,0.664-0.047,0.973c-0.031,0.309-0.077,0.617-0.139,0.925h-6.018v10.832c0,1.296,0.054,2.33,0.162,3.101
c0.108,0.771,0.293,1.365,0.556,1.782c0.262,0.417,0.617,0.694,1.064,0.833s1.011,0.208,1.689,0.208
c0.524,0,1.019-0.038,1.481-0.115s0.879-0.162,1.25-0.255c0.215,0.618,0.347,1.25,0.393,1.897c0.047,0.648,0.07,1.22,0.07,1.713
c-0.618,0.154-1.266,0.27-1.944,0.348c-0.68,0.076-1.404,0.115-2.176,0.115c-2.222,0-3.957-0.539-5.207-1.62
c-1.25-1.079-1.875-2.869-1.875-5.369V32.522z"/>
</g>
<g>
<path fill="#FFFFFF" d="M129.313,7.534c1.131-0.167,2.158-0.293,3.08-0.377s1.739-0.126,2.452-0.126
c0.754,0,1.604,0.042,2.546,0.126c0.943,0.084,1.959,0.21,3.05,0.377v35.207h14.522c0.209,1.048,0.346,1.959,0.408,2.734
c0.063,0.776,0.095,1.478,0.095,2.106c0,0.713-0.031,1.457-0.095,2.231c-0.063,0.776-0.199,1.708-0.408,2.798h-25.65V7.534z"/>
<path fill="#FFFFFF" d="M175.963,53.303c-3.395,0-6.214-0.462-8.456-1.383c-2.242-0.922-4.014-2.253-5.313-3.992
s-2.211-3.845-2.734-6.318c-0.524-2.473-0.786-5.26-0.786-8.361V7.534c1.215-0.167,2.264-0.283,3.144-0.346
s1.718-0.095,2.515-0.095c0.712,0,1.498,0.032,2.357,0.095s1.896,0.179,3.112,0.346v24.394c0,2.096,0.084,3.877,0.252,5.344
c0.167,1.468,0.471,2.662,0.911,3.583c0.44,0.923,1.058,1.583,1.854,1.98c0.796,0.399,1.844,0.598,3.144,0.598
c1.299,0,2.357-0.198,3.175-0.598c0.817-0.397,1.446-1.058,1.887-1.98c0.439-0.921,0.732-2.115,0.88-3.583
c0.146-1.467,0.22-3.248,0.22-5.344V7.534c1.258-0.167,2.315-0.283,3.175-0.346c0.858-0.063,1.645-0.095,2.357-0.095
c0.755,0,1.572,0.032,2.452,0.095s1.928,0.179,3.144,0.346v25.714c0,3.102-0.263,5.889-0.786,8.361
c-0.524,2.474-1.436,4.579-2.734,6.318c-1.3,1.739-3.071,3.07-5.313,3.992C182.176,52.841,179.358,53.303,175.963,53.303z"/>
<path fill="#FFFFFF" d="M211.105,30.104c0,8.886,3.73,13.328,11.19,13.328c1.342,0,2.609-0.126,3.804-0.377
c1.195-0.252,2.65-0.67,4.37-1.258c1.383,3.018,2.304,6.12,2.766,9.305c-1.216,0.462-2.348,0.839-3.395,1.132
c-1.048,0.293-2.055,0.513-3.018,0.66c-0.965,0.146-1.918,0.251-2.861,0.314c-0.942,0.063-1.917,0.094-2.923,0.094
c-3.563,0-6.695-0.576-9.399-1.729c-2.703-1.152-4.966-2.756-6.789-4.81c-1.823-2.053-3.197-4.505-4.118-7.355
c-0.923-2.851-1.384-5.951-1.384-9.305c0-3.353,0.481-6.465,1.446-9.336c0.964-2.871,2.357-5.354,4.181-7.45
s4.076-3.73,6.759-4.904c2.682-1.173,5.721-1.76,9.116-1.76c2.012,0,3.918,0.147,5.721,0.439c1.802,0.294,3.813,0.881,6.035,1.761
c-0.084,1.719-0.398,3.385-0.942,4.998c-0.545,1.614-1.111,3.028-1.697,4.243c-0.839-0.292-1.604-0.544-2.295-0.754
c-0.691-0.209-1.352-0.377-1.98-0.503s-1.258-0.22-1.886-0.283c-0.629-0.063-1.3-0.094-2.013-0.094
c-3.395,0-6.025,1.143-7.89,3.426C212.038,22.173,211.105,25.577,211.105,30.104z"/>
<path fill="#FFFFFF" d="M262.658,29.035c0,1.468-0.188,3.103-0.565,4.904h-12.134v8.927h15.779
c0.378,1.761,0.566,3.354,0.566,4.778c0,1.551-0.188,3.206-0.566,4.967h-26.907V7.408h26.53c0.167,0.923,0.293,1.782,0.377,2.578
c0.084,0.797,0.126,1.551,0.126,2.263c0,1.384-0.168,3.04-0.503,4.967h-15.402v6.916h12.134
C262.47,25.977,262.658,27.611,262.658,29.035z"/>
<path fill="#FFFFFF" d="M271.962,7.534c0.921-0.167,1.76-0.293,2.515-0.377c0.754-0.084,1.487-0.126,2.2-0.126
c0.755,0,1.54,0.053,2.357,0.157c0.817,0.105,1.519,0.22,2.106,0.346l14.586,24.645V7.534c1.089-0.167,2.074-0.293,2.954-0.377
c0.881-0.084,1.676-0.126,2.39-0.126c0.712,0,1.467,0.042,2.263,0.126s1.635,0.21,2.515,0.377l-0.063,44.889
c-0.419,0.126-1.027,0.251-1.823,0.377c-0.797,0.126-1.656,0.188-2.577,0.188c-1.049,0-1.991-0.073-2.829-0.22
c-0.839-0.147-1.446-0.262-1.823-0.346l-14.648-24.52v24.52c-1.846,0.377-3.521,0.565-5.03,0.565s-3.206-0.188-5.092-0.565V7.534z"
/>
<path fill="#FFFFFF" d="M337.22,29.035c0,1.468-0.188,3.103-0.565,4.904h-12.134v8.927H340.3c0.378,1.761,0.566,3.354,0.566,4.778
c0,1.551-0.188,3.206-0.566,4.967h-26.907V7.408h26.53c0.167,0.923,0.293,1.782,0.377,2.578c0.084,0.797,0.126,1.551,0.126,2.263
c0,1.384-0.168,3.04-0.503,4.967h-15.402v6.916h12.134C337.031,25.977,337.22,27.611,337.22,29.035z"/>
</g>
<g opacity="0.6">
<g>
<path fill="#FFFFFF" d="M148.06,71.068l1.113-0.667c0.783,1.441,1.688,2.163,2.715,2.163c0.439,0,0.852-0.103,1.237-0.308
c0.386-0.204,0.68-0.479,0.882-0.823c0.201-0.344,0.303-0.709,0.303-1.095c0-0.439-0.148-0.87-0.445-1.291
c-0.41-0.582-1.157-1.282-2.243-2.102c-1.093-0.824-1.772-1.421-2.039-1.789c-0.463-0.617-0.694-1.285-0.694-2.003
c0-0.569,0.137-1.089,0.409-1.558c0.273-0.469,0.657-0.839,1.153-1.108c0.495-0.271,1.034-0.405,1.615-0.405
c0.617,0,1.194,0.153,1.731,0.459s1.105,0.867,1.705,1.687l-1.068,0.811c-0.492-0.653-0.912-1.083-1.26-1.291
c-0.347-0.208-0.726-0.312-1.135-0.312c-0.528,0-0.96,0.16-1.295,0.48c-0.336,0.32-0.503,0.715-0.503,1.184
c0,0.285,0.059,0.562,0.178,0.828c0.118,0.268,0.335,0.558,0.649,0.873c0.173,0.166,0.736,0.602,1.691,1.309
c1.134,0.836,1.911,1.581,2.333,2.234c0.421,0.652,0.632,1.309,0.632,1.967c0,0.95-0.36,1.775-1.082,2.476
c-0.721,0.7-1.598,1.05-2.63,1.05c-0.796,0-1.517-0.212-2.164-0.637C149.202,72.776,148.605,72.065,148.06,71.068z"/>
<path fill="#FFFFFF" d="M160.325,60.412h7.505v1.282h-6.196v4.104h6.143v1.281h-6.143v5.146h6.143v1.282h-7.451V60.412z"/>
<path fill="#FFFFFF" d="M177.266,60.412l6.106,13.096h-1.413l-2.06-4.309h-5.642l-2.04,4.309h-1.46l6.187-13.096H177.266z
M177.1,63.194l-2.244,4.74h4.478L177.1,63.194z"/>
<path fill="#FFFFFF" d="M187.296,60.412h2.608c1.454,0,2.438,0.06,2.955,0.179c0.777,0.179,1.41,0.56,1.896,1.146
c0.486,0.585,0.729,1.306,0.729,2.161c0,0.714-0.167,1.34-0.503,1.881c-0.335,0.541-0.814,0.949-1.438,1.226
s-1.483,0.418-2.581,0.424l4.709,6.08h-1.619l-4.71-6.08h-0.739v6.08h-1.309V60.412z M188.604,61.694v4.451l2.256,0.018
c0.874,0,1.521-0.083,1.939-0.249s0.746-0.432,0.98-0.797c0.235-0.364,0.353-0.772,0.353-1.224c0-0.439-0.119-0.839-0.356-1.197
c-0.238-0.359-0.55-0.616-0.937-0.771s-1.028-0.231-1.926-0.231H188.604z"/>
<path fill="#FFFFFF" d="M212.311,62.843l-1.033,0.792c-0.569-0.741-1.254-1.304-2.052-1.687s-1.675-0.574-2.631-0.574
c-1.044,0-2.012,0.251-2.902,0.752c-0.89,0.502-1.58,1.175-2.069,2.021c-0.489,0.847-0.734,1.798-0.734,2.854
c0,1.597,0.547,2.929,1.643,3.997c1.095,1.068,2.476,1.603,4.144,1.603c1.834,0,3.368-0.718,4.603-2.154l1.033,0.783
c-0.653,0.831-1.468,1.474-2.444,1.928c-0.976,0.454-2.066,0.681-3.271,0.681c-2.291,0-4.098-0.763-5.421-2.288
c-1.11-1.287-1.665-2.843-1.665-4.664c0-1.917,0.672-3.53,2.017-4.839c1.344-1.309,3.028-1.963,5.052-1.963
c1.223,0,2.326,0.242,3.312,0.726S211.681,61.971,212.311,62.843z"/>
<path fill="#FFFFFF" d="M216.742,60.412h1.309v5.493h6.668v-5.493h1.309v13.096h-1.309v-6.32h-6.668v6.32h-1.309V60.412z"/>
<path fill="#FFFFFF" d="M237.917,60.412h7.505v1.282h-6.196v4.104h6.143v1.281h-6.143v5.146h6.143v1.282h-7.451V60.412z"/>
<path fill="#FFFFFF" d="M249.515,73.508V60.412h0.285l8.715,10.038V60.412h1.291v13.096h-0.294l-8.644-9.916v9.916H249.515z"/>
<path fill="#FFFFFF" d="M277.448,62.611l-1.015,0.962c-0.729-0.719-1.529-1.263-2.399-1.634c-0.869-0.371-1.717-0.557-2.541-0.557
c-1.027,0-2.005,0.252-2.934,0.757c-0.929,0.504-1.648,1.188-2.159,2.052c-0.51,0.863-0.766,1.776-0.766,2.737
c0,0.985,0.265,1.922,0.793,2.809c0.528,0.888,1.258,1.585,2.189,2.093c0.932,0.507,1.953,0.761,3.063,0.761
c1.348,0,2.487-0.38,3.419-1.14s1.483-1.745,1.655-2.955h-4.175v-1.265h5.645c-0.013,2.024-0.613,3.631-1.803,4.821
c-1.19,1.189-2.782,1.784-4.776,1.784c-2.422,0-4.339-0.824-5.751-2.475c-1.086-1.27-1.629-2.739-1.629-4.406
c0-1.241,0.312-2.396,0.935-3.464c0.623-1.067,1.478-1.903,2.563-2.506c1.086-0.602,2.314-0.903,3.686-0.903
c1.11,0,2.154,0.2,3.134,0.601C275.562,61.085,276.517,61.728,277.448,62.611z"/>
<path fill="#FFFFFF" d="M282.352,60.412h1.309v13.096h-1.309V60.412z"/>
<path fill="#FFFFFF" d="M288.493,73.508V60.412h0.285l8.715,10.038V60.412h1.291v13.096h-0.294l-8.644-9.916v9.916H288.493z"/>
<path fill="#FFFFFF" d="M303.803,60.412h7.505v1.282h-6.196v4.104h6.143v1.281h-6.143v5.146h6.143v1.282h-7.451V60.412z"/>
<path fill="#FFFFFF" d="M322.264,60.412h1.309v11.832h5.038v1.264h-6.347V60.412z"/>
<path fill="#FFFFFF" d="M332.32,60.412h1.309v13.096h-1.309V60.412z"/>
<path fill="#FFFFFF" d="M338.488,60.412h2.582c1.038,0,1.837,0.124,2.395,0.37s0.999,0.624,1.322,1.135s0.485,1.077,0.485,1.7
c0,0.582-0.142,1.111-0.426,1.589c-0.283,0.479-0.7,0.865-1.249,1.162c0.681,0.231,1.204,0.503,1.571,0.814
c0.366,0.312,0.652,0.688,0.856,1.131s0.306,0.921,0.306,1.438c0,1.051-0.384,1.939-1.152,2.666
c-0.769,0.728-1.8,1.091-3.094,1.091h-3.597V60.412z M339.771,61.694v4.193h0.749c0.91,0,1.579-0.085,2.008-0.254
c0.428-0.169,0.767-0.437,1.017-0.802c0.25-0.364,0.375-0.77,0.375-1.215c0-0.6-0.21-1.069-0.629-1.411
c-0.419-0.341-1.087-0.512-2.003-0.512H339.771z M339.771,67.205v5.021h1.623c0.957,0,1.658-0.093,2.104-0.28
c0.446-0.187,0.804-0.479,1.074-0.877s0.406-0.828,0.406-1.291c0-0.581-0.19-1.089-0.57-1.521
c-0.381-0.434-0.903-0.73-1.568-0.891c-0.446-0.106-1.223-0.16-2.329-0.16H339.771z"/>
<path fill="#FFFFFF" d="M350.816,60.412h2.608c1.454,0,2.438,0.06,2.955,0.179c0.777,0.179,1.41,0.56,1.896,1.146
c0.486,0.585,0.729,1.306,0.729,2.161c0,0.714-0.167,1.34-0.503,1.881c-0.335,0.541-0.814,0.949-1.438,1.226
s-1.483,0.418-2.581,0.424l4.709,6.08h-1.619l-4.71-6.08h-0.739v6.08h-1.309V60.412z M352.125,61.694v4.451l2.256,0.018
c0.874,0,1.521-0.083,1.939-0.249s0.746-0.432,0.98-0.797c0.235-0.364,0.353-0.772,0.353-1.224c0-0.439-0.119-0.839-0.356-1.197
c-0.238-0.359-0.55-0.616-0.937-0.771s-1.028-0.231-1.926-0.231H352.125z"/>
<path fill="#FFFFFF" d="M368.985,60.412l6.106,13.096h-1.413l-2.06-4.309h-5.642l-2.04,4.309h-1.46l6.187-13.096H368.985z
M368.819,63.194l-2.244,4.74h4.478L368.819,63.194z"/>
<path fill="#FFFFFF" d="M379.016,60.412h2.608c1.454,0,2.438,0.06,2.955,0.179c0.777,0.179,1.41,0.56,1.896,1.146
c0.486,0.585,0.729,1.306,0.729,2.161c0,0.714-0.167,1.34-0.503,1.881c-0.335,0.541-0.814,0.949-1.438,1.226
s-1.483,0.418-2.581,0.424l4.709,6.08h-1.619l-4.71-6.08h-0.739v6.08h-1.309V60.412z M380.324,61.694v4.451l2.256,0.018
c0.874,0,1.521-0.083,1.939-0.249s0.746-0.432,0.98-0.797c0.235-0.364,0.353-0.772,0.353-1.224c0-0.439-0.119-0.839-0.356-1.197
c-0.238-0.359-0.55-0.616-0.937-0.771s-1.028-0.231-1.926-0.231H380.324z"/>
<path fill="#FFFFFF" d="M390.8,60.412h1.506l3.351,5.401l3.299-5.401h1.513l-4.148,6.837v6.259h-1.291v-6.259L390.8,60.412z"/>
</g>
</g>
<polygon fill="#FFFFFF" stroke="#FFFFFF" stroke-width="4" stroke-miterlimit="10" points="102.088,33.232 102.088,33.232
102.088,33.232 "/>
<g opacity="0.6">
<g>
<path fill="#A09F9F" d="M429.885,23.44v4.638h-0.722V23.44h-1.682v-0.65h4.161v0.65H429.885z"/>
<path fill="#A09F9F" d="M436.969,28.078l-0.628-3.396l-1.155,3.469h-0.181l-1.188-3.469l-0.613,3.396h-0.686l0.989-5.288h0.328
l1.26,3.858l1.162-3.858h0.325l1.071,5.288H436.969z"/>
</g>
</g>
<path fill="#FFFFFF" d="M12.543,28.341c10.422-13.303,30.352-13.869,44.994-8.13c7.021,1.816,10.947,5.806,20.154,6.474
c7.519,0.545,12.931-4.87,9.955-9.338c-9.261-13.904-34.021,11.262-37.462,15.51c-6.358,7.887-9.467,18.986-21.334,20.536
C16.056,55.063,5.442,40.72,17.595,31.535c16.735-12.608,33.001,5.291,51.931,10.523c10.511,2.903,27.66,3.712,32.292-11.092
c11.733,14.346-8.135,34.643-29.003,27.11c-13.773-4.975-33.137-23.473-45.238-21.991c-5.18,0.636-6.658,9.087-0.937,9.206
c5.479,1.682,11.943-6.838,15.73-9.943c9.093-7.59,14.618-18.118,24.95-24.695c10.731-6.828,31.151-5.04,30.852,8.341
C97.744,38.026,78.064,37.278,66.349,32.17C48.77,24.504,29.943,13.87,12.543,28.341C13.014,27.744,12.543,28.341,12.543,28.341z"/>
</svg>

Before

Width:  |  Height:  |  Size: 15 KiB

View File

@ -1 +0,0 @@
fea18da569af3cdadee4847c8abb192bc1e6fc0c

Binary file not shown.

Before

Width:  |  Height:  |  Size: 5.8 KiB

View File

@ -1,166 +0,0 @@
<?xml version="1.0" encoding="utf-8"?>
<!--
Licensed to the Apache Software Foundation (ASF) under one
or more contributor license agreements. See the NOTICE file
distributed with this work for additional information
regarding copyright ownership. The ASF licenses this file
to you under the Apache License, Version 2.0 (the
"License"); you may not use this file except in compliance
with the License. You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing,
software distributed under the License is distributed on an
"AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
KIND, either express or implied. See the License for the
specific language governing permissions and limitations
under the License.
-->
<!-- Generator: Adobe Illustrator 15.0.0, SVG Export Plug-In . SVG Version: 6.00 Build 0) -->
<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">
<svg version="1.1" id="Layer_1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px"
width="467px" height="108px" viewBox="0 0 467 108" enable-background="new 0 0 467 108" xml:space="preserve">
<g>
<polygon stroke="#D8D5D4" stroke-miterlimit="10" points="171.895,46.437 172.424,46.12 171.895,45.836 "/>
<g>
<path fill="#0664A8" d="M334.528,74.271c-0.091-0.627-0.168-1.244-0.235-1.848c-0.067-0.605-0.101-1.221-0.101-1.85
c0-0.625,0.033-1.264,0.101-1.914c0.067-0.648,0.145-1.287,0.235-1.916c0.627-0.088,1.243-0.156,1.848-0.201
c0.604-0.043,1.22-0.066,1.848-0.066c0.627,0,1.254,0.023,1.882,0.066c0.627,0.045,1.254,0.113,1.882,0.201
c0.089,0.629,0.168,1.256,0.235,1.883c0.066,0.627,0.101,1.254,0.101,1.881c0,0.629-0.034,1.254-0.101,1.881
c-0.067,0.629-0.146,1.256-0.235,1.883c-0.628,0.088-1.243,0.156-1.849,0.201c-0.604,0.045-1.221,0.066-1.848,0.066
c-0.628,0-1.255-0.021-1.882-0.066C335.781,74.428,335.155,74.359,334.528,74.271z"/>
<path fill="#0664A8" d="M351.73,39.798c0.492-0.089,0.975-0.156,1.444-0.202c0.471-0.044,0.951-0.066,1.445-0.066
c0.492,0,0.951,0.022,1.377,0.066c0.426,0.046,0.885,0.113,1.378,0.202c0.135,0.672,0.269,1.579,0.403,2.722
s0.201,2.095,0.201,2.855c0.447-0.761,1.019-1.522,1.714-2.284c0.694-0.762,1.489-1.445,2.386-2.05
c0.896-0.604,1.926-1.098,3.091-1.479c1.164-0.38,2.441-0.571,3.83-0.571c3.942,0,6.854,1.132,8.736,3.394
c1.881,2.263,2.822,5.611,2.822,10.046v21.84c-0.493,0.088-1.054,0.156-1.68,0.201c-0.628,0.045-1.188,0.066-1.681,0.066
s-1.041-0.021-1.646-0.066c-0.604-0.045-1.153-0.113-1.646-0.201V54.246c0-3.18-0.494-5.521-1.479-7.022
c-0.986-1.501-2.554-2.252-4.704-2.252c-1.255,0-2.442,0.225-3.562,0.672c-1.12,0.449-2.106,1.143-2.957,2.084
c-0.852,0.94-1.535,2.161-2.049,3.663c-0.516,1.5-0.773,3.303-0.773,5.408v17.473c-0.493,0.088-1.041,0.156-1.646,0.201
c-0.604,0.045-1.153,0.066-1.646,0.066s-1.053-0.021-1.68-0.066c-0.628-0.045-1.188-0.113-1.68-0.201V39.798z"/>
<path fill="#0664A8" d="M395.543,58.682c0.089,3.762,1.063,6.518,2.923,8.266c1.858,1.746,4.604,2.619,8.232,2.619
c3.18,0,6.204-0.559,9.071-1.68c0.358,0.672,0.649,1.49,0.874,2.453c0.224,0.965,0.357,1.916,0.402,2.855
c-1.478,0.629-3.103,1.098-4.871,1.412c-1.771,0.313-3.729,0.471-5.88,0.471c-3.137,0-5.824-0.438-8.064-1.311
c-2.24-0.875-4.088-2.105-5.544-3.697c-1.456-1.59-2.52-3.471-3.191-5.645c-0.672-2.172-1.008-4.557-1.008-7.156
c0-2.553,0.324-4.939,0.975-7.157c0.648-2.217,1.646-4.143,2.99-5.778c1.344-1.635,3.034-2.934,5.073-3.897
c2.038-0.963,4.445-1.445,7.224-1.445c2.374,0,4.457,0.403,6.249,1.21s3.293,1.915,4.503,3.326
c1.209,1.411,2.127,3.091,2.755,5.04c0.627,1.948,0.94,4.065,0.94,6.35c0,0.627-0.022,1.289-0.066,1.982
c-0.046,0.695-0.091,1.289-0.135,1.781H395.543z M412.611,53.709c0-1.254-0.168-2.453-0.504-3.596
c-0.336-1.142-0.83-2.139-1.479-2.99c-0.65-0.851-1.479-1.534-2.486-2.049s-2.207-0.773-3.595-0.773
c-2.733,0-4.828,0.83-6.283,2.486c-1.457,1.658-2.342,3.965-2.654,6.922H412.611z"/>
<path fill="#0664A8" d="M429.209,45.107h-5.241l-0.269-0.94l11.558-12.902h0.538v8.534h8.735c0.179,0.762,0.269,1.612,0.269,2.554
c0,0.493-0.022,0.964-0.066,1.411c-0.046,0.448-0.112,0.896-0.202,1.344h-8.735v15.725c0,1.881,0.077,3.383,0.235,4.502
c0.156,1.119,0.425,1.982,0.806,2.586c0.381,0.605,0.896,1.01,1.546,1.211c0.648,0.201,1.467,0.303,2.453,0.303
c0.761,0,1.478-0.057,2.15-0.168c0.672-0.111,1.276-0.236,1.813-0.371c0.313,0.896,0.505,1.814,0.571,2.756
c0.067,0.941,0.102,1.77,0.102,2.486c-0.897,0.223-1.838,0.391-2.822,0.504c-0.986,0.111-2.039,0.168-3.159,0.168
c-3.226,0-5.745-0.783-7.56-2.352s-2.722-4.166-2.722-7.795V45.107z"/>
</g>
<g>
<path d="M17.147,8.829c1.643-0.242,3.133-0.425,4.472-0.548c1.338-0.121,2.524-0.183,3.56-0.183c1.095,0,2.328,0.062,3.697,0.183
c1.369,0.123,2.844,0.306,4.427,0.548v51.113h21.084c0.304,1.521,0.502,2.846,0.593,3.971c0.091,1.127,0.137,2.145,0.137,3.057
c0,1.035-0.045,2.115-0.137,3.24c-0.091,1.127-0.29,2.48-0.593,4.063H17.147V8.829z"/>
<path d="M84.873,75.275c-4.929,0-9.022-0.67-12.276-2.008c-3.256-1.338-5.827-3.271-7.712-5.797
c-1.887-2.523-3.21-5.582-3.971-9.172c-0.761-3.59-1.141-7.636-1.141-12.14V8.829c1.764-0.242,3.286-0.411,4.563-0.502
c1.278-0.092,2.495-0.137,3.651-0.137c1.034,0,2.175,0.045,3.423,0.137c1.247,0.091,2.752,0.26,4.518,0.502v35.414
c0,3.043,0.121,5.629,0.365,7.757c0.242,2.131,0.685,3.865,1.323,5.203c0.639,1.34,1.536,2.297,2.692,2.875
c1.155,0.578,2.677,0.867,4.564,0.867c1.885,0,3.422-0.289,4.609-0.867s2.1-1.535,2.738-2.875
c0.639-1.338,1.064-3.072,1.278-5.203c0.212-2.128,0.319-4.714,0.319-7.757V8.829c1.826-0.242,3.362-0.411,4.609-0.502
c1.247-0.092,2.388-0.137,3.423-0.137c1.095,0,2.282,0.045,3.56,0.137c1.278,0.091,2.798,0.26,4.563,0.502v37.33
c0,4.504-0.38,8.55-1.141,12.14c-0.762,3.59-2.085,6.648-3.97,9.172c-1.887,2.525-4.458,4.459-7.713,5.797
C93.893,74.605,89.801,75.275,84.873,75.275z"/>
<path d="M135.893,41.595c0,12.901,5.415,19.35,16.247,19.35c1.946,0,3.787-0.184,5.521-0.547c1.734-0.365,3.848-0.973,6.344-1.826
c2.008,4.381,3.346,8.885,4.016,13.508c-1.766,0.67-3.408,1.219-4.929,1.643c-1.521,0.428-2.981,0.746-4.381,0.959
c-1.4,0.213-2.784,0.365-4.153,0.457c-1.369,0.09-2.783,0.137-4.244,0.137c-5.172,0-9.72-0.838-13.645-2.51
c-3.925-1.674-7.21-4-9.857-6.982c-2.647-2.98-4.641-6.541-5.979-10.68c-1.339-4.137-2.008-8.639-2.008-13.508
c0-4.867,0.699-9.385,2.099-13.554c1.399-4.167,3.423-7.772,6.07-10.816c2.647-3.041,5.917-5.414,9.812-7.119
c3.894-1.702,8.306-2.556,13.235-2.556c2.921,0,5.688,0.214,8.306,0.64c2.615,0.426,5.536,1.277,8.763,2.556
c-0.123,2.495-0.579,4.914-1.369,7.256c-0.792,2.343-1.613,4.396-2.465,6.161c-1.218-0.425-2.327-0.79-3.331-1.096
c-1.004-0.304-1.963-0.548-2.875-0.73c-0.913-0.182-1.826-0.319-2.738-0.41c-0.913-0.092-1.887-0.137-2.921-0.137
c-4.929,0-8.748,1.658-11.455,4.974C137.246,30.081,135.893,35.024,135.893,41.595z"/>
<path d="M210.735,40.043c0,2.131-0.273,4.504-0.821,7.119h-17.615v12.96h22.909c0.548,2.557,0.821,4.869,0.821,6.938
c0,2.252-0.273,4.654-0.821,7.211h-39.064V8.646h38.517c0.243,1.339,0.425,2.587,0.548,3.742c0.121,1.156,0.183,2.252,0.183,3.286
c0,2.008-0.244,4.412-0.73,7.21h-22.361v10.04h17.615C210.462,35.603,210.735,37.976,210.735,40.043z"/>
<path d="M224.243,8.829c1.338-0.242,2.556-0.425,3.65-0.548c1.096-0.121,2.159-0.183,3.195-0.183c1.095,0,2.235,0.077,3.422,0.229
c1.187,0.152,2.205,0.319,3.058,0.502l21.176,35.778V8.829c1.581-0.242,3.012-0.425,4.29-0.548
c1.277-0.121,2.433-0.183,3.468-0.183c1.034,0,2.13,0.062,3.286,0.183c1.155,0.123,2.373,0.306,3.65,0.548l-0.091,65.169
c-0.609,0.182-1.492,0.363-2.646,0.547c-1.157,0.182-2.405,0.273-3.742,0.273c-1.522,0-2.892-0.107-4.107-0.318
c-1.218-0.215-2.1-0.381-2.647-0.502l-21.267-35.597v35.597c-2.678,0.547-5.111,0.82-7.302,0.82s-4.654-0.273-7.393-0.82V8.829z"
/>
<path d="M318.983,40.043c0,2.131-0.273,4.504-0.821,7.119h-17.615v12.96h22.909c0.548,2.557,0.821,4.869,0.821,6.938
c0,2.252-0.273,4.654-0.821,7.211h-39.064V8.646h38.517c0.243,1.339,0.425,2.587,0.548,3.742c0.121,1.156,0.183,2.252,0.183,3.286
c0,2.008-0.244,4.412-0.73,7.21h-22.361v10.04h17.615C318.71,35.603,318.983,37.976,318.983,40.043z"/>
</g>
<g opacity="0.6">
<g>
<path d="M44.364,101.068l1.615-0.971c1.138,2.094,2.451,3.141,3.942,3.141c0.638,0,1.236-0.148,1.797-0.445
c0.56-0.297,0.986-0.695,1.279-1.195s0.439-1.029,0.439-1.59c0-0.637-0.215-1.262-0.646-1.875
c-0.595-0.844-1.68-1.859-3.257-3.049c-1.585-1.197-2.572-2.064-2.959-2.598c-0.672-0.896-1.008-1.865-1.008-2.908
c0-0.828,0.198-1.582,0.595-2.262c0.396-0.682,0.954-1.217,1.674-1.609c0.719-0.393,1.501-0.588,2.346-0.588
c0.896,0,1.734,0.223,2.514,0.666s1.604,1.26,2.475,2.449l-1.551,1.176c-0.715-0.947-1.325-1.572-1.829-1.875
c-0.504-0.301-1.053-0.451-1.648-0.451c-0.767,0-1.394,0.232-1.88,0.697s-0.73,1.039-0.73,1.719c0,0.414,0.086,0.814,0.258,1.203
c0.172,0.387,0.487,0.809,0.943,1.266c0.25,0.242,1.068,0.875,2.456,1.9c1.646,1.215,2.774,2.297,3.386,3.244
s0.918,1.898,0.918,2.855c0,1.379-0.523,2.576-1.57,3.594c-1.047,1.016-2.32,1.525-3.819,1.525c-1.155,0-2.202-0.309-3.141-0.926
C46.022,103.547,45.157,102.516,44.364,101.068z"/>
<path d="M62.171,85.598h10.896v1.861h-8.996v5.957h8.918v1.861h-8.918v7.471h8.918v1.861H62.171V85.598z"/>
<path d="M86.764,85.598l8.866,19.012h-2.052l-2.99-6.256h-8.19l-2.961,6.256h-2.12l8.982-19.012H86.764z M86.524,89.637
l-3.258,6.881h6.5L86.524,89.637z"/>
<path d="M101.327,85.598h3.787c2.111,0,3.542,0.086,4.291,0.258c1.128,0.26,2.046,0.814,2.753,1.664s1.06,1.895,1.06,3.137
c0,1.037-0.244,1.947-0.73,2.73c-0.487,0.785-1.183,1.379-2.087,1.779c-0.905,0.402-2.154,0.607-3.748,0.615l6.837,8.828h-2.351
l-6.837-8.828h-1.074v8.828h-1.9V85.598z M103.227,87.459v6.461l3.275,0.027c1.269,0,2.207-0.121,2.815-0.363
c0.608-0.24,1.083-0.627,1.424-1.156s0.511-1.121,0.511-1.777c0-0.637-0.173-1.217-0.518-1.738
c-0.346-0.521-0.798-0.895-1.359-1.117c-0.561-0.225-1.493-0.336-2.796-0.336H103.227z"/>
<path d="M137.642,89.125l-1.5,1.15c-0.827-1.076-1.82-1.893-2.979-2.449c-1.159-0.555-2.432-0.834-3.819-0.834
c-1.517,0-2.921,0.365-4.213,1.094c-1.292,0.727-2.294,1.705-3.005,2.934c-0.71,1.227-1.066,2.607-1.066,4.143
c0,2.316,0.795,4.252,2.384,5.803c1.59,1.551,3.595,2.326,6.017,2.326c2.662,0,4.89-1.043,6.682-3.129l1.5,1.139
c-0.948,1.205-2.131,2.139-3.548,2.797c-1.417,0.66-3.001,0.99-4.75,0.99c-3.326,0-5.949-1.107-7.871-3.322
c-1.611-1.869-2.417-4.127-2.417-6.771c0-2.783,0.976-5.125,2.927-7.025s4.396-2.85,7.335-2.85c1.774,0,3.377,0.352,4.808,1.053
C135.557,86.875,136.729,87.859,137.642,89.125z"/>
<path d="M144.076,85.598h1.9v7.975h9.681v-7.975h1.899v19.012h-1.899v-9.178h-9.681v9.178h-1.9V85.598z"/>
<path d="M174.817,85.598h10.896v1.861h-8.995v5.957h8.918v1.861h-8.918v7.471h8.918v1.861h-10.818V85.598z"/>
<path d="M191.655,104.609V85.598h0.414l12.652,14.572V85.598h1.874v19.012h-0.426l-12.55-14.396v14.396H191.655z"/>
<path d="M232.209,88.789l-1.474,1.396c-1.06-1.043-2.221-1.834-3.483-2.371c-1.262-0.539-2.492-0.809-3.689-0.809
c-1.491,0-2.91,0.367-4.259,1.098c-1.349,0.734-2.394,1.727-3.134,2.98c-0.741,1.254-1.111,2.578-1.111,3.975
c0,1.43,0.383,2.789,1.149,4.076c0.768,1.289,1.827,2.301,3.18,3.037c1.353,0.738,2.835,1.105,4.446,1.105
c1.956,0,3.61-0.551,4.963-1.654c1.353-1.102,2.153-2.533,2.403-4.291h-6.061v-1.834h8.193c-0.018,2.938-0.89,5.27-2.617,6.998
c-1.728,1.727-4.039,2.592-6.934,2.592c-3.516,0-6.299-1.199-8.35-3.594c-1.576-1.844-2.365-3.977-2.365-6.398
c0-1.801,0.453-3.477,1.357-5.027s2.146-2.764,3.723-3.637c1.576-0.875,3.36-1.313,5.351-1.313c1.61,0,3.127,0.291,4.549,0.873
C229.469,86.572,230.856,87.506,232.209,88.789z"/>
<path d="M239.328,85.598h1.9v19.012h-1.9V85.598z"/>
<path d="M248.243,104.609V85.598h0.414l12.652,14.572V85.598h1.874v19.012h-0.426l-12.55-14.396v14.396H248.243z"/>
<path d="M270.471,85.598h10.896v1.861h-8.995v5.957h8.918v1.861h-8.918v7.471h8.918v1.861h-10.818V85.598z"/>
<path d="M297.271,85.598h1.899v17.176h7.315v1.836h-9.215V85.598z"/>
<path d="M311.872,85.598h1.9v19.012h-1.9V85.598z"/>
<path d="M320.826,85.598h3.748c1.508,0,2.667,0.178,3.477,0.535s1.449,0.908,1.919,1.648c0.47,0.742,0.705,1.564,0.705,2.469
c0,0.844-0.206,1.613-0.618,2.307c-0.411,0.693-1.016,1.256-1.813,1.688c0.987,0.336,1.747,0.73,2.28,1.182
c0.532,0.453,0.947,1,1.243,1.643c0.297,0.641,0.445,1.336,0.445,2.086c0,1.525-0.559,2.816-1.674,3.871
c-1.116,1.057-2.613,1.584-4.491,1.584h-5.222V85.598z M322.688,87.459v6.086h1.088c1.32,0,2.292-0.121,2.914-0.367
c0.621-0.246,1.114-0.633,1.477-1.164c0.362-0.529,0.544-1.117,0.544-1.764c0-0.871-0.305-1.553-0.913-2.049
s-1.578-0.742-2.908-0.742H322.688z M322.688,95.459v7.289h2.356c1.389,0,2.407-0.137,3.055-0.408s1.167-0.695,1.561-1.271
c0.393-0.578,0.589-1.203,0.589-1.875c0-0.844-0.276-1.58-0.828-2.209c-0.553-0.629-1.312-1.061-2.277-1.293
c-0.647-0.156-1.774-0.232-3.381-0.232H322.688z"/>
<path d="M338.724,85.598h3.787c2.11,0,3.541,0.086,4.29,0.258c1.129,0.26,2.047,0.814,2.753,1.664
c0.707,0.85,1.061,1.895,1.061,3.137c0,1.037-0.244,1.947-0.73,2.73c-0.487,0.785-1.183,1.379-2.087,1.779
c-0.905,0.402-2.154,0.607-3.749,0.615l6.838,8.828h-2.351l-6.838-8.828h-1.074v8.828h-1.899V85.598z M340.623,87.459v6.461
l3.275,0.027c1.269,0,2.207-0.121,2.815-0.363c0.608-0.24,1.083-0.627,1.424-1.156s0.512-1.121,0.512-1.777
c0-0.637-0.173-1.217-0.518-1.738c-0.346-0.521-0.799-0.895-1.359-1.117c-0.562-0.225-1.493-0.336-2.796-0.336H340.623z"/>
<path d="M365.1,85.598l8.866,19.012h-2.053l-2.989-6.256h-8.19l-2.962,6.256h-2.12l8.982-19.012H365.1z M364.859,89.637
l-3.258,6.881h6.5L364.859,89.637z"/>
<path d="M379.663,85.598h3.787c2.11,0,3.541,0.086,4.29,0.258c1.129,0.26,2.047,0.814,2.753,1.664
c0.707,0.85,1.061,1.895,1.061,3.137c0,1.037-0.244,1.947-0.73,2.73c-0.487,0.785-1.183,1.379-2.087,1.779
c-0.905,0.402-2.154,0.607-3.749,0.615l6.838,8.828h-2.351l-6.838-8.828h-1.074v8.828h-1.899V85.598z M381.563,87.459v6.461
l3.275,0.027c1.269,0,2.207-0.121,2.815-0.363c0.608-0.24,1.083-0.627,1.424-1.156s0.512-1.121,0.512-1.777
c0-0.637-0.173-1.217-0.518-1.738c-0.346-0.521-0.799-0.895-1.359-1.117c-0.562-0.225-1.493-0.336-2.796-0.336H381.563z"/>
<path d="M396.772,85.598h2.186l4.865,7.84l4.788-7.84h2.196l-6.022,9.926v9.086h-1.874v-9.086L396.772,85.598z"/>
</g>
</g>
<g>
<path fill="#454545" d="M446.784,30.38v4.638h-0.722V30.38h-1.682v-0.65h4.161v0.65H446.784z"/>
<path fill="#454545" d="M453.868,35.018l-0.628-3.396l-1.155,3.469h-0.181l-1.188-3.469l-0.613,3.396h-0.686l0.989-5.288h0.328
l1.26,3.858l1.162-3.858h0.325l1.071,5.288H453.868z"/>
</g>
</g>
</svg>

Before

Width:  |  Height:  |  Size: 14 KiB

View File

@ -1 +0,0 @@
8ad064f686e93b3444d04495435f39ec27ff7c77

View File

@ -1 +0,0 @@
0e9db3525f053dbca8434fbe4327682977be1be9

View File

@ -1,27 +0,0 @@
@echo off
REM License Block
GOTO LicenseEnd
Licensed to the Apache Software Foundation (ASF) under one or more
contributor license agreements. See the NOTICE file distributed with
this work for additional information regarding copyright ownership.
The ASF licenses this file to You under the Apache License, Version 2.0
(the "License"); you may not use this file except in compliance with
the License. You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.
:LicenseEnd
SET TARGETS=simple
SET AREA=all
SET CONFIGURATION=Release
IF [%1] NEQ [] SET TARGETS=%1
IF [%2] NEQ [] SET AREA=%2
IF [%3] NEQ [] SET CONFIGURATION=%3
%windir%\Microsoft.NET\Framework\v4.0.30319\MSBuild.exe build/scripts/build.targets /t:%TARGETS% /p:BuildArea=%AREA% /p:Configuration=%Configuration% /nologo

View File

@ -1,41 +0,0 @@
<?xml version="1.0"?>
<!--
Licensed to the Apache Software Foundation (ASF) under one or more
contributor license agreements. See the NOTICE file distributed with
this work for additional information regarding copyright ownership.
The ASF licenses this file to You under the Apache License, Version 2.0
(the "License"); you may not use this file except in compliance with
the License. You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.
-->
<package xmlns="http://schemas.microsoft.com/packaging/2010/07/nuspec.xsd">
<metadata>
<id>Lucene.Net.All</id>
<version>$version$</version>
<title>Lucene.Net All</title>
<authors>Lucene.Net Community</authors>
<owners>The Apache Software Foundation</owners>
<iconUrl>http://incubator.apache.org/lucene.net/media/lucene-net-ico-128x128.png</iconUrl>
<licenseUrl>http://www.apache.org/licenses/LICENSE-2.0.html</licenseUrl>
<projectUrl>http://lucenenet.apache.org/</projectUrl>
<requireLicenseAcceptance>false</requireLicenseAcceptance>
<description>Lucene.Net is a port of the Lucene search engine library, written in C# and targeted at .NET runtime users.
**This package installs the Lucene.Net.Core &amp; Lucene.Net.Contrib packages.</description>
<summary>Lucene.Net is a port of the Lucene search engine library, written in C# and targeted at .NET runtime users.</summary>
<tags>lucene.net core search information retrieval lucene apache</tags>
<dependencies>
<dependency id="Lucene.Net.Core" version="$version$" />
<dependency id="Lucene.Net.Contrib" version="$version$" />
</dependencies>
</metadata>
</package>

View File

@ -1,55 +0,0 @@
<?xml version="1.0" encoding="UTF-8" standalone="no" ?>
<!--
Licensed to the Apache Software Foundation (ASF) under one or more
contributor license agreements. See the NOTICE file distributed with
this work for additional information regarding copyright ownership.
The ASF licenses this file to You under the Apache License, Version 2.0
(the "License"); you may not use this file except in compliance with
the License. You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.
-->
<Project xmlns="http://schemas.microsoft.com/developer/msbuild/2003" ToolsVersion="4.0">
<PropertyGroup>
<DocumentationSources>
<DocumentationSource sourceFile="..\bin\core\Release\NET40\Lucene.Net.dll" />
<DocumentationSource sourceFile="..\bin\core\Release\NET40\Lucene.Net.XML" />
<DocumentationSource sourceFile="..\bin\contrib\Analyzers\Release\NET40\Lucene.Net.Contrib.Analyzers.dll" />
<DocumentationSource sourceFile="..\bin\contrib\Analyzers\Release\NET40\Lucene.Net.Contrib.Analyzers.XML" />
<DocumentationSource sourceFile="..\bin\contrib\Core\Release\NET40\Lucene.Net.Contrib.Core.dll" />
<DocumentationSource sourceFile="..\bin\contrib\Core\Release\NET40\Lucene.Net.Contrib.Core.XML" />
<DocumentationSource sourceFile="..\bin\contrib\FastVectorHighlighter\Release\NET40\Lucene.Net.FastVectorHighlighter.dll" />
<DocumentationSource sourceFile="..\bin\contrib\FastVectorHighlighter\Release\NET40\Lucene.Net.FastVectorHighlighter.XML" />
<DocumentationSource sourceFile="..\bin\contrib\Highlighter\Release\NET40\Lucene.Net.Contrib.Highlighter.dll" />
<DocumentationSource sourceFile="..\bin\contrib\Highlighter\Release\NET40\Lucene.Net.Contrib.Highlighter.XML" />
<DocumentationSource sourceFile="..\bin\contrib\Memory\Release\NET40\Lucene.Net.Contrib.Memory.dll" />
<DocumentationSource sourceFile="..\bin\contrib\Memory\Release\NET40\Lucene.Net.Contrib.Memory.XML" />
<DocumentationSource sourceFile="..\bin\contrib\Queries\Release\NET40\Lucene.Net.Contrib.Queries.dll" />
<DocumentationSource sourceFile="..\bin\contrib\Queries\Release\NET40\Lucene.Net.Contrib.Queries.XML" />
<DocumentationSource sourceFile="..\bin\contrib\Regex\Release\NET40\Contrib.Regex.dll" />
<DocumentationSource sourceFile="..\bin\contrib\Regex\Release\NET40\Contrib.Regex.XML" />
<DocumentationSource sourceFile="..\bin\contrib\SimpleFacetedSearch\Release\NET40\Lucene.Net.Search.SimpleFacetedSearch.dll" />
<DocumentationSource sourceFile="..\bin\contrib\SimpleFacetedSearch\Release\NET40\Lucene.Net.Search.SimpleFacetedSearch.XML" />
<DocumentationSource sourceFile="..\bin\contrib\Similarity\Release\NET40\Lucene.Net.Contrib.Similarity.dll" />
<DocumentationSource sourceFile="..\bin\contrib\Similarity\Release\NET40\Lucene.Net.Contrib.Similarity.XML" />
<DocumentationSource sourceFile="..\bin\contrib\Snowball\Release\NET40\Lucene.Net.Contrib.Snowball.dll" />
<DocumentationSource sourceFile="..\bin\contrib\Snowball\Release\NET40\Lucene.Net.Contrib.Snowball.XML" />
<DocumentationSource sourceFile="..\bin\contrib\Spatial\Release\NET40\Lucene.Net.Contrib.Spatial.dll" />
<DocumentationSource sourceFile="..\bin\contrib\Spatial\Release\NET40\Lucene.Net.Contrib.Spatial.XML" />
<DocumentationSource sourceFile="..\bin\contrib\Spatial.NTS\Release\NET40\Lucene.Net.Contrib.Spatial.NTS.dll" />
<DocumentationSource sourceFile="..\bin\contrib\Spatial.NTS\Release\NET40\Lucene.Net.Contrib.Spatial.NTS.XML" />
</DocumentationSources>
<HtmlHelpName>Lucene.Net</HtmlHelpName>
<HelpTitle>Lucene.Net Class Libraries</HelpTitle>
<WorkingPath>..\artifacts\all\working\</WorkingPath>
<OutputPath>..\artifacts\all\docs\</OutputPath>
</PropertyGroup>
</Project>

View File

@ -1,54 +0,0 @@
<?xml version="1.0" encoding="UTF-8" standalone="no" ?>
<!--
Licensed to the Apache Software Foundation (ASF) under one or more
contributor license agreements. See the NOTICE file distributed with
this work for additional information regarding copyright ownership.
The ASF licenses this file to You under the Apache License, Version 2.0
(the "License"); you may not use this file except in compliance with
the License. You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.
-->
<Project xmlns="http://schemas.microsoft.com/developer/msbuild/2003" ToolsVersion="4.0">
<!--
Core Projects Are:
Lucene.Net,
Lucene.Net.Test,
-->
<PropertyGroup>
<AllPackage>Lucene.Net.nuspec</AllPackage>
<ContribPackage>Lucene.Net.Contrib.nuspec</ContribPackage>
</PropertyGroup>
<PropertyGroup Condition="'$(Area)' == 'all'">
<ArtifactsFolder>$(BuildFolder)\artifacts\all</ArtifactsFolder>
</PropertyGroup>
<Target Name="package-contrib">
<Exec Command="$(PackageManager) $(ScriptsFolder)\Contrib\$(ContribPackage) $(PackageManagerOptions) $(ArtifactsFolder)" />
</Target>
<Target Name="package-all">
<Exec Command="$(PackageManager) $(ScriptsFolder)\All\$(AllPackage) $(PackageManagerOptions) $(ArtifactsFolder)" />
</Target>
<Import Project="../Core/project.targets" />
<Import Project="../Contrib/project.targets" />
<ItemGroup>
<PackageTargets Include="package-contrib" />
<PackageTargets Include="package-all" />
</ItemGroup>
<Target Name="BuildAll">
<CallTarget Targets="BuildCore" />
<CallTarget Targets="BuildContrib" />
</Target>
</Project>

View File

@ -1,31 +0,0 @@
<?xml version="1.0" encoding="UTF-8" standalone="no" ?>
<!--
Licensed to the Apache Software Foundation (ASF) under one or more
contributor license agreements. See the NOTICE file distributed with
this work for additional information regarding copyright ownership.
The ASF licenses this file to You under the Apache License, Version 2.0
(the "License"); you may not use this file except in compliance with
the License. You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.
-->
<Project xmlns="http://schemas.microsoft.com/developer/msbuild/2003" ToolsVersion="4.0">
<PropertyGroup>
<DocumentationSources>
<DocumentationSource sourceFile="..\bin\contrib\Analyzers\Release\NET40\Lucene.Net.Contrib.Analyzers.dll" />
<DocumentationSource sourceFile="..\bin\contrib\Analyzers\Release\NET40\Lucene.Net.Contrib.Analyzers.XML" />
</DocumentationSources>
<HtmlHelpName>Lucene.Net.Contrib.Analyzers</HtmlHelpName>
<HelpTitle>Analyzers Class Library</HelpTitle>
<WorkingPath>..\artifacts\Analyzers\working\</WorkingPath>
<OutputPath>..\artifacts\Analyzers\docs\</OutputPath>
</PropertyGroup>
</Project>

View File

@ -1,66 +0,0 @@
<?xml version="1.0" encoding="UTF-8" standalone="no" ?>
<!--
Licensed to the Apache Software Foundation (ASF) under one or more
contributor license agreements. See the NOTICE file distributed with
this work for additional information regarding copyright ownership.
The ASF licenses this file to You under the Apache License, Version 2.0
(the "License"); you may not use this file except in compliance with
the License. You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.
-->
<Project xmlns="http://schemas.microsoft.com/developer/msbuild/2003" ToolsVersion="4.0">
<!--
Core Projects Are:
Lucene.Net,
Lucene.Net.Test,
-->
<PropertyGroup>
<AnalyzersFolder>$(BinFolder)\contrib\Analyzers\$(Configuration)</AnalyzersFolder>
</PropertyGroup>
<PropertyGroup Condition="'$(Area)' == 'analyzers'">
<LocalBinFolder>$(BinFolder)\contrib\Analyzers\$(Configuration)</LocalBinFolder>
<ArtifactsFolder>$(BuildFolder)\artifacts\Analyzers</ArtifactsFolder>
<TestFiles>"$(AnalyzersFolder)\**\Lucene.Net.Contrib.Analyzers.Test.dll"</TestFiles>
</PropertyGroup>
<Target Name="_analyzers_build">
<ItemGroup>
<AnalyzersProjectFiles Include="$(SourceFolder)\Contrib\Analyzers\*.csproj" />
<AnalyzersProjectFiles Include="$(TestFolder)\Contrib\Analyzers\*.csproj" />
</ItemGroup>
<MSBuild Projects="@(AnalyzersProjectFiles)" Properties="Configuration=$(Configuration);ExternalConstants=$(ExternalConstants)" />
<!-- Add "35" to the end of configuration to build .NET35 projects -->
<MSBuild Projects="@(AnalyzersProjectFiles)" Properties="Configuration=$(Configuration)35;ExternalConstants=$(ExternalConstants)" />
</Target>
<Target Name="_analyzers_properties">
<ItemGroup>
<!-- Binaries To Copy in case we which to store all build items -->
<BuildItems Include="$(AnalyzersFolder)\**\*.*" />
<!-- Assemblies To Test -->
<TestFiles Include="$(AnalyzersFolder)\**\Lucene.Net.Contrib.Analyzers.Test.dll" />
<!-- Files To Release -->
<ReleaseFiles Include="$(AnalyzersFolder)\**\Lucene.Net.Contrib.Analyzers.dll" />
<ReleaseFiles Include="$(AnalyzersFolder)\**\Lucene.Net.Contrib.Analyzers.XML" />
<!-- Files to Analysis -->
<AnalysisFiles Include="$(AnalyzersFolder)\**\Lucene.Net.Contrib.Analyzers.dll" />
</ItemGroup>
</Target>
<Target Name="BuildAnalyzers">
<CallTarget Targets="_analyzers_build" />
<CallTarget Targets="_analyzers_properties" />
</Target>
</Project>

View File

@ -1,31 +0,0 @@
<?xml version="1.0" encoding="UTF-8" standalone="no" ?>
<!--
Licensed to the Apache Software Foundation (ASF) under one or more
contributor license agreements. See the NOTICE file distributed with
this work for additional information regarding copyright ownership.
The ASF licenses this file to You under the Apache License, Version 2.0
(the "License"); you may not use this file except in compliance with
the License. You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.
-->
<Project xmlns="http://schemas.microsoft.com/developer/msbuild/2003" ToolsVersion="4.0">
<PropertyGroup>
<DocumentationSources>
<DocumentationSource sourceFile="..\bin\contrib\Core\Release\NET40\Lucene.Net.Contrib.Core.dll" />
<DocumentationSource sourceFile="..\bin\contrib\Core\Release\NET40\Lucene.Net.Contrib.Core.XML" />
</DocumentationSources>
<HtmlHelpName>Lucene.Net.Contrib.Core</HtmlHelpName>
<HelpTitle>Core Class Library</HelpTitle>
<WorkingPath>..\artifacts\Core\working\</WorkingPath>
<OutputPath>..\artifacts\Core\docs\</OutputPath>
</PropertyGroup>
</Project>

View File

@ -1,66 +0,0 @@
<?xml version="1.0" encoding="UTF-8" standalone="no" ?>
<!--
Licensed to the Apache Software Foundation (ASF) under one or more
contributor license agreements. See the NOTICE file distributed with
this work for additional information regarding copyright ownership.
The ASF licenses this file to You under the Apache License, Version 2.0
(the "License"); you may not use this file except in compliance with
the License. You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.
-->
<Project xmlns="http://schemas.microsoft.com/developer/msbuild/2003" ToolsVersion="4.0">
<!--
Core Projects Are:
Lucene.Net,
Lucene.Net.Test,
-->
<PropertyGroup>
<ContribCoreFolder>$(BinFolder)\contrib\Core\$(Configuration)</ContribCoreFolder>
</PropertyGroup>
<PropertyGroup Condition="'$(Area)' == 'contrib-core'">
<LocalBinFolder>$(BinFolder)\contrib\Core\$(Configuration)</LocalBinFolder>
<ArtifactsFolder>$(BuildFolder)\artifacts\Contrib-Core</ArtifactsFolder>
</PropertyGroup>
<Target Name="_contrib-core_build">
<ItemGroup>
<ContribCoreProjectFiles Include="$(SourceFolder)\Contrib\Core\*.csproj" />
<ContribCoreProjectFiles Include="$(TestFolder)\Contrib\Core\*.csproj" />
</ItemGroup>
<MSBuild Projects="@(ContribCoreProjectFiles)" Properties="Configuration=$(Configuration);ExternalConstants=$(ExternalConstants)" />
<!-- Add "35" to the end of configuration to build .NET35 projects -->
<MSBuild Projects="@(ContribCoreProjectFiles)" Properties="Configuration=$(Configuration)35;ExternalConstants=$(ExternalConstants)" />
</Target>
<Target Name="_contrib-core_properties">
<ItemGroup>
<!-- Binaries To Copy in case we which to store all build items -->
<BuildItems Include="$(ContribCoreFolder)\**\*.*" />
<!-- Assemblies To Test -->
<TestFiles Include="$(ContribCoreFolder)\**\Lucene.Net.Contrib.Core.Test.dll" />
<!-- Files To Release -->
<ReleaseFiles Include="$(ContribCoreFolder)\**\Lucene.Net.Contrib.Core.dll" />
<ReleaseFiles Include="$(ContribCoreFolder)\**\Lucene.Net.Contrib.Core.XML" />
<!-- Files to Analysis -->
<AnalysisFiles Include="$(ContribCoreFolder)\**\Lucene.Net.Contrib.Core.dll" />
</ItemGroup>
</Target>
<Target Name="BuildContrib-Core">
<CallTarget Targets="_contrib-core_build" />
<CallTarget Targets="_contrib-core_properties" />
</Target>
</Project>

View File

@ -1,62 +0,0 @@
<?xml version="1.0"?>
<!--
Licensed to the Apache Software Foundation (ASF) under one or more
contributor license agreements. See the NOTICE file distributed with
this work for additional information regarding copyright ownership.
The ASF licenses this file to You under the Apache License, Version 2.0
(the "License"); you may not use this file except in compliance with
the License. You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.
-->
<package xmlns="http://schemas.microsoft.com/packaging/2010/07/nuspec.xsd">
<metadata>
<id>Lucene.Net.Contrib</id>
<version>$version$</version>
<title>Lucene.Net Contrib</title>
<authors>Lucene.Net Community</authors>
<owners>The Apache Software Foundation</owners>
<iconUrl>http://incubator.apache.org/lucene.net/media/lucene-net-ico-128x128.png</iconUrl>
<licenseUrl>http://www.apache.org/licenses/LICENSE-2.0.html</licenseUrl>
<projectUrl>http://lucenenet.apache.org/</projectUrl>
<requireLicenseAcceptance>false</requireLicenseAcceptance>
<description>Lucene.Net is a port of the Lucene search engine library, written in C# and targeted at .NET runtime users.
**This package contains only the contrib Lucene.Net assemblies.</description>
<summary>Lucene.Net is a port of the Lucene search engine library, written in C# and targeted at .NET runtime users.</summary>
<tags>lucene.net core search information retrieval lucene apache</tags>
<dependencies>
</dependencies>
</metadata>
<files>
<file src="..\..\bin\contrib\FastVectorHighlighter\Release\**\Lucene.Net.Contrib.FastVectorHighlighter.dll" target="lib" />
<file src="..\..\bin\contrib\FastVectorHighlighter\Release\**\Lucene.Net.Contrib.FastVectorHighlighter.XML" target="lib" />
<file src="..\..\bin\contrib\Highlighter\Release\**\Lucene.Net.Contrib.Highlighter.dll" target="lib" />
<file src="..\..\bin\contrib\Highlighter\Release\**\Lucene.Net.Contrib.Highlighter.XML" target="lib" />
<file src="..\..\bin\contrib\Memory\Release\**\Lucene.Net.Contrib.Memory.dll" target="lib" />
<file src="..\..\bin\contrib\Memory\Release\**\Lucene.Net.Contrib.Memory.XML" target="lib" />
<file src="..\..\bin\contrib\Analyzers\Release\**\Lucene.Net.Contrib.Analyzers.dll" target="lib" />
<file src="..\..\bin\contrib\Analyzers\Release\**\Lucene.Net.Contrib.Analyzers.XML" target="lib" />
<file src="..\..\bin\contrib\Core\Release\**\Lucene.Net.Contrib.Core.dll" target="lib" />
<file src="..\..\bin\contrib\Core\Release\**\Lucene.Net.Contrib.Core.XML" target="lib" />
<file src="..\..\bin\contrib\Queries\Release\**\Lucene.Net.Contrib.Queries.dll" target="lib" />
<file src="..\..\bin\contrib\Queries\Release\**\Lucene.Net.Contrib.Queries.XML" target="lib" />
<file src="..\..\bin\contrib\Regex\Release\**\Lucene.Net.Contrib.Regex.dll" target="lib" />
<file src="..\..\bin\contrib\Regex\Release\**\Lucene.Net.Contrib.Regex.XML" target="lib" />
<file src="..\..\bin\contrib\SimpleFacetedSearch\Release\**\Lucene.Net.Contrib.SimpleFacetedSearch.dll" target="lib" />
<file src="..\..\bin\contrib\SimpleFacetedSearch\Release\**\Lucene.Net.Contrib.SimpleFacetedSearch.XML" target="lib" />
<file src="..\..\bin\contrib\Snowball\Release\**\Lucene.Net.Contrib.Snowball.dll" target="lib" />
<file src="..\..\bin\contrib\Snowball\Release\**\Lucene.Net.Contrib.Snowball.XML" target="lib" />
<file src="..\..\bin\contrib\SpellChecker\Release\**\Lucene.Net.Contrib.SpellChecker.dll" target="lib" />
<file src="..\..\bin\contrib\SpellChecker\Release\**\Lucene.Net.Contrib.SpellChecker.XML" target="lib" />
</files>
</package>

View File

@ -1,51 +0,0 @@
<?xml version="1.0" encoding="UTF-8" standalone="no" ?>
<!--
Licensed to the Apache Software Foundation (ASF) under one or more
contributor license agreements. See the NOTICE file distributed with
this work for additional information regarding copyright ownership.
The ASF licenses this file to You under the Apache License, Version 2.0
(the "License"); you may not use this file except in compliance with
the License. You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.
-->
<Project xmlns="http://schemas.microsoft.com/developer/msbuild/2003" ToolsVersion="4.0">
<PropertyGroup>
<DocumentationSources>
<DocumentationSource sourceFile="..\bin\contrib\Analyzers\Release\NET40\Lucene.Net.Contrib.Analyzers.dll" />
<DocumentationSource sourceFile="..\bin\contrib\Analyzers\Release\NET40\Lucene.Net.Contrib.Analyzers.XML" />
<DocumentationSource sourceFile="..\bin\contrib\Core\Release\NET40\Lucene.Net.Contrib.Core.dll" />
<DocumentationSource sourceFile="..\bin\contrib\Core\Release\NET40\Lucene.Net.Contrib.Core.XML" />
<DocumentationSource sourceFile="..\bin\contrib\FastVectorHighlighter\Release\NET40\Lucene.Net.Contrib.FastVectorHighlighter.dll" />
<DocumentationSource sourceFile="..\bin\contrib\FastVectorHighlighter\Release\NET40\Lucene.Net.Contrib.FastVectorHighlighter.XML" />
<DocumentationSource sourceFile="..\bin\contrib\Highlighter\Release\NET40\Lucene.Net.Contrib.Highlighter.dll" />
<DocumentationSource sourceFile="..\bin\contrib\Highlighter\Release\NET40\Lucene.Net.Contrib.Highlighter.XML" />
<DocumentationSource sourceFile="..\bin\contrib\Memory\Release\NET40\Lucene.Net.Contrib.Memory.dll" />
<DocumentationSource sourceFile="..\bin\contrib\Memory\Release\NET40\Lucene.Net.Contrib.Memory.XML" />
<DocumentationSource sourceFile="..\bin\contrib\Queries\Release\NET40\Lucene.Net.Contrib.Queries.dll" />
<DocumentationSource sourceFile="..\bin\contrib\Queries\Release\NET40\Lucene.Net.Contrib.Queries.XML" />
<DocumentationSource sourceFile="..\bin\contrib\Regex\Release\NET40\Lucene.Net.Contrib.Regex.dll" />
<DocumentationSource sourceFile="..\bin\contrib\Regex\Release\NET40\Lucene.Net.Contrib.Regex.XML" />
<DocumentationSource sourceFile="..\bin\contrib\SimpleFacetedSearch\Release\NET40\Lucene.Net.Contrib.SimpleFacetedSearch.dll" />
<DocumentationSource sourceFile="..\bin\contrib\SimpleFacetedSearch\Release\NET40\Lucene.Net.Contrib.SimpleFacetedSearch.XML" />
<DocumentationSource sourceFile="..\bin\contrib\Similarity\Release\NET40\Lucene.Net.Contrib.Similarity.dll" />
<DocumentationSource sourceFile="..\bin\contrib\Similarity\Release\NET40\Lucene.Net.Contrib.Similarity.XML" />
<DocumentationSource sourceFile="..\bin\contrib\Snowball\Release\NET40\Lucene.Net.Contrib.Snowball.dll" />
<DocumentationSource sourceFile="..\bin\contrib\Snowball\Release\NET40\Lucene.Net.Contrib.Snowball.XML" />
<DocumentationSource sourceFile="..\bin\contrib\Spatial\Release\NET40\Lucene.Net.Contrib.Spatial.dll" />
<DocumentationSource sourceFile="..\bin\contrib\Spatial\Release\NET40\Lucene.Net.Contrib.Spatial.XML" />
</DocumentationSources>
<HtmlHelpName>Lucene.Net.Contrib</HtmlHelpName>
<HelpTitle>Lucene.Net.Contrib Class Libraries</HelpTitle>
<WorkingPath>..\artifacts\contrib\working\</WorkingPath>
<OutputPath>..\artifacts\contrib\docs\</OutputPath>
</PropertyGroup>
</Project>

View File

@ -1,72 +0,0 @@
<?xml version="1.0" encoding="UTF-8" standalone="no" ?>
<!--
Licensed to the Apache Software Foundation (ASF) under one or more
contributor license agreements. See the NOTICE file distributed with
this work for additional information regarding copyright ownership.
The ASF licenses this file to You under the Apache License, Version 2.0
(the "License"); you may not use this file except in compliance with
the License. You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.
-->
<Project xmlns="http://schemas.microsoft.com/developer/msbuild/2003" ToolsVersion="4.0">
<!--
Core Projects Are:
Lucene.Net,
Lucene.Net.Test,
-->
<PropertyGroup>
<ContribPackage>Lucene.Net.Contrib.nuspec</ContribPackage>
<SpatialNTSPackage>Lucene.Net.Spatial.NTS.nuspec</SpatialNTSPackage>
</PropertyGroup>
<PropertyGroup Condition="'$(Area)' == 'contrib'">
<ArtifactsFolder>$(BuildFolder)\artifacts\contrib</ArtifactsFolder>
</PropertyGroup>
<Target Name="package-contrib">
<Exec Command="$(PackageManager) $(ScriptsFolder)\Contrib\$(ContribPackage) $(PackageManagerOptions) $(ArtifactsFolder)" />
</Target>
<Target Name="package-spatialnts">
<Exec Command="$(PackageManager) $(ScriptsFolder)\Spatial.NTS\$(SpatialNTSPackage) $(PackageManagerOptions) $(ArtifactsFolder)" />
</Target>
<ItemGroup>
<PackageTargets Include="package-contrib" />
<PackageTargets Include="package-spatialnts" />
</ItemGroup>
<Import Project="../Analyzers/project.targets" />
<Import Project="../Contrib-Core/project.targets" />
<Import Project="../FastVectorHighlighter/project.targets" />
<Import Project="../Highlighter/project.targets" />
<Import Project="../Memory/project.targets" />
<Import Project="../Queries/project.targets" />
<Import Project="../Regex/project.targets" />
<Import Project="../SimpleFacetedSearch/project.targets" />
<Import Project="../Snowball/project.targets" />
<Import Project="../Spatial/project.targets" />
<Import Project="../Spatial.NTS/project.targets" />
<Import Project="../SpellChecker/project.targets" />
<Target Name="BuildContrib">
<CallTarget Targets="BuildAnalyzers" />
<CallTarget Targets="BuildContrib-Core" />
<CallTarget Targets="BuildFastVectorHighlighter" />
<CallTarget Targets="BuildHighlighter" />
<CallTarget Targets="BuildMemory" />
<CallTarget Targets="BuildQueries" />
<CallTarget Targets="BuildRegex" />
<CallTarget Targets="BuildSimpleFacetedSearch" />
<CallTarget Targets="BuildSnowball" />
<CallTarget Targets="BuildSpatial" />
<CallTarget Targets="BuildSpatialNTS" />
<CallTarget Targets="BuildSpellChecker" />
</Target>
</Project>

View File

@ -1,42 +0,0 @@
<?xml version="1.0"?>
<!--
Licensed to the Apache Software Foundation (ASF) under one or more
contributor license agreements. See the NOTICE file distributed with
this work for additional information regarding copyright ownership.
The ASF licenses this file to You under the Apache License, Version 2.0
(the "License"); you may not use this file except in compliance with
the License. You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.
-->
<package xmlns="http://schemas.microsoft.com/packaging/2010/07/nuspec.xsd">
<metadata>
<id>Lucene.Net.Core</id>
<version>$version$</version>
<title>Lucene.Net Core</title>
<authors>Lucene.Net Community</authors>
<owners>The Apache Software Foundation</owners>
<iconUrl>http://incubator.apache.org/lucene.net/media/lucene-net-ico-128x128.png</iconUrl>
<licenseUrl>http://www.apache.org/licenses/LICENSE-2.0.html</licenseUrl>
<projectUrl>http://lucenenet.apache.org/</projectUrl>
<requireLicenseAcceptance>false</requireLicenseAcceptance>
<description>Lucene.Net is a port of the Lucene search engine library, written in C# and targeted at .NET runtime users.
This package contains only the core Lucene.Net assembly.</description>
<summary>Lucene.Net is a port of the Lucene search engine library, written in C# and targeted at .NET runtime users.</summary>
<tags>lucene.net core search information retrieval lucene apache</tags>
</metadata>
<files>
<file src="..\..\bin\core\Release\**\Lucene.Net.dll" target="lib" />
<file src="..\..\bin\core\Release\**\Lucene.Net.XML" target="lib" />
</files>
</package>

View File

@ -1,31 +0,0 @@
<?xml version="1.0" encoding="UTF-8" standalone="no" ?>
<!--
Licensed to the Apache Software Foundation (ASF) under one or more
contributor license agreements. See the NOTICE file distributed with
this work for additional information regarding copyright ownership.
The ASF licenses this file to You under the Apache License, Version 2.0
(the "License"); you may not use this file except in compliance with
the License. You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.
-->
<Project xmlns="http://schemas.microsoft.com/developer/msbuild/2003" ToolsVersion="4.0">
<PropertyGroup>
<DocumentationSources>
<DocumentationSource sourceFile="..\bin\core\Release\NET40\Lucene.Net.dll" />
<DocumentationSource sourceFile="..\bin\core\Release\NET40\Lucene.Net.XML" />
</DocumentationSources>
<HtmlHelpName>Lucene.Net.Core</HtmlHelpName>
<HelpTitle>Lucene.Net.Core Class Library</HelpTitle>
<WorkingPath>..\artifacts\core\working\</WorkingPath>
<OutputPath>..\artifacts\core\docs\</OutputPath>
</PropertyGroup>
</Project>

View File

@ -1,75 +0,0 @@
<?xml version="1.0" encoding="UTF-8" standalone="no" ?>
<!--
Licensed to the Apache Software Foundation (ASF) under one or more
contributor license agreements. See the NOTICE file distributed with
this work for additional information regarding copyright ownership.
The ASF licenses this file to You under the Apache License, Version 2.0
(the "License"); you may not use this file except in compliance with
the License. You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.
-->
<Project xmlns="http://schemas.microsoft.com/developer/msbuild/2003" ToolsVersion="4.0">
<!--
Core Projects Are:
Lucene.Net,
Lucene.Net.Test,
-->
<PropertyGroup>
<CoreFolder>$(BinFolder)\core\$(Configuration)</CoreFolder>
<CorePackage>Lucene.Net.Core.nuspec</CorePackage>
</PropertyGroup>
<PropertyGroup Condition="'$(Area)' == 'core'">
<LocalBinFolder>$(BinFolder)\core\$(Configuration)</LocalBinFolder>
<ArtifactsFolder>$(BuildFolder)\artifacts\core</ArtifactsFolder>
</PropertyGroup>
<Target Name="package-core">
<Exec Command="$(PackageManager) $(ScriptsFolder)\Core\$(CorePackage) $(PackageManagerOptions) $(ArtifactsFolder)" />
</Target>
<Target Name="_core_build">
<ItemGroup>
<CoreProjectFiles Include="$(SourceFolder)\Core\*.csproj" />
<CoreProjectFiles Include="$(TestFolder)\Core\*.csproj" />
</ItemGroup>
<MSBuild Projects="@(CoreProjectFiles)" Properties="Configuration=$(Configuration);ExternalConstants=$(ExternalConstants)" />
<!-- Add "35" to the end of configuration to build .NET35 projects -->
<MSBuild Projects="@(CoreProjectFiles)" Properties="Configuration=$(Configuration)35;ExternalConstants=$(ExternalConstants)" />
</Target>
<Target Name="_core_properties">
<ItemGroup>
<!-- Binaries To Copy in case we which to store all build items -->
<BuildItems Include="$(CoreFolder)\**\*.*" />
<!-- Add To The List of Packages to Build -->
<PackageTargets Include="package-core" />
<!-- Assemblies To Test -->
<TestFiles Include="$(CoreFolder)\**\Lucene.Net.Test.dll" />
<!-- Files To Release -->
<ReleaseFiles Include="$(CoreFolder)\**\Lucene.Net.dll" />
<ReleaseFiles Include="$(CoreFolder)\**\Lucene.Net.XML" />
<ReleaseFiles Include="$(CoreFolder)\**\ICSharpCode.SharpZipLib.dll" />
<!-- Files to Analysis -->
<AnalysisFiles Include="$(CoreFolder)\**\Lucene.Net.dll" />
</ItemGroup>
</Target>
<Target Name="BuildCore">
<CallTarget Targets="_core_build" />
<CallTarget Targets="_core_properties" />
</Target>
</Project>

View File

@ -1,31 +0,0 @@
<?xml version="1.0" encoding="UTF-8" ?>
<!--
Licensed to the Apache Software Foundation (ASF) under one
or more contributor license agreements. See the NOTICE file
distributed with this work for additional information
regarding copyright ownership. The ASF licenses this file
to you under the Apache License, Version 2.0 (the
"License"); you may not use this file except in compliance
with the License. You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing,
software distributed under the License is distributed on an
"AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
KIND, either express or implied. See the License for the
specific language governing permissions and limitations
under the License.
-->
<Dictionary>
<Words>
<Recognized>
<Word>Lucene</Word>
<Word>Util</Word>
<Word>Num</Word>
</Recognized>
</Words>
</Dictionary>

View File

@ -1,31 +0,0 @@
<?xml version="1.0" encoding="UTF-8" standalone="no" ?>
<!--
Licensed to the Apache Software Foundation (ASF) under one or more
contributor license agreements. See the NOTICE file distributed with
this work for additional information regarding copyright ownership.
The ASF licenses this file to You under the Apache License, Version 2.0
(the "License"); you may not use this file except in compliance with
the License. You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.
-->
<Project xmlns="http://schemas.microsoft.com/developer/msbuild/2003" ToolsVersion="4.0">
<PropertyGroup>
<DocumentationSources>
<DocumentationSource sourceFile="..\bin\contrib\FastVectorHighlighter\Release\NET40\Lucene.Net.Contrib.FastVectorHighlighter.dll" />
<DocumentationSource sourceFile="..\bin\contrib\FastVectorHighlighter\Release\NET40\Lucene.Net.Contrib.FastVectorHighlighter.XML" />
</DocumentationSources>
<HtmlHelpName>Lucene.Net.Contrib.FastVectorHighlighter</HtmlHelpName>
<HelpTitle>FastVectorHighlighter Class Library</HelpTitle>
<WorkingPath>..\artifacts\FastVectorHighlighter\working\</WorkingPath>
<OutputPath>..\artifacts\FastVectorHighlighter\docs\</OutputPath>
</PropertyGroup>
</Project>

View File

@ -1,66 +0,0 @@
<?xml version="1.0" encoding="UTF-8" standalone="no" ?>
<!--
Licensed to the Apache Software Foundation (ASF) under one or more
contributor license agreements. See the NOTICE file distributed with
this work for additional information regarding copyright ownership.
The ASF licenses this file to You under the Apache License, Version 2.0
(the "License"); you may not use this file except in compliance with
the License. You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.
-->
<Project xmlns="http://schemas.microsoft.com/developer/msbuild/2003" ToolsVersion="4.0">
<!--
Core Projects Are:
Lucene.Net,
Lucene.Net.Test,
-->
<PropertyGroup>
<FastVectorHighlighterFolder>$(BinFolder)\contrib\FastVectorHighlighter\$(Configuration)</FastVectorHighlighterFolder>
</PropertyGroup>
<PropertyGroup Condition="'$(Area)' == 'analyzers'">
<LocalBinFolder>$(BinFolder)\contrib\FastVectorHighlighter\$(Configuration)</LocalBinFolder>
<ArtifactsFolder>$(BuildFolder)\artifacts\FastVectorHighlighter</ArtifactsFolder>
</PropertyGroup>
<Target Name="_fastvectorhighlighter_build">
<ItemGroup>
<FVHProjectFiles Include="$(SourceFolder)\Contrib\FastVectorHighlighter\*.csproj" />
<FVHProjectFiles Include="$(TestFolder)\Contrib\FastVectorHighlighter\*.csproj" />
</ItemGroup>
<MSBuild Projects="@(FVHProjectFiles)" Properties="Configuration=$(Configuration);ExternalConstants=$(ExternalConstants)" />
<!-- Add "35" to the end of configuration to build .NET35 projects -->
<MSBuild Projects="@(FVHProjectFiles)" Properties="Configuration=$(Configuration)35;ExternalConstants=$(ExternalConstants)" />
</Target>
<Target Name="_fastvectorhighlighter_properties">
<ItemGroup>
<!-- Binaries To Copy in case we which to store all build items -->
<BuildItems Include="$(FastVectorHighlighterFolder)\**\*.*" />
<!-- Assemblies To Test -->
<TestFiles Include="$(FastVectorHighlighterFolder)\**\Lucene.Net.Contrib.FastVectorHighlighter.Test.dll" />
<!-- Files To Release -->
<ReleaseFiles Include="$(FastVectorHighlighterFolder)\**\Lucene.Net.Contrib.FastVectorHighlighter.dll" />
<ReleaseFiles Include="$(FastVectorHighlighterFolder)\**\Lucene.Net.Contrib.FastVectorHighlighter.XML" />
<!-- Files to Analysis -->
<AnalysisFiles Include="$(FastVectorHighlighterFolder)\**\Lucene.Net.Contrib.FastVectorHighlighter.dll" />
</ItemGroup>
</Target>
<Target Name="BuildFastVectorHighlighter">
<CallTarget Targets="_fastvectorhighlighter_build" />
<CallTarget Targets="_fastvectorhighlighter_properties" />
</Target>
</Project>

View File

@ -1,31 +0,0 @@
<?xml version="1.0" encoding="UTF-8" standalone="no" ?>
<!--
Licensed to the Apache Software Foundation (ASF) under one or more
contributor license agreements. See the NOTICE file distributed with
this work for additional information regarding copyright ownership.
The ASF licenses this file to You under the Apache License, Version 2.0
(the "License"); you may not use this file except in compliance with
the License. You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.
-->
<Project xmlns="http://schemas.microsoft.com/developer/msbuild/2003" ToolsVersion="4.0">
<PropertyGroup>
<DocumentationSources>
<DocumentationSource sourceFile="..\bin\contrib\Highlighter\Release\NET40\Lucene.Net.Contrib.Highlighter.dll" />
<DocumentationSource sourceFile="..\bin\contrib\Highlighter\Release\NET40\Lucene.Net.Contrib.Highlighter.XML" />
</DocumentationSources>
<HtmlHelpName>Lucene.Net.Contrib.Highlighter</HtmlHelpName>
<HelpTitle>Highlighter Class Library</HelpTitle>
<WorkingPath>..\artifacts\Highlighter\working\</WorkingPath>
<OutputPath>..\artifacts\Highlighter\docs\</OutputPath>
</PropertyGroup>
</Project>

View File

@ -1,65 +0,0 @@
<?xml version="1.0" encoding="UTF-8" standalone="no" ?>
<!--
Licensed to the Apache Software Foundation (ASF) under one or more
contributor license agreements. See the NOTICE file distributed with
this work for additional information regarding copyright ownership.
The ASF licenses this file to You under the Apache License, Version 2.0
(the "License"); you may not use this file except in compliance with
the License. You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.
-->
<Project xmlns="http://schemas.microsoft.com/developer/msbuild/2003" ToolsVersion="4.0">
<!--
Core Projects Are:
Lucene.Net,
Lucene.Net.Test,
-->
<PropertyGroup>
<HighlighterFolder>$(BinFolder)\contrib\Highlighter\$(Configuration)</HighlighterFolder>
</PropertyGroup>
<PropertyGroup Condition="'$(Area)' == 'highlighter'">
<LocalBinFolder>$(BinFolder)\contrib\Highlighter\$(Configuration)</LocalBinFolder>
<ArtifactsFolder>$(BuildFolder)\artifacts\Highlighter</ArtifactsFolder>
</PropertyGroup>
<Target Name="_highlighter_build">
<ItemGroup>
<HighligherProjectFiles Include="$(SourceFolder)\Contrib\Highlighter\*.csproj" />
<HighligherProjectFiles Include="$(TestFolder)\Contrib\Highlighter\*.csproj" />
</ItemGroup>
<MSBuild Projects="@(HighligherProjectFiles)" Properties="Configuration=$(Configuration);ExternalConstants=$(ExternalConstants)" />
<!-- Add "35" to the end of configuration to build .NET35 projects -->
<MSBuild Projects="@(HighligherProjectFiles)" Properties="Configuration=$(Configuration)35;ExternalConstants=$(ExternalConstants)" />
</Target>
<Target Name="_highlighter_properties">
<ItemGroup>
<!-- Binaries To Copy in case we which to store all build items -->
<BuildItems Include="$(HighlighterFolder)\**\*.*" />
<!-- Assemblies To Test -->
<TestFiles Include="$(HighlighterFolder)\**\Lucene.Net.Contrib.Highlighter.Test.dll" />
<!-- Files To Release -->
<ReleaseFiles Include="$(HighlighterFolder)\**\Lucene.Net.Contrib.Highlighter.dll" />
<ReleaseFiles Include="$(HighlighterFolder)\**\Lucene.Net.Contrib.Highlighter.XML" />
<!-- Files to Analysis -->
<AnalysisFiles Include="$(HighlighterFolder)\**\Lucene.Net.Contrib.Highlighter.dll" />
</ItemGroup>
</Target>
<Target Name="BuildHighlighter">
<CallTarget Targets="_highlighter_build" />
<CallTarget Targets="_highlighter_properties" />
</Target>
</Project>

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